diff --git a/.gitignore b/.gitignore index e627ed90f69b3b3d8559760944babc6051aa86fe..844de1003fa392396b7ffc9909cb347c8980668c 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,7 @@ # Ignore the content of the fiat directory but not the directory itself /build/with_fcm/fiat/** !/build/with_fcm/fiat/.gitkeep + +# VI temp files +.*.swp +.*.swo diff --git a/README.md b/README.md index 9f6fbe130aa3a42aa471a8fcaaf1b1024b6b0c47..5250b201189704e06343a35b52251e8732f986c3 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,5 @@ # PHYEX PHYsique EXternalisée -## Build +Documentation can be found in the [docs directory](./docs/PHYEX.md). -The build systems can be found in the `build` directory. - -The PHYEX compilation depends on the fiat (https://github.com/ecmwf-ifs/fiat) package. - -### Build with FCM - -In the `with_fcm` subdirectory, a build system based on the FCM (https://github.com/metomi/fcm) tool is available. -The command `make_fcm.sh` (call it with the '-h' option to get help): - - clone the fcm tool - - clone the fiat package - - compile the PHYEX and (part of) the fiat package - - create a shared library (.so) -The resulting shared library (libphyex.so) is under the architecture specific directory created by the script. diff --git a/build/with_fcm/README.md b/build/with_fcm/README.md index bf27fb29e11acc416a184ecd60891c268c27f3e8..83e5d9f24e0b77ba0dc55f0ed5adba8e26dd1cb9 100644 --- a/build/with_fcm/README.md +++ b/build/with_fcm/README.md @@ -1,12 +1,19 @@ -Directory organisation: -- the fcm subdirectory contains the fcm tool. In the PHYEX git repository, this directory is empty. - It will be populated on first call to the make\_fcm.sh script and content is not tracked by git. -- the fiat subdirectory contains the fiat package from the ECMWF. In the PHYEX git repository, this directory is empty. - It will be populated on first call to the make\_fcm.sh script and content is not tracked by git. -- the arch subdirectory contains architecture specific files. An alternative arch directory can be - provided on the command line when calling the make\_fcm.sh script -- arch\_\* subdirectories are automatically created by the make\_fcm.sh script and are tracked by git. -- the make\_fcm.sh script will: +# OFFLINE COMPILATION + +## Directory organisation + +The different directories are: + - the fcm subdirectory contains the fcm tool. In the PHYEX git repository, this directory is empty. + It will be populated on first call to the make\_fcm.sh script and content is not tracked by git. + - the fiat subdirectory contains the fiat package from the ECMWF. In the PHYEX git repository, this directory is empty. + It will be populated on first call to the make\_fcm.sh script and content is not tracked by git. + - the arch subdirectory contains architecture specific files. An alternative arch directory can be + provided on the command line when calling the make\_fcm.sh script + - arch\_\* subdirectories are automatically created by the make\_fcm.sh script and are not tracked by git. + +## Compilation + +The make\_fcm.sh script will: - populate the fcm and fiat directories on first call - create the arch\_$ARCH directory, poulate it with arch specific files and a compilation script - execute the newly created compilation script diff --git a/build/with_fcm/arch/arch-MIMPIIFC1805.EPONA.env b/build/with_fcm/arch/arch-MIMPIIFC1805.EPONA.env new file mode 100644 index 0000000000000000000000000000000000000000..8fdefeb29c0d0d32e56cf398c1174231fb3729dd --- /dev/null +++ b/build/with_fcm/arch/arch-MIMPIIFC1805.EPONA.env @@ -0,0 +1 @@ +module load perl/5.30.3 diff --git a/build/with_fcm/arch/arch-MIMPIIFC1805.EPONA.fcm b/build/with_fcm/arch/arch-MIMPIIFC1805.EPONA.fcm new file mode 100644 index 0000000000000000000000000000000000000000..444d60327eb62c9f714ecc32c113e4e5ac179315 --- /dev/null +++ b/build/with_fcm/arch/arch-MIMPIIFC1805.EPONA.fcm @@ -0,0 +1,25 @@ +# Compilation +$FCOMPILER = /home/gmap/mrpm/khatib/public/bin/mimpifc-18.0.5.274 +$BASE_FFLAGS = -c -convert big_endian -assume byterecl -align array64byte,all -traceback -fpic -qopenmp -qopenmp-threadprivate compat -fp-model source -qopt-report=5 -qopt-report-phase=vec -ftz -diag-disable=remark,cpu-dispatch -r8 +$PROD_FFLAGS = -g -O2 -march=core-avx2 -finline-functions -finline-limit=500 -Winline -qopt-prefetch=4 -fast-transcendentals -fimf-use-svml -no-fma +$DEV_FFLAGS = -g -O0 +$DEBUG_FFLAGS = -g -O0 -check bounds -init=arrays,snan -fp-stack-check -ftrapuv -fpe0 -fp-speculation=strict -check uninit -check pointers +$CCOMPILER = /home/gmap/mrpm/khatib/public/bin/mimpicc-18.0.5.274 +$BASE_CFLAGS = -c -qopenmp -qopt-report=2 -qopt-report-phase=vec -fpic -malign-double -ftz -fp-model precise -diag-disable=remark,cpu-dispatch +$PROD_CFLAGS = -g -O2 -march=core-avx2 +$DEV_CFLAGS = +$DEBUG_CFLAGS = +$OMP_FFLAGS = + +# Preprocessor +$FPP_FLAGS = LINUX LITTLE_ENDIAN LITTLE ADDRESS64 GRIB_API_1 REPRO48 +$CPP_FLAGS = LINUX LITTLE_ENDIAN LITTLE GRIB_API_1 + +# Linker +$LINK = /home/gmap/mrpm/khatib/public/bin/mimpifc-18.0.5.274 +$BASE_LD = -v -fp-stack-check -qopenmp -qopenmp-threadprivate compat -shared-intel -lrt -lstdc++ +$OMP_LD = +$LD_EXE_TO_SHARED = -shared + +# Other +$AR = /usr/bin/ar diff --git a/build/with_fcm/arch/arch-MPIGFORTRAN920DBL.GMAP.env b/build/with_fcm/arch/arch-MPIGFORTRAN920DBL.GMAP.env new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/build/with_fcm/arch/arch-MPIGFORTRAN920DBL.GMAP.fcm b/build/with_fcm/arch/arch-MPIGFORTRAN920DBL.GMAP.fcm new file mode 100644 index 0000000000000000000000000000000000000000..75f2e5a0e6672c82df8d3bb213f4314af170e7fd --- /dev/null +++ b/build/with_fcm/arch/arch-MPIGFORTRAN920DBL.GMAP.fcm @@ -0,0 +1,25 @@ +# Compilation +$FCOMPILER = mpigfortran.9.2.0 +$BASE_FFLAGS = -c -fconvert=swap -fno-second-underscore -fbacktrace -m64 -fopenmp -ffree-line-length-none -fno-sign-zero -fpic -fno-range-check -g -pipe -fdefault-real-8 +$PROD_FFLAGS = -g -O2 +$DEV_FFLAGS = -g -O0 +$DEBUG_FFLAGS = -g -O0 -fbounds-check -finit-real=snan -ffpe-trap=invalid,zero,overflow +$CCOMPILER = mpigcc.9.2.0 +$BASE_CFLAGS = -c -m64 -fopenmp -fpic -g -pipe +$PROD_CFLAGS = -g -O2 +$DEV_CFLAGS = +$DEBUG_CFLAGS = +$OMP_FFLAGS = + +# Preprocessor +$FPP_FLAGS = LINUX LITTLE_ENDIAN LITTLE REPRO48 +$CPP_FLAGS = LINUX LITTLE_ENDIAN LITTLE + +# Linker +$LINK = mpigfortran.9.2.0 +$BASE_LD = -fopenmp -ffast-math -ldl -lrt +$OMP_LD = +$LD_EXE_TO_SHARED = -shared + +# Other +$AR = ar diff --git a/build/with_fcm/arch/arch-gnu.fcm b/build/with_fcm/arch/arch-gnu.fcm index 92bfee6d9d09cbd0c5834bb76ebe0603465d6f5e..63e0200e1f57dbbf93ba19ca1d9b3462e10919f5 100644 --- a/build/with_fcm/arch/arch-gnu.fcm +++ b/build/with_fcm/arch/arch-gnu.fcm @@ -1,23 +1,23 @@ # Compilation $FCOMPILER = gfortran -$BASE_FFLAGS = -c -fPIC -fdefault-real-8 -fdefault-double-8 -ffree-line-length-none +$BASE_FFLAGS = -c -fPIC -fdefault-real-8 -fdefault-double-8 -ffree-line-length-none -fopenmp -fconvert=swap $PROD_FFLAGS = -O3 $DEV_FFLAGS = -O1 -$DEBUG_FFLAGS = -check bounds +$DEBUG_FFLAGS = -fbounds-check $CCOMPILER = gcc -$BASE_CFLAGS = -c -fPIC +$BASE_CFLAGS = -c -fPIC -fopenmp $PROD_CFLAGS = -O3 $DEV_CFLAGS = -O1 -$DEBUG_CFLAGS = -check bounds +$DEBUG_CFLAGS = -fbounds-check $OMP_FFLAGS = # Preprocessor -$FPP_FLAGS = LINUX -$CPP_FLAGS = LINUX +$FPP_FLAGS = LINUX LITTLE_ENDIAN LITTLE REPRO48 +$CPP_FLAGS = LINUX LITTLE_ENDIAN LITTLE # Linker $LINK = gfortran -$BASE_LD = -fPIC -fdefault-real-8 -fdefault-double-8 +$BASE_LD = -fPIC -fdefault-real-8 -fdefault-double-8 -fopenmp $OMP_LD = $LD_EXE_TO_SHARED = -shared diff --git a/build/with_fcm/fcm-make.cfg b/build/with_fcm/fcm-make.cfg index c0a290bb48349f56c9cb8670a66fc8ff47dc4464..ec0b1d1c141a62c1059c939bb623ae2a71b97a75 100644 --- a/build/with_fcm/fcm-make.cfg +++ b/build/with_fcm/fcm-make.cfg @@ -25,41 +25,46 @@ build.prop{ld} = $LINK build.prop{ar} = $AR ################################################################################################ -# 3 - TARGET +# 3 - TARGETS -############################# -# 3.1 Target definition to build a static lib -#build.target = libphyex.a -#build.target-rename = libo.a:libphyex.a - -############################# -# 3.2 Target definition to build a static lib +#Target definition to build the testprogs programs and a shared lib #We need a shared library (.so) but this cannot be build directly with fcm #The FCM support team says: "FCM doesn’t support building shared libraries." #We use a dummy program to force fcm to use the linker and we add the needed flags #to build a shared library instead of a program -# 3.2.a target is the dummy program but linking is hacked and result is renamed -build.target = libphyex.so +############################# +# 3.1 All programs are built +build.target{task} = link +build.prop{fc.flags-ld} = $LD_FLAGS + +############################# +# 3.2 Special options for specific progam + +# 3.2.a Special treatment for the shared lib +#target is the dummy program but linking is hacked and result is renamed build.target-rename = dummyprog.exe:libphyex.so -build.prop{fc.flags-ld} = $LD_FLAGS $LD_EXE_TO_SHARED +build.prop{fc.flags-ld}[libphyex.so] = $LD_FLAGS $LD_EXE_TO_SHARED +build.prop{dep.o.special}[dummyprog] = $ENTRYPOINTS + +# 3.2.b Special treatment for the testprogs +build.prop{fc.defs}[testprogs] = $FPP_FLAGS WITHOUT_CXXDEMANGLE USE_OPENMP -# 3.2.b dependencies (internal and external) +############################# +# 3.3 dependencies (internal and external) $util = util1 util2 util3 util4 util5 util6 util7 util8 util9 util10 util11 util12 util13 util14 util15 util16 $mpi = mpi2 mpi3 mpi4 mpi5 mpi6 mpi7 mpi8 mpi9 mpi10 mpi11 mpi12 mpi13 mpi14 mpi15 mpi16 mpi17 mpi18 mpi19 -$system = system1 system2 system3 system4 system5 system6 system7 system8 system10 system11 system12 system13 +$system = system1 system2 system3 system4 system5 system6 system7 system8 system10 system11 system12 system13 system14 build.prop{ns-dep.o} = common parkind drhook $util $mpi oml mpl gstats1 $system build.prop{fc.libs} = $LIBS -# 3.2.c shared lib entry points -build.prop{dep.o.special} = $ENTRYPOINTS - ################################################################################################ # 4 - SOURCES ############################# -# 4.1 Dummy programm to force linking +# 4.1 Programs and dummy programm to force linking build.source[dummyprog] = src/dummyprog.F90 +build.source[testprogs] = src/testprogs ############################# # 4.2 Main directory @@ -147,5 +152,6 @@ build.source[system11] = $FIAT/fiat/system/internal/linuxtrbk.c build.source[util17] = $FIAT/fiat/util/internal/raise.h build.source[system12] = $FIAT/fiat/system/getstatm.c build.source[system13] = $FIAT/fiat/system/internal/linux_bind.c - - +build.source[system14] = $FIAT/fiat/system/internal/gentrbk.F90 +#ifcore module is external to fiat (intel) +build.prop{no-dep.f.module}[system14] = ifcore diff --git a/build/with_fcm/make_fcm.sh b/build/with_fcm/make_fcm.sh index c7cc486b670a0062c9d4890915a4f6d2195becb5..df2d7cd9efab89d42d69d7c86f23aa836e450852 100755 --- a/build/with_fcm/make_fcm.sh +++ b/build/with_fcm/make_fcm.sh @@ -1,26 +1,28 @@ #!/bin/bash +set -e + fcm_version=tags/2021.05.0 fiat_version=1295120464c3905e5edcbb887e4921686653eab8 -function parse_args() -{ - # default values - ARCH_PATH=$PWD/arch - ARCH=gnu - # pass unrecognized arguments to fcm - FCM_ARGS="" - - while (($# > 0)) - do - OPTION="$1" ; shift - case "$OPTION" in - "-h") cat <<EOF +function parse_args() { + # default values + ARCH_PATH=$PWD/arch + ARCH= + GMKFILE= + # pass unrecognized arguments to fcm + FCM_ARGS="" + + while (($# > 0)); do + OPTION="$1" ; shift + case "$OPTION" in + "-h") cat <<EOF Usage : $0 [options] --help -h help --arch-path ARCH_PATH directory for architecture specific files (see below) [./arch] --arch ARCH build using arch files $ARCH_PATH/arch-ARCH.* [gnu] +--gmkfile FILE build using a gmkpack configuration file (--arch must be used to give a name to the build dir) Unrecognized options are passed to the fcm build command. Useful options include : --new clean build tree before building @@ -31,34 +33,38 @@ For details on FCM, see http://metomi.github.io/fcm/doc/user_guide/build.html http://metomi.github.io/fcm/doc/user_guide/command_ref.html#fcm-build EOF - exit;; - "--arch") - ARCH=$1 ; shift ;; - "--arch-path") - ARCH_PATH=$1 ; shift ;; - *) - FCM_ARGS="$FCM_ARGS $OPTION" - ;; - esac - done + exit;; + "--arch") + ARCH=$1 ; shift ;; + "--arch-path") + ARCH_PATH=$1 ; shift ;; + "--gmkfile") + GMKFILE=$1 ; shift ;; + *) + FCM_ARGS="$FCM_ARGS $OPTION" ;; + esac + done + [ "$GMKFILE" == "" -a "$ARCH" == "" ] && ARCH=gnu + if [ "$GMKFILE" != "" -a "$ARCH" == "" ]; then + echo "--arch option is mandatory if --gmkfile option is used" + exit 2 + fi } -function check_install_fcm() -{ +function check_install_fcm() { if [ ! -f fcm/bin/fcm ]; then echo "Performing FCM installation..." cd fcm rm -f .gitkeep git clone https://github.com/metomi/fcm.git . - git checkout tags/$fcm_version + git checkout $fcm_version touch .gitkeep cd .. echo "...FCM installation done" fi } -function check_install_fiat() -{ +function check_install_fiat() { if [ ! -d fiat/src ]; then echo "Performing fiat cloning..." cd fiat @@ -72,8 +78,39 @@ function check_install_fiat() echo } -function build_compilation_script() -{ +function gmkfile2arch() { + GMKFILE=$1 + ARCHFILE=$2 +cat <<EOF > $ARCHFILE +# Compilation +\$FCOMPILER = $(grep "^FRTNAME =" $GMKFILE | cut -d = -f 2) +\$BASE_FFLAGS = $(grep "^FRTFLAGS =" $GMKFILE | cut -d = -f 2-) $(grep "^GMK_FCFLAGS_PHYEX =" $GMKFILE | cut -d = -f 2-) +\$PROD_FFLAGS = $(grep "^OPT_FRTFLAGS =" $GMKFILE | cut -d = -f 2-) +\$DEV_FFLAGS = $(grep "^DBG_FRTFLAGS =" $GMKFILE | cut -d = -f 2-) +\$DEBUG_FFLAGS = $(grep "^DBG_FRTFLAGS =" $GMKFILE | cut -d = -f 2-) $(grep "^BCD_FRTFLAGS =" $GMKFILE | cut -d = -f 2-) $(grep "^NAN_FRTFLAGS =" $GMKFILE | cut -d = -f 2-) +\$CCOMPILER = $(grep "^VCCNAME =" $GMKFILE | cut -d = -f 2) +\$BASE_CFLAGS = $(grep "^VCCFLAGS =" $GMKFILE | cut -d = -f 2-) +\$PROD_CFLAGS = $(grep "^OPT_VCCFLAGS =" $GMKFILE | cut -d = -f 2-) +\$DEV_CFLAGS = +\$DEBUG_CFLAGS = +\$OMP_FFLAGS = + +# Preprocessor +\$FPP_FLAGS = $(grep "^MACROS_FRT =" $GMKFILE | cut -d = -f 2- | sed 's/-D//g') +\$CPP_FLAGS = $(grep "^MACROS_CC =" $GMKFILE | cut -d = -f 2- | sed 's/-D//g') + +# Linker +\$LINK = $(grep "^LNK_MPI =" $GMKFILE | cut -d = -f 2-) +\$BASE_LD = $(grep "^LNK_FLAGS =" $GMKFILE | cut -d = -f 2-) +\$OMP_LD = +\$LD_EXE_TO_SHARED = $(grep "^LNK_SOLIB =" $GMKFILE | cut -d = -f 2- | sed 's/-o a.out//') + +# Other +\$AR = $(grep "^AR =" $GMKFILE | cut -d = -f 2-) +EOF +} + +function build_compilation_script() { cat <<EOF > compilation.sh #!/bin/bash @@ -135,13 +172,19 @@ if [ -d $builddir ]; then exit 1 fi mkdir $builddir -cp ${ARCH_PATH}/arch-${ARCH}.env $builddir/arch.env -cp ${ARCH_PATH}/arch-${ARCH}.fcm $builddir/arch.fcm +if [ "$GMKFILE" != "" ]; then + touch $builddir/arch.env + gmkfile2arch $GMKFILE $builddir/arch.fcm +else + cp ${ARCH_PATH}/arch-${ARCH}.env $builddir/arch.env + cp ${ARCH_PATH}/arch-${ARCH}.fcm $builddir/arch.fcm +fi cp fcm-make.cfg $builddir cd $builddir mkdir src cd src ln -s ../../../../src/common . +ln -s ../../../../src/testprogs . ln -s ../../fiat/src fiat cat <<EOF > dummyprog.F90 PROGRAM DUMMYPROG @@ -157,3 +200,5 @@ ln -s build/bin/libphyex.so . # Check if python can open the resulting shared lib python3 -c "from ctypes import cdll; cdll.LoadLibrary('./libphyex.so')" + +# ldd -r ./libphyex.so should also give interesting results diff --git a/docs/Developer.md b/docs/Developer.md new file mode 100644 index 0000000000000000000000000000000000000000..798d1a5c824835a2e0a97aedc3cebee5628c2f64 --- /dev/null +++ b/docs/Developer.md @@ -0,0 +1,138 @@ +# PHYEX developer documentation + +## ABOUT THIS DOCUMENT + +This document is intended for developers who want to contribute to the PHYEX package. +Developer who is interested in plugging the physics in a new model can refere to the Plugging documentation. +The topics covered are as follows: + + - [Package organisation](#package-organisation) + - [Code preparation](#code-preparation) + - [Coding norms](#coding-norms) + - [Pull requests](#pull-requests) + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +## PACKAGE ORGANISATION + +The package contains the folowing directories: + + - docs: for documentation + - build: an autonomous build system is included in the package. Its usage is covered in the [Offline documentation](./Offline.md) + - src/common: the main source code which is the basis for all models + - src/\<model\>: the source code specific to one model that must replace source code found in the common directory + +In addition to this organisation, the package uses git branches. The main branches are as follows: + + - main: source code without rewriting for GPU transformation (used for official Meso-NH source code) + - GPU: source code adapted for GPU transformations (used for official AROME source code, starting from the 48t3 cycle) + - arome\_\<commit\>: source code ready for inclusion in the AROME compilation environment (the generation of such a branch is described in [Code preparation](#code-preparation)) + - testprogs\_data: modified source code used to generate samples for the test programs (more on this topic in the [Offline documentation](./Offline.md)) + +## CODE PREPARATION + +The source code stored in the main and GPU branches must be usable by all the models. But these models can have contradictory constraints. To bypass this difficulty, the source code is preprocessed before being included in the compilation environment of each model. + +This preprocessing step can be done on the fly (in this case the preprocessing tools must be available aside of the compilation tools), or the result of the preprocessing can be stored in the PHYEX package (in this case, the preprocessing is done once and can be used by several users). +This second possibility is usefull to historize the source code really used during the model compilation and enables contributions to the PHYEX package without the need of the preprocessing tools. + +The preprocessed versions of the source code are put in branches named \<model\>\_\<commit\> where \<model\> is the name of the model for which the source code have been preprocessed and \<commit\> is the commit hash used as a basis. + +The preprocessing tools are described in the [Tools documentation](./Tools.md). + +## CODING NORMS + +### File names +The fortran file names use a capital F letter (eg: foo.F90) except if working a branch (mesonh\_\<commit\>) or in the folder (src/mesonh) specifci to the Meso-NH model. + +Names for the module: + + - modd\_ for module containing only variable declaration (eg: tuning parameters) + - modi\_ for module containing only interface declaration + - modn\_ for namelist declaration + - mode\_ for module containing executable source code (subroutine or function) + +### When using mode\_ or modi\_? +When writing a new subroutine, should we put it in a module (in a mode\_ file) or should we write the subroutine in a file and write the interface bloc in another file (modi\_ file)? + +The answer depends on whether the routine is the 'main' routine of the parameterisation or not. If it is the 'main' routine, the interface bloc is declared apart, if not we can use a module. +The idea behind is to break compilation dependency at the parameterisation level, and to isolate the interface declaration of the different routines that must be pluged in the hosting model. + +### Norm +Several constraints are imposed: + + - The code must be written with up to 132 characters per line. + - CODE IS IN CAPITAL LETTERS! comments in small letters + - All variables must be declared: IMPLICIT NONE + - except in rare cases, use automatic arrays, no allocatable + - dimensions of dummy argument arrays are explicit (no (:,:)) + - use parenthesis when manipulating arrays (eg: A(:,:)=B(:,:)+C(:,:) instead of A=B+C) + +The variables are named according to the doctor norm: + +|Type / Status | INTEGER | REAL | LOGICAL | CHARACTER | TYPE | +|--------------|------------|------------|-------------|----------------|------------------| +|Global | N | X | L (not LP) | C | T (not TP,TS,TZ) | +|Dummy argument| K | P (not PP) | O | H | TP | +|Local | I (not IS) | Z (not ZS) | G (not GS) | Y (not YS, YP) | TZ | +|Loop control | J (not JP) | - | - | - | - | + +Regarding array-syntax, code is written using array-syntax in the main branch and in mesonh specific branches based on the GPU branch, using array-syntax with mnh\_expand directives in the GPU branch, using DO loops in arome specific branches based on the GPU branch. If in doublt, check what is done in other routines in the brach you are working in. +Be carrefull when using the mnh\_expand directives, code must respect some constraints: + + - parenthesis after array variables are mandatory (no A=B+C, but A(:,:)=B(:,:)+C(:,:)) + - no space between array variables and the opening parenthesis (no A (:)=B (:), but A(:)=B(:)) + - same bounds as declared in the mnh\_expand directive should be used in the array-syntax (A(D%NIB;D%NIE)=...) + +A tool (verify\_mnh\_expand.py) can help at checking the validity of the written code. + +For the GPU branch (and branches on GPU, including model specific branches): + + - except variables declared with the PARAMETER attribute, no variable from modules can be used in the physics. Varaibles must be put in a type received by interface. + - subroutines or functions must not be called from within a loop on horizontal or vertical dimensions (see below for exception) + - functions returning arrays must be rewritten as subroutine + +Call to external subroutine in loop on horizontal or vertical dimensions must be suppressed in the GPU version. If possible, the call must be put outside of the loop (acting on the full array as a whole) or the subroutine must be put in the CONTAINS part but, in this case, the included subroutine cannot use local array. There are 3 cases: + + - the subroutine does't use local array: subroutine is put in an include file (with the .h extension) and included with the fortran INCLUDE statement. + - the subroutine use local arrays but it is called from only one place in the code: the source code of the subroutine is moved (no INCLUDE) in the CONTAINS part and the array declarations are moved in the main subroutine. + - the subroutine use local arrays and is called from several places: the previous technique is not recommended. The source code is put in an include file (with the .h extension) and an extra argument is provided to the subroutine and is used as a buffer so there is no more need to declare local arrays in the called subroutine. + +### Budgets + +In Meso-NH, the budget can be used in two ways: + + - by giving to the budget machinery the tendency due to a given process + - by giving to the budget machinery the total tendency (S variable) before and after a given process. The budget machanism recomputes by difference the tendency only due to the given process. + +In AROME, we cannot provide the total tendency (S variable) before the process. This total tendency is stored internally by the machinery but cannot be set to a different value before doing a computation. + +The physics package must be usable from AROME and Meso-NH, several examples are given: + +Invalid for AROME: +``` +budget_store_init(tempo_s) +modification of tempo_s +budget_store_end(tempo_s) +``` + +Valid: +``` +budget_store_init(pronostic_s) #useless for AROME, but needed for Meso-NH +modification of pronostic_s +budget_store_end(pronostic_s) +``` + +Valid: +``` +computation of delta tempo_s +budget_store_add(delta tempo_s) +``` + +## PULL REQUESTS +This section deals with the pull request procedure from the developer point of view. The integrator point of view is described in the Intergator documentation. + +To contribute to the PHYEX repository, developer must fork the repository, contribute on the main or on the GPU branch and send a pull request. Alternatively, a contribution on a model specific branch is also possible (especially for minor modifications). + +If a modification must be applied to the main and to the GPU branches, the pull request must be made on the main branch (and will be merged into the GPU branch). + diff --git a/docs/Integrator.md b/docs/Integrator.md new file mode 100644 index 0000000000000000000000000000000000000000..cb1a84aeeae326f524eebcc821041a85c4c30af2 --- /dev/null +++ b/docs/Integrator.md @@ -0,0 +1,29 @@ +# PHYEX integrator documentation + +## ABOUT THIS DOCUMENT + +This document is intended for integrators who are in charge of assembling contributions received through pull requests. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +## BRANCHES AND NORMS + +Regarding array-syntax, the applicalble norm depends on the branch: + + - The main branch of PHYEX (and all branches based on main) is written using array-syntax + - The GPU branch is written using array-syntax with mnh\_expand directives + - arome specific branches based on the GPU branch are written using DO loops + - mesonh specific branches based on the GPU branch are written using array-syntax withour mnh\_expand directives + +Pull requests can be received on all these kind of branches and must be merged into the main or the GPU branch with according norm. + +## TESTS + +The source code must follow strict mnh\_expand directives (described in the [Developer documentation](./Developer.md)). The script verify\_mnh\_expand.py must be used to give an additional check. + +In addition to the scientific validation, the folowing tests must give the same results (with bit-reproducibility) in each of the model: + + - compilation transforming the mnh\_expand directives in DO loop + - compilation keeping the array-syntax + - execution with a different umber of processors + diff --git a/docs/Interfaces b/docs/Interfaces deleted file mode 100644 index acaadbf12975c70e5f9999c1e8375c64062d514f..0000000000000000000000000000000000000000 --- a/docs/Interfaces +++ /dev/null @@ -1,36 +0,0 @@ -The PHYEX parameterizations can be called from different models (eg. Meso-NH, AROME) and from -a driver (which will be included in this repository). -Moreover, PHYEX parameterizations call externals subroutines, which are dependencies. - -This document aims at listing the interfaces to call the PHYEX parameterizations and the -interfaces of the external modules called by PHYEX. - -PHYEX interfaces: -- lima_adjust -- ice_adjust -- shallow_mf -- turb -- lima, lima_warm, lima_cold et lima_mixed -- rain_ice, rain_ice_old -- ini_... - -Dependencies: -- mode_budget -- mode_msg, modd_io -- modd_precision -- yomhook, parkind1 - -Specificities: -- in AROME, BUDGET_SORE_INIT does nothing: it is impossible to compute a tendencie - from the difference of a temporary variable. - Invalid: - budget_store_init(tempo_s) - modification of tempo_s - budget_store_end(tempo_s) - Valid: - budget_store_init(pronostic_s) #useless but valid - modification of pronostic_s - budget_store_end(pronostic_s) - Also valid: - budget_store_add(delta tempo_s) - diff --git a/docs/Offline.md b/docs/Offline.md new file mode 100644 index 0000000000000000000000000000000000000000..61f14b791610ba4a46174dec091b9d205288c723 --- /dev/null +++ b/docs/Offline.md @@ -0,0 +1,44 @@ +# OFFLINE documentation + +## ABOUT THIS DOCUMENT + +This document is intended for persons who want to use PHYEX in an offline mode. +Some offline test programs are provided with the package and a library suitable for use with python is also available. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +## COMPILATION + +The build/with\_fcm directory contains a build system. +This build system has two dependencies (installation is done automatically by the compilation script): + + - [fcm](https://metomi.github.io/fcm/doc/user_guide/) + - [fiat](https://github.com/ecmwf-ifs/fiat) + +The script build/with\_fcm/make\_fcm.sh uses a configuration file and build the library and test programs. +They can be found in the build/bin sudirectory in the architecture specific directory arch\_\<achitecture name\>. + +Some more details can be found in [build/with\_fcm/README.md file](../build/with_fcm/README.md). + +## TEST PROGRAM + +### Data generation + +The branch testprogs\_data contains modified source code for the AROME model to enable the generation of data samples. +Using this branch, in the drivers of the different parameterisations (aro\_\* files), output can be enable for the AROME model. +Running the AROME model with these modifications outputs files in the running directory. +This must be done once by parametrisation (note that the check\_commit\_ial.sh script can be used to execute an AROME simulation). + +These files should be renamed with the folowing command: +i=0; for file in ????_??_????????.dat; do mv $file `printf %08d $i`.dat; i=$((i+1)); done + +### Usage directly with the testprogs executables + +The different main\_\*.exe programs obtained by the compilation can be run. Each of these executables is expecting the presence of a 'data' directory in their working directory containing the different files. + +## PYTHON BINDING + +**TODO** This section must be written. Key ideas are: + + - ctypesforfortran + - example diff --git a/docs/PHYEX.md b/docs/PHYEX.md new file mode 100644 index 0000000000000000000000000000000000000000..0515f017ca3c3b5ec92ba2baf2ee9a4ac1f4c2ab --- /dev/null +++ b/docs/PHYEX.md @@ -0,0 +1,30 @@ +# PHYEX +PHYsique EXternalisée + +## ABOUT THIS DOCUMENT + +This document is a general presentation of the PHYEX package. +More specific documentation can be found: + + - [Developer](./Developer.md): package organisation, how to contribute, coding norms + - [Integrator](./Integrator.md): how to merge contributions + - [Offline](./Offline.md): how to compile the library and the test programs, how to use the library with python, how to use the test programs + - [Plugging](./Plugging.md) : how to plug the physics package in a model + - [Tools](./Tools.md): description of the check\_commit\_\*.sh scripts (to check bit reproducibility between two commits) and of the prep\_code.sh script + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +## HISTORY + +The physics was first developed for the Meso-NH model (http://mesonh.aero.obs-mip.fr/). +Then, a part of the physics have been used to build the AROME model ([Seity et al, 2011](http://dx.doi.org/10.1175/2010MWR3425.1)). +The last step was to extract the physics to build the independent PHYEX package. + +## CONTENT + +The folowing paramerisations are included in the PHYEX package (see the MesoNH documentation for references): + - turbulence scheme + - shallow convection scheme + - microphysics scheme + +In addition to the parametrisatin source code, test programs and a library for python binding are also provided. diff --git a/docs/Plugging.md b/docs/Plugging.md new file mode 100644 index 0000000000000000000000000000000000000000..79657aeb86730770741d1533ae429f711de16740 --- /dev/null +++ b/docs/Plugging.md @@ -0,0 +1,35 @@ +# PHYEX plugging documentation + +## ABOUT THIS DOCUMENT + +The PHYEX parameterizations can be called from the Meso-NH and AROME models, from +test programs and from a driver. +This document is intended for developers who want to plug in the physics in a new model or program. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +## INTERFACES + +The folowing routines are identified as the interface of the physics: + + - lima\_adjust + - ice\_adjust + - shallow\_mf + - turb + - lima, lima\_warm, lima\_cold and lima\_mixed + - rain\_ice, rain\_ice\_old + - ini\_\* **TODO: list the different ini subroutine needed** + +This interface is declared in the corresponding modi\_\* files. + +## HOOKS + +The code provided in the common directory is independent, it can be compiled and used without +dependency except the [fiat package](https://github.com/ecmwf-ifs/fiat). +For more interaction with the hosting model, some subroutine can receive a specific implementation. +The following codes already have specific implementations for the Meso-NH and AROME models and are therefore +quite likely to receive a new implementation before plugging into another host model. + + - mode\_budget: to store and/or compute statistics on variable tendencies + - mode\_msg: to print messages and abort on error + diff --git a/docs/TODO b/docs/TODO index 0c4fed3b51ac6da75d742a4433a42864f009336b..6b64d5663ff6709fe1d0bc18992a198571c0254d 100644 --- a/docs/TODO +++ b/docs/TODO @@ -1,41 +1,40 @@ -Module de clés namelists PHYEX -Une solution serait de créer un module propre à PHYEX qui contiendrait des clés de contrôle de haut niveau - pour la physique. Ce module serait initialisé dans Méso-NH à partir de clés actuellement en dehors - de la physique. - -Dependencies: - - définir les interfaces propres - - créer des codes pour le driver - - liste dans document Interfaces - - pour AROME placés, en attendant, dans phyex/externals - -Clé de compilation REPRO48 + REPRO55 ajoutées pour permettre de reproduire le cycle 48 MNH-5.5.0, elles: - - contournent des corrections de bug - - modifient l'organisation de calculs - - REPRO48 reproduit les résultats obtenus avant l'introduction de la fraction précipitante froide dans l'ajustement -Utilisation des clés: - - REPRO48 seule: la version de code qui sera retenue à la fin est celle de Méso-NH 5.5 - - REPRO55 seule: la version de code qui sera retenue à la fin est celle du cycle 48 d'AROME - - defined(REPRO48) || defined(REPRO55): la version de code qui sera retenue à la fin est nouvelle -Ces clés devront être supprimées - -Ecrire doc sur marche à suivre pour intégrer un nouveau développement: - - dev dans MNH à faire en array-syntax - - dev dans AROME à faire en boucles do - - intégration dans PHYEX: en array-syntax avec directives mnh_expand - - les 3 tests suivants doivent donner les mêmes résultats (au bit près) dans chacun des deux modèles: - - compilation directe sans activer mnh_expand - - compilation en activant mnh_expand - - exécution en changeant le nombre de processeurs +Module de clés namelists PHYEX. Des modules sont assez généraux et utilisés ailleurs dans Méso-NH (répertoire aux) + - Une solution serait de créer un module propre à PHYEX qui contiendrait des clés de contrôle de haut niveau + pour la physique. Ce module serait initialisé dans Méso-NH à partir de clés actuellement en dehors + de la physique. + - Une autre solution serait de supprimer ces modules de PHYEX et de recevoir ces quelques clés en argument (ex modd_lunit?) + - si certains modules contiennent des clés purement physiques et d'autres purement dynamique, on pourrait scinder le module + +Documentation: search for the TODO keys in the *.md files of the docs directory + +Intégration de PHYEX dans des cycles/versions officielles: +- Clés de compilation + - Clé de compilation REPRO48 + REPRO55 ajoutées pour permettre de reproduire le cycle 48 MNH-5.5.0, elles: + - contournent des corrections de bug + - modifient l'organisation de calculs + - REPRO48 reproduit les résultats obtenus avant l'introduction de la fraction précipitante froide dans l'ajustement + - Utilisation des clés: + - REPRO48 seule: la version de code qui sera retenue à la fin est celle de Méso-NH 5.5 + - REPRO55 seule: la version de code qui sera retenue à la fin est celle du cycle 48 d'AROME + - defined(REPRO48) || defined(REPRO55): la version de code qui sera retenue à la fin est nouvelle + - Ces clés devront être supprimées +- Répertoires ext + - Répertoire arome/ext et mesonh/ext contiennent les codes non PHYEX qu'il faut modifier dans le pack pour qu'il puisse être compilé. + - Ce répertoire devra être vidé à la fin du phasage, les modifications nécessaires devront avoir été fournies par ailleurs +- Code AROME: + - supprimer les répertoires internals et modules de mpa/* qui sont repris par phyex + - supprimer les codes listés dans le fichier src/arome/gmkpack_ignored_files (ceux qui ne sont pas dans phyex) + - reprendre le code de src/arome/ext pour mettre à jour le code IAL + - déplacer dans mpa/conv: aro_convbu + - déplacer dans un nouveau mpa/aux: aro_startbu, aroini_budget, aro_suintbudget, aro_suintbudget_omp, aroini_cstmnh, aroini_frommpa, modd_spp_type Merge pb: - rain_ice_old a rebrancher dans Meso-NH - appels à condensation temporairement supprimés de src/mesonh/micro/radtr_satel.f90, src/mesonh/micro/ice_adjust_elec.f90 et src/mesonh/micro/lima_adjust_split.f90 - - shallow_mf (appels dans aro_shallow et arp_shallow): - Dans Méso-NH: shallow_mf doit être appelé avec PDX=XDXHAT(1) et PDY=XDYHAT(1) - Dans AROME/ARP: où trouver la taille de maille? - arp_shallow_mf non phasé + - LIMA à faire + - KFB ? Pb identifiés à corriger plus tard: - deposition devrait être déplacée dans ice4_tendencies @@ -46,49 +45,29 @@ Pb identifiés à corriger plus tard: => à corriger - seules quelques options sont testées avec les cas test (par exemple, il faudrait tester RMC01 mais l'option n'est pas remontée en namelist) - - arome/ini_cmfshall devrait s'appeler ini_param_mfshall - th_r_from_thl_rt appelée partout, il faudrait limiter à OTEST - - doute sur le codage de MODD_PRECISION - - appel à abort à travers print_msg non testé - - indentation inorrecte dans les blocs mnh_expand - - sedimentation momentum non branchée (et à trasformer comme sedim_stat) + - sedimentation momentum non branchée - si possible, modifier ice4_sedimentation_split* dans le même esprit que stat - il faudrait nettoyer les interfaces pour supprimer les clés passées directement alors qu'elles sont également disponibles dans les structures (ex: HMF_UPDRAFT) - -Répertoire arome/ext et mesonh/ext contiennent les codes non PHYEX qu'il faut modifier dans le pack pour qu'il puisse être compilé. -Ce répertoire devra être vidé à la fin du phasage, les modifications nécessaires ayadevront avoir été fournies par ailleurs - -Budgets/DDH -- Le code dans budget_DDH devra être transféré dans mode_budget -- les routines arome specifiques aux budgets sont dans mpa/micro, il faudrait les mettre dans aux -- Le module modd_dyn n'est utilisé que pour les budgets, voir s'il peut être supprimé -- Le code des budgets devrait être revu: pas en phase avec celui de Méso-NH et phasage a priori - inutile car très peu de code semble réellement utile pour AROME - -Budgets/LES + - La taille du buffer utilisé pour th_r_from_thl_rt doit être mise en module et + utilisée pour déclarer le buffer dans les routines appelantes et dans th_r_from_thl_rt + - shallow_mf_pack devrait être récrit pour appeler directement shallow_mf sans recopier les tableaux pour les changer de forme + - rain_ice: + - séparer l'avance temporelle du découpage en sous-blocs en créant une couche driver supplémentaire. Cette couche pourrait + avoir différentes implémentations (filtre LLMICRO seul, filtre LLMICRO + découpage en sous-blocs, filtre LLMICR + - mettre le code des interpolations linéaires et bi-linéaires dans des routines avec deux implémentations: avec et sans packing + +Nettoyage ultérieur : +- Budgets/LES Une fois toutes les routines de la turbulence ont leur dimension horizontale packée et utilisent LES_MEAN_SUBGRID_PHY a la place de LES_MEAN_SUBGRID_PHY : renommer les routines arome/turb et mesonh/turb en les_mean_subgrid.F90 et remplacer partout dans le code les appels (enlever le _PHY) + supprimer les anciennes routines -SPP -- modd_spp_type est pour l'instant dans mpa/micro/externals mais n'est pas de la microphysique - -Nettoyage apl_arome non fait (pb a la compilation) ==> 4 arguments dans aro_turb_mnh supprimés (non utilisés) - -turb.F90 : il reste un CALL à SOURCES_NEG_CORRECT à ajouter. - -Regarder s'il ne serait pas possible/souhaitable de supprimer modd_lunit de PHYEX. On pourrait se contenter de recevoir le numero d'unité logique - -Nettoyage des répertoires aux nécessaire - -Initialiser dans AROME la variable ldiag_in_run de MODD_DIAG_IN_RUN pour pouvoir phaser le modd - -Faire une branche GPU qui contient les codes utilisés pour générer les fichiers pour Philippe. - -Ajouter un répertoire pour héberger un pseudo-modèle qui contiendrait les cas tests de Philippe. -La taille du buffer utilisé pour th_r_from_thl_rt doit être mise en module et utilisée pour déclarer le module dans les routines appelantes et dans th_r_from_thl_rt +Enable mnh_expand with fcm build -rain_ice: - - séparer l'avance temporelle du découpage en sous-blocs en créant une couche driver supplémentaire. Cette couche pourrait avoir différentes implémentations (filtre LLMICRO seul, filtre LLMICRO + découpage en sous-blocs, filtre LLMICRO + découpage en sous-blocs en respectant les colonnes, en passant tous les points) - - mettre le code des interpolations linéaires et bi-linéaires dans des routines avec deux implémentations: avec et sans packing +Reprendre les différents outils en deux scripts principaux: +- outil pour reprendre toutes les fonctionnalités sur le code: filepp, MNH_Expand_Array, correct_indent.py, verify_mnh_expand.py et renommage +- outil prep_code débarrassé du renommage pour ne faire que la gestion des commit et lancer la manipulation sur le code +Il restera, à part, les scripts de comparaison des résultats (à moins qu'ils puissent être inlinés dans les check_commit correspondant) +>>>>>>> GPU diff --git a/docs/Tools.md b/docs/Tools.md new file mode 100644 index 0000000000000000000000000000000000000000..2f444c240dc243abc90e7b1c105f3e6d3335dcee --- /dev/null +++ b/docs/Tools.md @@ -0,0 +1,74 @@ +# TOOLS DOCUMENTATION + +## ABOUT THIS DOCUMENT + +This document is intended for persons who want to use the prep\_code.sh or the check\_commit\_\*.sh scripts. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +## INSTALLATION, PATH... + +Installation is covered in the [INSTALL documentation](../tools/INSTALL.md). + +Environment variables can be set with: + +``` +. <git repository>/tools/env.sh +``` + +## TOOLS + +### check\_commit\_ial.sh + +The check\_commit\_ial script compiles, executes IAL test cases and compare the results against a reference simulations. + +Script options can be displayed with the -h option. + +Before being usable, the AROME model must be installed following the [INSTALL\_pack\_ial documentation](../tools/INSTALL_pack\_ial.md). + +### check\_commit\_mesonh.sh + +The check\_commit\_mesonhsh script compiles, runs a test case of the Meso-NH model and compares the results against a reference simulation. + +Script options can be displayed with the -h option. + +Before being usable, the mesonh model must be installed following the [INSTALL\_pack\_mesonh documentation](../tools/INSTALL_pack_mesonh.md). + +For check\_commit\_mesonh.sh the following environment variables can be set: + + - MNHPACK: directory in which MNH pack will be created (default is $HOME/MesoNH/PHYEX) + - REFDIR: directory in which reference pack can be found (default is the pack directory near the check\_commit\_mesonh.sh file) + - TARGZDIR: directory in which the tar.gz file can be found (default is the pack directory near the check\_commit\_mesonh.sh file) + +### check\_commit\_testprogs.sh + +The check\_commit\_testprogs.sh script runs offline simulations in the directory given +by the environment variable TESTPROGSDIR ($HOME/TESTPROGS will be used if the variable is not set). +This directory must exist. + +Script options can be displayed with the -h option. + +To be usable the check\_commit\_testprogs.sh script needs input data. The generation and installation of these data are described in the [INSTALL\_testprogs documentation](../tools/INSTALL_testprogs.md). + +The goal of the script is to compare outputs between two simulations (to check if bit-reproducibilty is achieved or not). +A reference simulation must be performed and save. This reference simulation is run the same way as the +test experiment but cannot be compared to something else: +check\_commit\_testprogs.sh -c -r <reference_commit> + +If this reference simulation must become the 'absolute' reference (used when invoking the check\_commit\_testprogs.sh +script with the 'REF' argument), the reference simulation directory (under $TESTPROGSDIR) must be renamed 'ref'. + +### prep\_code.sh + +This script is used by the different check\_commit\_\* scripts and can be used directly to pre-process the source code. + The installation is described in the [INSTALL\_mnh\_expand documentation](../tools/INSTALL_mnh_expand.md) + +### others + +Other scripts are: + + - comp\_DDH.py: compare DDH outputs (used by check\_commit\_ial.sh) + - compare.py: compare MESO-NH outputs (used by check\_commit\_mesonh.sh) + - correct\_indent.py: correct source code indentation in mnh\_expand blocs + - diffNODE.001\_01: compare NODE.0001\_01 output files + - verify\_mnh\_expand.py: check syntax in mnh\_expand blocs diff --git a/src/arome/aux/budget_DDH.F90 b/src/arome/aux/budget_DDH.F90 deleted file mode 100644 index 5e448dc8eab5cc7bd501f1b4905e85cf019e244f..0000000000000000000000000000000000000000 --- a/src/arome/aux/budget_DDH.F90 +++ /dev/null @@ -1,218 +0,0 @@ -! ######spl -! ##################################### - SUBROUTINE BUDGET_DDH(PVARS,KBUDN,HBUVAR,YDDDH, YDLDDH, YDMDDH, LDISDIFF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ##################################### -! -!! BUDGET - routine to call the BUDGET routine for AROME. -!! -!! BEWARE THIS ROUTINE iS DIFFERENT FROM THE MNH ROUTINE BUDGET -!! EVEN IF IT WEARS THE SAME NAME !!! -!! -!! PURPOSE -!! ------- -! This routine is an interface for the add_ddh subroutine. -! It converts the selected field into klev reversed vertical -! levels and attributes to the selected field are created. -! -!!** METHOD -!! ------ -!! -!! 1st step: substract previous step (sequential approach in MNH) -!! 2nd step: reverse levels -!! 3rd step: multiplication by conversion factor for r-> q -!! or Theta-> T -!! -!! 4rd step: call to add_ddh now that the field has an Aladin shape -!! -!! -!! EXTERNAL -!! -------- -!! ADD_FIELD_3D -!! INVERT_VLEV -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_INTBUDGET: -!! -!! PVARS_M(nlon,1,nlev,13) !13 different budgets -!! VARMULT(:,:,13) ! allows to convert variables -!! -!! REFERENCE -!! --------- -!! "New data flow for diagnostics in Arome/Arpege" -!! -!! AUTHOR -!! ------ -!! O.Riviere 17/07/08 * Meteo France * -!! -!! -!! MODIFICATIONS -!! ------------- -!! F.Voitus 16/05/17 : Introduction of new DDH superstructure for budget -!! S.Riette Jan 2022 : LDISDIFF case -!! -!------------------------------------------------------------------------------- - -! - -USE MODDB_INTBUDGET,ONLY:TAB_VARMULT,TVARSM,CVARNAME,NLON -USE DDH_MIX, ONLY:NFLEVGDDH,NPROMADDH,ADD_FIELD_3D, & - & TYP_DDH, NEW_ADD_FIELD_3D ! reference is Arpege -USE OML_MOD, ONLY : OML_MY_THREAD -USE YOMLDDH, ONLY : TLDDH -USE YOMMDDH, ONLY : TMDDH - - -IMPLICIT NONE -! -! -!* 0.1 Declarations of arguments : -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PVARS ! source of the variable -INTEGER , INTENT(IN) :: KBUDN ! variable number - -CHARACTER (LEN=*) , INTENT(IN) :: HBUVAR ! Identifier of the Budget -TYPE(TYP_DDH) , INTENT(INOUT) :: YDDDH -TYPE(TLDDH) , INTENT(IN) :: YDLDDH -TYPE(TMDDH) , INTENT(IN) :: YDMDDH - -LOGICAL, OPTIONAL , INTENT(IN) :: LDISDIFF ! PVARS contains the increment (default is .FALSE.) - -!* 0.2 Declaration of local variables: -REAL,DIMENSION(NPROMADDH,NFLEVGDDH):: ZVARS -LOGICAL :: LINST,LDDH -INTEGER::IINCR,JLON,JLEV,IFDIA,IOFF -CHARACTER (LEN=4) :: CLPROC -CHARACTER (LEN=11) :: CLDDH -LOGICAL :: LISDIFF - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('BUDGET_DDH',0,ZHOOK_HANDLE) - -IF (PRESENT(LDISDIFF)) THEN - LISDIFF=LDISDIFF -ELSE - LISDIFF=.FALSE. -ENDIF - -IFDIA=SIZE(PVARS,1) -ZVARS(:,:)=0. -IF (SIZE(PVARS,3)==NFLEVGDDH+2) THEN - IOFF=1 -ELSE - IOFF=0 -ENDIF -!if length is less than 4, fill with budget old names -IF(LEN(HBUVAR)==1) THEN - CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR)))//'_BU' -ELSE IF(LEN(HBUVAR)==2) THEN - CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR)))//'_B' -ELSE IF(LEN(HBUVAR)==3) THEN - CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR)))//'_' -ELSE - CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR))) -END IF -! -IF (YDLDDH%LDDH_OMP) THEN - CLDDH='T'//YDDDH%YVARMULT(KBUDN)%CNAME//CLPROC -ELSE - CLDDH='T'//CVARNAME(KBUDN)//CLPROC -ENDIF - -! depi not stored through call to budget but add_field -IF ((CLPROC=='DEPI').OR.(CLPROC=='CEDS')) THEN - IF (LHOOK) CALL DR_HOOK('BUDGET_DDH',1,ZHOOK_HANDLE) - RETURN -ENDIF - -!1. Substraction of value at previous process and updates PVARSM - -IF (YDLDDH%LDDH_OMP) THEN - IF (CLPROC=='INIF') THEN - DO JLEV=1,NFLEVGDDH - DO JLON=1,IFDIA - YDDDH%RVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) - ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) - ENDDO - ENDDO - ELSE - IF (LISDIFF) THEN - DO JLEV=1,NFLEVGDDH - DO JLON=1,IFDIA - ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) - YDDDH%RVARSM(JLON,1,JLEV,KBUDN)=YDDDH%RVARSM(JLON,1,JLEV,KBUDN)+PVARS(JLON,1,JLEV+IOFF) - ENDDO - ENDDO - ELSE - DO JLEV=1,NFLEVGDDH - DO JLON=1,IFDIA - ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF)-YDDDH%RVARSM(JLON,1,JLEV,KBUDN) - YDDDH%RVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) - ENDDO - ENDDO - ENDIF - ENDIF -ELSE - IF (CLPROC=='INIF') THEN - DO JLEV=1,NFLEVGDDH - DO JLON=1,IFDIA - TVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) - ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) - ENDDO - ENDDO - ELSE - IF (LISDIFF) THEN - DO JLEV=1,NFLEVGDDH - DO JLON=1,IFDIA - ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) - TVARSM(JLON,1,JLEV,KBUDN)=TVARSM(JLON,1,JLEV,KBUDN)+PVARS(JLON,1,JLEV+IOFF) - ENDDO - ENDDO - ELSE - DO JLEV=1,NFLEVGDDH - DO JLON=1,IFDIA - ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF)-TVARSM(JLON,1,JLEV,KBUDN) - TVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) - ENDDO - ENDDO - ENDIF - ENDIF -ENDIF - - - -!2. Reverse levels MNH-> ALD -!IINCR=-1 -!CALL INVERT_VLEV(1,NLON,NFLEVGDDH,IINCR,ZVARS,PVARS2) - -!3. CONVERSION -! converting to desired budget variables - -IF (YDLDDH%LDDH_OMP) THEN - ZVARS(:,:)=ZVARS(:,:)*YDDDH%YVARMULT(KBUDN)%RVAL(:,:) -ELSE - ZVARS(:,:)=ZVARS(:,:)*TAB_VARMULT(KBUDN)%VARMULT(:,:) -ENDIF - - -!4. CALL TO ADD_FIELD - - -LDDH=.TRUE. -LINST=.TRUE. -! saves ZVARS with NAME HBUVAR as a Tendency from AROME -! and it is an INSTantaneous field -IF (CLPROC/='INIF') THEN - IF (YDLDDH%LDDH_OMP) THEN - CALL NEW_ADD_FIELD_3D(YDMDDH,ZVARS,CLDDH,YDDDH) - ELSE - CALL ADD_FIELD_3D(YDLDDH,ZVARS,CLDDH,'T','AROME',LINST,LDDH) - ENDIF -ENDIF - -IF (LHOOK) CALL DR_HOOK('BUDGET_DDH',1,ZHOOK_HANDLE) -END SUBROUTINE BUDGET_DDH - diff --git a/src/arome/aux/ini_budget.F90 b/src/arome/aux/ini_budget.F90 deleted file mode 100644 index 9506cd1df51623445d6551c72846420b4a972e83..0000000000000000000000000000000000000000 --- a/src/arome/aux/ini_budget.F90 +++ /dev/null @@ -1,2533 +0,0 @@ -! ######spl - SUBROUTINE INI_BUDGET(KLUOUT, HLUOUT,PTSTEP,KSV,KRR, & - ONUMDIFU,ONUMDIFTH,ONUMDIFSV, & - OHORELAX_UVWTH,OHORELAX_RV,OHORELAX_RC,OHORELAX_RR, & - OHORELAX_RI,OHORELAX_RS, OHORELAX_RG, OHORELAX_RH,OHORELAX_TKE, & - OHORELAX_SV,OVE_RELAX,OCHTRANS,ONUDGING,ODRAGTREE, & - HRAD,HDCONV,HSCONV,HTURB,HTURBDIM,HCLOUD, & - HMET_ADV_SCHEME,HSV_ADV_SCHEME) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################################################# -! -!!**** *INI_BUDGET* - routine to initialize the parameters for the budgets -!! -!! PURPOSE -!! ------- -! The purpose of this routine is to set or compute the parameters used -! by the MESONH budgets. Names of files for budget recording are processed -! and storage arrays are initialized. -! -!!** METHOD -!! ------ -!! The essential of information is passed by modules. The choice of budgets -!! and processes set by the user as integers is converted in "actions" -!! readable by the subroutine BUDGET under the form of string characters. -!! For each complete process composed of several elementary processes, names -!! of elementary processes are concatenated in order to have an explicit name -!! in the comment of the recording file for budget. -!! -!! -!! EXTERNAL -!! -------- -!! None -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_PARAMETERS: JPBUMAX,JPBUPROMAX -!! -!! Module MODD_CONF: CCONF -!! -!! Module MODD_DYN: XSEGLEN -!! -!! -!! REFERENCE -!! --------- -!! Book2 of documentation (routine INI_BUDGET) -!! -!! -!! AUTHOR -!! ------ -!! P. Hereil * Meteo France * -!! -!! MODIFICATIONS -!! ------------- -!! Original 01/03/95 -!! J. Stein 25/06/95 put the sources in phase with the code -!! J. Stein 20/07/95 reset to FALSE of all the switches when -!! CBUTYPE /= MASK or CART -!! J. Stein 26/06/96 add the new sources + add the increment between -!! 2 active processes -!! J.-P. Pinty 13/12/96 Allowance of multiple SVs -!! J.-P. Pinty 11/01/97 Includes deep convection ice and forcing processes -!! J.-P. Lafore 10/02/98 Allocation of the RHODJs for budget -!! V. Ducrocq 04/06/99 // -!! N. Asencio 18/06/99 // MASK case : delete KIMAX and KJMAX arguments, -!! GET_DIM_EXT_ll initializes the dimensions of the -!! extended local domain. -!! LBU_MASK and XBUSURF are allocated on the extended -!! local domain. -!! add 3 local variables IBUDIM1,IBUDIM2,IBUDIM3 -!! to define the dimensions of the budget arrays -!! in the different cases CART and MASK -!! J.-P. Pinty 23/09/00 add budget for C2R2 -!! V. Masson 18/11/02 add budget for 2way nesting -!! O.Geoffroy 03/2006 Add KHKO scheme -!! J.-P. Pinty 22/04/97 add the explicit hail processes -!! C.Lac 10/08/07 Add ADV for PPM without contribution -!! of each direction -!! C. Barthe 19/11/09 Add atmospheric electricity -!! C.Lac 01/07/11 Add vegetation drag -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_PARAMETERS -USE MODD_BUDGET -USE MODD_DYN -USE MODD_CONF -USE MODD_PARAM_ICE -USE MODD_PARAM_C2R2 -USE MODD_ELEC_DESCR, ONLY : LINDUCTIVE -! -!USE MODE_ll -!USE MODE_IO_ll -! -IMPLICIT NONE -! -!* 0.1 declarations of argument -! -! -INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints -CHARACTER (LEN=*), INTENT(IN) :: HLUOUT ! name of output listing -REAL, INTENT(IN) :: PTSTEP ! time step -INTEGER, INTENT(IN) :: KSV ! number of scalar variables -INTEGER, INTENT(IN) :: KRR ! number of moist variables -LOGICAL, INTENT(IN) :: ONUMDIFU ! switch to activate the numerical - ! diffusion for momentum -LOGICAL, INTENT(IN) :: ONUMDIFTH ! for meteorological scalar variables -LOGICAL, INTENT(IN) :: ONUMDIFSV ! for tracer scalar variables -LOGICAL, INTENT(IN) :: OHORELAX_UVWTH ! switch for the - ! horizontal relaxation for U,V,W,TH -LOGICAL, INTENT(IN) :: OHORELAX_RV ! switch for the - ! horizontal relaxation for Rv -LOGICAL, INTENT(IN) :: OHORELAX_RC ! switch for the - ! horizontal relaxation for Rc -LOGICAL, INTENT(IN) :: OHORELAX_RR ! switch for the - ! horizontal relaxation for Rr -LOGICAL, INTENT(IN) :: OHORELAX_RI ! switch for the - ! horizontal relaxation for Ri -LOGICAL, INTENT(IN) :: OHORELAX_RS ! switch for the - ! horizontal relaxation for Rs -LOGICAL, INTENT(IN) :: OHORELAX_RG ! switch for the - ! horizontal relaxation for Rg -LOGICAL, INTENT(IN) :: OHORELAX_RH ! switch for the - ! horizontal relaxation for Rh -LOGICAL, INTENT(IN) :: OHORELAX_TKE ! switch for the - ! horizontal relaxation for tke -LOGICAL,DIMENSION(:),INTENT(IN):: OHORELAX_SV ! switch for the - ! horizontal relaxation for scalar variables -LOGICAL, INTENT(IN) :: OVE_RELAX ! switch to activate the vertical - ! relaxation -LOGICAL, INTENT(IN) :: OCHTRANS ! switch to activate convective - !transport for SV -LOGICAL, INTENT(IN) :: ONUDGING ! switch to activate nudging -LOGICAL, INTENT(IN) :: ODRAGTREE ! switch to activate vegetation drag -CHARACTER (LEN=*), INTENT(IN) :: HRAD ! type of the radiation scheme -CHARACTER (LEN=*), INTENT(IN) :: HDCONV ! type of the deep convection scheme -CHARACTER (LEN=*), INTENT(IN) :: HSCONV ! type of the shallow convection scheme -CHARACTER (LEN=*), INTENT(IN) :: HTURB ! type of the turbulence scheme -CHARACTER (LEN=*), INTENT(IN) :: HTURBDIM! dimensionnality of the turbulence - ! scheme -CHARACTER (LEN=*), INTENT(IN) :: HCLOUD ! type of microphysical scheme -CHARACTER (LEN=*), INTENT(IN) :: HMET_ADV_SCHEME ! type of advection scheme - ! for meteorological scalar variables -CHARACTER (LEN=*), INTENT(IN) :: HSV_ADV_SCHEME ! type of advection scheme - ! for tracer scalar variables -! -!* 0.2 declarations of local variables -! -INTEGER, DIMENSION(JPBUMAX,JPBUPROMAX+1) :: IPROACTV ! switches set by the - ! user for process - ! activation -INTEGER :: JI, JJ, JK , JJJ ! loop indices -INTEGER :: IIMAX_ll, IJMAX_ll ! size of the physical global domain -INTEGER :: ITEN ! tens for CBURECORD -INTEGER :: IPROC ! counter for processes -INTEGER :: IIU, IJU ! size along x and y directions - ! of the extended subdomain -INTEGER :: IBUDIM1 ! first dimension of the budget arrays - ! = NBUIMAX in CART case - ! = NBUKMAX in MASK case -INTEGER :: IBUDIM2 ! second dimension of the budget arrays - ! = NBUJMAX in CART case - ! = NBUWRNB in MASK case -INTEGER :: IBUDIM3 ! third dimension of the budget arrays - ! = NBUKMAX in CART case - ! = NBUMASK in MASK case -LOGICAL :: GERROR ! switch for error in - ! budget specifcation -CHARACTER(LEN=7), DIMENSION(JPBUMAX) :: YEND_COMMENT ! last part of comment - ! for budgets records -CHARACTER(LEN=6), DIMENSION(JPBUMAX,JPBUPROMAX) :: YWORK2 ! used for - ! concatenattion of - ! comments for budgets -CHARACTER(LEN=40) :: YSTRING -INTEGER :: ILEN -INTEGER :: JSV ! loop indice for the SVs -INTEGER :: IBUPROCNBR_SV_MAX ! Max number of processes for the SVs -INTEGER :: ILAST_PROC_NBR ! Index of the last process number -INTEGER :: IINFO_ll ! return status of the interface routine -INTEGER :: IRESP ! Return code of FM-routines -! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!!! -!!! the lines below must be update as soon as MODD_BUDGET is updated -!!! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!------------------------------------------------------------------------------- -! -!* 1. COMPUTE BUDGET VARIABLES -! ------------------------ -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('INI_BUDGET',0,ZHOOK_HANDLE) -NBUSTEP = NINT (XBULEN / PTSTEP) -NBUTSHIFT=0 -! -! common dimension for all CBUTYPE values -! -IF (LBU_KCP) THEN - NBUKMAX = 1 -ELSE - NBUKMAX = NBUKH - NBUKL +1 -END IF -! -IF (CBUTYPE=='CART') THEN ! cartesian case only -! - NBUWRNB = 1 ! after every budget period, we write the result on the - ! FM_FILE -! Following lines are not used in AROME -! IF (LBU_ICP) THEN -! NBUIMAX_ll = 1 -! ELSE -! NBUIMAX_ll = NBUIH - NBUIL +1 -! END IF -! IF (LBU_JCP) THEN -! NBUJMAX_ll = 1 -! ELSE -! NBUJMAX_ll = NBUJH - NBUJL +1 -! END IF -! -! CALL GET_INTERSECTION_ll(NBUIL,NBUJL,NBUIH,NBUJH, & -! NBUSIL,NBUSJL,NBUSIH,NBUSJH,"PHYS",IINFO_ll) -! Call to GET_INTERSECTION_ll is replaced by: - NBUSIL=NBUIL - NBUSJL=NBUJL - NBUSIH=NBUIH - NBUSJH=NBUJH - IINFO_ll=0 - IF ( IINFO_ll /= 1 ) THEN ! - IF (LBU_ICP) THEN - NBUIMAX = 1 - ELSE - NBUIMAX = NBUSIH - NBUSIL +1 - END IF - IF (LBU_JCP) THEN - NBUJMAX = 1 - ELSE - NBUJMAX = NBUSJH - NBUSJL +1 - END IF - ELSE ! the intersection is void - CBUTYPE='SKIP' ! no budget on this processor - NBUIMAX = 0 ! in order to allocate void arrays - NBUJMAX = 0 - ENDIF -! three first dimensions of budget arrays in cart and skip cases - IBUDIM1=NBUIMAX - IBUDIM2=NBUJMAX - IBUDIM3=NBUKMAX -! these variables are not be used - NBUWRNB=-1 - NBUMASK=-1 -! -ELSEIF (CBUTYPE=='MASK') THEN ! mask case only -! - LBU_ENABLE=.TRUE. - NBUWRNB = NINT (XBUWRI / XBULEN) ! only after NBUWRNB budget periods, we write the - ! result on the FM_FILE - NBUTIME = 1 - -! CALL GET_DIM_EXT_ll ('B', IIU,IJU) - ALLOCATE( LBU_MASK( IIU ,IJU, NBUMASK) ) - LBU_MASK(:,:,:)=.FALSE. - ALLOCATE( XBUSURF( IIU, IJU, NBUMASK, NBUWRNB) ) - XBUSURF(:,:,:,:) = 0. -! -! three first dimensions of budget arrays in mask case -! the order of the dimensions are the order expected in WRITE_DIACHRO routine: -! x,y,z,time,mask,processus and in this case x and y are missing -! first dimension of the arrays : dimension along K -! second dimension of the arrays : number of the budget time period -! third dimension of the arrays : number of the budget masks zones - IBUDIM1=NBUKMAX - IBUDIM2=NBUWRNB - IBUDIM3=NBUMASK -! these variables are not used in this case - NBUIMAX=-1 - NBUJMAX=-1 -! the beginning and the end along x and y direction : global extended domain - ! get dimensions of the physical global domain - ! CALL GET_GLOBALDIMS_ll (IIMAX_ll,IJMAX_ll) - NBUIL=1 - NBUIH=IIMAX_ll + 2 * JPHEXT - NBUJL=1 - NBUJH=IJMAX_ll + 2 * JPHEXT - -! -ELSE ! default case -! - LBU_ENABLE=.FALSE. - NBUIMAX = -1 - NBUJMAX = -1 - LBU_RU = .FALSE. - LBU_RV = .FALSE. - LBU_RW = .FALSE. - LBU_RTH= .FALSE. - LBU_RTKE= .FALSE. - LBU_RRV= .FALSE. - LBU_RRC= .FALSE. - LBU_RRR= .FALSE. - LBU_RRI= .FALSE. - LBU_RRS= .FALSE. - LBU_RRG= .FALSE. - LBU_RRH= .FALSE. - LBU_RSV= .FALSE. -! -! three first dimensions of budget arrays in default case - IBUDIM1=0 - IBUDIM2=0 - IBUDIM3=0 -! -END IF -! -! -!------------------------------------------------------------------------------- -! -!* 2. ALLOCATE MEMORY FOR BUDGET ARRAYS AND INITIALIZE -! ------------------------------------------------ -! -ALLOCATE( NBUPROCNBR(JPBUMAX) ) -ALLOCATE( NBUPROCCTR(JPBUMAX) ) -ALLOCATE( CBUACTION(JPBUMAX, JPBUPROMAX) ) -ALLOCATE( CBUCOMMENT(JPBUMAX, JPBUPROMAX) ) -ALLOCATE( CBURECORD(JPBUMAX, JPBUPROMAX) ) -NBUPROCCTR(:) = 0 -NBUCTR_ACTV(:) = 0 -NBUPROCNBR(:) = 0 -CBUACTION(:,:) = 'OF' -CBURECORD(:,:) = ' ' -CBUCOMMENT(:,:) = ' ' -LBU_BEG =.TRUE. -! -!------------------------------------------------------------------------------- -! -!* 3. INITALIZE VARIABLES -! ------------------- -! -IPROACTV(:,:) = 3 -IPROACTV(:,4) = 1 -IPROACTV(:,JPBUPROMAX+1) = 0 -GERROR=.FALSE. -YWORK2(:,:) = ' ' -YEND_COMMENT(:) = ' ' -! -! Budget of RU -IF (LBU_RU) THEN - IPROC=4 - IPROACTV(1,IPROC) = NASSEU - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(1,IPROC) = NNESTU - IPROC=IPROC+1 - IPROACTV(1,IPROC) = NADVXU - IPROC=IPROC+1 - IPROACTV(1,IPROC) = NADVYU - IPROC=IPROC+1 - IPROACTV(1,IPROC) = NADVZU - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(1,IPROC) = NFRCU - IPROC=IPROC+1 - IF( ONUDGING ) IPROACTV(1,IPROC) = NNUDU - IPROC=IPROC+1 - IF ( .NOT. LCARTESIAN ) THEN - IPROACTV(1,IPROC) = NCURVU - ELSE - IPROACTV(1,IPROC) = 4 - END IF - IPROC=IPROC+1 - IF ( LCORIO ) THEN - IPROACTV(1,IPROC) = NCORU - ELSE - IPROACTV(1,IPROC) = 4 - END IF - IPROC=IPROC+1 - IF ( ONUMDIFU ) IPROACTV(1,IPROC) = NDIFU - IPROC=IPROC+1 - IF ( OHORELAX_UVWTH .OR. OVE_RELAX ) THEN - IPROACTV(1,IPROC) = NRELU - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(1,IPROC) = 4 - ELSE - IPROACTV(1,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( ODRAGTREE ) IPROACTV(1,IPROC) = NDRAGU - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(1,IPROC) = NVTURBU - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(1,IPROC) = NHTURBU - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(1,IPROC) = 4 - ELSE - IPROACTV(1,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HSCONV == 'EDKF' ) IPROACTV(1,IPROC) = NMAFLU - IPROC=IPROC+1 - IPROACTV(1,IPROC) = NPRESU -! - YWORK2(1,1) = 'INIF_' - YWORK2(1,2) = 'ENDF_' - YWORK2(1,3) = 'AVEF_' - IPROC=4 - YWORK2(1,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'NUD_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'CURV_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'COR_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'DRAG_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'MAFL_' - IPROC=IPROC+1 - YWORK2(1,IPROC) = 'PRES_' -! - YEND_COMMENT(1) = 'BU_RU' - NBUPROCNBR(1) = 3 -! - CBUACTION(1,1) = 'IG' - CBUACTION(1,2) = 'CC' - CBUACTION(1,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(1,JJ) = ADJUSTL( ADJUSTR( YWORK2(1,JJ) ) // & - ADJUSTL( YEND_COMMENT(1) ) ) - END DO -! -END IF -! -! Budget of RV -IF (LBU_RV) THEN - IPROC=4 - IPROACTV(2,IPROC) = NASSEV - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(2,IPROC) = NNESTV - IPROC=IPROC+1 - IPROACTV(2,IPROC) = NADVXV - IPROC=IPROC+1 - IPROACTV(2,IPROC) = NADVYV - IPROC=IPROC+1 - IPROACTV(2,IPROC) = NADVZV - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(2,IPROC) = NFRCV - IPROC=IPROC+1 - IF( ONUDGING ) IPROACTV(2,IPROC) = NNUDV - IPROC=IPROC+1 - IF ( .NOT. LCARTESIAN ) THEN - IPROACTV(2,IPROC) = NCURVV - ELSE - IPROACTV(2,IPROC) = 4 - END IF - IPROC=IPROC+1 - IF ( LCORIO ) THEN - IPROACTV(2,IPROC) = NCORV - ELSE - IPROACTV(2,IPROC) = 4 - END IF - IPROC=IPROC+1 - IF ( ONUMDIFU ) IPROACTV(2,IPROC) = NDIFV - IPROC=IPROC+1 - IF ( OHORELAX_UVWTH .OR. OVE_RELAX ) THEN - IPROACTV(2,IPROC) = NRELV - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(2,IPROC) = 4 - ELSE - IPROACTV(2,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( ODRAGTREE ) IPROACTV(2,IPROC) = NDRAGV - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(2,IPROC) = NVTURBV - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(2,IPROC) = NHTURBV - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(2,IPROC) = 4 - ELSE - IPROACTV(2,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HSCONV == 'EDKF' ) IPROACTV(2,IPROC) = NMAFLV - IPROC=IPROC+1 - IPROACTV(2,IPROC) = NPRESV -! - YWORK2(2,1) = 'INIF_' - YWORK2(2,2) = 'ENDF_' - YWORK2(2,3) = 'AVEF_' - IPROC=4 - YWORK2(2,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'NUD_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'CURV_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'COR_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'DRAG_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'MAFL_' - IPROC=IPROC+1 - YWORK2(2,IPROC) = 'PRES_' -! - YEND_COMMENT(2) = 'BU_RV' - NBUPROCNBR(2) = 3 -! - CBUACTION(2,1) = 'IG' - CBUACTION(2,2) = 'CC' - CBUACTION(2,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(2,JJ) = ADJUSTL( ADJUSTR( YWORK2(2,JJ) ) // & - ADJUSTL( YEND_COMMENT(2) ) ) - END DO -! -END IF -! -! Budget of RW -IF (LBU_RW) THEN - IPROC=4 - IPROACTV(3,IPROC) = NASSEW - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(3,IPROC) = NNESTW - IPROC=IPROC+1 - IPROACTV(3,IPROC) = NADVXW - IPROC=IPROC+1 - IPROACTV(3,IPROC) = NADVYW - IPROC=IPROC+1 - IPROACTV(3,IPROC) = NADVZW - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(3,IPROC) = NFRCW - IPROC=IPROC+1 - IF( ONUDGING ) IPROACTV(3,IPROC) = NNUDW - IPROC=IPROC+1 - IF ( .NOT. LCARTESIAN ) THEN - IPROACTV(3,IPROC) = NCURVW - ELSE - IPROACTV(3,IPROC) = 4 - END IF - IPROC=IPROC+1 - IF ( LCORIO ) THEN - IPROACTV(3,IPROC) = NCORW - ELSE - IPROACTV(3,IPROC) = 4 - END IF - IPROC=IPROC+1 - IPROACTV(3,IPROC) = NGRAVW - IPROC=IPROC+1 - IF ( ONUMDIFU ) IPROACTV(3,IPROC) = NDIFW - IPROC=IPROC+1 - IF ( OHORELAX_UVWTH .OR. OVE_RELAX ) THEN - IPROACTV(3,IPROC) = NRELW - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(3,IPROC) = 4 - ELSE - IPROACTV(3,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(3,IPROC) = NVTURBW - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(3,IPROC) = NHTURBW - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(3,IPROC) = 4 - ELSE - IPROACTV(3,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IPROACTV(3,IPROC) = NPRESW -! - YWORK2(3,1) = 'INIF_' - YWORK2(3,2) = 'ENDF_' - YWORK2(3,3) = 'AVEF_' - IPROC=4 - YWORK2(3,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'NUD_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'CURV_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'COR_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'GRAV_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(3,IPROC) = 'PRES_' -! - YEND_COMMENT(3) = 'BU_RW' - NBUPROCNBR(3) = 3 -! - CBUACTION(3,1) = 'IG' - CBUACTION(3,2) = 'CC' - CBUACTION(3,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(3,JJ) = ADJUSTL( ADJUSTR( YWORK2(3,JJ) ) // & - ADJUSTL( YEND_COMMENT(3) ) ) - END DO -! -END IF -! -! Budget of RTH -IF (LBU_RTH) THEN - IPROC=4 - IPROACTV(4,IPROC) = NASSETH - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(4,IPROC) = NNESTTH - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(4,IPROC) = NADVTH - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(4,IPROC) = NADVXTH - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(4,IPROC) = NADVYTH - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(4,IPROC) = NADVZTH - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(4,IPROC) = NFRCTH - IPROC=IPROC+1 - IF( ONUDGING ) IPROACTV(4,IPROC) = NNUDTH - IPROC=IPROC+1 - IF ( KRR > 0 ) THEN - IF(.NOT.L1D) IPROACTV(4,IPROC) = NPREFTH - ELSE - IPROACTV(4,IPROC) = 4 - END IF - IPROC=IPROC+1 - IF ( ONUMDIFTH ) IPROACTV(4,IPROC) = NDIFTH - IPROC=IPROC+1 - IF ( OHORELAX_UVWTH .OR. OVE_RELAX ) THEN - IPROACTV(4,IPROC) = NRELTH - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(4,IPROC) = 4 - ELSE - IPROACTV(4,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HRAD /= 'NONE' ) IPROACTV(4,IPROC) = NRADTH - IPROC=IPROC+1 - IF ( HDCONV /= 'NONE' .OR. HSCONV == 'KAFR') IPROACTV(4,IPROC) = NDCONVTH - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(4,IPROC) = NVTURBTH - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(4,IPROC) = NHTURBTH - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(4,IPROC) = 4 - ELSE - IPROACTV(4,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF (HTURB /= 'NONE') IPROACTV(4,IPROC) = NDISSHTH - IPROC=IPROC+1 - IF ( HSCONV == 'EDKF' ) IPROACTV(4,IPROC) = NMAFLTH - IPROC=IPROC+1 - IF (HCLOUD /= 'NONE') IPROACTV(4,IPROC) = NNEGATH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE' .OR. HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO' ) & - IPROACTV(4,IPROC) = NHENUTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NHONTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NSFRTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NDEPSTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NDEPGTH - IPROC=IPROC+1 - IF (((HCLOUD(1:3) == 'ICE') .AND. LWARM) .OR. ((HCLOUD == 'C2R2' & - .OR. HCLOUD == 'KHKO') .AND. LRAIN) .OR. HCLOUD(1:3) == 'KES') & - IPROACTV(4,IPROC) = NREVATH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NRIMTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NACCTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NCFRZTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NWETGTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NDRYGTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NGMLTTH - IPROC=IPROC+1 - IF (HCLOUD == 'ICE4') IPROACTV(4,IPROC) = NWETHTH - IPROC=IPROC+1 - IF (HCLOUD == 'ICE4') IPROACTV(4,IPROC) = NHMLTTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NIMLTTH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NBERFITH - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(4,IPROC) = NCDEPITH - IPROC=IPROC+1 - IF (HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO' .OR. HCLOUD(1:3) == 'KES' .OR. & - HCLOUD == 'REVE') IPROACTV(4,IPROC) = NCONDTH -! - YWORK2(4,1) = 'INIF_' - YWORK2(4,2) = 'ENDF_' - YWORK2(4,3) = 'AVEF_' - IPROC=4 - YWORK2(4,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'NUD_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'PREF_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'RAD_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'DCONV_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'DISSH_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'MAFL_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'NEGA_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'HENU_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'HON_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'SFR_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'DEPS_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'DEPG_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'REVA_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'RIM_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'ACC_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'CFRZ_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'WETG_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'DRYG_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'GMLT_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'WETH_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'HMLT_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'IMLT_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'BERFI_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'CDEPI_' - IPROC=IPROC+1 - YWORK2(4,IPROC) = 'COND_' -! - YEND_COMMENT(4) = 'BU_RTH' - NBUPROCNBR(4) = 3 -! - CBUACTION(4,1) = 'IG' - CBUACTION(4,2) = 'CC' - CBUACTION(4,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(4,JJ) = ADJUSTL( ADJUSTR( YWORK2(4,JJ) ) // & - ADJUSTL( YEND_COMMENT(4) ) ) - END DO -! -END IF -! -! Budget of RTKE -IF (LBU_RTKE) THEN - IPROC=4 - IPROACTV(5,IPROC) = NASSETKE - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(5,IPROC) = NADVTKE - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(5,IPROC) = NADVXTKE - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(5,IPROC) = NADVYTKE - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(5,IPROC) = NADVZTKE - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(5,IPROC) = NFRCTKE - IPROC=IPROC+1 - IF ( ONUMDIFTH ) IPROACTV(5,IPROC) = NDIFTKE - IPROC=IPROC+1 - IF ( OHORELAX_TKE ) THEN - IPROACTV(5,IPROC) = NRELTKE - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(5,IPROC) = 4 - ELSE - IPROACTV(5,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( ODRAGTREE ) IPROACTV(5,IPROC) = NDRAGTKE - IPROC=IPROC+1 - IPROACTV(5,IPROC) = NDPTKE - IPROC=IPROC+1 - IPROACTV(5,IPROC) = NTPTKE - IPROC=IPROC+1 - IPROACTV(5,IPROC) = NDISSTKE - IPROC=IPROC+1 - IPROACTV(5,IPROC) = NTRTKE -! - YWORK2(5,1) = 'INIF_' - YWORK2(5,2) = 'ENDF_' - YWORK2(5,3) = 'AVEF_' - IPROC=4 - YWORK2(5,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'DRAG_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'DP_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'TP_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'DISS_' - IPROC=IPROC+1 - YWORK2(5,IPROC) = 'TR_' -! - YEND_COMMENT(5) = 'BU_RTKE' - NBUPROCNBR(5) = 3 -! - CBUACTION(5,1) = 'IG' - CBUACTION(5,2) = 'CC' - CBUACTION(5,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(5,JJ) = ADJUSTL( ADJUSTR( YWORK2(5,JJ) ) // & - ADJUSTL( YEND_COMMENT(5) ) ) - END DO -! -END IF -! -! Budget of RRV -IF (LBU_RRV) THEN - IPROC=4 - IPROACTV(6,IPROC) = NASSERV - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(6,IPROC) = NNESTRV - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(6,IPROC) = NADVRV - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(6,IPROC) = NADVXRV - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(6,IPROC) = NADVYRV - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(6,IPROC) = NADVZRV - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(6,IPROC) = NFRCRV - IPROC=IPROC+1 - IF( ONUDGING ) IPROACTV(6,IPROC) = NNUDRV - IPROC=IPROC+1 - IF ( ONUMDIFTH ) IPROACTV(6,IPROC) = NDIFRV - IPROC=IPROC+1 - IF ( OHORELAX_RV .OR. OVE_RELAX ) THEN - IPROACTV(6,IPROC) = NRELRV - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(6,IPROC) = 4 - ELSE - IPROACTV(6,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HDCONV /= 'NONE' .OR. HSCONV == 'KAFR') IPROACTV(6,IPROC) = NDCONVRV - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(6,IPROC) = NVTURBRV - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(6,IPROC) = NHTURBRV - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(6,IPROC) = 4 - ELSE - IPROACTV(6,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HSCONV == 'EDKF' ) IPROACTV(6,IPROC) = NMAFLRV - IPROC=IPROC+1 - IF ( HCLOUD /= 'NONE' ) IPROACTV(6,IPROC) = NNEGARV - IPROC=IPROC+1 - IF (HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO' .OR. HCLOUD(1:3) == 'ICE') & - IPROACTV(6,IPROC) = NHENURV - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(6,IPROC) = NDEPSRV - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(6,IPROC) = NDEPGRV - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES' .OR. ((HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO') .AND. LRAIN) .OR. & - ((HCLOUD(1:3) == 'ICE') .AND. LWARM)) IPROACTV(6,IPROC) = NREVARV - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES'.OR. HCLOUD == 'REVE' .OR. & - HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO' ) IPROACTV(6,IPROC) = NCONDRV - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(6,IPROC) = NCDEPIRV - IPROC=IPROC+1 -! - YWORK2(6,1) = 'INIF_' - YWORK2(6,2) = 'ENDF_' - YWORK2(6,3) = 'AVEF_' - IPROC=4 - YWORK2(6,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'NUD_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'DCONV_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'MAFL_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'NEGA_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'HENU_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'DEPS_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'DEPG_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'REVA_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'COND_' - IPROC=IPROC+1 - YWORK2(6,IPROC) = 'CDEPI_' -! - YEND_COMMENT(6) = 'BU_RRV' - NBUPROCNBR(6) = 3 -! - CBUACTION(6,1) = 'IG' - CBUACTION(6,2) = 'CC' - CBUACTION(6,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(6,JJ) = ADJUSTL( ADJUSTR( YWORK2(6,JJ) ) // & - ADJUSTL( YEND_COMMENT(6) ) ) - END DO -! -END IF -! -! Budget of RRC -IF (LBU_RRC) THEN - IPROC=4 - IPROACTV(7,IPROC) = NASSERC - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(7,IPROC) = NNESTRC - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(7,IPROC) = NADVRC - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(7,IPROC) = NADVXRC - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(7,IPROC) = NADVYRC - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(7,IPROC) = NADVZRC - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(7,IPROC) = NFRCRC - IPROC=IPROC+1 - IF ( ONUMDIFTH ) IPROACTV(7,IPROC) = NDIFRC - IPROC=IPROC+1 - IF ( OHORELAX_RC ) THEN - IPROACTV(7,IPROC) = NRELRC - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(7,IPROC) = 4 - ELSE - IPROACTV(7,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( HDCONV /= 'NONE' .OR. HSCONV == 'KAFR') IPROACTV(7,IPROC) = NDCONVRC - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(7,IPROC) = NVTURBRC - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(7,IPROC) = NHTURBRC - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(7,IPROC) = 4 - ELSE - IPROACTV(7,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( HCLOUD /= 'NONE' ) IPROACTV(7,IPROC) = NNEGARC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES' ) IPROACTV(7,IPROC ) = NACCRRC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES' ) IPROACTV(7,IPROC) = NAUTORC - IPROC=IPROC+1 - IF (HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO') IPROACTV(7,IPROC) = NHENURC - IPROC=IPROC+1 -! - IF (HCLOUD(1:3) == 'ICE') IPROACTV(7,IPROC) = NHONRC - IPROC=IPROC+1 - IF (((HCLOUD(1:3) == 'ICE' ) .AND. LWARM) .OR. ((HCLOUD == 'C2R2' .OR. & - HCLOUD == 'KHKO') .AND. LRAIN)) IPROACTV(7,IPROC) = NAUTORC - IPROC=IPROC+1 - !modif - IF (((HCLOUD(1:3) == 'ICE' ) .AND. LWARM) .OR. ((HCLOUD == 'C2R2' .OR. & - HCLOUD == 'KHKO') .AND. LRAIN)) IPROACTV(7,IPROC) = NACCRRC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(7,IPROC) = NRIMRC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(7,IPROC) = NWETGRC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(7,IPROC) = NDRYGRC - IPROC=IPROC+1 - IF (HCLOUD == 'ICE4') IPROACTV(7,IPROC) = NWETHRC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE' ) IPROACTV(7,IPROC) = NIMLTRC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(7,IPROC) = NBERFIRC - IPROC=IPROC+1 - IF (((HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO').AND. LSEDC) .OR. & - (HCLOUD(1:3) == 'ICE' .AND. LSEDIC)) IPROACTV(7,IPROC) = NSEDIRC - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(7,IPROC) = NCDEPIRC - IPROC=IPROC+1 - IF (HCLOUD == 'C2R2'.OR. HCLOUD == 'KHKO' .OR. & - HCLOUD(1:3) == 'KES'.OR. HCLOUD == 'REVE') IPROACTV(7,IPROC) = NCONDRC - IPROC=IPROC+1 -! - YWORK2(7,1) = 'INIF_' - YWORK2(7,2) = 'ENDF_' - YWORK2(7,3) = 'AVEF_' - IPROC=4 - YWORK2(7,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'DCONV_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'NEGA_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'ACCR_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'AUTO_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'HENU_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'HON_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'AUTO_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'ACCR_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'RIM_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'WETG_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'DRYG_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'WETH_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'IMLT_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'BERFI_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'SEDI_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'CDEPI_' - IPROC=IPROC+1 - YWORK2(7,IPROC) = 'COND_' -! - YEND_COMMENT(7) = 'BU_RRC' - NBUPROCNBR(7) = 3 -! - CBUACTION(7,1) = 'IG' - CBUACTION(7,2) = 'CC' - CBUACTION(7,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(7,JJ) = ADJUSTL( ADJUSTR( YWORK2(7,JJ) ) // & - ADJUSTL( YEND_COMMENT(7) ) ) - END DO -! -END IF -! -! Budget of RRR -IF (LBU_RRR) THEN - IPROC=4 - IPROACTV(8,IPROC) = NASSERR - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(8,IPROC) = NNESTRR - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(8,IPROC) = NADVRR - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(8,IPROC) = NADVXRR - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(8,IPROC) = NADVYRR - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(8,IPROC) = NADVZRR - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(8,IPROC) = NFRCRR - IPROC=IPROC+1 - IF ( ONUMDIFTH ) IPROACTV(8,IPROC) = NDIFRR - IPROC=IPROC+1 - IF ( OHORELAX_RR ) THEN - IPROACTV(8,IPROC) = NRELRR - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(8,IPROC) = 4 - ELSE - IPROACTV(8,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HCLOUD /= 'NONE' ) IPROACTV(8,IPROC) = NNEGARR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES' ) IPROACTV(8,IPROC) = NSEDIRR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES' ) IPROACTV(8,IPROC) = NACCRRR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES' ) IPROACTV(8,IPROC) = NAUTORR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'KES' ) IPROACTV(8,IPROC) = NREVARR - IPROC=IPROC+1 -! - IF (HCLOUD(1:3) == 'ICE') IPROACTV(8,IPROC) = NSFRRR - IPROC=IPROC+1 - IF ((HCLOUD(1:3) == 'ICE' ) .AND. LWARM) & - IPROACTV(8,IPROC) = NAUTORR - IPROC=IPROC+1 - IF ((HCLOUD(1:3) == 'ICE' ) .AND. LWARM) & - IPROACTV(8,IPROC) = NACCRRR - IPROC=IPROC+1 - IF ((HCLOUD(1:3) == 'ICE' ) .AND. LWARM) & - IPROACTV(8,IPROC) = NREVARR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(8,IPROC) = NACCRR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(8,IPROC) = NCFRZRR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(8,IPROC) = NWETGRR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(8,IPROC) = NDRYGRR - IPROC=IPROC+1 - IF (HCLOUD(1:3) == 'ICE') IPROACTV(8,IPROC) = NGMLTRR - IPROC=IPROC+1 - IF (HCLOUD == 'ICE4') IPROACTV(8,IPROC) = NWETHRR - IPROC=IPROC+1 - IF (HCLOUD == 'ICE4') IPROACTV(8,IPROC) = NHMLTRR - IPROC=IPROC+1 - IF ((HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO') .AND. LRAIN) IPROACTV(8,IPROC) = NAUTORR - IPROC=IPROC+1 - IF ((HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO') .AND. LRAIN) IPROACTV(8,IPROC) = NACCRRR - IPROC=IPROC+1 - IF ((HCLOUD == 'C2R2'.OR. HCLOUD == 'KHKO') .AND. LRAIN) IPROACTV(8,IPROC) = NREVARR - IPROC=IPROC+1 - IF (HCLOUD == 'C2R2' .OR. HCLOUD == 'KHKO' .OR. HCLOUD(1:3) == 'ICE') & - IPROACTV(8,IPROC) = NSEDIRR - IPROC=IPROC+1 -! - YWORK2(8,1) = 'INIF_' - YWORK2(8,2) = 'ENDF_' - YWORK2(8,3) = 'AVEF_' - IPROC=4 - YWORK2(8,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'NEGA_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'SEDI_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ACCR_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'AUTO_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'REVA_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'SFR_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'AUTO_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ACCR_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'REVA_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ACC_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'CFRZ_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'WETG_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'DRYG_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'GMLT_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'WETH_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'HMLT_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'AUTO_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'ACCR_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'REVA_' - IPROC=IPROC+1 - YWORK2(8,IPROC) = 'SEDI_' -! - YEND_COMMENT(8) = 'BU_RRR' - NBUPROCNBR(8) = 3 -! - CBUACTION(8,1) = 'IG' - CBUACTION(8,2) = 'CC' - CBUACTION(8,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(8,JJ) = ADJUSTL( ADJUSTR( YWORK2(8,JJ) ) // & - ADJUSTL( YEND_COMMENT(8) ) ) - END DO -! -END IF -! -! Budget of RRI -IF (LBU_RRI) THEN - IPROC=4 - IPROACTV(9,IPROC) = NASSERI - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(9,IPROC) = NNESTRI - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(9,IPROC) = NADVRI - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(9,IPROC) = NADVXRI - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(9,IPROC) = NADVYRI - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(9,IPROC) = NADVZRI - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(9,IPROC) = NFRCRI - IPROC=IPROC+1 - IF( ONUMDIFTH ) IPROACTV(9,IPROC) = NDIFRI - IPROC=IPROC+1 - IF ( OHORELAX_RI ) THEN - IPROACTV(9,IPROC) = NRELRI - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(9,IPROC) = 4 - ELSE - IPROACTV(9,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( HDCONV /= 'NONE' .OR. HSCONV == 'KAFR') IPROACTV(9,IPROC) = NDCONVRI - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(9,IPROC) = NVTURBRI - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(9,IPROC) = NHTURBRI - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(9,IPROC) = 4 - ELSE - IPROACTV(9,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( HCLOUD /= 'NONE' ) IPROACTV(9,IPROC) = NNEGARI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NHENURI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NHONRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NAGGSRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NAUTSRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NCFRZRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NWETGRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NDRYGRI - IPROC=IPROC+1 - IF( HCLOUD == 'ICE4') IPROACTV(9,IPROC) = NWETHRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NIMLTRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NBERFIRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NSEDIRI - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(9,IPROC) = NCDEPIRI - IPROC=IPROC+1 -! - YWORK2(9,1) = 'INIF_' - YWORK2(9,2) = 'ENDF_' - YWORK2(9,3) = 'AVEF_' - IPROC=4 - YWORK2(9,IPROC) = 'ASSE_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'NEST_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'ADV_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'ADVX_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'ADVY_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'ADVZ_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'FRC_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'DIF_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(9,IPROC) = 'DCONV_' - IPROC=IPROC+1 - YWORK2(9,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(9,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(9,IPROC) = 'NEGA_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'HENU_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'HON_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'AGGS_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'AUTS_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'CFRZ_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'WETG_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'DRYG_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'WETH_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'IMLT_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'BERFI_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'SEDI_' - IPROC= IPROC+1 - YWORK2(9,IPROC) = 'CDEPI_' -! - YEND_COMMENT(9) = 'BU_RRI' - NBUPROCNBR(9) = 3 -! - CBUACTION(9,1) = 'IG' - CBUACTION(9,2) = 'CC' - CBUACTION(9,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(9,JJ) = ADJUSTL( ADJUSTR( YWORK2(9,JJ) ) // & - ADJUSTL( YEND_COMMENT(9) ) ) - END DO -! -END IF -! -! Budget of RRS -IF (LBU_RRS) THEN - IPROC=4 - IPROACTV(10,IPROC) = NASSERS - IPROC= IPROC+1 - IF( NMODEL>1 ) IPROACTV(10,IPROC) = NNESTRS - IPROC= IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(10,IPROC) = NADVRS - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(10,IPROC) = NADVXRS - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(10,IPROC) = NADVYRS - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(10,IPROC) = NADVZRS - IPROC= IPROC+1 - IF( LFORCING ) IPROACTV(10,IPROC) = NFRCRS - IPROC= IPROC+1 - IF( ONUMDIFTH ) IPROACTV(10,IPROC) = NDIFRS - IPROC=IPROC+1 - IF ( OHORELAX_RS ) THEN - IPROACTV(10,IPROC) = NRELRS - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(10,IPROC) = 4 - ELSE - IPROACTV(10,IPROC) = 3 - END IF - END IF - IPROC= IPROC+1 - IF( HCLOUD /= 'NONE' ) IPROACTV(10,IPROC) = NNEGARS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NDEPSRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NAGGSRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NAUTSRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NRIMRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NACCRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NCMELRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NWETGRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NDRYGRS - IPROC=IPROC+1 - IF( HCLOUD == 'ICE4') IPROACTV(10,IPROC) = NWETHRS - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(10,IPROC) = NSEDIRS - IPROC=IPROC+1 -! - YWORK2(10,1) = 'INIF_' - YWORK2(10,2) = 'ENDF_' - YWORK2(10,3) = 'AVEF_' - IPROC= 4 - YWORK2(10,IPROC) = 'ASSE_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'NEST_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'ADV_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'ADVX_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'ADVY_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'ADVZ_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'FRC_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'DIF_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(10,IPROC) = 'NEGA_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'DEPS_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'AGGS_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'AUTS_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'RIM_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'ACC_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'CMEL_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'WETG_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'DRYG_' - IPROC= IPROC+1 - YWORK2(10,IPROC) = 'WETH_' - IPROC=IPROC+1 - YWORK2(10,IPROC) = 'SEDI_' -! - YEND_COMMENT(10) = 'BU_RRS' - NBUPROCNBR(10) = 3 -! - CBUACTION(10,1) = 'IG' - CBUACTION(10,2) = 'CC' - CBUACTION(10,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(10,JJ) = ADJUSTL( ADJUSTR( YWORK2(10,JJ) ) // & - ADJUSTL( YEND_COMMENT(10) ) ) - END DO -! -END IF -! -! Budget of RRG -IF (LBU_RRG) THEN - IPROC=4 - IPROACTV(11,IPROC) = NASSERG - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(11,IPROC) = NNESTRG - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(11,IPROC) = NADVRG - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(11,IPROC) = NADVXRG - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(11,IPROC) = NADVYRG - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(11,IPROC) = NADVZRG - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(11,IPROC) = NFRCRG - IPROC=IPROC+1 - IF( ONUMDIFTH ) IPROACTV(11,IPROC) = NDIFRG - IPROC=IPROC+1 - IF ( OHORELAX_RG ) THEN - IPROACTV(11,IPROC) = NRELRG - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(11,IPROC) = 4 - ELSE - IPROACTV(11,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( HCLOUD /= 'NONE' ) IPROACTV(11,IPROC) = NNEGARG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NSFRRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NDEPGRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NRIMRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NACCRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NCMELRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NCFRZRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NWETGRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NDRYGRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE') IPROACTV(11,IPROC) = NGMLTRG - IPROC=IPROC+1 - IF( HCLOUD == 'ICE4') IPROACTV(11,IPROC) = NWETHRG - IPROC=IPROC+1 - IF( HCLOUD(1:3) == 'ICE')IPROACTV(11,IPROC) = NSEDIRG - IPROC=IPROC+1 -! - YWORK2(11,1) = 'INIF_' - YWORK2(11,2) = 'ENDF_' - YWORK2(11,3) = 'AVEF_' - IPROC=4 - YWORK2(11,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'NEGA_' - IPROC=IPROC+1 - YWORK2(11,IPROC)= 'SFR_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'DEPG_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'RIM_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'ACC_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'CMEL_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'CFRZ_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'WETG_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'DRYG_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'GMLT_' - IPROC=IPROC+1 - YWORK2(11,IPROC) = 'WETH_' - IPROC=IPROC+1 - YWORK2(11,IPROC)= 'SEDI_' -! - YEND_COMMENT(11) = 'BU_RRG' - NBUPROCNBR(11) = 3 -! - CBUACTION(11,1) = 'IG' - CBUACTION(11,2) = 'CC' - CBUACTION(11,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(11,JJ) = ADJUSTL( ADJUSTR( YWORK2(11,JJ) ) // & - ADJUSTL( YEND_COMMENT(11) ) ) - END DO -! -END IF -! -! Budget of RRH -IF (LBU_RRH) THEN - IPROC=4 - IPROACTV(12,IPROC) = NASSERH - IPROC=IPROC+1 - IF( NMODEL>1 ) THEN - IPROACTV(12,IPROC) = NNESTRH - ELSE - IPROACTV(12,IPROC) = 3 - END IF - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(12,IPROC) = NADVRH - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(12,IPROC) = NADVXRH - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(12,IPROC) = NADVYRH - IPROC=IPROC+1 - IF ( HMET_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(12,IPROC) = NADVZRH - IPROC=IPROC+1 - IF( LFORCING ) THEN - IPROACTV(12,IPROC) = NFRCRH - ELSE - IPROACTV(12,IPROC) = 3 - END IF - IPROC=IPROC+1 - IF( ONUMDIFTH ) THEN - IPROACTV(12,IPROC) = NDIFRH - ELSE - IPROACTV(12,IPROC) = 3 - END IF - IPROC=IPROC+1 - IF ( OHORELAX_RH ) THEN - IPROACTV(12,IPROC) = NRELRH - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(12,IPROC) = 4 - ELSE - IPROACTV(12,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF( HCLOUD /= 'NONE' ) THEN - IPROACTV(12,IPROC) = NNEGARH - ELSE - IPROACTV(12,IPROC) = 3 - END IF - IPROC=IPROC+1 - IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NWETGRH - IPROC=IPROC+1 - IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NWETHRH - IPROC=IPROC+1 - IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NHMLTRH - IPROC=IPROC+1 - IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NSEDIRH -! - YWORK2(12,1) = 'INIF_' - YWORK2(12,2) = 'ENDF_' - YWORK2(12,3) = 'AVEF_' - IPROC=4 - YWORK2(12,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'NEGA_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'WETG_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'WETH_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'HMLT_' - IPROC=IPROC+1 - YWORK2(12,IPROC) = 'SEDI_' -! - YEND_COMMENT(12) = 'BU_RRH' - NBUPROCNBR(12) = 3 -! - CBUACTION(12,1) = 'IG' - CBUACTION(12,2) = 'CC' - CBUACTION(12,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(12,JJ) = ADJUSTL( ADJUSTR( YWORK2(12,JJ) ) // & - ADJUSTL( YEND_COMMENT(12) ) ) - END DO -! - -END IF -! -! Budget of RSV -IF (LBU_RSV) THEN - IBUPROCNBR_SV_MAX = 0 ! initialize the Max nunmber of processes for the SVs - DO JSV = 1,KSV - IPROC=4 - IPROACTV(12+JSV,IPROC) = NASSESV - IPROC=IPROC+1 - IF( NMODEL>1 ) IPROACTV(12+JSV,IPROC) = NNESTSV - IPROC=IPROC+1 - IF ( HSV_ADV_SCHEME(1:3) == 'PPM' ) & - IPROACTV(12+JSV,IPROC) = NADVSV - IPROC=IPROC+1 - IF ( HSV_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(12+JSV,IPROC) = NADVXSV - IPROC=IPROC+1 - IF ( HSV_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(12+JSV,IPROC) = NADVYSV - IPROC=IPROC+1 - IF ( HSV_ADV_SCHEME(1:3) /= 'PPM' ) & - IPROACTV(12+JSV,IPROC) = NADVZSV - IPROC=IPROC+1 - IF( LFORCING ) IPROACTV(12+JSV,IPROC) = NFRCSV - IPROC=IPROC+1 - IF ( ONUMDIFSV ) IPROACTV(12+JSV,IPROC) = NDIFSV - IPROC=IPROC+1 - IF ( OHORELAX_SV(JSV) ) THEN - IPROACTV(12+JSV,IPROC) = NRELSV - ELSE - IF(OVE_RELAX .OR. OHORELAX_UVWTH .OR. OHORELAX_RV .OR. & - OHORELAX_RC .OR. OHORELAX_RR .OR. OHORELAX_RI .OR. OHORELAX_RS .OR. & - OHORELAX_RG .OR. OHORELAX_RH .OR. OHORELAX_TKE .OR. ANY(OHORELAX_SV)) THEN - IPROACTV(12+JSV,IPROC) = 4 - ELSE - IPROACTV(12+JSV,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( (HDCONV /= 'NONE' .OR. HSCONV == 'KAFR') .AND. OCHTRANS ) & - IPROACTV(12+JSV,IPROC) = NDCONVSV - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' ) IPROACTV(12+JSV,IPROC) = NVTURBSV - IPROC=IPROC+1 - IF ( HTURB /= 'NONE' .AND. HTURBDIM == '3DIM' ) THEN - IPROACTV(12+JSV,IPROC) = NHTURBSV - ELSE - IF ( HTURB /= 'NONE' ) THEN - IPROACTV(12+JSV,IPROC) = 4 - ELSE - IPROACTV(12+JSV,IPROC) = 3 - END IF - END IF - IPROC=IPROC+1 - IF ( HSCONV == 'EDKF' ) IPROACTV(12+JSV,IPROC)= NMAFLSV - IPROC=IPROC+1 -! - YWORK2(12+JSV,1) = 'INIF_' - YWORK2(12+JSV,2) = 'ENDF_' - YWORK2(12+JSV,3) = 'AVEF_' - IPROC=4 - YWORK2(12+JSV,IPROC) = 'ASSE_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'NEST_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'ADV_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'ADVX_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'ADVY_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'ADVZ_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'FRC_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'DIF_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'REL_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'DCONV_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'VTURB_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'HTURB_' - IPROC=IPROC+1 - YWORK2(12+JSV,IPROC) = 'MAFL_' -! -! complete with the budget of other processes -! - ILAST_PROC_NBR = IPROC - CALL BUDGET_OTHERPROC_SV -! - YEND_COMMENT(12+JSV) = 'BU_RSV' - IBUPROCNBR_SV_MAX = MAX( IBUPROCNBR_SV_MAX, ILAST_PROC_NBR ) - NBUPROCNBR(12+JSV) = 3 -! - CBUACTION(12+JSV,1) = 'IG' - CBUACTION(12+JSV,2) = 'CC' - CBUACTION(12+JSV,3) = 'ES' -! - DO JJ=1,3 - CBUCOMMENT(12+JSV,JJ) = ADJUSTL( ADJUSTR( YWORK2(12+JSV,JJ) ) // & - ADJUSTL( YEND_COMMENT(12+JSV) ) ) - END DO - END DO -! -END IF - -!------------------------------------------------------------------------------- -!* 4. COMPUTE THE INCREMENT BETWEEN TWO ACTIVE SOURCES -! ------------------------------------------------ -! -NBUINC(:,:) = 1 -DO JI = 1, JPBUMAX - DO JJ = 4, JPBUPROMAX-1 - DO JK = JJ+1,JPBUPROMAX - IF ( IPROACTV(JI,JK) /= 3 ) EXIT - NBUINC(JI,JJ) = NBUINC(JI,JJ) +1 - END DO - END DO -END DO -! -!------------------------------------------------------------------------------- -!* 5. COMPUTE PROCESSES ACTIONS AND NAMES OF BUDGET OUTPUT ARRAYS -! ----------------------------------------------------------- -! -DO JI=1,JPBUMAX ! loop on the allowed budgets - ! names of recording files for: - CBURECORD(JI,1) = ADJUSTL( CBUCOMMENT(JI,1) ) ! initial guess - CBURECORD(JI,2) = ADJUSTL( CBUCOMMENT(JI,2) ) ! source cumul - CBURECORD(JI,3) = ADJUSTL( CBUCOMMENT(JI,3) ) ! end step -! - IF (IPROACTV(JI,4) >= 2) THEN - WRITE(UNIT=KLUOUT,FMT= '("Error in budget specification of ",A7,/," & - & The first source either is the first element of a group of sources or & - & is not considered")') YEND_COMMENT(JI) - WRITE(UNIT=KLUOUT,FMT= '("change this namelist element ")') - GERROR = .TRUE. - END IF -! - DO JJ=4,JPBUPROMAX ! loop on the allowed processes - IF (IPROACTV(JI,JJ) == 0) THEN - IF(IPROACTV(JI,JJ+NBUINC(JI,JJ)) == 0) THEN - CBUACTION(JI,JJ)='OF' - ELSE IF (IPROACTV(JI,JJ+NBUINC(JI,JJ)) == 1) THEN - CBUACTION(JI,JJ)='CC' - ELSE IF (IPROACTV(JI,JJ+NBUINC(JI,JJ)) == 2) THEN - WRITE(UNIT=KLUOUT,FMT= '("Error in budget specification of ",A15)') & - ADJUSTL( ADJUSTR(YWORK2(JI,JJ+NBUINC(JI,JJ)))//ADJUSTL(YEND_COMMENT(JI))) - WRITE(UNIT=KLUOUT,FMT= '("change this namelist ")') - GERROR = .TRUE. - END IF - ELSE IF (IPROACTV(JI,JJ) <= 2) THEN - DO JJJ = JJ+NBUINC(JI,JJ), JPBUPROMAX - IF(IPROACTV(JI,JJJ) /= 3 .AND. IPROACTV(JI,JJJ) /= 4) EXIT - END DO -! - IF (IPROACTV(JI,JJJ) == 1) THEN - NBUPROCNBR(JI) = NBUPROCNBR(JI)+1 - CBUACTION(JI,JJ) = 'DC' - CBUCOMMENT(JI,NBUPROCNBR(JI)) = ADJUSTL( & - ADJUSTR( CBUCOMMENT(JI,NBUPROCNBR(JI)) ) // & - ADJUSTL( ADJUSTR( YWORK2(JI,JJ) ) // & - ADJUSTL( YEND_COMMENT(JI) ) ) ) - ITEN=INT(NBUPROCNBR(JI)/10) - CBURECORD(JI,NBUPROCNBR(JI)) = 'S' // CHAR( ITEN + 48 ) & - // CHAR( 48+ MODULO( NBUPROCNBR(JI),10*MAX(1,ITEN) ) ) & - // '_' // ADJUSTL( YEND_COMMENT(JI) ) - ELSE IF (IPROACTV(JI,JJJ) == 0) THEN - NBUPROCNBR(JI) = NBUPROCNBR(JI)+1 - CBUACTION(JI,JJ) = 'DD' - CBUCOMMENT(JI,NBUPROCNBR(JI)) = ADJUSTL( & - ADJUSTR( CBUCOMMENT(JI,NBUPROCNBR(JI)) ) // & - ADJUSTL( ADJUSTR( YWORK2(JI,JJ) ) // & - ADJUSTL( YEND_COMMENT(JI) ) ) ) - ITEN=INT(NBUPROCNBR(JI)/10) - CBURECORD(JI,NBUPROCNBR(JI)) = 'S' // CHAR( ITEN + 48 ) & - // CHAR( 48+ MODULO( NBUPROCNBR(JI),10*MAX(1,ITEN) ) ) & - // '_' // ADJUSTL( YEND_COMMENT(JI) ) - ELSE IF (IPROACTV(JI,JJJ) == 2) THEN - CBUACTION(JI,JJ) = 'NO' - CBUCOMMENT(JI,NBUPROCNBR(JI)+1) = ADJUSTL( & - ADJUSTR( CBUCOMMENT(JI,NBUPROCNBR(JI)+1)) // & - ADJUSTL( YWORK2(JI,JJ) ) ) - END IF - ELSEIF (IPROACTV(JI,JJ) == 3) THEN - CBUACTION(JI,JJ) = 'RM' - ELSEIF (IPROACTV(JI,JJ) == 4) THEN - CBUACTION(JI,JJ) = 'OF' - ELSE - WRITE(UNIT=KLUOUT,FMT= '("Error in budget specification of ",A7)') & - YEND_COMMENT(JI) - WRITE(UNIT=KLUOUT,FMT= '("change this namelist ")') - GERROR = .TRUE. - END IF - END DO -END DO -! writes on output the explicit chain of sources for all the budgets -DO JI=1,JPBUMAX ! loop over the allowed budgets - YSTRING = ADJUSTL( YEND_COMMENT(JI) ) - ILEN = LEN_TRIM(YSTRING) - IF( ILEN /= 0 ) THEN - IF( JI <= 12 ) THEN - WRITE (UNIT=KLUOUT,FMT='(/,"budget ",A7," with ",I2," vectors")') & - YSTRING(1:ILEN),NBUPROCNBR(JI) - DO JJ=1,3 - YSTRING = CBUCOMMENT(JI,JJ) - ILEN = LEN_TRIM(YSTRING) - WRITE (UNIT=KLUOUT,FMT='(12X,A40)') YSTRING(1:ILEN) - END DO - DO JJ=4,NBUPROCNBR(JI) ! loop over the allowed processes - YSTRING = CBUCOMMENT(JI,JJ) - ILEN = LEN_TRIM(YSTRING) - WRITE (UNIT=KLUOUT,FMT='(20X,A40)') YSTRING(1:ILEN) - END DO - ELSE - WRITE (UNIT=KLUOUT, & - FMT='(/,"budget ",A7," (number ",I3,") with ",I2," vectors")') & - YSTRING(1:ILEN),JI-12,NBUPROCNBR(JI) - DO JJ=1,3 - YSTRING = CBUCOMMENT(JI,JJ) - ILEN = LEN_TRIM(YSTRING) - WRITE (UNIT=KLUOUT,FMT='(12X,A40)') YSTRING(1:ILEN) - END DO - DO JJ=4,NBUPROCNBR(JI) ! loop over the allowed processes - YSTRING = CBUCOMMENT(JI,JJ) - ILEN = LEN_TRIM(YSTRING) - WRITE (UNIT=KLUOUT,FMT='(20X,A40)') YSTRING(1:ILEN) - END DO - END IF - END IF -END DO -! -IF (CBUTYPE=='CART') THEN - WRITE(UNIT=KLUOUT, FMT= '(2/,"DESCRIPTION OF THE BUDGET BOX")' ) - WRITE(UNIT=KLUOUT, FMT= '("BUIL = ",I4.4)' ) NBUIL - WRITE(UNIT=KLUOUT, FMT= '("BUIH = ",I4.4)' ) NBUIH - WRITE(UNIT=KLUOUT, FMT= '("BUJL = ",I4.4)' ) NBUJL - WRITE(UNIT=KLUOUT, FMT= '("BUJH = ",I4.4)' ) NBUJH - WRITE(UNIT=KLUOUT, FMT= '("BUKL = ",I4.4)' ) NBUKL - WRITE(UNIT=KLUOUT, FMT= '("BUKH = ",I4.4)' ) NBUKH - WRITE(UNIT=KLUOUT, FMT= '("BUIMAX = ",I4.4)' ) NBUIMAX - WRITE(UNIT=KLUOUT, FMT= '("BUJMAX = ",I4.4)' ) NBUJMAX - WRITE(UNIT=KLUOUT, FMT= '("BUKMAX = ",I4.4)' ) NBUKMAX -END IF -IF (CBUTYPE=='MASK') THEN - WRITE(UNIT=KLUOUT, FMT= '(2/,"DESCRIPTION OF THE BUDGET MASK")' ) - WRITE(UNIT=KLUOUT, FMT= '("BUIL = ",I4.4)' ) NBUIL - WRITE(UNIT=KLUOUT, FMT= '("BUIH = ",I4.4)' ) NBUIH - WRITE(UNIT=KLUOUT, FMT= '("BUJL = ",I4.4)' ) NBUJL - WRITE(UNIT=KLUOUT, FMT= '("BUJH = ",I4.4)' ) NBUJH - WRITE(UNIT=KLUOUT, FMT= '("BUKL = ",I4.4)' ) NBUKL - WRITE(UNIT=KLUOUT, FMT= '("BUKH = ",I4.4)' ) NBUKH - WRITE(UNIT=KLUOUT, FMT= '("BUKMAX = ",I4.4)' ) NBUKMAX - WRITE(UNIT=KLUOUT, FMT= '("BUWRNB = ",I4.4)' ) NBUWRNB - WRITE(UNIT=KLUOUT, FMT= '("BUMASK = ",I4.4)' ) NBUMASK -END IF -IF (GERROR) THEN - !callabortstop - !CALL CLOSE_ll(HLUOUT,IOSTAT=IRESP) - CALL ABORT - STOP -ENDIF -!------------------------------------------------------------------------------- -!* 5. ALLOCATE MEMORY FOR BUDGET STORAGE ARRAYS -! ----------------------------------------- -IF (LBU_RU) THEN - ALLOCATE ( XBURU(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(1)) ) - XBURU(:,:,:,:)=0. - ALLOCATE ( XBURHODJU(IBUDIM1, IBUDIM2, IBUDIM3) ) - XBURHODJU(:,:,:)=0. -END IF -! -IF (LBU_RV) THEN - ALLOCATE ( XBURV(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(2)) ) - XBURV(:,:,:,:)=0. - ALLOCATE ( XBURHODJV(IBUDIM1, IBUDIM2, IBUDIM3) ) - XBURHODJV(:,:,:)=0. -END IF -! -IF (LBU_RW) THEN - ALLOCATE ( XBURW(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(3)) ) - XBURW(:,:,:,:)=0. - ALLOCATE ( XBURHODJW(IBUDIM1, IBUDIM2, IBUDIM3) ) - XBURHODJW(:,:,:)=0. -END IF -! -IF (LBU_RTH .OR. LBU_RTKE .OR. LBU_RRV .OR. LBU_RRC .OR. LBU_RRR .OR. & - LBU_RRI .OR. LBU_RRS .OR. LBU_RRG .OR. LBU_RRH .OR. LBU_RSV ) THEN - ALLOCATE ( XBURHODJ(IBUDIM1, IBUDIM2, IBUDIM3) ) - XBURHODJ(:,:,:)=0. -END IF -! -IF (LBU_RTH) THEN - ALLOCATE ( XBURTH(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(4)) ) - XBURTH(:,:,:,:)=0. -END IF -! -IF (LBU_RTKE) THEN - ALLOCATE ( XBURTKE(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(5)) ) - XBURTKE(:,:,:,:)=0. -END IF -! -IF (LBU_RRV) THEN - ALLOCATE ( XBURRV(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(6)) ) - XBURRV(:,:,:,:)=0. -END IF -! -IF (LBU_RRC) THEN - ALLOCATE ( XBURRC(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(7)) ) - XBURRC(:,:,:,:)=0. -END IF -! -IF (LBU_RRR) THEN - ALLOCATE ( XBURRR(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(8)) ) - XBURRR(:,:,:,:)=0. -END IF -! -IF (LBU_RRI) THEN - ALLOCATE ( XBURRI(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(9)) ) - XBURRI(:,:,:,:)=0. -END IF -! -IF (LBU_RRS) THEN - ALLOCATE ( XBURRS(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(10)) ) - XBURRS(:,:,:,:)=0. -END IF -! -IF (LBU_RRG) THEN - ALLOCATE ( XBURRG(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(11)) ) - XBURRG(:,:,:,:)=0. -END IF -! -IF (LBU_RRH) THEN - ALLOCATE ( XBURRH(IBUDIM1, IBUDIM2, IBUDIM3, NBUPROCNBR(12)) ) - XBURRH(:,:,:,:)=0. -END IF -! -IF (LBU_RSV) THEN - ALLOCATE ( XBURSV(IBUDIM1, IBUDIM2, IBUDIM3, IBUPROCNBR_SV_MAX, KSV) ) - XBURSV(:,:,:,:,:)=0. -END IF -! -IF (LHOOK) CALL DR_HOOK('INI_BUDGET',1,ZHOOK_HANDLE) -CONTAINS -! ############################## - SUBROUTINE BUDGET_OTHERPROC_SV -! ############################## -! -! -USE MODD_NSV, ONLY : NSV_USER, NSV_C2R2BEG, NSV_C2R2END, & - NSV_CHEMBEG, NSV_CHEMEND, & - NSV_ELECBEG, NSV_ELECEND -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('INI_BUDGET:BUDGET_OTHERPROC_SV',0,ZHOOK_HANDLE) - IF (JSV <= NSV_USER) THEN - ! NSV_USER Case - SELECT CASE(JSV) - CASE (1) - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'PROC1_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'PROC2_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - CASE (2) - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'PROC3_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'PROC4_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END SELECT - ! - ELSEIF (JSV >= NSV_C2R2BEG .AND. JSV <= NSV_C2R2END) THEN - ! C2R2 or KHKO Case - SELECT CASE(JSV-NSV_C2R2BEG+1) - CASE (1) ! Concentration of activated nuclei - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HENU_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'CEVA_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - CASE (2) ! Concentration of cloud droplets - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'HENU_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'SELF_' - 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 - IF (LSEDC) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'CEVA_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - CASE (3) ! Concentration of raindrops - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'AUTO_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - IF (HCLOUD /= 'KHKO') THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'SCBU_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END IF - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'CEVA_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'BRKU_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = 1 - END SELECT - ! - ELSEIF (JSV >= NSV_ELECBEG .AND. JSV <= NSV_ELECEND) THEN - SELECT CASE(JSV-NSV_ELECBEG+1) - CASE(1) ! volumetric charge of water vapor - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DEPS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDEPSQV - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DEPG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDEPGQV - IF (LWARM) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'REVA_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NREVAQV - END IF - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DEPI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDEPIQV - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NEUT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NNEUTQV - CASE(2) ! volumetric charge of cloud droplets - IF (LWARM) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'AUTO_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NAUTOQC - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'ACCR_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NACCRQC - END IF - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'RIM_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NRIMQC - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'WETG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NWETGQC - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DRYG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDRYGQC - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'IMLT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NIMLTQC - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'BERFI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NBERFIQC - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DEPI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDEPIQC - IF (LINDUCTIVE) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'IND_' - END IF - IPROACTV(12+JSV,ILAST_PROC_NBR) = NINDQC - IF (LSEDIC) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NSEDIQC - END IF - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NEUT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NNEUTQC - CASE(3) ! volumetric charge of rain drops - IF (LWARM) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'AUTO_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NAUTOQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'ACCR_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NACCRQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'REVA_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NREVAQR - END IF - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'ACC_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NACCQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'CFRZ_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NCFRZQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'WETG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NWETGQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DRYG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDRYGQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'GMLT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NGMLTQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NSEDIQR - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NEUT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NNEUTQR - CASE(4) ! volumetric charge of ice crystals - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'AGGS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NAGGSQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'AUTS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NAUTSQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'CFRZ_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NCFRZQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'WETG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NWETGQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DRYG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDRYGQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'IMLT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NIMLTQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'BERFI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NBERFIQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DEPI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDEPIQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NIIS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NNIISQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NSEDIQI - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NEUT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NNEUTQI - CASE(5) ! volumetric charge of snow - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DEPS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDEPSQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'AGGS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NAGGSQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'AUTS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NAUTSQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'RIM_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NRIMQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'ACC_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NACCQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'CMEL_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NCMELQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'WETG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NWETGQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DRYG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDRYGQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NIIS_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NNIISQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NSEDIQS - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NEUT_' - CASE(6) ! volumetric charge of graupel - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DEPG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDEPGQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'RIM_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NRIMQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'ACC_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NACCQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'CMEL_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NCMELQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'CFRZ_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NCFRZQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'WETG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NWETGQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'DRYG_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NDRYGQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'GMLT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NGMLTQG - IF (LINDUCTIVE) THEN - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'IND_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NINDQG - END IF - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'SEDI_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NSEDIQG - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR) = 'NEUT_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NNEUTQG - CASE(7) ! volumetric charge of hail -! add budget for hail volumetric charge - END SELECT -! - ELSEIF (JSV >= NSV_CHEMBEG .AND. JSV <= NSV_CHEMEND) THEN - ! Chemical Case - ILAST_PROC_NBR = ILAST_PROC_NBR + 1 - YWORK2(12+JSV,ILAST_PROC_NBR)= 'CHEM_' - IPROACTV(12+JSV,ILAST_PROC_NBR) = NCHEMSV - - END IF - ! - IF (LHOOK) CALL DR_HOOK('INI_BUDGET:BUDGET_OTHERPROC_SV',1,ZHOOK_HANDLE) - END SUBROUTINE BUDGET_OTHERPROC_SV -! -!------------------------------------------------------------------------------- -! -END SUBROUTINE INI_BUDGET diff --git a/src/arome/aux/modd_budget.F90 b/src/arome/aux/modd_budget.F90 index fb103b66e4f58554200a2e0ee7d0b8426b5b1073..505b30dc0cce0c17432e95df0e2341cff171c3dc 100644 --- a/src/arome/aux/modd_budget.F90 +++ b/src/arome/aux/modd_budget.F90 @@ -33,11 +33,11 @@ !! V. Masson 27/11/02 add 2way nesting effect !! P. Jabouille 07/07/04 add budget terms for microphysics !! C. Barthe 19/11/09 add budget terms for electricity +!! S. Riette July 2022 simplification for PHYEX !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS ! ------------ -USE MODD_PARAMETERS, ONLY :JPBUMAX, JPBUPROMAX USE DDH_MIX, ONLY : TYP_DDH USE YOMLDDH, ONLY : TLDDH USE YOMMDDH, ONLY : TMDDH @@ -90,592 +90,7 @@ TYPE(TBUDGETCONF_t), TARGET :: TBUCONF ! General variables LOGICAL, POINTER :: LBU_ENABLE=>NULL() ! -INTEGER, DIMENSION(JPBUMAX,JPBUPROMAX) & ! number of processes to be - :: NBUINC=0 ! avoided for every budget - ! between one active - ! source to the next one -INTEGER, DIMENSION(JPBUMAX) & ! counter for all the processes - :: NBUCTR_ACTV=0 ! activated or not -! -CHARACTER (LEN=4) :: CBUTYPE ! type of desired budget 'CART' - ! (cartesian box) or 'MASK' (budget - ! zone defined by a mask) or 'NONE' - ! (no budget) -INTEGER :: NBUMOD=0 ! model in which budget is - ! calculated -INTEGER, DIMENSION(:), & ! number of processes for each - ALLOCATABLE :: NBUPROCNBR ! budget -! -INTEGER, DIMENSION(:), & ! process counter linked to each - ALLOCATABLE :: NBUPROCCTR ! budget -! -CHARACTER(LEN=2), DIMENSION(:,:), & ! resulting string character of the - ALLOCATABLE :: CBUACTION ! transcription of the budget actions - ! (integer) read in namelists or - ! set by default -CHARACTER (LEN=16), DIMENSION(:,:),& ! names of records on the FM file - ALLOCATABLE :: CBURECORD ! for the budgets -! -CHARACTER (LEN=99), DIMENSION(:,:),& ! name of a process for a budget. It - ALLOCATABLE :: CBUCOMMENT ! will appear in the comment part of - ! the previous record -! -LOGICAL :: LBU_BEG=.FALSE. ! switch for budget beginning -! -REAL :: XBULEN=0. ! length in seconds of the budget - ! temporal average -! -INTEGER :: NBUSTEP=0 ! number of model timesteps required - ! for the budget time average -REAL :: XBUWRI=0. ! period in seconds of - ! budget writing on FM-files -INTEGER :: NBUWRNB=0 ! number of budget periods when storage - ! arrays are written on FM-files -INTEGER :: NBUTSHIFT=0 ! temporal shift for budgets writing -! -INTEGER :: NBUKH=0 ! lowest and highest K indice values -INTEGER :: NBUKL=0 ! lowest and highest K indice values - ! of the budget box -LOGICAL :: LBU_KCP=.FALSE. ! switch for compression in K - ! direction -! -! Variables used by the cartesian box case ('CART') only -! -INTEGER :: NBUIL=0 ! lowest and highest I indice values -INTEGER :: NBUIH=0 ! lowest and highest I indice values - ! of the cartesian box -INTEGER :: NBUJL=0 ! lowest and highest J indice values -INTEGER :: NBUJH=0 ! lowest and highest J indice values - ! of the cartesian box -LOGICAL :: LBU_ICP=.FALSE. ! switch for compression in I - ! direction -LOGICAL :: LBU_JCP=.FALSE. ! switch for comppression in J - ! direction -! -! Variables used by the mask case ('MASK') only -! -INTEGER :: NBUMASK=0 ! number of MASK zones for which - ! budgets are performed -LOGICAL, DIMENSION(:,:,:), & ! define the zone where the MASK - ALLOCATABLE :: LBU_MASK ! is True -! -REAL, DIMENSION(:,:,:,:), & ! surface for each mask at each - ALLOCATABLE :: XBUSURF ! budget step -! -INTEGER :: NBUTIME=0 ! number of budget time periods -! -! Variables for budget storage -! -! General variables -INTEGER :: NBUSIL=0 ! lowest and highest I indices of the intersection -INTEGER :: NBUSIH=0 ! lowest and highest I indices of the intersection - ! of the cartesian box with the sub-domain -INTEGER :: NBUSJL=0 ! lowest and highest J indices of the intersection -INTEGER :: NBUSJH=0 ! lowest and highest J indices of the intersection - ! of the global cartesian box -INTEGER :: NBUIMAX_ll=0 ! second dimension of the budget -INTEGER :: NBUJMAX_ll=0 ! second dimension of the budget - ! array in the global domain (in CART case) -! -INTEGER :: NBUIMAX=0 ! first dimension of the budget - ! tabular -INTEGER :: NBUJMAX=0 ! second dimension of the budget - ! tabular -INTEGER :: NBUKMAX=0 ! dimension along K of the budget - ! tabular -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RU, RV and - ALLOCATABLE :: XBURU, XBURV, XBURW ! RW (wind components) respectively -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RTH (potential - ALLOCATABLE :: XBURTH, XBURTKE ! temperature) and RTKE (kinetic - ! energy) -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RRV (water vapor) - ALLOCATABLE :: XBURRV, XBURRC ! and RRC (cloud water) -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RRR (rain water) - ALLOCATABLE :: XBURRR, XBURRI ! and RRI (ice) -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RRS (snow) - ALLOCATABLE :: XBURRS, XBURRG ! and RRG (graupel) -REAL, DIMENSION(:,:,:,:), & ! budget array for RRH (hail) - ALLOCATABLE :: XBURRH ! -REAL, DIMENSION(:,:,:,:,:), & - ALLOCATABLE :: XBURSV ! Budget of the SVx -REAL, DIMENSION(:,:,:), & ! budget arrays for RHODJ at - ALLOCATABLE :: XBURHODJ , & ! scalar localization - XBURHODJU, & ! U localization - XBURHODJV, & ! V localization - XBURHODJW ! and W localization -! -! Allowed processes for the budget of the x scalar variables -! (transport part only) -! -! For each budget, the switches values (from 0 to JPBUPROMAX) for budgets -! activation may be set by the user in a namelist. Their default value is 0. -! In the following declaration, the corresponding process names are given -! beside as comments. -! -! Allowed processes for the budget of RU (wind component along x) -! -! Courant namelist: NAM_BURU -! -LOGICAL :: LBU_RU=.FALSE. ! True when the budget of RU is performed -! -INTEGER :: NASSEU=0 ! time filter -INTEGER :: NNESTU=0 ! Efffect of 2way nesting on U -INTEGER :: NADVXU=0 ! advection along X -INTEGER :: NADVYU=0 ! advection along Y -INTEGER :: NADVZU=0 ! advection along Z -INTEGER :: NFRCU=0 ! forcing -INTEGER :: NNUDU=0 ! nudging -INTEGER :: NCURVU=0 ! curvature -INTEGER :: NCORU=0 ! Coriolis terms -INTEGER :: NDIFU=0 ! numerical diffusion -INTEGER :: NRELU=0 ! relaxation -INTEGER :: NHTURBU=0 ! horizontal TURBulence -INTEGER :: NVTURBU=0 ! vertical turbulence -INTEGER :: NDRAGU=0 ! vegetation drag -INTEGER :: NMAFLU=0 ! mass flux -INTEGER :: NPRESU=0 ! pressure term -! -! Allowed processes for the budget of RV (wind component along y) -! -! Courant namelist: NAM_BURV -! -LOGICAL :: LBU_RV=.FALSE. ! True when the budget of RV is performed -! -INTEGER :: NASSEV=0 ! time filter -INTEGER :: NNESTV=0 ! Efffect of 2way nesting on V -INTEGER :: NADVXV=0 ! advection along X -INTEGER :: NADVYV=0 ! advection along Y -INTEGER :: NADVZV=0 ! advection along Z -INTEGER :: NFRCV=0 ! forcing -INTEGER :: NNUDV=0 ! nudging -INTEGER :: NCURVV=0 ! curvature -INTEGER :: NCORV=0 ! Coriolis terms -INTEGER :: NDIFV=0 ! numerical diffusion -INTEGER :: NRELV=0 ! relaxation -INTEGER :: NHTURBV=0 ! horizontal turbulence -INTEGER :: NVTURBV=0 ! vertical turbulence -INTEGER :: NDRAGV=0 ! vegetation drag -INTEGER :: NMAFLV=0 ! mass flux -INTEGER :: NPRESV=0 ! pressure term -! -! Allowed processes for the budget of RW (wind vertical component) -! -! Courant namelist: NAM_BURW -! -LOGICAL :: LBU_RW=.FALSE. ! True when the budget of RW is performed -! -INTEGER :: NASSEW=0 ! time filter -INTEGER :: NNESTW=0 ! Efffect of 2way nesting on W -INTEGER :: NADVXW=0 ! advection along X -INTEGER :: NADVYW=0 ! advection along Y -INTEGER :: NADVZW=0 ! advection along Z -INTEGER :: NFRCW=0 ! forcing -INTEGER :: NNUDW=0 ! nudging -INTEGER :: NCURVW=0 ! curvature -INTEGER :: NCORW=0 ! Coriolis terms -INTEGER :: NGRAVW=0 ! gravity term -INTEGER :: NDIFW=0 ! numerical diffusion -INTEGER :: NRELW=0 ! relaxation -INTEGER :: NHTURBW=0 ! horizontal turbulence -INTEGER :: NVTURBW=0 ! vertical turbulence -INTEGER :: NPRESW=0 ! pressure term -! -! Allowed processes for the budget of RTH (potential temperature) -! -! Courant namelist: NAM_BURTH -! -LOGICAL :: LBU_RTH=.FALSE. ! True when the budget of RTH is performed -! -INTEGER :: NASSETH=0 ! time filter -INTEGER :: NNESTTH=0 ! Efffect of 2way nesting on Th -INTEGER :: NADVTH=0 ! Total advection for PPM -INTEGER :: NADVXTH=0 ! advection along X (all except PPM) -INTEGER :: NADVYTH=0 ! advection along Y (all except PPM) -INTEGER :: NADVZTH=0 ! advection along Z (all except PPM) -INTEGER :: NFRCTH=0 ! forcing -INTEGER :: N2DADVTH=0 ! 2d advecting forcing -INTEGER :: N2DRELTH=0 ! 2d relaxation forcing -INTEGER :: NNUDTH=0 ! nudging -INTEGER :: NPREFTH=0 ! theta source term due to the reference pressure - ! (Dyn. Sources) only present if KRR>0 -INTEGER :: NDIFTH=0 ! numerical diffusion -INTEGER :: NRELTH=0 ! relaxation -INTEGER :: NRADTH=0 ! RADiation -INTEGER :: NDCONVTH=0 ! KAFR CONVection -INTEGER :: NMAFLTH=0 ! Mass flux -INTEGER :: NHTURBTH=0 ! horizontal turbulence -INTEGER :: NVTURBTH=0 ! vertical turbulence -INTEGER :: NDISSHTH=0 ! dissipative heating -INTEGER :: NNEGATH=0 ! negative correction induced by hydrometeors -INTEGER :: NREVATH=0 ! rain evaporation -INTEGER :: NCONDTH=0 ! evaporation/condensation -INTEGER :: NHENUTH=0 ! HEterogenous NUcleation ICE3 -INTEGER :: NHONTH=0 ! HOmogeneous Nucleation ICE3 -INTEGER :: NSFRTH=0 ! Spontaneous FReezing ICE3 -INTEGER :: NDEPSTH=0 ! DEPosition on Snow ICE3 -INTEGER :: NDEPGTH=0 ! DEPosition on Graupel ICE3 -INTEGER :: NRIMTH=0 ! RIMing of cloudwater ICE3 -INTEGER :: NACCTH=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCFRZTH=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGTH=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGTH=0 ! DRY Growth of graupel ICE3 -INTEGER :: NGMLTTH=0 ! Graupel MeLTing ICE3 -INTEGER :: NIMLTTH=0 ! Ice MeLTing ICE3 -INTEGER :: NBERFITH=0 ! BERgeron-FIndeisen gth. ICE3 -INTEGER :: NCDEPITH=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NWETHTH=0 ! wet growth of hail ICE4 -INTEGER :: NHMLTTH=0 ! melting of hail ICE4 -INTEGER :: NHINDTH=0 ! Heterogeneous Nucleation by Deposition C3R5 -INTEGER :: NHINCTH=0 ! Heterogeneous Nucleation by Contact C3R5 -INTEGER :: NHONHTH=0 ! Haze Homogeneous Nucleation C3R5 -INTEGER :: NHONCTH=0 ! droplet homogeneous nucleation C3R5 -INTEGER :: NHONRTH=0 ! drop homogeneous nucleation C3R5 -INTEGER :: NCEDSTH=0 ! adjustment C3R5 -! -! Allowed processes for the budget of RTKE (kinetic energy) -! -! Courant namelist: NAM_BURTKE -! -LOGICAL :: LBU_RTKE=.FALSE. ! True when the budget of RTKE is performed -! -INTEGER :: NASSETKE=0 ! time filter -INTEGER :: NADVTKE=0 ! Total advection for PPM -INTEGER :: NADVXTKE=0 ! advection along X (all except PPM) -INTEGER :: NADVYTKE=0 ! advection along Y (all except PPM) -INTEGER :: NADVZTKE=0 ! advection along Z (all except PPM) -INTEGER :: NFRCTKE=0 ! forcing -INTEGER :: NDIFTKE=0 ! numerical diffusion -INTEGER :: NRELTKE=0 ! relaxation -INTEGER :: NDPTKE=0 ! dynamic production of TKE -INTEGER :: NTPTKE=0 ! thermal production of TKE -INTEGER :: NDRAGTKE=0 ! vegetation drag -INTEGER :: NDISSTKE=0 ! dissipation of TKE -INTEGER :: NTRTKE=0 ! turbulent transport of TKE -! -! -! Allowed processes for the budget of moist variable RRV (water vapor) -! -! Courant namelist: NAM_BURRV -! -LOGICAL :: LBU_RRV=.FALSE. ! true when the budget of RRV is performed -! -INTEGER :: NASSERV=0 ! time filter -INTEGER :: NNESTRV=0 ! Effect of 2way nesting on Rv -INTEGER :: NADVRV=0 ! Total advection for PPM -INTEGER :: NADVXRV=0 ! advection along X (all except PPM) -INTEGER :: NADVYRV=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRV=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRV=0 ! forcing -INTEGER :: N2DADVRV=0 ! 2d advecting forcing -INTEGER :: N2DRELRV=0 ! 2d relaxation forcing -INTEGER :: NNUDRV=0 ! nudging -INTEGER :: NDIFRV=0 ! numerical diffusion -INTEGER :: NRELRV=0 ! relaxation -INTEGER :: NDCONVRV=0 ! KAFR CONVection -INTEGER :: NMAFLRV=0 ! Mass flux -INTEGER :: NHTURBRV=0 ! horizontal turbulence -INTEGER :: NVTURBRV=0 ! vertical turbulence -INTEGER :: NNEGARV=0 ! negative correction -INTEGER :: NREVARV=0 ! rain evaporation -INTEGER :: NCONDRV=0 ! evaporation/condensation -INTEGER :: NHENURV=0 ! HEterogenous NUcleation ICE3 -INTEGER :: NDEPSRV=0 ! DEPosition on Snow ICE3 -INTEGER :: NDEPGRV=0 ! DEPosition on Graupel ICE3 -INTEGER :: NCDEPIRV=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NHINDRV=0 ! Heterogeneous Nucleation by Deposition C3R5 -INTEGER :: NHONHRV=0 ! Haze Homogeneous Nucleation C3R5 -INTEGER :: NCEDSRV=0 ! adjustement C3R5 -! -! Allowed processes for the budget of moist variable RRC (cloud water) -! -! Courant namelist: NAM_BURRC -! -LOGICAL :: LBU_RRC=.FALSE. ! True when the budget of RRC is performed -! -INTEGER :: NASSERC=0 ! time filter -INTEGER :: NNESTRC=0 ! Efffect of 2way nesting on Rc -INTEGER :: NADVRC=0 ! Total advection for PPM -INTEGER :: NADVXRC=0 ! advection along X (all except PPM) -INTEGER :: NADVYRC=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRC=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRC=0 ! forcing -INTEGER :: NDIFRC=0 ! numerical diffusion -INTEGER :: NRELRC=0 ! relaxation -INTEGER :: NDCONVRC=0 ! Deep CONVection -INTEGER :: NHTURBRC=0 ! horizontal turbulence -INTEGER :: NVTURBRC=0 ! vertical turbulence -INTEGER :: NNEGARC=0 ! negative correction -INTEGER :: NACCRRC=0 ! accretion -INTEGER :: NAUTORC=0 ! autoconversion -INTEGER :: NCONDRC=0 ! evaporation/condensation -INTEGER :: NHONRC=0 ! HOmogeneous Nucleation ICE3 -INTEGER :: NRIMRC=0 ! RIMing of cloudwater ICE3 -INTEGER :: NWETGRC=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRC=0 ! DRY Growth of graupel ICE3 -INTEGER :: NIMLTRC=0 ! Ice MeLTing ICE3 -INTEGER :: NBERFIRC=0 ! BERgeron-FIndeisen gth. ICE3 -INTEGER :: NCDEPIRC=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NHENURC=0 ! CCN Activation C2R2 -INTEGER :: NSEDIRC=0 ! sedimentation C2R2 -INTEGER :: NWETHRC=0 ! wet growth of hail -INTEGER :: NHINCRC=0 ! Heterogeneous Nucleation by Contact C3R5 -INTEGER :: NHONCRC=0 ! droplet homogeneous nucleation C3R5 -INTEGER :: NCEDSRC=0 ! adjustment C3R5 -INTEGER :: NREVARC=0 ! evaporation of rain drops -INTEGER :: NDEPORC=0 ! ground deposition -INTEGER :: NDEPOTRRC=0 ! deposition on tree -! -! Allowed processes for the budget of moist variable RRR (rain water) -! -! Courant namelist: NAM_BURRR -! -LOGICAL :: LBU_RRR=.FALSE. ! True when the budget of RRR is performed -! -INTEGER :: NASSERR=0 ! time filter -INTEGER :: NNESTRR=0 ! Efffect of 2way nesting on Rr -INTEGER :: NADVRR=0 ! Total advection for PPM -INTEGER :: NADVXRR=0 ! advection along X (all except PPM) -INTEGER :: NADVYRR=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRR=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRR=0 ! forcing -INTEGER :: NDIFRR=0 ! numerical diffusion -INTEGER :: NRELRR=0 ! relaxation -INTEGER :: NNEGARR=0 ! negative correction -INTEGER :: NACCRRR=0 ! accretion -INTEGER :: NAUTORR=0 ! autoconversion -INTEGER :: NREVARR=0 ! rain evaporation -INTEGER :: NSEDIRR=0 ! sedimentation -INTEGER :: NSFRRR=0 ! Spontaneous FReezing ICE3 -INTEGER :: NACCRR=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCFRZRR=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGRR=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRR=0 ! DRY Growth of graupel ICE3 -INTEGER :: NGMLTRR=0 ! Graupel MeLTing ICE3 -INTEGER :: NWETHRR=0 ! wet growth of hail ICE4 -INTEGER :: NHMLTRR=0 ! melting of hail ICE4 -INTEGER :: NHONRRR=0 ! drop homogeneous nucleation C3R5 -! -! Allowed processes for the budget of moist variable RRI (ice) -! -! Courant namelist: NAM_BURRI -! -LOGICAL :: LBU_RRI=.FALSE. ! True when the budget of RRI is performed -! -INTEGER :: NASSERI=0 ! time filter -INTEGER :: NNESTRI=0 ! Efffect of 2way nesting on Ri -INTEGER :: NADVRI=0 ! Total advection for PPM -INTEGER :: NADVXRI=0 ! advection along X (all except PPM) -INTEGER :: NADVYRI=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRI=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRI=0 ! forcing -INTEGER :: NDIFRI=0 ! numerical diffusion -INTEGER :: NRELRI=0 ! relaxation -INTEGER :: NDCONVRI=0 ! Deep CONVection -INTEGER :: NHTURBRI=0 ! horizontal turbulence -INTEGER :: NVTURBRI=0 ! vertical turbulence -INTEGER :: NNEGARI=0 ! negative correction -INTEGER :: NSEDIRI=0 ! SEDImentation ICE3 -INTEGER :: NHENURI=0 ! HEterogenous NUcleation ICE3 -INTEGER :: NHONRI=0 ! HOmogeneous Nucleation ICE3 -INTEGER :: NAGGSRI=0 ! AGGregation of snow ICE3 -INTEGER :: NAUTSRI=0 ! AUToconversion of ice ICE3 -INTEGER :: NCFRZRI=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGRI=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRI=0 ! DRY Growth of graupel ICE3 -INTEGER :: NIMLTRI=0 ! Ice MeLTing ICE3 -INTEGER :: NBERFIRI=0 ! BERgeron-FIndeisen gth. ICE3 -INTEGER :: NCDEPIRI=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NWETHRI=0 ! wet growth of hail ICE4 -INTEGER :: NHINDRI=0 ! heterogeneous nucleation by deposition C3R5 -INTEGER :: NHINCRI=0 ! heterogeneous nucleation by contact C3R5 -INTEGER :: NHONHRI=0 ! haze homogeneous nucleation source C3R5 -INTEGER :: NHONCRI=0 ! droplet homogeneous nucleation C3R5 -INTEGER :: NCNVIRI=0 ! Conversion of snow to r_i C3R5 -INTEGER :: NCNVSRI=0 ! Conversion of pristine ice to r_s C3R5 -INTEGER :: NHMSRI=0 ! Hallett-Mossop ice multiplication process due to snow riming C3R5 -INTEGER :: NHMGRI=0 ! Hallett-Mossop ice multiplication process due to graupel riming C3R5 -INTEGER :: NCEDSRI=0 ! adjustement C3R5 -! -! Allowed processes for the budget of moist variable RRS (snow) -! -! Courant namelist: NAM_BURRS -! -LOGICAL :: LBU_RRS=.FALSE. ! True when the budget of RRS is performed -! -INTEGER :: NASSERS=0 ! time filter -INTEGER :: NNESTRS=0 ! Efffect of 2way nesting on Rs -INTEGER :: NADVRS=0 ! Total advection for PPM -INTEGER :: NADVXRS=0 ! advection along X (all except PPM) -INTEGER :: NADVYRS=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRS=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRS=0 ! forcing -INTEGER :: NDIFRS=0 ! numerical diffusion -INTEGER :: NRELRS=0 ! relaxation -INTEGER :: NNEGARS=0 ! negative correction -INTEGER :: NSEDIRS=0 ! SEDImentation ICE3 -INTEGER :: NDEPSRS=0 ! DEPosition on Snow ICE3 -INTEGER :: NAGGSRS=0 ! AGGregation of snow ICE3 -INTEGER :: NAUTSRS=0 ! AUToconversion of ice ICE3 -INTEGER :: NRIMRS=0 ! RIMing of cloudwater ICE3 -INTEGER :: NACCRS=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCMELRS=0 ! Conversion MeLTing ICE3 -INTEGER :: NWETGRS=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRS=0 ! DRY Growth of graupel ICE3 -INTEGER :: NWETHRS=0 ! wet growth of hail ICE4 -INTEGER :: NCNVIRS=0 ! Conversion of snow to r_i C3R5 -INTEGER :: NCNVSRS=0 ! Conversion of pristine ice to r_s C3R5 -INTEGER :: NHMSRS=0 ! Hallett-Mossop ice multiplication process due to snow riming C3R5 -! -! Allowed processes for the budget of moist variable RRG (graupel) -! -! Courant namelist: NAM_BURRG -! -LOGICAL :: LBU_RRG=.FALSE. ! True when the budget of RRG is performed -! -INTEGER :: NASSERG=0 ! time filter -INTEGER :: NNESTRG=0 ! Efffect of 2way nesting on Rg -INTEGER :: NADVRG=0 ! Total advection for PPM -INTEGER :: NADVXRG=0 ! advection along X (all except PPM) -INTEGER :: NADVYRG=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRG=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRG=0 ! forcing -INTEGER :: NDIFRG=0 ! numerical diffusion -INTEGER :: NRELRG=0 ! relaxation -INTEGER :: NNEGARG=0 ! negative correction -INTEGER :: NSEDIRG=0 ! SEDImentation ICE3 -INTEGER :: NSFRRG=0 ! Spontaneous FReezing ICE3 -INTEGER :: NDEPGRG=0 ! DEPosition on Snow ICE3 -INTEGER :: NRIMRG=0 ! RIMing of cloudwater ICE3 -INTEGER :: NACCRG=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCMELRG=0 ! Conversion MeLTing ICE3 -INTEGER :: NCFRZRG=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGRG=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRG=0 ! DRY Growth of graupel ICE3 -INTEGER :: NGMLTRG=0 ! Graupel MeLTing ICE3 -INTEGER :: NWETHRG=0 ! wet growth of hail ICE4 -INTEGER :: NHONRRG=0 ! drop homogeneous nucleation C3R5 -INTEGER :: NHMGRG=0 ! Hallett-Mossop ice multiplication process due to graupel riming -INTEGER :: NCOHGRG=0 ! conversion of hail to graupel -! -! Allowed processes for the budget of moist variable RRH (hail) -! -! Courant namelist: NAM_BURRH -! -LOGICAL :: LBU_RRH=.FALSE. ! True when the budget of RRH is performed -! -INTEGER :: NASSERH=0 ! time filter -INTEGER :: NNESTRH=0 ! Efffect of 2way nesting on Rh -INTEGER :: NADVRH=0 ! Total advection for PPM -INTEGER :: NADVXRH=0 ! advection along X (all except PPM) -INTEGER :: NADVYRH=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRH=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRH=0 ! forcing -INTEGER :: NDIFRH=0 ! numerical diffusion -INTEGER :: NRELRH=0 ! relaxation -INTEGER :: NNEGARH=0 ! negative correction -INTEGER :: NSEDIRH=0 ! sedimentation -INTEGER :: NWETGRH=0 ! wet growth of graupel -INTEGER :: NWETHRH=0 ! wet growth of hail -INTEGER :: NHMLTRH=0 ! melting -INTEGER :: NCOHGRH=0 ! conversion of hail to graupel -! -! Courant namelist: NAM_BURSV -! -LOGICAL :: LBU_RSV=.FALSE. ! True when the budget of RSVx is performed -! -INTEGER :: NASSESV=0 ! Asselin-Robert time filter -INTEGER :: NNESTSV=0 ! Efffect of 2way nesting on Sv -INTEGER :: NADVSV=0 ! Total advection for PPM -INTEGER :: NADVXSV=0 ! advection along X (all except PPM) -INTEGER :: NADVYSV=0 ! advection along Y (all except PPM) -INTEGER :: NADVZSV=0 ! advection along Z (all except PPM) -INTEGER :: NFRCSV=0 ! forcing -INTEGER :: NDIFSV=0 ! numerical diffusion -INTEGER :: NRELSV=0 ! relaxation -INTEGER :: NDCONVSV=0 ! Deep CONVection -INTEGER :: NMAFLSV=0 ! mass flux -INTEGER :: NHTURBSV=0 ! horizontal turbulence -INTEGER :: NVTURBSV=0 ! vertical turbulence -INTEGER :: NCHEMSV=0 ! chemistry activity -! -INTEGER :: NNEGASV=0 -! -! Allowed processes for the budget of electric charge carried by water vapor -INTEGER :: NDEPSQV=0 -INTEGER :: NDEPGQV=0 -INTEGER :: NREVAQV=0 -INTEGER :: NDEPIQV=0 -INTEGER :: NNEUTQV=0 -! -! Allowed processes for the budget of electric charge carried by cloud droplets -INTEGER :: NAUTOQC=0 -INTEGER :: NACCRQC=0 -INTEGER :: NRIMQC=0 -INTEGER :: NWETGQC=0 -INTEGER :: NDRYGQC=0 -INTEGER :: NIMLTQC=0 -INTEGER :: NBERFIQC=0 -INTEGER :: NDEPIQC=0 -INTEGER :: NINDQC=0 ! inductive process -INTEGER :: NSEDIQC=0 -INTEGER :: NNEUTQC=0 -! -! Allowed processes for the budget of electric charge carried by rain drops -INTEGER :: NAUTOQR=0 -INTEGER :: NACCRQR=0 -INTEGER :: NREVAQR=0 -INTEGER :: NACCQR=0 -INTEGER :: NCFRZQR=0 -INTEGER :: NWETGQR=0 -INTEGER :: NDRYGQR=0 -INTEGER :: NGMLTQR=0 -INTEGER :: NSEDIQR=0 -INTEGER :: NNEUTQR=0 -! -! Allowed processes for the budget of electric charge carried by ice crystals -INTEGER :: NAGGSQI=0 -INTEGER :: NAUTSQI=0 -INTEGER :: NCFRZQI=0 -INTEGER :: NWETGQI=0 -INTEGER :: NDRYGQI=0 -INTEGER :: NIMLTQI=0 -INTEGER :: NBERFIQI=0 -INTEGER :: NDEPIQI=0 -INTEGER :: NNIISQI=0 ! non-inductive I-S -INTEGER :: NSEDIQI=0 -INTEGER :: NNEUTQI=0 -! -! Allowed processes for the budget of electric charge carried by snow -INTEGER :: NDEPSQS=0 -INTEGER :: NAGGSQS=0 -INTEGER :: NAUTSQS=0 -INTEGER :: NRIMQS=0 -INTEGER :: NACCQS=0 -INTEGER :: NCMELQS=0 -INTEGER :: NWETGQS=0 -INTEGER :: NDRYGQS=0 -INTEGER :: NNIISQS=0 ! non-inductive I-S -INTEGER :: NSEDIQS=0 -INTEGER :: NNEUTQS=0 -! -! Allowed processes for the budget of electric charge carried by graupel -INTEGER :: NDEPGQG=0 -INTEGER :: NRIMQG=0 -INTEGER :: NACCQG=0 -INTEGER :: NCMELQG=0 -INTEGER :: NCFRZQG=0 -INTEGER :: NWETGQG=0 -INTEGER :: NDRYGQG=0 -INTEGER :: NGMLTQG=0 -INTEGER :: NINDQG=0 ! inductive process -INTEGER :: NSEDIQG=0 -INTEGER :: NNEUTQG=0 -! -! must add processes for electric charge carried by hail -! -! -REAL :: XTIME_BU=0. ! budget time in this time-step -REAL :: XTIME_BU_PROCESS=0. ! budget time per process for this time-step +INTEGER :: NBUMOD=0 ! model in which budget is calculated ! LOGICAL, POINTER :: LBUDGET_U=>NULL() ! flag to compute budget of RhoJu and/or LES budgets with u LOGICAL, POINTER :: LBUDGET_V=>NULL() ! flag to compute budget of RhoJv and/or LES budgets with u diff --git a/src/arome/aux/modd_dyn.F90 b/src/arome/aux/modd_dyn.F90 deleted file mode 100644 index ce3750195f78fe7aafd5ee61fcd5a0b1f34c2bb9..0000000000000000000000000000000000000000 --- a/src/arome/aux/modd_dyn.F90 +++ /dev/null @@ -1,71 +0,0 @@ -! ######spl - MODULE MODD_DYN -! ################ -! -!!**** *MODD_DYN* - declaration of dynamic control variables -!! -!! PURPOSE -!! ------- -! The purpose of this declarative module is to declare the dynamic -! control variables for all models. -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_PARAMETERS : contains the maximum number of coupling files -!! -!! REFERENCE -!! --------- -!! Book2 of documentation of Meso-NH (module MODD_DYN) -!! Technical Specifications Report of the Meso-NH (chapters 2 and 3) -!! -!! AUTHOR -!! ------ -!! V. Ducrocq *Meteo France* -!! -!! MODIFICATIONS -!! ------------- -!! Original 06/05/94 -!! Modifications 17/10/94 (Stein) For LCORIO -!! Modifications 12/12/94 (Stein) remove LABSLAYER + add XALZBOT -!! and XALKBOT -!! Modifications 10/03/95 (I.Mallet) add coupling variables -!! 04/05/07 (C.Lac) Separation of num.diffusion -!! between variables -!--------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_PARAMETERS -! -IMPLICIT NONE -! -REAL ,SAVE :: XSEGLEN ! Duration of segment (in seconds) -REAL ,SAVE :: XASSELIN ! Asselin coefficient -REAL ,SAVE :: XASSELIN_SV! Asselin coefficient for tracer variables -LOGICAL,SAVE :: LCORIO ! Coriolis flag -LOGICAL,SAVE :: LNUMDIFU ! logical switch for the NUMerical DIFFusion: - ! .TRUE. active .FALSE. unactive - ! for momentum -LOGICAL,SAVE :: LNUMDIFTH ! For theta and mixing ratio -LOGICAL,SAVE :: LNUMDIFSV ! For scalar variables -LOGICAL,SAVE :: LSTEADYLS ! logical switch to remove all Larger Scale fields - ! evolution during the segment (the LS fields are - ! STEADY).TRUE. LS steady .FALSE. LS unsteady -REAL ,SAVE :: XALKTOP ! Damping coef. at the top of the absorbing - ! layer -REAL ,SAVE :: XALZBOT ! Height of the absorbing layer base -! -INTEGER,SAVE :: NCPL_NBR ! NumBeR of CouPLing files -INTEGER,SAVE :: NCPL_CUR ! Number of CURrent CouPLing file -! -LOGICAL, SAVE, DIMENSION(JPMODELMAX) :: LUSERV_G, LUSERC_G, LUSERR_G, LUSERI_G -LOGICAL, SAVE, DIMENSION(JPMODELMAX) :: LUSERS_G, LUSERH_G, LUSERG_G -LOGICAL, SAVE, DIMENSION(JPMODELMAX) :: LUSETKE -LOGICAL, SAVE, DIMENSION(JPSVMAX,JPMODELMAX) :: LUSESV -REAL, SAVE, DIMENSION(JPCPLFILEMAX,JPMODELMAX) :: NCPL_TIMES ! array of - ! the number for the coupling instants of every nested model -REAL, SAVE :: XTSTEP_MODEL1 ! time step of the - ! outermost model -END MODULE MODD_DYN diff --git a/src/arome/aux/mode_budget.F90 b/src/arome/aux/mode_budget.F90 index afd54a187286ccaa46399b2e2eef9239d12441f4..624efdfa9839e077a5b6da173b944300295a6155 100644 --- a/src/arome/aux/mode_budget.F90 +++ b/src/arome/aux/mode_budget.F90 @@ -1,6 +1,5 @@ MODULE MODE_BUDGET USE MODD_BUDGET, ONLY : TBUDGETDATA -USE MODI_BUDGET_DDH, ONLY: BUDGET_DDH IMPLICIT NONE CONTAINS @@ -75,4 +74,221 @@ USE MODDB_INTBUDGET, ONLY:TVARSM &LDISDIFF=.TRUE.) #endif END SUBROUTINE BUDGET_STORE_ADD + + SUBROUTINE BUDGET_DDH(PVARS,KBUDN,HBUVAR,YDDDH, YDLDDH, YDMDDH, LDISDIFF) + USE PARKIND1, ONLY : JPRB + USE YOMHOOK , ONLY : LHOOK, DR_HOOK +! ##################################### +! +!! BUDGET - routine to call the BUDGET routine for AROME. +!! +!! BEWARE THIS ROUTINE iS DIFFERENT FROM THE MNH ROUTINE BUDGET +!! EVEN IF IT WEARS THE SAME NAME !!! +!! +!! PURPOSE +!! ------- +! This routine is an interface for the add_ddh subroutine. +! It converts the selected field into klev reversed vertical +! levels and attributes to the selected field are created. +! +!!** METHOD +!! ------ +!! +!! 1st step: substract previous step (sequential approach in MNH) +!! 2nd step: reverse levels +!! 3rd step: multiplication by conversion factor for r-> q +!! or Theta-> T +!! +!! 4rd step: call to add_ddh now that the field has an Aladin shape +!! +!! +!! EXTERNAL +!! -------- +!! ADD_FIELD_3D +!! INVERT_VLEV +!! +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! Module MODD_INTBUDGET: +!! +!! PVARS_M(nlon,1,nlev,13) !13 different budgets +!! VARMULT(:,:,13) ! allows to convert variables +!! +!! REFERENCE +!! --------- +!! "New data flow for diagnostics in Arome/Arpege" +!! +!! AUTHOR +!! ------ +!! O.Riviere 17/07/08 * Meteo France * +!! +!! +!! MODIFICATIONS +!! ------------- +!! F.Voitus 16/05/17 : Introduction of new DDH superstructure for budget +!! S.Riette Jan 2022 : LDISDIFF case +!! +!------------------------------------------------------------------------------- + +! + +USE MODDB_INTBUDGET,ONLY:TAB_VARMULT,TVARSM,CVARNAME,NLON +USE DDH_MIX, ONLY:NFLEVGDDH,NPROMADDH,ADD_FIELD_3D, & + & TYP_DDH, NEW_ADD_FIELD_3D ! reference is Arpege +USE OML_MOD, ONLY : OML_MY_THREAD +USE YOMLDDH, ONLY : TLDDH +USE YOMMDDH, ONLY : TMDDH + + +IMPLICIT NONE +! +! +!* 0.1 Declarations of arguments : +! +REAL, DIMENSION(:,:,:), INTENT(IN) :: PVARS ! source of the variable +INTEGER , INTENT(IN) :: KBUDN ! variable number + +CHARACTER (LEN=*) , INTENT(IN) :: HBUVAR ! Identifier of the Budget +TYPE(TYP_DDH) , INTENT(INOUT) :: YDDDH +TYPE(TLDDH) , INTENT(IN) :: YDLDDH +TYPE(TMDDH) , INTENT(IN) :: YDMDDH + +LOGICAL, OPTIONAL , INTENT(IN) :: LDISDIFF ! PVARS contains the increment (default is .FALSE.) + +!* 0.2 Declaration of local variables: +REAL,DIMENSION(NPROMADDH,NFLEVGDDH):: ZVARS +LOGICAL :: LINST,LDDH +INTEGER::IINCR,JLON,JLEV,IFDIA,IOFF +CHARACTER (LEN=4) :: CLPROC +CHARACTER (LEN=11) :: CLDDH +LOGICAL :: LISDIFF + +REAL(KIND=JPRB) :: ZHOOK_HANDLE +IF (LHOOK) CALL DR_HOOK('BUDGET_DDH',0,ZHOOK_HANDLE) + +IF (PRESENT(LDISDIFF)) THEN + LISDIFF=LDISDIFF +ELSE + LISDIFF=.FALSE. +ENDIF + +IFDIA=SIZE(PVARS,1) +ZVARS(:,:)=0. +IF (SIZE(PVARS,3)==NFLEVGDDH+2) THEN + IOFF=1 +ELSE + IOFF=0 +ENDIF +!if length is less than 4, fill with budget old names +IF(LEN(HBUVAR)==1) THEN + CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR)))//'_BU' +ELSE IF(LEN(HBUVAR)==2) THEN + CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR)))//'_B' +ELSE IF(LEN(HBUVAR)==3) THEN + CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR)))//'_' +ELSE + CLPROC=HBUVAR(1:MIN(4, LEN(HBUVAR))) +END IF +! +IF (YDLDDH%LDDH_OMP) THEN + CLDDH='T'//YDDDH%YVARMULT(KBUDN)%CNAME//CLPROC +ELSE + CLDDH='T'//CVARNAME(KBUDN)//CLPROC +ENDIF + +! depi not stored through call to budget but add_field +IF ((CLPROC=='DEPI').OR.(CLPROC=='CEDS')) THEN + IF (LHOOK) CALL DR_HOOK('BUDGET_DDH',1,ZHOOK_HANDLE) + RETURN +ENDIF + +!1. Substraction of value at previous process and updates PVARSM + +IF (YDLDDH%LDDH_OMP) THEN + IF (CLPROC=='INIF') THEN + DO JLEV=1,NFLEVGDDH + DO JLON=1,IFDIA + YDDDH%RVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) + ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) + ENDDO + ENDDO + ELSE + IF (LISDIFF) THEN + DO JLEV=1,NFLEVGDDH + DO JLON=1,IFDIA + ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) + YDDDH%RVARSM(JLON,1,JLEV,KBUDN)=YDDDH%RVARSM(JLON,1,JLEV,KBUDN)+PVARS(JLON,1,JLEV+IOFF) + ENDDO + ENDDO + ELSE + DO JLEV=1,NFLEVGDDH + DO JLON=1,IFDIA + ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF)-YDDDH%RVARSM(JLON,1,JLEV,KBUDN) + YDDDH%RVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) + ENDDO + ENDDO + ENDIF + ENDIF +ELSE + IF (CLPROC=='INIF') THEN + DO JLEV=1,NFLEVGDDH + DO JLON=1,IFDIA + TVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) + ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) + ENDDO + ENDDO + ELSE + IF (LISDIFF) THEN + DO JLEV=1,NFLEVGDDH + DO JLON=1,IFDIA + ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF) + TVARSM(JLON,1,JLEV,KBUDN)=TVARSM(JLON,1,JLEV,KBUDN)+PVARS(JLON,1,JLEV+IOFF) + ENDDO + ENDDO + ELSE + DO JLEV=1,NFLEVGDDH + DO JLON=1,IFDIA + ZVARS(JLON,JLEV)=PVARS(JLON,1,JLEV+IOFF)-TVARSM(JLON,1,JLEV,KBUDN) + TVARSM(JLON,1,JLEV,KBUDN)=PVARS(JLON,1,JLEV+IOFF) + ENDDO + ENDDO + ENDIF + ENDIF +ENDIF + + + +!2. Reverse levels MNH-> ALD +!IINCR=-1 +!CALL INVERT_VLEV(1,NLON,NFLEVGDDH,IINCR,ZVARS,PVARS2) + +!3. CONVERSION +! converting to desired budget variables + +IF (YDLDDH%LDDH_OMP) THEN + ZVARS(:,:)=ZVARS(:,:)*YDDDH%YVARMULT(KBUDN)%RVAL(:,:) +ELSE + ZVARS(:,:)=ZVARS(:,:)*TAB_VARMULT(KBUDN)%VARMULT(:,:) +ENDIF + + +!4. CALL TO ADD_FIELD + + +LDDH=.TRUE. +LINST=.TRUE. +! saves ZVARS with NAME HBUVAR as a Tendency from AROME +! and it is an INSTantaneous field +IF (CLPROC/='INIF') THEN + IF (YDLDDH%LDDH_OMP) THEN + CALL NEW_ADD_FIELD_3D(YDMDDH,ZVARS,CLDDH,YDDDH) + ELSE + CALL ADD_FIELD_3D(YDLDDH,ZVARS,CLDDH,'T','AROME',LINST,LDDH) + ENDIF +ENDIF + +IF (LHOOK) CALL DR_HOOK('BUDGET_DDH',1,ZHOOK_HANDLE) +END SUBROUTINE BUDGET_DDH END MODULE MODE_BUDGET + diff --git a/src/arome/aux/modi_budget_DDH.F90 b/src/arome/aux/modi_budget_DDH.F90 deleted file mode 100644 index 888d53d8e920075753245d64b5e6406d4eabce6a..0000000000000000000000000000000000000000 --- a/src/arome/aux/modi_budget_DDH.F90 +++ /dev/null @@ -1,26 +0,0 @@ -! ######spl - MODULE MODI_BUDGET_DDH -!################## -! -INTERFACE -! -SUBROUTINE BUDGET_DDH(PVARS,KBUDN,HBUVAR,YDDDH, YDLDDH, YDMDDH, LDISDIFF) -! -USE DDH_MIX, ONLY : TYP_DDH -USE YOMLDDH, ONLY : TLDDH -USE YOMMDDH, ONLY : TMDDH -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PVARS ! Source -INTEGER , INTENT(IN) :: KBUDN ! variable number -CHARACTER (LEN=*) , INTENT(IN) :: HBUVAR ! Identifier of the Budget of the - ! variable that is considered -TYPE(TYP_DDH), INTENT(INOUT) :: YDDDH -TYPE(TLDDH), INTENT(IN) :: YDLDDH -TYPE(TMDDH), INTENT(IN) :: YDMDDH -LOGICAL, OPTIONAL, INTENT(IN) :: LDISDIFF ! PVARS contains the increment -! -END SUBROUTINE BUDGET_DDH -! -END INTERFACE -! -END MODULE MODI_BUDGET_DDH diff --git a/src/arome/aux/modi_ini_budget.F90 b/src/arome/aux/modi_ini_budget.F90 deleted file mode 100644 index 217bcea4be9ffba644b4dd4cdd7b57e4e8c1f48f..0000000000000000000000000000000000000000 --- a/src/arome/aux/modi_ini_budget.F90 +++ /dev/null @@ -1,64 +0,0 @@ -! ######spl - MODULE MODI_INI_BUDGET -! ###################### -INTERFACE - SUBROUTINE INI_BUDGET(KLUOUT, HLUOUT,PTSTEP,KSV,KRR, & - ONUMDIFU,ONUMDIFTH,ONUMDIFSV, & - OHORELAX_UVWTH,OHORELAX_RV,OHORELAX_RC,OHORELAX_RR, & - OHORELAX_RI,OHORELAX_RS, OHORELAX_RG, OHORELAX_RH,OHORELAX_TKE, & - OHORELAX_SV,OVE_RELAX,OCHTRANS,ONUDGING,ODRAGTREE, & - HRAD,HDCONV,HSCONV,HTURB,HTURBDIM,HCLOUD, & - HMET_ADV_SCHEME,HSV_ADV_SCHEME) -! -INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints -CHARACTER (LEN=*), INTENT(IN) :: HLUOUT ! name of output listing -REAL, INTENT(IN) :: PTSTEP ! time step -INTEGER, INTENT(IN) :: KSV ! number of scalar variables -INTEGER, INTENT(IN) :: KRR ! number of moist variables -LOGICAL, INTENT(IN) :: ONUMDIFU ! switch to activate the numerical - ! diffusion for momentum -LOGICAL, INTENT(IN) :: ONUMDIFTH ! for meteorological scalar variables -LOGICAL, INTENT(IN) :: ONUMDIFSV ! for tracer scalar variables -LOGICAL, INTENT(IN) :: OHORELAX_UVWTH ! switch for the - ! horizontal relaxation for U,V,W,TH -LOGICAL, INTENT(IN) :: OHORELAX_RV ! switch for the - ! horizontal relaxation for Rv -LOGICAL, INTENT(IN) :: OHORELAX_RC ! switch for the - ! horizontal relaxation for Rc -LOGICAL, INTENT(IN) :: OHORELAX_RR ! switch for the - ! horizontal relaxation for Rr -LOGICAL, INTENT(IN) :: OHORELAX_RI ! switch for the - ! horizontal relaxation for Ri -LOGICAL, INTENT(IN) :: OHORELAX_RS ! switch for the - ! horizontal relaxation for Rs -LOGICAL, INTENT(IN) :: OHORELAX_RG ! switch for the - ! horizontal relaxation for Rg -LOGICAL, INTENT(IN) :: OHORELAX_RH ! switch for the - ! horizontal relaxation for Rh -LOGICAL, INTENT(IN) :: OHORELAX_TKE ! switch for the - ! horizontal relaxation for tke -LOGICAL,DIMENSION(:),INTENT(IN):: OHORELAX_SV ! switch for the - ! horizontal relaxation for scalar variables -LOGICAL, INTENT(IN) :: OVE_RELAX ! switch to activate the vertical - ! relaxation -LOGICAL, INTENT(IN) :: OCHTRANS ! switch to activate convective - !transport for SV -LOGICAL, INTENT(IN) :: ONUDGING ! switch to activate nudging -LOGICAL, INTENT(IN) :: ODRAGTREE ! switch to activate vegetation drag -CHARACTER (LEN=*), INTENT(IN) :: HRAD ! type of the radiation scheme -CHARACTER (LEN=*), INTENT(IN) :: HDCONV ! type of the deep convection scheme -CHARACTER (LEN=*), INTENT(IN) :: HSCONV ! type of the deep convection scheme -CHARACTER (LEN=*), INTENT(IN) :: HTURB ! type of the turbulence scheme -CHARACTER (LEN=*), INTENT(IN) :: HTURBDIM! dimensionnality of the turbulence - ! scheme -CHARACTER (LEN=*), INTENT(IN) :: HCLOUD ! type of microphysical scheme -CHARACTER (LEN=*), INTENT(IN) :: HMET_ADV_SCHEME ! type of advection scheme - ! for meteorological scalar variables -CHARACTER (LEN=*), INTENT(IN) :: HSV_ADV_SCHEME ! type of advection scheme - ! for tracer scalar variables -! - END SUBROUTINE INI_BUDGET -! -END INTERFACE -! -END MODULE MODI_INI_BUDGET diff --git a/src/arome/chem/externals/aro_mnhc.F90 b/src/arome/chem/externals/aro_mnhc.F90 deleted file mode 100644 index cc2f67aabe8b4dd3ef31019148579ca7a1fb1a7d..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/aro_mnhc.F90 +++ /dev/null @@ -1,694 +0,0 @@ -! ################################################### - SUBROUTINE ARO_MNHC(PRSVSIN, PRHODREF, PTSTEP, & - PTHT, PABST, & - PRT, PLAT, PLON, & - PALB_UV, PZS, PZENITH, PZZ, & - KYEAR, KMONTH, KDAY, PTIME, & - KLON,KLEV,NSV, KRR, & - KTCOUNT, KLUOUT,NDIAG,PPEZDIAG,PRSVS ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ################################################### -!! -!!*** *ARO_MNHC* monitor of the chemical module of MesoNH-C -!! -!! PURPOSE -!! ------- -!! The purpose of this subroutine is to control the chemical module -!! i.e. to pass the meteorological parameters from MesoNH to its chemical -!! part and to call the different subroutines (calculation of rate constants, -!! photolysis rates, stiff solver,..) -!! -!! METHOD -!! ------ -!! The calculation of the chemical terms is performed using a loop -!! over all spatial dimensions. -!! -!! For each single grid point, all necessary meteorological parameters are -!! passed into the chemical core system (variable TZM). This variable is -!! then passed on to the subroutines that calculate the reaction and -!! photolysis rates. Then the chemical solver is called. As the chemistry -!! part works with different units than MesoNH (MesoNH uses mixing ratio, -!! the chemisty part uses molec/cm3) some unit conversion is also performed. -!! -!! Temporal integration is performed over a double timestep 2*PTSTEP -!! (except in the case of a cold start). If the timestep of MesoNH -!! is too large for the chemical solver, several smaller steps can -!! be taken using the NCH_SUBSTEPS parameter. -!! "SPLIT" : from PRSVSIN the scalar variable at t+dt is calculated and -!! given as input to the solver; the result is written -!! into PRSVS; this corresponds to applying first only dynamics -!! and then only chemistry; this option assures positivity, but -!! degrades the order of the temporal integration. -!! In fact, an overhead of a factor two is produced here. -!! A future solution will be to calculate the dynamics -!! of the scalar variables not using leapfrog, but forward -!! temporal integration. -!! Vectorization Mask : Need ISVECMASK for photolysis (input(IN)) -!! ISVECNMASK = Nb of vector -!! IDT1 = Nb of points for the first dimension (for arome = size of vector) -!! IDT2 = Nb of points for the second dimension (for arome = 1) -!! IDT3 = Nb of points in vertical -!! -!! -!! -!! REFERENCE -!! --------- -!! Book 1, 2, 3 of MesoNH-chemistry -!! -!! AUTHOR -!! ------ -!! P. Tulet *CNRM / GMEI* and contributors of MesoNH-C (K. Shure, C. Mari, V. Crassier) -!! -!! MODIFICATIONS -!! ------------- -!! Original 10/11/04 -!! -!! EXTERNAL -!! -------- -USE MODI_CH_METEO_TRANS -USE MODI_CH_SET_RATES -USE MODI_CH_SET_PHOTO_RATES -USE MODI_CH_SOLVER_n -USE MODI_CH_AER_SEDIM_n -USE MODI_CH_ORILAM -USE MODI_CH_INI_ORILAM -USE MODI_CH_AER_EQM_CORMASS -!USE MODI_CH_AER_SURF -USE MODI_CH_AER_INIT -USE MODI_CH_UPDATE_JVALUES_n -! -! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -USE MODD_CH_M9_SCHEME, ONLY: JP_CO, JP_O3, JP_NO, JP_NO2, JP_SO2, JP_CH4 -USE MODD_CH_M9, ONLY: NEQ, &! number of prognostic chem. species - NMETEOVARS, &! number of meteorological variables - CNAMES, &! names of the chem. species - METEOTRANSTYPE ! type for meteo . transfer -!! -USE MODD_CH_INIT_JVALUES, ONLY: JPJVMAX ! number of photolysis reactions in TUVMAIN -USE MODD_CH_MNHC_n, ONLY: NCH_SUBSTEPS - ! ZDTSOLVER = PTSTEP/NCH_SUBSTEPS -USE MODD_CH_MNHC_n, ONLY: LCH_INIT_FIELD -USE MODD_CH_MNHC_n, ONLY: CCH_VEC_METHOD -USE MODD_CH_SOLVER_n -USE MODD_CH_MNHC_n, ONLY: LCH_TUV_ONLINE, CCH_TUV_LOOKUP, CCH_TUV_CLOUDS, & - XCH_TUV_ALBNEW, XCH_TUV_DOBNEW, XCH_TUV_TUPDATE -USE MODD_CH_MNHC_n, ONLY: CCH_SCHEME - -!! -USE MODD_CONF, ONLY: CCONF, & ! Configuration of models (START/RESTART) - NVERB ! Level of informations on output-listing - -!! -USE MODD_CST, ONLY: XAVOGADRO, &! Avogadro number - XMD,& ! Molar mass of dry air - XP00, XRD, XCPD, XPI -! -USE MODD_NSV, ONLY: NSV_CHEMBEG, NSV_CHEMEND, NSV_CHEM, & - NSV_AERBEG, NSV_AEREND, NSV_AER -USE MODD_GRID_AROME,ONLY: XLAT0, XLON0 -USE MODD_CH_AEROSOL -! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -IMPLICIT NONE -! -!* 0.1 declarations of arguments -INTEGER, INTENT(IN) :: KLON !NPROMA under CPG -INTEGER, INTENT(IN) :: KLEV !Number of vertical levels -INTEGER, INTENT(IN) :: NSV ! Number of passive scalar -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -REAL, DIMENSION(KLON,1,KLEV,NSV),INTENT(IN) :: PRSVSIN ! source of scalar variable -REAL, DIMENSION(KLON,1,KLEV), INTENT(IN) :: PRHODREF ! iteration count -REAL, INTENT(IN) :: PTSTEP ! time step of MesoNH -REAL, DIMENSION(KLON,1,KLEV), INTENT(IN) :: PTHT, PABST ! theta and pressure at t -REAL, DIMENSION(KLON,1,KLEV,KRR),INTENT(IN) :: PRT ! moist variables at t -REAL, DIMENSION(KLON,1), INTENT(IN) :: PLAT, PLON ! lat, lon of each points -REAL, DIMENSION(KLON,1), INTENT(IN) :: PALB_UV, PZS, PZENITH -REAL, DIMENSION(KLON,1,KLEV), INTENT(IN) :: PZZ -INTEGER, INTENT(IN) :: KYEAR ! Current Year -INTEGER, INTENT(IN) :: KMONTH ! Current Month -INTEGER, INTENT(IN) :: KDAY ! Current Day -REAL, INTENT(IN) :: PTIME ! Current time in second -INTEGER, INTENT(IN) :: KTCOUNT ! iteration count -INTEGER, INTENT(IN) :: KLUOUT ! unit for output listing count -INTEGER, INTENT(IN) :: NDIAG ! nb of diagnostics -REAL, DIMENSION(KLON,KLEV,NDIAG),INTENT(INOUT) :: PPEZDIAG !O [-] Diagnostics table -REAL, DIMENSION(KLON,1,KLEV,NSV),INTENT(OUT) :: PRSVS ! source of scalar variable - -! -! -!* 0.2 declarations of local variables -! -INTEGER :: JM,JI,JK,JL,JK1 ! loop counters -REAL :: ZDTSOLVER ! timestep for the solver -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZCHEM, ZOLDCHEM, ZNEWCHEM -REAL, DIMENSION(:,:), ALLOCATABLE :: ZAERO - ! arrays for parameter passage to solver -! -REAL :: ZDEN2MOL - ! ZDEN2MOL = 6.0221367E+23 * 1E-6 / 28.9644E-3 - ! conversion factor density to mol/cm3 - ! n_molec (moelc./cm3): M = 1E-6*RHO(kg/m3) * XAVOGADRO / XMD -! -TYPE(METEOTRANSTYPE), DIMENSION(:), ALLOCATABLE :: TZM - ! meteo variables to be transferred into CCS -! -INTEGER :: JN, JSV ! loop index for SV -INTEGER :: ILAT -! -!------------------------------------------------------------------------------- -! variables for the vectorization -! -INTEGER, SAVE :: ISVECNMASK -INTEGER, SAVE :: ISVECNPT = 0 -INTEGER, SAVE, DIMENSION(:,:), ALLOCATABLE :: ISVECMASK -! -INTEGER :: IDTI,IDTJ,IDTK -INTEGER :: IDT1,IDT2,IDT3 -INTEGER :: IIU ! Upper dimension in x direction -INTEGER :: IJU ! Upper dimension in y direction -INTEGER :: IKU ! Upper dimension in z direction -INTEGER :: IIB ! indice I Beginning in x direction -INTEGER :: IJB ! indice J Beginning in y direction -INTEGER :: IKB ! indice K Beginning in z direction -INTEGER :: IIE ! indice I End in x direction -INTEGER :: IJE ! indice J End in y direction -INTEGER :: IKE ! indice K End in z direction - -!------------------------------------------------------------------------------- -! -! variables for TUV -! -REAL, DIMENSION(KLON,1,KLEV,JPJVMAX) :: ZJVALUES -!--------------------------Arguments vs Local-------------------------------------------------- -INTEGER :: IDAY, IMONTH, IYEAR -REAL :: ZTIME, ZTIMERAD, ZUT, ZDATE, ZAD, ZTSIDER, ZA1, ZA2 -REAL, DIMENSION(KLON,1,KLEV) :: ZRHODREF, ZZZ, ZTHT, ZABST -REAL, DIMENSION(KLON,1) :: ZLAT, ZLON, ZTUT -REAL, DIMENSION(KLON,1,KLEV,KRR) :: ZRT -REAL, DIMENSION(KLON,1) :: ZZENITH, ZZS, ZALB_UV -REAL, DIMENSION(KLON,1) :: ZCOSZEN, ZSOLANG -REAL :: ZSINDEL, ZCOSDEL, ZDECSOL -INTEGER, DIMENSION(0:11) :: IBIS, INOBIS ! Cumulative number of days per month - ! for bissextile and regular years -!------------------------------------------------------------------------------- -! variables for the aerosol module -REAL, ALLOCATABLE, DIMENSION(:,:) :: ZM, ZSIG0, ZN0, ZSOLORG, ZMASS, & - ZRG0, ZCTOTG, ZSEDA, ZFRAC, ZMI ! work array for aerosols -REAL, ALLOCATABLE, DIMENSION(:,:,:) :: ZCTOTA, ZCCTOT - ! first dimension is vectorization, - ! second dim. are the modes*moments -REAL, ALLOCATABLE, DIMENSION(:) :: ZRV, ZDENAIR, ZPRESSURE, ZTEMP, ZRC -REAL, DIMENSION(:,:), ALLOCATABLE :: ZRHOP0, ZOM -REAL, DIMENSION(:), ALLOCATABLE :: ZLAMBDA, ZMU, ZSO4RAT - -REAL,DIMENSION(KLON,1,KLEV,NSV) :: ZSVT -REAL,DIMENSION(KLON,1,KLEV,JPIN) :: ZXSEDA -REAL,DIMENSION(KLON,1,JPIN) :: ZVDEPAERO -REAL,DIMENSION(KLON,KLEV,NDIAG) :: ZPEZDIAG -! -!------------------------------------------------------------------------------- -! -! -!* 1. PREPARE MONITOR -! --------------- -! Arome is vectorized upon horizontal (I,1,K) -! I = horizontal vector (not necessary equal to west/east nb of points) -! K = nb of points in vertical and physical domain upon vertical is 2=>KLEV+1 - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('ARO_MNHC',0,ZHOOK_HANDLE) -ZJVALUES(:,:,:,:) = 0. -ZVDEPAERO(:,:,:) = 0. - -ZZENITH(:,:) = PZENITH(:,:) -ZTIME = PTIME -ZRT(:,:,:,:) = PRT(:,:,:,:) -ZTHT(:,:,:) = PTHT(:,:,:) -ZABST(:,:,:) = PABST(:,:,:) -ZALB_UV(:,:) = PALB_UV(:,:) -ZZS(:,:) = PZS(:,:) -ZZZ(:,:,:) = PZZ(:,:,:) -ZRHODREF(:,:,:) = PRHODREF(:,:,:) -IDAY = KDAY -IMONTH = KMONTH -IYEAR = KYEAR - -IIU = KLON -IJU = 1 -IKU = KLEV -IIB=1 -IJB=1 -IKB=1 -IIE = IIU -IJE = 1 -IKE = IKU - -IDTI=(IIE-IIB+1) -IDTJ=(IJE-IJB+1) -IDTK=(IKE-IKB+1) - -ISVECNPT=IDTI*IDTJ*IDTK -ISVECNMASK=1 -IDT1=IDTI -IDT2=IDTJ -IDT3=IDTK - -! Possible to change the vector size only on NPROMA -! to do it uses: -! ISVECNPT=IDTI*IDTJ -! ISVECNMASK=IDTK -! IDT1=IDTI -! IDT2=IDTJ -! IDT3=1 - -IF (.NOT. ALLOCATED(ISVECMASK)) ALLOCATE(ISVECMASK(6,ISVECNMASK)) - -! -!********************************** -! Compute mask boundaries -!********************************** -! - ISVECMASK(1,1)=IIB - ISVECMASK(2,1)=IIB+IDT1-1 - ISVECMASK(3,1)=IJB - ISVECMASK(4,1)=IJB+IDT2-1 - ISVECMASK(5,1)=IKB - ISVECMASK(6,1)=IKB+IDT3-1 - - IF (ISVECNMASK .GE. 2) THEN - DO JI=2,ISVECNMASK - ISVECMASK(1,JI)=ISVECMASK(1,JI-1)+IDT1-IIB - ISVECMASK(3,JI)=ISVECMASK(3,JI-1) - ISVECMASK(5,JI)=ISVECMASK(5,JI-1) -! - ISVECMASK(3,JI)=ISVECMASK(3,JI)+(ISVECMASK(1,JI)/IDTI)*IDT2-IJB - ISVECMASK(5,JI)=ISVECMASK(5,JI)+(ISVECMASK(3,JI)/IDTJ)*IDT3-IKB -! - ISVECMASK(1,JI)=ISVECMASK(1,JI)-IDTI*(ISVECMASK(1,JI)/IDTI)+IIB - ISVECMASK(3,JI)=ISVECMASK(3,JI)-IDTJ*(ISVECMASK(3,JI)/IDTJ)+IJB - ISVECMASK(5,JI)=ISVECMASK(5,JI)-IDTK*(ISVECMASK(5,JI)/IDTK)+IKB -! - ISVECMASK(2,JI)=ISVECMASK(1,JI)+IDT1-1 - ISVECMASK(4,JI)=ISVECMASK(3,JI)+IDT2-1 - ISVECMASK(6,JI)=ISVECMASK(5,JI)+IDT3-1 - END DO - - END IF - -!* 1.1 calculate timestep variables -! -ZDTSOLVER = PTSTEP / NCH_SUBSTEPS -! -PRSVS(:,:,:,NSV_CHEMBEG:NSV_CHEMEND) = MAX(PRSVSIN(:,:,:,NSV_CHEMBEG:NSV_CHEMEND), 1.E-80) - -IF ((KTCOUNT == 1).AND.(LCH_INIT_FIELD)) THEN -! Bulk initialization; to be improve - PRSVS(:,:,:,:) = MAX(PRSVS(:,:,:,:),1E-20 / PTSTEP) - PRSVS(:,:,:,JP_CO) = 50E-9 / PTSTEP ! CO initialize to 50 ppb (low value) - PRSVS(:,:,:,JP_O3) = 30E-9 / PTSTEP ! O3 initialize to 30 ppb (low value) - PRSVS(:,:,:,JP_NO) = 1E-11 / PTSTEP ! NO initialize to 1E-3 ppb (low value) - PRSVS(:,:,:,JP_NO2) = 1E-11 / PTSTEP ! NO2 initialize to 1E-3 ppb (low value) - PRSVS(:,:,:,JP_SO2) = 1E-11 / PTSTEP ! SO2 initialize to 1E-3 ppb (low value) - PRSVS(:,:,:,JP_CH4) = 1700E-9 / PTSTEP ! CH4 mean value -! increase ozone over tropopause -PRSVS(:,:,11,JP_O3) = 5.*PRSVS(:,:,11,JP_O3) -PRSVS(:,:,9:10,JP_O3) = 15.*PRSVS(:,:,9:10,JP_O3) -PRSVS(:,:,1:8,JP_O3) = 40.*PRSVS(:,:,1:8,JP_O3) -! increase primary species in the BLM -PRSVS(:,:,IKE-8:IKE,JP_NO) = 10.*PRSVS(:,:,IKE-8:IKE,JP_NO) -PRSVS(:,:,IKE-8:IKE,JP_NO2) = 10.*PRSVS(:,:,IKE-8:IKE,JP_NO2) -PRSVS(:,:,IKE-8:IKE,JP_SO2) = 10.*PRSVS(:,:,IKE-8:IKE,JP_SO2) -END IF - -IF (LORILAM) THEN - IF (.NOT.ALLOCATED(XRHOI)) ALLOCATE(XRHOI(NSP+NCARB+NSOA)) - IF (.NOT.ALLOCATED(XFAC)) ALLOCATE(XFAC(NSP+NCARB+NSOA)) - ! Density: all to black carbon except water - XRHOI(:) = 1.8e3 - XRHOI(JP_AER_H2O) = 1.0e3 ! water - ! Moments index - NM0(1) = 1 - NM3(1) = 2 - NM6(1) = 3 - NM0(2) = 4 - NM3(2) = 5 - NM6(2) = 6 - - DO JN=1,NSP+NCARB+NSOA - XFAC(JN)=(4./3.)*3.14292654*XRHOI(JN)*1.e-9 - ENDDO - -ZSVT(:,:,:,:) = PRSVS(:,:,:,:) * PTSTEP -ZSVT(:,:,:,NSV_AERBEG:NSV_AEREND) = MAX(ZSVT(:,:,:,NSV_AERBEG:NSV_AEREND), 1.E-80) - - IF ((KTCOUNT == 1).AND.(LAERINIT)) THEN - CALL CH_AER_INIT(ZSVT(:,:,:,NSV_CHEMBEG:NSV_CHEMEND),& - ZSVT(:,:,:,NSV_AERBEG:NSV_AEREND), & - PRHODREF ) - ENDIF - -! -!* 2.5 sedimentation of aerosols tendency (ZXSEDA) -! - ZXSEDA(:,:,:,:)=0. - IF ((LSEDIMAERO).AND.(KTCOUNT .GT. 1)) THEN - CALL CH_AER_SEDIM_n(PTSTEP, ZSVT(IIB:IIE,IJB:IJE,IKB:IKE,NSV_AERBEG:NSV_AEREND),& - PTHT(IIB:IIE,IJB:IJE,IKB:IKE), PRHODREF(IIB:IIE,IJB:IJE,IKB:IKE),& - PABST(IIB:IIE,IJB:IJE,IKB:IKE), ZVDEPAERO(IIB:IIE,IJB:IJE,:), & - PZZ(IIB:IIE,IJB:IJE,IKB:IKE), ZXSEDA(IIB:IIE,IJB:IJE,IKB:IKE,:)) - END IF - -PRSVS(:,:,:,:) = ZSVT(:,:,:,:) / PTSTEP - -ENDIF -! -ALLOCATE(TZM(ISVECNPT)) -ALLOCATE(ZCHEM(ISVECNPT,NEQ)) -ALLOCATE(ZOLDCHEM(ISVECNPT,NEQ)) -ALLOCATE(ZNEWCHEM(ISVECNPT,NEQ)) -IF (LORILAM) THEN -ALLOCATE(ZAERO(ISVECNPT,NSV_AER)) -ALLOCATE(ZM(ISVECNPT,JPIN)) -ALLOCATE(ZSEDA(ISVECNPT,JPIN)) -ALLOCATE(ZRHOP0(ISVECNPT,JPMODE)) -ALLOCATE(ZSIG0(ISVECNPT,JPMODE)) -ALLOCATE(ZRG0(ISVECNPT,JPMODE)) -ALLOCATE(ZN0(ISVECNPT,JPMODE)) -ALLOCATE(ZCTOTA(ISVECNPT,NSP+NCARB+NSOA,JPMODE)) -ALLOCATE(ZMASS(ISVECNPT,JPMODE)) -ALLOCATE(ZCCTOT(ISVECNPT,NSP+NCARB+NSOA,JPMODE)) -ALLOCATE(ZCTOTG(ISVECNPT,NSP+NCARB+NSOA)) -ALLOCATE(ZMU(ISVECNPT)) -ALLOCATE(ZLAMBDA(ISVECNPT)) -ALLOCATE(ZOM(ISVECNPT,JPMODE)) -ALLOCATE(ZSO4RAT(ISVECNPT)) -ALLOCATE(ZRV(ISVECNPT)) -ALLOCATE(ZRC(ISVECNPT)) -ALLOCATE(ZPRESSURE(ISVECNPT)) -ALLOCATE(ZTEMP(ISVECNPT)) -ALLOCATE(ZDENAIR(ISVECNPT)) -ALLOCATE(ZFRAC(ISVECNPT,NEQ)) -ALLOCATE(ZMI(ISVECNPT,NSP+NCARB+NSOA)) -ALLOCATE(ZSOLORG(ISVECNPT,NSP+NCARB+NSOA)) -ZSEDA(:,:)=0. -ZSOLORG(:,:) = 0. -! initialisation of aerosol molecular weight -ZMI(:,:) = 250. -ZMI(:,JP_AER_SO4) = 98. -ZMI(:,JP_AER_NO3) = 63. -ZMI(:,JP_AER_NH3) = 17. -ZMI(:,JP_AER_H2O) = 18. -IF (NSOA .EQ. 10) THEN - ZMI(:,JP_AER_SOA1) = 88. - ZMI(:,JP_AER_SOA2) = 180. - ZMI(:,JP_AER_SOA3) = 1.5374857E3 - ZMI(:,JP_AER_SOA4) = 1.9586780E3 - ZMI(:,JP_AER_SOA5) = 195. - ZMI(:,JP_AER_SOA6) = 195. - ZMI(:,JP_AER_SOA7) = 165. - ZMI(:,JP_AER_SOA8) = 195. - ZMI(:,JP_AER_SOA9) = 270. - ZMI(:,JP_AER_SOA10) = 210. -END IF -END IF - - -! -!------------------------------------------------------------------------------- - -ZLAT(:,:) = PLAT(:,:)*(XPI/180.) -ZLON(:,:) = PLON(:,:)*(XPI/180.) -! -ZTIMERAD = ZTIME + 0.5* PTSTEP - -ZUT = MOD( 24.0+MOD(ZTIMERAD/3600.,24.0),24.0 ) - -INOBIS(:) = (/0,31,59,90,120,151,181,212,243,273,304,334/) -IBIS(0) = INOBIS(0) -DO JI=1,11 - IBIS(JI) = INOBIS(JI)+1 -END DO -IF( MOD(IYEAR,4).EQ.0 ) THEN - ZDATE = FLOAT(IDAY + IBIS(IMONTH-1)) - 1 - ZAD = 2.0*XPI*ZDATE/366.0 -ELSE - ZDATE = FLOAT(IDAY + INOBIS(IMONTH-1)) - 1 - ZAD = 2.0*XPI*ZDATE/365.0 -END IF -ZDECSOL = 0.006918-0.399912*COS(ZAD) +0.070257*SIN(ZAD) & - -0.006758*COS(2.*ZAD)+0.000907*SIN(2.*ZAD) & - -0.002697*COS(3.*ZAD)+0.00148 *SIN(3.*ZAD) -ZSINDEL = SIN(ZDECSOL) -ZCOSDEL = COS(ZDECSOL) - -ZA1 = (1.00554*ZDATE- 6.28306)*(XPI/180.0) -ZA2 = (1.93946*ZDATE+23.35089)*(XPI/180.0) -ZTSIDER = (7.67825*SIN(ZA1)+10.09176*SIN(ZA2)) / 60.0 - -ZTUT(:,:) = ZUT - ZTSIDER + ZLON(:,:)*((180./XPI)/15.0) -ZSOLANG(:,:) = (ZTUT(:,:)-12.0)*15.0*(XPI/180.) ! hour angle in radians -ZCOSZEN(:,:) = SIN(ZLAT(:,:))*ZSINDEL + &! Cosine of the zenithal - COS(ZLAT(:,:))*ZCOSDEL*COS(ZSOLANG(:,:)) ! solar angle -ZZENITH(:,:) = ACOS(ZCOSZEN(:,:)) -! -ILAT = 1 - - CALL CH_UPDATE_JVALUES_n(KLUOUT, ZZENITH, ZRT, & - & ZALB_UV, ZZS, ZZZ, XLAT0, XLON0, & - & KLON, ILAT, KLEV, KRR, & - & IDAY, IMONTH, IYEAR, ZTIME, & - & LCH_TUV_ONLINE, CCH_TUV_CLOUDS, & - & XCH_TUV_ALBNEW, XCH_TUV_DOBNEW, ZRHODREF, ZJVALUES,& - & IIB,IIE,IJB,IJE,IIU,IJU,10) - -! -!* 3. INTEGRATE OVER ALL GRID POINTS -! ------------------------------- -! -! -DO JL=1,ISVECNMASK - -! -!* 3.1 transfer chemical species for solver -! and convert from part/part to molec./cm3 - IDTI=ISVECMASK(2,JL)-ISVECMASK(1,JL)+1 - IDTJ=ISVECMASK(4,JL)-ISVECMASK(3,JL)+1 - IDTK=ISVECMASK(6,JL)-ISVECMASK(5,JL)+1 -! -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD - - -DO JN = 1, NSV_CHEM -!Vectorization: -!ocl novrec -!cdir nodep - DO JM=0,ISVECNPT-1 - JI=JM-IDTI*(JM/IDTI)+ISVECMASK(1,JL) - JK=JM/(IDTI*IDTJ)-IDTK*(JM/(IDTI*IDTJ*IDTK))+ISVECMASK(5,JL) - ZCHEM(JM+1,JN) = PRSVS(JI,1,JK,NSV_CHEMBEG+JN-1) * PTSTEP * & - ZDEN2MOL * ZRHODREF(JI,1,JK) - END DO -END DO - - -ZCHEM(:,:) = MAX(ZCHEM(:,:), 0.) - -IF (LORILAM) THEN -ZRV(:) = 0. -ZRC(:) = 0. -!ocl novrec -!cdir nodep -DO JM=0,ISVECNPT-1 - JI=JM-IDTI*(JM/IDTI)+ISVECMASK(1,JL) - JK=JM/(IDTI*IDTJ)-IDTK*(JM/(IDTI*IDTJ*IDTK))+ISVECMASK(5,JL) -! Sedimentation tendancy - ZSEDA(JM+1,:) = ZXSEDA(JI,1,JK,:) -! Pressure (Pa) - ZPRESSURE(JM+1) = PABST(JI,1,JK) -! Air density (kg/m3) - ZDENAIR(JM+1) = PRHODREF(JI,1,JK) -! Temperature (K) - ZTEMP(JM+1) = PTHT(JI,1,JK)*((PABST(JI,1,JK)/XP00)**(XRD/XCPD)) -! Water vapor (kg/kg) - ZRV(JM+1) = PRT(JI,1,JK,1) -! Cloud vapor (kg/kg) - ZRC(JM+1) = PRT(JI,1,JK,2) -! END DO -! -END DO -DO JN = 1, NSV_AER -!Vectorization: -!ocl novrec - DO JM=0,ISVECNPT-1 - JI=JM-IDTI*(JM/IDTI)+ISVECMASK(1,JL) - JK=JM/(IDTI*IDTJ)-IDTK*(JM/(IDTI*IDTJ*IDTK))+ISVECMASK(5,JL) - ZAERO(JM+1,JN) = PRSVS(JI,1,JK,NSV_AERBEG+JN-1) * PTSTEP * & - ZDEN2MOL * ZRHODREF(JI,1,JK) - END DO -END DO - - IF (KTCOUNT == 1) THEN -!* 3.4 initialize aerosol parameters and moments of 0th, -! 6th, aerosol surface and aerosol diameter order - - CALL CH_INI_ORILAM(ZM, ZSIG0, ZRG0, ZN0, ZCTOTG, ZCTOTA, ZCCTOT,& - ZSEDA, ZOM, ZRHOP0, ZAERO, ZCHEM, ZRV, ZDENAIR, & - ZPRESSURE, ZTEMP, ZRC, ZFRAC, ZMI, CCH_SCHEME) -! - END IF -ZCHEM(:,JP_CH_H2SO4) = ZAERO(:,JP_CH_SO4i) + ZAERO(:,JP_CH_SO4j) -END IF - - -! -!* 3.2 transfer meteo data into chemical core system -! - CALL CH_METEO_TRANS(JL, ZRHODREF, ZRT, ZTHT, ZABST, & - & ISVECNPT, ISVECMASK, TZM, IDAY,& - & IMONTH, IYEAR, PLAT, PLON, XLAT0, XLON0,& - & .TRUE., .TRUE., KLUOUT) - -!* 3.3 calculate reaction and photolysis rates -! - ZCHEM(:,:) = MAX(ZCHEM(:,:), 1E-40) - CALL CH_SET_RATES (ZTIME, ZCHEM, TZM, 1, KLUOUT, NVERB, ISVECNPT, NEQ) - - CALL CH_SET_PHOTO_RATES & - (ZTIME, ZCHEM, JL, TZM, 1, KLUOUT, NVERB, ISVECNPT, ISVECMASK, NEQ, ZJVALUES) -! -! -!* 3.4 solve chemical system for the timestep of the monitor -! - ZNEWCHEM(:,:) = 0. - ZOLDCHEM(:,:) = ZCHEM(:,:) - - DO JM = 1, NCH_SUBSTEPS - CALL CH_SOLVER_n & - (ZTIME, ZDTSOLVER, ZCHEM, ZNEWCHEM, NEQ, ISVECNPT, 1) - ZCHEM(:,:) = MAX(ZNEWCHEM(:,:), 1E-40) - END DO - -IF (LORILAM) THEN -! - ZSO4RAT(:) = (ZNEWCHEM(:,JP_CH_H2SO4) - ZOLDCHEM(:,JP_CH_H2SO4) ) / PTSTEP -! -!* 3.6 solve aerosol system - CALL CH_ORILAM(ZAERO,ZCHEM, ZM, ZSIG0, ZRG0, ZN0, ZCTOTG, ZCTOTA, ZCCTOT, & - PTSTEP, ZSEDA, ZMU, ZLAMBDA, ZRHOP0, ZOM, ZSO4RAT, & - ZRV, ZDENAIR,ZPRESSURE, ZTEMP, ZRC, ZFRAC, ZMI, ZTIME, & - CCH_SCHEME,ZSOLORG) -! -!* 3.7 return result to MesoNH scalar variables -! -DO JN = 1, NSV_AER -!Vectorization: -!ocl novrec -!cdir nodep - DO JM=0,ISVECNPT-1 - JI=JM-IDTI*(JM/IDTI)+ISVECMASK(1,JL) - JK=JM/(IDTI*IDTJ)-IDTK*(JM/(IDTI*IDTJ*IDTK))+ISVECMASK(5,JL) - PRSVS(JI,1,JK,NSV_AERBEG+JN-1) = ZAERO(JM+1,JN) / & - (PTSTEP * ZDEN2MOL * ZRHODREF(JI,1,JK)) - END DO - END DO -IF (NDIAG .GE. JPMODE*2) THEN -ZPEZDIAG(:,:,:) = 0. -ZMASS(:,:) = 0. -DO JN = 1, JPMODE - DO JSV=1,NSP+NCARB+NSOA - ZMASS(:,JN) = ZMASS(:,JN)+ZCTOTA(:,JSV,JN) - ENDDO -!Vectorization: -!ocl novrec -!cdir nodep - DO JM=0,ISVECNPT-1 - JI=JM-IDTI*(JM/IDTI)+ISVECMASK(1,JL) - JK=JM/(IDTI*IDTJ)-IDTK*(JM/(IDTI*IDTJ*IDTK))+ISVECMASK(5,JL) - ZPEZDIAG(JI,JK,JN) = ZN0(JM+1,JN) - IF (NDIAG .GT. (JPMODE+1)) ZPEZDIAG(JI,JK,JPMODE+JN) = ZRG0(JM+1,JN) - IF (NDIAG .GT. (JPMODE*2+1)) ZPEZDIAG(JI,JK,JPMODE*2+JN) = ZMASS(JM+1,JN) - END DO -END DO -PPEZDIAG(:,:,:) = 0. -DO JN = 1, NDIAG - DO JK=1,KLEV -! JK1=KLEV-JK - PPEZDIAG(:,JK,JN) = ZPEZDIAG(:,JK,JN) - ENDDO -ENDDO -END IF -! -END IF -! - -!* 3.5 return result to Arome scalar variables -! -DO JN = 1, NSV_CHEM -!Vectorization: -!ocl novrec -!cdir nodep - DO JM=0,ISVECNPT-1 - JI=JM-IDTI*(JM/IDTI)+ISVECMASK(1,JL) - JK=JM/(IDTI*IDTJ)-IDTK*(JM/(IDTI*IDTJ*IDTK))+ISVECMASK(5,JL) - PRSVS(JI,1,JK,NSV_CHEMBEG+JN-1) = ZCHEM(JM+1,JN) / & - (PTSTEP * ZDEN2MOL * ZRHODREF(JI,1,JK)) - END DO -END DO - -END DO -! -! -!* 4. REMOVE NEGATIVE VALUES -! ---------------------- -! -! no mass correction (mnh surcouche not included in arome) -PRSVS(:,:,:,NSV_CHEMBEG:NSV_CHEMEND) = MAX(0., PRSVS(:,:,:,NSV_CHEMBEG:NSV_CHEMEND)) -PRSVS(:,:,:,NSV_AERBEG:NSV_AEREND) = MAX(0., PRSVS(:,:,:,NSV_AERBEG:NSV_AEREND)) -! -!---------------------------------------------------------------------- -! -! -DEALLOCATE(TZM) -DEALLOCATE(ZCHEM) -DEALLOCATE(ZNEWCHEM) -DEALLOCATE(ZOLDCHEM) -IF (LORILAM) THEN - DEALLOCATE(ZAERO) - DEALLOCATE(ZM) - DEALLOCATE(ZSEDA) - DEALLOCATE(ZN0) - DEALLOCATE(ZRG0) - DEALLOCATE(ZSIG0) - DEALLOCATE(ZRHOP0) - DEALLOCATE(ZCTOTA) - DEALLOCATE(ZMASS) - DEALLOCATE(ZCCTOT) - DEALLOCATE(ZCTOTG) - DEALLOCATE(ZMU) - DEALLOCATE(ZLAMBDA) - DEALLOCATE(ZOM) - DEALLOCATE(ZSO4RAT) - DEALLOCATE(ZRV) - DEALLOCATE(ZRC) - DEALLOCATE(ZPRESSURE) - DEALLOCATE(ZTEMP) - DEALLOCATE(ZDENAIR) - DEALLOCATE(ZFRAC) - DEALLOCATE(ZMI) - DEALLOCATE(ZSOLORG) -END IF - -! -!------------------------------------------------------------------------------- -! -IF (LHOOK) CALL DR_HOOK('ARO_MNHC',1,ZHOOK_HANDLE) -END SUBROUTINE ARO_MNHC diff --git a/src/arome/chem/externals/aro_mnhdust.F90 b/src/arome/chem/externals/aro_mnhdust.F90 deleted file mode 100644 index 17aafc5b6248350761847ffebd0045a7baf6fdd4..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/aro_mnhdust.F90 +++ /dev/null @@ -1,277 +0,0 @@ -SUBROUTINE ARO_MNHDUST(KKL,KLON,KLEV,KSV,PTSTEP & - ,PSVTIN & !I [moments/molec_{air}] Transported moments of dust - ,PZZ & !I [m] height of layers - ,PDZZ & !I [m] height of layers - ,PPABST & !I Pressure - ,PTHT & !I Potential temperature - ,PRHODREF & !I [kg/m3] density of air - ,KSWB & !I [nbr] number of shortwave bands - ,KTCOUNT & !I number of time step - ,PSVT & !O [moments/molec_{air}] Transported moments of dust - ,PPIZA_WVL & !IO [-] single scattering albedo of dust layer for all SW wavelength - ,PCGA_WVL & !IO [-] assymetry factor for dust layer for all SW wavelength - ,PTAUREL_WVL & !IO [-] opt.depth/opt.depth(550) for dust layer for all SWwvl - ,PAER & !IO [-] ext coeff at 550 for dust layer - ,NDIAG & !I [-] nb of diagnostics - ,PPEZDIAG & !IO [-] diag Nb/m3,ug/m3,rg(nb;um),rg(m;um),SSA,assym,AOD/550,mode & wvl - ) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - -!*** *ARO_MNHDUST* -! -! PURPOSE -! ------- - -! Interface routine for initialisation of dust optical properties -! before radiation scheme call - -! AUTHOR. -! ------- -! Y. Seity (CNRM/GMAP) -! 10-10-05 - -! MODIFICATIONS -! ------------- -! P. Tulet 10/02/06 -! P. Tulet add scavenging 10/02/08 -! M. Mokhtari & A. Ambar 09/2016: inversion levels, call inv_levels.F90 -! -! EXTERNAL -! ------- - - - -USE MODE_DUSTOPT, ONLY: DUSTOPT_GET -USE MODE_DUST_PSD ! include PPP2DUST -USE MODI_INIT_DUST -USE MODI_SEDIM_DUST -USE MODD_DUST ! LDUST=.FALSE. ; NMODE_DST=3 -USE MODD_NSV, ONLY : NSV_DSTBEG, NSV_DSTEND -USE MODI_INV_LEVELS - IMPLICIT NONE - -!INPUT -INTEGER, INTENT(IN) :: KKL ! vertical levels ordering 1: MNH -1: ARPEGE -INTEGER, INTENT(IN) :: KLON ! NPROMA under CPG -INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels -INTEGER, INTENT(IN) :: KSV ! Number of passive scalar -INTEGER, INTENT(IN) :: KSWB ! Number of shortwave wavelengths -INTEGER, INTENT(IN) :: KTCOUNT ! Number of time step -REAL, INTENT(IN) :: PTSTEP ! Time step in s -REAL, DIMENSION(KLON,1,KLEV,KSV),INTENT(IN) :: PSVTIN !I [moments/molec_{air}] transported moments of dust -INTEGER, INTENT(IN) :: NDIAG ! nb of diagnostics -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PZZ !I [m] height of layers -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PDZZ !I [m] layers thikness -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PRHODREF !I [kg/m3] density of air -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PTHT !I [K] potentiel temperature -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PPABST !I [Pa] pressure - -!OUTPUT -REAL, DIMENSION(KLON,1,KLEV,KSV),INTENT(OUT) :: PSVT !O [moments/molec_{air}] transported moments of dust -REAL, DIMENSION(KLON,KLEV,KSWB),INTENT(INOUT) :: PPIZA_WVL !O [-] SSA of dust layer for all SW wvl -REAL, DIMENSION(KLON,KLEV,KSWB),INTENT(INOUT) :: PCGA_WVL !O [-] assym factor for dust layer for all SW -REAL, DIMENSION(KLON,KLEV,KSWB),INTENT(INOUT) :: PTAUREL_WVL !O [-] AOD/AOD(550) for dust layer for all SW -REAL, DIMENSION(KLON,KLEV,NDIAG),INTENT(INOUT) :: PPEZDIAG !O [-] Diagnostics table -REAL, DIMENSION(KLON,KLEV),INTENT(INOUT) :: PAER !O [-] AOD/AOD(550) for dust layer for all SW wvl -! -!* 0.2 Declarations of local variables : -INTEGER :: JLEV,JK,JK1,IMOD,INSWB,WVL_IDX -INTEGER :: IKE, JSV, JL -REAL :: ZSIGMIN -REAL, DIMENSION(KLON,1,KLEV+2,KSWB) :: ZPIZA_DST_TMP, ZCGA_DST_TMP, ZTAUREL_DST_TMP, & - & ZPIZAZ, ZCGAZ, ZTAUAZ -REAL, DIMENSION(KLON,1,KLEV+2,NMODE_DST) :: ZSIGDST, ZRGDST, ZNDST, & - & ZRGMDST, ZMDST -REAL, DIMENSION(KLON,1,KLEV+2) :: ZAER - -REAL, DIMENSION(KLON,KLEV,KSWB) :: ZPIZAZ_WVL -REAL, DIMENSION(KLON,KLEV,KSWB) :: ZCGAZ_WVL -REAL, DIMENSION(KLON,KLEV,KSWB) :: ZTAUAZ_WVL -REAL, DIMENSION(KLON,KLEV,NMODE_DST) :: ZRGDST_MOD -REAL, DIMENSION(KLON,KLEV,NMODE_DST) :: ZRGMDST_MOD -REAL, DIMENSION(KLON,KLEV,NMODE_DST) :: ZNDST_MOD -REAL, DIMENSION(KLON,KLEV,NMODE_DST) :: ZMDST_MOD -! -REAL,DIMENSION(KLON,1,KLEV+2) :: ZZZ ! Local value of PZZ -REAL,DIMENSION(KLON,1,KLEV+2) :: ZDZZ ! Local value of PDZZ -REAL,DIMENSION(KLON,1,KLEV+2) :: ZPABST ! Local value of ZPABST -REAL,DIMENSION(KLON,1,KLEV+2) :: ZTHT ! Local value of ZTHT -REAL,DIMENSION(KLON,1,KLEV+2) :: ZRHODREF ! Local value of ZRHODREF -REAL,DIMENSION(KLON,1,KLEV+2,KSV) :: ZSVT ! Local value of ZSVT -! -REAL,DIMENSION(KLON,1,KLEV) :: ZZPABST ! Local value of ZPABST -REAL,DIMENSION(KLON,1,KLEV) :: ZZTHT ! Local value of ZTHT -REAL,DIMENSION(KLON,1,KLEV) :: ZZRHODREF ! Local value of ZRHODREF -REAL,DIMENSION(KLON,1,KLEV,KSV) :: ZZSVT ! Local value of ZSVT -!-------------------------------------------------------------------- - - -! 1) Initialization of dust - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('ARO_MNHDUST',0,ZHOOK_HANDLE) -! -!* 1. PRELIMINARY COMPUTATIONS - !initialisation de ZZZ -DO JL = 1,KLON - DO JK = 2 , KLEV+1 - ZZZ(JL,1,JK)=PZZ(JL,1,KLEV+2-JK) - ENDDO - ZZZ(JL,1,1) = 2*ZZZ(JL,1,2)-ZZZ(JL,1,3) - ZZZ(JL,1,KLEV+2) = 2*ZZZ(JL,1,KLEV+1)-ZZZ(JL,1,KLEV) -ENDDO - !initialisation de ZDZZ -DO JL = 1,KLON - DO JK = 1 , KLEV+1 - ZDZZ(JL,1,JK)=ZZZ(JL,1,JK+1)-ZZZ(JL,1,JK) - ENDDO - ZDZZ(JL,1,KLEV+2)=ZZZ(JL,1,KLEV+2)-ZZZ(JL,1,KLEV+1) -ENDDO -! -ZZRHODREF(:,:,:) = PRHODREF(:,:,:) -ZZPABST(:,:,:) = PPABST(:,:,:) -ZZTHT(:,:,:) = PTHT(:,:,:) -ZZSVT(:,:,:,:) = PSVTIN(:,:,:,:) -! -CALL INV_LEVELS(1,KLON,KLEV,1,ZZRHODREF,ZRHODREF) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZPABST,ZPABST) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZTHT,ZTHT) -!initialisation de ZSVT -DO JSV=1,KSV -CALL INV_LEVELS(1,KLON,KLEV,1,ZZSVT(:,:,:,JSV),ZSVT(:,:,:,JSV)) -ENDDO -! -IF ((KTCOUNT == 1).AND.(LDSTINIT)) THEN - CALL INIT_DUST(ZSVT(:,:,:,NSV_DSTBEG:NSV_DSTEND), ZRHODREF) -END IF - -!Get dust optical properties from look up tables - - CALL DUSTOPT_GET( & - ZSVT(:,:,:,NSV_DSTBEG:NSV_DSTEND) & !I [ppp] Dust scalar concentration - ,ZZZ(:,:,:) & !I [m] height of layers - ,ZRHODREF(:,:,:) & !I [kg/m3] density of air - ,ZPIZA_DST_TMP & !O [-] single scattering albedo of dust - ,ZCGA_DST_TMP & !O [-] assymetry factor for dust - ,ZTAUREL_DST_TMP & !O [-] opt.depth(wvl=lambda)/opt.depth(wvl=550nm) - ,ZAER(:,:,:) & !O [-] optical depth of dust at wvl=550nm - ,KSWB & !I |nbr] number of shortwave bands - ) - -! Compute SSA, AOD, assymetry factor for clear sky (dust aerosols) - -ZTAUAZ(:,:,:,:)=0. -ZPIZAZ(:,:,:,:)=0. -ZCGAZ(:,:,:,:)=0. -DO WVL_IDX=1,KSWB -! Ponderation of aerosol optical depht in case of explicit factor -! ti - ZTAUAZ(:,:,:,WVL_IDX) = ZTAUAZ(:,:,:,WVL_IDX) + & - ZAER(:,:,:) * & - ZTAUREL_DST_TMP(:,:,:,WVL_IDX) -! wi*ti - ZPIZAZ(:,:,:,WVL_IDX) = ZPIZAZ(:,:,:,WVL_IDX) + & - ZAER(:,:,:) * & - ZTAUREL_DST_TMP(:,:,:,WVL_IDX) * & - ZPIZA_DST_TMP(:,:,:,WVL_IDX) -! gi*wi*ti - ZCGAZ(:,:,:,WVL_IDX) = ZCGAZ(:,:,:,WVL_IDX) + & - ZAER(:,:,:) * & - ZTAUREL_DST_TMP(:,:,:,WVL_IDX) * & - ZPIZA_DST_TMP(:,:,:,WVL_IDX) * & - ZCGA_DST_TMP(:,:,:,WVL_IDX) -ENDDO -! Ponderation of assymetry factor -ZCGAZ(:,:,:,:) = ZCGAZ(:,:,:,:) / ZPIZAZ(:,:,:,:) -! Ponderation of SSA -ZPIZAZ(:,:,:,:) = ZPIZAZ(:,:,:,:) / ZTAUAZ(:,:,:,:) - -! Compute and store Standard deviation, median radius, concentration of dust from moments - - CALL PPP2DUST (ZSVT(:,:,:,NSV_DSTBEG:NSV_DSTEND), & - ZRHODREF(:,:,:), & - ZSIGDST(:,:,:,:), & - ZRGDST(:,:,:,:), & - ZNDST(:,:,:,:)) -ZRGMDST(:,:,:,:)=0. -ZMDST(:,:,:,:)=0. -! Compute mass median radius in um in all dust mode -ZRGMDST(:,:,:,:) = ZRGDST(:,:,:,:) / (exp(-3.*(log(ZSIGDST(:,:,:,:)))**2)) -! Compute integrated mass concentration ug/m3 in all dust mode -ZMDST(:,:,:,:) = ZNDST(:,:,:,:)*4./3.*3.14*2500.*1e9 *& !kg-->ug - (ZRGDST(:,:,:,:)**3)*1.d-18 *& !um-->m - exp(4.5*log(ZSIGDST(:,:,:,:))*log(ZSIGDST(:,:,:,:))) - -!Transform from vector of type #lon #lat #lev #wvl or #mod -!to vectors of type #points, #inverted levs, #wavelengths or #modes - -JLEV = KLEV -ZTAUAZ_WVL(:,:,:)= 0. -ZPIZAZ_WVL(:,:,:)= 0. -ZCGAZ_WVL(:,:,:) = 0. -ZRGDST_MOD(:,:,:)= 0. -ZRGMDST_MOD(:,:,:)=0. -ZNDST_MOD(:,:,:) = 0. -ZMDST_MOD(:,:,:) = 0. - - -DO JK=1,JLEV - JK1=JLEV+2-JK - PPIZA_WVL(:,JK,:) = ZPIZA_DST_TMP(:,1,JK1,:) - PCGA_WVL(:,JK,:) = ZCGA_DST_TMP(:,1,JK1,:) - PTAUREL_WVL(:,JK,:) = ZTAUREL_DST_TMP(:,1,JK1,:) - PAER(:,JK) = ZAER(:,1,JK1) - ZPIZAZ_WVL(:,JK,:) = ZPIZAZ(:,1,JK1,:) - ZCGAZ_WVL(:,JK,:) = ZCGAZ(:,1,JK1,:) - ZTAUAZ_WVL(:,JK,:) = ZTAUAZ(:,1,JK1,:) - ZRGDST_MOD(:,JK,:) = ZRGDST(:,1,JK1,:) - ZRGMDST_MOD(:,JK,:) = ZRGMDST(:,1,JK1,:) - ZNDST_MOD(:,JK,:) = ZNDST(:,1,JK1,:) - ZMDST_MOD(:,JK,:) = ZMDST(:,1,JK1,:) -ENDDO - -! somme on every mode (different dust diameter) - -IF (SIZE(PPEZDIAG, 3) .GE. 4) THEN -PPEZDIAG(:,:,1:4) = 0. -DO IMOD = 1,NMODE_DST ! NMODE_DST!=3 ! PPEZDIAG<25 - PPEZDIAG(:,:,1) = PPEZDIAG(:,:,1) + ZNDST_MOD(:,:,IMOD) ! Nb/m3 - PPEZDIAG(:,:,2) = PPEZDIAG(:,:,2) + ZMDST_MOD(:,:,IMOD) ! Mass(ug)/m3 - PPEZDIAG(:,:,3) = PPEZDIAG(:,:,3) + ZRGDST_MOD(:,:,IMOD) ! RG nb (um) - PPEZDIAG(:,:,4) = PPEZDIAG(:,:,4) + ZRGMDST_MOD(:,:,IMOD) ! RG m (um) -ENDDO -END IF -IF (SIZE(PPEZDIAG, 3) .GE. 7) THEN -! somme on every level (integreted value) -PPEZDIAG(:,:,5:7) = 0. -DO JK=1,JLEV -! to have lwv=550nm : NSWB = 3 !NSWB!=6 ! PPEZDIAG<25 - PPEZDIAG(:,1,5) = PPEZDIAG(:,1,5) + ZPIZAZ_WVL(:,JK,3) ! SSA(550) - PPEZDIAG(:,1,6) = PPEZDIAG(:,1,6) + ZCGAZ_WVL(:,JK,3) ! assymetry(550) - PPEZDIAG(:,1,7) = PPEZDIAG(:,1,7) + ZTAUAZ_WVL(:,JK,3) ! AOD/AOD(550) -ENDDO -DO JK=1,JLEV - PPEZDIAG(:,JK,5) = PPEZDIAG(:,1,5) - PPEZDIAG(:,JK,6) = PPEZDIAG(:,1,6) - PPEZDIAG(:,JK,7) = PPEZDIAG(:,1,7) -ENDDO -END IF - -IF (LSEDIMDUST) THEN - IKE = KLEV+2 - CALL SEDIM_DUST(ZTHT(:,:,1:IKE), PTSTEP, & - ZRHODREF(:,:,1:IKE), & - ZPABST(:,:,1:IKE), & - ZDZZ(:,:,1:IKE), & - ZSVT(:,:,1:IKE,NSV_DSTBEG:NSV_DSTEND)) -ENDIF -!return to aladin/arome ZSVT -DO JSV=1,KSV -CALL INV_LEVELS(1,KLON,KLEV,-1,PSVT(:,:,:,JSV),ZSVT(:,:,:,JSV)) -ENDDO -! -IF (LHOOK) CALL DR_HOOK('ARO_MNHDUST',1,ZHOOK_HANDLE) -END SUBROUTINE ARO_MNHDUST - diff --git a/src/arome/chem/externals/aro_rainaero.F90 b/src/arome/chem/externals/aro_rainaero.F90 deleted file mode 100644 index d111cdc1b29494fb1b73541932993adbee56aa84..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/aro_rainaero.F90 +++ /dev/null @@ -1,233 +0,0 @@ - -SUBROUTINE ARO_RAINAERO(KLON,KLEV,NSV,KRR,PTSTEP & - ,PSVTIN & !I [moments/molec_{air}] Transported moments of dust - ,PZZ & !I [m] height of layers - ,PPABST & ! Pressure - ,PTHT & ! Potential temperature - ,PRHODREF & !I [kg/m3] density of air - ,KTCOUNT & ! number of time step - ,PRT & ! moist field - ,PEVAP & ! evaporation profile - ,KSPLITR & ! rain sedimentation time splitting - ,PSVT & !O [moments/molec_{air}] Transported moments of dust - ) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - -! -!*** *ARO_RAINAERO* -! -! PURPOSE -! ------- - -! Interface routine for aerosol scavenging - -! AUTHOR. -! ------- -! P. Tulet -! 10-03-08 - -! MODIFICATIONS -! ------------- -! M. Mokhtari & A. Ambar 09/2016: inversion levels, call inv_levels.F90 -! -! EXTERNAL -! ------- - - - -USE MODI_AER_WET_DEP_KMT_WARM -USE MODD_DUST -USE MODD_CSTS_DUST -USE MODD_CST -USE MODD_NSV, ONLY : NSV_DSTBEG, NSV_DSTEND, & - NSV_DSTDEPBEG, NSV_DSTDEPEND -USE MODE_DUST_PSD -USE MODI_INV_LEVELS - IMPLICIT NONE - -!INPUT -INTEGER, INTENT(IN) :: KLON ! NPROMA under CPG -INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels -INTEGER, INTENT(IN) :: NSV ! Number of passive scalar -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -REAL, INTENT(IN) :: PTSTEP ! Time step - -REAL, DIMENSION(KLON,1,KLEV,NSV),INTENT(IN) :: PSVTIN -REAL, DIMENSION(KLON,1,KLEV,KRR), INTENT(IN) :: PRT ! Moist variables at time t - !I [moments/molec_{air}] transported moments of dust -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PZZ !I [m] height of layers -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PRHODREF !I [kg/m3] density of air -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PTHT !I [K] potentiel temperature -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PPABST !I [Pa] pressure -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PEVAP !I Evaporation -INTEGER, INTENT(IN) :: KTCOUNT ! Number of time step -INTEGER, INTENT(IN) :: KSPLITR ! Rain sedimentation time spliting -REAL, DIMENSION(KLON,1,KLEV,NSV),INTENT(OUT) :: PSVT - -INTEGER :: JLEV, JL, JK,JK1, IMODEIDX -INTEGER :: II, IKE, JSV, JRR -REAL :: ZSIGMIN -! local variable -REAL, DIMENSION(:), ALLOCATABLE :: ZMASSMIN, ZINIRADIUS -REAL,DIMENSION(KLON,1,KLEV+2) :: ZZZ ! Local value of PZZ -REAL,DIMENSION(KLON,1,KLEV+2) :: ZPABST ! Local value of ZPABST -REAL,DIMENSION(KLON,1,KLEV+2) :: ZTHT ! Local value of ZTHT -REAL,DIMENSION(KLON,1,KLEV+2) :: ZRHODREF ! Local value of ZRHODREF -REAL,DIMENSION(KLON,1,KLEV+2) :: ZEVAP ! Evaporation -REAL,DIMENSION(KLON,1,KLEV+2,KRR) :: ZRT ! Moist variables at time t -REAL,DIMENSION(KLON,1,KLEV+2,NSV) :: ZSVT ! Local value of ZSVT -! -REAL,DIMENSION(KLON,1,KLEV) :: ZZPABST ! Local value of ZPABST -REAL,DIMENSION(KLON,1,KLEV) :: ZZTHT ! Local value of ZTHT -REAL,DIMENSION(KLON,1,KLEV) :: ZZRHODREF ! Local value of ZRHODREF -REAL,DIMENSION(KLON,1,KLEV) :: ZZEVAP !I Evaporation -REAL,DIMENSION(KLON,1,KLEV,KRR) :: ZZRT ! Moist variables at time t -REAL,DIMENSION(KLON,1,KLEV,NSV) :: ZZSVT ! Local value of ZSVT -! -REAL, DIMENSION(KLON,1,KLEV+2,NMODE_DST) :: ZSIGDST, ZRGDST, ZNDST,ZVMASSMIN -REAL, DIMENSION(KLON,1,KLEV+2,NMODE_DST*3) :: ZSVDST -!-------------------------------------------------------------------- - - -! 1) Initialization of aerosols acqueous variables - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('ARO_RAINAERO',0,ZHOOK_HANDLE) -! -ALLOCATE(ZMASSMIN(NMODE_DST)) -ALLOCATE(ZINIRADIUS(NMODE_DST)) -! -!* 1. PRELIMINARY COMPUTATIONS -!* INVERS LEVEL FOR AROME - !initialisation de ZZZ -DO JL = 1,KLON - DO JK = 2 , KLEV+1 - ZZZ(JL,1,JK)=PZZ(JL,1,KLEV+2-JK) - ENDDO - ZZZ(JL,1,1) = 2*ZZZ(JL,1,2)-ZZZ(JL,1,3) - ZZZ(JL,1,KLEV+2) = 2*ZZZ(JL,1,KLEV+1)-ZZZ(JL,1,KLEV) -ENDDO -! -ZZRHODREF(:,:,:) = PRHODREF(:,:,:) -ZZPABST(:,:,:) = PPABST(:,:,:) -ZZTHT(:,:,:) = PTHT(:,:,:) -ZZEVAP(:,:,:) = PEVAP(:,:,:) -ZZRT(:,:,:,:) = PRT(:,:,:,:) -ZZSVT(:,:,:,:) = PSVTIN(:,:,:,:) -ZSVDST(:,:,:,:) = 0. -! -CALL INV_LEVELS(1,KLON,KLEV,1,ZZRHODREF,ZRHODREF) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZPABST,ZPABST) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZTHT,ZTHT) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZEVAP,ZEVAP) -! -DO JSV=1,NSV - CALL INV_LEVELS(1,KLON,KLEV,1,ZZSVT(:,:,:,JSV),ZSVT(:,:,:,JSV)) -ENDDO -! -DO JRR=1,KRR - CALL INV_LEVELS(1,KLON,KLEV,1,ZZRT(:,:,:,JRR),ZRT(:,:,:,JRR)) -ENDDO -!STEP 1 -IF (KTCOUNT == 1) THEN - ZSVT(:,:,:,NSV_DSTDEPBEG:NSV_DSTDEPEND) = 0. -END IF -! 3.1 Minimum mass to transfer between dry mass or in-cloud droplets - -DO JSV=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JSV) - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS(JSV) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JSV) = XINIRADIUS(IMODEIDX) - END IF - IF (LVARSIG) THEN - ZSIGMIN = XSIGMIN - ELSE - ZSIGMIN = XINISIG(IMODEIDX) - ENDIF - ZMASSMIN(JSV) = XN0MIN(IMODEIDX) * (ZINIRADIUS(JSV)**3)*EXP(4.5 * LOG(ZSIGMIN)**2) -! volume/um3 => #/molec_{air} - ZVMASSMIN(:,:,:,JSV)= ZMASSMIN(JSV) * XMD * XPI * 4./3. * XDENSITY_DUST / & - (XMOLARWEIGHT_DUST*XM3TOUM3*ZRHODREF(:,:,:)) -ENDDO - -! -! 3.3 Compute and store Standard deviation and mean radius -! from moments - CALL PPP2DUST(ZSVT(:,:,:,NSV_DSTBEG:NSV_DSTEND), & - ZRHODREF(:,:,:), & - ZSIGDST(:,:,:,:), & - ZRGDST(:,:,:,:), & - ZNDST(:,:,:,:)) - -! 3.4 Compute acquous aerosol mass vector from moment scalar vector -! - DO JSV= 1, NMODE_DST - IF (LVARSIG) THEN - ZSVDST(:,:,:,JSV) = ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*3) - ELSE IF (LRGFIX_DST) THEN - ZSVDST(:,:,:,JSV) = ZSVT(:,:,:,NSV_DSTBEG+JSV-1) - ELSE - ZSVDST(:,:,:,JSV) = ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*2) - ENDIF - ENDDO - DO JSV=1,2*NMODE_DST - ZSVDST(:,:,:,NMODE_DST+JSV) = ZSVT(:,:,:,NSV_DSTDEPBEG-1+JSV) - ENDDO - -! One moment cloud scheme - CALL AER_WET_DEP_KMT_WARM (KSPLITR, & - PTSTEP, & - ZZZ(:,:,:), & - ZRHODREF(:,:,:), & - ZRT(:,:,:,2), & - ZRT(:,:,:,3), & - ZRT(:,:,:,2), & - ZRT(:,:,:,3), & - ZSVDST(:,:,:,:), & - ZTHT(:,:,:), & - ZPABST(:,:,:), & - ZRGDST(:,:,:,:), & - ZEVAP(:,:,:), & - NMODE_DST, & - XDENSITY_DUST, & - ZVMASSMIN ) - -! Compute return to moment vector - - DO JSV=1,NMODE_DST - IF (LVARSIG) THEN - ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*3) = ZSVDST(:,:,:,JSV) - ELSE IF (LRGFIX_DST) THEN - ZSVT(:,:,:,NSV_DSTBEG+JSV-1) = ZSVDST(:,:,:,JSV) - ELSE - ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*2) = ZSVDST(:,:,:,JSV) - ENDIF - ENDDO - -! Return to lognormal distribution (compute M0 and M6 using RG, SIG and -! new mass from M3) - - CALL DUST2PPP(ZSVT(:,:,:,NSV_DSTBEG:NSV_DSTEND), & - ZRHODREF(:,:,:), & - ZSIGDST(:,:,:,:), & - ZRGDST(:,:,:,:)) - - DO JSV=1,2*NMODE_DST - ZSVT(:,:,:,NSV_DSTDEPBEG-1+JSV) = ZSVDST(:,:,:,NMODE_DST+JSV) - ENDDO -! Return to aladin/arome -DO JSV=1,NSV - CALL INV_LEVELS(1,KLON,KLEV,-1,PSVT(:,:,:,JSV),ZSVT(:,:,:,JSV)) -ENDDO -! - DEALLOCATE(ZINIRADIUS) - DEALLOCATE(ZMASSMIN) -! -IF (LHOOK) CALL DR_HOOK('ARO_RAINAERO',1,ZHOOK_HANDLE) -END SUBROUTINE ARO_RAINAERO - diff --git a/src/arome/chem/externals/aro_wetdep.F90 b/src/arome/chem/externals/aro_wetdep.F90 deleted file mode 100644 index 486e20094fb0b7bf6a3027de2e4c5507f918a664..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/aro_wetdep.F90 +++ /dev/null @@ -1,231 +0,0 @@ - -SUBROUTINE ARO_WETDEP(KLON,KLEV,NSV,KRR,PTSTEP & - ,PSVT & !I [moments/molec_{air}] Transported moments of dust - ,PZZ & !I [m] height of layers - ,PPABST & ! Pressure - ,PTHT & ! Potential temperature - ,PRHODREF & !I [kg/m3] density of air - ,KTCOUNT & ! number of time step - ,PRT & ! moist field - ,PEVAP & ! evaporation profile - ,KSPLITR & ! rain sedimentation time splitting - ) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! -!*** *ARO_WETDEP* -! -! PURPOSE -! ------- - -! Interface routine for aerosol scavenging - -! AUTHOR. -! ------- -! P. Tulet -! 10-03-08 - -! MODIFICATIONS -! ------------- -! 01-02-2011 M. Mokhtari : Adaptation of ARO_RAINAERO under ARO_WETDEP for Aladin -! M. Mokhtari & A. Ambar 09/2016: inversion levels, call inv_levels.F90 -! -! EXTERNAL -! ------- - - - -USE MODI_AER_WET_DEP -USE MODD_DUST -USE MODD_CSTS_DUST -USE MODD_CST -USE MODD_NSV, ONLY : NSV_DSTBEG, NSV_DSTEND, & - NSV_DSTDEPBEG, NSV_DSTDEPEND -USE MODE_DUST_PSD -USE MODI_INV_LEVELS - - IMPLICIT NONE - -!INPUT -INTEGER, INTENT(IN) :: KLON ! NPROMA under CPG -INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels -INTEGER, INTENT(IN) :: NSV ! Number of passive scalar -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -REAL, INTENT(IN) :: PTSTEP ! Time step - -REAL, DIMENSION(KLON,1,KLEV,NSV),INTENT(INOUT) :: PSVT -REAL, DIMENSION(KLON,1,KLEV,KRR), INTENT(IN) :: PRT ! Moist variables at time t - !I [moments/molec_{air}] transported moments of dust -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PZZ !I [m] height of layers -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PRHODREF !I [kg/m3] density of air -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PTHT !I [K] potentiel temperature -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PPABST !I [Pa] pressure -REAL, DIMENSION(KLON,1,KLEV),INTENT(IN) :: PEVAP !I Evaporation -INTEGER, INTENT(IN) :: KTCOUNT ! Number of time step -INTEGER, INTENT(IN) :: KSPLITR ! Rain sedimentation time spliting - -INTEGER :: JLEV,JK, JL, JK1, IMODEIDX -INTEGER :: II, IKE, JSV, JRR -REAL :: ZSIGMIN -! local variable -REAL, DIMENSION(:), ALLOCATABLE :: ZMASSMIN, ZINIRADIUS -REAL,DIMENSION(KLON,1,KLEV+2) :: ZZZ ! Local value of PZZ -REAL,DIMENSION(KLON,1,KLEV+2) :: ZPABST ! Local value of ZPABST -REAL,DIMENSION(KLON,1,KLEV+2) :: ZTHT ! Local value of ZTHT -REAL,DIMENSION(KLON,1,KLEV+2) :: ZRHODREF ! Local value of ZRHODREF -REAL,DIMENSION(KLON,1,KLEV+2) :: ZEVAP ! Evaporation -REAL,DIMENSION(KLON,1,KLEV+2,KRR) :: ZRT ! Moist variables at time t -REAL,DIMENSION(KLON,1,KLEV+2,NSV) :: ZSVT ! Local value of ZSVT -! -REAL,DIMENSION(KLON,1,KLEV) :: ZZPABST ! Local value of ZPABST -REAL,DIMENSION(KLON,1,KLEV) :: ZZTHT ! Local value of ZTHT -REAL,DIMENSION(KLON,1,KLEV) :: ZZRHODREF ! Local value of ZRHODREF -REAL,DIMENSION(KLON,1,KLEV) :: ZZEVAP !I Evaporation -REAL,DIMENSION(KLON,1,KLEV,KRR) :: ZZRT ! Moist variables at time t -REAL,DIMENSION(KLON,1,KLEV,NSV) :: ZZSVT ! Local value of ZSVT -! -REAL, DIMENSION(KLON,1,KLEV+2,NMODE_DST) :: ZSIGDST, ZRGDST, ZNDST,ZVMASSMIN -REAL, DIMENSION(KLON,1,KLEV+2,NMODE_DST*3) :: ZSVDST -!-------------------------------------------------------------------- - -! 1) Initialization of aerosols acqueous variables -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('ARO_WETDEP',0,ZHOOK_HANDLE) - -ALLOCATE(ZMASSMIN(NMODE_DST)) -ALLOCATE(ZINIRADIUS(NMODE_DST)) - -! -!* 1. PRELIMINARY COMPUTATIONS -!* INVERS LEVEL FOR AROME - !initialisation de ZZZ -DO JL = 1,KLON - DO JK = 2 , KLEV+1 - ZZZ(JL,1,JK)=PZZ(JL,1,KLEV+2-JK) - ENDDO - ZZZ(JL,1,1) = 2*ZZZ(JL,1,2)-ZZZ(JL,1,3) - ZZZ(JL,1,KLEV+2) = 2*ZZZ(JL,1,KLEV+1)-ZZZ(JL,1,KLEV) -ENDDO -! -ZZRHODREF(:,:,:) = PRHODREF(:,:,:) -ZZPABST(:,:,:) = PPABST(:,:,:) -ZZTHT(:,:,:) = PTHT(:,:,:) -ZZEVAP(:,:,:) = PEVAP(:,:,:) -ZZRT(:,:,:,:) = PRT(:,:,:,:) -ZZSVT(:,:,:,:) = PSVT(:,:,:,:) -ZSVDST(:,:,:,:) = 0. -! -CALL INV_LEVELS(1,KLON,KLEV,1,ZZRHODREF,ZRHODREF) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZPABST,ZPABST) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZTHT,ZTHT) -CALL INV_LEVELS(1,KLON,KLEV,1,ZZEVAP,ZEVAP) -! -DO JSV=1,NSV - CALL INV_LEVELS(1,KLON,KLEV,1,ZZSVT(:,:,:,JSV),ZSVT(:,:,:,JSV)) -ENDDO -! -DO JRR=1,KRR - CALL INV_LEVELS(1,KLON,KLEV,1,ZZRT(:,:,:,JRR),ZRT(:,:,:,JRR)) -ENDDO - -IF (KTCOUNT == 1) THEN - ZSVT(:,:,:,NSV_DSTDEPBEG:NSV_DSTDEPEND) = 0. -END IF - -! 3.1 Minimum mass to transfer between dry mass or in-cloud droplets - -DO JSV=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JSV) - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS(JSV) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JSV) = XINIRADIUS(IMODEIDX) - END IF - IF (LVARSIG) THEN - ZSIGMIN = XSIGMIN - ELSE - ZSIGMIN = XINISIG(IMODEIDX) - ENDIF - ZMASSMIN(JSV) = XN0MIN(IMODEIDX) * (ZINIRADIUS(JSV)**3)*EXP(4.5 * LOG(ZSIGMIN)**2) -! volume/um3 => #/molec_{air} - ZVMASSMIN(:,:,:,JSV)= ZMASSMIN(JSV) * XMD * XPI * 4./3. * XDENSITY_DUST / & - (XMOLARWEIGHT_DUST*XM3TOUM3*ZRHODREF(:,:,:)) -ENDDO - -! -! 3.3 Compute and store Standard deviation and mean radius -! from moments - CALL PPP2DUST(ZSVT(:,:,:,NSV_DSTBEG:NSV_DSTEND), & - ZRHODREF(:,:,:), & - ZSIGDST(:,:,:,:), & - ZRGDST(:,:,:,:), & - ZNDST(:,:,:,:)) - -! 3.4 Compute acquous aerosol mass vector from moment scalar vector -! - DO JSV= 1, NMODE_DST - IF (LVARSIG) THEN - ZSVDST(:,:,:,JSV) = ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*3) - ELSE IF (LRGFIX_DST) THEN - ZSVDST(:,:,:,JSV) = ZSVT(:,:,:,NSV_DSTBEG+JSV-1) - ELSE - ZSVDST(:,:,:,JSV) = ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*2) - ENDIF - ENDDO - DO JSV=1,2*NMODE_DST - ZSVDST(:,:,:,NMODE_DST+JSV) = ZSVT(:,:,:,NSV_DSTDEPBEG-1+JSV) - ENDDO - -! One moment cloud scheme - CALL AER_WET_DEP (KSPLITR, & - PTSTEP, & - ZZZ(:,:,:), & - ZRHODREF(:,:,:), & - ZRT(:,:,:,2), & - ZRT(:,:,:,3), & - ZRT(:,:,:,2), & - ZRT(:,:,:,3), & - ZSVDST(:,:,:,:), & - ZTHT(:,:,:), & - ZPABST(:,:,:), & - ZRGDST(:,:,:,:), & - ZEVAP(:,:,:), & - NMODE_DST, & - XDENSITY_DUST, & - ZVMASSMIN ) - -! Compute return to moment vector - - DO JSV=1,NMODE_DST - IF (LVARSIG) THEN - ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*3) = ZSVDST(:,:,:,JSV) - ELSE IF (LRGFIX_DST) THEN - ZSVT(:,:,:,NSV_DSTBEG+JSV-1) = ZSVDST(:,:,:,JSV) - ELSE - ZSVT(:,:,:,NSV_DSTBEG+1+(JSV-1)*2) = ZSVDST(:,:,:,JSV) - ENDIF - ENDDO - -! Return to lognormal distribution (compute M0 and M6 using RG, SIG and -! new mass from M3) - - CALL DUST2PPP(ZSVT(:,:,:,NSV_DSTBEG:NSV_DSTEND), & - ZRHODREF(:,:,:), & - ZSIGDST(:,:,:,:), & - ZRGDST(:,:,:,:)) - - DO JSV=1,2*NMODE_DST - ZSVT(:,:,:,NSV_DSTDEPBEG-1+JSV) = ZSVDST(:,:,:,NMODE_DST+JSV) - ENDDO - -! Return to aladin/arome -DO JSV=1,NSV - CALL INV_LEVELS(1,KLON,KLEV,-1,PSVT(:,:,:,JSV),ZSVT(:,:,:,JSV)) -ENDDO - - DEALLOCATE(ZINIRADIUS) - DEALLOCATE(ZMASSMIN) - -IF (LHOOK) CALL DR_HOOK('ARO_WETDEP',1,ZHOOK_HANDLE) -END SUBROUTINE ARO_WETDEP - diff --git a/src/arome/chem/externals/aroini_mnhc.F90 b/src/arome/chem/externals/aroini_mnhc.F90 deleted file mode 100644 index 21e4554fc9ef631a672e205a23cda31efce9b9e5..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/aroini_mnhc.F90 +++ /dev/null @@ -1,207 +0,0 @@ -!! ############################## - SUBROUTINE AROINI_MNHC(OUSECHEM, OORILAM, ODUST, ODEPOS,& - OINITCHEM, OINITDUST, OINITORILAM,& - KDAY, KMONTH, KYEAR,& - KLUOUT, KPROC) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################## -!! -!!*** *AROINI_MNHC* -!! -!! PURPOSE -!! ------- -! initialize chemical variables -! initialize chemical core system -!! -!! -!! AUTHOR -!! ------ -!! P. Tulet *CNRM / GMEI* and contributors of MesoNH-C (K. Shure, C. Mari, V. Crassier) -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/04/05 -!! -!! EXTERNAL -!! -------- -USE MODI_CH_INIT_SCHEME -USE MODI_CH_INIT_CCS -USE MODI_CH_INIT_JVALUES -USE MODI_CH_AER_INIT_SOA -USE MODI_CH_AER_MOD_INIT -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CONF, ONLY: CCONF -USE MODD_CH_M9 -USE MODD_CH_MNHC_n -USE MODD_CH_SOLVER_n -USE MODD_CH_AERO_n -USE MODD_CH_AEROSOL -USE MODD_DUST -USE MODE_DUSTOPT - -!! -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -LOGICAL, INTENT(IN) :: OUSECHEM -LOGICAL, INTENT(IN) :: ODUST -LOGICAL, INTENT(IN) :: OORILAM -LOGICAL, INTENT(IN) :: OINITCHEM -LOGICAL, INTENT(IN) :: OINITDUST -LOGICAL, INTENT(IN) :: OINITORILAM -LOGICAL, INTENT(IN) :: ODEPOS -INTEGER, INTENT(IN) :: KLUOUT ! output listing channel -INTEGER, INTENT(IN) :: KYEAR ! year of initialization -INTEGER, INTENT(IN) :: KMONTH ! month of initialization -INTEGER, INTENT(IN) :: KDAY ! day of initialization -INTEGER, INTENT(IN) :: KPROC ! proc number - -! -!* 0.2 pointer to model 1 -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AROINI_MNHC',0,ZHOOK_HANDLE) -CALL CH_MNHC_GOTO_MODEL(1, 1) -CALL CH_SOLVER_GOTO_MODEL(1, 1) -CALL CH_AERO_GOTO_MODEL(1, 1) -!------------------------------------------------------------------------------- -! -! -!* 0. PROLOGUE (default chemical namelist ) -! -------- -! 0.1 MODD_CH_MNHC_n - -LUSECHEM = OUSECHEM -LCH_INIT_FIELD = OINITCHEM -LCH_SURFACE_FLUX = .TRUE. -LCH_CONV_SCAV = .FALSE. -CCH_EXPLICIT_SCAV = 'NONE' -CCHEM_INPUT_FILE = 'chimie.nam' -CCH_TDISCRETIZATION = 'SPLIT' ! not use in AROME -NCH_SUBSTEPS = 5 -LCH_TUV_ONLINE = .FALSE. -CCH_TUV_LOOKUP = 'PHOTO.TUV39' -CCH_TUV_CLOUDS = 'NONE' -XCH_TUV_ALBNEW = 0.02 -XCH_TUV_DOBNEW = 320. -XCH_TUV_TUPDATE = 1200. -CCH_VEC_METHOD = 'HOR' -NCH_VEC_LENGTH = 1000 ! not use in AROME -XCH_TS1D_TSTEP = 600. ! not use in AROME -CCH_TS1D_COMMENT = 'no comment' ! not use in AROME -CCH_TS1D_FILENAME = 'IO1D' ! not use in AROME -CCH_SCHEME = 'ReLACS' - -! 0.2 MODD_CH_SOLVER_n - -CSOLVER = 'EXQSSA' ! default values of each solver can be found/modified in MODD_CH_SOLVER_n -XSLOW = 100. -XFAST = 0.1 -XDTMIN = 10. -XDTMAX = 10. -XDTFIRST = 10. -XRTOL = 0.001 -XATOL = 1E2 - -! 0.3 MODD_CH_AEROSOL - -LORILAM = OORILAM -CRGUNIT = 'NUMB' ! type of log-normal geometric mean radius given -! ! in nameliste (mass on number) - -LVARSIGI = .FALSE. ! switch to active pronostic dispersion for I mode -LVARSIGJ = .FALSE. ! switch to active pronostic dispersion for J mode -LHETEROSO4 = .FALSE. ! switch to active sulfates heteronegeous production -LSEDIMAERO = .FALSE. ! switch to active aerosol sedimentation -LAERINIT = OINITORILAM ! switch to active thermodynamics - ! mineral equilibrium for each mode -XN0IMIN = 10. ! minimum particule number value for I mode -XN0JMIN = 1. ! minimum particule number value for J mode -XINIRADIUSI= 0.05 ! mean radius initialization for I mode (um) -XINIRADIUSJ= 0.2 ! mean radius initialization for J mode (um) -XINISIGI = 1.8 ! dispersion initialization for I mode -XINISIGJ = 2.0 ! dispersion initialization for J mode -XSIGIMIN = 1.20 ! minimum dispersion value for I mode -XSIGJMIN = 1.20 ! minimum dispersion value for J mode -XSIGIMAX = 3.60 ! maximum dispersion value for I mode -XSIGJMAX = 3.60 ! maximum dispersion value for J mode -XCOEFRADIMAX = 10. ! maximum increasement for Rg mode I -XCOEFRADIMIN = 0.1 ! maximum decreasement for Rg mode I -XCOEFRADJMAX = 10. ! maximum increasement for Rg mode J -XCOEFRADJMIN = 0.1 ! maximum decreasement for Rg mode J -CMINERAL = "EQSAM" ! mineral equilibrium scheme -CORGANIC = "NONE" ! organic equilibrium scheme -CNUCLEATION = "NONE" ! sulfates nucleation scheme - -! 0.4 MODD_DUST - -LDUST = ODUST -LDSTINIT = OINITDUST -LVARSIG = .FALSE. ! switch to active pronostic dispersion for all modes -LSEDIMDUST = .FALSE. ! switch to active aerosol sedimentation -XSIGMIN = 1.20 ! minimum dispersion value for dust mode -XSIGMAX = 3.60 ! maximum dispersion value for dust mode -XCOEFRADMAX = 10. ! maximum increasement for Rg mode dust -XCOEFRADMIN = 0.1 ! maximum decreasement for Rg mode dust - -LDEPOS_DST(:) = ODEPOS - -IF (LUSECHEM) THEN -!* 1.1 INITIALIZE CHEMICAL CORE SYSTEM -! ------------------------------- - -! - CALL CH_INIT_SCHEME(KLUOUT) - CALL CH_INIT_CCS(NEQ, KLUOUT, 5) - CCH_SCHEME = "NONE" - -! -! -! -!------------------------------------------------------------------------------- -! -!* 1.2 INITIALIZE JVALUES -! ------------------ - CALL CH_INIT_JVALUES(KDAY, KMONTH, KYEAR, KLUOUT) -! -END IF - -!------------------------------------------------------------------------------- -! -!* 2. INITIALIZE SOA -! --------------- -IF ((LUSECHEM).AND.(LORILAM)) THEN - CALL CH_AER_INIT_SOA(KLUOUT, 5) - CALL CH_AER_MOD_INIT -END IF - - -!* 3. Read in look up tables of dust optical properties -! ------------------------------------------------- -IF (LDUST) THEN - CALL DUST_OPT_LKT_SET1() - CALL DUST_OPT_LKT_SET2() - CALL DUST_OPT_LKT_SET3() - CALL DUST_OPT_LKT_SET4() - CALL DUST_OPT_LKT_SET5() - CALL DUST_OPT_LKT_SET6() - CALL DUST_OPT_LKT_SET7() - CALL DUST_OPT_LKT_SET8() - CALL DUST_OPT_LKT_SET9() - CALL DUST_OPT_LKT_SET10() -ENDIF - -!------------------------------------------------------------------------------- -! - -IF (LHOOK) CALL DR_HOOK('AROINI_MNHC',1,ZHOOK_HANDLE) -END SUBROUTINE AROINI_MNHC diff --git a/src/arome/chem/externals/aroini_nsv.F90 b/src/arome/chem/externals/aroini_nsv.F90 deleted file mode 100644 index 7381ea002ceeee7dc0de05a1ce4f5eff52532bc9..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/aroini_nsv.F90 +++ /dev/null @@ -1,153 +0,0 @@ -!! ############################## - SUBROUTINE AROINI_NSV(KSV,KSV_CHEMBEG, KSV_CHEMEND, KSV_AERBEG, KSV_AEREND, & - KSV_DSTBEG, KSV_DSTEND,KSV_DSTDEPBEG, KSV_DSTDEPEND,& - KSV_CO2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################## -!! -!!*** *AROINI_MNHC* -!! -!! PURPOSE -!! ------- -! initialize nsv -!! -!! -!! AUTHOR -!! ------ -!! P. Tulet *CNRM / GMEI* -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/04/05 -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_NSV -USE MODD_CH_AEROSOL, ONLY : LORILAM, CAERONAMES, LVARSIGI, LVARSIGJ, NM6_AER -USE MODD_CH_MNHC_n, ONLY : LUSECHEM -USE MODD_CH_M9, ONLY : CNAMES -USE MODD_DUST -IMPLICIT NONE -! -!* 0. Declarations of arguments -! -INTEGER, INTENT(IN) :: KSV,KSV_CHEMBEG, KSV_CHEMEND, KSV_AERBEG, KSV_AEREND, & - KSV_DSTBEG, KSV_DSTEND, KSV_CO2, & - KSV_DSTDEPBEG, KSV_DSTDEPEND - - -INTEGER :: JN, ICO2 -!------------------------------------------------------------------------------- -! -! Initialize NSV and CSV (names of chemical aerosols and dusts species) -! -! -! Initialize NSV -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AROINI_NSV',0,ZHOOK_HANDLE) -NSV=KSV ! for LIMA case -IF (LUSECHEM) THEN - NSV_CHEMBEG = KSV_CHEMBEG - NSV_CHEMEND = KSV_CHEMEND - NSV_CHEM = KSV_CHEMEND - KSV_CHEMBEG + 1 - NSV=NSV_CHEM -ELSE -! force First index to be superior to last index -! in order to create a null section - NSV_CHEMBEG = 1 - NSV_CHEMEND = 0 - NSV_CHEM = 0 -END IF - -IF (LORILAM) THEN - NSV_AERBEG = KSV_AERBEG - NSV_AEREND = KSV_AEREND - NSV_AER = KSV_AEREND - KSV_AERBEG + 1 - NM6_AER = 0 - NSV=NSV_CHEM+NSV_AER - IF (LVARSIGI) NM6_AER = 1 - IF (LVARSIGJ) NM6_AER = NM6_AER + 1 -ELSE -! force First index to be superior to last index -! in order to create a null section - NSV_AERBEG = 1 - NSV_AEREND = 0 - NSV_AER = 0 - NM6_AER = 0 -END IF - -IF (LDUST) THEN - NSV_DSTBEG = KSV_DSTBEG - NSV_DSTEND = KSV_DSTEND - NSV_DST = KSV_DSTEND - KSV_DSTBEG + 1 - NSV=NSV_CHEM+NSV_AER+NSV_DST -ELSE -! force First index to be superior to last index -! in order to create a null section - NSV_DSTBEG = 1 - NSV_DSTEND = 0 - NSV_DST = 0 -END IF - -IF ((LDUST).AND.(LDEPOS_DST(1))) THEN - NSV_DSTDEPBEG = KSV_DSTDEPBEG - NSV_DSTDEPEND = KSV_DSTDEPEND - NSV_DSTDEP = KSV_DSTDEPEND - KSV_DSTDEPBEG + 1 - NSV = NSV_DST + NSV_DSTDEP + NSV_CHEM + NSV_AER -ELSE -! force First index to be superior to last index -! in order to create a null section - NSV_DSTDEPBEG = 1 - NSV_DSTDEPEND = 0 - NSV_DSTDEP = 0 -ENDIF - -NSV_CO2 = KSV_CO2 -ICO2 = 0 -IF (NSV_CO2 > 0) THEN - ICO2 = 1 - NSV = NSV_DST + NSV_DSTDEP + NSV_CHEM + NSV_AER + ICO2 -ENDIF -! -! Initialize CSV -! -IF ((LUSECHEM).OR.(LORILAM).OR.(LDUST).OR.(LDEPOS_DST(1))) THEN - IF (.NOT.ALLOCATED(CSV)) THEN - ALLOCATE(CSV(NSV)) - ELSE - DEALLOCATE(CSV) - ALLOCATE(CSV(NSV)) - ENDIF - - DO JN=NSV_CHEMBEG,NSV_CHEMEND - CSV(JN)(1:6) = CNAMES(JN-NSV_CHEMBEG+1)(1:6) - END DO - - DO JN=NSV_AERBEG,NSV_AEREND - CSV(JN)(1:6) = CAERONAMES(JN-NSV_AERBEG+1)(1:6) - END DO - - DO JN=NSV_DSTBEG,NSV_DSTEND - CSV(JN)(1:6) = CDUSTNAMES(JN-NSV_DSTBEG+1)(1:6) - END DO - - DO JN=NSV_DSTDEPBEG,NSV_DSTDEPEND - CSV(JN)(1:6) = CDEDSTNAMES(JN-NSV_DSTDEPBEG+1)(1:6) - END DO -ELSE - IF (.NOT.ALLOCATED(CSV)) THEN - ALLOCATE(CSV(0)) - ELSE - DEALLOCATE(CSV) - ALLOCATE(CSV(0)) - ENDIF -ENDIF -!------------------------------------------------------------------------------- -! -IF (LHOOK) CALL DR_HOOK('AROINI_NSV',1,ZHOOK_HANDLE) -END SUBROUTINE AROINI_NSV diff --git a/src/arome/chem/externals/aroini_nsv0.F90 b/src/arome/chem/externals/aroini_nsv0.F90 deleted file mode 100644 index 32c2c6b01a830bdd7425f61fcbefded95ba54c50..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/aroini_nsv0.F90 +++ /dev/null @@ -1,291 +0,0 @@ -!! ############################## -SUBROUTINE AROINI_NSV0(OUSECHEM,OORILAM,ODUST,OCO2,ODEPOS,KGFL,KGFL_EXT,& - KSV_CHEMBEG, KSV_CHEMEND, KSV_DSTBEG, KSV_DSTEND, & - KSV_DSTDEPBEG, KSV_DSTDEPEND, & - KSV_AERBEG, KSV_AEREND, KSV_CO2, CLNAME) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################## - -! MesoNH-C modules -USE MODD_CH_M9 , ONLY : NEQ, CNAMES -USE MODD_CH_M9_SCHEME, ONLY : I_NEQ=>NEQ, I_CNAMES=>CNAMES -USE MODD_CH_AEROSOL -USE MODD_DUST, ONLY : LVARSIG, NMODE_DST, CDUSTNAMES, YPDUST_INI,& - JPDUSTORDER, LRGFIX_DST, CDEDSTNAMES, YPDEDST_INI -USE MODI_CH_INIT_CCS -USE MODI_CH_INIT_SCHEME - - -!**** *SUINI_NSV * - Setting up the boundaries of the scalar vector GFL_EXT - -! Purpose. -! -------- -! Initialization of YOMNSV variables -!** Interface. -! ---------- -! *CALL* *AROINI_NSV0* - -! Explicit arguments : -! -------------------- - -! Implicit arguments : -! -------------------- -! Common MODD_CH_M9 -! Common MODD_CH_AEROSOL - -! Method. -! ------- - -! Externals. -! ---------- - -! Reference. -! ---------- -! - -! Author. -! ------- -! P. Tulet *CNRM* - -! Modifications. -! -------------- - -IMPLICIT NONE - -LOGICAL,INTENT(IN):: OORILAM -LOGICAL,INTENT(IN):: ODUST -LOGICAL,INTENT(IN):: OCO2 -LOGICAL,INTENT(IN):: OUSECHEM -LOGICAL,INTENT(IN):: ODEPOS -INTEGER,INTENT(IN) ::KGFL -INTEGER,INTENT(INOUT) ::KGFL_EXT -INTEGER,INTENT(INOUT) ::KSV_CHEMBEG -INTEGER,INTENT(INOUT) ::KSV_CHEMEND -INTEGER,INTENT(INOUT) ::KSV_DSTBEG -INTEGER,INTENT(INOUT) ::KSV_DSTEND -INTEGER,INTENT(INOUT) ::KSV_DSTDEPBEG -INTEGER,INTENT(INOUT) ::KSV_DSTDEPEND -INTEGER,INTENT(INOUT) ::KSV_AERBEG -INTEGER,INTENT(INOUT) ::KSV_AEREND -INTEGER,INTENT(INOUT) ::KSV_CO2 -CHARACTER(LEN=15), DIMENSION(KGFL), INTENT(INOUT) :: CLNAME - -INTEGER :: ISV ! total number of scalar variables -INTEGER :: JN, JSV, JSV_NAME, JMOMENTS, JMODE, JMODEIDX, JMOM ! index -INTEGER :: I_NM6_AER ! number of M6 aerosol variables -INTEGER :: I_NM6_DST ! number of M6 dust variables -INTEGER :: IMODEIDX -CHARACTER(LEN=10) :: CL_SCHEME - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AROINI_NSV0',0,ZHOOK_HANDLE) -ISV = 0 - -IF (OUSECHEM) THEN - - NEQ = I_NEQ - CNAMES =>I_CNAMES - CALL CH_INIT_SCHEME(6) - CALL CH_INIT_CCS(NEQ,6,6) - - KSV_CHEMBEG = ISV+1 - KSV_CHEMEND = ISV + NEQ - ISV = KSV_CHEMEND - - CL_SCHEME = "NONE" ! definition of gaseous scheme - DO JN=1, SIZE(CNAMES) - IF (TRIM(CNAMES(JN)) .EQ. "ALKA") CL_SCHEME = "RELACS" - IF (TRIM(CNAMES(JN)) .EQ. "HC3") CL_SCHEME = "RACM" - IF (TRIM(CNAMES(JN)) .EQ. "URG1") CL_SCHEME = "RELACS2" - IF (TRIM(CNAMES(JN)) .EQ. "UR21") CL_SCHEME = "CACM" - ENDDO -DO JN=KSV_CHEMBEG,KSV_CHEMEND -CLNAME(JN) = TRIM(CNAMES(JN-KSV_CHEMBEG+1)) -ENDDO -END IF - - -IF ((OUSECHEM).AND.(OORILAM)) THEN - - IF (CL_SCHEME == "RELACS2" .OR. CL_SCHEME == "CACM") THEN - NSOA = 10 - ELSE - NSOA = 0 ! No SOA formation - END IF - - I_NM6_AER = 0 - IF (LVARSIGI) I_NM6_AER = 1 - IF (LVARSIGJ) I_NM6_AER = I_NM6_AER + 1 - KSV_AERBEG = ISV+1 - KSV_AEREND = ISV+(NSP+NCARB+NSOA+1)*JPMODE + I_NM6_AER - ISV = KSV_AEREND - - IF (ALLOCATED(CAERONAMES)) DEALLOCATE(CAERONAMES) - ALLOCATE(CAERONAMES((NSP+NSOA+NCARB+1)*JPMODE+I_NM6_AER)) - ! Index gas scheme <=> Index Orilam -JP_CH_SO4I = 1 -JP_CH_SO4J = 2 -JP_CH_NO3I = 3 -JP_CH_NO3J = 4 -JP_CH_NH3I = 5 -JP_CH_NH3J = 6 -JP_CH_H2OI = 7 -JP_CH_H2OJ = 8 -JP_CH_OCI = 9 -JP_CH_OCJ = 10 -JP_CH_BCI = 11 -JP_CH_BCJ = 12 - -JP_CH_M0I = (NCARB + NSP + NSOA)*JPMODE +1 -JP_CH_M0J = (NCARB + NSP + NSOA)*JPMODE +2 -JP_CH_M6I = 0 -JP_CH_M6J = 0 -IF (LVARSIGI) JP_CH_M6I = (NCARB + NSP + NSOA)*JPMODE + 3 -IF ((LVARSIGI).AND.(LVARSIGJ)) THEN - JP_CH_M6J = (NCARB + NSP + NSOA)*JPMODE + 4 -ELSE IF ((LVARSIGJ).AND. .NOT.(LVARSIGI)) THEN - JP_CH_M6J = (NCARB + NSP + NSOA)*JPMODE + 3 -END IF - - ! Name of aerosol component -CAERONAMES(JP_CH_SO4I) = "SO4I" -CAERONAMES(JP_CH_SO4J) = "SO4J" -CAERONAMES(JP_CH_NH3I) = "NH3I" -CAERONAMES(JP_CH_NH3J) = "NH3J" -CAERONAMES(JP_CH_H2OI) = "H2OI" -CAERONAMES(JP_CH_H2OJ) = "H2OJ" -CAERONAMES(JP_CH_NO3I) = "NO3I" -CAERONAMES(JP_CH_NO3J) = "NO3J" -CAERONAMES(JP_CH_BCI) = "BCI" -CAERONAMES(JP_CH_BCJ) = "BCJ" -CAERONAMES(JP_CH_OCI) = "OCI" -CAERONAMES(JP_CH_OCJ) = "OCJ" -CAERONAMES(JP_CH_M0I) = "M0I" -CAERONAMES(JP_CH_M0J) = "M0J" -IF (LVARSIGI) CAERONAMES(JP_CH_M6I) = "M6I" -IF (LVARSIGJ) CAERONAMES(JP_CH_M6J) = "M6J" - -IF (NSOA .EQ. 10) THEN -JP_CH_SOA1I = 13 -JP_CH_SOA1J = 14 -JP_CH_SOA2I = 15 -JP_CH_SOA2J = 16 -JP_CH_SOA3I = 17 -JP_CH_SOA3J = 18 -JP_CH_SOA4I = 19 -JP_CH_SOA4J = 20 -JP_CH_SOA5I = 21 -JP_CH_SOA5J = 22 -JP_CH_SOA6I = 23 -JP_CH_SOA6J = 24 -JP_CH_SOA7I = 25 -JP_CH_SOA7J = 26 -JP_CH_SOA8I = 27 -JP_CH_SOA8J = 28 -JP_CH_SOA9I = 29 -JP_CH_SOA9J = 30 -JP_CH_SOA10I = 31 -JP_CH_SOA10J = 32 -CAERONAMES(JP_CH_SOA1I) = "SOA1I" -CAERONAMES(JP_CH_SOA1J) = "SOA1J" -CAERONAMES(JP_CH_SOA2I) = "SOA2I" -CAERONAMES(JP_CH_SOA2J) = "SOA2J" -CAERONAMES(JP_CH_SOA3I) = "SOA3I" -CAERONAMES(JP_CH_SOA3J) = "SOA3J" -CAERONAMES(JP_CH_SOA4I) = "SOA4I" -CAERONAMES(JP_CH_SOA4J) = "SOA4J" -CAERONAMES(JP_CH_SOA5I) = "SOA5I" -CAERONAMES(JP_CH_SOA5J) = "SOA5J" -CAERONAMES(JP_CH_SOA6I) = "SOA6I" -CAERONAMES(JP_CH_SOA6J) = "SOA6J" -CAERONAMES(JP_CH_SOA7I) = "SOA7I" -CAERONAMES(JP_CH_SOA7J) = "SOA7J" -CAERONAMES(JP_CH_SOA8I) = "SOA8I" -CAERONAMES(JP_CH_SOA8J) = "SOA8J" -CAERONAMES(JP_CH_SOA9I) = "SOA9I" -CAERONAMES(JP_CH_SOA9J) = "SOA9J" -CAERONAMES(JP_CH_SOA10I) = "SOA10I" -CAERONAMES(JP_CH_SOA10J) = "SOA10J" -END IF - -DO JN=KSV_AERBEG,KSV_AEREND -CLNAME(JN) = TRIM(CAERONAMES(JN-KSV_AERBEG+1)) -ENDDO -END IF - -KSV_CO2 = 0 -IF (OCO2) THEN - KSV_CO2 = ISV+1 - ISV = KSV_CO2 - CLNAME(KSV_CO2) = "CO2INT" -END IF - - -IF (ODUST) THEN - I_NM6_DST = 0 - IF (ODEPOS) LRGFIX_DST = .TRUE. - IF (LRGFIX_DST) LVARSIG = .FALSE. - IF (LVARSIG) I_NM6_DST = 1 - KSV_DSTBEG = ISV+1 - IF (LRGFIX_DST) THEN - KSV_DSTEND = ISV+NMODE_DST - ELSE - KSV_DSTEND = ISV+NMODE_DST*(2+I_NM6_DST) - ENDIF - - ISV = KSV_DSTEND - - IF(.NOT.ALLOCATED(CDUSTNAMES)) THEN - JMOMENTS = (KSV_DSTEND - KSV_DSTBEG +1 )/NMODE_DST - ALLOCATE(CDUSTNAMES(JMOMENTS*NMODE_DST)) - !Loop on all dust modes - IF (JMOMENTS == 1) THEN - DO JMODE=1,NMODE_DST - IMODEIDX=JPDUSTORDER(JMODE) - JSV_NAME = (IMODEIDX - 1)*3 + 2 - CDUSTNAMES(JMODE) = YPDUST_INI(JSV_NAME) - END DO - ELSE - - DO JMODE=1,NMODE_DST - !Find which mode we are dealing with - JMODEIDX=JPDUSTORDER(JMODE) - DO JMOM=1,JMOMENTS - !Find which number this is of the list of scalars - JSV = (JMODE-1)*JMOMENTS + JMOM - !Find what name this corresponds to, always 3 moments assumed in YPDUST_INI - JSV_NAME = (JMODEIDX - 1)*3 + JMOM - !Get the right CDUSTNAMES which should follow the list of scalars transported in XSVM/XSVT - CDUSTNAMES(JSV) = YPDUST_INI(JSV_NAME) - ENDDO ! Loop on moments - ENDDO ! Loop on dust modes - END IF - END IF !Check on allocated CDUSTNAMES already - -DO JN=KSV_DSTBEG,KSV_DSTEND -CLNAME(JN) = TRIM(CDUSTNAMES(JN-KSV_DSTBEG+1)) -ENDDO - -IF ((ODUST).AND.(ODEPOS)) THEN - KSV_DSTDEPBEG = ISV+1 - KSV_DSTDEPEND = ISV+NMODE_DST*2 - IF(.NOT.ALLOCATED(CDEDSTNAMES)) THEN - ALLOCATE(CDEDSTNAMES(NMODE_DST*2)) - DO JN=1,NMODE_DST - JMODEIDX=JPDUSTORDER(JN) - CDEDSTNAMES(JN) = YPDEDST_INI(JMODEIDX) - CDEDSTNAMES(NMODE_DST+JN) = YPDEDST_INI(NMODE_DST+JMODEIDX) - ENDDO - ENDIF -DO JN=KSV_DSTDEPBEG,KSV_DSTDEPEND - CLNAME(JN) = TRIM(CDEDSTNAMES(JN-KSV_DSTDEPBEG+1)) -ENDDO -ENDIF - -END IF - -KGFL_EXT = ISV - -IF (LHOOK) CALL DR_HOOK('AROINI_NSV0',1,ZHOOK_HANDLE) -END SUBROUTINE AROINI_NSV0 diff --git a/src/arome/chem/externals/ch_aer_init.F90 b/src/arome/chem/externals/ch_aer_init.F90 deleted file mode 100644 index f12e09807469094339b7f934c4277bacf12c9c63..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/ch_aer_init.F90 +++ /dev/null @@ -1,316 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_INIT(PCHEM,PAERO, PRHODREF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################ -!! -!! PURPOSE -!! ------- -!! Realise l'equilibre entre les moments via la masse contenue -!! dans les aerosols, les diametres moyens et la dispersion. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! none -!! -!! EXTERNAL -!! -------- -!! None -!! -USE MODD_CH_AEROSOL -USE MODD_CH_AERO_n -USE MODD_CH_M9, ONLY : CNAMES -USE MODD_CH_MNHC_n, ONLY : LCH_INIT_FIELD -USE MODD_NSV -!! -IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PCHEM, PAERO -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -! -! -!* 0.2 declarations local variables -! -REAL,DIMENSION(SIZE(PCHEM,1),SIZE(PCHEM,2),SIZE(PCHEM,3),JPMODE) :: ZN, ZRG, ZSIG -REAL,DIMENSION(SIZE(PCHEM,1),SIZE(PCHEM,2),SIZE(PCHEM,3),NSP+NCARB+NSOA,JPMODE) :: ZCTOTA -REAL,DIMENSION(SIZE(PCHEM,1),SIZE(PCHEM,2),SIZE(PCHEM,3)) :: ZSIGMA -REAL,DIMENSION(SIZE(PCHEM,1),SIZE(PCHEM,2),SIZE(PCHEM,3)) :: ZBCMINI, ZBCMINJ, ZOCMINI, ZOCMINJ -REAL,DIMENSION(SIZE(PCHEM,1),SIZE(PCHEM,2),SIZE(PCHEM,3),JPMODE*3) :: ZM, ZPM -REAL,DIMENSION(NSP+NCARB+NSOA) :: ZMI -INTEGER :: JN, JJ, JK ! loop counter -REAL :: ZDEN2MOL, ZRHODREFMIN, ZCOEFAEROBC, ZCOEFAEROOC -REAL :: ZVALBC, ZVALOC, ZMINRGI, ZMINRGJ -REAL :: ZINIRADIUSI, ZINIRADIUSJ -! -!------------------------------------------------------------------------------- -! - -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ------------------------------------ -! 1.1 initialisation -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_INIT',0,ZHOOK_HANDLE) -DO JJ=1,SIZE(CNAMES) -IF (CNAMES(JJ) == "CO") JP_CH_CO = JJ -END DO - -IF (CRGUNIT=="MASS") THEN -ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) -ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) -ELSE -ZINIRADIUSI = XINIRADIUSI -ZINIRADIUSJ = XINIRADIUSJ -END IF -ZMINRGI = ZINIRADIUSI * XCOEFRADIMIN -ZMINRGJ = ZINIRADIUSJ * XCOEFRADJMIN - -DO JK=1, size(PRHODREF,3) -WHERE (PRHODREF(:,:,JK) .GT. 0.) -ZPM(:,:,JK,1) = 100.* XN0IMIN*PRHODREF(:,:,JK)/PRHODREF(:,:,size(PRHODREF,3)) -ELSEWHERE -ZPM(:,:,JK,1) = XN0IMIN -ENDWHERE -END DO -ZPM(:,:,:,2) = ZPM(:,:,:,1) * (ZINIRADIUSI**3)*EXP(4.5 * LOG(XINISIGI)**2) - -DO JK=1, size(PRHODREF,3) -WHERE (PRHODREF(:,:,JK) .GT. 0.) -ZPM(:,:,JK,4) = 100.* XN0JMIN*PRHODREF(:,:,JK)/PRHODREF(:,:,size(PRHODREF,3)) -ELSEWHERE -ZPM(:,:,JK,4) = XN0JMIN -ENDWHERE -END DO -ZPM(:,:,:,5) = ZPM(:,:,:,4) * (ZINIRADIUSJ**3)*EXP(4.5 * LOG(XINISIGJ)**2) -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD - -! Default values of molar mass - -ZMI(:) = 250. -ZMI(JP_AER_SO4) = 98. -ZMI(JP_AER_NO3) = 63. -ZMI(JP_AER_NH3) = 17. -ZMI(JP_AER_H2O) = 18. - -IF (NSOA .EQ. 10) THEN -ZMI(JP_AER_SOA1) = 88. -ZMI(JP_AER_SOA2) = 180. -ZMI(JP_AER_SOA3) = 1.5374857E+02 -ZMI(JP_AER_SOA4) = 1.9586780E+02 -ZMI(JP_AER_SOA5) = 195. -ZMI(JP_AER_SOA6) = 195. -ZMI(JP_AER_SOA7) = 165. -ZMI(JP_AER_SOA8) = 195. -ZMI(JP_AER_SOA9) = 270. -ZMI(JP_AER_SOA10) = 210. -END IF - -! Aerosol Density -! Cf Ackermann (all to black carbon except water) - XRHOI(:) = 1.8e3 - XRHOI(JP_AER_H2O) = 1.0e3 ! water - -PCHEM(:,:,:,:) = MAX(PCHEM(:,:,:,:), 0.) -PAERO(:,:,:,:) = MAX(PAERO(:,:,:,:), 0.) -! -DO JJ=1,NSP+NCARB+NSOA - XFAC(JJ)=(4./3.)*3.14292654*XRHOI(JJ)*1.e-9 -ENDDO -! -! -!* 1.n transfer aerosol mass from gas to aerosol variables -! (and conversion of part/part --> microgram/m3) -! -DO JJ=1,NSV_AER - PAERO(:,:,:,JJ) = PAERO(:,:,:,JJ) * ZDEN2MOL * PRHODREF(:,:,:) -ENDDO - -ZBCMINI(:,:,:) = 0.6 * 6.0221367E+11 * XFAC(JP_AER_BC) * ZPM(:,:,:,2) / ZMI(JP_AER_BC) -ZOCMINI(:,:,:) = 0.4 * 6.0221367E+11 * XFAC(JP_AER_OC) * ZPM(:,:,:,2) / ZMI(JP_AER_OC) -ZBCMINJ(:,:,:) = 0.6 * 6.0221367E+11 * XFAC(JP_AER_BC) * ZPM(:,:,:,5) / ZMI(JP_AER_BC) -ZOCMINJ(:,:,:) = 0.4 * 6.0221367E+11 * XFAC(JP_AER_OC) * ZPM(:,:,:,5) / ZMI(JP_AER_OC) - -PAERO(:,:,:,JP_CH_BCi)=MAX(PAERO(:,:,:,JP_CH_BCi), ZBCMINI(:,:,:)) -PAERO(:,:,:,JP_CH_BCj)=MAX(PAERO(:,:,:,JP_CH_BCj), ZBCMINJ(:,:,:)) - -PAERO(:,:,:,JP_CH_OCi)=MAX(PAERO(:,:,:,JP_CH_OCi), ZOCMINI(:,:,:)) -PAERO(:,:,:,JP_CH_OCj)=MAX(PAERO(:,:,:,JP_CH_OCj), ZOCMINJ(:,:,:)) - -! -! mineral phase - ZCTOTA(:,:,:,JP_AER_SO4,1) = PAERO(:,:,:,JP_CH_SO4i)*ZMI(JP_AER_SO4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SO4,2) = PAERO(:,:,:,JP_CH_SO4j)*ZMI(JP_AER_SO4)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_NO3,1) = PAERO(:,:,:,JP_CH_NO3i)*ZMI(JP_AER_NO3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_NO3,2) = PAERO(:,:,:,JP_CH_NO3j)*ZMI(JP_AER_NO3)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_NH3,1) = PAERO(:,:,:,JP_CH_NH3i)*ZMI(JP_AER_NH3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_NH3,2) = PAERO(:,:,:,JP_CH_NH3j)*ZMI(JP_AER_NH3)/6.0221367E+11 - -! water - ZCTOTA(:,:,:,JP_AER_H2O,1) = PAERO(:,:,:,JP_CH_H2Oi)*ZMI(JP_AER_H2O)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_H2O,2) = PAERO(:,:,:,JP_CH_H2Oj)*ZMI(JP_AER_H2O)/6.0221367E+11 - -! -! primary organic carbon - ZCTOTA(:,:,:,JP_AER_OC,1) = PAERO(:,:,:,JP_CH_OCi)*ZMI(JP_AER_OC)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_OC,2) = PAERO(:,:,:,JP_CH_OCj)*ZMI(JP_AER_OC)/6.0221367E+11 - -! primary black carbon - ZCTOTA(:,:,:,JP_AER_BC,1) = PAERO(:,:,:,JP_CH_BCi)*ZMI(JP_AER_BC)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_BC,2) = PAERO(:,:,:,JP_CH_BCj)*ZMI(JP_AER_BC)/6.0221367E+11 - -! -IF (NSOA .EQ. 10) THEN - ZCTOTA(:,:,:,JP_AER_SOA1,1) = PAERO(:,:,:,JP_CH_SOA1i)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA1,2) = PAERO(:,:,:,JP_CH_SOA1j)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,1) = PAERO(:,:,:,JP_CH_SOA2i)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,2) = PAERO(:,:,:,JP_CH_SOA2j)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,1) = PAERO(:,:,:,JP_CH_SOA3i)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,2) = PAERO(:,:,:,JP_CH_SOA3j)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,1) = PAERO(:,:,:,JP_CH_SOA4i)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,2) = PAERO(:,:,:,JP_CH_SOA4j)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,1) = PAERO(:,:,:,JP_CH_SOA5i)*ZMI(JP_AER_SOA5)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,2) = PAERO(:,:,:,JP_CH_SOA5j)*ZMI(JP_AER_SOA5)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_SOA6,1) = PAERO(:,:,:,JP_CH_SOA6i)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA6,2) = PAERO(:,:,:,JP_CH_SOA6j)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,1) = PAERO(:,:,:,JP_CH_SOA7i)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,2) = PAERO(:,:,:,JP_CH_SOA7j)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,1) = PAERO(:,:,:,JP_CH_SOA8i)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,2) = PAERO(:,:,:,JP_CH_SOA8j)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,1) = PAERO(:,:,:,JP_CH_SOA9i)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,2) = PAERO(:,:,:,JP_CH_SOA9j)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,1) = PAERO(:,:,:,JP_CH_SOA10i)*ZMI(JP_AER_SOA10)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,2) = PAERO(:,:,:,JP_CH_SOA10j)*ZMI(JP_AER_SOA10)/6.0221367E+11 -END IF - - -!* 1.1 calculate moment 3 from mass - - ZM(:,:,:,2) = 0. - ZM(:,:,:,5) = 0. - ZCTOTA(:,:,:,:,:) = MAX(ZCTOTA(:,:,:,:,:), 0.) - DO JJ = 1,NSP+NCARB+NSOA - ZM(:,:,:,2) = ZM(:,:,:,2)+ZCTOTA(:,:,:,JJ,1)/XFAC(JJ) - ZM(:,:,:,5) = ZM(:,:,:,5)+ZCTOTA(:,:,:,JJ,2)/XFAC(JJ) - ENDDO -! -! -!* 1.2 calculate moment 0 from dispersion and mean radius - ZM(:,:,:,1)= ZM(:,:,:,2) / & - ((ZINIRADIUSI**3)*EXP(4.5 * (LOG(XINISIGI))**2)) - - ZM(:,:,:,4)= ZM(:,:,:,5) / & - ((ZINIRADIUSJ**3)*EXP(4.5 * (LOG(XINISIGJ))**2)) - -!* 1.3 calculate moment 6 from dispersion and mean radius - ZM(:,:,:,3) = ZM(:,:,:,1) * (ZINIRADIUSI**6) *EXP(18 *(LOG(XINISIGI))**2) - ZM(:,:,:,6) = ZM(:,:,:,4) * (ZINIRADIUSJ**6) *EXP(18 *(LOG(XINISIGJ))**2) - -IF (LVARSIGI) THEN ! set M6 variable standard deviation - ZM(:,:,:,3) = MAX(PAERO(:,:,:,JP_CH_M6i), 1E-80) -ELSE ! fixed standard deviation - ZM(:,:,:,3) = ZM(:,:,:,1) & - * ( (ZM(:,:,:,2)/ZM(:,:,:,1))**(1./3.) & - * exp(-(3./2.)*log(XINISIGI)**2))**6 & - * exp(18.*log(XINISIGI)**2) -END IF - -IF (LVARSIGJ) THEN ! set M6 variable standard deviation - ZM(:,:,:,6) = MAX(PAERO(:,:,:,JP_CH_M6j), 1E-80) -ELSE ! fixed standard deviation - ZM(:,:,:,6) = ZM(:,:,:,4) & - * ( (ZM(:,:,:,5)/ZM(:,:,:,4))**(1./3.) & - * exp(-(3./2.)*log(XINISIGJ)**2))**6 & - * exp(18.*log(XINISIGJ)**2) -END IF - - -DO JN=1,JPMODE - IF (JN .EQ. 1) THEN - - IF (LVARSIGI) THEN ! variable dispersion for mode 1 - - ZSIGMA(:,:,:)=ZM(:,:,:,NM3(JN))**2/(ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM6(JN))) - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - WHERE (ZSIGMA(:,:,:) > XSIGIMAX) - ZSIGMA(:,:,:) = XSIGIMAX - END WHERE - WHERE (ZSIGMA(:,:,:) < XSIGIMIN) - ZSIGMA(:,:,:) = XSIGIMIN - END WHERE - - ELSE ! fixed dispersion for mode 1 - ZSIGMA(:,:,:) = XINISIGI - END IF - END IF - -! - IF (JN .EQ. 2) THEN - - IF (LVARSIGJ) THEN ! variable dispersion for mode 2 - - ZSIGMA(:,:,:)=ZM(:,:,:,NM3(JN))**2/(ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM6(JN))) - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - WHERE (ZSIGMA(:,:,:) > XSIGJMAX) - ZSIGMA(:,:,:) = XSIGJMAX - END WHERE - WHERE (ZSIGMA(:,:,:) < XSIGJMIN) - ZSIGMA(:,:,:) = XSIGJMIN - END WHERE - - ELSE ! fixed dispersion for mode 2 - ZSIGMA(:,:,:) = XINISIGJ - END IF - END IF -! - - -!* 1.4 calculate modal parameters from moments -ZSIG(:,:,:,JN) = ZSIGMA(:,:,:) -ZN(:,:,:,JN) = ZM(:,:,:,NM0(JN)) - -ZSIGMA(:,:,:)=LOG(ZSIG(:,:,:,JN))**2 - -ZRG(:,:,:,JN)=(ZM(:,:,:,NM3(JN))/ZN(:,:,:,JN))**(1./3.)*EXP(-1.5*ZSIGMA(:,:,:)) - -ZM(:,:,:,NM6(JN))=ZN(:,:,:,JN)*ZRG(:,:,:,JN)**6*EXP(18.*ZSIGMA(:,:,:)) - -! -ENDDO -! -! -PAERO(:,:,:,JP_CH_M0i) = ZM(:,:,:,1) * 1E-6 -PAERO(:,:,:,JP_CH_M0j) = ZM(:,:,:,4) * 1E-6 - -IF (LVARSIGI) PAERO(:,:,:,JP_CH_M6i) = ZM(:,:,:,3) -IF (LVARSIGJ) PAERO(:,:,:,JP_CH_M6j) = ZM(:,:,:,6) - -! - DO JJ=1,NSV_AER - PAERO(:,:,:,JJ) = PAERO(:,:,:,JJ) / (ZDEN2MOL * PRHODREF(:,:,:)) - ENDDO - -IF (LHOOK) CALL DR_HOOK('CH_AER_INIT',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_INIT diff --git a/src/arome/chem/externals/ch_aer_mod_init.F90 b/src/arome/chem/externals/ch_aer_mod_init.F90 deleted file mode 100644 index d48c6c119f0a8a1c3ca6f7601e519b8100c5e89c..0000000000000000000000000000000000000000 --- a/src/arome/chem/externals/ch_aer_mod_init.F90 +++ /dev/null @@ -1,192 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_MOD_INIT - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! #################################### -!! -!! PURPOSE -!! ------- -!! initialize the aerosol module (to be called only once) -!! -!! METHOD -!! ------ -!! -!! allocate all arrays and initialize the basic variables (i.e. densities -!! and molar weights) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! 20/03/03 P . Tulet (CNRM/GMEI) add initialization tabulation -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_AEROSOL -!! - -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* arguments -! -! -!* local variables -INTEGER, PARAMETER :: nc=22, nh=16, nt=11 ! inorganic interpolation -INTEGER :: JI ! loop counter -INTEGER :: i,j,k,l,m, JJ !loop -INTEGER :: NRESP ! return code in FM routines -INTEGER :: NLUOUT ! unit for output listing count -REAL :: ZPI -! -!--------------------------------------------------------------------------- -! -! -! -! 1.1 initialisation of tables - -! Initialize the mineral tablution -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_MOD_INIT',0,ZHOOK_HANDLE) -NLUOUT = 77 -IF (CMINERAL == 'NARES') THEN -! .. the file ares.w contains the weights of the model - OPEN(NLUOUT,FILE="ares1A.w",STATUS="OLD") - READ(NLUOUT,*) I1IA,J1JA,K1KA - DO I=1,I1IA - READ(NLUOUT,*) X1MAXA(1,I),X1MINA(1,I),X1MODA(1,I) - ENDDO - DO I=1,K1KA - READ(NLUOUT,*) X1MAXA(2,I),X1MINA(2,I),X1MODA(2,I) - ENDDO - DO I=1,I1IA+1 - READ(NLUOUT,*) (W1IJA(I,J),J=1,J1JA) - ENDDO - DO J=1,J1JA+1 - READ(NLUOUT,*) (W1JKA(J,K),K=1,K1KA) - ENDDO - CLOSE(NLUOUT) - - OPEN(NLUOUT,FILE="ares1C.w",STATUS="OLD") - READ(NLUOUT,*) I1IC,J1JC,K1KC - DO I=1,I1IC - READ(NLUOUT,*) X1MAXC(1,I),X1MINC(1,I),X1MODC(1,I) - ENDDO - DO I=1,K1KC - READ(NLUOUT,*) X1MAXC(2,I),X1MINC(2,I),X1MODC(2,I) - ENDDO - DO I=1,I1IC+1 - READ(NLUOUT,*) (W1IJC(I,J),J=1,J1JC) - ENDDO - DO J=1,J1JC+1 - READ(NLUOUT,*) (W1JKC(J,K),K=1,K1KC) - ENDDO - CLOSE(NLUOUT) - - OPEN(NLUOUT,FILE="ares2A.w",STATUS="OLD") - READ(NLUOUT,*) I2IA,J2JA,K2KA - DO I=1,I2IA - READ(NLUOUT,*) X2MAXA(1,I),X2MINA(1,I),X2MODA(1,I) - ENDDO - DO I=1,K2KA - READ(NLUOUT,*) X2MAXA(2,I),X2MINA(2,I),X2MODA(2,I) - ENDDO - DO I=1,I2IA+1 - READ(NLUOUT,*) (W2IJA(I,J),J=1,J2JA) - ENDDO - DO J=1,J2JA+1 - READ(NLUOUT,*) (W2JKA(J,K),K=1,K2KA) - ENDDO - CLOSE(NLUOUT) - - OPEN(NLUOUT,FILE="ares2B.w",STATUS="OLD") - READ(NLUOUT,*) I2IB,J2JB,K2KB - DO I=1,I2IB - READ(NLUOUT,*) X2MAXB(1,I),X2MINB(1,I),X2MODB(1,I) - ENDDO - DO I=1,K2KB - READ(NLUOUT,*) X2MAXB(2,I),X2MINB(2,I),X2MODB(2,I) - ENDDO - DO I=1,I2IB+1 - READ(NLUOUT,*) (W2IJB(I,J),J=1,J2JB) - ENDDO - DO J=1,J2JB+1 - READ(NLUOUT,*) (W2JKB(J,K),K=1,K2KB) - ENDDO - CLOSE(NLUOUT) - - OPEN(NLUOUT,FILE="ares2C.w",STATUS="OLD") - READ(NLUOUT,*) I2IC,J2JC,K2KC - DO I=1,I2IC - READ(NLUOUT,*) X2MAXC(1,I),X2MINC(1,I),X2MODC(1,I) - ENDDO - DO I=1,K2KC - READ(NLUOUT,*) X2MAXC(2,I),X2MINC(2,I),X2MODC(2,I) - ENDDO - DO I=1,I2IC+1 - READ(NLUOUT,*) (W2IJC(I,J),J=1,J2JC) - ENDDO - DO J=1,J2JC+1 - READ(NLUOUT,*) (W2JKC(J,K),K=1,K2KC) - ENDDO - CLOSE(NLUOUT) - - -END IF - -IF (CMINERAL == 'TABUL') THEN -IF(.NOT.ALLOCATED(rhi)) ALLOCATE(rhi(16)) -IF(.NOT.ALLOCATED(tempi)) ALLOCATE(tempi(11)) -IF(.NOT.ALLOCATED(zsu)) ALLOCATE(zsu(22)) -IF(.NOT.ALLOCATED(znh)) ALLOCATE(znh(22)) -IF(.NOT.ALLOCATED(zni)) ALLOCATE(zni(22)) -IF(.NOT.ALLOCATED(zf)) ALLOCATE(zf(16,11,22,22,22,3)) -OPEN(NLUOUT,FILE="AEROMIN_NEW",STATUS="OLD") - -WRITE(*,*) 'LOADING MINERAL AEROSOL DATA ...' -DO i=1,nh -READ(NLUOUT,*) rhi(i) -ENDDO -DO i=1,nt -READ(NLUOUT,*) tempi(i) -ENDDO -DO i=1,nc -READ(NLUOUT,*) zsu(i) -ENDDO -DO i=1,nc -READ(NLUOUT,*) znh(i) -ENDDO -DO i=1,nc -READ(NLUOUT,*) zni(i) -ENDDO -DO i=1,nh -DO j=1,nt -DO k=1,nc -DO l=1,nc -DO m=1,nc - READ (NLUOUT,*) zf(i,j,k,l,m,1:3) -ENDDO -ENDDO -ENDDO -ENDDO -ENDDO -CLOSE(NLUOUT) -WRITE(*,*) 'END LOADING' -ENDIF - - - -IF (LHOOK) CALL DR_HOOK('CH_AER_MOD_INIT',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_MOD_INIT diff --git a/src/arome/chem/include/isrpia.inc b/src/arome/chem/include/isrpia.inc deleted file mode 100644 index e684212616de8303ce1c6d3763d678ca67453e62..0000000000000000000000000000000000000000 --- a/src/arome/chem/include/isrpia.inc +++ /dev/null @@ -1,116 +0,0 @@ -!======================================================================= -! -! *** ISORROPIA CODE -! *** INCLUDE FILE 'ISRPIA.INC' -! *** THIS FILE CONTAINS THE DECLARATIONS OF THE GLOBAL CONSTANTS -! AND VARIABLES. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! -! IMPLICIT DOUBLE PRECISION (A-H,O-Z) -! - INTEGER :: NCOMP,NIONS,NGASAQ,NSLDS,NPAIR,NZSR,NERRMX - PARAMETER (NCOMP=5,NIONS=7,NGASAQ=3,NSLDS=9,NPAIR=13,NZSR=100, & - & NERRMX=25) -! -! *** INPUT VARIABLES ************************************************** -! - INTEGER :: IPROB,METSTBL - REAL(KIND=8) :: W,WAER,TEMP,RH - COMMON /INPT/ W(NCOMP), WAER(NCOMP), TEMP, RH, IPROB, METSTBL -! -! *** WATER ACTIVITIES OF PURE SALT SOLUTIONS ************************** -! - REAL(KIND=8) :: AWAS,AWSS,AWAC,AWSC,AWAN,AWSN,AWSB,AWAB,AWSA,AWLC - COMMON /ZSR / AWAS(NZSR), AWSS(NZSR), AWAC(NZSR), AWSC(NZSR), & - & AWAN(NZSR), AWSN(NZSR), AWSB(NZSR), AWAB(NZSR), & - & AWSA(NZSR), AWLC(NZSR) -! -! *** DELIQUESCENCE RELATIVE HUMIDITIES ******************************** -! - INTEGER :: WFTYP - REAL(KIND=8) :: DRH2SO4,DRNH42S4,DRNAHSO4,DRNACL,DRNANO3 - REAL(KIND=8) :: DRNA2SO4,DRNH4HS4,DRLC,DRNH4NO3,DRNH4CL - REAL(KIND=8) :: DRMLCAB,DRMLCAS,DRMASAN,DRMG1,DRMG2 - REAL(KIND=8) :: DRMG3,DRMH1,DRMH2,DRMI1,DRMI2 - REAL(KIND=8) :: DRMI3,DRMQ1,DRMR1,DRMR2,DRMR3 - REAL(KIND=8) :: DRMR4,DRMR5,DRMR6,DRMR7,DRMR8 - REAL(KIND=8) :: DRMR9,DRMR10,DRMR11,DRMR12,DRMR13 - COMMON /DRH / DRH2SO4, DRNH42S4, DRNAHSO4, DRNACL, DRNANO3, & - & DRNA2SO4, DRNH4HS4, DRLC, DRNH4NO3, DRNH4CL - COMMON /MDRH/ DRMLCAB, DRMLCAS, DRMASAN, DRMG1, DRMG2, & - & DRMG3, DRMH1, DRMH2, DRMI1, DRMI2, & - & DRMI3, DRMQ1, DRMR1, DRMR2, DRMR3, & - & DRMR4, DRMR5, DRMR6, DRMR7, DRMR8, & - & DRMR9, DRMR10, DRMR11, DRMR12, DRMR13, & - & WFTYP -! -! *** VARIABLES FOR LIQUID AEROSOL PHASE ******************************* -! - REAL(KIND=8) :: MOLAL, MOLALR, M0 - REAL :: IONIC - REAL(KIND=8) :: GAMA,ZZ,Z,GAMOU,GAMIN,GASAQ,EPSACT - REAL(KIND=8) :: COH,CHNO3,CHCL,WATER - INTEGER :: IACALC - LOGICAL :: CALAOU, CALAIN, FRST, DRYF - COMMON /IONS/ MOLAL(NIONS), MOLALR(NPAIR), GAMA(NPAIR), ZZ(NPAIR),& - & Z(NIONS), GAMOU(NPAIR), GAMIN(NPAIR),M0(NPAIR),& - & GASAQ(NGASAQ), & - & EPSACT, COH, CHNO3, CHCL, & - & WATER, IONIC, IACALC, & - & FRST, CALAIN, CALAOU, DRYF -! -! *** VARIABLES FOR SOLID AEROSOL PHASE ******************************** -! - REAL(KIND=8) :: CH2SO4,CNH42S4,CNH4HS4,CNACL,CNA2SO4 - REAL(KIND=8) :: CNANO3,CNH4NO3,CNH4CL,CNAHSO4,CLC - COMMON /SALT/ CH2SO4, CNH42S4, CNH4HS4, CNACL, CNA2SO4, & - & CNANO3, CNH4NO3, CNH4CL, CNAHSO4, CLC -! -! *** VARIABLES FOR GAS PHASE ****************************************** -! - REAL(KIND=8) :: GNH3,GHNO3,GHCL - COMMON /GAS / GNH3, GHNO3, GHCL -! -! *** EQUILIBRIUM CONSTANTS ******************************************** -! - REAL(KIND=8) :: XK1,XK2,XK3,XK4,XK5,XK6,XK7,XK8,XK9,XK10,XK42 - REAL(KIND=8) :: XK11,XK12,XK13,XK14,XKW, XK21,XK22,XK31,XK32,XK41 - COMMON /EQUK/ XK1, XK2, XK3, XK4, XK5, XK6, XK7, XK8, XK9, XK10, & - & XK11,XK12,XK13,XK14,XKW, XK21,XK22,XK31,XK32,XK41, & - & XK42 -! -! *** MOLECULAR WEIGHTS ************************************************ -! - REAL(KIND=8) :: IMW - REAL(KIND=8) :: R,WMW,SMW - COMMON /OTHR/ R, IMW(NIONS), WMW(NCOMP), SMW(NPAIR) -! -! *** SOLUTION/INFO VARIABLES ****************************************** -! - CHARACTER SCASE*15 - REAL(KIND=8) :: SULRATW,SULRAT,SODRAT - COMMON /CASE/ SULRATW, SULRAT, SODRAT, SCASE -! - REAL(KIND=8) :: EPS - INTEGER :: MAXIT,NSWEEP,NDIV,ICLACT - COMMON /SOLN/ EPS, MAXIT, NSWEEP, NDIV, ICLACT -! -! *** ERROR SYSTEM ***************************************************** -! - CHARACTER ERRMSG*40 - INTEGER ERRSTK, NOFER - LOGICAL STKOFL - COMMON /EROR/ STKOFL, NOFER, ERRSTK(NERRMX), ERRMSG(NERRMX) -! -! *** GENERIC VARIABLES ************************************************ -! - CHARACTER VERSION*14 - REAL(KIND=8) :: GREAT,TINY,TINY2,ZERO,ONE - COMMON /CGEN/ GREAT, TINY, TINY2, ZERO, ONE, VERSION -! -! *** END OF INCLUDE FILE ********************************************** -! diff --git a/src/arome/chem/include/parameter.h b/src/arome/chem/include/parameter.h deleted file mode 100644 index 90f2d0fbe001f8335ecbfa603d0d0b551e60dbc6..0000000000000000000000000000000000000000 --- a/src/arome/chem/include/parameter.h +++ /dev/null @@ -1,98 +0,0 @@ -C *** CIT AIRSHED MODEL *** -C INCLUDE FILE TO DEFINE MAXIMUM ARRAY SIZES -C WRITTEN BY ROBERT HARLEY (FEBRUARY 1991) -C -C CAUTIONARY NOTES: IF CHANGES ARE MADE TO THIS FILE, -C BE SURE TO CHECK THAT THE DEFINITION OF LBIGRC IS REVISED -C (IF NGMX OR NGMY IS CHANGED). ALSO, IF NEMAX OR NIMAX -C ARE CHANGED, VERIFY THE NEW DEFINITION OF LWORK. -C -C NSMAX - MAXIMUM NUMBER OF CHEMICAL SPECIES -C NIMAX - MAXIMUM NUMBER OF INITIAL CONDITION SPECIES -C NEMAX - MAXIMUM NUMBER OF EMITTED SPECIES -C NHCMAX - MAXIMUM NUMBER OF HYDROCARBON SPECIES -C NLUMAX - MAXIMUM NUMBER OF LAND USE TYPES -C NRMAX - MAXIMUM NUMBER OF CHEMICAL REACTIONS -C NPMAX - MAXIMUM NUMBER OF POINT SOURCES -C NCMAX - MAXIMUM NUMBER OF SPECIAL COEFFICIENTS -C LWORK - LENGTH OF THE WORK VECTOR -C -C AEROSOL PARAMETERS -C - PARAMETER (NASECT = 8) ! aerosol sections - PARAMETER (NASPEC = 37) ! aerosol species - PARAMETER (IAPART = 0) ! transport calculations -c PARAMETER (IAPART = 1) ! equilibrium calculations - PARAMETER (IAAPP = 0) ! 0:full rigorous calculation; 1:w/o solids - PARAMETER (IAOPT = 2) ! 1: Bromley; 2: Kusk and Meissner; 3: Pitzer - PARAMETER (IASEC = 1) ! (0/1): calculating or ignoring minor solids - PARAMETER (IATX = 20) ! number of maximum iterations - PARAMETER (AEPS1 = 0.001)! error tolerance for H+ and water convr. - PARAMETER (AEPS2 = 0.01) ! error tolerance for solids convergence - PARAMETER (DPUP = 10.) ! micrometer upper limit aerosol diameter - PARAMETER (DPLOW = 0.039) ! micrometer lower limit aerosol diameter - PARAMETER (DENSP = 1.2) ! aerosol density (g/cm3) - PARAMETER (ACOURANT = 0.1) ! courant number - PARAMETER (IWATCAL = 1) ! 0:only do water evap/cond 1:full evap/cond - PARAMETER (ISALTCAL = 0) ! Sea-salt emissions: 0:read from file 1:calculate - - PARAMETER (NGSPEC = 124) - PARAMETER (NAMAX = NASECT*NASPEC) - PARAMETER (NSMAX = NGSPEC + NAMAX, NIMAX = 84, NEMAX = 172) - PARAMETER (NHCMAX = 20, NLUMAX = 32, NRMAX = 361) - PARAMETER (NPMAX = 1200, NCMAX = 47) -C -C MAXIMUM NUMBER OF GRID SQUARES (DO NOT SET NGMZ LARGER THAN 10) -C NGMX - MAXIMUM NUMBER OF MASTER GRID CELLS IN X DIRECTION -C NGMY - MAXIMUM NUMBER OF MASTER GRID CELLS IN Y DIRECTION -C NGMZ - MAXIMUM NUMBER OF VERTICAL COMPUTATIONAL CELLS -C LBIGRC - SET TO LARGER OF NGMX AND NGMY -C - PARAMETER (NGMX = 1, NGMY = 1, NGMZ = 1) - PARAMETER (LBIGRC = NGMX) -C -C DEFINE LWORK USING THE LARGER OF NEMAX AND NIMAX -C - PARAMETER (LWORK = NGMX * NGMY * NEMAX) -C -C DERIVED PARAMETERS FOR SCALAR AND VECTOR ARRAY DIMENSIONS -C -C LSCAL - ELEMENTS IN A SCALAR (SURFACE LEVEL ONLY) ARRAY -C LWIND - ELEMENTS IN THE 3D WIND FIELD ARRAY -C LAREAS - ELEMENTS IN GROUND-LEVEL EMISSIONS ARRAY -C LC - ELEMENTS IN SPECIES CONCENTRATION ARRAY -C LIC - ELEMENTS IN INITIAL CONDITION CONCENTRATION ARRAY -C LAVG - ELEMENTS IN HOURLY AVERAGE GROUND-LEVEL CONC ARRAY -C - PARAMETER (LSCAL = NGMX * NGMY) - PARAMETER (LWIND = NGMX * NGMY * (NGMZ+1)) - PARAMETER (LAREAS = NGMX * NGMY * NEMAX) - PARAMETER (LC = NGMX * NGMY * NGMZ * NSMAX) - PARAMETER (LIC = NGMX * NGMY * NGMZ * NIMAX) - PARAMETER (LAVG = NGMX * NGMY * NSMAX) -C -C DERIVED PARAMETERS FOR BOUNDARY CONDITION ARRAYS -C - PARAMETER (LBR = NGMY * NGMZ * NSMAX) - PARAMETER (LBRIC = NGMY * NGMZ * NIMAX) - PARAMETER (LBC = NGMX * NGMZ * NSMAX) - PARAMETER (LBCIC = NGMX * NGMZ * NIMAX) -C -C TOTAL NUMBER OF STORAGE LOCATIONS REQUIRED FOR -C A VERTICAL COLUMN OF SPECIES CONCENTRATIONS -C - PARAMETER (LCOLSP = NSMAX * NGMZ) -C -C TOTAL NUMBER OF STORAGE LOCATIONS REQUIRED TO SPECIFY -C ALL CHEMICAL REACTION RATES IN A SINGLE VERTICAL COLUMN -C - PARAMETER (NRZ = NRMAX * NGMZ) - - - - - - - - - diff --git a/src/arome/chem/interface/aro_mnhc.h b/src/arome/chem/interface/aro_mnhc.h deleted file mode 100644 index 4562b1c1ef7382740d89bd05cd50e7f12a8bb238..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/aro_mnhc.h +++ /dev/null @@ -1,100 +0,0 @@ -INTERFACE - SUBROUTINE ARO_MNHC(PRSVSIN, PRHODREF, PTSTEP, & - PTHT, PABST, & - PRT, PLAT, PLON, & - PALB_UV, PZS, PZENITH, PZZ, & - KYEAR, KMONTH, KDAY, PTIME, & - KLON,KLEV,NSV, KRR, & - KTCOUNT, KLUOUT,NDIAG,PPEZDIAG,PRSVS) -!! -!!*** *ARO_MNHC* monitor of the chemical module of MesoNH-C -!! -!! PURPOSE -!! ------- -!! The purpose of this subroutine is to control the chemical module -!! i.e. to pass the meteorological parameters from MesoNH to its chemical -!! part and to call the different subroutines (calculation of rate constants, -!! photolysis rates, stiff solver,..) -!! -!! METHOD -!! ------ -!! The calculation of the chemical terms is performed using a loop -!! over all spatial dimensions. -!! -!! For each single grid point, all necessary meteorological parameters are -!! passed into the chemical core system (variable TZM). This variable is -!! then passed on to the subroutines that calculate the reaction and -!! photolysis rates. Then the chemical solver is called. As the chemistry -!! part works with different units than MesoNH (MesoNH uses mixing ratio, -!! the chemisty part uses molec/cm3) some unit conversion is also performed. -!! -!! Temporal integration is performed over a double timestep 2*PTSTEP -!! (except in the case of a cold start). If the timestep of MesoNH -!! is too large for the chemical solver, several smaller steps can -!! be taken using the NCH_SUBSTEPS parameter. -!! "SPLIT" : from PRSVS the scalar variable at t+dt is calculated and -!! given as input to the solver; the result is rewritten -!! into PRSVS; this corresponds to applying first only dynamics -!! and then only chemistry; this option assures positivity, but -!! degrades the order of the temporal integration. -!! In fact, an overhead of a factor two is produced here. -!! A future solution will be to calculate the dynamics -!! of the scalar variables not using leapfrog, but forward -!! temporal integration. -!! Vectorization Mask : Need ISVECMASK for photolysis (input(IN)) -!! ISVECNMASK = Nb of vector -!! IDT1 = Nb of points for the first dimension (for arome = size of vector) -!! IDT2 = Nb of points for the second dimension (for arome = 1) -!! IDT3 = Nb of points in vertical -!! -!! -!! -!! REFERENCE -!! --------- -!! Book 1, 2, 3 of MesoNH-chemistry -!! -!! AUTHOR -!! ------ -!! P. Tulet *CNRM / GMEI* and contributors of MesoNH-C (K. Shure, C. Mari, V. Crassier) -!! -!! MODIFICATIONS -!! ------------- -!! Original 10/11/04 -!! -!! EXTERNAL -!! -------- -USE PARKIND1 ,ONLY : JPIM, JPRB -! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -IMPLICIT NONE -! -!* 0.1 declarations of arguments -INTEGER(KIND=JPIM), INTENT(IN) :: KLON !NPROMA under CPG -INTEGER(KIND=JPIM), INTENT(IN) :: KLEV !Number of vertical levels -INTEGER(KIND=JPIM), INTENT(IN) :: NSV ! Number of passive scalar -INTEGER(KIND=JPIM), INTENT(IN) :: KRR ! Number of moist variables -REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,NSV), INTENT(IN) :: PRSVSIN ! Input source of scalar variable -REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV), INTENT(IN) :: PRHODREF ! iteration count -REAL(KIND=JPRB), INTENT(IN) :: PTSTEP ! time step of MesoNH -REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV), INTENT(IN) :: PTHT, PABST ! theta and pressure at t -REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,KRR), INTENT(IN) :: PRT ! moist variables at t -REAL(KIND=JPRB), DIMENSION(KLON,1), INTENT(IN) :: PLAT, PLON ! lat, lon of each points -REAL(KIND=JPRB), DIMENSION(KLON,1), INTENT(IN) :: PALB_UV, PZS, PZENITH -REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV), INTENT(IN) :: PZZ -INTEGER(KIND=JPIM), INTENT(IN) :: KYEAR ! Current Year -INTEGER(KIND=JPIM), INTENT(IN) :: KMONTH ! Current Month -INTEGER(KIND=JPIM), INTENT(IN) :: KDAY ! Current Day -REAL(KIND=JPRB), INTENT(IN) :: PTIME ! Current time in second -INTEGER(KIND=JPIM), INTENT(IN) :: KTCOUNT ! iteration count -INTEGER(KIND=JPIM), INTENT(IN) :: KLUOUT ! unit for output listing count -INTEGER(KIND=JPIM), INTENT(IN) :: NDIAG ! nb of diagnostics -REAL(KIND=JPRB), DIMENSION(KLON,KLEV,NDIAG),INTENT(INOUT) :: PPEZDIAG -REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,NSV), INTENT(OUT) :: PRSVS ! output source of scalar variable - -! -! -END SUBROUTINE ARO_MNHC -END INTERFACE diff --git a/src/arome/chem/interface/aro_mnhdust.h b/src/arome/chem/interface/aro_mnhdust.h deleted file mode 100644 index c0e1c96202ca02356007b6dfdd2db053703deca6..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/aro_mnhdust.h +++ /dev/null @@ -1,71 +0,0 @@ -INTERFACE -SUBROUTINE ARO_MNHDUST(KKL,KLON,KLEV,KSV,PTSTEP & - ,PSVTIN & !I [moments/molec_{air}] Transported moments of dust - ,PZZ & !I [m] height of layers - ,PDZZ & !I [m] layers thikness - ,PPABST & !I Pressure - ,PTHT & !I Potential temperature - ,PRHODREF & !I [kg/m3] density of air - ,KSWB & !I [nbr] number of shortwave bands - ,KTCOUNT & !I number of time step - ,PSVT & !O [moments/molec_{air}] Transported moments of dust - ,PPIZA_WVL & !O [-] single scattering albedo of dust - ,PCGA_WVL & !O [-] assymetry factor for dust layer - ,PTAUREL_WVL & !O [-] opt.depth/opt.depth(550) for dust - ,PAER & !O [-] ext coeff at 550 for dust - ,NDIAG & !I [-] nb of diagnostics - ,PPEZDIAG & !IO [-] diag Nb/m3,ug/m3,rg(nb;um),rg(m;um),SSA,assym,AOD/550,mode & wvl - ) - -! -!*** *ARO_MNHDUST* -! -! PURPOSE -! ------- - -! Interface routine for initialisation of dust optical properties -! before radiation scheme call - -! AUTHOR. -! ------- -! Y. Seity (CNRM/GMAP) -! 10-10-05 - -! MODIFICATIONS -! ------------- -! Original 10/10/05 -! -! EXTERNAL -! ------- - -USE PARKIND1 ,ONLY : JPIM,JPRB - - - IMPLICIT NONE - - !INPUT - INTEGER(KIND=JPIM), INTENT(IN) :: KKL ! IKL under apl_arome - INTEGER(KIND=JPIM), INTENT(IN) :: KLON ! NPROMA under CPG - INTEGER(KIND=JPIM), INTENT(IN) :: KLEV ! Number of vertical levels - INTEGER(KIND=JPIM), INTENT(IN) :: KSV ! Number of passive scalar - INTEGER(KIND=JPIM), INTENT(IN) :: KSWB !I number of shortwave wavelengths - INTEGER(KIND=JPIM), INTENT(IN) :: KTCOUNT !I number of time step - REAL(KIND=JPRB), INTENT(IN) :: PTSTEP ! Time step - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,KSV),INTENT(IN) :: PSVTIN !I [moments/molec{air}] transported moments of dust - INTEGER(KIND=JPIM), INTENT(IN) :: NDIAG ! nb of diagnostics - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PZZ !I [m] height of layers - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PDZZ !I [m] layers thikness - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PRHODREF !I [kg/m3] density of air - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PTHT !I [K] potentiel temperature - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PPABST !I [Pa] pressure - - !OUTPUT - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,KSV),INTENT(OUT) :: PSVT !O [moments/molec{air}] transported moments of dust - REAL(KIND=JPRB), DIMENSION(KLON,KLEV,KSWB),INTENT(INOUT) :: PPIZA_WVL !O [-] SSA of dust layer for all SW wavelengths - REAL(KIND=JPRB), DIMENSION(KLON,KLEV,KSWB),INTENT(INOUT) :: PCGA_WVL !O [-] assymetry for dust layer for all SW wvl - REAL(KIND=JPRB), DIMENSION(KLON,KLEV,KSWB),INTENT(INOUT) :: PTAUREL_WVL !O [-] AOD/550 for dust layer for all SW wvl - REAL(KIND=JPRB), DIMENSION(KLON,KLEV,NDIAG),INTENT(INOUT) :: PPEZDIAG - REAL(KIND=JPRB), DIMENSION(KLON,KLEV), INTENT(INOUT) :: PAER - -END SUBROUTINE ARO_MNHDUST -END INTERFACE diff --git a/src/arome/chem/interface/aro_rainaero.h b/src/arome/chem/interface/aro_rainaero.h deleted file mode 100644 index cda239ce122f71f8d77831dac4e65fd474304c74..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/aro_rainaero.h +++ /dev/null @@ -1,62 +0,0 @@ -INTERFACE -SUBROUTINE ARO_RAINAERO(KLON,KLEV,NSV,KRR, PTSTEP & - ,PSVTIN & !I [moments/molec_{air}] Transported moments of dust - ,PZZ & !I [m] height of layers - ,PPABST & ! Pressure - ,PTHT & ! Potential temperature - ,PRHODREF & !I [kg/m3] density of air - ,KTCOUNT & ! number of time step - ,PRT & ! moist field - ,PEVAP & ! evaporation profile - ,KSPLITR & ! rain sedimentation time splitting - ,PSVT & !O [moments/molec_{air}] Transported moments of dust - ) - -! -!*** *ARO_RAINAERO* -! -! PURPOSE -! ------- - -! Interface routine for initialisation of dust optical properties -! before radiation scheme call - -! AUTHOR. -! ------- -! P. Tulet - -! MODIFICATIONS -! ------------- -! Original 10/10/05 -! -! EXTERNAL -! ------- - - - -USE PARKIND1 ,ONLY : JPIM,JPRB - - - IMPLICIT NONE - - !INPUT - INTEGER(KIND=JPIM), INTENT(IN) :: KLON !NPROMA under CPG - INTEGER(KIND=JPIM), INTENT(IN) :: KLEV !Number of vertical levels - INTEGER(KIND=JPIM), INTENT(IN) :: NSV ! Number of passive scalar - INTEGER(KIND=JPIM), INTENT(IN) :: KRR ! Number of moist variables - REAL(KIND=JPRB), INTENT(IN) :: PTSTEP ! Time step - - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,NSV),INTENT(IN) :: PSVTIN !I [moments/molec_{air}] transported moments of dust - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,KRR),INTENT(IN) :: PRT ! Moist variables at time t - - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PZZ !I [m] height of layers - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PRHODREF !I [kg/m3] density of air - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PTHT !I [K] potentiel temperature - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PPABST !I [Pa] pressure - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV),INTENT(IN) :: PEVAP !I Evaporation - INTEGER(KIND=JPIM), INTENT(IN) :: KTCOUNT !I number of time step - INTEGER(KIND=JPIM), INTENT(IN) :: KSPLITR ! Number of small time step - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,NSV),INTENT(OUT) :: PSVT !O [moments/molec_{air}] transported moments of dust - -END SUBROUTINE ARO_RAINAERO -END INTERFACE diff --git a/src/arome/chem/interface/aro_wetdep.h b/src/arome/chem/interface/aro_wetdep.h deleted file mode 100644 index da72bfd1419dbfdb3d4b670f89e0e256c2aa59b7..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/aro_wetdep.h +++ /dev/null @@ -1,61 +0,0 @@ -INTERFACE -SUBROUTINE ARO_WETDEP(KLON,KLEV,NSV,KRR, PTSTEP & - ,PSVT & !I [moments/molec_{air}] Transported moments of dust - ,PZZ & !I [m] height of layers - ,PPABST & ! Pressure - ,PTHT & ! Potential temperature - ,PRHODREF & !I [kg/m3] density of air - ,KTCOUNT & ! number of time step - ,PRT & ! moist field - ,PEVAP & ! evaporation profile - ,KSPLITR & ! rain sedimentation time splitting - ) - -! -!*** *ARO_RAINAERO* -! -! PURPOSE -! ------- - -! Interface routine for initialisation of dust optical properties -! before radiation scheme call - -! AUTHOR. -! ------- -! P. Tulet - -! MODIFICATIONS -! ------------- -! Original 10/10/05 -! 01-02-2011 M. Mokhtari: Adaptation of ARO_RAINAERO under ARO_WETDEP for Aladin -! -! EXTERNAL -! ------- - - - -USE PARKIND1 ,ONLY : JPIM,JPRB - - - IMPLICIT NONE - - !INPUT - INTEGER(KIND=JPIM), INTENT(IN) :: KLON !NPROMA under CPG - INTEGER(KIND=JPIM), INTENT(IN) :: KLEV !Number of vertical levels - INTEGER(KIND=JPIM), INTENT(IN) :: NSV ! Number of passive scalar - INTEGER(KIND=JPIM), INTENT(IN) :: KRR ! Number of moist variables - REAL(KIND=JPRB), INTENT(IN) :: PTSTEP ! Time step - - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2,NSV),INTENT(INOUT) :: PSVT !I [moments/molec_{air}] transported moments of dust - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2,KRR),INTENT(IN) :: PRT ! Moist variables at time t - - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2),INTENT(IN) :: PZZ !I [m] height of layers - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2),INTENT(IN) :: PRHODREF !I [kg/m3] density of air - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2),INTENT(IN) :: PTHT !I [K] potentiel temperature - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2),INTENT(IN) :: PPABST !I [Pa] pressure - REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2),INTENT(IN) :: PEVAP !I Evaporation - INTEGER(KIND=JPIM), INTENT(IN) :: KTCOUNT !I number of time step - INTEGER(KIND=JPIM), INTENT(IN) :: KSPLITR ! Number of small time step - -END SUBROUTINE ARO_WETDEP -END INTERFACE diff --git a/src/arome/chem/interface/aroini_mnhc.h b/src/arome/chem/interface/aroini_mnhc.h deleted file mode 100644 index 15e1103f7e5aa4c76fbf505b5b105fa4aad78724..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/aroini_mnhc.h +++ /dev/null @@ -1,54 +0,0 @@ -INTERFACE -SUBROUTINE AROINI_MNHC(OUSECHEM, OORILAM, ODUST, ODEPOS, & - OINITCHEM, OINITDUST, OINITORILAM,& - KDAY,KMONTH, KYEAR, KLUOUT, KPROC) - -!! -!!*** *AROINI_MNHC* -!! -!! PURPOSE -!! ------- -! initialize chemical variables -! initialize chemical core system -!! -!! -!! AUTHOR -!! ------ -!! P. Tulet *CNRM / GMEI* and contributors of MesoNH-C (K. Shure, C. Mari, V. Crassier) -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/04/05 -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE PARKIND1 ,ONLY : JPIM - -!! -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -LOGICAL, INTENT(IN) :: OUSECHEM -LOGICAL, INTENT(IN) :: ODUST -LOGICAL, INTENT(IN) :: OORILAM -LOGICAL, INTENT(IN) :: ODEPOS -LOGICAL, INTENT(IN) :: OINITCHEM -LOGICAL, INTENT(IN) :: OINITDUST -LOGICAL, INTENT(IN) :: OINITORILAM -INTEGER(KIND=JPIM), INTENT(IN) :: KLUOUT ! output listing channel -INTEGER(KIND=JPIM), INTENT(IN) :: KYEAR ! year of initialization -INTEGER(KIND=JPIM), INTENT(IN) :: KMONTH ! month of initialization -INTEGER(KIND=JPIM), INTENT(IN) :: KDAY ! day of initialization -INTEGER(KIND=JPIM), INTENT(IN) :: KPROC ! proc number -! -END SUBROUTINE AROINI_MNHC -END INTERFACE diff --git a/src/arome/chem/interface/aroini_nsv.h b/src/arome/chem/interface/aroini_nsv.h deleted file mode 100644 index 8f2f6049e4cf1d43ce352ac022bebb81741b52e9..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/aroini_nsv.h +++ /dev/null @@ -1,12 +0,0 @@ -INTERFACE -SUBROUTINE AROINI_NSV(KSV,KSV_CHEMBEG, KSV_CHEMEND, KSV_AERBEG, KSV_AEREND, & - KSV_DSTBEG, KSV_DSTEND, KSV_DSTDEPBEG, KSV_DSTDEPEND,& - KSV_CO2) -USE PARKIND1 ,ONLY : JPIM - -INTEGER(KIND=JPIM), INTENT(IN)::KSV,KSV_CHEMBEG, KSV_CHEMEND, KSV_AERBEG,& - & KSV_AEREND , KSV_DSTBEG , KSV_DSTEND,& - & KSV_DSTDEPBEG, KSV_DSTDEPEND, KSV_CO2 - -END SUBROUTINE AROINI_NSV -END INTERFACE diff --git a/src/arome/chem/interface/aroini_nsv0.h b/src/arome/chem/interface/aroini_nsv0.h deleted file mode 100644 index 1dd2668bf5c07e515421d5ee5caff381dd759482..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/aroini_nsv0.h +++ /dev/null @@ -1,64 +0,0 @@ -INTERFACE -SUBROUTINE AROINI_NSV0(OUSECHEM,OORILAM,ODUST,OCO2, ODEPOS, KGFL,KGFL_EXT, & - KSV_CHEMBEG, KSV_CHEMEND, KSV_DSTBEG, KSV_DSTEND, & - KSV_DSTDEPBEG, KSV_DSTDEPEND, KSV_AERBEG, KSV_AEREND,& - KSV_CO2, CLNAME) - -USE PARKIND1 ,ONLY : JPIM - -!**** *SUINI_NSV * - Setting up the boundaries of the scalar vector GFL_EXT - -! Purpose. -! -------- -! Initialization of YOMNSV variables -!** Interface. -! ---------- -! *CALL* *AROINI_NSV0* - -! Explicit arguments : -! -------------------- - -! Implicit arguments : -! -------------------- -! Common MODD_CH_M9 -! Common MODD_CH_AEROSOL - -! Method. -! ------- - -! Externals. -! ---------- - -! Reference. -! ---------- -! - -! Author. -! ------- -! P. Tulet *CNRM* - -! Modifications. -! -------------- - -IMPLICIT NONE - -LOGICAL,INTENT(IN):: OORILAM -LOGICAL,INTENT(IN):: ODUST -LOGICAL,INTENT(IN):: OCO2 -LOGICAL,INTENT(IN):: OUSECHEM -LOGICAL,INTENT(IN):: ODEPOS -INTEGER(KIND=JPIM),INTENT(IN) ::KGFL -INTEGER(KIND=JPIM),INTENT(INOUT) ::KGFL_EXT -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_CHEMBEG -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_CHEMEND -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_DSTBEG -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_DSTEND -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_DSTDEPBEG -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_DSTDEPEND -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_AERBEG -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_AEREND -INTEGER(KIND=JPIM),INTENT(INOUT) ::KSV_CO2 -CHARACTER(LEN=15), DIMENSION(KGFL), INTENT(INOUT) :: CLNAME - -END SUBROUTINE AROINI_NSV0 -END INTERFACE diff --git a/src/arome/chem/interface/ch_aer_init.h b/src/arome/chem/interface/ch_aer_init.h deleted file mode 100644 index 96648fc874ac869945fa9821b546c3a97952c6bd..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/ch_aer_init.h +++ /dev/null @@ -1,25 +0,0 @@ -INTERFACE - SUBROUTINE CH_AER_INIT(PCHEM,PAERO, PRHODREF) -!! ############################################################ -!! -!! -!! EXTERNAL -!! -------- -!! None -!! -USE PARKIND1 ,ONLY : JPIM ,JPRB -!! -IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL(KIND=JPRB), DIMENSION(:,:,:,:), INTENT(INOUT) :: PCHEM, PAERO -REAL(KIND=JPRB), DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -! -END SUBROUTINE CH_AER_INIT -END INTERFACE diff --git a/src/arome/chem/interface/ch_aer_mod_init.h b/src/arome/chem/interface/ch_aer_mod_init.h deleted file mode 100644 index d600775f3b82dfc5b5e9edf46f1b87128e56ae8b..0000000000000000000000000000000000000000 --- a/src/arome/chem/interface/ch_aer_mod_init.h +++ /dev/null @@ -1,20 +0,0 @@ -INTERFACE - SUBROUTINE CH_AER_MOD_INIT -!! #################################### -!! -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! - -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -END SUBROUTINE CH_AER_MOD_INIT -END INTERFACE diff --git a/src/arome/chem/internals/addpnt.F b/src/arome/chem/internals/addpnt.F deleted file mode 100644 index 45657f8ac48a3393267486a0343f6e7c739d5cbe..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/addpnt.F +++ /dev/null @@ -1,85 +0,0 @@ -! ######spl - SUBROUTINE addpnt ( x, y, ld, n, xnew, ynew ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! calling parameters - - INTEGER ld, n - REAL x(ld), y(ld) - REAL xnew, ynew - INTEGER ierr - -! local variables - - INTEGER insert - INTEGER i - - -! initialize error flag - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ADDPNT',0,ZHOOK_HANDLE) - ierr = 0 - -! check n<ld to make sure x will hold another point - - IF (n .GE. ld) THEN - WRITE(0,*) '>>> ERROR (ADDPNT) <<< Cannot expand array ' - WRITE(0,*) ' All elements used.' - STOP - ENDIF - - insert = 1 - i = 2 - -! check, whether x is already sorted. -! also, use this loop to find the point at which xnew needs to be inserted -! into vector x, if x is sorted. - - 10 CONTINUE - IF (i .LT. n) THEN - IF (x(i) .LT. x(i-1)) THEN - WRITE(0,*) '>>> ERROR (ADDPNT) <<< x-data must be '// & - & 'in ascending order!' - STOP - ELSE - IF (xnew .GT. x(i)) insert = i + 1 - ENDIF - i = i+1 - GOTO 10 - ENDIF - -! if <xnew,ynew> needs to be appended at the end, just do so, -! otherwise, insert <xnew,ynew> at position INSERT - - IF ( xnew .GT. x(n) ) THEN - - x(n+1) = xnew - y(n+1) = ynew - - ELSE - -! shift all existing points one index up - - DO i = n, insert, -1 - x(i+1) = x(i) - y(i+1) = y(i) - ENDDO - -! insert new point - - x(insert) = xnew - y(insert) = ynew - - ENDIF - -! increase total number of elements in x, y - - n = n+1 - - IF (LHOOK) CALL DR_HOOK('ADDPNT',1,ZHOOK_HANDLE) - ENDSUBROUTINE ADDPNT diff --git a/src/arome/chem/internals/aer_effic.F90 b/src/arome/chem/internals/aer_effic.F90 deleted file mode 100644 index bd35a1a78c280ec70c37d9865a632dd1bfcdb63e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/aer_effic.F90 +++ /dev/null @@ -1,178 +0,0 @@ -! ######spl -SUBROUTINE AER_EFFIC(PRG,PVGG, & !aerosol radius/fall speed (m/s) - PRHODREF, & !Air density - PMUW, PMU, & !mu water/air - PDPG, PEFC, & !diffusivity, efficiency - PRRS, & ! Rain water m.r. at time t - KMODE, & ! Number of aerosol modes - PTEMP, PCOR, & ! air temp, cunningham corr factor - PDENSITY_AER ) ! aerosol density -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!!**********AER_EFFIC********** -!! PURPOSE -!! ------- -!! Calculate the collection efficiency of -! a falling drop interacting with a dust aerosol -! for use with aer_wet_dep_kmt_warm.f90 -!! -!!** METHOD -!! ------ -!! Using basic theory, and the one dimensional variables sent -!! from aer_wet_dep_kmt_warm.f90, calculation of the average -!! fall speed calculations, chapter 17.3.4, MESONH Handbook -!! droplet number based on the Marshall_Palmer distribution -!! and Stokes number, Reynolds number, etc. based on theory -!! (S&P, p.1019) -!! -!! REFERENCE -!! --------- -!! Seinfeld and Pandis p.1019 -!! MESONH Handbook chapter 17.3.4 -!! -!! AUTHOR -!! ------ -!! K. Crahan Kaku / P. Tulet (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -!----------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_RAIN_ICE_PARAM -USE MODD_RAIN_ICE_DESCR -USE MODD_CST, ONLY : XPI, XRHOLW, XP00, XRD -USE MODD_PARAMETERS , ONLY : JPVEXT -USE MODD_REF, ONLY : XTHVREFZ -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -REAL, DIMENSION(:,:), INTENT(IN) :: PRG, PVGG -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF -REAL, DIMENSION(:,:), INTENT(IN) :: PDPG -REAL, DIMENSION(:), INTENT(IN) :: PMU, PMUW -REAL, DIMENSION(:,:), INTENT(INOUT) :: PEFC -REAL, DIMENSION(:), INTENT(IN) :: PRRS -REAL, DIMENSION(:), INTENT(IN) :: PTEMP -REAL, DIMENSION(:,:), INTENT(IN) :: PCOR -INTEGER, INTENT(IN) :: KMODE -REAL, INTENT(IN) :: PDENSITY_AER -! -! -!* 0.2 declaration of local variables -! -INTEGER :: IKB ! Coordinates of the first physical - ! points along z -REAL :: ZRHO00 ! Surface reference air density -!viscosity ratio, Reynolds number -REAL, DIMENSION(SIZE(PRG,1)) :: ZOMG, ZREY -!rain radius, m, and rain fall speed, m/s; aerosol radius (m), -REAL, DIMENSION(SIZE(PRG,1)) :: ZRR, ZVR -!lambda, number concentration according to marshall palmer, -REAL, DIMENSION(SIZE(PRG,1)) :: ZNT, ZLBDA -! Rain water m.r. source -REAL, DIMENSION(SIZE(PRG,1)) :: ZRRS -!RHO_dref*r_r, Rain LWC -REAL, DIMENSION(SIZE(PRG,1)) :: RLWC -! schmidts number -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZSCH -! -!Stokes number, ratio of diameters,aerosol radius -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZSTO, ZPHI, ZRG -! S Star Term -REAL, DIMENSION(SIZE(PRG,1)) :: ZSTA, ZDIFF, ZTAU -! -!Term 1, Term 2, Term 3, Term 4 such that -! E = Term1 * Term 2 + Term 3 + Term 4 -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZT1, ZT2 -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZT3, ZT4 -! -INTEGER :: JI,JK -! -!----------------------------------------------------------------- -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_EFFIC',0,ZHOOK_HANDLE) -ZRRS(:)=PRRS(:) -IKB = 1 + JPVEXT -ZRHO00 = XP00/(XRD*XTHVREFZ(IKB)) -ZRG(:,:)=PRG(:,:)*1.E-6 !change units to meters -! -!Fall Speed calculations -!similar to rain_ice.f90, chapter 17.3.4, MESONH Handbook -! -ZVR (:)= XFSEDR * ZRRS(:)**(XEXSEDR-1) * & - PRHODREF(:)**(XEXSEDR-XCEXVT-1) -! Drop Radius calculation in m -!lbda = pi*No*rho(lwc)/(rho(dref)*rain rate) p.212 MESONH Handbook -! compute the slope parameter Lbda_r -ZLBDA(:) = XLBR*( PRHODREF(:)* ZRRS(:) )**XLBEXR -!Number concentration NT=No/lbda p. 415 Jacobson -ZNT (:) = XCCR/ZLBDA (:) -!rain lwc (kg/m3) = rain m.r.(kg/kg) * rho_air(kg/m3) -RLWC(:)=ZRRS(:)*PRHODREF(:) -!4/3 *pi *r³*NT*rho_eau(kg/m3) =rho(lwc)=rho(air)* qc(kg/kg) -ZRR(:) = (RLWC(:)/(XRHOLW*ZNT(:)*4./3.*XPI))**(1./3.) -! -!Fall speed cannot be faster than 7 m/s -ZVR (:)=MIN(ZVR (:),7.) - -!Ref SEINFELD AND PANDIS p.1019 -! Viscosity Ratio -ZOMG(:)=PMUW(:)/PMU(:) -!!Reynolds number -ZREY(:)=ZRR(:)*ZVR(:)*PRHODREF(:)/PMU(:) -ZREY(:)= MAX(ZREY(:), 1E-2) - -!S Star -ZSTA(:)=(1.2+1/12*LOG(1+ZREY(:)))/(1+LOG(1+ZREY(:))) -PEFC(:,:)=0.0 -DO JI=1,KMODE -! -!Scmidts number - ZSCH(:,JI)=PMU(:)/PRHODREF(:)/PDPG(:,JI) -! Rain-Aerosol relative velocity - ZDIFF(:) = MAX(ZVR(:)-PVGG(:,JI),0.) -! Relaxation time - ZTAU(:) = (ZRG(:,JI)*2.)**2. * PDENSITY_AER * PCOR(:,JI) / (18.*PMU(:)) -! Stockes number - ZSTO(:,JI)= ZTAU(:) * ZDIFF(:) / ZRR(:) -!Ratio of diameters - ZPHI(:,JI)=ZRG(:,JI)/ZRR(:) - ZPHI(:,JI)=MIN(ZPHI(:,JI), 1.) -!Term 1 - ZT1(:,JI)=4.0/ZREY(:)/ZSCH(:,JI) -!Term 2 - ZT2(:,JI)=1.0+0.4*ZREY(:)**(0.5)*ZSCH(:,JI)**(1./3.)+ & - 0.16*ZREY(:)**(0.5)*ZSCH(:,JI)**(0.5) - -!Brownian diffusion - ZT1(:,JI)= ZT1(:,JI)*ZT2(:,JI) -!Term 3 - interception - ZT3(:,JI)=4.*ZPHI(:,JI)*(1./ZOMG(:)+ & - (1.0+2.0*ZREY(:)**0.5)*ZPHI(:,JI)) - - ZT4(:,JI)=0.0 - WHERE(ZSTO(:,JI).GT.ZSTA(:)) -!Term 4 - impaction - ZT4(:,JI)=((ZSTO(:,JI)-ZSTA(:))/ & - (ZSTO(:,JI)-ZSTA(:)+2./3.))**(3./2.) & - *(XRHOLW/PDENSITY_AER)**(1./2.) - - END WHERE -!Collision Efficiancy - PEFC(:,JI)=ZT1(:,JI)+ ZT3(:,JI)+ZT4(:,JI) -! Physical radius of a rain collector droplet up than 20 um -WHERE (ZRR(:) .LE. 20.E-6) - PEFC(:,JI)= 0. -END WHERE -ENDDO -PEFC(:,:)=MIN(PEFC(:,:),1.0) -PEFC(:,:)=MAX(PEFC(:,:),0.0) - -IF (LHOOK) CALL DR_HOOK('AER_EFFIC',1,ZHOOK_HANDLE) -END SUBROUTINE AER_EFFIC diff --git a/src/arome/chem/internals/aer_effic_dep.F90 b/src/arome/chem/internals/aer_effic_dep.F90 deleted file mode 100644 index 91b36592c02ea89b6e247e5b3461266083be084e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/aer_effic_dep.F90 +++ /dev/null @@ -1,173 +0,0 @@ -! ######spl -SUBROUTINE AER_EFFIC_DEP(PRG,PVGG, & !aerosol radius/fall speed (m/s) - PRHODREF, & !Air density - PMUW, PMU, & !mu water/air - PDPG, PEFC, & !diffusivity, efficiency - PRRS, & ! Rain water m.r. at time t - KMODE, & ! Number of aerosol modes - PTEMP, PCOR, & ! air temp, cunningham corr factor - PDENSITY_AER ) ! aerosol density -!! ####################################### -!!**********AER_EFFIC********** -!! PURPOSE -!! ------- -!! Calculate the collection efficiency of -! a falling drop interacting with a dust aerosol -! for use with aer_wet_dep_kmt_warm.f90 -!! -!!** METHOD -!! ------ -!! Using basic theory, and the one dimensional variables sent -!! from aer_wet_dep_kmt_warm.f90, calculation of the average -!! fall speed calculations, chapter 17.3.4, MESONH Handbook -!! droplet number based on the Marshall_Palmer distribution -!! and Stokes number, Reynolds number, etc. based on theory -!! (S&P, p.1019) -!! -!! REFERENCE -!! --------- -!! Seinfeld and Pandis p.1019 -!! MESONH Handbook chapter 17.3.4 -!! -!! AUTHOR -!! ------ -!! K. Crahan Kaku / P. Tulet (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! 01-02-2011 M. Mokhtari: Adaptation of AER_EFFIC under AER_EFFIC_DEP for Aladin -!----------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_WET_DEP_PARAM -USE MODD_WET_DEP_DESCR -USE MODD_CST, ONLY : XPI, XRHOLW, XP00, XRD -USE MODD_PARAMETERS_DEP , ONLY : JPVEXT -USE MODD_REF, ONLY : XTHVREFZ -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -REAL, DIMENSION(:,:), INTENT(IN) :: PRG, PVGG -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF -REAL, DIMENSION(:,:), INTENT(IN) :: PDPG -REAL, DIMENSION(:), INTENT(IN) :: PMU, PMUW -REAL, DIMENSION(:,:), INTENT(INOUT) :: PEFC -REAL, DIMENSION(:), INTENT(IN) :: PRRS -REAL, DIMENSION(:), INTENT(IN) :: PTEMP -REAL, DIMENSION(:,:), INTENT(IN) :: PCOR -INTEGER, INTENT(IN) :: KMODE -REAL, INTENT(IN) :: PDENSITY_AER -! -! -!* 0.2 declaration of local variables -! -INTEGER :: IKB ! Coordinates of the first physical - ! points along z -REAL :: ZRHO00 ! Surface reference air density -!viscosity ratio, Reynolds number -REAL, DIMENSION(SIZE(PRG,1)) :: ZOMG, ZREY -!rain radius, m, and rain fall speed, m/s; aerosol radius (m), -REAL, DIMENSION(SIZE(PRG,1)) :: ZRR, ZVR -!lambda, number concentration according to marshall palmer, -REAL, DIMENSION(SIZE(PRG,1)) :: ZNT, ZLBDA -! Rain water m.r. source -REAL, DIMENSION(SIZE(PRG,1)) :: ZRRS -!RHO_dref*r_r, Rain LWC -REAL, DIMENSION(SIZE(PRG,1)) :: RLWC -! schmidts number -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZSCH -! -!Stokes number, ratio of diameters,aerosol radius -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZSTO, ZPHI, ZRG -! S Star Term -REAL, DIMENSION(SIZE(PRG,1)) :: ZSTA, ZDIFF, ZTAU -! -!Term 1, Term 2, Term 3, Term 4 such that -! E = Term1 * Term 2 + Term 3 + Term 4 -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZT1, ZT2 -REAL, DIMENSION(SIZE(PRG,1),KMODE) :: ZT3, ZT4 -! -INTEGER :: JI,JK -! -!----------------------------------------------------------------- -ZRRS(:)=PRRS(:) -IKB = 1 + JPVEXT -ZRHO00 = XP00/(XRD*XTHVREFZ(IKB)) -ZRG(:,:)=PRG(:,:)*1.E-6 !change units to meters -! -!Fall Speed calculations -!similar to rain_ice.f90, chapter 17.3.4, MESONH Handbook -! -ZVR (:)= XFSEDR * ZRRS(:)**(XEXSEDR-1) * & - PRHODREF(:)**(XEXSEDR-XCEXVT-1) -! Drop Radius calculation in m -!lbda = pi*No*rho(lwc)/(rho(dref)*rain rate) p.212 MESONH Handbook -! compute the slope parameter Lbda_r -ZLBDA(:) = XLBR*( PRHODREF(:)* ZRRS(:) )**XLBEXR -!Number concentration NT=No/lbda p. 415 Jacobson -ZNT (:) = XCCR/ZLBDA (:) -!rain lwc (kg/m3) = rain m.r.(kg/kg) * rho_air(kg/m3) -RLWC(:)=ZRRS(:)*PRHODREF(:) -!4/3 *pi *r�*NT*rho_eau(kg/m3) =rho(lwc)=rho(air)* qc(kg/kg) -ZRR(:) = (RLWC(:)/(XRHOLW*ZNT(:)*4./3.*XPI))**(1./3.) -! -!Fall speed cannot be faster than 7 m/s -ZVR (:)=MIN(ZVR (:),7.) - -!Ref SEINFELD AND PANDIS p.1019 -! Viscosity Ratio -ZOMG(:)=PMUW(:)/PMU(:) -!!Reynolds number -ZREY(:)=ZRR(:)*ZVR(:)*PRHODREF(:)/PMU(:) -ZREY(:)= MAX(ZREY(:), 1E-2) - -!S Star -ZSTA(:)=(1.2+1/12*LOG(1+ZREY(:)))/(1+LOG(1+ZREY(:))) -PEFC(:,:)=0.0 -DO JI=1,KMODE -! -!Scmidts number - ZSCH(:,JI)=PMU(:)/PRHODREF(:)/PDPG(:,JI) -! Rain-Aerosol relative velocity - ZDIFF(:) = MAX(ZVR(:)-PVGG(:,JI),0.) -! Relaxation time - ZTAU(:) = (ZRG(:,JI)*2.)**2. * PDENSITY_AER * PCOR(:,JI) / (18.*PMU(:)) -! Stockes number - ZSTO(:,JI)= ZTAU(:) * ZDIFF(:) / ZRR(:) -!Ratio of diameters - ZPHI(:,JI)=ZRG(:,JI)/ZRR(:) - ZPHI(:,JI)=MIN(ZPHI(:,JI), 1.) -!Term 1 - ZT1(:,JI)=4.0/ZREY(:)/ZSCH(:,JI) -!Term 2 - ZT2(:,JI)=1.0+0.4*ZREY(:)**(0.5)*ZSCH(:,JI)**(1./3.)+ & - 0.16*ZREY(:)**(0.5)*ZSCH(:,JI)**(0.5) - -!Brownian diffusion - ZT1(:,JI)= ZT1(:,JI)*ZT2(:,JI) -!Term 3 - interception - ZT3(:,JI)=4.*ZPHI(:,JI)*(1./ZOMG(:)+ & - (1.0+2.0*ZREY(:)**0.5)*ZPHI(:,JI)) - - ZT4(:,JI)=0.0 - WHERE(ZSTO(:,JI).GT.ZSTA(:)) -!Term 4 - impaction - ZT4(:,JI)=((ZSTO(:,JI)-ZSTA(:))/ & - (ZSTO(:,JI)-ZSTA(:)+2./3.))**(3./2.) & - *(XRHOLW/PDENSITY_AER)**(1./2.) - - END WHERE -!Collision Efficiancy - PEFC(:,JI)=ZT1(:,JI)+ ZT3(:,JI)+ZT4(:,JI) -! Physical radius of a rain collector droplet up than 20 um -WHERE (ZRR(:) .LE. 20.E-6) - PEFC(:,JI)= 0. -END WHERE -ENDDO -PEFC(:,:)=MIN(PEFC(:,:),1.0) -PEFC(:,:)=MAX(PEFC(:,:),0.0) - -END SUBROUTINE AER_EFFIC_DEP diff --git a/src/arome/chem/internals/aer_velgrav.F90 b/src/arome/chem/internals/aer_velgrav.F90 deleted file mode 100644 index dee9793ebc5cb4fddb4dc5d1bede70b694ae93fb..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/aer_velgrav.F90 +++ /dev/null @@ -1,108 +0,0 @@ -! ######spl - SUBROUTINE AER_VELGRAV(PRG, PABST, KMODE, PMU, & - PVGG, PDPG,PTEMP, PCOR, PDENSITY_AER) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ################################################### -!! -!! PURPOSE -!! ------- -!! Calculate the fall speed of an aerosol -!! -!! REFERENCE -!! --------- -!! Seinfeld and Pandis p455 -!! -!! AUTHOR -!! ------ -!! P. Tulet (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! K. Kaku 09/01/07 (CNRM/GMEI) adapted for one -!! dimensional calculations -!! and explicit Cunningham's correction factor -!! -! Entry variables: -! -! PM(IN) -Array of moments -! -!************************************************************* -! Exit variables: -! -! PFSED(IN) -Array of moment variation due to dry deposition -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! PDPG -Polydisperse diffusivity (m2/s) -! PVGG -Polydisperse settling velocity (m/s) -!************************************************************ -!! -!----------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CST -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(IN) :: PRG ! aerosol radius [µm] -REAL, DIMENSION(:), INTENT(IN) :: PTEMP ! air tempurature [K] -REAL, DIMENSION(:), INTENT(IN) :: PABST ! Pressure (Pa) -INTEGER, INTENT(IN) :: KMODE ! Nb aerosols modes -REAL, INTENT(IN) :: PDENSITY_AER -REAL, DIMENSION(:), INTENT(OUT) :: PMU ! air viscosity -REAL, DIMENSION(:,:), INTENT(OUT) :: PVGG ! Gravitation velovity (m/s) -REAL, DIMENSION(:,:), INTENT(OUT) :: PDPG ! Diffusion coeff (m2/s) -REAL, DIMENSION(:,:), INTENT(OUT) :: PCOR ! Cunningham factor [unitless] - -! -!* 0.2 declaration of local variables -! -REAL, DIMENSION(SIZE(PRG,1)) :: ZLAMBDA -! -REAL, DIMENSION(SIZE(PRG,1)) :: ZRG !radius in meters - -! -REAL, PARAMETER :: gasmw=28.9644E-3 -REAL, PARAMETER :: gasr=8.3143 - -REAL :: ZK -INTEGER :: JI -! -!----------------------------------------------------------------- -! -! Sutherland's equation for viscosity -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_VELGRAV',0,ZHOOK_HANDLE) -PMU(:)=1.8325d-5*416.16/(PTEMP(:)+120)*(PTEMP(:)/296.16)*SQRT(PTEMP(:)/296.16) -PMU(:)=MAX(PMU(:),1.e-12) -! -! Mean free path of air (Seinfeld and Pandis p455) -ZLAMBDA(:)=2*PMU(:)/(PABST(:)*SQRT(8*gasmw/(XPI*gasr*PTEMP(:)))) - -! -DO JI=1,KMODE -! -!put radius into meters - ZRG(:)=PRG(:,JI) * 1E-6 - ! -!Slip Correction Factor - PCOR(:,JI)=1+ZLAMBDA(:)/ZRG(:)*(1.257+ & - 0.4*exp(-1.1*ZRG(:)/ZLAMBDA(:))) - PCOR(:,JI)=MAX(PCOR(:,JI),1.0) - - ! - PVGG(:,JI)= 2.*XG*PDENSITY_AER*ZRG(:)**2 /(9.*PMU(:))*PCOR(:,JI) - PDPG(:,JI)=XBOLTZ*PTEMP(:)*PCOR(:,JI) & - / (6.*XPI* ZRG(:)*PMU(:)) - ! -ENDDO -! -!! -IF (LHOOK) CALL DR_HOOK('AER_VELGRAV',1,ZHOOK_HANDLE) -END SUBROUTINE AER_VELGRAV diff --git a/src/arome/chem/internals/aer_wet_dep.F90 b/src/arome/chem/internals/aer_wet_dep.F90 deleted file mode 100644 index b21fd16b07e7445d3f657b57d35ad8f5dad1682b..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/aer_wet_dep.F90 +++ /dev/null @@ -1,822 +0,0 @@ -! ######spl - SUBROUTINE AER_WET_DEP (KSPLITR, PTSTEP, PZZ, & - PRHODREF, PRCT, PRRT, & - PRCS, PRRS, PSVT, PTHT, & - PPABST, PRGAER, PEVAP3D, KMODE, & - PDENSITY_AER, PMASSMIN, PSEA, PTOWN, & - PCCT, PCRT ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################################### -! -!!**** * - compute the explicit microphysical processes involved in the -!!*** * - wet deposition of aerosols species in mixed clouds -!! -!! PURPOSE -!! ------- -!! -!! The purpose of this subroutine is to calculate the mass transfer -!! of aerosol species between cloud hydrometeors. -!! -!! -!! -!!** METHOD -!! ------ -!! Aerosols mass are dissolved into the cloud water and rain -!! drops, it is subject to transfer through the microphysical processes -!! that affect the parent hydrometeor [Rutledge et al., 1986]. -!! Aerosol mass transfer has been computed using scavenging coefficient -!! and brownian nucleation scavenging coefficient (Seinfeld and Pandis, -!! 1998; Tost et al, 2006). -!! -!! The sedimentation rate is computed with a time spliting technique and -!! an upstream scheme, written as a difference of non-advective fluxes. -!! -!! KMODE: Number of aerosol modes (lognormal, bin..) -!! PSVT : 1 => KMODE : dry aerosol mass -!! PSVT : KMODE+1 => 2*KMODE : aerosol mass in cloud -!! PSVT : 2*KMODE+1 => 3*KMODE: aerosol mass in rain - -!! -!! EXTERNAL -!! -------- -!! None -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_CST -!! XP00 ! Reference pressure -!! XRD,XRV ! Gaz constant for dry air, vapor -!! XMD,XMV ! Molecular weight for dry air, vapor -!! XCPD ! Cpd (dry air) -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! P. Tulet & K. Crahan-Kaku * CNRM * -!! -!! Based on rain_ice.f90 and ch_wet_dep_kmt_warm.f90 -!! from C. Mari & J.P. Pinty * LA* -!! -!! -!! MODIFICATIONS -!! ------------- -!! Original 09/05/07 -!! 01-02-2011 M. Mokhtari: Adaptation of aer_wet_dep_kmt_warm.f90 under aer_wet_dep for Aladin -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CST -USE MODD_WET_DEP_PARAM -USE MODD_WET_DEP_DESCR -USE MODI_AER_VELGRAV -USE MODI_AER_EFFIC_DEP -USE MODI_GAMMA -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -INTEGER, INTENT(IN) :: KSPLITR ! Number of small time step - ! integration for rain sedimendation -REAL, INTENT(IN) :: PTSTEP ! Time step -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference [kg/m3] air density -! -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) :: PSVT ! Tracer m.r. at t -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCS ! Cloud water m.r. from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRS ! Rain water m.r. from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PEVAP3D ! Instantaneous 3D Rain Evaporation flux (KG/KG/S) -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT ! Potential temp -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! [Pa] pressure -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRGAER ! Aerosols radius (um) -INTEGER, INTENT(IN) :: KMODE ! Nb aerosols mode -REAL, INTENT(IN) :: PDENSITY_AER ! Begin Index for aerosol in cloud -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PMASSMIN ! Aerosol mass minimum value -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PSEA ! Sea mask -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PTOWN ! Town mask -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCCT ! Cloud water concentration -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCRT ! Rain water concentration - -! -!* 0.2 Declarations of local variables : -! -INTEGER :: JK ! Vertical loop index for the rain sedimentation -INTEGER :: JN ! Temporal loop index for the rain sedimentation -INTEGER :: JJ, JI ! Loop index for the interpolation -! -REAL :: ZTSPLITR ! Small time step for rain sedimentation -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZEFC !efficiency factor [unitless] -! -!Declaration of Dust Variables -! -INTEGER :: ICLOUD, IRAIN -! Case number of sedimentation, T>0 (for HEN) - ! and r_x>0 locations -LOGICAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: GRAIN, GCLOUD ! Test where to compute all processes - ! Test where to compute the SED/EVAP processes -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZW, ZZW1, ZZW2, ZZW4 ! work array -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZWEVAP ! sedimentation fluxes -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZWSED ! sedimentation fluxes -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZWSEDW1, ZWSEDW2 ! sedimentation speed -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZLBDAR -! Slope parameter of the raindrop distribution -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZZRCT, ZZEVAP, ZMASK -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZRAY, & ! Mean radius - ZNRT, & ! Number of rain droplets - ZLBC , & ! XLBC weighted by sea fraction - ZFSEDC -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2)) :: ZCONC_TMP -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZCONC -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZRRS -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSVT ! Tracer m.r. concentration -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZVGG, ZDPG !aerosol velocity [m/s], diffusivity [m2/s] -REAL, DIMENSION(:,:), ALLOCATABLE :: ZRG !Dust R[�m] -REAL, DIMENSION(:,:), ALLOCATABLE :: ZCOR !Cunningham correction factor [unitless] -REAL, DIMENSION(:,:), ALLOCATABLE :: ZMASSMIN ! Aerosol mass minimum value -! -REAL, DIMENSION(:), ALLOCATABLE & - :: ZRHODREF, & ! RHO Dry REFerence - ZTHT, & ! Potential temp - ZPABST, & ! Pressure [Pa] - ZZW, & ! Work array - ZTEMP, & ! Air Temp [K] - ZRC, & ! Cloud radius [m] - ZRCT, & ! Cloud water - ZRR, & ! Rain radius [m] - ZNT, & ! Rain droplets number - ZRRT, & ! Rain water - ZMU,ZMUW, & ! viscosity aerosol, water [Pa s] - ZFLUX, & ! Effective precipitation flux (kg.m-2.s-1) - ZCONC1D, & ! Weighted droplets concentration - ZWLBDC, & ! Slope parameter of the droplet distribution - ZGAMMA ! scavenging coefficient -REAL, DIMENSION(:), ALLOCATABLE :: ZW1 ! Work arrays -REAL, DIMENSION(SIZE(XRTMIN)) :: ZRTMIN - -INTEGER :: JL ! and PACK intrinsics -! -INTEGER :: JKAQ, JSV -! -REAL :: A0, A1, A2, A3 ! Constants for computing viscocity -INTEGER :: IKE, IJE, IIE, IKB - -! -!------------------------------------------------------------------------------- -! -!* 0. Initialize work array -! --------------------- -! -! Compute Effective cloud radius -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP',0,ZHOOK_HANDLE) - -ZRAY(:,:,:) = 0. -ZLBC(:,:,:) = XLBC(1) -ZFSEDC(:,:,:) = XFSEDC(1) -ZCONC_TMP(:,:)= XCONC_LAND -ZCONC(:,:,:) = XCONC_LAND -! -IF (PRESENT(PCCT)) THEN ! case KHKO, C2R2, C3R5 (two moments schemes) - ZRAY(:,:,:) = 3.* PRCT(:,:,:) / (4.*XPI*XRHOLW*PCCT(:,:,:)) - ZRAY(:,:,:) = ZRAY(:,:,:)**(1./3.) ! Cloud mean radius in m -ELSE IF (PRESENT(PSEA)) THEN ! Case ICE3, RAVE, KESS, .. -ZCONC_TMP(:,:)=PSEA(:,:)*XCONC_SEA+(1.-PSEA(:,:))*XCONC_LAND -DO JK=1,SIZE(PRHODREF,3) - ZLBC(:,:,JK) = PSEA(:,:)*XLBC(2)+(1.-PSEA(:,:))*XLBC(1) - ZFSEDC(:,:,JK) = (PSEA(:,:)*XFSEDC(2)+(1.-PSEA(:,:))*XFSEDC(1)) - ZFSEDC(:,:,JK) = MAX(MIN(XFSEDC(1),XFSEDC(2)),ZFSEDC(:,:,JK)) - ZCONC(:,:,JK) = (1.-PTOWN(:,:))*ZCONC_TMP(:,:)+PTOWN(:,:)*XCONC_URBAN - ZRAY(:,:,JK) = 0.5*((1.-PSEA(:,:))*GAMMA(XNUC+1.0/XALPHAC)/(GAMMA(XNUC)) + & - PSEA(:,:)*GAMMA(XNUC2+1.0/XALPHAC2)/(GAMMA(XNUC2))) -END DO -ZRAY(:,:,:) = MAX(1.,ZRAY(:,:,:)) -ZLBC(:,:,:) = MAX(MIN(XLBC(1),XLBC(2)),ZLBC(:,:,:)) -ELSE -ZRAY(:,:,:) = 30. ! default value for cloud radius -END IF -! -!ZNRT(:,:,:) = 0. -!IF (PRESENT(PCRT)) THEN ! case KHKO, C2R2, C3R5 -! Transfert Number of rain droplets - ZNRT(:,:,:) = PRRT(:,:,:) -!END IF - -!------------------------------------------------------------------------------- -! -!* 1. COMPUTE THE AEROSOL/CLOUD-RAIN MASS TRANSFER -! ---------------------------------------------- -CALL AER_WET_MASS_TRANSFER_DEP -!------------------------------------------------------------------------------- -! -!* 2. COMPUTE THE SEDIMENTATION (RS) SOURCE -! ------------------------------------- -! -CALL AER_WET_SEDIMENT_DEP -! -!------------------------------------------------------------------------------- -!! -!!* 3. COMPUTES THE SLOW WARM PROCESS SOURCES -!! -------------------------------------- -!! -CALL AER_WET_WARM_DEP - -! -!------------------------------------------------------------------------------- -!!* 4. COMPUTES EVAPORATION PROCESS -!! ---------------------------- -!! -CALL AER_WET_EVAP_DEP -! - -!------------------------------------------------------------------------------- -! -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP',1,ZHOOK_HANDLE) -! -CONTAINS -! -! -!------------------------------------------------------------------------------- -! -SUBROUTINE AER_WET_MASS_TRANSFER_DEP -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* 0.2 declaration of local variables -! -! -INTEGER , DIMENSION(SIZE(GCLOUD)) :: I1C,I2C,I3C! Used to replace the COUNT -INTEGER , DIMENSION(SIZE(GRAIN)) :: I1R,I2R,I3R ! Used to replace the COUNT -INTEGER :: JL ! and PACK intrinsics -INTEGER :: JKAQ ! counter for chemistry -! -! -! 1 Mass transfer Aerosol to cloud (Tost et al., 2006) -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_MASS_TRANSFER_DEP',0,ZHOOK_HANDLE) -! -GCLOUD(:,:,:) = .FALSE. -GCLOUD(:,:,:) = PRCS(:,:,:)>XRTMIN(2) -ICLOUD = COUNTJV( GCLOUD(:,:,:),I1C(:),I2C(:),I3C(:)) -IF( ICLOUD >= 1 ) THEN -ALLOCATE(ZSVT(ICLOUD,KMODE*3)) -ALLOCATE(ZRHODREF(ICLOUD)) -ALLOCATE(ZTHT(ICLOUD)) -ALLOCATE(ZRC(ICLOUD)) -ALLOCATE(ZPABST(ICLOUD)) -ALLOCATE(ZRG(ICLOUD,KMODE)) -ALLOCATE(ZTEMP(ICLOUD)) -ALLOCATE(ZMU(ICLOUD)) -ALLOCATE(ZRCT(ICLOUD)) -ALLOCATE(ZVGG(ICLOUD,KMODE)) -ALLOCATE(ZDPG(ICLOUD,KMODE)) -ALLOCATE(ZGAMMA(ICLOUD)) -ALLOCATE(ZW1(ICLOUD)) -ALLOCATE(ZCOR(ICLOUD,KMODE)) -ALLOCATE(ZMASSMIN(ICLOUD,KMODE)) -ALLOCATE(ZWLBDC(ICLOUD)) -ALLOCATE(ZCONC1D(ICLOUD)) -ZSVT(:,:) = 0. -DO JL=1,ICLOUD - DO JKAQ = 1, KMODE - ZRG(JL,JKAQ) = PRGAER(I1C(JL),I2C(JL),I3C(JL),JKAQ) - ZSVT(JL,JKAQ) = PSVT(I1C(JL),I2C(JL),I3C(JL),JKAQ) - ZSVT(JL,KMODE+JKAQ) = PSVT(I1C(JL),I2C(JL),I3C(JL),KMODE+JKAQ) - ZMASSMIN(JL,JKAQ) = PMASSMIN(I1C(JL),I2C(JL),I3C(JL),JKAQ) - ! - ZTHT(JL) = PTHT(I1C(JL),I2C(JL),I3C(JL)) - ZRC(JL) = ZRAY(I1C(JL),I2C(JL),I3C(JL)) - ZPABST(JL) = PPABST(I1C(JL),I2C(JL),I3C(JL)) - ZRCT(JL) = PRCS(I1C(JL),I2C(JL),I3C(JL)) - ZRHODREF(JL) = PRHODREF(I1C(JL),I2C(JL),I3C(JL)) - ZWLBDC(JL) = ZLBC(I1C(JL),I2C(JL),I3C(JL)) - ZCONC1D(JL) = ZCONC(I1C(JL),I2C(JL),I3C(JL)) - ENDDO -END DO - -IF (ANY(ZWLBDC(:)/=0.)) THEN ! case one moments - ! On calcule Rc a partir de M(3) car c'est le seul moment indt de alpha et nu - ! Rho_air * Rc / (Pi/6 * Rho_eau * Nc) = M(3) = 1/ (Lambda**3 * rapport des - ! gamma) - ZWLBDC(:) = ZWLBDC(:) * ZCONC1D(:) / (ZRHODREF(:) * ZRCT(:)) - ZWLBDC(:) = ZWLBDC(:)**XLBEXC - ZRC(:) = ZRC(:) / ZWLBDC(:) -END IF - -! -! initialize temperature - ZTEMP(:)=ZTHT(:)*(ZPABST(:)/XP00)**(XRD/XCPD) - -! compute diffusion and gravitation velocity - - CALL AER_VELGRAV(ZRG(:,:), ZPABST, & - KMODE, ZMU(:), ZVGG(:,:), & - ZDPG(:,:),ZTEMP(:),ZCOR(:,:), & - PDENSITY_AER) -DO JL = 1, ICLOUD -DO JKAQ = 1, KMODE -! Browninan nucleation scavenging (Pruppacher and Klett, 2000, p723) - ZGAMMA(JL) = 1.35 * ZRCT(JL)*ZRHODREF(JL)*1.E-3 * ZDPG(JL,JKAQ) /& - (ZRC(JL)*ZRC(JL)) - ZW1(JL) = ZSVT(JL,JKAQ) * EXP(-ZGAMMA(JL) * PTSTEP) - ZW1(JL) = MAX(ZW1(JL), ZMASSMIN(JL,JKAQ)) - ZW1(JL) = MIN(ZW1(JL),ZSVT(JL,JKAQ)) -! Aerosol mass in cloud - ZSVT(JL,KMODE+JKAQ) = ZSVT(JL,KMODE+JKAQ) + ZSVT(JL,JKAQ) - ZW1(JL) -! New aerosol mass - ZSVT(JL,JKAQ) = ZW1(JL) -ENDDO -ENDDO -DO JKAQ = 1, KMODE -! Return in 3D - PSVT(:,:,:,JKAQ) = & - UNPACK(ZSVT(:,JKAQ),MASK=GCLOUD(:,:,:),FIELD=PSVT(:,:,:,JKAQ)) - PSVT(:,:,:,KMODE+JKAQ) = & - UNPACK(ZSVT(:,KMODE+JKAQ),MASK=GCLOUD(:,:,:),FIELD=PSVT(:,:,:,KMODE+JKAQ)) -ENDDO - -DEALLOCATE(ZSVT) -DEALLOCATE(ZRHODREF) -DEALLOCATE(ZTHT) -DEALLOCATE(ZRC) -DEALLOCATE(ZPABST) -DEALLOCATE(ZRG) -DEALLOCATE(ZTEMP) -DEALLOCATE(ZMU) -DEALLOCATE(ZRCT) -DEALLOCATE(ZVGG) -DEALLOCATE(ZDPG) -DEALLOCATE(ZGAMMA) -DEALLOCATE(ZW1) -DEALLOCATE(ZCOR) -DEALLOCATE(ZMASSMIN) -DEALLOCATE(ZWLBDC) -DEALLOCATE(ZCONC1D) -END IF -! -! 2 Mass transfer Aerosol to Rain (Seinfeld and Pandis, 1998, Tost et al., 2006) -! -GRAIN(:,:,:) = .FALSE. -GRAIN(:,:,:) = PRRS(:,:,:)>XRTMIN(3) -IRAIN = COUNTJV( GRAIN(:,:,:),I1R(:),I2R(:),I3R(:)) -IF( IRAIN >= 1 ) THEN -! - ALLOCATE(ZRRT(IRAIN)) - ALLOCATE(ZSVT(IRAIN,3*KMODE)) - ALLOCATE(ZRHODREF(IRAIN)) - ALLOCATE(ZTHT(IRAIN)) - ALLOCATE(ZRR(IRAIN)) - ALLOCATE(ZNT(IRAIN)) - ALLOCATE(ZPABST(IRAIN)) - ALLOCATE(ZRG(IRAIN,KMODE)) - ALLOCATE(ZCOR(IRAIN,KMODE)) - ALLOCATE(ZTEMP(IRAIN)) - ALLOCATE(ZMU(IRAIN)) - ALLOCATE(ZVGG(IRAIN,KMODE)) - ALLOCATE(ZDPG(IRAIN,KMODE)) - ALLOCATE(ZMUW(IRAIN)) - ALLOCATE(ZEFC(IRAIN,KMODE)) - ALLOCATE(ZW1(IRAIN)) - ALLOCATE(ZFLUX(IRAIN)) - ALLOCATE(ZGAMMA(IRAIN)) - ALLOCATE(ZMASSMIN(IRAIN,KMODE)) - - ZSVT(:,:) = 0. - DO JL=1,IRAIN - DO JKAQ = 1, KMODE - ZRG(JL,JKAQ) = PRGAER(I1R(JL),I2R(JL),I3R(JL),JKAQ ) - ZSVT(JL,JKAQ) = PSVT(I1R(JL),I2R(JL),I3R(JL),JKAQ) - ZSVT(JL,KMODE*2+JKAQ) = PSVT(I1R(JL),I2R(JL),I3R(JL),KMODE*2+JKAQ) - ZMASSMIN(JL,JKAQ) = PMASSMIN(I1R(JL),I2R(JL),I3R(JL),JKAQ) - ! - ZTHT(JL) = PTHT(I1R(JL),I2R(JL),I3R(JL)) - ZPABST(JL) = PPABST(I1R(JL),I2R(JL),I3R(JL)) - ZRRT(JL) = PRRS(I1R(JL),I2R(JL),I3R(JL)) - ZRHODREF(JL) = PRHODREF(I1R(JL),I2R(JL),I3R(JL)) - ZNT(JL) = ZNRT(I1R(JL),I2R(JL),I3R(JL)) - ENDDO - ENDDO - -! -CALL AER_WET_EFFIC_DEP - -! Compute scavenging coefficient -ZFLUX(:) = 0. -ZRRT(:) = MAX(ZRRT(:), 0.) -! Effective precipitation flux (kg.m-2.s-1) -ZFLUX(:) = XFSEDR * ZRRT(:)**(XEXSEDR ) & - * ZRHODREF(:)**(XEXSEDR-XCEXVT) -ZFLUX(:) = MAX(ZFLUX(:), 0.) - -!IF (ALL(ZNT(:) == 0.)) THEN ! case one moments -!Number concentration NT=No/lbda p. 415 Jacobson -!4/3 *pi *r�*NT*rho_eau(kg/m3) =rho(lwc)=rho(air)* qc(kg/kg) -ZNT (:) = XCCR/(XLBR*( ZRHODREF(:)* ZRRT(:) )**XLBEXR) -!END IF - -ZRR(:) = (ZRRT(:)*ZRHODREF(:)/(XRHOLW*ZNT(:)*4./3.*XPI))**(1./3.) - -DO JL=1,IRAIN -DO JKAQ = 1, KMODE - ! Tost et al, 2006 - ZGAMMA(JL) = 0.75 * ZEFC(JL,JKAQ) * ZFLUX(JL) / (ZRR(JL)*1E3) - ZW1(JL) = ZSVT(JL,JKAQ) * EXP(-ZGAMMA(JL) * PTSTEP) - ZW1(JL) = MAX(ZW1(JL), ZMASSMIN(JL,JKAQ)) - ZW1(JL) = MIN(ZW1(JL),ZSVT(JL,JKAQ)) - ! Aerosol mass in rain - ZSVT(JL,KMODE*2+JKAQ) = ZSVT(JL,KMODE*2+JKAQ) + ZSVT(JL,JKAQ) - ZW1(JL) - ! New aerosol mass - ZSVT(JL,JKAQ) = ZW1(JL) -ENDDO -ENDDO - -DO JKAQ = 1, KMODE - ! Return to 3D - PSVT(:,:,:,JKAQ) = & - UNPACK(ZSVT(:,JKAQ),MASK=GRAIN(:,:,:),FIELD=PSVT(:,:,:,JKAQ)) - PSVT(:,:,:,KMODE*2+JKAQ) = & - UNPACK(ZSVT(:,KMODE*2+JKAQ),MASK=GRAIN(:,:,:),FIELD=PSVT(:,:,:,KMODE*2+JKAQ)) -ENDDO - - DEALLOCATE(ZRRT) - DEALLOCATE(ZSVT) - DEALLOCATE(ZRHODREF) - DEALLOCATE(ZTHT) - DEALLOCATE(ZRR) - DEALLOCATE(ZNT) - DEALLOCATE(ZPABST) - DEALLOCATE(ZRG) - DEALLOCATE(ZCOR) - DEALLOCATE(ZTEMP) - DEALLOCATE(ZMU) - DEALLOCATE(ZVGG) - DEALLOCATE(ZDPG) - DEALLOCATE(ZMUW) - DEALLOCATE(ZEFC) - DEALLOCATE(ZW1) - DEALLOCATE(ZFLUX) - DEALLOCATE(ZGAMMA) - DEALLOCATE(ZMASSMIN) - END IF -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_MASS_TRANSFER_DEP',1,ZHOOK_HANDLE) -END SUBROUTINE AER_WET_MASS_TRANSFER_DEP -! -SUBROUTINE AER_WET_SEDIMENT_DEP -! -!* Sedimentation of aerosol in rain droplets -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* declaration of local variables -! -! -REAL :: P1,P2,ZQP,ZH -INTEGER :: JL ! and PACK intrinsics -INTEGER :: JKAQ ! counter for acquous aerosols -! -!------------------------------------------------------------------------------- -! -!* Time splitting initialization -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_SEDIMENT_DEP',0,ZHOOK_HANDLE) -ZTSPLITR = PTSTEP / FLOAT(KSPLITR) -! -ZWSEDW1(:,:,:)=0. -ZWSEDW2(:,:,:)=0. -ZWSED(:,:,:) = 0. -ZW(:,:,:)=0. -ZRRS(:,:,:) = MAX(PTSTEP*PRRS(:,:,:), 1E-80) -IKE = SIZE(PRRS,3)-1 -IJE = SIZE(PRRS,2) -IIE = SIZE(PRRS,1) -IKB = 2 -! -DO JK = 1 , SIZE(PZZ,3)-1 - ZW(:,:,JK) =ZTSPLITR/(( PZZ(:,:,JK+1)-PZZ(:,:,JK) )) -END DO -!WHERE (ZRRS(:,:,:)<=XRTMIN(3)) -! ZW(:,:,:)=0. -!END WHERE -! -! Flux mass aerosol in rain droplets = -! Flux mass rain water * Mass aerosol in rain / Mass rain water -!print*,'XEXSEDR=',XEXSEDR,'*****','XCEXVT=',XCEXVT,'***','KSPLITR=',KSPLITR - -DO JKAQ = 1,KMODE - DO JK = IKE,IKB, -1 - DO JJ = 1, IJE - DO JI = 1, IIE - !estimation of q' taking into account incomming ZWSED - ZQP=ZWSED(JI,JJ,JK+1)*ZW(JI,JJ,JK) - !calculation of w - IF ( PRRS(JI,JJ,JK) > ZRTMIN(3) ) THEN - ZWSEDW1 (JI,JJ,JK)= XFSEDR *PRRS(JI,JJ,JK)**(XEXSEDR-1)* & - PRHODREF(JI,JJ,JK)**(XEXSEDR-XCEXVT-1) - ENDIF - IF ( ZQP > ZRTMIN(3) ) THEN - ZWSEDW2 (JI,JJ,JK)= XFSEDR *(ZQP)**(XEXSEDR-1)* & - PRHODREF(JI,JJ,JK)**(XEXSEDR-XCEXVT-1) - ENDIF - ENDDO - DO JI = 1, IIE - ZH=PZZ(JI,JJ,JK+1) - PZZ(JI,JJ,JK) - P1 = MIN(1., ZWSEDW1(JI,JJ,JK) * PTSTEP / ZH ) - IF (ZWSEDW2(JI,JJ,JK) /= 0.) THEN - P2 = MAX(0.,1 - ZH & - & / (PTSTEP*ZWSEDW2(JI,JJ,JK)) ) - ELSE - P2 = 0. - ENDIF - ZWSED (JI,JJ,JK)=P1*PRHODREF(JI,JJ,JK)*& - &ZH*PRRS(JI,JJ,JK)& - &/PTSTEP+ P2 * ZWSED (JI,JJ,JK+1) -! - ZWSED (JI,JJ,JK)=ZWSED (JI,JJ,JK)*PSVT(JI,JJ,JK,KMODE*2+JKAQ) -! - ENDDO - ENDDO - ENDDO -ENDDO -! -DO JKAQ = 1,KMODE - DO JK = IKB, IKE - PSVT(:,:,JK,KMODE*2+JKAQ)= PSVT(:,:,JK,KMODE*2+JKAQ) + & - ZW(:,:,JK)*(ZWSED(:,:,JK+1)-ZWSED(:,:,JK)) - ! Aerosol mass in rain droplets need to be positive - PSVT(:,:,JK,KMODE*2+JKAQ)= MAX(PSVT(:,:,JK,KMODE*2+JKAQ), 0.) - END DO -END DO - - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_SEDIMENT_DEP',1,ZHOOK_HANDLE) -! - END SUBROUTINE AER_WET_SEDIMENT_DEP -! -!------------------------------------------------------------------------------- -! - SUBROUTINE AER_WET_WARM_DEP -! -!* 0. DECLARATIONS -! -IMPLICIT NONE -!------------------------------------------------------------------------------- -! -!* 1. compute the autoconversion of r_c for r_r production: RCAUTR -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_WARM_DEP',0,ZHOOK_HANDLE) -ZZW4(:,:,:)=0.0 -! to be sure no division by zero in case of ZZRCT = 0. -ZZRCT(:,:,:) = PRCT(:,:,:) -ZZRCT(:,:,:) = MAX(ZZRCT(:,:,:), XRTMIN(2)/2.) - -WHERE( (ZZRCT(:,:,:)>XRTMIN(2)) .AND. (PRCS(:,:,:)>0.0 ) ) - ZZW4(:,:,:) = MIN( PRCS(:,:,:),XTIMAUTC* & - MAX((ZZRCT(:,:,:)-XCRIAUTC/ PRHODREF(:,:,:)),0.0)) -END WHERE - -DO JKAQ = 1,KMODE - ZZW2(:,:,:) =0.0 - ZZW2(:,:,:)=ZZW4(:,:,:) * PSVT(:,:,:,KMODE+JKAQ)/ZZRCT(:,:,:) * PTSTEP - ZZW2(:,:,:) = MAX(MIN( ZZW2(:,:,:), PSVT(:,:,:,KMODE+JKAQ)),0.0) - -! For rain - Increase the aerosol conc in rain - PSVT(:,:,:,KMODE*2+JKAQ) = & - PSVT(:,:,:,KMODE*2+JKAQ) + ZZW2(:,:,:) -! For Cloud Decrease the aerosol conc in cloud - PSVT(:,:,:,KMODE+JKAQ) = & - PSVT(:,:,:,KMODE+JKAQ) - ZZW2(:,:,:) -ENDDO -! -!* 2. compute the accretion of r_c for r_r production: RCACCR -! -ZZW4(:,:,:)=0.0 -ZLBDAR(:,:,:)=0.0 -WHERE ( (ZZRCT(:,:,:)>XRTMIN(2)) .AND. (PRRT(:,:,:)>XRTMIN(3)) & - .AND. (PRCS(:,:,:)> 0.0 ) ) - ZLBDAR(:,:,:) = XLBR*( PRHODREF(:,:,:)* PRRT(:,:,:) )**XLBEXR - ZZW4(:,:,:) = MIN( PRCS(:,:,:),XFCACCR * ZZRCT(:,:,:) & - * ZLBDAR(:,:,:)**XEXCACCR & - * PRHODREF(:,:,:)**(-XCEXVT) ) -END WHERE -! -DO JKAQ = 1,KMODE - ZZW2(:,:,:)=0.0 - ZZW2(:,:,:)=ZZW4(:,:,:) * PSVT(:,:,:,KMODE+JKAQ)/ZZRCT(:,:,:) * PTSTEP - ZZW2(:,:,:) = MAX(MIN(ZZW2(:,:,:),PSVT(:,:,:,KMODE+JKAQ)), 0.0) - -!* 3. compute the new acquous aerosol mass -! -! For rain - Increase the aerosol conc in rain - PSVT(:,:,:,KMODE*2+JKAQ) = PSVT(:,:,:,KMODE*2+JKAQ) + ZZW2(:,:,:) -! For Cloud Decrease the aerosol conc in cloud - PSVT(:,:,:,KMODE+JKAQ) = PSVT(:,:,:,KMODE+JKAQ) - ZZW2(:,:,:) -ENDDO - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_WARM_DEP',1,ZHOOK_HANDLE) - END SUBROUTINE AER_WET_WARM_DEP -!--------------------------------------------------------------------------------------- - SUBROUTINE AER_WET_EVAP_DEP -! -!* COMPUTES THE EVAPORATION OF CLOUD-RAIN FOR THE -!* RE-RELEASE OF AER INTO THE ENVIRONMENT -! -------------------------------------- -! - -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -!* declaration of local variables -! -INTEGER :: JKAQ ! counter for aerosols - -!* 1. compute the evaporation of r_r: RREVAV -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_EVAP_DEP',0,ZHOOK_HANDLE) -!When partial reevaporation of precip takes place, the fraction of -!tracer precipitating form above is reevaporated is equal to -!half of the evaporation rate of water -! -! Rain water evaporated during PTSTEP in kg/kg -ZZEVAP(:,:,:) = PEVAP3D(:,:,:) * PTSTEP -! Fraction of rain water evaporated -! at this stage (bulk), we consider that the flux of evaporated aerosol -! is a ratio of the evaporated rain water. -! It will interested to calculate with a two moment scheme (C2R2 or C3R5) -! the complete evaporation of rain droplet to use it for the compuation -! of the evaporated aerosol flux. -ZWEVAP(:,:,:)=0.0 -WHERE( PRRT(:,:,:) .GT. XRTMIN(3) ) - ZWEVAP(:,:,:) = ZZEVAP(:,:,:)/(PRRT(:,:,:)) -END WHERE -ZWEVAP(:,:,:)=MIN(ZWEVAP(:,:,:),1.0) -ZWEVAP(:,:,:)=MAX(ZWEVAP(:,:,:),0.0) - -!* 2. compute the mask of r_c evaporation : all cloud is evaporated -! no partial cloud evaporation at this stage -ZMASK(:,:,:) = 0. -WHERE( PRCS(:,:,:) .LT. XRTMIN(2) ) - ZMASK(:,:,:) = 1. -END WHERE -! -! -DO JKAQ = 1,KMODE - ZZW1(:,:,:) = ZMASK(:,:,:)*PSVT(:,:,:,KMODE+JKAQ) - - ZZW2(:,:,:) = ZWEVAP(:,:,:)*PSVT(:,:,:,KMODE*2+JKAQ) - -! 3. New dry aerosol mass -! - PSVT(:,:,:,JKAQ) = PSVT(:,:,:,JKAQ) + ZZW2(:,:,:) + ZZW1(:,:,:) -! 4. New cloud aerosol mass -! - PSVT(:,:,:,KMODE+JKAQ) = PSVT(:,:,:,KMODE+JKAQ) - ZZW1(:,:,:) - -! 5. New rain aerosol mass -! - PSVT(:,:,:,KMODE*2+JKAQ) = PSVT(:,:,:,KMODE*2+JKAQ) - ZZW2(:,:,:) -END DO -! - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_EVAP_DEP',1,ZHOOK_HANDLE) - END SUBROUTINE AER_WET_EVAP_DEP -!--------------------------------------------------------------------------------------- - SUBROUTINE AER_WET_EFFIC_DEP -! -!* COMPUTES THE EFFICIENCY FACTOR -! ------------------------------ -! -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -! -!* 1. COMPUTES THE EFFICIENCY FACTOR -! -------------------------------------- -! -!* 1.1 compute gravitational velocities -! -!initialize - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_EFFIC_DEP',0,ZHOOK_HANDLE) - - ZTEMP(:)=ZTHT(:)*(ZPABST(:)/XP00)**(XRD/XCPD) - ZTEMP(:)=MAX(ZTEMP(:),1.e-12) - - CALL AER_VELGRAV(ZRG(:,:), ZPABST, KMODE, & - ZMU(:), ZVGG(:,:), & - ZDPG(:,:),ZTEMP(:), & - ZCOR(:,:), PDENSITY_AER) - -! Above gives mu (ZMU), v(aerosol)(PVGG, m/s), diffusion (ZDPG, m2/s) -! -!* 1.2 Compute Water Viscocity in kg/m/s Prup. & Klett, p.95 -! -! - A0=1.76 - A1=-5.5721e-2 - A2=-1.3943e-3 - A3=-4.3015e-5 - ZMUW(:)=A0*EXP(A1*(ZTEMP(:)-273.15) & - +A2*(ZTEMP(:)-273.15) + A3*(ZTEMP(:)-273.15))*1.e-3 - - A1=-3.5254e-2 - A2=4.7163e-4 - A3=-6.0667e-6 - - WHERE (ZTEMP(:)>273.15) - ZMUW(:)=A0*EXP(A1*(ZTEMP(:)-273.15) & - +A2*(ZTEMP(:)-273.15) + A3*(ZTEMP(:)-273.15))*1.e-3 - END WHERE - ZMUW(:)=MAX(ZMUW(:),1.e-12) - -! -!* 1.3 compute efficiency factor -! -! This gives aerosol collection efficiency by calculating Reynolds number -! schmidt number, stokes number, etc - CALL AER_EFFIC_DEP(ZRG(:,:), ZVGG(:,:), & !aerosol radius/velocity - ZRHODREF(:), & !Air density - ZMUW(:), ZMU(:), & !mu water/air - ZDPG(:,:), ZEFC(:,:), & !diffusivity, efficiency - ZRRT(:), KMODE, & !Rain water, nb aerosols modes - ZTEMP(:),ZCOR(:,:), & ! Temperature, Cunnimgham coeff - PDENSITY_AER ) ! aerosol density -! -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:AER_WET_EFFIC_DEP',1,ZHOOK_HANDLE) -END SUBROUTINE AER_WET_EFFIC_DEP - -! -!------------------------------------------------------------------------------- -! -! - FUNCTION COUNTJV(LTAB,I1,I2,I3) RESULT(IC) -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* declaration of local variables -! -! -LOGICAL, DIMENSION(:,:,:) :: LTAB ! Mask -INTEGER, DIMENSION(:) :: I1,I2,I3 ! Used to replace the COUNT and PACK -INTEGER :: JI,JJ,JK,IC -! -!------------------------------------------------------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:COUNTJV',0,ZHOOK_HANDLE) -I1(:)=0 -I2(:)=0 -I3(:)=0 -!ktk -IC = 0 -DO JK = 1,SIZE(LTAB,3) - DO JJ = 1,SIZE(LTAB,2) - DO JI = 1,SIZE(LTAB,1) - IF( LTAB(JI,JJ,JK) ) THEN - IC = IC +1 - I1(IC) = JI - I2(IC) = JJ - I3(IC) = JK - END IF - END DO - END DO -END DO -! -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP:COUNTJV',1,ZHOOK_HANDLE) -END FUNCTION COUNTJV -! -!------------------------------------------------------------------------------- -! -END SUBROUTINE AER_WET_DEP diff --git a/src/arome/chem/internals/aer_wet_dep_kmt_warm.F90 b/src/arome/chem/internals/aer_wet_dep_kmt_warm.F90 deleted file mode 100644 index 6639c27dc83c8fba51eddd0c9db1aad1280fc564..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/aer_wet_dep_kmt_warm.F90 +++ /dev/null @@ -1,814 +0,0 @@ -! ######spl - SUBROUTINE AER_WET_DEP_KMT_WARM (KSPLITR, PTSTEP, PZZ, & - PRHODREF, PRCT, PRRT, & - PRCS, PRRS, PSVT, PTHT, & - PPABST, PRGAER, PEVAP3D, KMODE, & - PDENSITY_AER, PMASSMIN, PSEA, PTOWN, & - PCCT, PCRT ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################################### -! -!!**** * - compute the explicit microphysical processes involved in the -!!*** * - wet deposition of aerosols species in mixed clouds -!! -!! PURPOSE -!! ------- -!! -!! The purpose of this subroutine is to calculate the mass transfer -!! of aerosol species between cloud hydrometeors. -!! -!! -!! -!!** METHOD -!! ------ -!! Aerosols mass are dissolved into the cloud water and rain -!! drops, it is subject to transfer through the microphysical processes -!! that affect the parent hydrometeor [Rutledge et al., 1986]. -!! Aerosol mass transfer has been computed using scavenging coefficient -!! and brownian nucleation scavenging coefficient (Seinfeld and Pandis, -!! 1998; Tost et al, 2006). -!! -!! The sedimentation rate is computed with a time spliting technique and -!! an upstream scheme, written as a difference of non-advective fluxes. -!! -!! KMODE: Number of aerosol modes (lognormal, bin..) -!! PSVT : 1 => KMODE : dry aerosol mass -!! PSVT : KMODE+1 => 2*KMODE : aerosol mass in cloud -!! PSVT : 2*KMODE+1 => 3*KMODE: aerosol mass in rain - -!! -!! EXTERNAL -!! -------- -!! None -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_CST -!! XP00 ! Reference pressure -!! XRD,XRV ! Gaz constant for dry air, vapor -!! XMD,XMV ! Molecular weight for dry air, vapor -!! XCPD ! Cpd (dry air) -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! P. Tulet & K. Crahan-Kaku * CNRM * -!! -!! Based on rain_ice.f90 and ch_wet_dep_kmt_warm.f90 -!! from C. Mari & J.P. Pinty * LA* -!! -!! -!! MODIFICATIONS -!! ------------- -!! Original 09/05/07 -!! M. Mokhtari & A. Ambar 09/2016: correction of the bug in -!! AER_WET_DEP_KMT_WARM_SEDIMENT -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CST -USE MODD_RAIN_ICE_PARAM -USE MODD_RAIN_ICE_DESCR -USE MODI_AER_VELGRAV -USE MODI_AER_EFFIC -USE MODI_GAMMA -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -INTEGER, INTENT(IN) :: KSPLITR ! Number of small time step - ! integration for rain sedimendation -REAL, INTENT(IN) :: PTSTEP ! Time step -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference [kg/m3] air density -! -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) :: PSVT ! Tracer m.r. at t -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCS ! Cloud water m.r. from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRS ! Rain water m.r. from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PEVAP3D ! Instantaneous 3D Rain Evaporation flux (KG/KG/S) -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT ! Potential temp -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! [Pa] pressure -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRGAER ! Aerosols radius (um) -INTEGER, INTENT(IN) :: KMODE ! Nb aerosols mode -REAL, INTENT(IN) :: PDENSITY_AER ! Begin Index for aerosol in cloud -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PMASSMIN ! Aerosol mass minimum value -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PSEA ! Sea mask -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PTOWN ! Town mask -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCCT ! Cloud water concentration -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCRT ! Rain water concentration - -! -!* 0.2 Declarations of local variables : -! -INTEGER :: JK ! Vertical loop index for the rain sedimentation -INTEGER :: JN ! Temporal loop index for the rain sedimentation -INTEGER :: JJ, JI ! Loop index for the interpolation -! -REAL :: ZTSPLITR ! Small time step for rain sedimentation -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZEFC !efficiency factor [unitless] -! -!Declaration of Dust Variables -! -INTEGER :: ICLOUD, IRAIN -! Case number of sedimentation, T>0 (for HEN) - ! and r_x>0 locations -LOGICAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: GRAIN, GCLOUD ! Test where to compute all processes - ! Test where to compute the SED/EVAP processes -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZW, ZZW1, ZZW2, ZZW4 ! work array -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZWEVAP ! sedimentation fluxes -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)+1) & - :: ZWSED ! sedimentation fluxes -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZWSEDW1, ZWSEDW2 ! -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZLBDAR -! Slope parameter of the raindrop distribution -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZZRCT, ZZEVAP, ZMASK -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) & - :: ZRAY, & ! Mean radius - ZNRT, & ! Number of rain droplets - ZLBC , & ! XLBC weighted by sea fraction - ZFSEDC -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2)) :: ZCONC_TMP -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZCONC -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZRRS -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSVT ! Tracer m.r. concentration -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZVGG, ZDPG !aerosol velocity [m/s], diffusivity [m2/s] -REAL, DIMENSION(:,:), ALLOCATABLE :: ZRG !Dust R[µm] -REAL, DIMENSION(:,:), ALLOCATABLE :: ZCOR !Cunningham correction factor [unitless] -REAL, DIMENSION(:,:), ALLOCATABLE :: ZMASSMIN ! Aerosol mass minimum value -! -REAL, DIMENSION(:), ALLOCATABLE & - :: ZRHODREF, & ! RHO Dry REFerence - ZTHT, & ! Potential temp - ZPABST, & ! Pressure [Pa] - ZZW, & ! Work array - ZTEMP, & ! Air Temp [K] - ZRC, & ! Cloud radius [m] - ZRCT, & ! Cloud water - ZRR, & ! Rain radius [m] - ZNT, & ! Rain droplets number - ZRRT, & ! Rain water - ZMU,ZMUW, & ! viscosity aerosol, water [Pa s] - ZFLUX, & ! Effective precipitation flux (kg.m-2.s-1) - ZCONC1D, & ! Weighted droplets concentration - ZWLBDC, & ! Slope parameter of the droplet distribution - ZGAMMA ! scavenging coefficient -REAL, DIMENSION(:), ALLOCATABLE :: ZW1 ! Work arrays -REAL, DIMENSION(SIZE(XRTMIN)) :: ZRTMIN - -INTEGER :: JL ! and PACK intrinsics -! -INTEGER :: JKAQ, JSV -! -REAL :: A0, A1, A2, A3 ! Constants for computing viscocity -INTEGER :: IKE, IJE, IIE, IKB -! -!------------------------------------------------------------------------------- -! -!* 0. Initialize work array -! --------------------- -! -! Compute Effective cloud radius -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM',0,ZHOOK_HANDLE) -ZRAY(:,:,:) = 0. -ZLBC(:,:,:) = 0. -IF (PRESENT(PCCT)) THEN ! case KHKO, C2R2, C3R5 (two moments schemes) - ZRAY(:,:,:) = 3.* PRCT(:,:,:) / (4.*XPI*XRHOLW*PCCT(:,:,:)) - ZRAY(:,:,:) = ZRAY(:,:,:)**(1./3.) ! Cloud mean radius in m -ELSE IF (PRESENT(PSEA)) THEN ! Case ICE3, RAVE, KESS, .. -ZLBC(:,:,:) = XLBC(1) -ZFSEDC(:,:,:) = XFSEDC(1) -ZCONC(:,:,:) = XCONC_LAND -ZCONC_TMP(:,:)=PSEA(:,:)*XCONC_SEA+(1.-PSEA(:,:))*XCONC_LAND -DO JK=1,SIZE(PRHODREF,3) - ZLBC(:,:,JK) = PSEA(:,:)*XLBC(2)+(1.-PSEA(:,:))*XLBC(1) - ZFSEDC(:,:,JK) = (PSEA(:,:)*XFSEDC(2)+(1.-PSEA(:,:))*XFSEDC(1)) - ZFSEDC(:,:,JK) = MAX(MIN(XFSEDC(1),XFSEDC(2)),ZFSEDC(:,:,JK)) - ZCONC(:,:,JK) = (1.-PTOWN(:,:))*ZCONC_TMP(:,:)+PTOWN(:,:)*XCONC_URBAN - ZRAY(:,:,JK) = 0.5*((1.-PSEA(:,:))*GAMMA(XNUC+1.0/XALPHAC)/(GAMMA(XNUC)) + & - PSEA(:,:)*GAMMA(XNUC2+1.0/XALPHAC2)/(GAMMA(XNUC2))) -END DO -ZRAY(:,:,:) = MAX(1.,ZRAY(:,:,:)) -ZLBC(:,:,:) = MAX(MIN(XLBC(1),XLBC(2)),ZLBC(:,:,:)) -ELSE -ZRAY(:,:,:) = 30. ! default value for cloud radius -END IF -! -ZNRT(:,:,:) = 0. -IF (PRESENT(PCRT)) THEN ! case KHKO, C2R2, C3R5 -! Transfert Number of rain droplets - ZNRT(:,:,:) = PCRT(:,:,:) -! ZNRT(:,:,:) = PRRT(:,:,:) -END IF -!------------------------------------------------------------------------------- -! -!* 1. COMPUTE THE AEROSOL/CLOUD-RAIN MASS TRANSFER -! ---------------------------------------------- -CALL AER_WET_MASS_TRANSFER -!------------------------------------------------------------------------------- -! -!* 2. COMPUTE THE SEDIMENTATION (RS) SOURCE -! ------------------------------------- -! -CALL AER_WET_DEP_KMT_WARM_SEDIMENT -! -!------------------------------------------------------------------------------- -!! -!!* 3. COMPUTES THE SLOW WARM PROCESS SOURCES -!! -------------------------------------- -!! -CALL AER_WET_DEP_KMT_ICE_WARM - -! -!------------------------------------------------------------------------------- -!!* 4. COMPUTES EVAPORATION PROCESS -!! ---------------------------- -!! -CALL AER_WET_DEP_KMT_EVAP -! - -!------------------------------------------------------------------------------- -! -! -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM',1,ZHOOK_HANDLE) -CONTAINS -! -! -!------------------------------------------------------------------------------- -! -SUBROUTINE AER_WET_MASS_TRANSFER -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* 0.2 declaration of local variables -! -! -INTEGER , DIMENSION(SIZE(GCLOUD)) :: I1C,I2C,I3C! Used to replace the COUNT -INTEGER , DIMENSION(SIZE(GRAIN)) :: I1R,I2R,I3R ! Used to replace the COUNT -INTEGER :: JL ! and PACK intrinsics -INTEGER :: JKAQ ! counter for chemistry -! -! -! 1 Mass transfer Aerosol to cloud (Tost et al., 2006) -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_MASS_TRANSFER',0,ZHOOK_HANDLE) -GCLOUD(:,:,:) = .FALSE. -GCLOUD(:,:,:) = PRCS(:,:,:)>XRTMIN(2) -ICLOUD = COUNTJV( GCLOUD(:,:,:),I1C(:),I2C(:),I3C(:)) -IF( ICLOUD >= 1 ) THEN -ALLOCATE(ZSVT(ICLOUD,KMODE*3)) -ALLOCATE(ZRHODREF(ICLOUD)) -ALLOCATE(ZTHT(ICLOUD)) -ALLOCATE(ZRC(ICLOUD)) -ALLOCATE(ZPABST(ICLOUD)) -ALLOCATE(ZRG(ICLOUD,KMODE)) -ALLOCATE(ZTEMP(ICLOUD)) -ALLOCATE(ZMU(ICLOUD)) -ALLOCATE(ZRCT(ICLOUD)) -ALLOCATE(ZVGG(ICLOUD,KMODE)) -ALLOCATE(ZDPG(ICLOUD,KMODE)) -ALLOCATE(ZGAMMA(ICLOUD)) -ALLOCATE(ZW1(ICLOUD)) -ALLOCATE(ZCOR(ICLOUD,KMODE)) -ALLOCATE(ZMASSMIN(ICLOUD,KMODE)) -ALLOCATE(ZWLBDC(ICLOUD)) -ALLOCATE(ZCONC1D(ICLOUD)) -ZSVT(:,:) = 0. -DO JL=1,ICLOUD - DO JKAQ = 1, KMODE - ZRG(JL,JKAQ) = PRGAER(I1C(JL),I2C(JL),I3C(JL),JKAQ) - ENDDO - DO JKAQ = 1, KMODE*3 - ZSVT(JL,JKAQ) = PSVT(I1C(JL),I2C(JL),I3C(JL),JKAQ) - END DO - ! - ZTHT(JL) = PTHT(I1C(JL),I2C(JL),I3C(JL)) - ZRC(JL) = ZRAY(I1C(JL),I2C(JL),I3C(JL)) - ZPABST(JL) = PPABST(I1C(JL),I2C(JL),I3C(JL)) - ZRCT(JL) = PRCS(I1C(JL),I2C(JL),I3C(JL)) - ZRHODREF(JL) = PRHODREF(I1C(JL),I2C(JL),I3C(JL)) - ZMASSMIN(JL,:) = PMASSMIN(I1C(JL),I2C(JL),I3C(JL),:) - ZWLBDC(JL) = ZLBC(I1C(JL),I2C(JL),I3C(JL)) - ZCONC1D(JL) = ZCONC(I1C(JL),I2C(JL),I3C(JL)) -END DO -IF (ANY(ZWLBDC(:)/=0.)) THEN ! case one moments - ! On calcule Rc a partir de M(3) car c'est le seul moment indt de alpha et nu - ! Rho_air * Rc / (Pi/6 * Rho_eau * Nc) = M(3) = 1/ (Lambda**3 * rapport des - ! gamma) - ZWLBDC(:) = ZWLBDC(:) * ZCONC1D(:) / (ZRHODREF(:) * ZRCT(:)) - ZWLBDC(:) = ZWLBDC(:)**XLBEXC - ZRC(:) = ZRC(:) / ZWLBDC(:) -END IF - -! -! initialize temperature - ZTEMP(:)=ZTHT(:)*(ZPABST(:)/XP00)**(XRD/XCPD) - -! compute diffusion and gravitation velocity - - CALL AER_VELGRAV(ZRG(:,:), ZPABST, & - KMODE, ZMU(:), ZVGG(:,:), & - ZDPG(:,:),ZTEMP(:),ZCOR(:,:), & - PDENSITY_AER) - -DO JKAQ = 1, KMODE -! Browninan nucleation scavenging (Pruppacher and Klett, 2000, p723) - ZGAMMA(:) = 1.35 * ZRCT(:)*ZRHODREF(:)*1.E-3 * ZDPG(:,JKAQ) /& - (ZRC(:)*ZRC(:)) - - ZW1(:) = ZSVT(:,JKAQ) * EXP(-ZGAMMA(:) * PTSTEP) - ZW1(:) = MAX(ZW1(:), ZMASSMIN(:,JKAQ)) - ZW1(:) = MIN(ZW1(:),ZSVT(:,JKAQ)) -! Aerosol mass in cloud - ZSVT(:,KMODE+JKAQ) = ZSVT(:,KMODE+JKAQ) + ZSVT(:,JKAQ) - ZW1(:) -! New aerosol mass - ZSVT(:,JKAQ) = ZW1(:) -! Return in 3D - PSVT(:,:,:,JKAQ) = & - UNPACK(ZSVT(:,JKAQ),MASK=GCLOUD(:,:,:),FIELD=PSVT(:,:,:,JKAQ)) - PSVT(:,:,:,KMODE+JKAQ) = & - UNPACK(ZSVT(:,KMODE+JKAQ),MASK=GCLOUD(:,:,:),FIELD=PSVT(:,:,:,KMODE+JKAQ)) -ENDDO -DEALLOCATE(ZSVT) -DEALLOCATE(ZRHODREF) -DEALLOCATE(ZTHT) -DEALLOCATE(ZRC) -DEALLOCATE(ZPABST) -DEALLOCATE(ZRG) -DEALLOCATE(ZTEMP) -DEALLOCATE(ZMU) -DEALLOCATE(ZRCT) -DEALLOCATE(ZVGG) -DEALLOCATE(ZDPG) -DEALLOCATE(ZGAMMA) -DEALLOCATE(ZW1) -DEALLOCATE(ZCOR) -DEALLOCATE(ZMASSMIN) -DEALLOCATE(ZWLBDC) -DEALLOCATE(ZCONC1D) -END IF -! -! 2 Mass transfer Aerosol to Rain (Seinfeld and Pandis, 1998, Tost et al., 2006) -! -GRAIN(:,:,:) = .FALSE. -GRAIN(:,:,:) = PRRS(:,:,:)>XRTMIN(3) -IRAIN = COUNTJV( GRAIN(:,:,:),I1R(:),I2R(:),I3R(:)) -IF( IRAIN >= 1 ) THEN -! - ALLOCATE(ZRRT(IRAIN)) - ALLOCATE(ZSVT(IRAIN,3*KMODE)) - ALLOCATE(ZRHODREF(IRAIN)) - ALLOCATE(ZTHT(IRAIN)) - ALLOCATE(ZRR(IRAIN)) - ALLOCATE(ZNT(IRAIN)) - ALLOCATE(ZPABST(IRAIN)) - ALLOCATE(ZRG(IRAIN,KMODE)) - ALLOCATE(ZCOR(IRAIN,KMODE)) - ALLOCATE(ZTEMP(IRAIN)) - ALLOCATE(ZMU(IRAIN)) - ALLOCATE(ZVGG(IRAIN,KMODE)) - ALLOCATE(ZDPG(IRAIN,KMODE)) - ALLOCATE(ZMUW(IRAIN)) - ALLOCATE(ZEFC(IRAIN,KMODE)) - ALLOCATE(ZW1(IRAIN)) - ALLOCATE(ZFLUX(IRAIN)) - ALLOCATE(ZGAMMA(IRAIN)) - ALLOCATE(ZMASSMIN(IRAIN,KMODE)) - - ZSVT(:,:) = 0. - DO JL=1,IRAIN - DO JKAQ = 1, KMODE - ZRG(JL,JKAQ) = PRGAER(I1R(JL),I2R(JL),I3R(JL),JKAQ ) - ZSVT(JL,JKAQ) = PSVT(I1R(JL),I2R(JL),I3R(JL),JKAQ) - ZSVT(JL,KMODE*2+JKAQ) = PSVT(I1R(JL),I2R(JL),I3R(JL),KMODE*2+JKAQ) - END DO - ! - ZTHT(JL) = PTHT(I1R(JL),I2R(JL),I3R(JL)) - ZPABST(JL) = PPABST(I1R(JL),I2R(JL),I3R(JL)) - ZRRT(JL) = PRRS(I1R(JL),I2R(JL),I3R(JL)) - ZRHODREF(JL) = PRHODREF(I1R(JL),I2R(JL),I3R(JL)) - ZMASSMIN(JL,:) = PMASSMIN(I1R(JL),I2R(JL),I3R(JL),:) - ZNT(JL) = ZNRT(I1R(JL),I2R(JL),I3R(JL)) - ENDDO -! -CALL AER_WET_DEP_KMT_EFFIC - -! Compute scavenging coefficient -ZFLUX(:) = 0. -ZRRT(:) = MAX(ZRRT(:), 0.) -! Effective precipitation flux (kg.m-2.s-1) -ZFLUX(:) = XFSEDR * ZRRT(:)**(XEXSEDR ) & - * ZRHODREF(:)**(XEXSEDR-XCEXVT) -ZFLUX(:) = MAX(ZFLUX(:), 0.) - -IF (ALL(ZNT(:) == 0.)) THEN ! case one moments -!Number concentration NT=No/lbda p. 415 Jacobson -!4/3 *pi *r³*NT*rho_eau(kg/m3) =rho(lwc)=rho(air)* qc(kg/kg) -ZNT (:) = XCCR/(XLBR*( ZRHODREF(:)* ZRRT(:) )**XLBEXR) -END IF - -ZRR(:) = (ZRRT(:)*ZRHODREF(:)/(XRHOLW*ZNT(:)*4./3.*XPI))**(1./3.) - -DO JKAQ = 1, KMODE - ! Tost et al, 2006 - ZGAMMA(:) = 0.75 * ZEFC(:,JKAQ) * ZFLUX(:) / (ZRR(:)*1E3) - ZW1(:) = ZSVT(:,JKAQ) * EXP(-ZGAMMA(:) * PTSTEP) - ZW1(:) = MAX(ZW1(:), ZMASSMIN(:,JKAQ)) - ZW1(:) = MIN(ZW1(:),ZSVT(:,JKAQ)) - - ! Aerosol mass in rain - ZSVT(:,KMODE*2+JKAQ) = ZSVT(:,KMODE*2+JKAQ) + ZSVT(:,JKAQ) - ZW1(:) - ! New aerosol mass - ZSVT(:,JKAQ) = ZW1(:) - - ! Return to 3D - PSVT(:,:,:,JKAQ) = & - UNPACK(ZSVT(:,JKAQ),MASK=GRAIN(:,:,:),FIELD=PSVT(:,:,:,JKAQ)) - PSVT(:,:,:,KMODE*2+JKAQ) = & - UNPACK(ZSVT(:,KMODE*2+JKAQ),MASK=GRAIN(:,:,:),FIELD=PSVT(:,:,:,KMODE*2+JKAQ)) -ENDDO - DEALLOCATE(ZRRT) - DEALLOCATE(ZSVT) - DEALLOCATE(ZRHODREF) - DEALLOCATE(ZTHT) - DEALLOCATE(ZRR) - DEALLOCATE(ZNT) - DEALLOCATE(ZPABST) - DEALLOCATE(ZRG) - DEALLOCATE(ZCOR) - DEALLOCATE(ZTEMP) - DEALLOCATE(ZMU) - DEALLOCATE(ZVGG) - DEALLOCATE(ZDPG) - DEALLOCATE(ZMUW) - DEALLOCATE(ZEFC) - DEALLOCATE(ZW1) - DEALLOCATE(ZFLUX) - DEALLOCATE(ZGAMMA) - DEALLOCATE(ZMASSMIN) - END IF -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_MASS_TRANSFER',1,ZHOOK_HANDLE) -END SUBROUTINE AER_WET_MASS_TRANSFER -! -SUBROUTINE AER_WET_DEP_KMT_WARM_SEDIMENT -! -!* Sedimentation of aerosol in rain droplets -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* declaration of local variables -! -! -REAL :: P1,P2,ZQP,ZH -INTEGER :: JL ! and PACK intrinsics -INTEGER :: JKAQ ! counter for acquous aerosols -! -!------------------------------------------------------------------------------- -! -!* Time splitting initialization -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_WARM_SEDIMENT',0,ZHOOK_HANDLE) -ZTSPLITR = PTSTEP / FLOAT(KSPLITR) -! -ZWSEDW1(:,:,:)=0. -ZWSEDW2(:,:,:)=0. -ZWSED(:,:,:) = 0. -ZW(:,:,:)=0. -ZRRS(:,:,:) = MAX(PTSTEP*PRRS(:,:,:), 1E-80) -IKE = SIZE(PRRS,3)-1 -IJE = SIZE(PRRS,2) -IIE = SIZE(PRRS,1) -IKB = 2 - -DO JK = 1 , SIZE(PZZ,3)-1 - ZW(:,:,JK) =ZTSPLITR/(( PZZ(:,:,JK+1)-PZZ(:,:,JK) )) -END DO -WHERE (ZRRS(:,:,:)<=XRTMIN(3)) - ZW(:,:,:)=0. -END WHERE -! -ZWSED(:,:,IKE+1) = 0. - -! Flux mass aerosol in rain droplets = -! Flux mass rain water * Mass aerosol in rain / Mass rain water -DO JKAQ = 1,KMODE - DO JK = IKE,IKB, -1 - DO JJ = 1, IJE - DO JI = 1, IIE - !estimation of q' taking into account incomming ZWSED - ZQP=ZWSED(JI,JJ,JK+1)*ZW(JI,JJ,JK) - !calculation of w - IF ( PRRS(JI,JJ,JK) > ZRTMIN(3) ) THEN - ZWSEDW1 (JI,JJ,JK)= XFSEDR *PRRS(JI,JJ,JK)**(XEXSEDR-1)* & - PRHODREF(JI,JJ,JK)**(XEXSEDR-XCEXVT-1) - ENDIF - IF ( ZQP > ZRTMIN(3) ) THEN - ZWSEDW2 (JI,JJ,JK)= XFSEDR *(ZQP)**(XEXSEDR-1)* & - PRHODREF(JI,JJ,JK)**(XEXSEDR-XCEXVT-1) - ENDIF - ENDDO - DO JI = 1, IIE - ZH=PZZ(JI,JJ,JK+1) - PZZ(JI,JJ,JK) - P1 = MIN(1., ZWSEDW1(JI,JJ,JK) * PTSTEP / ZH ) - IF (ZWSEDW2(JI,JJ,JK) /= 0.) THEN - P2 = MAX(0.,1 - ZH & - & / (PTSTEP*ZWSEDW2(JI,JJ,JK)) ) - ELSE - P2 = 0. - ENDIF - ZWSED (JI,JJ,JK)=P1*PRHODREF(JI,JJ,JK)*& - &ZH*PRRS(JI,JJ,JK)& - &/PTSTEP+ P2 * ZWSED (JI,JJ,JK+1) -! - ZWSED (JI,JJ,JK)=ZWSED (JI,JJ,JK)*PSVT(JI,JJ,JK,KMODE*2+JKAQ) -! - ENDDO - ENDDO - ENDDO -ENDDO -! -DO JKAQ = 1,KMODE - DO JK = IKB, IKE - PSVT(:,:,JK,KMODE*2+JKAQ)= PSVT(:,:,JK,KMODE*2+JKAQ) + & - ZW(:,:,JK)*(ZWSED(:,:,JK+1)-ZWSED(:,:,JK)) - ! Aerosol mass in rain droplets need to be positive - PSVT(:,:,JK,KMODE*2+JKAQ)= MAX(PSVT(:,:,JK,KMODE*2+JKAQ), 0.) - END DO -END DO -! - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_WARM_SEDIMENT',1,ZHOOK_HANDLE) - END SUBROUTINE AER_WET_DEP_KMT_WARM_SEDIMENT -! -!------------------------------------------------------------------------------- -! - SUBROUTINE AER_WET_DEP_KMT_ICE_WARM -! -!* 0. DECLARATIONS -! -IMPLICIT NONE -!------------------------------------------------------------------------------- -! -!* 1. compute the autoconversion of r_c for r_r production: RCAUTR -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_ICE_WARM',0,ZHOOK_HANDLE) -ZZW4(:,:,:)=0.0 -! to be sure no division by zero in case of ZZRCT = 0. -ZZRCT(:,:,:) = PRCT(:,:,:) -ZZRCT(:,:,:) = MAX(ZZRCT(:,:,:), XRTMIN(2)/2.) - -WHERE( (ZZRCT(:,:,:)>XRTMIN(2)) .AND. (PRCS(:,:,:)>0.0 ) ) - ZZW4(:,:,:) = MIN( PRCS(:,:,:),XTIMAUTC* & - MAX((ZZRCT(:,:,:)-XCRIAUTC/ PRHODREF(:,:,:)),0.0)) -END WHERE - -DO JKAQ = 1,KMODE - ZZW2(:,:,:) =0.0 - ZZW2(:,:,:)=ZZW4(:,:,:) * PSVT(:,:,:,KMODE+JKAQ)/ZZRCT(:,:,:) * PTSTEP - ZZW2(:,:,:) = MAX(MIN( ZZW2(:,:,:), PSVT(:,:,:,KMODE+JKAQ)),0.0) - -! For rain - Increase the aerosol conc in rain - PSVT(:,:,:,KMODE*2+JKAQ) = & - PSVT(:,:,:,KMODE*2+JKAQ) + ZZW2(:,:,:) -! For Cloud Decrease the aerosol conc in cloud - PSVT(:,:,:,KMODE+JKAQ) = & - PSVT(:,:,:,KMODE+JKAQ) - ZZW2(:,:,:) -ENDDO - - -! -!* 2. compute the accretion of r_c for r_r production: RCACCR -! -ZZW4(:,:,:)=0.0 -ZLBDAR(:,:,:)=0.0 -WHERE ( (ZZRCT(:,:,:)>XRTMIN(2)) .AND. (PRRT(:,:,:)>XRTMIN(3)) & - .AND. (PRCS(:,:,:)> 0.0 ) ) - ZLBDAR(:,:,:) = XLBR*( PRHODREF(:,:,:)* PRRT(:,:,:) )**XLBEXR - ZZW4(:,:,:) = MIN( PRCS(:,:,:),XFCACCR * ZZRCT(:,:,:) & - * ZLBDAR(:,:,:)**XEXCACCR & - * PRHODREF(:,:,:)**(-XCEXVT) ) -END WHERE -! -DO JKAQ = 1,KMODE - ZZW2(:,:,:)=0.0 - ZZW2(:,:,:)=ZZW4(:,:,:) * PSVT(:,:,:,KMODE+JKAQ)/ZZRCT(:,:,:) * PTSTEP - ZZW2(:,:,:) = MAX(MIN(ZZW2(:,:,:),PSVT(:,:,:,KMODE+JKAQ)), 0.0) - -!* 3. compute the new acquous aerosol mass -! -! For rain - Increase the aerosol conc in rain - PSVT(:,:,:,KMODE*2+JKAQ) = PSVT(:,:,:,KMODE*2+JKAQ) + ZZW2(:,:,:) -! For Cloud Decrease the aerosol conc in cloud - PSVT(:,:,:,KMODE+JKAQ) = PSVT(:,:,:,KMODE+JKAQ) - ZZW2(:,:,:) -ENDDO - - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_ICE_WARM',1,ZHOOK_HANDLE) - END SUBROUTINE AER_WET_DEP_KMT_ICE_WARM -!--------------------------------------------------------------------------------------- - SUBROUTINE AER_WET_DEP_KMT_EVAP -! -!* COMPUTES THE EVAPORATION OF CLOUD-RAIN FOR THE -!* RE-RELEASE OF AER INTO THE ENVIRONMENT -! -------------------------------------- -! - -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -!* declaration of local variables -! -INTEGER :: JKAQ ! counter for aerosols - -!* 1. compute the evaporation of r_r: RREVAV - -!When partial reevaporation of precip takes place, the fraction of -!tracer precipitating form above is reevaporated is equal to -!half of the evaporation rate of water -! -! Rain water evaporated during PTSTEP in kg/kg -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_EVAP',0,ZHOOK_HANDLE) -ZZEVAP(:,:,:) = PEVAP3D(:,:,:) * PTSTEP -! Fraction of rain water evaporated -! at this stage (bulk), we consider that the flux of evaporated aerosol -! is a ratio of the evaporated rain water. -! It will interested to calculate with a two moment scheme (C2R2 or C3R5) -! the complete evaporation of rain droplet to use it for the compuation -! of the evaporated aerosol flux. -ZWEVAP(:,:,:)=0.0 -WHERE( PRRT(:,:,:) .GT. XRTMIN(3) ) - ZWEVAP(:,:,:) = ZZEVAP(:,:,:)/(PRRT(:,:,:)) -END WHERE -ZWEVAP(:,:,:)=MIN(ZWEVAP(:,:,:),1.0) -ZWEVAP(:,:,:)=MAX(ZWEVAP(:,:,:),0.0) - -!* 2. compute the mask of r_c evaporation : all cloud is evaporated -! no partial cloud evaporation at this stage -ZMASK(:,:,:) = 0. -WHERE( PRCS(:,:,:) .LT. XRTMIN(2) ) - ZMASK(:,:,:) = 1. -END WHERE -! -! -DO JKAQ = 1,KMODE - ZZW1(:,:,:) = ZMASK(:,:,:)*PSVT(:,:,:,KMODE+JKAQ) - - ZZW2(:,:,:) = ZWEVAP(:,:,:)*PSVT(:,:,:,KMODE*2+JKAQ) - -! 3. New dry aerosol mass -! - PSVT(:,:,:,JKAQ) = PSVT(:,:,:,JKAQ) + ZZW2(:,:,:) + ZZW1(:,:,:) -! 4. New cloud aerosol mass -! - PSVT(:,:,:,KMODE+JKAQ) = PSVT(:,:,:,KMODE+JKAQ) - ZZW1(:,:,:) - -! 5. New rain aerosol mass -! - PSVT(:,:,:,KMODE*2+JKAQ) = PSVT(:,:,:,KMODE*2+JKAQ) - ZZW2(:,:,:) -END DO -! -! - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_EVAP',1,ZHOOK_HANDLE) - END SUBROUTINE AER_WET_DEP_KMT_EVAP -!--------------------------------------------------------------------------------------- - SUBROUTINE AER_WET_DEP_KMT_EFFIC -! -!* COMPUTES THE EFFICIENCY FACTOR -! ------------------------------ -! -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -! -!* 1. COMPUTES THE EFFICIENCY FACTOR -! -------------------------------------- -! -!* 1.1 compute gravitational velocities -! -!initialize - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_EFFIC',0,ZHOOK_HANDLE) - ZTEMP(:)=ZTHT(:)*(ZPABST(:)/XP00)**(XRD/XCPD) - ZTEMP(:)=MAX(ZTEMP(:),1.e-12) - - CALL AER_VELGRAV(ZRG(:,:), ZPABST, KMODE, & - ZMU(:), ZVGG(:,:), & - ZDPG(:,:),ZTEMP(:), & - ZCOR(:,:), PDENSITY_AER) - -! Above gives mu (ZMU), v(aerosol)(PVGG, m/s), diffusion (ZDPG, m2/s) -! -!* 1.2 Compute Water Viscocity in kg/m/s Prup. & Klett, p.95 -! -! - A0=1.76 - A1=-5.5721e-2 - A2=-1.3943e-3 - A3=-4.3015e-5 - ZMUW(:)=A0*EXP(A1*(ZTEMP(:)-273.15) & - +A2*(ZTEMP(:)-273.15) + A3*(ZTEMP(:)-273.15))*1.e-3 - - A1=-3.5254e-2 - A2=4.7163e-4 - A3=-6.0667e-6 - - WHERE (ZTEMP(:)>273.15) - ZMUW(:)=A0*EXP(A1*(ZTEMP(:)-273.15) & - +A2*(ZTEMP(:)-273.15) + A3*(ZTEMP(:)-273.15))*1.e-3 - END WHERE - ZMUW(:)=MAX(ZMUW(:),1.e-12) - -! -!* 1.3 compute efficiency factor -! -! This gives aerosol collection efficiency by calculating Reynolds number -! schmidt number, stokes number, etc - CALL AER_EFFIC(ZRG(:,:), ZVGG(:,:), & !aerosol radius/velocity - ZRHODREF(:), & !Air density - ZMUW(:), ZMU(:), & !mu water/air - ZDPG(:,:), ZEFC(:,:), & !diffusivity, efficiency - ZRRT(:), KMODE, & !Rain water, nb aerosols modes - ZTEMP(:),ZCOR(:,:), & ! Temperature, Cunnimgham coeff - PDENSITY_AER ) ! aerosol density -! -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:AER_WET_DEP_KMT_EFFIC',1,ZHOOK_HANDLE) -END SUBROUTINE AER_WET_DEP_KMT_EFFIC - -! -!------------------------------------------------------------------------------- -! -! - FUNCTION COUNTJV(LTAB,I1,I2,I3) RESULT(IC) -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* declaration of local variables -! -! -LOGICAL, DIMENSION(:,:,:) :: LTAB ! Mask -INTEGER, DIMENSION(:) :: I1,I2,I3 ! Used to replace the COUNT and PACK -INTEGER :: JI,JJ,JK,IC -! -!------------------------------------------------------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:COUNTJV',0,ZHOOK_HANDLE) -I1(:)=0 -I2(:)=0 -I3(:)=0 -!ktk -IC = 0 -DO JK = 1,SIZE(LTAB,3) - DO JJ = 1,SIZE(LTAB,2) - DO JI = 1,SIZE(LTAB,1) - IF( LTAB(JI,JJ,JK) ) THEN - IC = IC +1 - I1(IC) = JI - I2(IC) = JJ - I3(IC) = JK - END IF - END DO - END DO -END DO -! -IF (LHOOK) CALL DR_HOOK('AER_WET_DEP_KMT_WARM:COUNTJV',1,ZHOOK_HANDLE) -END FUNCTION COUNTJV -! -!------------------------------------------------------------------------------- -! -END SUBROUTINE AER_WET_DEP_KMT_WARM diff --git a/src/arome/chem/internals/ares.F b/src/arome/chem/internals/ares.F deleted file mode 100644 index 7a76ea35eaf6980483bdd6a8da12b7a4613fe707..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ares.F +++ /dev/null @@ -1,1427 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/ares.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:29 $ -!----------------------------------------------------------------- -!----------------------------------------------------------------- -!///////////////////////////////////////////////////////////////////////////// - -! Calculate the aerosol chemical speciation and water content. - - SUBROUTINE RPMARES ( SO4, HNO3, NO3, NH3, NH4, RH, TEMP, & - & ASO4, ANO3, AH2O, ANH4, GNH3, GNO3) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - -!----------------------------------------------------------------------- -! -! Description: -! -! ARES calculates the chemical composition of a sulfate/nitrate/ -! ammonium/water aerosol based on equilibrium thermodynamics. -! -! This code considers two regimes depending upon the molar ratio -! of ammonium to sulfate. -! -! For values of this ratio less than 2,the code solves a cubic for -! hydrogen ion molality, HPLUS, and if enough ammonium and liquid -! water are present calculates the dissolved nitric acid. For molal -! ionic strengths greater than 50, nitrate is assumed not to be present. -! -! For values of the molar ratio of 2 or greater, all sulfate is assumed -! to be ammonium sulfate and a calculation is made for the presence of -! ammonium nitrate. -! -! The Pitzer multicomponent approach is used in subroutine ACTCOF to -! obtain the activity coefficients. Abandoned -7/30/97 FSB - -! The Bromley method of calculating the activity coefficients is s used -! in this version - -! The calculation of liquid water -! is done in subroutine water. Details for both calculations are given -! in the respective subroutines. -! -! Based upon MARS due to -! P. Saxena, A.B. Hudischewskyj, C. Seigneur, and J.H. Seinfeld, -! Atmos. Environ., vol. 20, Number 7, Pages 1471-1483, 1986. -! -! and SCAPE due to -! Kim, Seinfeld, and Saxeena, Aerosol Ceience and Technology, -! Vol 19, number 2, pages 157-181 and pages 182-198, 1993. -! -! NOTE: All concentrations supplied to this subroutine are TOTAL -! over gas and aerosol phases -! -! Parameters: -! -! SO4 : Total sulfate in MICROGRAMS/M**3 as sulfate (IN) -! HNO3 : Nitric Acid in MICROGRAMS/M**3 as nitric acid (IN) -! NO3 : Total nitrate in MICROGRAMS/M**3 as nitric acid (IN) -! NH3 : Total ammonia in MICROGRAMS/M**3 as ammonia (IN) -! NH4 : Ammonium in MICROGRAMS/M**3 as ammonium (IN) -! RH : Fractional relative humidity (IN) -! TEMP : Temperature in Kelvin (IN) -! GNO3 : Gas phase nitric acid in MICROGRAMS/M**3 (OUT) -! GNH3 : Gas phase ammonia in MICROGRAMS/M**3 (OUT) -! ASO4 : Aerosol phase sulfate in MICROGRAMS/M**3 (OUT) -! ANO3 : Aerosol phase nitrate in MICROGRAMS/M**3 (OUT) -! ANH4 : Aerosol phase ammonium in MICROGRAMS/M**3 (OUT) -! AH2O : Aerosol phase water in MICROGRAMS/M**3 (OUT) -! NITR : Number of iterations for obtaining activity coefficients (OUT) -! NR : Number of real roots to the cubic in the low ammonia case (OUT) -! -! Revision History: -! Who When Detailed description of changes -! --------- -------- ------------------------------------------- -! S.Roselle 11/10/87 Received the first version of the MARS code -! S.Roselle 12/30/87 Restructured code -! S.Roselle 2/12/88 Made correction to compute liquid-phase -! concentration of H2O2. -! S.Roselle 5/26/88 Made correction as advised by SAI, for -! computing H+ concentration. -! S.Roselle 3/1/89 Modified to operate with EM2 -! S.Roselle 5/19/89 Changed the maximum ionic strength from -! 100 to 20, for numerical stability. -! F.Binkowski 3/3/91 Incorporate new method for ammonia rich case -! using equations for nitrate budget. -! F.Binkowski 6/18/91 New ammonia poor case which -! omits letovicite. -! F.Binkowski 7/25/91 Rearranged entire code, restructured -! ammonia poor case. -! F.Binkowski 9/9/91 Reconciled all cases of ASO4 to be output -! as SO4-- -! F.Binkowski 12/6/91 Changed the ammonia defficient case so that -! there is only neutralized sulfate (ammonium -! sulfate) and sulfuric acid. -! F.Binkowski 3/5/92 Set RH bound on AWAS to 37 % to be in agreement -! with the Cohen et al. (1987) maximum molality -! of 36.2 in Table III.( J. Phys Chem (91) page -! 4569, and Table IV p 4587.) -! F.Binkowski 3/9/92 Redid logic for ammonia defficient case to remove -! possibility for denomenator becoming zero; -! this involved solving for HPLUS first. -! Note that for a relative humidity -! less than 50%, the model assumes that there is no -! aerosol nitrate. -! F.Binkowski 4/17/95 Code renamed ARES (AeRosol Equilibrium System) -! Redid logic as follows -! 1. Water algorithm now follows Spann & Richardson -! 2. Pitzer Multicomponent method used -! 3. Multicomponent practical osmotic coefficient -! use to close iterations. -! 4. The model now assumes that for a water -! mass fraction WFRAC less than 50% there is -! no aerosol nitrate. -! F.Binkowski 7/20/95 Changed how nitrate is calculated in ammonia poor -! case, and changed the WFRAC criterion to 40%. -! For ammonium to sulfate ratio less than 1.0 -! all ammonium is aerosol and no nitrate aerosol -! exists. -! F.Binkowski 7/21/95 Changed ammonia-ammonium in ammonia poor case to -! allow gas-phase ammonia to exist. -! F.Binkowski 7/26/95 Changed equilibrium constants to values from -! Kim et al. (1993) -! F.Binkowski 6/27/96 Changed to new water format -! F.Binkowski 7/30/97 Changed to Bromley method for multicomponent -! activity coefficients. The binary activity coefficients -! are the same as the previous version -! F.Binkowski 8/1/97 Chenged minimum sulfate from 0.0 to 1.0e-6 i.e. -! 1 picogram per cubic meter -! -!----------------------------------------------------------------------- -! K. Suhre 6/6/98 -! -! note different values of the following constants, -! the latter ones are used in subroutine awater .. -! -! MWSO4 = 96.0576 -! mwso4 = 96.0636 -! -! MWNH4 = 18.03858 -! mwnh4 = 18.0985 -! -! MWNO3 = 62.0049 -! mwno3 = 62.0649 -! -! -- -! -! increased precision by -! changing TOLER2 = 0.001 to TOLER2 = 0.00001 -! -!----------------------------------------------------------------------- - - IMPLICIT NONE - -!...........INCLUDES and their descriptions - -!cc INCLUDE SUBST_CONST ! constants - -!...........PARAMETERS and their descriptions: - - REAL MWNACL ! molecular weight for NaCl - PARAMETER ( MWNACL = 58.44277 ) - - REAL MWNO3 ! molecular weight for NO3 - PARAMETER ( MWNO3 = 62.0049 ) - - REAL MWHNO3 ! molecular weight for HNO3 - PARAMETER ( MWHNO3 = 63.01287 ) - - REAL MWSO4 ! molecular weight for SO4 - PARAMETER ( MWSO4 = 96.0576 ) - - REAL MWHSO4 ! molecular weight for HSO4 - PARAMETER ( MWHSO4 = MWSO4 + 1.0080 ) - - REAL MH2SO4 ! molecular weight for H2SO4 - PARAMETER ( MH2SO4 = 98.07354 ) - - REAL MWNH3 ! molecular weight for NH3 - PARAMETER ( MWNH3 = 17.03061 ) - - REAL MWNH4 ! molecular weight for NH4 - PARAMETER ( MWNH4 = 18.03858 ) - - REAL MWORG ! molecular weight for Organic Species - PARAMETER ( MWORG = 16.0 ) - - REAL MWCL ! molecular weight for Chloride - PARAMETER ( MWCL = 35.453 ) - - REAL MWAIR ! molecular weight for AIR - PARAMETER ( MWAIR = 28.964 ) - - REAL MWLCT ! molecular weight for Letovicite - PARAMETER ( MWLCT = 3.0 * MWNH4 + 2.0 * MWSO4 + 1.0080 ) - - REAL MWAS ! molecular weight for Ammonium Sulfate - PARAMETER ( MWAS = 2.0 * MWNH4 + MWSO4 ) - - REAL MWABS ! molecular weight for Ammonium Bisulfate - PARAMETER ( MWABS = MWNH4 + MWSO4 + 1.0080 ) - -!...........ARGUMENTS and their descriptions - - REAL SO4 ! Total sulfate in micrograms / m**3 -!iamodels3 - REAL HNO3 ! Total nitric acid in micrograms / m**3 - REAL NO3 ! Total nitrate in micrograms / m**3 - REAL NH3 ! Total ammonia in micrograms / m**3 - REAL NH4 ! Total ammonium in micrograms / m**3 - REAL RH ! Fractional relative humidity - REAL TEMP ! Temperature in Kelvin - REAL ASO4 ! Aerosol sulfate in micrograms / m**3 - REAL ANO3 ! Aerosol nitrate in micrograms / m**3 - REAL AH2O ! Aerosol liquid water content water in micrograms / m**3 - REAL ANH4 ! Aerosol ammonium in micrograms / m**3 - REAL GNO3 ! Gas-phase nitric acid in micrograms / m**3 - REAL GNH3 ! Gas-phase ammonia in micrograms / m**3 - -!...........SCRATCH LOCAL VARIABLES and their descriptions: - - INTEGER IRH ! Index set to percent relative humidity - INTEGER NITR ! Number of iterations for activity coefficients - INTEGER NNN ! Loop index for iterations - INTEGER NR ! Number of roots to cubic equation for HPLUS - - REAL A0 ! Coefficients and roots of - REAL A1 ! Coefficients and roots of - REAL A2 ! Coefficients and roots of - REAL AA ! Coefficients and discriminant for quadratic equation for ammonium nitrate - REAL BAL ! internal variables ( high ammonia case) - REAL BB ! Coefficients and discriminant for quadratic equation for ammonium nitrate - REAL BHAT ! Variables used for ammonia solubility - REAL CC ! Coefficients and discriminant for quadratic equation for ammonium nitrate - REAL CONVT ! Factor for conversion of units - REAL DD ! Coefficients and discriminant for quadratic equation for ammonium nitrate - REAL DISC ! Coefficients and discriminant for quadratic equation for ammonium nitrate - REAL EROR ! Relative error used for convergence test - REAL FNH3 ! "Free ammonia concentration", that which exceeds TWOSO4 - REAL GAMAAB ! Activity Coefficient for (NH4+, HSO4-)GAMS( 2,3 ) - REAL GAMAAN ! Activity coefficient for (NH4+, NO3-) GAMS( 2,2 ) - REAL GAMAHAT ! Variables used for ammonia solubility - REAL GAMANA ! Activity coefficient for (H+ ,NO3-) GAMS( 1,2 ) - REAL GAMAS1 ! Activity coefficient for (2H+, SO4--) GAMS( 1,1 ) - REAL GAMAS2 ! Activity coefficient for (H+, HSO4-) GAMS( 1,3 ) - REAL GAMOLD ! used for convergence of iteration - REAL GASQD ! internal variables ( high ammonia case) - REAL HPLUS ! Hydrogen ion (low ammonia case) (moles / kg water) - REAL K1A ! Equilibrium constant for ammoniua to ammonium - REAL K2SA ! Equilibrium constant for sulfate-bisulfate (aqueous) - REAL K3 ! Dissociation constant for ammonium nitrate - REAL KAN ! Equilibrium constant for ammonium nitrate (aqueous) - REAL KHAT ! Variables used for ammonia solubility - REAL KNA ! Equilibrium constant for nitric acid (aqueous) - REAL KPH ! Henry's Law Constant for ammonia - REAL KW ! Equilibrium constant for water dissociation - REAL KW2 ! Internal variable using KAN - REAL MAN ! Nitrate (high ammonia case) (moles / kg water) - REAL MAS ! Sulfate (high ammonia case) (moles / kg water) - REAL MHSO4 ! Bisulfate (low ammonia case) (moles / kg water) - REAL MNA ! Nitrate (low ammonia case) (moles / kg water) - REAL MNH4 ! Ammonium (moles / kg water) - REAL MOLNU ! Total number of moles of all ions - REAL MSO4 ! Sulfate (low ammonia case) (moles / kg water) - REAL PHIBAR ! Practical osmotic coefficient - REAL PHIOLD ! Previous value of practical osmotic coefficient used for convergence of iteration - REAL RATIO ! Molar ratio of ammonium to sulfate - REAL RK2SA ! Internal variable using K2SA - REAL RKNA ! Internal variables using KNA - REAL RKNWET ! Internal variables using KNA - REAL RR1 - REAL RR2 - REAL STION ! Ionic strength - REAL T1 ! Internal variables for temperature corrections - REAL T2 ! Internal variables for temperature corrections - REAL T21 ! Internal variables of convenience (low ammonia case) - REAL T221 ! Internal variables of convenience (low ammonia case) - REAL T3 ! Internal variables for temperature corrections - REAL T4 ! Internal variables for temperature corrections - REAL T6 ! Internal variables for temperature corrections - REAL TNH4 ! Total ammonia and ammonium in micromoles / meter ** 3 - REAL TNO3 ! Total nitrate in micromoles / meter ** 3 - REAL TOLER1 ! Tolerances for convergence test - REAL TOLER2 ! Tolerances for convergence test - REAL TSO4 ! Total sulfate in micromoles / meter ** 3 - REAL TWOSO4 ! 2.0 * TSO4 (high ammonia case) (moles / kg water) - REAL WFRAC ! Water mass fraction - REAL WH2O ! Aerosol liquid water content (internally) - ! micrograms / meter **3 on output - ! internally it is 10 ** (-6) kg (water) / meter ** 3 - ! the conversion factor (1000 g = 1 kg) is applied - ! for AH2O output - REAL WSQD ! internal variables ( high ammonia case) - REAL XNO3 ! Nitrate aerosol concentration in micromoles / meter ** 3 - REAL XXQ ! Variable used in quadratic solution - REAL YNH4 ! Ammonium aerosol concentration in micromoles / meter** 3 - REAL ZH2O ! Water variable saved in case ionic strength too high. - REAL ZSO4 ! Total sulfate molality - mso4 + mhso4 (low ammonia case) (moles / kg water) - - REAL CAT( 2 ) ! Array for cations (1, H+); (2, NH4+) (moles / kg water) - REAL AN ( 3 ) ! Array for anions (1, SO4--); (2, NO3-); (3, HSO4-) (moles / kg water) - REAL CRUTES( 3 ) ! Coefficients and roots of - REAL GAMS( 2, 3 ) ! Array of activity coefficients - REAL MINSO4 ! Minimum value of sulfate laerosol concentration - PARAMETER( MINSO4 = 1.0E-6 / MWSO4 ) - REAL FLOOR - PARAMETER( FLOOR = 1.0E-30) ! minimum concentration - -!----------------------------------------------------------------------- -! begin body of subroutine RPMARES - -!...convert into micromoles/m**3 - -!cc WRITE( 10, * ) 'SO4, NO3, NH3 ', SO4, NO3, NH3 -!iamodels3 merge NH3/NH4 , HNO3,NO3 here - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RPMARES',0,ZHOOK_HANDLE) - TSO4 = MAX( 0.0, SO4 / MWSO4 ) - TNO3 = MAX( 0.0, (NO3 / MWNO3 + HNO3 / MWHNO3) ) - TNH4 = MAX( 0.0, (NH3 / MWNH3 + NH4 / MWNH4) ) -!cc WRITE( 10, * ) 'TSO4, TNO3, TNH3, RH ', TSO4, TNO3, TNH3, RH - -!...now set humidity index IRH as a percent - - IRH = NINT( 100.0 * RH ) - -!...Check for valid IRH - - IRH = MAX( 1, IRH ) - IRH = MIN( 99, IRH ) -!cc WRITE(10,*)'RH,IRH ',RH,IRH - -!...Specify the equilibrium constants at correct -!... temperature. Also change units from ATM to MICROMOLE/M**3 (for KAN, -!... KPH, and K3 ) -!... Values from Kim et al. (1993) except as noted. - - CONVT = 1.0 / ( 0.082 * TEMP ) - T6 = 0.082E-9 * TEMP - T1 = 298.0 / TEMP - T2 = LOG( T1 ) - T3 = T1 - 1.0 - T4 = 1.0 + T2 - T1 - KNA = 2.511E+06 * EXP( 29.17 * T3 + 16.83 * T4 ) * T6 - K1A = 1.805E-05 * EXP( -1.50 * T3 + 26.92 * T4 ) - K2SA = 1.015E-02 * EXP( 8.85 * T3 + 25.14 * T4 ) - KW = 1.010E-14 * EXP( -22.52 * T3 + 26.92 * T4 ) - KPH = 57.639 * EXP( 13.79 * T3 - 5.39 * T4 ) * T6 -!cc K3 = 5.746E-17 * EXP( -74.38 * T3 + 6.12 * T4 ) * T6 * T6 - KHAT = KPH * K1A / KW - KAN = KNA * KHAT - -!...Compute temperature dependent equilibrium constant for NH4NO3 -!... ( from Mozurkewich, 1993) - - K3 = EXP( 118.87 - 24084.0 / TEMP - 6.025 * LOG( TEMP ) ) - -!...Convert to (micromoles/m**3) **2 - - K3 = K3 * CONVT * CONVT - - WH2O = 0.0 - STION = 0.0 - AH2O = 0.0 - MAS = 0.0 - MAN = 0.0 - HPLUS = 0.0 - TOLER1 = 0.00001 - TOLER2 = 0.00001 - NITR = 0 - NR = 0 - RATIO = 0.0 - GAMAAN = 1.0 - GAMOLD = 1.0 - -!...set the ratio according to the amount of sulfate and nitrate - - IF ( TSO4 .GT. MINSO4 ) THEN - RATIO = TNH4 / TSO4 - -!...If there is no sulfate and no nitrate, there can be no ammonium -!... under the current paradigm. Organics are ignored in this version. - - ELSE - - IF ( TNO3 .EQ. 0.0 ) THEN - -! *** If there is very little sulfate and no nitrate set concentrations -! to a very small value and return. - ASO4 = MAX(FLOOR, ASO4) - ANO3 = MAX(FLOOR, ANO3 ) - WH2O = 0.0 - AH2O = 0.0 - GNH3 = MAX(FLOOR,GNH3) - GNO3 = MAX(FLOOR,GNO3) - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - END IF - -!...For the case of no sulfate and nonzero nitrate, set ratio to 5 -!... to send the code to the high ammonia case - - RATIO = 5.0 - END IF - - -!.................................... -!......... High Ammonia Case ........ -!.................................... - - IF ( RATIO .GT. 2.0 ) THEN - - GAMAAN = 0.1 - -!...Set up twice the sulfate for future use. - - TWOSO4 = 2.0 * TSO4 - XNO3 = 0.0 - YNH4 = TWOSO4 - -!...Treat different regimes of relative humidity - -!...ZSR relationship is used to set water levels. Units are -!... 10**(-6) kg water/ (cubic meter of air) -!... start with ammomium sulfate solution without nitrate - - CALL awater(IRH,TSO4,YNH4,TNO3,AH2O) !**** note TNO3 - WH2O = 1.0E-3 * AH2O - ASO4 = TSO4 * MWSO4 - ANO3 = 0.0 - ANH4 = YNH4 * MWNH4 - WFRAC = AH2O / ( ASO4 + ANH4 + AH2O ) -!cc IF ( WFRAC .EQ. 0.0 ) RETURN ! No water - IF ( WFRAC .LT. 0.2 ) THEN - -!..."dry" ammonium sulfate and ammonium nitrate -!... compute free ammonia - - FNH3 = TNH4 - TWOSO4 - CC = TNO3 * FNH3 - K3 - -!...check for not enough to support aerosol - - IF ( CC .LE. 0.0 ) THEN - XNO3 = 0.0 - ELSE - AA = 1.0 - BB = -( TNO3 + FNH3 ) - DISC = BB * BB - 4.0 * CC - -!...Check for complex roots of the quadratic -!... set nitrate to zero and RETURN if complex roots are found - - IF ( DISC .LT. 0.0 ) THEN - XNO3 = 0.0 - AH2O = 1000.0 * WH2O - YNH4 = TWOSO4 - GNO3 = TNO3 * MWHNO3 - GNH3 = ( TNH4 - YNH4 ) * MWNH3 - ASO4 = TSO4 * MWSO4 - ANO3 = 0.0 - ANH4 = YNH4 * MWNH4 - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - END IF - -!...to get here, BB .lt. 0.0, CC .gt. 0.0 always - - DD = SQRT( DISC ) - XXQ = -0.5 * ( BB + SIGN ( 1.0, BB ) * DD ) - -!...Since both roots are positive, select smaller root. - - XNO3 = MIN( XXQ / AA, CC / XXQ ) - - END IF - AH2O = 1000.0 * WH2O - YNH4 = 2.0 * TSO4 + XNO3 - GNO3 = ( TNO3 - XNO3 ) * MWHNO3 - GNH3 = ( TNH4 - YNH4 ) * MWNH3 - ASO4 = TSO4 * MWSO4 - ANO3 = XNO3 * MWNO3 - ANH4 = YNH4 * MWNH4 - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - - END IF - -!...liquid phase containing completely neutralized sulfate and -!... some nitrate. Solve for composition and quantity. - - MAS = TSO4 / WH2O - MAN = 0.0 - XNO3 = 0.0 - YNH4 = TWOSO4 - PHIOLD = 1.0 - -!...Start loop for iteration - -!...The assumption here is that all sulfate is ammonium sulfate, -!... and is supersaturated at lower relative humidities. - - DO 1501 NNN = 1, 150 - NITR = NNN - GASQD = GAMAAN * GAMAAN - WSQD = WH2O * WH2O - KW2 = KAN * WSQD / GASQD - AA = 1.0 - KW2 - BB = TWOSO4 + KW2 * ( TNO3 + TNH4 - TWOSO4 ) - CC = -KW2 * TNO3 * ( TNH4 - TWOSO4 ) - -!...This is a quadratic for XNO3 [MICROMOLES / M**3] of nitrate in solution. - - DISC = BB * BB - 4.0 * AA * CC - -!...Check for complex roots, if so set nitrate to zero and RETURN - - IF ( DISC .LT. 0.0 ) THEN - XNO3 = 0.0 - AH2O = 1000.0 * WH2O - YNH4 = TWOSO4 - GNO3 = TNO3 * MWHNO3 - GNH3 = ( TNH4 - YNH4 ) * MWNH3 - ASO4 = TSO4 * MWSO4 - ANO3 = 0.0 - ANH4 = YNH4 * MWNH4 -!cc WRITE( 10, * ) ' COMPLEX ROOTS ' - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - END IF - - DD = SQRT( DISC ) - XXQ = -0.5 * ( BB + SIGN ( 1.0, BB ) * DD ) - RR1 = XXQ / AA - RR2 = CC / XXQ - -!...choose minimum positve root - - IF ( ( RR1 * RR2 ) .LT. 0.0 ) THEN - XNO3 = MAX( RR1, RR2 ) - ELSE - XNO3 = MIN( RR1, RR2 ) - END IF - - XNO3 = MIN( XNO3, TNO3 ) - -!...This version assumes no solid sulfate forms (supersaturated ) -!... Now update water - - CALL AWATER ( IRH, TSO4, YNH4, XNO3, AH2O ) - -!...ZSR relationship is used to set water levels. Units are -!... 10**(-6) kg water/ (cubic meter of air) -!... The conversion from micromoles to moles is done by the units of WH2O. - - WH2O = 1.0E-3 * AH2O - -!...Ionic balance determines the ammonium in solution. - - MAN = XNO3 / WH2O - MAS = TSO4 / WH2O - MNH4 = 2.0 * MAS + MAN - YNH4 = MNH4 * WH2O - -!...MAS, MAN and MNH4 are the aqueous concentrations of sulfate, nitrate, -!... and ammonium in molal units (moles/(kg water) ). - - STION = 3.0 * MAS + MAN - CAT( 1 ) = 0.0 - CAT( 2 ) = MNH4 - AN ( 1 ) = MAS - AN ( 2 ) = MAN - AN ( 3 ) = 0.0 - CALL ACTCOF ( CAT, AN, GAMS, MOLNU, PHIBAR ) - GAMAAN = GAMS( 2, 2 ) - -!...Use GAMAAN for convergence control - - EROR = ABS( GAMOLD - GAMAAN ) / GAMOLD - GAMOLD = GAMAAN - -!...Check to see if we have a solution - - IF ( EROR .LE. TOLER1 ) THEN -!cc WRITE( 11, * ) RH, STION, GAMS( 1, 1 ),GAMS( 1, 2 ), GAMS( 1, 3 ), -!cc & GAMS( 2, 1 ), GAMS( 2, 2 ), GAMS( 2, 3 ), PHIBAR - - ASO4 = TSO4 * MWSO4 - ANO3 = XNO3 * MWNO3 - ANH4 = YNH4 * MWNH4 - GNO3 = ( TNO3 - XNO3 ) * MWHNO3 - GNH3 = ( TNH4 - YNH4 ) * MWNH3 - AH2O = 1000.0 * WH2O - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - END IF - -1501 CONTINUE - -!...If after NITR iterations no solution is found, then: - - ASO4 = TSO4 * MWSO4 - ANO3 = 0.0 - YNH4 = TWOSO4 - ANH4 = YNH4 * MWNH4 - CALL AWATER ( IRH, TSO4, YNH4, XNO3, AH2O ) - GNO3 = TNO3 * MWHNO3 - GNH3 = ( TNH4 - YNH4 ) * MWNH3 - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - - ELSE - -!...................................... -!......... Low Ammonia Case ........... -!...................................... - -!...coded by Dr. Francis S. Binkowski 12/8/91.(4/26/95) - -!...All cases covered by this logic - - WH2O = 0.0 - CALL AWATER ( IRH, TSO4, TNH4, TNO3, AH2O ) - WH2O = 1.0E-3 * AH2O - ZH2O = AH2O - -!...convert 10**(-6) kg water/(cubic meter of air) to micrograms of water -!... per cubic meter of air (1000 g = 1 kg) - - ASO4 = TSO4 * MWSO4 - ANH4 = TNH4 * MWNH4 - ANO3 = 0.0 - GNO3 = TNO3 * MWHNO3 - GNH3 = 0.0 - -!...Check for zero water. - - IF ( WH2O .EQ. 0.0 ) THEN - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - ENDIF - ZSO4 = TSO4 / WH2O - -!...ZSO4 is the molality of total sulfate i.e. MSO4 + MHSO4 - -!cc IF ( ZSO4 .GT. 11.0 ) THEN - -!...do not solve for aerosol nitrate for total sulfate molality -!... greater than 11.0 because the model parameters break down -!... greater than 9.0 because the model parameters break down - - IF ( ZSO4 .GT. 9.0 ) THEN ! 18 June 97 - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - END IF - -!...First solve with activity coeffs of 1.0, then iterate. - - PHIOLD = 1.0 - GAMANA = 1.0 - GAMAS1 = 1.0 - GAMAS2 = 1.0 - GAMAAB = 1.0 - GAMOLD = 1.0 - -!...All ammonia is considered to be aerosol ammonium. - - MNH4 = TNH4 / WH2O - -!...MNH4 is the molality of ammonium ion. - - YNH4 = TNH4 - -!...loop for iteration - - DO 1601 NNN = 1, 150 - NITR = NNN - -!...set up equilibrium constants including activities -!... solve the system for hplus first then sulfate & nitrate - - RK2SA = K2SA * GAMAS2 * GAMAS2 / ( GAMAS1 * GAMAS1 * GAMAS1 ) - RKNA = KNA / ( GAMANA * GAMANA ) - RKNWET = RKNA * WH2O - T21 = ZSO4 - MNH4 - T221 = ZSO4 + T21 - -!...set up coefficients for cubic - - A2 = RK2SA + RKNWET - T21 - A1 = RK2SA * RKNWET - T21 * ( RK2SA + RKNWET ) & - & - RK2SA * ZSO4 - RKNA * TNO3 - A0 = - (T21 * RK2SA * RKNWET & - & + RK2SA * RKNWET * ZSO4 + RK2SA * RKNA * TNO3 ) - CALL CUBIC ( A2, A1, A0, NR, CRUTES ) - -!...Code assumes the smallest positive root is in CRUTES(1) - - HPLUS = CRUTES( 1 ) - BAL = HPLUS **3 + A2 * HPLUS**2 + A1 * HPLUS + A0 - MSO4 = RK2SA * ZSO4 / ( HPLUS + RK2SA ) ! molality of sulfate ion - MHSO4 = ZSO4 - MSO4 ! molality of bisulfate ion - MNA = RKNA * TNO3 / ( HPLUS + RKNWET ) ! molality of nitrate ion - MNA = MAX( 0.0, MNA ) - MNA = MIN( MNA, TNO3 / WH2O ) - XNO3 = MNA * WH2O - ANO3 = MNA * WH2O * MWNO3 - GNO3 = ( TNO3 - XNO3 ) * MWHNO3 - -!...Calculate ionic strength - - STION = 0.5 * ( HPLUS + MNA + MNH4 + MHSO4 + 4.0 * MSO4 ) - -!...Update water - - CALL AWATER ( IRH, TSO4, YNH4, XNO3, AH2O ) - -!...Convert 10**(-6) kg water/(cubic meter of air) to micrograms of water -!... per cubic meter of air (1000 g = 1 kg) - - WH2O = 1.0E-3 * AH2O - CAT( 1 ) = HPLUS - CAT( 2 ) = MNH4 - AN ( 1 ) = MSO4 - AN ( 2 ) = MNA - AN ( 3 ) = MHSO4 - - CALL ACTCOF ( CAT, AN, GAMS, MOLNU, PHIBAR ) - - GAMANA = GAMS( 1, 2 ) - GAMAS1 = GAMS( 1, 1 ) - GAMAS2 = GAMS( 1, 3 ) - GAMAAN = GAMS( 2, 2 ) - - GAMAHAT = ( GAMAS2 * GAMAS2 / ( GAMAAB * GAMAAB ) ) - BHAT = KHAT * GAMAHAT -!cc EROR = ABS ( ( PHIOLD - PHIBAR ) / PHIOLD ) -!cc PHIOLD = PHIBAR - EROR = ABS ( GAMOLD - GAMAHAT ) / GAMOLD - GAMOLD = GAMAHAT - -!...write out molalities and activity coefficient -!... and return with good solution - - IF ( EROR .LE. TOLER2 ) THEN -!cc WRITE(12,*) RH, STION,HPLUS,ZSO4,MSO4,MHSO4,MNH4,MNA -!cc WRITE(11,*) RH, STION, GAMS(1,1),GAMS(1,2),GAMS(1,3), -!cc & GAMS(2,1),GAMS(2,2),GAMS(2,3), PHIBAR - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - END IF - -1601 CONTINUE - -!...after NITR iterations, failure to solve the system, no ANO3 - - GNO3 = TNO3 * MWHNO3 - ANO3 = 0.0 - CALL AWATER ( IRH, TSO4, TNH4, TNO3, AH2O ) - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - RETURN - - END IF ! ratio .gt. 2.0 - - IF (LHOOK) CALL DR_HOOK('RPMARES',1,ZHOOK_HANDLE) - ENDSUBROUTINE RPMARES ! end RPMares -! /////////////////////////////////////////////////// -! /////////////////////////////////////////////////// - SUBROUTINE ACTCOF ( CAT, AN, GAMA, MOLNU, PHIMULT ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - -!----------------------------------------------------------------------- -! -! DESCRIPTION: -! -! This subroutine computes the activity coefficients of (2NH4+,SO4--), -! (NH4+,NO3-),(2H+,SO4--),(H+,NO3-),AND (H+,HSO4-) in aqueous -! multicomponent solution, using Bromley's model and Pitzer's method. -! -! REFERENCES: -! -! Bromley, L.A. (1973) Thermodynamic properties of strong electrolytes -! in aqueous solutions. AIChE J. 19, 313-320. -! -! Chan, C.K. R.C. Flagen, & J.H. Seinfeld (1992) Water Activities of -! NH4NO3 / (NH4)2SO4 solutions, Atmos. Environ. (26A): 1661-1673. -! -! Clegg, S.L. & P. Brimblecombe (1988) Equilibrium partial pressures -! of strong acids over saline solutions - I HNO3, -! Atmos. Environ. (22): 91-100 -! -! Clegg, S.L. & P. Brimblecombe (1990) Equilibrium partial pressures -! and mean activity and osmotic coefficients of 0-100% nitric acid -! as a function of temperature, J. Phys. Chem (94): 5369 - 5380 -! -! Pilinis, C. and J.H. Seinfeld (1987) Continued development of a -! general equilibrium model for inorganic multicomponent atmospheric -! aerosols. Atmos. Environ. 21(11), 2453-2466. -! - - -! -! ARGUMENT DESCRIPTION: -! -! CAT(1) : conc. of H+ (moles/kg) -! CAT(2) : conc. of NH4+ (moles/kg) -! AN(1) : conc. of SO4-- (moles/kg) -! AN(2) : conc. of NO3- (moles/kg) -! AN(3) : conc. of HSO4- (moles/kg) -! GAMA(2,1) : mean molal ionic activity coeff for (2NH4+,SO4--) -! GAMA(2,2) : " " " " " " (NH4+,NO3-) -! GAMA(2,3) : " " " " " " (NH4+. HSO4-) -! GAMA(1,1) : " " " " " " (2H+,SO4--) -! GAMA(1,2) : " " " " " " (H+,NO3-) -! GAMA(1,3) : " " " " " " (H+,HSO4-) -! MOLNU : the total number of moles of all ions. -! PHIMULT : the multicomponent paractical osmotic coefficient. -! -! REVISION HISTORY: -! Who When Detailed description of changes -! --------- -------- ------------------------------------------- -! S.Roselle 7/26/89 Copied parts of routine BROMLY, and began this -! new routine using a method described by Pilinis -! and Seinfeld 1987, Atmos. Envirn. 21 pp2453-2466. -! S.Roselle 7/30/97 Modified for use in Models-3 -! F.Binkowski 8/7/97 Modified coefficients BETA0, BETA1, CGAMA -! -!----------------------------------------------------------------------- - - IMPLICIT NONE - -!...........INCLUDES and their descriptions - -! INCLUDE SUBST_XSTAT ! M3EXIT status codes -!.................................................................... - - INTEGER XSTAT0 ! Normal, successful completion - PARAMETER (XSTAT0 = 0) - INTEGER XSTAT1 ! File I/O error - PARAMETER (XSTAT1 = 1) - INTEGER XSTAT2 ! Execution error - PARAMETER (XSTAT2 = 2) - INTEGER XSTAT3 ! Special error - PARAMETER (XSTAT3 = 3) - - CHARACTER*120 XMSG - -!...........PARAMETERS and their descriptions: - - INTEGER NCAT ! number of cations - PARAMETER ( NCAT = 2 ) - - INTEGER NAN ! number of anions - PARAMETER ( NAN = 3 ) - -!...........ARGUMENTS and their descriptions - - REAL MOLNU ! tot # moles of all ions - REAL PHIMULT ! multicomponent paractical osmotic coef - REAL CAT( NCAT ) ! cation conc in moles/kg (input) - REAL AN ( NAN ) ! anion conc in moles/kg (input) - REAL GAMA( NCAT, NAN ) ! mean molal ionic activity coefs - -!...........SCRATCH LOCAL VARIABLES and their descriptions: - - CHARACTER*16 PNAME ! driver program name - SAVE PNAME - - INTEGER IAN ! anion indX - INTEGER ICAT ! cation indX - - REAL FGAMA ! - REAL I ! ionic strength - REAL R ! - REAL S ! - REAL TA ! - REAL TB ! - REAL TC ! - REAL TEXPV ! - REAL TRM ! - REAL TWOI ! 2*ionic strength - REAL TWOSRI ! 2*sqrt of ionic strength - REAL ZBAR ! - REAL ZBAR2 ! - REAL ZOT1 ! - REAL SRI ! square root of ionic strength - REAL F2( NCAT ) ! - REAL F1( NAN ) ! - REAL ZP( NCAT ) ! absolute value of charges of cation - REAL ZM( NAN ) ! absolute value of charges of anion - REAL BGAMA ( NCAT, NAN ) ! - REAL X ( NCAT, NAN ) ! - REAL M ( NCAT, NAN ) ! molality of each electrolyte - REAL LGAMA0( NCAT, NAN ) ! binary activity coefficients - REAL Y ( NAN, NCAT ) ! - REAL BETA0 ( NCAT, NAN ) ! binary activity coefficient parameter - REAL BETA1 ( NCAT, NAN ) ! binary activity coefficient parameter - REAL CGAMA ( NCAT, NAN ) ! binary activity coefficient parameter - REAL V1 ( NCAT, NAN ) ! number of cations in electrolyte formula - REAL V2 ( NCAT, NAN ) ! number of anions in electrolyte formula - - DATA ZP / 1.0, 1.0 / - DATA ZM / 2.0, 1.0, 1.0 / - DATA XMSG / ' ' / - DATA PNAME / 'ACTCOF' / - -! *** Sources for the coefficients BETA0, BETA1, CGAMA: - -! *** (1,1);(1,3) - Clegg & Brimblecombe (1988) -! *** (2,3) - Pilinis & Seinfeld (1987), cgama different -! *** (1,2) - Clegg & Brimblecombe (1990) -! *** (2,1);(2,2) - Chan, Flagen & Seinfeld (1992) - -! *** now set the basic constants, BETA0, BETA1, CGAMA - - DATA BETA0(1,1) /2.98E-2/, BETA1(1,1) / 0.0/, & - & CGAMA(1,1) / 4.38E-2/ ! 2H+SO4- - - DATA BETA0(1,2) / 1.2556E-1/, BETA1(1,2) / 2.8778E-1/, & - & CGAMA(1,2) / -5.59E-3/ ! HNO3 - - DATA BETA0(1,3) / 2.0651E-1/, BETA1(1,3) / 5.556E-1/, & - & CGAMA(1,3) /0.0/ ! H+HSO4- - - DATA BETA0(2,1) /4.6465E-2/, BETA1(2,1) /-0.54196/, & - & CGAMA(2,1) /-1.2683E-3/ ! (NH4)2SO4 - - DATA BETA0(2,2) /-7.26224E-3/, BETA1(2,2) /-1.168858/, & - & CGAMA(2,2) /3.51217E-5/ ! NH4NO3 - - DATA BETA0(2,3) / 4.494E-2/, BETA1(2,3) / 2.3594E-1/, & - & CGAMA(2,3) /-2.962E-3/ ! NH4HSO4 - - DATA V1(1,1), V2(1,1) / 2.0, 1.0 / ! 2H+SO4- - DATA V1(2,1), V2(2,1) / 2.0, 1.0 / ! (NH4)2SO4 - DATA V1(1,2), V2(1,2) / 1.0, 1.0 / ! HNO3 - DATA V1(2,2), V2(2,2) / 1.0, 1.0 / ! NH4NO3 - DATA V1(1,3), V2(1,3) / 1.0, 1.0 / ! H+HSO4- - DATA V1(2,3), V2(2,3) / 1.0, 1.0 / ! NH4HSO4 - -!----------------------------------------------------------------------- -! begin body of subroutine ACTCOF - -!...compute ionic strength - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ACTCOF',0,ZHOOK_HANDLE) - I = 0.0 - - DO ICAT = 1, NCAT - I = I + CAT( ICAT ) * ZP( ICAT ) * ZP( ICAT ) - END DO - - DO IAN = 1, NAN - I = I + AN( IAN ) * ZM( IAN ) * ZM( IAN ) - END DO - - I = 0.5 * I - -!...check for problems in the ionic strength - - IF ( I .EQ. 0.0 ) THEN - - DO IAN = 1, NAN - DO ICAT = 1, NCAT - GAMA( ICAT, IAN ) = 0.0 - END DO - END DO - -! XMSG = 'Ionic strength is zero...returning zero activities' -! CALL M3WARN ( PNAME, 0, 0, XMSG ) - write(*,*) 'Ionic strength is zero...returning zero activities' - IF (LHOOK) CALL DR_HOOK('ACTCOF',1,ZHOOK_HANDLE) - RETURN - - ELSE IF ( I .LT. 0.0 ) THEN -! XMSG = 'Ionic strength below zero...negative concentrations' -! CALL M3EXIT ( PNAME, 0, 0, XMSG, XSTAT1 ) - STOP 'Ionic strength below zero...negative concentrations' - END IF - -!...compute some essential expressions - - SRI = SQRT( I ) - TWOSRI = 2.0 * SRI - TWOI = 2.0 * I - TEXPV = 1.0 - EXP( -TWOSRI ) * ( 1.0 + TWOSRI - TWOI ) - R = 1.0 + 0.75 * I - S = 1.0 + 1.5 * I - ZOT1 = 0.511 * SRI / ( 1.0 + SRI ) - -!...Compute binary activity coeffs - - FGAMA = -0.392 * ( ( SRI / ( 1.0 + 1.2 * SRI ) & - & + ( 2.0 / 1.2 ) * LOG( 1.0 + 1.2 * SRI ) ) ) - - DO ICAT = 1, NCAT - DO IAN = 1, NAN - - BGAMA( ICAT, IAN ) = 2.0 * BETA0( ICAT, IAN ) & - & + ( 2.0 * BETA1( ICAT, IAN ) / ( 4.0 * I ) ) & - & * TEXPV - -!...compute the molality of each electrolyte for given ionic strength - - M( ICAT, IAN ) = ( CAT( ICAT )**V1( ICAT, IAN ) & - & * AN( IAN )**V2( ICAT, IAN ) )**( 1.0 & - & / ( V1( ICAT, IAN ) + V2( ICAT, IAN ) ) ) - -!...calculate the binary activity coefficients - - LGAMA0( ICAT, IAN ) = ( ZP( ICAT ) * ZM( IAN ) * FGAMA & - & + M( ICAT, IAN ) & - & * ( 2.0 * V1( ICAT, IAN ) * V2( ICAT, IAN ) & - & / ( V1( ICAT, IAN ) + V2( ICAT, IAN ) ) & - & * BGAMA( ICAT, IAN ) ) & - & + M( ICAT, IAN ) * M( ICAT, IAN ) & - & * ( 2.0 * ( V1( ICAT, IAN ) & - & * V2( ICAT, IAN ) )**1.5 & - & / ( V1( ICAT, IAN ) + V2( ICAT, IAN ) ) & - & * CGAMA( ICAT, IAN ) ) ) / 2.302585093 - - END DO - END DO - -!...prepare variables for computing the multicomponent activity coeffs - - DO IAN = 1, NAN - DO ICAT = 1, NCAT - ZBAR = ( ZP( ICAT ) + ZM( IAN ) ) * 0.5 - ZBAR2 = ZBAR * ZBAR - Y( IAN, ICAT ) = ZBAR2 * AN( IAN ) / I - X( ICAT, IAN ) = ZBAR2 * CAT( ICAT ) / I - END DO - END DO - - DO IAN = 1, NAN - F1( IAN ) = 0.0 - DO ICAT = 1, NCAT - F1( IAN ) = F1( IAN ) + X( ICAT, IAN ) * LGAMA0( ICAT, IAN ) & - & + ZOT1 * ZP( ICAT ) * ZM( IAN ) * X( ICAT, IAN ) - END DO - END DO - - DO ICAT = 1, NCAT - F2( ICAT ) = 0.0 - DO IAN = 1, NAN - F2( ICAT ) = F2( ICAT ) + Y( IAN, ICAT ) * LGAMA0( ICAT, IAN )& - & + ZOT1 * ZP( ICAT ) * ZM( IAN ) * Y( IAN, ICAT ) - END DO - END DO - -!...now calculate the multicomponent activity coefficients - - DO IAN = 1, NAN - DO ICAT = 1, NCAT - - TA = -ZOT1 * ZP( ICAT ) * ZM( IAN ) - TB = ZP( ICAT ) * ZM( IAN ) / ( ZP( ICAT ) + ZM( IAN ) ) - TC = ( F2( ICAT ) / ZP( ICAT ) + F1( IAN ) / ZM( IAN ) ) - TRM = TA + TB * TC - - IF ( TRM .GT. 30.0 ) THEN - GAMA( ICAT, IAN ) = 1.0E+30 -! XMSG = 'Multicomponent activity coefficient is extremely large' -! CALL M3WARN ( PNAME, 0, 0, XMSG ) - STOP 'Multicomponent activity coefficient is extremely large' - ELSE - GAMA( ICAT, IAN ) = 10.0**TRM - END IF - - END DO - END DO - - IF (LHOOK) CALL DR_HOOK('ACTCOF',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE ACTCOF ! actcof - -! /////////////////////////////////// - - -!------------------------------------------------------------------ -! subroutine to find the roots of a cubic equation / 3rd order polynomial -! formulae can be found in numer. recip. on page 145 -! kiran developed this version on 25/4/1990 -! dr. francis binkowski modified the routine on 6/24/91, 8/7/97 -! *** -!234567 - subroutine cubic(a2,a1,a0,nr,crutes) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - implicit none - integer nr - real a2,a1,a0,crutes(3) - real*8 qq,rr,a2sq,theta, sqrt3, one3rd - real*8 dum1,dum2,part1,part2,part3,rrsq,phi,yy1,yy2,yy3 - real*8 costh, sinth - data sqrt3/1.732050808/, one3rd/0.333333333/ - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CUBIC',0,ZHOOK_HANDLE) - a2sq=a2*a2 - qq=(a2sq-3.*a1)/9. - rr=( a2*(2.*a2sq - 9.*a1) + 27.*a0 )/54. -! CASE 1 THREE REAL ROOTS or CASE 2 ONLY ONE REAL ROOT - dum1=qq*qq*qq - rrsq=rr*rr - dum2=dum1 - rrsq - if(dum2.ge.0.) then -! NOW WE HAVE THREE REAL ROOTS - phi=sqrt(dum1) - if(abs(phi).lt.1.e-20) then -! write(10,*) ' cubic phi small, phi = ',phi - crutes(1) = 0.0 - crutes(2) = 0.0 - crutes(3) = 0.0 - nr = 0 - stop - end if - theta=acos(rr/phi)/3.0 - costh = cos(theta) - sinth = sin(theta) -! *** use trig identities to simplify the expressions -! *** binkowski's modification - part1=sqrt(qq) - yy1=part1*costh - yy2=yy1-a2/3.0 - yy3=sqrt3*part1*sinth - crutes(3) = -2.0*yy1 - a2/3.0 - crutes(2) = yy2 + yy3 - crutes(1) = yy2 - yy3 -! *** SET NEGATIVE ROOTS TO A LARGE POSITIVE VALUE - if(crutes(1) .lt. 0.0) crutes(1) = 1.0e9 - if(crutes(2) .lt. 0.0) crutes(2) =1.0e9 - if(crutes(3) .lt. 0.0) crutes(3) = 1.0e9 -! *** put smallest positive root in crutes(1) - crutes(1)=min( crutes(1),crutes(2),crutes(3)) - nr=3 - else ! dum IS NEGATIVE -! NOW HERE WE HAVE ONLY ONE REAL ROOT - part1=sqrt(rrsq-dum1) - part2=abs(rr) - part3=(part1+part2)**one3rd - crutes(1) = & - & -sign(1._8,rr) * ( part3 + (qq/part3) ) - a2/3. - crutes(2)=0. - crutes(3)=0. - nr=1 - end if - IF (LHOOK) CALL DR_HOOK('CUBIC',1,ZHOOK_HANDLE) - return - endsubroutine cubic ! cubic -! ////////////////////////// - - -! -! -!############################################################################## - subroutine awater(irhx,mso4,mnh4,mno3, wh2o) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! NOTE!!! wh2o is returned in micrograms / cubic meter -! mso4,mnh4,mno3 are in microMOLES / cubic meter -! -! This version uses polynomials rather than tables, and uses empirical -! polynomials for the mass fraction of solute (mfs) as a function of water activity -! where: -! -! mfs = ms / ( ms + mw) -! ms is the mass of solute -! mw is the mass of water. -! -! Define y = mw/ ms -! -! then mfs = 1 / (1 + y) -! -! y can then be obtained from the values of mfs as -! -! y = (1 - mfs) / mfs -! -! -! the aerosol is assumed to be in a metastable state if the rh is -! is below the rh of deliquescence, but above the rh of crystallization. -! -! ZSR interpolation is used for sulfates with x ( the molar ratio of -! ammonium to sulfate in eh range 0 <= x <= 2, by sections. -! section 1: 0 <= x < 1 -! section 2: 1 <= x < 1.5 -! section 3: 1.5 <= x < 2.0 -! section 4: 2 <= x -! In sections 1 through 3, only the sulfates can affect the amount of water -! on the particles. -! In section 4, we have fully neutralized sulfate, and extra ammonium which -! allows more nitrate to be present. Thus, the ammount of water is calculated -! using ZSR for ammonium sulfate and ammonium nitrate. Crystallization is -! assumed to occur in sections 2,3,and 4. See detailed discussion below. -! -! - -! definitions: -! mso4, mnh4, and mno3 are the number of micromoles/(cubic meter of air) -! for sulfate, ammonium, and nitrate respectively -! irhx is the relative humidity (%) -! wh2o is the returned water amount in micrograms / cubic meter of air -! x is the molar ratio of ammonium to sulfate -! y0,y1,y1.5, y2 are the water contents in mass of water/mass of solute -! for pure aqueous solutions with x equal 1, 1.5, and 2 respectively. -! y3 is the value of the mass ratio of water to solute for -! a pure ammonium nitrate solution. -! -! -!oded by Dr. Francis S. Binkowski, 4/8/96. -! - implicit none - integer irhx, irh - real mso4,mnh4,mno3 - real tso4,tnh4,tno3, wh2o, x - real aw, awc - real poly4, poly6 - real mfs0,mfs1,mfs15, mfs2 - real c0(4), c1(4), c15(4), c2(4) - real y, y0,y1,y15,y2,y3, y40, y140, y1540, yc - real kSO4(6),kNO3(6), mfsSO4,mfsNO3 - -! -! - real mwso4, mwnh4, mwno3, mw2, mwano3 - -! *** molecular weights: - parameter( & - & mwso4 = 96.0636, & - & mwnh4 = 18.0985, & - & mwno3 = 62.0649, & - & mw2 = mwso4 + 2.0 * mwnh4, & - & mwano3 = mwno3 + mwnh4 ) - -! The polynomials use data for aw as a function of mfs from Tang and -! Munkelwitz, JGR 99: 18801-18808, 1994. -! The polynomials were fit to Tang's values of water activity as a -! function of mfs. - -! *** coefficients of polynomials fit to Tang and Munkelwitz data -! now give mfs as a function of water activity. - - data c1/0.9995178, -0.7952896, 0.99683673, -1.143874/ - data c15/1.697092,-4.045936, 5.833688, -3.463783/ - data c2/2.085067, -6.024139, 8.967967, -5.002934/ - -! *** the following coefficients are a fit to the data in Table 1 of -! Nair & Vohra, J. Aerosol Sci., 6: 265-271, 1975 -! data c0/0.8258941, -1.899205, 3.296905, -2.214749 / -! *** New data fit to data from -! Nair and Vohra J. Aerosol Sci., 6: 265-271, 1975 -! Giaque et al. J.Am. Chem. Soc., 82: 62-70, 1960 -! Zeleznik J. Phys. Chem. Ref. Data, 20: 157-1200 - data c0/ 0.798079, -1.574367, 2.536686, -1.735297 / - - -! *** polynomials for ammonium nitrate and ammonium sulfate are from: -! Chan et al.1992, Atmospheric Environment (26A): 1661-1673. - - data kNO3/0.2906, 6.83665, -26.9093, & - & 46.6983, -38.803, 11.8837/ - data kSO4/ 2.27515, -11.147, 36.3369, & - & -64.2134, 56.8341, -20.0953/ - - -! *** check range of per cent relative humidity - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('AWATER',0,ZHOOK_HANDLE) - irh = irhx - irh = max(1,irh) - irh = min(irh,100) - aw = float(irh) / 100.0 ! water activity = fractional relative humidity - tso4 = max( mso4 , 0.0 ) - tnh4 = max( mnh4 , 0.0 ) - tno3 = max( mno3 , 0.0 ) - x = 0.0 -! *** if there is non-zero sulfate calculate the molar ratio - if (tso4 .gt. 0.0 ) then - x = tnh4 / tso4 - else -! *** otherwise check for non-zero nitrate and ammonium - if ( tno3 .gt. 0.0 .and. tnh4 .gt. 0.0 ) x = 10.0 - end if -! -! - -! *** begin screen on x for calculating wh2o - if ( x .lt. 1.0 ) then -! - mfs0 = poly4(c0,aw) - mfs1 = poly4(c1,aw) - y0 = (1.0 - mfs0 ) / mfs0 - y1 = (1.0 - mfs1 ) / mfs1 - y = (1.0 - x) * y0 + x * y1 - -! - else if ( x .lt. 1.5) then -! - if ( irh .ge. 40 ) then - mfs1 = poly4(c1,aw) - mfs15 = poly4(c15,aw) - y1 = (1.0 - mfs1 ) / mfs1 - y15 = (1.0 - mfs15) / mfs15 - y = 2.0 * ( y1 * (1.5 - x) + y15 *( x - 1.0) ) - else -! *** set up for crystalization - -! *** Crystallization is done as follows: -! For 1.5 <= x, crystallization is assumed to occur at rh = 0.4 -! For x <= 1.0, crystallization is assumed to occur at an rh < 0.01, -! and since the code does not allow ar rh < 0.01, crystallization -! is assumed not to occur in this range. -! For 1.0 <= x <= 1.5 the crystallization curve is a straignt line -! from a value of y15 at rh = 0.4 to a value of zero at y1. From -! point B to point A in the diagram. -! The algorithm does a double interpolation to calculate the amount of -! water. -! -! y1(0.40) y15(0.40) -! + + Point B -! -! -! -! -! +--------------------+ -! x=1 x=1.5 -! Point A -! -! - - awc = 0.80 * (x - 1.0) ! rh along the crystallization curve. - y = 0.0 - if ( aw .ge. awc ) then ! interpolate using crystalization curve - mfs1 = poly4(c1,0.40) - mfs15 = poly4(c15,0.40) - y140 = (1.0 - mfs1 ) / mfs1 - y1540 = (1.0 - mfs15) / mfs15 - y40 = 2.0 * ( y140 * (1.5 - x) + y1540 *( x - 1.0) ) - yc = 2.0 * y1540 * (x -1.0) ! y along crystallization curve - y = y40 - (y40 - yc) * (0.40-aw) / (0.40 - awc) - end if ! end of checking for aw - end if ! end of checking on irh - - else if( x .lt. 1.9999) then -! - y= 0.0 - if( irh .ge. 40) then - mfs15 = poly4(c15,aw) - mfs2 = poly4(c2,aw) - y15 = (1.0 - mfs15) / mfs15 - y2 = (1.0 - mfs2) / mfs2 - y = 2.0 * (y15 * (2.0 - x) + y2 * (x - 1.5) ) - end if ! end of check for crystallization -! -! -! -! - else ! 1.9999 < x - -! regime where ammonium sulfate and ammonium nitrate are in solution. -! -! *** following cf&s for both ammonium sulfate and ammonium nitrate -! *** check for crystallization here. their data indicate a 40% value -! is appropriate. - y2 = 0.0 - y3 = 0.0 - if ( irh .ge. 40) then - mfsSO4 = poly6(kSO4,aw) - mfsNO3 = poly6(kNO3,aw) - y2 = (1.0 - mfsSO4) / mfsSO4 - y3 = (1.0 - mfsNO3) / mfsNO3 - - end if -! - end if ! end of checking on x -! -! *** now set up output of wh2o - -! wh2o units are micrograms (liquid water) / cubic meter of air -! - if ( x .lt. 1.9999) then - - wh2o = y * (tso4 * mwso4 + mwnh4 * tnh4) - - else - -! *** this is the case that all the sulfate is ammonium sulfate -! and the excess ammonium forms ammonum nitrate - - wh2o = y2 * tso4 * mw2 + y3 * tno3 * mwano3 - - end if -! - IF (LHOOK) CALL DR_HOOK('AWATER',1,ZHOOK_HANDLE) - return - endsubroutine awater - -!23456789012345678901234567890123456789012345678901234567890123456789012 - - function poly4(A,X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - real poly4 - real A(4), X - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('POLY4',0,ZHOOK_HANDLE) - poly4 = A(1) + X * ( A(2) + X * ( A(3) + X * ( A(4) ))) - IF (LHOOK) CALL DR_HOOK('POLY4',1,ZHOOK_HANDLE) - return - endfunction poly4 - - function poly6(A,X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - real poly6 - real A(6), X - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('POLY6',0,ZHOOK_HANDLE) - poly6 = A(1) + X * ( A(2) + X * ( A(3) + X * ( A(4) + & - & X * ( A(5) + X * (A(6) ))))) - IF (LHOOK) CALL DR_HOOK('POLY6',1,ZHOOK_HANDLE) - return - endfunction poly6 ! awater -! ////////////////////////////////////////////////////////////////// diff --git a/src/arome/chem/internals/ch_aer_coag.F90 b/src/arome/chem/internals/ch_aer_coag.F90 deleted file mode 100644 index db1ecae3f74af7b92b0b8e0a2ce742de91ab112e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_coag.F90 +++ /dev/null @@ -1,396 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_COAG(PM, PSIG0, PRG0, PN0,PDMINTRA,PDMINTER,PTGAS,PMU,& - PLAMBDA,PRHOP0) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################# -!! -!! PURPOSE -!! ------- -!! -!! compute the terms due to Brownian, turbulent and Gravitational -!! coagulation: -!! a set of arrays are used to evaluate the double integral -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!***************************************************************** -! * Arrays of numerical evaluation of coagulation terms -! in the free-molecule regime (computed from the ESMAP code) -! -! ZINTRA - Intamodal coagulation, mode i,j 0th and 6th Moment -! -! ZINTER0I - Intermodal coagulation, mode i, 0th Moment -! ZINTER3I - Intermodal coagulation, mode i, 3rd Moment -! ZINTER6I - Intermodal coagulation, mode i, 6th Moment -! ZINTER6J - Intermodal coagulation, mode j, 6th Moment -! -! * Variables used during the coefficients evaluation -! ZXI(i) - Variables values at the array nodes -! ZXINT(i) - Variables values where the interpolation -! is to be made -! -! intramodal coagulation -! -! ZXINTRAMIN - Minimal value of ln(sigma) -! ZXINTRAMAX - Maximal value of ln(sigma) -! ZDXINTRA - Step of ln(sigma) in the array -! -! intermodal coagulation -! -! ZXINTERMIN(i) - Minimal value of the variable i -! ZXINTERMAX(i) - Maximal value of the variable i -! ZDXINTER(i) - Step of the variable i in the arrays -! -! i=1 - ln(sigmaj) -! i=2 - ln(sigmai) -! i=3 - ln((ZR=Rgj/Rgi)**2) -! -!*************************************************************** -!! -!! EXTERNAL -!! ------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -USE MODD_CH_AEROSOL -!! -IMPLICIT NONE -! -!* 0.1 Declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM,PRHOP0 -REAL, DIMENSION(:), INTENT(INOUT) :: PLAMBDA, PMU -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTRA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTER -REAL, DIMENSION(:),INTENT(IN) :: PTGAS -REAL, DIMENSION(:,:), INTENT(IN) :: PSIG0, PRG0, PN0 -! -!* 0.2 Declarations of local variables -! -INTEGER :: JI,JJ -! -REAL :: ZTURBDS ! Rate of dissipation of kinetic energy per unit mass (m2/s3) -! -REAL, DIMENSION(SIZE(PM,1)) :: ZKFM,ZKNC -!REAL, DIMENSION(SIZE(PM,1)) :: ZKTURB,ZKGRAV,ZR3,ZRM4 -REAL, DIMENSION(SIZE(PM,1)) :: ZR,ZR2,ZR4 -REAL, DIMENSION(SIZE(PM,1)) :: ZRM,ZRM2,ZRM3 -REAL, DIMENSION(SIZE(PM,1)) :: ZKNG -REAL, DIMENSION(SIZE(PM,1)) :: ZAI,ZKNGI,ZAJ,ZKNGJ -REAL, DIMENSION(SIZE(PM,1)) :: ZINTRA0NC,ZINTRA0FM,ZINTRA0 -REAL, DIMENSION(SIZE(PM,1)) :: ZINTRA3NC,ZINTRA3FM,ZINTRA3 -REAL, DIMENSION(SIZE(PM,1)) :: ZINTRA6NC,ZINTRA6FM,ZINTRA6 -REAL, DIMENSION(SIZE(PM,1)) :: ZINTERNC,ZINTERFM,ZINTER -REAL, DIMENSION(SIZE(PM,1)) :: ZAPPROX -! -REAL, DIMENSION(SIZE(PM,1)) :: ZA,ZB,ZC,ZD -REAL, DIMENSION(SIZE(PM,1)) :: ZRGJ, ZRGI, ZRG -! -REAL, DIMENSION(SIZE(PM,1)) :: ZERF0,ZPHI0,ZXi,ZSOL -REAL, DIMENSION(SIZE(PM,1)) :: ZERF3,ZPHI3 -REAL, DIMENSION(SIZE(PM,1)) :: ZERF6,ZPHI6 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZINVSIG,ZLNDG -! -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG01,ZESG04,ZESG05,ZESG08,ZESG09 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG12,ZESG16 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG20,ZESG24,ZESG25,ZESG28 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG32,ZESG36 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG49 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG52 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG64 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG81,ZESG85 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG100,ZESG121,ZESG144,ZESG169,ZESG196 -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZESG256 -REAL, DIMENSION(SIZE(PM,1)) :: ZRB0,ZRB6 -REAL, DIMENSION(SIZE(PM,1)) :: ZRES -!-------------------------------------------------------------------------------! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_COAG',0,ZHOOK_HANDLE) -ZTURBDS=0.001 -ZKNC(:)=2.*XBOLTZ*PTGAS(:)/(3.*PMU(:)) -! -PDMINTRA(:,:)=0. -PDMINTER(:,:)=0. -! -!**************************************************************** -! Initialisation des variables utilisees dans le calcul des -! coefficients de coagulation -!**************************************************************** - -ZESG01(:,:) = exp(0.125*PSIG0(:,1:JPMODE)**2) -ZESG04(:,:) = ZESG01(:,:) ** 4 -ZESG05(:,:) = ZESG04(:,:) * ZESG01(:,:) -ZESG08(:,:) = ZESG04(:,:) * ZESG04(:,:) -ZESG09(:,:) = ZESG04(:,:) * ZESG05(:,:) -ZESG12(:,:) = ZESG04(:,:) * ZESG04(:,:) * ZESG04(:,:) -ZESG16(:,:) = ZESG08(:,:) * ZESG08(:,:) -ZESG20(:,:) = ZESG16(:,:) * ZESG04(:,:) -ZESG24(:,:) = ZESG12(:,:) * ZESG12(:,:) -ZESG25(:,:) = ZESG16(:,:) * ZESG09(:,:) -ZESG28(:,:) = ZESG20(:,:) * ZESG08(:,:) -ZESG32(:,:) = ZESG16(:,:) * ZESG16(:,:) -ZESG36(:,:) = ZESG16(:,:) * ZESG20(:,:) -ZESG49(:,:) = ZESG25(:,:) * ZESG20(:,:) * ZESG04(:,:) -ZESG52(:,:) = ZESG16(:,:) * ZESG36(:,:) -ZESG64(:,:) = ZESG32(:,:) * ZESG32(:,:) -ZESG81(:,:) = ZESG49(:,:) * ZESG32(:,:) -ZESG85(:,:) = ZESG64(:,:) * ZESG20(:,:) * ZESG01(:,:) -ZESG100(:,:) = ZESG36(:,:) * ZESG64(:,:) -ZESG121(:,:) = ZESG85(:,:) * ZESG36(:,:) -ZESG144(:,:) = ZESG100(:,:) * ZESG36(:,:) * ZESG08(:,:) -ZESG169(:,:) = ZESG144(:,:) * ZESG25(:,:) -ZESG196(:,:) = ZESG144(:,:) * ZESG52(:,:) -ZESG256(:,:) = ZESG144(:,:) * ZESG100(:,:) * ZESG12(:,:) - -!*************************************************************** -! Transfert de moments entre les modes i et j -!*************************************************************** - -ZINVSIG(:,:)=1./PSIG0(:,1:JPMODE)**2 -ZLNDG(:,:)=log(2.*PRG0(:,1:JPMODE)) - -ZA(:)=0.5*(ZINVSIG(:,1)-ZINVSIG(:,2)) -ZD(:) = 0. -ZXi(:)= 0. - -WHERE (ABS(ZA(:)) > 1E-4) - ZB(:)=ZINVSIG(:,2)*ZLNDG(:,2)-ZINVSIG(:,1)*ZLNDG(:,1) - ZC(:)=0.5*(ZINVSIG(:,1)*ZLNDG(:,1)**2-ZINVSIG(:,2)*ZLNDG(:,2)**2) - & - &log((PN0(:,1)*PSIG0(:,2))/(PN0(:,2)*PSIG0(:,1))) - - ZD(:)=ZB(:)**2-4.*ZA(:)*ZC(:) - - ZSOL(:)=(-ZB(:)+sqrt(ABS(ZD(:))))/(2.*ZA(:)) - WHERE (ZSOL(:) < 5.E+2) - ZSOL(:)=exp(ZSOL(:))/2. - ZXi(:)=log(ZSOL(:)/PRG0(:,1))/(sqrt(2.)*PSIG0(:,1)) - ENDWHERE -ENDWHERE - -!********************************************************************* -! calculate the intramodal moment coefficients (log-normal model) -!********************************************************************* - -do JI=1,JPMODE - - ZKFM(:)=sqrt(3.*XBOLTZ*PTGAS(:)/PRHOP0(:,JI))*1.e-3 - !ZKTURB(:)=sqrt(XPI*ZTURBDS*PMU(:)/(120.*PRHOP0(:,JI)))*1.e-18 - !ZKGRAV(:)=1.5/4.*0.544*XPI*PRHOP0(:,JI)/PMU(:)*1.e-24 -!************************************************************* -! calculate ZVG,ln2(sigma) and sigma -! (log-normal model) -!************************************************************* - - ZRG(:)=PRG0(:,JI) - ZKNG(:)=PLAMBDA(:)/ZRG(:) - ZAI(:)=1.392*ZKNG(:)**0.0783 - -!*********************** -! Brownian Coagulation -!*********************** - - ZRB0(:)=0.8 - ZRB6(:)=ZRB0 - - ZINTRA0FM(:)=ZKFM(:)*ZRB0(:)*sqrt(2.*ZRG(:))*(ZESG01(:,JI)+ZESG25(:,JI)+2.*ZESG05(:,JI)) - ZINTRA3FM(:)=ZKFM(:)*ZRB0(:)*sqrt(ZRG(:))**7*sqrt(2.)*(ZESG49(:,JI)+ZESG36(:,JI)*ZESG01(:,JI)+& - &2.*ZESG25(:,JI)*ZESG04(:,JI)+ZESG09(:,JI)*ZESG16(:,JI)+ZESG100(:,JI)*ZESG09(:,JI)+& - &2.*ZESG64(:,JI)*ZESG01(:,JI)) - ZINTRA6FM(:)=ZKFM(:)*ZRB6(:)*sqrt(ZRG(:))**13*sqrt(2.)*ZESG85(:,JI)*& - (1.+2.*ZESG04(:,JI)+ZESG24(:,JI)) - ZINTRA0NC(:)=ZKNC(:)*(1.+ZESG08(:,JI)+ZAI(:)*ZKNG(:)*(ZESG20(:,JI)+ZESG04(:,JI))) - ZINTRA3NC(:)=ZKNC(:)*ZRG(:)**3*(2.*ZESG36(:,JI)+ZAI(:)*ZKNG(:)*(ZESG16(:,JI)+ZESG04(:,JI)*ZESG04(:,JI)+& - &ZESG36(:,JI)*ZESG04(:,JI)+ZESG64(:,JI)*ZESG16(:,JI))+ZESG16(:,JI)*ZESG04(:,JI)+& - &ZESG64(:,JI)*ZESG04(:,JI)) - ZINTRA6NC(:)=2.*ZKNC(:)*(ZRG(:))**6*ZESG52(:,JI)*(ZESG20(:,JI)+ZESG28(:,JI)+ZAI(:)*ZKNG(:)*(1.+ZESG16(:,JI))) - ZINTRA0(:)=ZINTRA0FM(:)*(ZINTRA0NC(:)/(ZINTRA0FM(:)+ZINTRA0NC(:))) - ZINTRA3(:)=ZINTRA3FM(:)*(ZINTRA3NC(:)/(ZINTRA3FM(:)+ZINTRA3NC(:))) - ZINTRA6(:)=ZINTRA6FM(:)*(ZINTRA6NC(:)/(ZINTRA6FM(:)+ZINTRA6NC(:))) - - PDMINTRA(:,NM0(JI))=ZINTRA0(:) - PDMINTRA(:,NM3(JI))=ZINTRA3(:) - PDMINTRA(:,NM6(JI))=ZINTRA6(:) - !print*,'PDMINTRA(:,NM0(',JI,') =',MINVAL(PDMINTRA(:,NM0(JI))), MAXVAL(PDMINTRA(:,NM0(JI))) - !print*,'PDMINTRA(:,NM3(',JI,') =',MINVAL(PDMINTRA(:,NM3(JI))), MAXVAL(PDMINTRA(:,NM3(JI))) - !print*,'PDMINTRA(:,NM6(',JI,') =',MINVAL(PDMINTRA(:,NM6(JI))), MAXVAL(PDMINTRA(:,NM6(JI))) - -enddo -!print*,'==============================' -!print*,'==============================' - -WHERE (ZD(:) > 0. .AND. ZXi(:) > (6.*PSIG0(:,1)/sqrt(2.))) - -! transfert du moment d'ordre 0 (nombre) -!************************************** - - ZERF0(:)=sqrt(1.-exp(-4.*(ZXi(:))**2/XPI)) - ZPHI0(:)=0.5*(1.+ZERF0(:)) - -! transfert du moment d'ordre 3 (masse) -!************************************** - - ZERF3(:)=sqrt(1.-exp(-4.*(ZXi(:)-3.*PSIG0(:,1)/sqrt(2.))**2/XPI)) - ZPHI3(:)=0.5*(1.+ZERF3(:)) - -! transfert du moment d'ordre 6 (dispersion) -!************************************** - - ZERF6(:)=sqrt(1.-exp(-4.*(ZXi(:)-6.*PSIG0(:,1)/sqrt(2.))**2/XPI)) - ZPHI6(:)=0.5*(1.+ZERF6(:)) - - PDMINTRA(:,NM0(2))=PDMINTRA(:,NM0(2))-(1.-ZPHI0(:)**2)*PDMINTRA(:,NM0(1))*(PM(:,NM0(1))/PM(:,NM0(2)))**2 - PDMINTRA(:,NM0(1))=(2.-ZPHI0(:)**2)*PDMINTRA(:,NM0(1)) - - PDMINTRA(:,NM3(2))=PDMINTRA(:,NM3(1))*(1.-ZPHI0(:)*ZPHI3(:))*PM(:,NM0(1))**2 - PDMINTRA(:,NM3(1))=PDMINTRA(:,NM3(1))*(ZPHI0(:)*ZPHI3(:)-1.)*PM(:,NM0(1))**2 - - ZKFM(:)=sqrt(3.*XBOLTZ*PTGAS(:)/PRHOP0(:,1))*1.e-3 - ZRG(:)=PRG0(:,1) - ZKNG(:)=PLAMBDA(:)/ZRG(:) - ZAI(:)=1.392*ZKNG(:)**0.0783 - - ZINTRA6FM(:)=ZKFM(:)*sqrt(2.)*sqrt(ZRG(:))**13*(ZESG169(:,1)+ZESG144(:,1)*ZESG01(:,1)+& - 2.*ZESG121(:,1)*ZESG04(:,1)+ZESG81(:,1)*ZESG16(:,1)+& - ZESG256(:,1)*ZESG09(:,1)+ZESG196(:,1)*ZESG01(:,1)) - - ZINTRA6NC(:)=ZKNC(:)*(ZRG(:))**6*(2.*ZESG144(:,1)+ZAI(:)*ZKNG(:)*(ZESG100(:,1)+& - ZESG64(:,1)*ZESG04(:,1))+ZAI(:)*ZKNG(:)*(ZESG144(:,1)*ZESG04(:,1)+& - ZESG196(:,1)*ZESG16(:,1))+ZESG100(:,1)*ZESG04(:,1)+& - ZESG196(:,1)*ZESG04(:,1)) - - ZINTRA6(:)=ZINTRA6FM(:)*(ZINTRA6NC(:)/(ZINTRA6FM(:)+ZINTRA6NC(:))) - - PDMINTRA(:,NM6(2))=PDMINTRA(:,NM6(2))+(PDMINTRA(:,NM6(1))*(1.-ZPHI3(:)**2)+ZINTRA6(:)*(1.-ZPHI0(:)*ZPHI6(:)))& - &*(PM(:,NM0(1))/PM(:,NM0(2)))**2 - - PDMINTRA(:,NM6(1))=PDMINTRA(:,NM6(1))*(ZPHI3(:)**2)+ZINTRA6(:)*(ZPHI0(:)*ZPHI6(:)-1.) - -ELSEWHERE - - PDMINTRA(:,NM3(1))=0. - PDMINTRA(:,NM3(2))=0. - - -ENDWHERE - -do JI=1,JPMODE -!print*,'2.-ZPHI0(:)**2 =',MINVAL(2.-ZPHI0(:)**2), MAXVAL(2.-ZPHI0(:)**2) -! print*,'apres corr PDMINTRA(:,NM0(',JI,') =',MINVAL(PDMINTRA(:,NM0(JI))), MAXVAL(PDMINTRA(:,NM0(JI))) -! print*,'apres corr PDMINTRA(:,NM3(',JI,') =',MINVAL(PDMINTRA(:,NM3(JI))), MAXVAL(PDMINTRA(:,NM3(JI))) -! print*,'apres corr PDMINTRA(:,NM6(',JI,') =',MINVAL(PDMINTRA(:,NM6(JI))), MAXVAL(PDMINTRA(:,NM6(JI))) - enddo - -!********************************************************************* -! calculate the intermodal moment coefficients (log-normal model) -!********************************************************************* - -do JI=1,(JPMODE-1) - do JJ=(JI+1),JPMODE - - ZRGI(:)=PRG0(:,JI) - ZKNGI(:)=PLAMBDA(:)/ZRGI(:) - ZAI(:)=1.392*ZKNGI(:)**0.0783 - - ZRGJ(:)=PRG0(:,JJ) - ZKNGJ(:)=PLAMBDA(:)/ZRGJ(:) - ZAJ(:)=1.392*ZKNGJ(:)**0.0783 - - ZR(:)=sqrt(ZRGJ(:)/ZRGI(:)) - ZR2(:)=ZR(:)*ZR(:) - !ZR3(:)=ZR(:)*ZR2(:) - ZR4(:)=ZR2(:)*ZR2(:) - ZRM(:)=1./ZR(:) - ZRM2(:)=ZRM(:)*ZRM(:) - ZRM3(:)=ZRM(:)*ZRM2(:) - !ZRM4(:)=ZRM2(:)*ZRM2(:) - -!********************** -! Brownian Coagulation -!********************** - - ZRES(:)=0.9 - - ZAPPROX(:)=sqrt(2.*ZRGI(:))*(ZESG01(:,JI)+ZR(:)*ZESG01(:,JJ)+2.*ZR2(:)*ZESG01(:,JI)*ZESG04(:,JJ)& - +ZR4(:)*ZESG09(:,JI)*ZESG16(:,JJ)+ZRM3(:)*ZESG16(:,JI)*ZESG09(:,JJ)+& - 2.*ZRM(:)*ZESG04(:,JI)*ZESG01(:,JJ)) - - ZINTERFM(:)=ZKFM(:)*ZRES(:)*ZAPPROX(:) - - ZAPPROX(:)=2.+ZAI(:)*ZKNGI(:)*(ZESG04(:,JI)+ZR2(:)*ZESG16(:,JI)*ZESG04(:,JJ))+& - ZAJ(:)*ZKNGJ(:)*(ZESG04(:,JJ)+ZRM2(:)*ZESG16(:,JJ)*ZESG04(:,JI))+& - (ZR2(:)+ZRM2(:))*(ZESG04(:,JI)*ZESG04(:,JJ)) - - ZINTERNC(:)=ZKNC(:)*ZAPPROX(:) - - ZINTER(:)=ZINTERNC(:)*(ZINTERFM(:)/(ZINTERNC(:)+ZINTERFM(:))) - - PDMINTER(:,NM0(JI))=PM(:,NM0(JJ))*ZINTER(:) - PDMINTER(:,NM0(JJ))=-PM(:,NM0(JJ))*ZINTER(:) - - ZAPPROX(:)=sqrt(2.)*sqrt(ZRGI(:))**7*(ZESG49(:,JI)+ZR(:)*ZESG36(:,JI)*ZESG01(:,JJ)+2.*ZR2(:)*& - ZESG25(:,JI)*ZESG04(:,JJ)+ZR4(:)*ZESG09(:,JI)*ZESG16(:,JJ)+ZRM3(:)*& - ZESG100(:,JI)*ZESG09(:,JJ)+2.*ZRM(:)*ZESG64(:,JI)*ZESG01(:,JJ)) - - ZINTERFM(:)=ZKFM(:)*ZRES(:)*ZAPPROX(:) - - ZAPPROX(:)=(2.*ZESG36(:,JI)+ZAI(:)*ZKNGI(:)*(ZESG16(:,JI)+ZR2(:)*ZESG04(:,JI)*ZESG04(:,JJ))+& - ZAJ(:)*ZKNGJ(:)*(ZESG36(:,JI)*ZESG04(:,JJ)+ZRM2(:)*ZESG16(:,JJ)*ZESG64(:,JI))+& - ZR2(:)*ZESG16(:,JI)*ZESG04(:,JJ)+ZRM2(:)*ZESG64(:,JI)*ZESG04(:,JJ))*(ZRGI(:))**3 - - ZINTERNC(:)=ZKNC(:)*ZAPPROX(:) - - ZINTER(:)=ZINTERNC(:)*(ZINTERFM(:)/(ZINTERNC(:)+ZINTERFM(:))) - - PDMINTER(:,NM3(JI))=-PM(:,NM0(JI))*PM(:,NM0(JJ))*ZINTER(:) - PDMINTER(:,NM3(JJ))=PM(:,NM0(JI))*PM(:,NM0(JJ))*ZINTER(:) - - ZAPPROX(:)=sqrt(2.)*sqrt(ZRGI(:))**13*(ZESG169(:,JI)+ZR(:)*ZESG144(:,JI)*ZESG01(:,JJ)+& - 2.*ZR2(:)*ZESG121(:,JI)*ZESG04(:,JJ)+ZR4(:)*ZESG81(:,JI)*ZESG16(:,JJ)+& - ZRM3(:)*ZESG256(:,JI)*ZESG09(:,JJ)+2*ZRM(:)*ZESG196(:,JI)*ZESG01(:,JJ)) - - ZINTERFM(:)=ZKFM(:)*ZRES(:)*ZAPPROX(:) - - ZAPPROX(:)=(ZRGI(:))**6*(2.*ZESG144(:,JI)+ZAI(:)*ZKNGI(:)*(ZESG100(:,JI)+& - ZR2(:)*ZESG64(:,JI)*ZESG04(:,JJ))+ZAJ(:)*ZKNGJ(:)*(ZESG144(:,JI)*ZESG04(:,JJ)+& - ZRM2(:)*ZESG196(:,JI)*ZESG16(:,JJ))+ZR2(:)*ZESG100(:,JI)*ZESG04(:,JJ)+& - ZRM2(:)*ZESG196(:,JI)*ZESG04(:,JJ)) - - ZINTERNC(:)=ZKNC(:)*ZAPPROX(:) - - ZINTER(:)=ZINTERNC(:)*(ZINTERFM(:)/(ZINTERNC(:)+ZINTERFM(:))) - - PDMINTER(:,NM6(JI))=-PM(:,NM0(JI))*PM(:,NM0(JJ))*ZINTER(:) - PDMINTER(:,NM6(JJ))=PM(:,NM0(JI))*PM(:,NM0(JJ))*ZINTER(:) - - ZAPPROX(:)=sqrt(2.)*sqrt(ZRGI(:))**7*sqrt(ZRGJ(:))**6*(ZESG49(:,JI)*& - ZESG36(:,JJ)+ZR(:)*ZESG36(:,JI)*ZESG49(:,JJ)+2.*ZR2(:)*ZESG25(:,JI)*& - ZESG64(:,JJ)+ZR4(:)*ZESG09(:,JI)*ZESG100(:,JJ)+ZRM3(:)*ZESG100(:,JI)*& - ZESG09(:,JJ)+2.*ZRM(:)*ZESG64(:,JI)*ZESG25(:,JJ)) - - ZINTERFM(:)=ZKFM(:)*ZRES(:)*ZAPPROX(:) - - ZAPPROX(:)=(ZRGI(:))**3*(ZRGJ(:))**3*(2.*ZESG36(:,JI)*ZESG36(:,JJ)+& - ZAI(:)*ZKNGI(:)*(ZESG16(:,JI)*ZESG16(:,JJ)+ZR2(:)*ZESG04(:,JI)*ZESG64(:,JJ))+& - ZAJ(:)*ZKNGJ(:)*(ZESG36(:,JI)*ZESG16(:,JJ)+ZRM2(:)*ZESG64(:,JI)*ZESG04(:,JJ))+& - ZR2(:)*ZESG16(:,JI)*ZESG64(:,JJ)+ZRM2(:)*ZESG64(:,JI)*ZESG16(:,JJ)) - - ZINTERNC(:)=ZKNC(:)*ZAPPROX(:) - - ZINTER(:)=ZINTERNC(:)*(ZINTERFM(:)/(ZINTERNC(:)+ZINTERFM(:))) - - PDMINTER(:,NM6(JJ))=PDMINTER(:,NM6(JJ))+2.*PM(:,NM0(JI))*PM(:,NM0(JJ))*ZINTER(:) - - enddo -enddo - -IF (LHOOK) CALL DR_HOOK('CH_AER_COAG',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_COAG diff --git a/src/arome/chem/internals/ch_aer_driver.F90 b/src/arome/chem/internals/ch_aer_driver.F90 deleted file mode 100644 index 132499ae063c148380b030ec6f8c674d82ed2eae..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_driver.F90 +++ /dev/null @@ -1,130 +0,0 @@ -! ######spl -SUBROUTINE CH_AER_DRIVER(PM, PSIG0, PRG0, PN0, PCTOTG, PCTOTA,& - PCCTOT, PDTACT, PSEDA,& - PMU, PLAMBDA, PRHOP0, POM, PSO4RAT, & - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, PMASK,& - PTIME, PSOLORG) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!##################################################################################### -!! -!! PURPOSE -!! ------- -!! -!! compute the right hand side of the moment equations -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -!! EXTERNAL -!! -------- -USE MODI_CH_AER_COAG -USE MODI_CH_AER_GROWTH -USE MODI_CH_AER_SOLV -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -USE MODD_CH_AEROSOL -! -! -IMPLICIT NONE -! Declaration arguments -REAL, INTENT(IN) :: PDTACT, PTIME -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRHOP0, POM -REAL, DIMENSION(:), INTENT(INOUT) :: PLAMBDA, PMU, PSO4RAT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMASK -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -! -! Declarations variables internes -! -INTEGER :: II - -! Variables utilisees pour le tranfert de moment de chaque espece -! pour la condensation -!---------------------------------------------------------------- - -REAL, DIMENSION(SIZE(PM,1),(JPMODE)*3) :: ZDMINTRA,ZDMINTER,ZDMCOND - -REAL :: ZGASMW ! Molecular weight of background - ! gas (g/mol) -REAL, DIMENSION(SIZE(PM,1)) :: ZPGAS ! background gas pressure (Pa) -REAL, DIMENSION(SIZE(PM,1)) :: ZRH,PSAT ! Relative humidity -REAL :: ZDT ! Pas de temps -REAL, DIMENSION(SIZE(PM,1)) :: ZPKM, ZPKH2O - -!----------------------------------------------------------------------------- - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_DRIVER',0,ZHOOK_HANDLE) -ZDT=PDTACT - -!****************************************************** -! Thermodynamic variables initialization -! from Meso-NHC -!****************************************************** - -ZPKM(:) = 1E-3*PDENAIR(:) * 6.0221367E+23 / 28.9644 -ZPKH2O(:) = ZPKM(:)*1.6077*PRV(:) -PSAT(:)=0.611*EXP(17.2694*(PTEMP(:)-273.16)/(PTEMP(:)-35.86)) -PSAT(:)=PSAT(:)*1000. -ZRH(:)=(ZPKH2O(:)/(ZPKM(:)*1.6077))*PPRESSURE(:)/& - &(0.622+(ZPKH2O(:)/(ZPKM(:)*1.6077)))/PSAT(:) - -ZPGAS(:)=PPRESSURE(:) -ZGASMW=29. - -!****************************************************** -! calculate gas viscosity and mean free path -!****************************************************** -PMU(:)=0.003661*PTEMP(:) -PMU(:)=.0066164*PMU(:)*sqrt(PMU(:))/(PTEMP(:)+114.d0) - -PLAMBDA(:)=PMU(:)/PDENAIR(:)*sqrt(1.89d-4*ZGASMW/PTEMP(:))*1.e6 - -CALL CH_AER_COAG(PM, PSIG0, PRG0, PN0,ZDMINTRA,ZDMINTER,& - PTEMP,PMU,PLAMBDA,PRHOP0) - - -CALL CH_AER_GROWTH(PM, PSIG0, PRG0, ZDMCOND,PDENAIR,ZGASMW,& - ZPGAS,PTEMP,ZRH,POM,PSO4RAT,PDTACT) - -DO II=1,JPMODE -ZDMINTRA(:,NM0(II)) = ZDMINTRA(:,NM0(II)) * PMASK(:,II) -ZDMINTRA(:,NM3(II)) = ZDMINTRA(:,NM3(II)) * PMASK(:,II) -ZDMINTRA(:,NM6(II)) = ZDMINTRA(:,NM6(II)) * PMASK(:,II) -ZDMINTER(:,NM0(II)) = ZDMINTER(:,NM0(II)) * PMASK(:,II) -ZDMINTER(:,NM3(II)) = ZDMINTER(:,NM3(II)) * PMASK(:,II) -ZDMINTER(:,NM6(II)) = ZDMINTER(:,NM6(II)) * PMASK(:,II) -ZDMCOND(:,NM0(II)) = ZDMCOND(:,NM0(II)) * PMASK(:,II) -ZDMCOND(:,NM3(II)) = ZDMCOND(:,NM3(II)) * PMASK(:,II) -ZDMCOND(:,NM6(II)) = ZDMCOND(:,NM6(II)) * PMASK(:,II) -POM(:,II) = POM(:,II) * PMASK(:,II) -PSEDA(:,NM0(II)) = PSEDA(:,NM0(II)) * PMASK(:,II) -PSEDA(:,NM3(II)) = PSEDA(:,NM3(II)) * PMASK(:,II) -PSEDA(:,NM6(II)) = PSEDA(:,NM6(II)) * PMASK(:,II) -END DO - - -CALL CH_AER_SOLV(PM, PSIG0, PRG0, PN0,PCTOTG, PCTOTA, PCCTOT, & - ZDMINTRA,ZDMINTER,ZDMCOND,PSEDA,ZDT,POM,& - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, PTIME, PSOLORG) - - -IF (LHOOK) CALL DR_HOOK('CH_AER_DRIVER',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_DRIVER diff --git a/src/arome/chem/internals/ch_aer_eqm_cormass.F90 b/src/arome/chem/internals/ch_aer_eqm_cormass.F90 deleted file mode 100644 index 94912fc7601c2ae5b88ca00d20b9b4ddd1d284b4..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_eqm_cormass.F90 +++ /dev/null @@ -1,55 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_EQM_CORMASS(PSVT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################ -!! -!! PURPOSE -!! ------- -!! Realise la conservation de la masse -!! Filtre les valeurs des moments 0 et 6 inferieures aux valeurs -!! minimales (Rg et SIG) introduites en nameliste -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! none -!! -!! EXTERNAL -!! -------- -!! None -!! -!! -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -! -!* 0.2 declarations local variables -! -!------------------------------------------------------------------------------- - -! -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ------------------------------------ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_AER_EQM_CORMASS',0,ZHOOK_HANDLE) - PSVT(:,:,:,:) = MAX(PSVT(:,:,:,:),1.E-80) - -! -IF (LHOOK) CALL DR_HOOK('CH_AER_EQM_CORMASS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_EQM_CORMASS diff --git a/src/arome/chem/internals/ch_aer_eqm_init0d.F90 b/src/arome/chem/internals/ch_aer_eqm_init0d.F90 deleted file mode 100644 index b213b841458db74f0a1b3cc122e88c6cbf297c81..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_eqm_init0d.F90 +++ /dev/null @@ -1,292 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_EQM_INIT0d(PMI, PAERO, PM3D, PRHOP3D, PSIG3D, PRG3D, & - PN3D, PCTOTA) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################ -!! -!! PURPOSE -!! ------- -!! Realise l'equilibre entre les moments via la masse contenue -!! dans les aerosols, les diametres moyens et la dispersion. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! none -!! -!! EXTERNAL -!! -------- -!! None -!! -USE MODD_CH_AEROSOL -USE MODD_CH_M9, ONLY : CNAMES -USE MODD_CH_AERO_n -USE MODD_CH_MNHC_n - -!! -IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAERO, PMI -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM3D, PRHOP3D, PSIG3D, PRG3D, PN3D -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA - - -! -! -!* 0.2 declarations local variables -! -REAL,DIMENSION(1,NSP+NCARB+NSOA,JPMODE) :: ZCCTOT -REAL,DIMENSION(1) :: ZSUM -REAL,DIMENSION(1) :: ZSIGMA -INTEGER :: JN, JJ ! loop counter -! -!------------------------------------------------------------------------------- -! - -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ------------------------------------ -! 1.1 initialisation -! Index gas scheme <=> Index Orilam - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_EQM_INIT0D',0,ZHOOK_HANDLE) -DO JJ=1,SIZE(CNAMES) -IF (CNAMES(JJ) == "CO") JP_CH_CO = JJ -END DO - - -IF (CORGANIC == TRIM("MPMPO") .OR. CORGANIC == TRIM("PUN") .OR. CORGANIC == TRIM("EQSAM2")) THEN - IF ((CCH_SCHEME .NE. TRIM("CACM")) .AND. (CCH_SCHEME .NE. TRIM("RELACS2"))) THEN - print*, '**********************************************' - print*, 'WARNING : NO SOA !!!!' - print*, 'YOU WANT TO USE SOA GAS PARTICLE BALANCE' - print*, 'BUT THE SCHEME NEED TO BE CACM or RELACS 2' - print*, 'CORGANIC HAS BEEN SET TO NONE' - print*, 'OTHERWISE COMPILE THE CORRECT SCHEME BEFORE' - print*, '**********************************************' - CORGANIC = "NONE" - END IF -END IF - -IF (.NOT.(ALLOCATED(XRHOI))) ALLOCATE(XRHOI(NSP+NSOA+NCARB)) -IF (.NOT.(ALLOCATED(XFAC))) ALLOCATE(XFAC(NSP+NSOA+NCARB)) - - -! Moments index - NM0(1) = 1 - NM3(1) = 2 - NM6(1) = 3 - NM0(2) = 4 - NM3(2) = 5 - NM6(2) = 6 - -! Aerosol Density -! Cf Ackermann (all to black carbon except water) - - XRHOI(:) = 1.8e3 - XRHOI(JP_AER_H2O) = 1.0e3 ! water - -! -DO JJ=1,NSP+NCARB+NSOA - XFAC(JJ)=(4./3.)*3.14292654*XRHOI(JJ)*1.e-9 -ENDDO - -! -! -!* 1.n transfer aerosol mass from gas to aerosol variables -! (and conversion of part/part --> microgram/m3) -! - -! -! mineral phase - PCTOTA(:,JP_AER_SO4,1) = PAERO(:,JP_CH_SO4i)*PMI(:,JP_AER_SO4)/6.0221367E+11 - PCTOTA(:,JP_AER_SO4,2) = PAERO(:,JP_CH_SO4j)*PMI(:,JP_AER_SO4)/6.0221367E+11 - - PCTOTA(:,JP_AER_NO3,1) = PAERO(:,JP_CH_NO3i)*PMI(:,JP_AER_NO3)/6.0221367E+11 - PCTOTA(:,JP_AER_NO3,2) = PAERO(:,JP_CH_NO3j)*PMI(:,JP_AER_NO3)/6.0221367E+11 - - PCTOTA(:,JP_AER_NH3,1) = PAERO(:,JP_CH_NH3i)*PMI(:,JP_AER_NH3)/6.0221367E+11 - PCTOTA(:,JP_AER_NH3,2) = PAERO(:,JP_CH_NH3j)*PMI(:,JP_AER_NH3)/6.0221367E+11 - -! water - PCTOTA(:,JP_AER_H2O,1) = PAERO(:,JP_CH_H2Oi)*PMI(:,JP_AER_H2O)/6.0221367E+11 - PCTOTA(:,JP_AER_H2O,2) = PAERO(:,JP_CH_H2Oj)*PMI(:,JP_AER_H2O)/6.0221367E+11 - -! -! primary organic carbon - PCTOTA(:,JP_AER_OC,1) = PAERO(:,JP_CH_OCi)*PMI(:,JP_AER_OC)/6.0221367E+11 - PCTOTA(:,JP_AER_OC,2) = PAERO(:,JP_CH_OCj)*PMI(:,JP_AER_OC)/6.0221367E+11 - -! primary black carbon - PCTOTA(:,JP_AER_BC,1) = PAERO(:,JP_CH_BCi)*PMI(:,JP_AER_BC)/6.0221367E+11 - PCTOTA(:,JP_AER_BC,2) = PAERO(:,JP_CH_BCj)*PMI(:,JP_AER_BC)/6.0221367E+11 - -! - PCTOTA(:,JP_AER_SOA1,1) = PAERO(:,JP_CH_SOA1i)*PMI(:,JP_AER_SOA1)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA1,2) = PAERO(:,JP_CH_SOA1j)*PMI(:,JP_AER_SOA1)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA2,1) = PAERO(:,JP_CH_SOA2i)*PMI(:,JP_AER_SOA2)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA2,2) = PAERO(:,JP_CH_SOA2j)*PMI(:,JP_AER_SOA2)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA3,1) = PAERO(:,JP_CH_SOA3i)*PMI(:,JP_AER_SOA3)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA3,2) = PAERO(:,JP_CH_SOA3j)*PMI(:,JP_AER_SOA3)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA4,1) = PAERO(:,JP_CH_SOA4i)*PMI(:,JP_AER_SOA4)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA4,2) = PAERO(:,JP_CH_SOA4j)*PMI(:,JP_AER_SOA4)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA5,1) = PAERO(:,JP_CH_SOA5i)*PMI(:,JP_AER_SOA5)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA5,2) = PAERO(:,JP_CH_SOA5j)*PMI(:,JP_AER_SOA5)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA6,1) = PAERO(:,JP_CH_SOA6i)*PMI(:,JP_AER_SOA6)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA6,2) = PAERO(:,JP_CH_SOA6j)*PMI(:,JP_AER_SOA6)/6.0221367E+11 - - PCTOTA(:,JP_AER_SOA6,1) = PAERO(:,JP_CH_SOA6i)*PMI(:,JP_AER_SOA6)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA6,2) = PAERO(:,JP_CH_SOA6j)*PMI(:,JP_AER_SOA6)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA7,1) = PAERO(:,JP_CH_SOA7i)*PMI(:,JP_AER_SOA7)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA7,2) = PAERO(:,JP_CH_SOA7j)*PMI(:,JP_AER_SOA7)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA8,1) = PAERO(:,JP_CH_SOA8i)*PMI(:,JP_AER_SOA8)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA8,2) = PAERO(:,JP_CH_SOA8j)*PMI(:,JP_AER_SOA8)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA9,1) = PAERO(:,JP_CH_SOA9i)*PMI(:,JP_AER_SOA9)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA9,2) = PAERO(:,JP_CH_SOA9j)*PMI(:,JP_AER_SOA9)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA10,1) = PAERO(:,JP_CH_SOA10i)*PMI(:,JP_AER_SOA10)/6.0221367E+11 - PCTOTA(:,JP_AER_SOA10,2) = PAERO(:,JP_CH_SOA10j)*PMI(:,JP_AER_SOA10)/6.0221367E+11 - - -! -!* 1.1 calculate moment 3 from mass - - PM3D(:,2) = 0. - PM3D(:,5) = 0. - PCTOTA(:,:,:) = MAX(PCTOTA(:,:,:), 0.) - DO JJ = 1,NSP+NCARB+NSOA - PM3D(:,2) = PM3D(:,2)+PCTOTA(:,JJ,1)/XFAC(JJ) - PM3D(:,5) = PM3D(:,5)+PCTOTA(:,JJ,2)/XFAC(JJ) - ENDDO -! -! -!* 1.2 calculate moment 0 from dispersion and mean radius - PM3D(:,1)= PM3D(:,2) / & - ((XINIRADIUSI**3)*EXP(4.5 * (LOG(XINISIGI))**2)) - -IF (ANY(PM3D(:,1) < XN0IMIN)) THEN - -print*, 'FATAL ERROR ' -print*, 'COMPATIBILITY ERROR: Initialization of particle number mode I < XN0IMIN ' -print*, ' MINIMAL NUMBER PARTICLE BY m3 is ', MINVAL(PM3D(:,1)),& -'located at ',MINLOC(PM3D(:,1)) -print*, 'PLEASE CHANGE MASS OR XN0IMIN INITIALIZATION ' -STOP -END IF - PM3D(:,4)= PM3D(:,5) / & - ((XINIRADIUSJ**3)*EXP(4.5 * (LOG(XINISIGJ))**2)) - -IF (ANY(PM3D(:,4) < XN0JMIN)) THEN -print*, 'FATAL ERROR ' -print*, 'COMPATIBILITY ERROR: Initialization of particle number mode J < XN0JMIN ' -print*, ' MINIMAL NUMBER PARTICLE BY m3 is ',MINVAL(PM3D(:,4)),& -'located at ',MINLOC(PM3D(:,4)) -print*, 'PLEASE CHANGE MASS OR XN0JMIN INITIALIZATION ' -STOP -END IF - -!* 1.3 calculate moment 6 from dispersion and mean radius - PM3D(:,3) = PM3D(:,1) * (XINIRADIUSI**6) *EXP(18 *(LOG(XINISIGI))**2) - PM3D(:,6) = PM3D(:,4) * (XINIRADIUSJ**6) *EXP(18 *(LOG(XINISIGJ))**2) - - - -! -!********************************************** -! Calcul de XRHOP3D -!********************************************** - -PRHOP3D(:,:)=0. -DO JN=1,JPMODE - ZSUM(:)=0. - DO JJ=1,NSP+NCARB+NSOA - ZSUM(:)=ZSUM(:)+PCTOTA(:,JJ,JN)/XRHOI(JJ) - ENDDO - DO JJ=1,NSP+NCARB+NSOA - ZCCTOT(:,JJ,JN)=PCTOTA(:,JJ,JN)/XRHOI(JJ)/ZSUM(:) - PRHOP3D(:,JN)=PRHOP3D(:,JN)+ZCCTOT(:,JJ,JN)*XRHOI(JJ) - ENDDO -ENDDO - -DO JN=1,JPMODE - - IF (JN .EQ. 1) THEN - - IF (LVARSIGI) THEN ! variable dispersion for mode 1 - - ZSIGMA(:)=PM3D(:,NM3(JN))**2/(PM3D(:,NM0(JN))*PM3D(:,NM6(JN))) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGIMAX) - ZSIGMA(:) = XSIGIMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGIMIN) - ZSIGMA(:) = XSIGIMIN - END WHERE - - ELSE ! fixed dispersion for mode 1 - ZSIGMA(:) = XINISIGI - END IF - END IF - -! - IF (JN .EQ. 2) THEN - - IF (LVARSIGJ) THEN ! variable dispersion for mode 2 - - ZSIGMA(:)=PM3D(:,NM3(JN))**2/(PM3D(:,NM0(JN))*PM3D(:,NM6(JN))) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGJMAX) - ZSIGMA(:) = XSIGJMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGJMIN) - ZSIGMA(:) = XSIGJMIN - END WHERE - - ELSE ! fixed dispersion for mode 2 - ZSIGMA(:) = XINISIGJ - END IF - END IF -! -!* 1.4 calculate modal parameters from moments -PSIG3D(:,JN) = ZSIGMA(:) -PN3D(:,JN) = PM3D(:,NM0(JN)) - -ZSIGMA(:)=LOG(PSIG3D(:,JN))**2 - -PRG3D(:,JN)=(PM3D(:,NM3(JN))/PN3D(:,JN))**(1./3.)*EXP(-1.5*ZSIGMA(:)) - -PM3D(:,NM6(JN))=PN3D(:,JN)*PRG3D(:,JN)**6*EXP(18.*ZSIGMA(:)) -! -PSIG3D(:,JN)=LOG(PSIG3D(:,JN)) -ENDDO -! -! -PAERO(:,JP_CH_M0i) = PM3D(:,1) * 1E-6 -PAERO(:,JP_CH_M0j) = PM3D(:,4) * 1E-6 -IF (LVARSIGI) PAERO(:,JP_CH_M6i) = PM3D(:,3) -IF (LVARSIGJ) PAERO(:,JP_CH_M6j) = PM3D(:,6) - -! -! -IF (LHOOK) CALL DR_HOOK('CH_AER_EQM_INIT0D',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_EQM_INIT0d diff --git a/src/arome/chem/internals/ch_aer_eqsam.F90 b/src/arome/chem/internals/ch_aer_eqsam.F90 deleted file mode 100644 index 2c478ba3b033c8f91d9d7703f3a0804bbb9e36e1..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_eqsam.F90 +++ /dev/null @@ -1,140 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_EQSAM(PAER,PRH, PPRESSURE, PTEMP ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ########################################################## -!! -!! PURPOSE -!! ------- -!! -!! Interface between ORILAM and EQSAM for calculate the aerosol chemical speciation and water content. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet ( Meteo France / GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -! interface -! --------- -! call eqsam_v03d(yi,yo,nca,nco,iopt,loop,imax,ipunit,in) -! -! yi = input array (imax, nca) -! yo = output array (imax, nco) -! imax = max loop (e.g. time steps) -! nca >= 11 -! nc0 >= 35 -! iopt = 1 metastable -! iopt = 2 solids -! iopt = 3 hysteresis (metastable/solids) for online calculations -! iopt = 31 hysteresis lower branch -! iopt = 32 hysteresis upper branch -! ipunit = I/O unit (can be skipped) -! in = array (can be skipped) -! -! method -! ------ -! equilibrium / internal mixture assumption / aw=rh -! System: NH3,NH4+/H2SO4+,HSO4-,SO4--/HNO3,NO3-, HCl,Cl-/Na+, H2O -! (K+,Ca++,Mg++) -! external -! -------- -! program eqmd.f90 (driver only needed for the box model version) -! subroutine gribio.f90 (provides diagnostics output in grib/binary/ascii format) -! -! references -! --------- -! Swen Metzger Ph.D Thesis, University Utrecht, 2000. -! http://www.library.uu.nl/digiarchief/dip/diss/1930853/inhoud.htm -! -! Metzger, S. M., F. J. Dentener, J. Lelieveld, and S. N. Pandis, -! GAS/AEROSOL PARTITIONING I: A COMPUTATIONALLY EFFICIENT MODEL, -! J Geophys. Res., 107, D16, 10.1029/2001JD001102, 2002 -! http://www.agu.org/journals/jd/jd0216/2001JD001102/index.html -! Metzger, S. M., F. J. Dentener, A. Jeuken, and M. Krol, J. Lelieveld, -! GAS/AEROSOL PARTITIONING II: GLOBAL MODELING RESULTS, -! J Geophys. Res., 107, D16, 10.1029/2001JD001103, 2002. -! http://www.agu.org/journals/jd/jd0216/2001JD001103/index.html -!_________________________________________________________________________________________________ -! -!*************************************************************** -!! -!! EXTERNAL -!! ------- -!! -USE MODI_eqsam_v03d_sub -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -IMPLICIT NONE -!!...........ARGUMENTS and their descriptions -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PPRESSURE, PTEMP -! -! PAER(:,1) :: H2SO4 in micrograms / m**3 -! PAER(:,2) :: NH3(g) in micrograms / m**3 -! PAER(:,3) :: HNO3(g) in micrograms / m**3 -! PAER(:,4) :: H2O(a) in micrograms / m**3 -! PAER(:,5) :: NO3(a) in micrograms / m**3 -! PAER(:,6) :: NH4(a) in micrograms / m**3 -! -!...........PARAMETERS and their descriptions: - -REAL, PARAMETER :: ZMWH2O = 18.0 ! molecular weight for water -REAL, PARAMETER :: ZMWNO3 = 62.0049 ! molecular weight for NO3 -REAL, PARAMETER :: ZMWHNO3 = 63.01287 ! molecular weight for HNO3 -REAL, PARAMETER :: ZMWSO4 = 96.0576 ! molecular weight for SO4 -REAL, PARAMETER :: ZMH2SO4 = 98.07354 ! molecular weight for H2SO4 -REAL, PARAMETER :: ZMWNH3 = 17.03061 ! molecular weight for NH3 -REAL, PARAMETER :: ZMWNH4 = 18.03858 ! molecular weight for NH4 -REAL, PARAMETER :: ZMWAIR = 28.964 ! molecular weight for AIR - -INTEGER :: NCA,NCO,IOPT - -REAL, ALLOCATABLE, DIMENSION(:,:) :: ZYI, ZYO -! -!----------------------------------------------------------------------------- -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_EQSAM',0,ZHOOK_HANDLE) -NCA=11 ! Number of INPUT -NCO=35 ! Number of OUTPUT -IOPT=1 ! Options for metastable, solids, hysteresis (metastable/solids) -! -ALLOCATE(ZYI(SIZE(PAER,1), NCA)) -ALLOCATE(ZYO(SIZE(PAER,1), NCO)) -ZYI(:,:) =0. -ZYO(:,:) =0. - - ZYI(:,1)=PTEMP(:) ! T [K] - ZYI(:,2)=PRH(:) ! RH [0-1] - ZYI(:,3)=PAER(:,2) / ZMWNH3 + PAER(:,6) / ZMWNH4 ! NH3 (g) + NH4+ (p) [umol/m^3 air] - ZYI(:,4)=PAER(:,1) / ZMH2SO4 ! H2SO4 + SO4-- (p) [umol/m^3 air] - ZYI(:,5)=PAER(:,5) / ZMWNO3 + PAER(:,3) / ZMWHNO3 ! HNO3 (g) + NO3- (p) [umol/m^3 air] - ZYI(:,6)= 0. ! Na+ (ss + xsod) (a) [umol/m^3 air] - ZYI(:,7)= 0. ! HCl (g) + Cl- (p) [umol/m^3 air] - ZYI(:,8)= 0. ! K+ (p) from Dust [umol/m^3 air] - ZYI(:,9)= 0. ! Ca++ (p) from Dust [umol/m^3 air] - ZYI(:,10)=0. ! Mg++ (p) from Dust [umol/m^3 air] - ZYI(:,11)= PPRESSURE(:)*1E-2 ! p [hPa] - - CALL eqsam_v03d_sub(ZYI,ZYO, NCA, NCO, IOPT, SIZE(PAER,1), SIZE(PAER,1)) - !PAER(:,1) = ZYO(:,21) * ZMH2SO4 - PAER(:,2) = ZYO(:,10) * ZMWNH3 - PAER(:,3) = ZYO(:,9) * ZMWHNO3 - PAER(:,4) = ZYO(:,12) ! * ZMWH2O note H2O is in micro-g/m3 - PAER(:,5) = ZYO(:,20) * ZMWNO3 - PAER(:,6) = ZYO(:,19) * ZMWNH4 - -DEALLOCATE(ZYO) -DEALLOCATE(ZYI) -! -IF (LHOOK) CALL DR_HOOK('CH_AER_EQSAM',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_EQSAM diff --git a/src/arome/chem/internals/ch_aer_growth.F90 b/src/arome/chem/internals/ch_aer_growth.F90 deleted file mode 100644 index 1cbbf535ebb653f856a40fb03b3267f6ef90ef08..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_growth.F90 +++ /dev/null @@ -1,247 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_GROWTH(PM,PSIG0, PRG0, PDMCOND,PDENAIR,& - PGASMW,PPGAS,PTGAS,PRH, POM,& - PSO4RAT, PDT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################## -!! -!! PURPOSE -!! ------- -!! -!! This routine computes the rate of change due to condensation -!! and homogene nucleation -!! -!!************************************************************* -!! -!! Sans test pour savoir si toute la vapeur est utilisee -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Tulet P. ajout nucleation Kulmala, 1998 -!! -!************************************************************* -! Entry variables: -! -! PM(JPIN) -Array of moments -! ZT -Present time in the scheme -! -!************************************************************* -! Exit variables: -! -! ZCOEFM(JPIN) -Array of moment variation due to condensation -! and homogeneous nucleation -! -!************************************************************* -! Variables used during the condensation calculation -! -! ZALPHA - accomodation coefficient -! ZCBAR - kinetic velocity of vapor molecules (m/s) -! ZDV - vapor diffusivity (m2/s) -! ZPSIT - size-independant component of the growth law -! ZSATUR - saturation ratio of condensed species -!************************************************************* -! Variables used during nucleation calculation -! -! ZCCRIT -Critical concentration for production of new -! particles (kg/m3) -! ZC0 -Initial monomer concentration (kg/m3) -! ZG0 -Critical cluster number -! ZP -Rate of gas phase production of sulfuric acid -! concentration C (kg/m3) -! ZSURTEN -Surface tension (N/m) -! ZTHETA -Dimensionless surface energy -! ZW0 -Dimensionless energy barrier to nucleation -! ************************************************************ -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -USE MODD_CH_AEROSOL -USE MODI_CH_AER_NUCL -!! -IMPLICIT NONE -! -! -!* 0.1 Declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMCOND, POM -REAL, DIMENSION(:), INTENT(IN) :: PDENAIR,PPGAS,PTGAS -REAL, DIMENSION(:), INTENT(INOUT) :: PRH, PSO4RAT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0 -REAL, INTENT(INOUT) :: PGASMW -REAL, INTENT(IN) :: PDT -! -!* 0.2 Declarations of local variables -! -INTEGER :: JI,JJ - -REAL, DIMENSION(SIZE(PM,1),JPMODE,2) :: ZRIK -REAL, DIMENSION(SIZE(PM,1)) :: ZRG,ZLN2S - -REAL, DIMENSION(SIZE(PM,1)) :: ZRIKNC,ZRIKFM -REAL, DIMENSION(SIZE(PM,1)) :: ZSIGGAS,ZSIGAIR -REAL, DIMENSION(SIZE(PM,1)) :: ZSIG -REAL, DIMENSION(SIZE(PM,1)) :: ZCBAR -REAL, DIMENSION(SIZE(PM,1),(JPMODE)*3) :: ZMOM -REAL, DIMENSION(SIZE(PM,1)) :: ZCCRIT -REAL, DIMENSION(SIZE(PM,1)) :: ZDTD,ZTINF,ZCSO4SS -REAL, DIMENSION(SIZE(PM,1)) :: ZDMDT,ZDNDT,ZDM3DT,ZDM6DT -REAL, DIMENSION(SIZE(PM,1)) :: ZAL, ZJA, ZSULF - -REAL :: ZDV,ZALPHA - -REAL :: ZMSO4 - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_GROWTH',0,ZHOOK_HANDLE) -ZALPHA=0.05 -ZMSO4 = 98. -PDMCOND(:,:)=0.d0 -! -!------------------------------------------------------------------------------- -! -! Pour l'instant seul H2SO4 peut nucleer, d'une part -! de facon homogene (creation de nouvelles particules) -! d'autre part de facon heterogene (sur les particules -! d'aerosol deja existante) - -!******************************************************* -! Compute the binary diffusivity of the gaseous species -!******************************************************* -ZSIGAIR(:)=(PGASMW/1000.*3./(6.023e23*4.*XPI*PDENAIR(:)))**(1./3.) - -ZSIGGAS(:)=(ZMSO4/1000.*3./(6.023e23*4.*XPI*XRHOI(2)))**(1./3.) -ZSIG(:)=(ZSIGGAS(:)+ZSIGAIR(:))/2. -ZCBAR(:)=SQRT(8.*PTGAS(:)*8.31441/(XPI*ZMSO4*1.e-3)) -ZDV=0.08e-4 - -!************************* -! Compute the Omega terms -!************************* - -DO JI=1,JPMODE - - ZRG(:)=PRG0(:,JI)*1.e-6 - ZLN2S(:)=PSIG0(:,JI)**2 - - DO JJ=1,6 - - ZMOM(:,JJ)=PM(:,NM0(JI))*ZRG(:)**JJ*exp(real(JJ)**2*ZLN2S(:)/2.) - - ENDDO - - - ZRIKFM(:)=XPI*ZALPHA*ZCBAR(:)/8.*ZMOM(:,2) - ZRIKNC(:)=XPI*ZDV/2.*ZMOM(:,1) - - ZRIK(:,JI,1)=ZRIKFM(:)*(ZRIKNC(:)/(ZRIKFM(:)+ZRIKNC(:))) - - ZRIKFM(:)=XPI*ZALPHA*ZCBAR(:)/8.*ZMOM(:,5) - ZRIKNC(:)=XPI*ZDV/2.*ZMOM(:,4) - - ZRIK(:,JI,2)=ZRIKFM(:)*(ZRIKNC(:)/(ZRIKFM(:)+ZRIKNC(:))) - -ENDDO -POM(:,1)=(ZRIK(:,1,1)/(ZRIK(:,1,1)+ZRIK(:,2,1))) -POM(:,2)=(ZRIK(:,2,1)/(ZRIK(:,1,1)+ZRIK(:,2,1))) -! -IF (CNUCLEATION=='KERMINEN') THEN -!****************************************************************** -! Debut de la partie nucleation homogene en utilisant l'approche de -! Kerminen et Wexler (1994) -!****************************************************************** - - ZCCRIT(:)=0.16*exp(0.1*PTGAS(:)-3.5*PRH(:)-27.7) -!KS: suppress nucleation -! ZCCRIT(:)=1E20 - -! ZTINF, the time constant for particles to condense onto -! existing particles is given by Tinf=1/(dM3i/dt+dm3j/dt) -! where M3i and M3j are in third moment par CM3 - - ZDTD(:)=8.*(ZRIK(:,1,1)+ZRIK(:,2,1)) - ZTINF(:)=1./ZDTD(:) - - ZCSO4SS(:)=PSO4RAT(:)*(ZMSO4/6.0221367E+11)*ZTINF(:) - - DO JI = 1,SIZE(PM,1) - - IF (ZCSO4SS(JI) <= ZCCRIT(JI)) THEN !No nucleation - ZDNDT(JI)=0. - ZDMDT(JI)=0. - ZDM6DT(JI)=0. - ELSE !Calculate nucleation - -! Nucleation of particles from excess mass concentration of sulfuric acid -! above critical mass concentration of sulfuric acid -! and condensation of the remaining mass - - ZDMDT(JI)=ZDTD(JI)*(ZCSO4SS(JI)-ZCCRIT(JI)) -! Les nouvelles particules fraichement crees sont inclues dans le mode -! d'aitken avec les parametres d'initialisation au niveau de la distribution - ZDNDT(JI)=ZDMDT(JI)*1.e-18/XFAC(JP_AER_SO4)/((0.0025e-6)**3*exp(9./2.*log(1.5)**2)) - ZDM6DT(JI)=ZDNDT(JI)*(0.0025)**6*exp(18.*log(1.5)**2) -! write(*,*) 'Nucleation: ','DNDT= ',ZDNDT,' DM6DT= ',ZDM6DT - - ENDIF - - ENDDO -ELSE - ZDNDT(:)=0. - ZDMDT(:)=0. - ZDM6DT(:)=0. -ENDIF -! -IF (CNUCLEATION=='KULMALA') THEN -! compute nucleation rate -! - ZSULF(:) = PSO4RAT(:) * PDT -! - CALL CH_AER_NUCL(PRH,PTGAS,ZSULF,ZJA,ZAL,SIZE(PSO4RAT,1)) -! -! new mass in molec.cm-3.s-1 - ZDMDT(:)= ZAL(:)*ZJA(:) -! convert into microgram.m-3.s-1 - ZDMDT(:)= ZDMDT(:) * ZMSO4/6.0221367E+11 -! -! Les nouvelles particules fraichement crees sont inclues dans le mode -! d'aitken avec les parametres d'initialisation au niveau de la distribution -! - ZDNDT(:) = ZDMDT(:)/(XFAC(JP_AER_SO4)*(PRG0(:,1)**3)*EXP(4.5 * PSIG0(:,1)**2)) - ZDM6DT(:) = ZDNDT(:)*(PRG0(:,1)**6*EXP(18.*PSIG0(:,1)**2)) - -ELSE - ZDNDT(:)=0. - ZDMDT(:)=0. - ZDM6DT(:)=0. -ENDIF -! -! condensation des sulfates -ZDM3DT(:)=PSO4RAT(:)*(ZMSO4/6.0221367E+11)/XFAC(JP_AER_SO4)*1.e-18 -! -! Enlever la quantite de 3e moment deja consommee pour la nucleation homogene -ZDM3DT(:)=ZDM3DT(:)-ZDMDT(:)/XFAC(JP_AER_SO4)*1.e-18 -! -! -PDMCOND(:,1)=ZDNDT(:) -PDMCOND(:,2)=ZDMDT(:)/XFAC(JP_AER_SO4) -PDMCOND(:,3)=ZDM6DT(:) -! -DO JI=1,JPMODE - PDMCOND(:,NM3(JI))=PDMCOND(:,NM3(JI))+ZDM3DT(:)*POM(:,JI)*1.e18 - PDMCOND(:,NM6(JI))=PDMCOND(:,NM6(JI))+ZDM3DT(:)*POM(:,JI)*ZRIK(:,JI,2)/ZRIK(:,JI,1)*1.e36 - -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_AER_GROWTH',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_GROWTH diff --git a/src/arome/chem/internals/ch_aer_init_soa.F90 b/src/arome/chem/internals/ch_aer_init_soa.F90 deleted file mode 100644 index 40e14466bcfafcee4bf7b8307c06c8b85783fd7c..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_init_soa.F90 +++ /dev/null @@ -1,177 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_INIT_SOA(KOUT,KVERB) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################ -!! -!! PURPOSE -!! ------- -!! Realise l'equilibre entre les moments via la masse contenue -!! dans les aerosols, les diametres moyens et la dispersion. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! none -!! -!! EXTERNAL -!! -------- -!! None -!! -USE MODD_CH_AEROSOL -USE MODD_CH_M9, ONLY : CNAMES, NEQ -USE MODD_CH_MNHC_n, ONLY : CCH_SCHEME -USE MODD_NSV, ONLY : NSV_CHEM -!! -IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -INTEGER, INTENT(IN) :: KOUT, KVERB ! stdout output, verbosity level -! -!* 0.2 declarations local variables -! -INTEGER :: JN -!------------------------------------------------------------------------------- -! -! -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ------------------------------------ -! 1.1 initialisation -! -! Definition of gas chemical scheme -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_INIT_SOA',0,ZHOOK_HANDLE) -CCH_SCHEME = "NONE" -DO JN=1, SIZE(CNAMES) - IF (TRIM(CNAMES(JN)) .EQ. "CO") JP_CH_CO = JN - IF (TRIM(CNAMES(JN)) .EQ. "ALKA") CCH_SCHEME = "RELACS" - IF (TRIM(CNAMES(JN)) .EQ. "HC3") CCH_SCHEME = "RACM" - IF (TRIM(CNAMES(JN)) .EQ. "URG1") CCH_SCHEME = "RELACS2" - IF (TRIM(CNAMES(JN)) .EQ. "UR21") CCH_SCHEME = "CACM" -ENDDO -IF (((TRIM(CORGANIC)=="MPMPO").OR.(TRIM(CORGANIC)=="PUN")).AND.& - ((CCH_SCHEME == "RELACS2" .OR. CCH_SCHEME == "CACM"))) THEN - NSOA = 10 -ELSE - NSOA = 0 ! No SOA formation -END IF -! -IF (ALLOCATED(CAERONAMES)) DEALLOCATE(CAERONAMES) -NM6_AER = 0 -IF (LVARSIGI) NM6_AER = 1 -IF (LVARSIGJ) NM6_AER = NM6_AER + 1 -ALLOCATE(CAERONAMES((NSP+NSOA+NCARB+1)*JPMODE+NM6_AER)) -! -! Index gas scheme <=> Index Orilam -JP_CH_SO4I = 1 -JP_CH_SO4J = 2 -JP_CH_NO3I = 3 -JP_CH_NO3J = 4 -JP_CH_NH3I = 5 -JP_CH_NH3J = 6 -JP_CH_H2OI = 7 -JP_CH_H2OJ = 8 -JP_CH_OCI = 9 -JP_CH_OCJ = 10 -JP_CH_BCI = 11 -JP_CH_BCJ = 12 - -JP_CH_M0I = (NCARB + NSP + NSOA)*JPMODE +1 -JP_CH_M0J = (NCARB + NSP + NSOA)*JPMODE +2 -IF (LVARSIGI) JP_CH_M6I = (NCARB + NSP + NSOA)*JPMODE + 3 -IF ((LVARSIGI).AND.(LVARSIGJ)) THEN - JP_CH_M6J = (NCARB + NSP + NSOA)*JPMODE + 4 -ELSE IF ((LVARSIGJ).AND. .NOT.(LVARSIGI)) THEN - JP_CH_M6J = (NCARB + NSP + NSOA)*JPMODE + 3 -END IF - - - ! Name of aerosol component -CAERONAMES(JP_CH_SO4I) = "SO4I" -CAERONAMES(JP_CH_SO4J) = "SO4J" -CAERONAMES(JP_CH_NH3I) = "NH3I" -CAERONAMES(JP_CH_NH3J) = "NH3J" -CAERONAMES(JP_CH_H2OI) = "H2OI" -CAERONAMES(JP_CH_H2OJ) = "H2OJ" -CAERONAMES(JP_CH_NO3I) = "NO3I" -CAERONAMES(JP_CH_NO3J) = "NO3J" -CAERONAMES(JP_CH_BCI) = "BCI" -CAERONAMES(JP_CH_BCJ) = "BCJ" -CAERONAMES(JP_CH_OCI) = "OCI" -CAERONAMES(JP_CH_OCJ) = "OCJ" - -IF (NSOA .EQ. 10) THEN -JP_AER_SOA1 = NCARB + NSP + 1 -JP_AER_SOA2 = NCARB + NSP + 2 -JP_AER_SOA3 = NCARB + NSP + 3 -JP_AER_SOA4 = NCARB + NSP + 4 -JP_AER_SOA5 = NCARB + NSP + 5 -JP_AER_SOA6 = NCARB + NSP + 6 -JP_AER_SOA7 = NCARB + NSP + 7 -JP_AER_SOA8 = NCARB + NSP + 8 -JP_AER_SOA9 = NCARB + NSP + 9 -JP_AER_SOA10= NCARB + NSP + 10 - -JP_CH_SOA1I = 13 -JP_CH_SOA1J = 14 -JP_CH_SOA2I = 15 -JP_CH_SOA2J = 16 -JP_CH_SOA3I = 17 -JP_CH_SOA3J = 18 -JP_CH_SOA4I = 19 -JP_CH_SOA4J = 20 -JP_CH_SOA5I = 21 -JP_CH_SOA5J = 22 -JP_CH_SOA6I = 23 -JP_CH_SOA6J = 24 -JP_CH_SOA7I = 25 -JP_CH_SOA7J = 26 -JP_CH_SOA8I = 27 -JP_CH_SOA8J = 28 -JP_CH_SOA9I = 29 -JP_CH_SOA9J = 30 -JP_CH_SOA10I = 31 -JP_CH_SOA10J = 32 - -CAERONAMES(JP_CH_SOA1I) = "SOA1I" -CAERONAMES(JP_CH_SOA1J) = "SOA1J" -CAERONAMES(JP_CH_SOA2I) = "SOA2I" -CAERONAMES(JP_CH_SOA2J) = "SOA2J" -CAERONAMES(JP_CH_SOA3I) = "SOA3I" -CAERONAMES(JP_CH_SOA3J) = "SOA3J" -CAERONAMES(JP_CH_SOA4I) = "SOA4I" -CAERONAMES(JP_CH_SOA4J) = "SOA4J" -CAERONAMES(JP_CH_SOA5I) = "SOA5I" -CAERONAMES(JP_CH_SOA5J) = "SOA5J" -CAERONAMES(JP_CH_SOA6I) = "SOA6I" -CAERONAMES(JP_CH_SOA6J) = "SOA6J" -CAERONAMES(JP_CH_SOA7I) = "SOA7I" -CAERONAMES(JP_CH_SOA7J) = "SOA7J" -CAERONAMES(JP_CH_SOA8I) = "SOA8I" -CAERONAMES(JP_CH_SOA8J) = "SOA8J" -CAERONAMES(JP_CH_SOA9I) = "SOA9I" -CAERONAMES(JP_CH_SOA9J) = "SOA9J" -CAERONAMES(JP_CH_SOA10I) = "SOA10I" -CAERONAMES(JP_CH_SOA10J) = "SOA10J" -END IF - -CAERONAMES(JP_CH_M0I) = "M0I" -CAERONAMES(JP_CH_M0J) = "M0J" -IF (LVARSIGI) CAERONAMES(JP_CH_M6I) = "M6I" -IF (LVARSIGJ) CAERONAMES(JP_CH_M6J) = "M6J" - -IF (LHOOK) CALL DR_HOOK('CH_AER_INIT_SOA',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_INIT_SOA diff --git a/src/arome/chem/internals/ch_aer_intermin.F90 b/src/arome/chem/internals/ch_aer_intermin.F90 deleted file mode 100644 index e40762080f2d8ab8991daf2c266159116890624e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_intermin.F90 +++ /dev/null @@ -1,125 +0,0 @@ -! ######spl -SUBROUTINE CH_AER_INTERMIN(v, w, x, y, z,zout,KVECNPT) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!include 'chimere.h' !! rhi,tempi,zsu,znh,zni -USE MODD_CH_AEROSOL -IMPLICIT NONE - -! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -! INPUT -! v,w,x,y,z : Coodinates -! OUTPUT -! zout : interpolation results (array) -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -INTEGER :: KVECNPT -INTEGER, PARAMETER :: nc=22 -INTEGER, PARAMETER :: nh=16 -INTEGER, PARAMETER :: nt=11 -INTEGER, DIMENSION(KVECNPT) :: nv0,nv1,nw0,nw1,nx0,nx1,ny0,ny1,nz0,nz1 -INTEGER :: i,IP -DOUBLE PRECISION :: v0,v1,w0,w1,x0,x1,y0,y1,z0,z1,ans -REAL, DIMENSION(:) :: v -DOUBLE PRECISION, DIMENSION(:) :: w, x, y, z -DOUBLE PRECISION :: xv0, xw0, xx0, xy0, xz0 -DOUBLE PRECISION :: xv1, xw1, xx1, xy1, xz1 -DOUBLE PRECISION, DIMENSION(KVECNPT) :: vsav, wsav, xsav, ysav, zsav -DOUBLE PRECISION, DIMENSION(:,:) :: zout -DOUBLE PRECISION :: tempimin,tempimax,zsumin,znhmin, znimin -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_INTERMIN',0,ZHOOK_HANDLE) -vsav=v -wsav=w -ysav=y -xsav=x -zsav=z -!rhimin=MINVAL(rhi(:)) -!rhimax=MAXVAL(rhi(:)) -tempimin=MINVAL(tempi(:)) -tempimax=MAXVAL(tempi(:)) -zsumin=MINVAL(zsu(:)) -!zsumax=MAXVAL(zsu(:)) -znhmin=MINVAL(znh(:)) -!znhmax=MAXVAL(znh(:)) -znimin=MINVAL(zni(:)) -!znimax=MAXVAL(zni(:)) -nv0(:)=MIN(nh-1,MAX(1,MAX(INT((v(:)-0.25)/0.05),INT((v(:)-0.67)/0.02)))) -nw0(:)=MIN(nt-1,MAX(1,INT((nt-1)*(w(:)-tempimin)/(tempimax-tempimin))+1)) -nx0(:)=MIN(nc-1,MAX(1,INT(LOG(MAX(x(:),zsumin)/0.0066)/0.4187))) -ny0(:)=MIN(nc-1,MAX(1,INT(LOG(MAX(y(:),znhmin)/0.0066)/0.4187))) -nz0(:)=MIN(nc-1,MAX(1,INT(LOG(MAX(z(:),znimin)/0.0066)/0.4187))) -! -nv1=nv0+1 -nw1=nw0+1 -nx1=nx0+1 -ny1=ny0+1 -nz1=nz0+1 - -DO i=1,3 - DO IP=1,KVECNPT - v0=rhi(nv0(IP)) ; v1=rhi(nv1(IP)) - w0=tempi(nw0(IP)) ; w1=tempi(nw1(IP)) - x0=zsu(nx0(IP)) ; x1=zsu(nx1(IP)) - y0=znh(ny0(IP)) ; y1=znh(ny1(IP)) - z0=zni(nz0(IP)) ; z1=zni(nz1(IP)) - xv0 = (v(IP)-v1)/(v0-v1) - xw0 = (w(IP)-w1)/(w0-w1) - xx0 = (x(IP)-x1)/(x0-x1) - xy0 = (y(IP)-y1)/(y0-y1) - xz0 = (z(IP)-z1)/(z0-z1) - xv1=1-xv0 - xw1=1-xw0 - xx1=1-xx0 - xy1=1-xy0 - xz1=1-xz0 - ! - ans= 0.0d+00 - ! - ans = ans + zf(nv0(IP),nw0(IP),nx0(IP),ny0(IP),nz0(IP),i)*(xv0)*(xw0)*(xx0)*(xy0)*(xz0) - ans = ans + zf(nv0(IP),nw0(IP),nx0(IP),ny0(IP),nz1(IP),i)*(xv0)*(xw0)*(xx0)*(xy0)*(xz1) - ans = ans + zf(nv0(IP),nw0(IP),nx0(IP),ny1(IP),nz0(IP),i)*(xv0)*(xw0)*(xx0)*(xy1)*(xz0) - ans = ans + zf(nv0(IP),nw0(IP),nx0(IP),ny1(IP),nz1(IP),i)*(xv0)*(xw0)*(xx0)*(xy1)*(xz1) - ans = ans + zf(nv0(IP),nw0(IP),nx1(IP),ny0(IP),nz0(IP),i)*(xv0)*(xw0)*(xx1)*(xy0)*(xz0) - ans = ans + zf(nv0(IP),nw0(IP),nx1(IP),ny0(IP),nz1(IP),i)*(xv0)*(xw0)*(xx1)*(xy0)*(xz1) - ans = ans + zf(nv0(IP),nw0(IP),nx1(IP),ny1(IP),nz0(IP),i)*(xv0)*(xw0)*(xx1)*(xy1)*(xz0) - ans = ans + zf(nv0(IP),nw0(IP),nx1(IP),ny1(IP),nz1(IP),i)*(xv0)*(xw0)*(xx1)*(xy1)*(xz1) - ans = ans + zf(nv0(IP),nw1(IP),nx0(IP),ny0(IP),nz0(IP),i)*(xv0)*(xw1)*(xx0)*(xy0)*(xz0) - ans = ans + zf(nv0(IP),nw1(IP),nx0(IP),ny0(IP),nz1(IP),i)*(xv0)*(xw1)*(xx0)*(xy0)*(xz1) - ans = ans + zf(nv0(IP),nw1(IP),nx0(IP),ny1(IP),nz0(IP),i)*(xv0)*(xw1)*(xx0)*(xy1)*(xz0) - ans = ans + zf(nv0(IP),nw1(IP),nx0(IP),ny1(IP),nz1(IP),i)*(xv0)*(xw1)*(xx0)*(xy1)*(xz1) - ans = ans + zf(nv0(IP),nw1(IP),nx1(IP),ny0(IP),nz0(IP),i)*(xv0)*(xw1)*(xx1)*(xy0)*(xz0) - ans = ans + zf(nv0(IP),nw1(IP),nx1(IP),ny0(IP),nz1(IP),i)*(xv0)*(xw1)*(xx1)*(xy0)*(xz1) - ans = ans + zf(nv0(IP),nw1(IP),nx1(IP),ny1(IP),nz0(IP),i)*(xv0)*(xw1)*(xx1)*(xy1)*(xz0) - ans = ans + zf(nv0(IP),nw1(IP),nx1(IP),ny1(IP),nz1(IP),i)*(xv0)*(xw1)*(xx1)*(xy1)*(xz1) - ans = ans + zf(nv1(IP),nw0(IP),nx0(IP),ny0(IP),nz0(IP),i)*(xv1)*(xw0)*(xx0)*(xy0)*(xz0) - ans = ans + zf(nv1(IP),nw0(IP),nx0(IP),ny0(IP),nz1(IP),i)*(xv1)*(xw0)*(xx0)*(xy0)*(xz1) - ans = ans + zf(nv1(IP),nw0(IP),nx0(IP),ny1(IP),nz0(IP),i)*(xv1)*(xw0)*(xx0)*(xy1)*(xz0) - ans = ans + zf(nv1(IP),nw0(IP),nx0(IP),ny1(IP),nz1(IP),i)*(xv1)*(xw0)*(xx0)*(xy1)*(xz1) - ans = ans + zf(nv1(IP),nw0(IP),nx1(IP),ny0(IP),nz0(IP),i)*(xv1)*(xw0)*(xx1)*(xy0)*(xz0) - ans = ans + zf(nv1(IP),nw0(IP),nx1(IP),ny0(IP),nz1(IP),i)*(xv1)*(xw0)*(xx1)*(xy0)*(xz1) - ans = ans + zf(nv1(IP),nw0(IP),nx1(IP),ny1(IP),nz0(IP),i)*(xv1)*(xw0)*(xx1)*(xy1)*(xz0) - ans = ans + zf(nv1(IP),nw0(IP),nx1(IP),ny1(IP),nz1(IP),i)*(xv1)*(xw0)*(xx1)*(xy1)*(xz1) - ans = ans + zf(nv1(IP),nw1(IP),nx0(IP),ny0(IP),nz0(IP),i)*(xv1)*(xw1)*(xx0)*(xy0)*(xz0) - ans = ans + zf(nv1(IP),nw1(IP),nx0(IP),ny0(IP),nz1(IP),i)*(xv1)*(xw1)*(xx0)*(xy0)*(xz1) - ans = ans + zf(nv1(IP),nw1(IP),nx0(IP),ny1(IP),nz0(IP),i)*(xv1)*(xw1)*(xx0)*(xy1)*(xz0) - ans = ans + zf(nv1(IP),nw1(IP),nx0(IP),ny1(IP),nz1(IP),i)*(xv1)*(xw1)*(xx0)*(xy1)*(xz1) - ans = ans + zf(nv1(IP),nw1(IP),nx1(IP),ny0(IP),nz0(IP),i)*(xv1)*(xw1)*(xx1)*(xy0)*(xz0) - ans = ans + zf(nv1(IP),nw1(IP),nx1(IP),ny0(IP),nz1(IP),i)*(xv1)*(xw1)*(xx1)*(xy0)*(xz1) - ans = ans + zf(nv1(IP),nw1(IP),nx1(IP),ny1(IP),nz0(IP),i)*(xv1)*(xw1)*(xx1)*(xy1)*(xz0) - ans = ans + zf(nv1(IP),nw1(IP),nx1(IP),ny1(IP),nz1(IP),i)*(xv1)*(xw1)*(xx1)*(xy1)*(xz1) - ! - zout(IP,i) = ans - ENDDO -END DO -! -v=vsav -w=wsav -y=ysav -x=xsav -z=zsav -! -IF (LHOOK) CALL DR_HOOK('CH_AER_INTERMIN',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_AER_INTERMIN diff --git a/src/arome/chem/internals/ch_aer_mineral.F90 b/src/arome/chem/internals/ch_aer_mineral.F90 deleted file mode 100644 index 6e7df5eca1a901d4e2f573f7125f1e7ea49a1117..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_mineral.F90 +++ /dev/null @@ -1,199 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_MINERAL(PCTOTG, PCTOTA, PRV, PDENAIR, PPRESSURE, PTEMP, PRC, POM,& - PCCTOT,PSIG0, PRG0,PDT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!########################################################################################### -!! -!! PURPOSE -!! ------- -!! solve the mineral thermodynamic balance -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -!! EXTERNAL -!! -------- -!! None -!! -!------------------------------------------------------------------------------- -! -USE MODD_CH_AEROSOL -USE MODI_CH_NNARES -USE MODI_CH_ARES -USE MODI_CH_ISOROPIA -USE MODI_CH_AER_THERMO -USE MODI_CH_AER_EQSAM -!USE MODI_CH_AER_DIFF -!! -IMPLICIT NONE -! -!* 0.1 Declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG, POM -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0 -REAL, INTENT(IN) :: PDT -! -!* 0.2 Declarations of local variables -! -INTEGER :: JI,JJ -REAL, DIMENSION(SIZE(PCTOTA,1),NSP,JPMODE) :: ZFRAC -REAL, DIMENSION(SIZE(PCTOTA,1),NSP) :: ZTOT,ZTOTNEW, ZTOTGNEW -REAL, DIMENSION(SIZE(PCTOTA,1),NSP+NCARB+NSOA) :: ZDEL -REAL, DIMENSION(SIZE(PCTOTA,1),6) :: ZAER -REAL, DIMENSION(SIZE(PCTOTA,1)) :: ZPKM, ZPKH2O, ZSAT, ZRH - -!***************************************************************** -!***************************************************************** -! SOLVEUR DE L'EQUILIBRE CHIMIQUE MINERAL -!***************************************************************** -!***************************************************************** - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_MINERAL',0,ZHOOK_HANDLE) -ZPKM(:) = 1E-3*PDENAIR(:) * 6.0221367E+23 / 28.9644 -ZPKH2O(:) = ZPKM(:)*1.6077*PRV(:) -! -! compute relative humidity -ZSAT(:)=0.611*EXP(17.2694*(PTEMP(:)-273.16)/(PTEMP(:)-35.86)) -ZSAT(:)=ZSAT(:)*1000. -ZRH(:)=(ZPKH2O(:)/(ZPKM(:)*1.6077))*PPRESSURE(:)/& - &(0.622+(ZPKH2O(:)/(ZPKM(:)*1.6077)))/ZSAT(:) -ZRH(:) = MIN(0.95, MAX(ZRH(:), .1)) ! until 0.95 thermodynamic code is not valid -! -! Mass need to be positive -PCTOTA(:,:,:)= MAX (PCTOTA(:,:,:),0.) -PCTOTG(:,:)= MAX (PCTOTG(:,:),0.) -ZTOTGNEW(:,:)= 0. -! -!****************************************************************** -! Calcul de la repartition des differentes especes entre les modes -! pour pouvoir conserver celle ci apres l'equilibre chimique -!****************************************************************** -DO JI=1,NSP - ZTOTNEW(:,JI)=0. - ZTOT(:,JI)=PCTOTA(:,JI,1)+PCTOTA(:,JI,2) - ZTOT(:,JI) = MAX(ZTOT(:,JI),1.E-40) - ZFRAC(:,JI,1)=PCTOTA(:,JI,1)/(ZTOT(:,JI)+1E-25) - ZFRAC(:,JI,2)=1.-ZFRAC(:,JI,1) -ENDDO -! -ZTOTNEW(:,:) = ZTOT(:,:) -! -ZAER(:,1)=ZTOT(:,JP_AER_SO4) -ZAER(:,2)=PCTOTG(:,JP_AER_NH3g) -ZAER(:,3)=PCTOTG(:,JP_AER_NO3g) -ZAER(:,4)=ZTOT(:,JP_AER_H2O) -!ZAER(:,4)=0. -ZAER(:,5)=ZTOT(:,JP_AER_NO3) -ZAER(:,6)=ZTOT(:,JP_AER_NH3) -ZAER(:,:)=MAX(ZAER(:,:),0.) - -! switch here for ARES (ARES), Neuronal ARES (NARES), ISOROPIA (ISPIA) -IF (CMINERAL == 'NARES') THEN - CALL CH_NNARES(ZAER,ZRH, PDENAIR, PPRESSURE, PTEMP, PRC) - ZAER(:,:)=MAX(ZAER(:,:),0.) - ZTOTNEW(:,JP_AER_SO4)=ZAER(:,1) - ZTOTGNEW(:,JP_AER_NH3g)=ZAER(:,2) - ZTOTGNEW(:,JP_AER_NO3g)=ZAER(:,3) - ZTOTNEW(:,JP_AER_H2O)=ZAER(:,4) - ZTOTNEW(:,JP_AER_NO3)=ZAER(:,5) - ZTOTNEW(:,JP_AER_NH3)=ZAER(:,6) - -! Especes phase gazeuse -!PCTOTG(:,JP_AER_SO4g)=0. !H2SO4(g) -ELSE IF (CMINERAL == 'ARES') THEN -! test of stability -!DO III=1, 5 - CALL CH_ARES(ZAER,ZRH, PDENAIR, PPRESSURE, PTEMP, PRC) - ZAER(:,:) = MAX(ZAER(:,:),0.) - ZTOTNEW(:,JP_AER_SO4)=ZAER(:,1) - ZTOTGNEW(:,JP_AER_NH3g)=ZAER(:,2) - ZTOTGNEW(:,JP_AER_NO3g)=ZAER(:,3) - ZTOTNEW(:,JP_AER_H2O)=ZAER(:,4) - ZTOTNEW(:,JP_AER_NO3)=ZAER(:,5) - ZTOTNEW(:,JP_AER_NH3)=ZAER(:,6) -!ENDDO -! -ELSE IF (CMINERAL == 'ISPIA') THEN -! - CALL CH_ISOROPIA(ZAER,ZRH, PDENAIR, PPRESSURE, PTEMP, PRC) - - ZAER(:,:)=MAX(ZAER(:,:),0.) - ZTOTNEW(:,JP_AER_SO4)=ZAER(:,1) - ZTOTGNEW(:,JP_AER_NH3g)=ZAER(:,2) - ZTOTGNEW(:,JP_AER_NO3g)=ZAER(:,3) - ZTOTNEW(:,JP_AER_H2O)=ZAER(:,4) - ZTOTNEW(:,JP_AER_NO3)=ZAER(:,5) - ZTOTNEW(:,JP_AER_NH3)=ZAER(:,6) -! - -ELSE IF (CMINERAL == 'TABUL') THEN - - CALL CH_AER_THERMO(ZAER,ZRH, PDENAIR, PPRESSURE, PTEMP, PRC) - - ZAER(:,:)=MAX(ZAER(:,:),0.) - ZTOTNEW(:,JP_AER_SO4)=ZAER(:,1) - ZTOTGNEW(:,JP_AER_NH3g)=ZAER(:,2) - ZTOTGNEW(:,JP_AER_NO3g)=ZAER(:,3) - ZTOTNEW(:,JP_AER_H2O)=ZAER(:,4) - ZTOTNEW(:,JP_AER_NO3)=ZAER(:,5) - ZTOTNEW(:,JP_AER_NH3)=ZAER(:,6) - -ELSE IF (CMINERAL == 'EQSAM') THEN - - CALL CH_AER_EQSAM(ZAER,ZRH, PPRESSURE, PTEMP) - - ZAER(:,:)=MAX(ZAER(:,:),0.) - ZTOTNEW(:,JP_AER_SO4)=ZAER(:,1) - ZTOTGNEW(:,JP_AER_NH3g)=ZAER(:,2) - ZTOTGNEW(:,JP_AER_NO3g)=ZAER(:,3) - ZTOTNEW(:,JP_AER_H2O)=ZAER(:,4) - ZTOTNEW(:,JP_AER_NO3)=ZAER(:,5) - ZTOTNEW(:,JP_AER_NH3)=ZAER(:,6) -! -ELSE - -PRINT *,' WARNING WARNING WARNING WARNING WARNING WARNING' -PRINT *,' PAS D EQUILIBRE THERMODYNAMIQUE ENTRE LES MINERAUX' -PRINT *,' WARNING WARNING WARNING WARNING WARNING WARNING' - ZTOTNEW(:,:) = MAX(0.,ZTOT(:,:)) - -ENDIF -! Especes phase gazeuse -ZTOTGNEW(:,JP_AER_SO4g)=0. !H2SO4(g) -ZTOTNEW(:,:) = MAX(0.,ZTOTNEW(:,:)) -! -ZDEL(:,:)=0. -! Concentration des especes 'totales' presentes dans l'aerosol -ZDEL(:,1:NSP)=ZTOTNEW(:,1:NSP)-ZTOT(:,1:NSP) -! -! Calcul de la nouvelle composition chimique -! de chacun des modes apres equilibre chimique -DO JI=1,JPMODE - DO JJ=1,NSP - - !PCTOTA(:,JJ,JI)=MAX(1.E-60,PCTOTA(:,JJ,JI)+ZFRAC(:,JJ,JI)*ZDEL(:,JJ)) - ! répartition entre les modes en fonction de la surface des aerosols (facteur - ! omega) - ! PCTOTA(:,JJ,JI)=MAX(1.E-60,PCTOTA(:,JJ,JI)+ZDEL(:,JJ)*POM(:,JI)) - PCTOTA(:,JJ,JI)=MAX(1.E-60,ZTOTNEW(:,JJ)*POM(:,JI)) - ENDDO -ENDDO -! -DO JJ=1,NSP - PCTOTG(:,JJ)=MAX(1.E-60,PCTOTG(:,JJ)-ZDEL(:,JJ)) -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_AER_MINERAL',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_MINERAL diff --git a/src/arome/chem/internals/ch_aer_mpmpo.F90 b/src/arome/chem/internals/ch_aer_mpmpo.F90 deleted file mode 100644 index 73099cf5ab9b2b97648043802a512ddfe475fbe4..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_mpmpo.F90 +++ /dev/null @@ -1,108 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_MPMPO(PTOT, PTOTG, PTEMP, PRH, PLWC, PPROTON, PTOTNEW,PTOTGNEW,PSOLORG) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!########################################################################################### -!! -!! PURPOSE -!! ------- -!! solve the organic thermodynamic balance using MPMP0 (Griffin et al. 2003, J. Atm. Chem, 44, 171-190)) , -!! if use CACM our ReLACS2 chemical scheme -!! Code updated from Griffin 2005. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Alf Grini / P. Tulet (CNRM) -!! -!! MODIFICATIONS -!! ------------- -!! -!! EXTERNAL -!! -------- -!! None -!-------------------------------------------------------------------------------! -USE MODD_CH_AEROSOL -USE MODD_GLO -USE MODE_OAMAIN -! -IMPLICIT NONE -! -!* 0.1 Declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(IN) :: PTOT ![ug/m3] aerosol conc -REAL, DIMENSION(:,:), INTENT(IN) :: PTOTG ![ug/m3] gas concentration -REAL, DIMENSION(:), INTENT(IN) :: PTEMP, PRH ![K/-] temp and RH -REAL, DIMENSION(:), INTENT(IN) :: PLWC ![ug/m3] liquid water -REAL, DIMENSION(:), INTENT(IN) :: PPROTON ![mole/g_{water]] H+ -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTOTNEW ![ug/m3] new aerosol conc -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTOTGNEW ![ug/m3] new gas conc -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG ! [%] Solubility of SOA (fraction) -! -!* 0.2 Declarations of local variables -! -INTEGER :: JI -REAL, DIMENSION(SIZE(PTOT,1),NSOA) :: ZCPART ![ug/m3] total ORG+AQ+GAS SOA -REAL, DIMENSION(SIZE(PTOT,1),NSOA) :: ZAERO_ORG ![ug/m3] organic phase SOA -REAL, DIMENSION(SIZE(PTOT,1),NAAERO) :: ZAERO_AQ ![ug/m3] aquous phase SOA -REAL, DIMENSION(SIZE(PTOT,1),NSOA) :: ZPARTORG ![ug/m3] particle phase organic -REAL, DIMENSION(SIZE(PTOT,1),NSOA) :: ZGASORG ![ug/m3] gas phase organic -REAL, DIMENSION(SIZE(PTOT,1),NBSPOA) :: ZCPT ![ug/m3] Primary organic aerosol -REAL, DIMENSION(SIZE(PTOT,1)) :: ZORGANION ![mole/m3] negative charge associated with organics -REAL, DIMENSION(SIZE(PTOT,1)) :: ZDELLWC ![ug/m3] liquid water assiciated with organics -REAL, DIMENSION(SIZE(PTOT,1)) :: ZHCONC ![mole/kg_{water}] proton concentration -!------------------------------------------------------------------------------- -! -!cpart = total concentration of secondary species (gas + aero), microgram/m3 -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_MPMPO',0,ZHOOK_HANDLE) -DO JI=NSP+NCARB+1,NSP+NCARB+NSOA - ZCPART(:,JI-NSP-NCARB) = PTOT(:,JI) + PTOTG(:,JI) -END DO -! -!Distribute POA equally between the 8 species..? -DO JI=1,NBSPOA - ZCPT(:,JI) = 1./dble(NBSPOA)*PTOT(:,JP_AER_OC) -ENDDO - -!Save LWC in a local variable (why??) -!ZLWC(:) = PLWC(:) - -! Compute relative humidity (why??) -!ZRH(:)= PRH(:) - -!Compute H+ concentration in right unit -ZHCONC(:) = 1E3 * PPROTON(:) ! conversion in mol H+ / kg solvent -! -!Calling the mpmpo model - -CALL MPMPO( & - PTEMP & !I [K] temperature - ,PRH & !I [0-1] Relative humidity - ,ZCPART & !I [ug/m3] total aerosol (aq+org+gas) - ,ZCPT & !I [ug/m3] primary organic aerosol - ,ZGASORG & !O [ug/m3] gas phase concentration - ,ZAERO_ORG & !O [ug/m3] aerosol phase concentration of organic phase - ,ZAERO_AQ & !O [ug/m3] aerosol phase concentrations of aquous phase - ,ZPARTORG & !O [ug/m3] New total aerosol phase concentrations - ,PLWC & !I [ug/m3] liquid water content already in the aerosols - ,ZHCONC & !I [mole/kg_{water}] proton concentration - ,ZDELLWC & !I [ug/m3] additional liquid water content because of organics - ,ZORGANION & !O [mole/m3] negative charge from organic anions - ,PSOLORG & !IO [%] Solubility of SOA (fraction) - ) -! -! New SOA -DO JI=1,NSOA - PTOTNEW(:,JI+NSP+NCARB) = ZPARTORG(:,JI) - PTOTGNEW(:,JI+NSP+NCARB) = ZGASORG(:,JI) -END DO -! -! New LWC -PTOTNEW(:,JP_AER_H2O) = PLWC(:) + ZDELLWC(:) -! -IF (LHOOK) CALL DR_HOOK('CH_AER_MPMPO',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_MPMPO diff --git a/src/arome/chem/internals/ch_aer_nucl.F90 b/src/arome/chem/internals/ch_aer_nucl.F90 deleted file mode 100644 index 8902b90ac3ad4298a2fa45b243a8c09c67f51b58..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_nucl.F90 +++ /dev/null @@ -1,99 +0,0 @@ -! ######spl -SUBROUTINE CH_AER_NUCL(ZRH,ZT,ZCONC,ZJ,ZAL,KVECNPT) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!########################################################### -! -!! -!! -!! -!! PURPOSE -!! ------- -!! -!! compute nucleation rate for binary sulfate/H2O -!! (Kulmala 1998) -!! -!! AUTHOR -!! ------ -!! F.Cousin * Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! P. Tulet 05/01/04 -!---------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -REAL, DIMENSION(:), INTENT(INOUT) :: ZJ,ZAL -REAL, DIMENSION(:), INTENT(IN) :: ZRH,ZT -REAL, DIMENSION(:), INTENT(INOUT) :: ZCONC -INTEGER, INTENT(IN) :: KVECNPT -INTEGER :: II -REAL, DIMENSION(KVECNPT) :: RA,XH2O,PVH2O,PVH2SO4,KHI,SIG,XNSULFC,XNSULF -REAL :: Kb,TC,T0 - - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_NUCL',0,ZHOOK_HANDLE) -Kb=1.381E-23 -TC = 905.15 -T0 = 360.15 -! 1. Saturation vapor pressure for water (N/m2, T in K) -! (Preining et al, 1981) -PVH2O(:) = EXP(77.344913-7235.4247/ZT(:)-8.2*LOG(ZT(:))+0.0057113*ZT(:)) -! 2. Water concentration (molec/cm3) -XH2O(:) = ZRH(:)*PVH2O(:)/(Kb*ZT(:))/1.E6 - -ZJ(:)=0. -ZAL(:)=0. -WHERE(((ZT(:)>=223.).OR.(ZT(:)<=298)).AND.(ZRH(:)>=0.1)) -! 1. Saturation vapor pressure for water (N/m2, T in K) -! (Preining et al, 1981) - PVH2O(:) = EXP(77.344913-7235.4247/ZT(:)-8.2*LOG(ZT(:))+0.0057113*ZT(:)) -! 2. Water concentration (molec/cm3) - XH2O(:) = ZRH(:)*PVH2O(:)/(Kb*ZT(:))/1.E6 -! 3. Saturation vapor pressure for H2SO4 -! (Kulmala et al 1990, Seinfeld 577p) -!PVH2SO4 = 1./T-1./T0+0.38*T0*(1./T-1./T0)/(TC-T0) -!PVH2SO4 = PVH2SO4 + 0.38/(TC-T0)*LOG(T/T0) -!PVH2SO4 = -10156.0*PVH2SO4 - 0.414 -!PVH2SO4= EXP(PVH2SO4) - PVH2SO4(:)=EXP(-10156./T0+16.259+10156.*(-1./ZT(:)+1./T0+0.38/(TC-T0)*& - (1.+LOG(T0/ZT(:))-T0/ZT(:))))*101325. - -! 4. Relative Acidity - RA(:)=ZCONC(:)*1.E6*(Kb*ZT(:))/PVH2SO4(:) - -END WHERE -! 5. H2SO4 mole fraction in the critical nucleous - DO II=1,SIZE(ZCONC,1) - IF((ZCONC(II)>0.).AND.(XH2O(II)>0.)) THEN - ZAL(II)=1.2233-0.0154*RA(II)/(RA(II)+ZRH(II))+0.0102*& - LOG(ZCONC(II))-0.0415*LOG(XH2O(II))+0.0016*ZT(II) - END IF - END DO - -WHERE(((ZT(:)>=223.).OR.(ZT(:)<=298)).AND.(ZRH(:)>=0.1)) - WHERE(ZAL(:)/=0.) - ! 6. Sulfuric nucleation rate (molec/cm3/s) - XNSULFC(:)=EXP(-14.5125+0.1335*ZT(:)-10.5462*ZRH(:)+1958.4*ZRH(:)/ZT(:)) - SIG(:) = 1.+(ZT(:)-273.15)/273.15 - XNSULF(:)=LOG(ZCONC(:)/XNSULFC(:)) - KHI(:)=25.1289*XNSULF(:)-4890.8*XNSULF(:)/ZT(:)-1743.3/ZT(:)-2.2479*SIG(:)*XNSULF(:)*ZRH(:)+& - 7643.4*ZAL(:)/ZT(:)-1.9712*ZAL(:)*SIG(:)/ZRH(:) - ZJ(:)=EXP(KHI(:)) - END WHERE -END WHERE -!WHERE(RA(:)>1) -! ZJ(:)=0. -!END WHERE - -IF (LHOOK) CALL DR_HOOK('CH_AER_NUCL',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_AER_NUCL diff --git a/src/arome/chem/internals/ch_aer_organic.F90 b/src/arome/chem/internals/ch_aer_organic.F90 deleted file mode 100644 index 5be9608450ede446951d6608193a89f2b7c19a2f..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_organic.F90 +++ /dev/null @@ -1,173 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_ORGANIC(PCTOTG, PCTOTA, PRV, PDENAIR, PPRESSURE, PTEMP, PRC, POM,& - PCCTOT,PSIG0, PRG0, PDT, PSOLORG) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!########################################################################################### -!! -!! PURPOSE -!! ------- -!! solve the organic thermodynamic balance , if use CACM our ReLACS2 chemical -!! scheme -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -!! EXTERNAL -!! -------- -!! None -!! -USE MODD_CH_AEROSOL -USE MODI_CH_AER_MPMPO -USE MODI_CH_AER_PUN -!USE MODI_CH_AER_DIFF - -IMPLICIT NONE -!! -!! Declaration arguments -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG, POM -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -REAL, DIMENSION(:,:), INTENT(IN) :: PSIG0, PRG0 -REAL, INTENT(IN) :: PDT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG - - -!! -!! Declaration variables internes -!! -INTEGER :: II,IJ, JJ -REAL, DIMENSION(SIZE(PCTOTA,1),NSP+NCARB+NSOA) :: ZTOT, ZTOTG, ZTOTNEW, ZTOTGNEW -REAL, DIMENSION(SIZE(PCTOTA,1),NSP+NCARB+NSOA) :: ZDEL -REAL, DIMENSION(SIZE(PCTOTA,1),NSP+NCARB+NSOA) :: ZDIFF -REAL, DIMENSION(SIZE(PCTOTA,1)) :: ZL3DIFF -REAL, DIMENSION(SIZE(PCTOTA,1)) :: ZLWC, ZRH -REAL, DIMENSION(SIZE(PCTOTA,1)) :: ZPROTON, ZNEUTRAL -REAL, DIMENSION(SIZE(PCTOTA,1)) :: ZPSAT, ZPKM, ZPKH2O -INTEGER, SAVE :: ZZZ=0 - - -! INPUTS -! PCTOTG : array of gas phase in microgram / m3 -! PCTOTA : array of aerosol phase in microgram / m3 (last index represents -! lognormal modes) -! PCCTOT : percentage of aerosol mass composition -! For both PCTOTG, PCTOTA and PCCTOT : First dimension is the data of simulation domain -! Second dimension represent the aerosol species -! 1 => NSP : mineral aerosol species -! NSP+1 => NSP + NCARB : primary aerosol species -! NSP + NCARB +1 => NSP + NCARB + NSOA : secondary organic aerosol -! Third dimension (only for PCTOTA and PCCTOT): lognormal mode -! PRESSURE : pressure in hPa -! PDENAIR : air density -! PTEMP : air temperature in K -! PRC : cloud mixing ration in kg/kg (not use now) -! PRV : vapor mixing ration in kg/kg -! PSIG0 : log(sigma) of the distribution -! PRG0 : Mean radius of the lognormal distribution in number of particles -! PDT : Time step (in s) - -!***************************************************************** -!***************************************************************** -! SOLVEUR DE L'EQUILIBRE CHIMIQUE ORGANIC -!***************************************************************** -!***************************************************************** -! Option flag to turn on type B oa module if == 1 -! (type a is iterated, but no need to rerun type b) -! Compute relative humidity -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_ORGANIC',0,ZHOOK_HANDLE) -ZPKM(:) = 1E-3*PDENAIR(:) * 6.0221367E+23 / 28.9644 -ZPKH2O(:) = ZPKM(:)*1.6077*PRV(:) -ZPSAT(:)=0.611*EXP(17.2694*(PTEMP(:)-273.16)/(PTEMP(:)-35.86)) -ZPSAT(:)=ZPSAT(:)*1000. -ZRH(:)=(ZPKH2O(:)/(ZPKM(:)*1.6077))*PPRESSURE(:)/& - &(0.622+(ZPKH2O(:)/(ZPKM(:)*1.6077)))/ZPSAT(:) -ZRH(:) = MIN(0.95, MAX(ZRH(:), .1)) ! until 0.95 thermodynamic code is not valid - - -! Mass need to be positive - PCTOTA(:,:,:)= MAX (PCTOTA(:,:,:),1.E-40) - PCTOTG(:,:) = MAX (PCTOTG(:,:),1.E-40) - - -!****************************************************************** -! Calcul de la repartition des differentes especes entre les modes -! pour pouvoir conserver celle ci apres l'equilibre chimique -!****************************************************************** - -ZTOT(:,:)=0. -DO II=1,NSP+NCARB+NSOA - ZTOTNEW(:,II)=0. - ZTOT(:,II)=PCTOTA(:,II,1)+PCTOTA(:,II,2) - ZTOTG(:,II)=PCTOTG(:,II) -ENDDO - ZTOTNEW(:,:) = ZTOT(:,:) - -ZLWC(:) = ZTOT(:,JP_AER_H2O) - -ZPROTON(:) = 1E-10 - -! Neutralisation H2SO4 + NH3 => H2SO4NH3 -ZNEUTRAL(:) = PCTOTA(:,JP_AER_SO4,1) / 98. - PCTOTA(:,JP_AER_NH3,1) / 17. + & - PCTOTA(:,JP_AER_SO4,2) / 98. - PCTOTA(:,JP_AER_NH3,2) / 17. - -WHERE (ZNEUTRAL(:) .GT. 0.) ! SO4 > NH3 / excess of H2SO4 => SO4-- + 2*H+ - ZNEUTRAL(:) = 2.*ZNEUTRAL(:) -ENDWHERE - - -WHERE(ZLWC(:) .GT. 1.E-20) -ZPROTON(:) = ZNEUTRAL(:) + PCTOTA(:,JP_AER_NO3,1)/63. + PCTOTA(:,JP_AER_NO3,2)/63. -ZPROTON(:) = 1E-10 + ZPROTON(:) / ZLWC(:) ! proton concentration in mole / g water -ENDWHERE -ZPROTON(:) = MIN(MAX(ZPROTON(:), 1E-17),1E-4) - -PSOLORG(:,:) = 0. -IF (TRIM(CORGANIC) == 'PUN') THEN -CALL CH_AER_PUN(ZTOT, ZTOTG, PTEMP, ZRH, ZLWC, ZPROTON, ZTOTNEW, ZTOTGNEW) - -ELSE IF (TRIM(CORGANIC) == 'MPMPO') THEN - -CALL CH_AER_MPMPO(ZTOT, ZTOTG, PTEMP, ZRH, ZLWC, ZPROTON,ZTOTNEW,ZTOTGNEW,PSOLORG) - -ELSE -IF (ZZZ == 0) THEN -PRINT *,' WARNING WARNING WARNING WARNING WARNING WARNING' -PRINT *,' PAS D EQUILIBRE THERMODYNAMIQUE ENTRE LES ORGANIQUES' -PRINT *,' WARNING WARNING WARNING WARNING WARNING WARNING' -ZZZ=1 -END IF -END IF - - -! Calcul de la nouvelle composition chimique -! de chacun des modes apres equilibre chimique -!--------------------------------------------- - -ZDEL(:,:)=0. -! Concentration des especes 'totales' presentes dans l'aerosol -! on repartie la masse en fonction de la surface integree des aerosols (omega) -ZDEL(:,1:NSP+NCARB+NSOA)=ZTOTNEW(:,1:NSP+NCARB+NSOA)-ZTOT(:,1:NSP+NCARB+NSOA) - -DO II=1,JPMODE - DO IJ=NSP+NCARB+1,NSP+NCARB+NSOA - PCTOTA(:,IJ,II)=MAX(1.E-60,PCTOTA(:,IJ,II)+ZDEL(:,IJ)*POM(:,II)) - ENDDO - PCTOTA(:,JP_AER_H2O,II)=MAX(1.E-60,PCTOTA(:,JP_AER_H2O,II)+ZDEL(:,JP_AER_H2O)*POM(:,II)) -ENDDO - DO IJ=NSP+NCARB+1,NSP+NCARB+NSOA - PCTOTG(:,IJ)=ZTOTGNEW(:,IJ) - ENDDO - - -IF (LHOOK) CALL DR_HOOK('CH_AER_ORGANIC',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_ORGANIC diff --git a/src/arome/chem/internals/ch_aer_pun.F90 b/src/arome/chem/internals/ch_aer_pun.F90 deleted file mode 100644 index 3dcfede66bc2a6269d341cdadf53494b168db5e7..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_pun.F90 +++ /dev/null @@ -1,176 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_PUN(PTOT, PTOTG,PTEMP, PRH, PLWC, PPROTON, PTOTNEW, PTOTGNEW) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!########################################################################################### -!! -!! PURPOSE -!! ------- -!! solve the organic thermodynamic balance , if use CACM our ReLACS2 chemical -!! scheme -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! A. Grini / P. Tulet (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -!! EXTERNAL -!! -------- -!! None -!! -USE MODD_CH_AEROSOL -!! -!! ORGANIC AEROSOL MODULE -USE MODD_GLO -USE MODE_OAMAIN - -IMPLICIT NONE -!! -!! Declaration arguments -REAL, DIMENSION(:,:), INTENT(IN) :: PTOT, PTOTG -REAL, DIMENSION(:), INTENT(IN) :: PTEMP, PRH -REAL, DIMENSION(:), INTENT(INOUT) :: PLWC, PPROTON -REAL, DIMENSION(:,:), INTENT(OUT) :: PTOTNEW, PTOTGNEW - - -!! -!! Declaration variables internes -!! -INTEGER :: IFLAG=1 !Flag to do iterations or not for type B aerosols -REAL, DIMENSION(SIZE(PTOT,1), NBSPA+NBSPB) :: ZAER -REAL, DIMENSION(SIZE(PTOT,1),NBSPA+NBSPB) :: ZGAS -REAL, DIMENSION(SIZE(PTOT,1),NBSPA+NBSPB) :: ZWORG ![ug/m3] total (gas+aerosol) SOA -REAL, DIMENSION(SIZE(PTOT,1)) :: ZPROTON ![mole/kg_{water}] proton concentration -!The only use of these variables which would make sense, would be -!to have them as intent OUT and send them back to the inorganic module -REAL, DIMENSION(SIZE(PTOT,1)) :: ZORGANION -REAL, DIMENSION(SIZE(PTOT,1)) :: ZDELTALWC -REAL, DIMENSION(SIZE(PTOT,1)) :: ZPAOM - -!Fraction of primary aerosol assumed to be butadionic acid -REAL, PARAMETER :: ZPOA_TO_BUTACID=0.01d0 !1% - - -! For all variables: -! First dimension is the data of simulation domain -! Second dimension represent the aerosol species -! 1 => NSP : mineral aerosol species -! NSP+1 => NSP + NCARB : primary aerosol species -! NSP + NCARB +1 => NSP + NCARB + NSOA : secondary organic aerosol -! Third dimension (only for PCTOTA and PCCTOT): lognormal mode - -!***************************************************************** -!***************************************************************** -! SOLVEUR DE L'EQUILIBRE CHIMIQUE PUN -!***************************************************************** -!***************************************************************** -! Option flag to turn on type B oa module if == 1 -! (type a is iterated, but no need to rerun type b) - -!PPROTON(:) = MAX(PPROTON(:), 0.) -!PLWC(:) = MAX(PLWC(:), 0.) -!ZLWC(:) = PLWC(:) -!ZRH(:) = PRH(:) -!ZTEMP(:) = PTEMP(:) - -!Convert proton concentration to right units -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_PUN',0,ZHOOK_HANDLE) -ZPROTON(:)= PPROTON(:)*1.d3 ![mol/g_{water}] ==> [mole/kg_{water}] -!Initialize (don't think it is needed) -!ZORGANION(:) = 0. -!ZDELTALWC(:) = 0. - -!Concentration of water soluble species (1-6) -ZAER(:,1)=PTOT(:,JP_AER_SOA1) -ZAER(:,2)=PTOT(:,JP_AER_SOA2) -ZAER(:,3)=PTOT(:,JP_AER_SOA3) -ZAER(:,4)=PTOT(:,JP_AER_SOA4) -ZAER(:,5)=PTOT(:,JP_AER_SOA5) -!assume butadionic acid is a fraction of primary -ZAER(:,6)=ZPOA_TO_BUTACID*PTOT(:,JP_AER_OC) -!Concentration of organic species (7-11) -ZAER(:,7)=PTOT(:,JP_AER_SOA6) -ZAER(:,8)=PTOT(:,JP_AER_SOA7) -ZAER(:,9)=PTOT(:,JP_AER_SOA8) -ZAER(:,10)=PTOT(:,JP_AER_SOA9) -ZAER(:,11)=PTOT(:,JP_AER_SOA10) - -ZGAS(:,1)=PTOTG(:,JP_AER_SOA1) -ZGAS(:,2)=PTOTG(:,JP_AER_SOA2) -ZGAS(:,3)=PTOTG(:,JP_AER_SOA3) -ZGAS(:,4)=PTOTG(:,JP_AER_SOA4) -ZGAS(:,5)=PTOTG(:,JP_AER_SOA5) -ZGAS(:,6)=0. - -ZGAS(:,7)=PTOTG(:,JP_AER_SOA6) -ZGAS(:,8)=PTOTG(:,JP_AER_SOA7) -ZGAS(:,9)=PTOTG(:,JP_AER_SOA8) -ZGAS(:,10)=PTOTG(:,JP_AER_SOA9) -ZGAS(:,11)=PTOTG(:,JP_AER_SOA10) - -!Get total organic aerosol -ZWORG(:,:) = ZGAS(:,:) + ZAER(:,:) - - -!ZWORG(:,11) = 0. ! non volatil organic coupounds for absorbing medium (primary aerosol as butanedioic acid) -!Get primary organic aerosol -ZPAOM(:)=PTOT(:,JP_AER_OC)*(1.d0-ZPOA_TO_BUTACID) - -CALL PUN( & - PTEMP & !I [K] Temperature - ,PRH & !I [-] Relative humidity - ,ZWORG & !I [ug/m3] total (aerosol+gas) conc - ,ZGAS & !O [ug/m3] gas phase concentrations - ,ZPAOM & !I [ug/m3] Primary aerosol organic matter - ,ZAER & !O [ug/m3] aerosol phase concentrations - ,PLWC & !I [ug/m3] liquid water content - ,ZPROTON & !I [mol/kg_{water}] H+ concentrations - ,ZDELTALWC & !O [ug/m3] change in LWC - ,ZORGANION & !O [mole//m3] anion charge - ,IFLAG & !I [1/0] Flag for iteration or not - ) - -!aerosol concentration of hydrophilic -PTOTNEW(:,JP_AER_SOA1)=ZAER(:,1) -PTOTNEW(:,JP_AER_SOA2)=ZAER(:,2) -PTOTNEW(:,JP_AER_SOA3)=ZAER(:,3) -PTOTNEW(:,JP_AER_SOA4)=ZAER(:,4) -PTOTNEW(:,JP_AER_SOA5)=ZAER(:,5) - -!aerosol concentration of hydrophobic -PTOTNEW(:,JP_AER_SOA6)=ZAER(:,7) -PTOTNEW(:,JP_AER_SOA7)=ZAER(:,8) -PTOTNEW(:,JP_AER_SOA8)=ZAER(:,9) -PTOTNEW(:,JP_AER_SOA9)=ZAER(:,10) -PTOTNEW(:,JP_AER_SOA10)=ZAER(:,11) - -!Gasesous concentration of hydrophilic -PTOTGNEW(:,JP_AER_SOA1)=ZGAS(:,1) -PTOTGNEW(:,JP_AER_SOA2)=ZGAS(:,2) -PTOTGNEW(:,JP_AER_SOA3)=ZGAS(:,3) -PTOTGNEW(:,JP_AER_SOA4)=ZGAS(:,4) -PTOTGNEW(:,JP_AER_SOA5)=ZGAS(:,5) - -!Gasesous concentration of hydrophobic -PTOTGNEW(:,JP_AER_SOA6)=ZGAS(:,7) -PTOTGNEW(:,JP_AER_SOA7)=ZGAS(:,8) -PTOTGNEW(:,JP_AER_SOA8)=ZGAS(:,9) -PTOTGNEW(:,JP_AER_SOA9)=ZGAS(:,10) -PTOTGNEW(:,JP_AER_SOA10)=ZGAS(:,11) - -!New water content -PTOTNEW(:,JP_AER_H2O)=PTOT(:,JP_AER_H2O)+ZDELTALWC(:) - -!Convert back ZPROTON to right units -!mole/kg ==> mole/g -PPROTON(:) = ZPROTON(:)*1.d-3 - -IF (LHOOK) CALL DR_HOOK('CH_AER_PUN',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_PUN diff --git a/src/arome/chem/internals/ch_aer_reallfi_n.F90 b/src/arome/chem/internals/ch_aer_reallfi_n.F90 deleted file mode 100644 index a91aecbc1bc2a655f0ac932a7b908564250c4794..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_reallfi_n.F90 +++ /dev/null @@ -1,288 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_REALLFI_n(PSV, PCO, PRHODREF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################ -!! -!! PURPOSE -!! ------- -!! Initialise des valeurs constantes pour les mineraux -!! Initialise des valeurs proportionnelles au monoxyde de carbone pour OC et BC -!! Realise l'équilibre des moments à partir du sigma et du diametre moyen -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! none -!! -!! EXTERNAL -!! -------- -!! None -!! -!USE MODE_ll - -USE MODD_CH_AEROSOL -USE MODD_CH_AERO_n -USE MODD_CH_MNHC_n , ONLY : CCH_SCHEME -USE MODD_NSV -!! -IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCO -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -! -! -!* 0.2 declarations local variables -! -REAL,DIMENSION(SIZE(PSV,1),SIZE(PSV,2),SIZE(PSV,3),NSP+NCARB+NSOA,JPMODE) :: ZCTOTA -REAL,DIMENSION(NSP+NCARB+NSOA) :: ZFAC, ZMI, ZRHOI -REAL,DIMENSION(SIZE(PSV,1),SIZE(PSV,2),SIZE(PSV,3),JPIN) :: ZM -REAL,DIMENSION(SIZE(PSV,1),SIZE(PSV,2),SIZE(PSV,3),JPMODE) :: ZRG, ZSIG, ZN -REAL,DIMENSION(SIZE(PSV,1),SIZE(PSV,2),SIZE(PSV,3)) :: ZSIGMA -REAL :: ZPI, ZCOEFAEROBC, ZCOEFAEROOC, ZSUMAEROCO -INTEGER :: NJAERO, NIAERO -INTEGER :: JJ, JN ! loop counter -REAL :: ZDEN2MOL, ZVALBC, ZVALOC -REAL :: ZINIRADIUSI, ZINIRADIUSJ -! -!------------------------------------------------------------------------------- -! -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ------------------------------------ -! 1.1 initialisation - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_REALLFI_N',0,ZHOOK_HANDLE) -IF (CRGUNIT=="MASS") THEN - ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) - ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) -ELSE - ZINIRADIUSI = XINIRADIUSI - ZINIRADIUSJ = XINIRADIUSJ -END IF -! -! Moments index -NM0(1) = 1 -NM3(1) = 2 -NM6(1) = 3 -NM0(2) = 4 -NM3(2) = 5 -NM6(2) = 6 -! -! Default values of molar mass -ZMI(:) = 12. -ZMI(JP_AER_SO4) = 98. -ZMI(JP_AER_NO3) = 63. -ZMI(JP_AER_NH3) = 17. -ZMI(JP_AER_H2O) = 18. -! -IF (NSOA .EQ. 10) THEN -ZMI(JP_AER_SOA1) = 88. -ZMI(JP_AER_SOA2) = 180. -ZMI(JP_AER_SOA3) = 1.5374857E+02 -ZMI(JP_AER_SOA4) = 1.9586780E+02 -ZMI(JP_AER_SOA5) = 195. -ZMI(JP_AER_SOA6) = 195. -ZMI(JP_AER_SOA7) = 165. -ZMI(JP_AER_SOA8) = 195. -ZMI(JP_AER_SOA9) = 270. -ZMI(JP_AER_SOA10) = 210. -END IF - -! Aerosol Density -! Cf Ackermann (all to black carbon except water) -ZRHOI(:) = 1.8e3 -ZRHOI(JP_AER_H2O) = 1.0e3 ! water -! -PSV(:,:,:,:) = MAX(PSV(:,:,:,:), 0.) -PCO(:,:,:) = MAX(PCO(:,:,:), 10.E-9*PRHODREF(:,:,:)) -! -! Special treatment for BC and OC (link to CO gaseous concentration) - -IF (LINITPM) THEN -NIAERO=SIZE(PSV,1)-1 -NJAERO=SIZE(PSV,2)-1 -ZSUMAEROCO=SUM(PCO(2:NIAERO,2:NJAERO,2))/& - ((NIAERO-1)*(NJAERO-1)) - - -!ZVALBC=1.28058E-9 ! value in kg/m3 (escompte values) -!ZVALOC=2.304978E-9 ! value in kg/m3 (escompte values) -ZVALBC=1.E-9 ! value in kg/m3 (default values) -ZVALOC=2.E-9 ! value in kg/m3 (default values) -ZVALBC= ZVALBC *24.47 / 12. ! conversion into ppp -ZVALOC= ZVALOC *24.47 / 12. ! conversion into ppp -ZCOEFAEROBC=ZVALBC/ZSUMAEROCO -ZCOEFAEROOC=ZVALOC/ZSUMAEROCO - -PSV(:,:,:,JP_CH_BCi)=PCO(:,:,:) * ZCOEFAEROBC / 2. -PSV(:,:,:,JP_CH_BCj)=PCO(:,:,:) * ZCOEFAEROBC / 2. -PSV(:,:,:,JP_CH_OCi)=PCO(:,:,:) * ZCOEFAEROOC / 2. -PSV(:,:,:,JP_CH_OCj)=PCO(:,:,:) * ZCOEFAEROOC / 2. -END IF - -! -! -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD -! -! conversion into mol.cm-3 -DO JJ=1, NSV_AER - PSV(:,:,:,JJ) = PSV(:,:,:,JJ) * ZDEN2MOL * PRHODREF(:,:,:) -ENDDO -! -ZPI = 2.*ASIN(1.) -DO JJ=1,NSP+NCARB+NSOA - ZFAC(JJ)=(4./3.)*ZPI*ZRHOI(JJ)*1.e-9 -ENDDO -! -! -!* 1.n transfer aerosol mass from gas to aerosol variables -! (and conversion of mol.cm-3 --> microgram/m3) -! -! aerosol phase -ZCTOTA(:,:,:,JP_AER_SO4,1) = PSV(:,:,:,JP_CH_SO4i)*ZMI(JP_AER_SO4)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_SO4,2) = PSV(:,:,:,JP_CH_SO4j)*ZMI(JP_AER_SO4)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_NO3,1) = PSV(:,:,:,JP_CH_NO3i)*ZMI(JP_AER_NO3)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_NO3,2) = PSV(:,:,:,JP_CH_NO3j)*ZMI(JP_AER_NO3)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_NH3,1) = PSV(:,:,:,JP_CH_NH3i)*ZMI(JP_AER_NH3)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_NH3,2) = PSV(:,:,:,JP_CH_NH3j)*ZMI(JP_AER_NH3)/6.0221367E+11 -! -! water -ZCTOTA(:,:,:,JP_AER_H2O,1) = PSV(:,:,:,JP_CH_H2Oi)*ZMI(JP_AER_H2O)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_H2O,2) = PSV(:,:,:,JP_CH_H2Oj)*ZMI(JP_AER_H2O)/6.0221367E+11 -! -! primary organic carbon -ZCTOTA(:,:,:,JP_AER_OC,1) = PSV(:,:,:,JP_CH_OCi)*ZMI(JP_AER_OC)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_OC,2) = PSV(:,:,:,JP_CH_OCj)*ZMI(JP_AER_OC)/6.0221367E+11 -! -! primary black carbon -ZCTOTA(:,:,:,JP_AER_BC,1) = PSV(:,:,:,JP_CH_BCi)*ZMI(JP_AER_BC)/6.0221367E+11 -ZCTOTA(:,:,:,JP_AER_BC,2) = PSV(:,:,:,JP_CH_BCj)*ZMI(JP_AER_BC)/6.0221367E+11 -! -IF (NSOA .EQ. 10) THEN - ZCTOTA(:,:,:,JP_AER_SOA1,1) = PSV(:,:,:,JP_CH_SOA1i)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA1,2) = PSV(:,:,:,JP_CH_SOA1j)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,1) = PSV(:,:,:,JP_CH_SOA2i)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,2) = PSV(:,:,:,JP_CH_SOA2j)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,1) = PSV(:,:,:,JP_CH_SOA3i)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,2) = PSV(:,:,:,JP_CH_SOA3j)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,1) = PSV(:,:,:,JP_CH_SOA4i)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,2) = PSV(:,:,:,JP_CH_SOA4j)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,1) = PSV(:,:,:,JP_CH_SOA5i)*ZMI(JP_AER_SOA5)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,2) = PSV(:,:,:,JP_CH_SOA5j)*ZMI(JP_AER_SOA5)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_SOA6,1) = PSV(:,:,:,JP_CH_SOA6i)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA6,2) = PSV(:,:,:,JP_CH_SOA6j)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,1) = PSV(:,:,:,JP_CH_SOA7i)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,2) = PSV(:,:,:,JP_CH_SOA7j)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,1) = PSV(:,:,:,JP_CH_SOA8i)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,2) = PSV(:,:,:,JP_CH_SOA8j)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,1) = PSV(:,:,:,JP_CH_SOA9i)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,2) = PSV(:,:,:,JP_CH_SOA9j)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,1) = PSV(:,:,:,JP_CH_SOA10i)*ZMI(JP_AER_SOA10)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,2) = PSV(:,:,:,JP_CH_SOA10j)*ZMI(JP_AER_SOA10)/6.0221367E+11 -END IF - - - -! -!* 1.1 calculate moment 3 from total aerosol mass -! -ZM(:,:,:,2) = 0. -ZM(:,:,:,5) = 0. -DO JJ = 1,NSP+NCARB+NSOA - ZM(:,:,:,2) = ZM(:,:,:,2)+ZCTOTA(:,:,:,JJ,1)/ZFAC(JJ) - ZM(:,:,:,5) = ZM(:,:,:,5)+ZCTOTA(:,:,:,JJ,2)/ZFAC(JJ) -ENDDO -! -! -!* 1.2 calculate moment 0 from dispersion and mean radius -! -ZM(:,:,:,1)= ZM(:,:,:,2) / & - ((ZINIRADIUSI**3)*EXP(4.5 * (LOG(XINISIGI))**2)) -ZM(:,:,:,4)= ZM(:,:,:,5) / & - ((ZINIRADIUSJ**3)*EXP(4.5 * (LOG(XINISIGJ))**2)) -! -!* 1.3 calculate moment 6 from dispersion and mean radius -! -ZM(:,:,:,3) = ZM(:,:,:,1) * (ZINIRADIUSI**6) *EXP(18 *(LOG(XINISIGI))**2) -ZM(:,:,:,6) = ZM(:,:,:,4) * (ZINIRADIUSJ**6) *EXP(18 *(LOG(XINISIGJ))**2) -! -PSV(:,:,:,JP_CH_M0i) = ZM(:,:,:,1) * 1E-6 -PSV(:,:,:,JP_CH_M0j) = ZM(:,:,:,4) * 1E-6 -IF (LVARSIGI) PSV(:,:,:,JP_CH_M6i) = ZM(:,:,:,3) -IF (LVARSIGJ) PSV(:,:,:,JP_CH_M6j) = ZM(:,:,:,6) -! -DO JN=1,JPMODE - IF (JN .EQ. 1) THEN - ! - IF (LVARSIGI) THEN ! variable dispersion for mode 1 - ZSIGMA(:,:,:)=ZM(:,:,:,NM3(JN))**2/(ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM6(JN))) - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - WHERE (ZSIGMA(:,:,:) > XSIGIMAX) - ZSIGMA(:,:,:) = XSIGIMAX - END WHERE - WHERE (ZSIGMA(:,:,:) < XSIGIMIN) - ZSIGMA(:,:,:) = XSIGIMIN - END WHERE - ELSE ! fixed dispersion for mode 1 - ZSIGMA(:,:,:) = XINISIGI - END IF - END IF - ! - IF (JN .EQ. 2) THEN - ! - IF (LVARSIGJ) THEN ! variable dispersion for mode 2 - ZSIGMA(:,:,:)=ZM(:,:,:,NM3(JN))**2/(ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM6(JN))) - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - WHERE (ZSIGMA(:,:,:) > XSIGJMAX) - ZSIGMA(:,:,:) = XSIGJMAX - END WHERE - WHERE (ZSIGMA(:,:,:) < XSIGJMIN) - ZSIGMA(:,:,:) = XSIGJMIN - END WHERE - ELSE ! fixed dispersion for mode 2 - ZSIGMA(:,:,:) = XINISIGJ - END IF - END IF -! -!* 1.4 calculate modal parameters from moments -! - ZSIG(:,:,:,JN) = ZSIGMA(:,:,:) - ZN(:,:,:,JN) = ZM(:,:,:,NM0(JN)) -! - ZSIGMA(:,:,:)=LOG(ZSIG(:,:,:,JN))**2 -! - ZRG(:,:,:,JN)=(ZM(:,:,:,NM3(JN))/ZN(:,:,:,JN))**(1./3.)*EXP(-1.5*ZSIGMA(:,:,:)) -! -ENDDO -! -!conversion into ppp -DO JJ=1,NSV_AER - PSV(:,:,:,JJ) = PSV(:,:,:,JJ) / (ZDEN2MOL*PRHODREF(:,:,:)) -ENDDO -! -! -IF (LHOOK) CALL DR_HOOK('CH_AER_REALLFI_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_REALLFI_n diff --git a/src/arome/chem/internals/ch_aer_sedim_n.F90 b/src/arome/chem/internals/ch_aer_sedim_n.F90 deleted file mode 100644 index 16131419c47bd3aa689b721c3a3b853f0ea8e205..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_sedim_n.F90 +++ /dev/null @@ -1,232 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_SEDIM_n(PDTMONITOR,PSVT,PTHT,& - PRHODREF,PPABST, PVDEPAERO, PZZ, PSEDA) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (GMEI) / Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -! Entry variables: -! -! PM(IN) -Array of moments -! -!************************************************************* -! Exit variables: -! -! PDMDEPOS(IN) -Array of moment variation due to dry deposition -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! ZVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!! IMPLICIT ARGUMENTS -! -USE MODD_CH_AEROSOL -USE MODD_CH_AERO_n -USE MODI_CH_AER_VELGRAV_n -USE MODE_AERO_PSD -! -! -IMPLICIT NONE -! -!* 0.1 Declarations of arguments -! -REAL, INTENT(IN) :: PDTMONITOR -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSVT -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT,PRHODREF, PZZ -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PVDEPAERO -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSEDA -! -!* 0.2 Declarations of local variables -! -INTEGER :: JT, JN, JJ, JK -INTEGER :: ISPLITA -REAL :: ZTSPLITR -REAL, DIMENSION(JPIN) :: ZPMIN -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),JPMODE) :: ZRG, ZSIG, ZRHOP -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),JPMODE*3) :: ZPM, ZFLUXSED, ZFLUXMAX, ZPMOLD -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZW,ZH,ZMU -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),JPMODE*3) :: ZVGK, ZDPK -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),JPMODE) :: ZVG -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZSUM -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZVSNUMMAX -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),NSP+NCARB+NSOA,JPMODE) :: ZCTOTA, ZCCTOT -REAL :: ZVSMAX, ZHMIN -REAL :: ZINIRADIUSI, ZINIRADIUSJ, ZRGMIN -INTEGER :: ILU ! indice K End in z direction -!------------------------------------------------------------------------------- -! -!* 1.1 compute dimensions of arrays -! -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_SEDIM_N',0,ZHOOK_HANDLE) -ILU = SIZE(PSVT,3) -1 - -ZMU(:,:,:) = 0. -ZH(:,:,:) = 0. -ZW(:,:,:) = 0. -ZVGK(:,:,:,:) = 0. -ZVG(:,:,:,:) = 0. -ZDPK(:,:,:,:) = 0. -ZFLUXSED(:,:,:,:) = 0. -! -IF (CRGUNIT=="MASS") THEN - ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) - ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) -ELSE - ZINIRADIUSI = XINIRADIUSI - ZINIRADIUSJ = XINIRADIUSJ -END IF -! -!Get minimum values possible -ZPMIN(1) = XN0IMIN -ZRGMIN = XCOEFRADIMIN * ZINIRADIUSI -ZPMIN(2) = ZPMIN(1) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGIMIN)**2) -ZPMIN(3) = ZPMIN(1) * (ZRGMIN**6)*EXP(18. * LOG(XSIGIMIN)**2) -ZPMIN(4) = XN0JMIN -ZRGMIN = XCOEFRADJMIN * ZINIRADIUSJ -ZPMIN(5) = ZPMIN(4) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGJMIN)**2) -ZPMIN(6) = ZPMIN(4) * (ZRGMIN**6)*EXP(18. * LOG(XSIGJMIN)**2) -! -! -CALL PPP2AERO(PSVT, PRHODREF, & - PSIG3D=ZSIG, PRG3D=ZRG, PCTOTA=ZCTOTA, PM3D=ZPM) -! -ZPMOLD(:,:,:,:) = ZPM(:,:,:,:) -! -ZRHOP(:,:,:,:) = 0. -ZCCTOT(:,:,:,:,:)= 0. -DO JN=1,JPMODE - ZSUM(:,:,:)=0. - DO JJ=1,NSP+NCARB+NSOA - ZSUM(:,:,:)=ZSUM(:,:,:)+ZCTOTA(:,:,:,JJ,JN)/XRHOI(JJ) - END DO - DO JJ=1,NSP+NCARB+NSOA - ZCCTOT(:,:,:,JJ,JN) = ZCTOTA(:,:,:,JJ,JN)/XRHOI(JJ)/ZSUM(:,:,:) - ZRHOP(:,:,:,JN)=ZRHOP(:,:,:,JN)+ZCCTOT(:,:,:,JJ,JN)*XRHOI(JJ) - ENDDO -ENDDO -! -CALL CH_AER_VELGRAV_n(ZSIG, ZRG, PTHT, PPABST, PRHODREF, & - ZRHOP, ZMU, ZVGK, ZDPK,ZVG) -! -! Compute time-splitting condition -ZH=9999. -ZVSNUMMAX(:,:,:) = 0. -DO JK=1,ILU - ZH(:,:,JK)=PZZ(:,:,JK+1)-PZZ(:,:,JK) - ! Maximum velocity is 10 m/s - ZVSNUMMAX(:,:,JK) = MIN(10. *ZH(:,:,JK) / PDTMONITOR,20.) -END DO -ZHMIN=MINVAL(ZH(:,:,1:ILU)) -! -ZFLUXSED(:,:,:,:) = 0. -ZFLUXMAX(:,:,:,:) = 0. -! -DO JN=1,JPIN - ! - ZVGK(:,:,1:ILU,JN) = MIN(ZVGK(:,:,1:ILU,JN), ZVSNUMMAX(:,:,1:ILU)) - ! - !PVDEPAERO(:,:,JN) = MIN(PVDEPAERO(:,:,JN), ZVSNUMMAX(:,:,1)) - PVDEPAERO(:,:,JN) = MIN(ZVGK(:,:,1,JN), ZVSNUMMAX(:,:,1)) - ! - ZVSMAX=MAXVAL(ZVGK(:,:,1:ILU,JN)) - ! - ISPLITA = INT(ZVSMAX*PDTMONITOR/ZHMIN)+1 - ISPLITA = MIN(50, ISPLITA) - ! - ZTSPLITR = PDTMONITOR / FLOAT(ISPLITA) - ! - DO JT=1,ISPLITA - ZFLUXSED(:,:,1:ILU+1,JN)= ZVGK(:,:,1:ILU+1,JN)* ZPM(:,:,1:ILU+1,JN) -! first level: aerosol dry deposition velocity (turbulence + gravitation) - ZFLUXSED(:,:,1,JN) = PVDEPAERO(:,:,JN)* ZPM(:,:,1,JN) - DO JK=1,ILU - ZW(:,:,JK) = ZTSPLITR /(PZZ(:,:,JK+1)-PZZ(:,:,JK)) - END DO - ! - ZFLUXMAX(:,:,1:ILU,JN) = ZPM(:,:,1:ILU,JN) / ZW(:,:,1:ILU) - ZFLUXSED(:,:,1:ILU,JN) = MAX(MIN(ZFLUXSED(:,:,1:ILU,JN), ZFLUXMAX(:,:,1:ILU,JN)),0.) - ! - DO JK=1,ILU - ZPM(:,:,JK,JN)= ZPM(:,:,JK,JN) + & - ZW(:,:,JK)*(ZFLUXSED(:,:,JK+1,JN)- ZFLUXSED(:,:,JK,JN)) - - END DO - END DO - ! - ! No variation more than 10 % each time step. - ! - ZPM(:,:,:,JN) = MIN(MAX(ZPM(:,:,:,JN),0.90*ZPMOLD(:,:,:,JN)),1.10*ZPMOLD(:,:,:,JN)) -! -END DO -! -DO JN=1,JPMODE -! Calcul pour maintenir le rayon fixe pour la sedimentation : - IF (LRGFIX) THEN - ZPM(:,:,:,NM3(JN)) = ZPM(:,:,:,NM0(JN)) *& - (ZRG(:,:,:,JN)**3)*EXP(4.5 * LOG(ZSIG(:,:,:,JN))**2) - ENDIF - -! Calcul pour maintenir la dispersion fixe pour la sedimentation : -! sinon Rg augmente lors de la reconstruction d'une loi log-normale -! a partir des nouveau Mk (sigma diminue plus vite que Rg) - -! calcul de M6 en conservant sigma -ZPM(:,:,1:ILU, NM6(JN)) = ZPM(:,:,1:ILU,NM0(JN)) & - * ( (ZPM(:,:,1:ILU,NM3(JN))/ZPM(:,:,1:ILU,NM0(JN)))**(1./3.) & - * exp(-(3./2.)*LOG(ZSIG(:,:,1:ILU,JN))**2))**6 & - * exp(18.*LOG(ZSIG(:,:,1:ILU,JN))**2) - - IF ((GSEDFIX).AND.& - (((JN .EQ. 1).AND. (LVARSIGI)).OR.& - ((JN .EQ. 2).AND. (LVARSIGJ)))) THEN -! calcul de M6 en conservant Rg - ZPM(:,:,2:ILU,NM6(JN)) = ZPM(:,:,2:ILU,NM3(JN)) ** 4 / & - (ZRG(:,:,2:ILU,JN)**6 * ZPM(:,:,2:ILU,NM0(JN))**3) - - END IF -END DO -! -IF (GSEDFIX) THEN - GSEDFIX = .FALSE. -ELSE - GSEDFIX = .TRUE. -END IF -! -PSEDA(:,:,:,:) = 0. -DO JN=1,JPMODE - WHERE ((ZPM(:,:,:,NM0(JN)) .LE. ZPMIN(NM0(JN))).OR.& - (ZPM(:,:,:,NM3(JN)) .LE. ZPMIN(NM3(JN))).OR.& - (ZPM(:,:,:,NM6(JN)) .LE. ZPMIN(NM6(JN)))) - ZPM(:,:,:,NM0(JN)) = ZPMOLD(:,:,:,NM0(JN)) - ZPM(:,:,:,NM3(JN)) = ZPMOLD(:,:,:,NM3(JN)) - ZPM(:,:,:,NM6(JN)) = ZPMOLD(:,:,:,NM6(JN)) - END WHERE -ENDDO -! -DO JN=1,JPIN - PSEDA(:,:,1:ILU,JN) = (ZPM(:,:,1:ILU,JN) - & - ZPMOLD(:,:,1:ILU,JN)) / PDTMONITOR -END DO -! -IF (LHOOK) CALL DR_HOOK('CH_AER_SEDIM_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_SEDIM_n diff --git a/src/arome/chem/internals/ch_aer_solv.F90 b/src/arome/chem/internals/ch_aer_solv.F90 deleted file mode 100644 index c4f26aaa8ccd5821c0c8e890b65dce064ab6b112..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_solv.F90 +++ /dev/null @@ -1,350 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_SOLV(PM, PSIG0, PRG0, PN0,PCTOTG, PCTOTA, PCCTOT, & - PDMINTRA,PDMINTER,PDMCOND,PSEDA, PDT, POM, & - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, PTIME,PSOLORG) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################################## -!! -!! PURPOSE -!! ------- -!! Time variable solver of the modal aerosol equations -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! P. Tulet for nesting -!! P. Tulet organic condensation -!! P. Tulet thermodynamic equilibrium for each mode -!! P. Tulet add third mode -!! -!! EXTERNAL -!! -------- -!! None -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CH_AEROSOL -USE MODI_CH_AER_MINERAL -USE MODI_CH_AER_ORGANIC -USE MODI_CH_AER_MPMPO -! -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: POM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTRA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTER -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMCOND -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, INTENT(IN) :: PDT, PTIME -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG -! -!* 0.2 declarations of local variables -! -INTEGER :: JI,JJ,JK, JN, IDT -REAL, DIMENSION(SIZE(PM,1)) :: ZSUM -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZNEWM -REAL, DIMENSION(SIZE(PM,1)) :: ZSIGMA -REAL, DIMENSION(SIZE(POM,1),SIZE(POM,2)) :: ZOM - -REAL, DIMENSION(SIZE(PM,1)) :: ZA,ZB,ZC,ZD -REAL, DIMENSION(SIZE(PM,1)) :: ZCONST1,ZCONST2 -REAL, DIMENSION(SIZE(PM,1)) :: Z0,ZK,ZKEXP - -REAL, SAVE, DIMENSION(JPMODE*3) :: ZPMIN -REAL :: ZINIRADIUSI, ZINIRADIUSJ -REAL :: ZRGMIN -LOGICAL, SAVE :: GPHYSLIM = .TRUE. ! flag -! -!------------------------------------------------------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_SOLV',0,ZHOOK_HANDLE) -IF (GPHYSLIM) THEN - GPHYSLIM=.FALSE. - ! - IF (CRGUNIT=="MASS") THEN - ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) - ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) - ELSE - ZINIRADIUSI = XINIRADIUSI - ZINIRADIUSJ = XINIRADIUSJ - END IF - ! - ZPMIN(1) = XN0IMIN - ZRGMIN = XCOEFRADIMIN * ZINIRADIUSI - ZPMIN(2) = ZPMIN(1) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGIMIN)**2) - ZPMIN(3) = ZPMIN(1) * (ZRGMIN**6)*EXP(18. * LOG(XSIGIMIN)**2) - ! - ZPMIN(4) = XN0JMIN - ZRGMIN = XCOEFRADJMIN * ZINIRADIUSJ - ZPMIN(5) = ZPMIN(4) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGJMIN)**2) - ZPMIN(6) = ZPMIN(4) * (ZRGMIN**6)*EXP(18. * LOG(XSIGJMIN)**2) - ! -END IF - - -!write(*,*) -!write(*,*) '******************************************' -!write(*,*) ' Debut Solveur Aerosol ' -!write(*,*) '******************************************' -!write(*,*) -!write(*,*) 'Pas de temps:',PDT,'s' - -!***************************************************************** -!***************************************************************** -! SOLVEUR DE lA PARTIE MICROPHYSIQUE -!***************************************************************** -!***************************************************************** -! -DO JI=1,JPMODE - -!************************************************************* -! Resolution du moment d'ordre 0: pour cela il faut resoudre -! une equation differentielle du type dY/dt=-AY^2-BY+C -!************************************************************* - - -! Pour la resolution plusieurs cas particuliers seront traites -ZA(:)=PDMINTRA(:,NM0(JI)) -ZB(:)=PDMINTER(:,NM0(JI)) -ZC(:)=PDMCOND(:,NM0(JI)) -ZA(:)=0. -ZB(:)=0. -ZC(:)=0. - -DO JK=1,SIZE(PM,1) - IF (ZB(JK) == 0. .AND. ZC(JK)/PM(JK,NM0(JI)) <= 1.e-10) THEN - Z0(JK)=PM(JK,NM0(JI)) - PM(JK,NM0(JI))=Z0(JK)/(1.+ZA(JK)*Z0(JK)*PDT) - ELSE - ZD(JK)=SQRT(ZB(JK)**2+4.*ZA(JK)*ZC(JK)) - - ZCONST1(JK)=ZB(JK)/(2.*ZA(JK)) - ZCONST2(JK)=ZD(JK)/(2.*ABS(ZA(JK))) - Z0(JK)=PM(JK,NM0(JI))+ZCONST1(JK) - - IF (((ZB(JK)**2+4.*ZA(JK)*ZC(JK))) < 0.) THEN - PM(JK,NM0(JI))=-ZCONST1(JK)+ZD(JK)*TAN(ATAN(Z0(JK)/ZD(JK))-ZA(JK)*ZD(JK)*PDT) - ELSE - ZKEXP(JK)=EXP(-2.*ZA(JK)*ZCONST2(JK)*PDT) - ZK(JK)=(Z0(JK)-ZCONST2(JK))/(Z0(JK)+ZCONST2(JK))*ZKEXP(JK) - PM(JK,NM0(JI))=-ZCONST1(JK)+ZCONST2(JK)*(1.+ZK(JK))/(1.-ZK(JK)) - ENDIF - ENDIF -ENDDO - - ! Sedimentation for particules number - -PM(:,NM0(JI))= PM(:,NM0(JI)) + PSEDA(:,NM0(JI)) * PDT -PM(:,NM0(JI))= MAX(PM(:,NM0(JI)), 1.E-10) - - -!************************************************************* -! Resolution du moment d'ordre 3 -!************************************************************* - -PM(:,NM3(JI))=PM(:,NM3(JI))+ & - (PDMINTRA(:,NM3(JI))+PDMINTER(:,NM3(JI))+PDMCOND(:,NM3(JI))+& - PSEDA(:,NM3(JI)))*PDT -PM(:,NM3(JI))= MAX(PM(:,NM3(JI)), 1.E-40) - -!************************************************************* -! Resolution du moment d'ordre 6 -!************************************************************* - -PM(:,NM6(JI))=PM(:,NM6(JI))+ (PM(:,NM0(JI))**2*PDMINTRA(:,NM6(JI))+& - PDMINTER(:,NM6(JI))+PDMCOND(:,NM6(JI)) + PSEDA(:,NM6(JI)) )*PDT - -PM(:,NM6(JI))= MAX(PM(:,NM6(JI)), 1.E-80) -ENDDO - - -!***************************************************************** -!***************************************************************** -! SOLVEUR DE L'EQUILIBRE CHIMIQUE (MARS sera utilise) -!***************************************************************** -!***************************************************************** - -!****************************************************************** -! Calcul de la variation de concentration des differents -! composes pour trouver le nouveau moment d'ordre 3 -!****************************************************************** - -DO JI=1,JPMODE - -! Coagulation intermodale -!------------------------- - -DO JJ=1,NSP+NCARB+NSOA - - PCTOTA(:,JJ,JI)=PCTOTA(:,JJ,JI) & - +(PCCTOT(:,JJ,1)*PDMINTER(:,NM3(JI)) + PCCTOT(:,JJ,JI)* PDMINTRA(:,NM3(JI))) & - *XFAC(JJ)*PDT -!+(PCCTOT(:,JJ,1)*(PDMINTER(:,NM3(JI)) + PDMINTRA(:,NM3(JI)) ))& - -! Sedimentation -!-------------- - PCTOTA(:,JJ,JI)= PCTOTA(:,JJ,JI) + PCCTOT(:,JJ,JI)*PSEDA(:,NM3(JI))*XFAC(JJ)*PDT - PCTOTA(:,JJ,JI)= MAX(PCTOTA(:,JJ,JI), 1E-80) - - -ENDDO -ENDDO - -! H2SO4 Condensation + Nucleation -!--------------------------------- - - PCTOTA(:,JP_AER_SO4,1)=PCTOTA(:,JP_AER_SO4,1) & - +PDMCOND(:,NM3(1))*XFAC(JP_AER_SO4)*PDT - PCTOTA(:,JP_AER_SO4,2)=PCTOTA(:,JP_AER_SO4,2) & - +PDMCOND(:,NM3(2))*XFAC(JP_AER_SO4)*PDT -! -!************************************************************* -! Calcul de la fraction massique entre les modes -!************************************************************* -ZSUM (:) = 0. -DO JI=1,JPMODE - DO JJ=1,NSP+NCARB+NSOA - ZSUM (:) = ZSUM (:) + PCTOTA(:,JJ,JI) - ENDDO -ENDDO -ZOM(:,:) = 0. -DO JI=1,JPMODE - DO JJ=1,NSP+NCARB+NSOA - ZOM(:,JI) = ZOM(:,JI) + PCTOTA(:,JJ,JI) / ZSUM (:) - ENDDO -ENDDO - - -! Equilibre mineraux -!------------------- - -IDT = INT(MAX(5.*PDT,1.)) -IF ((PDT .GT. 0.).AND.( MOD(INT(PTIME) , IDT) .EQ. 0)) THEN -!IF (PDT .GT. 0.) THEN - CALL CH_AER_MINERAL(PCTOTG, PCTOTA,PRV, PDENAIR, PPRESSURE, PTEMP, PRC, ZOM,& - PCCTOT,PSIG0, PRG0, PDT) - - -! Equilibre Organiques -!--------------------- - - IF (NSOA .EQ. 10) CALL CH_AER_ORGANIC(PCTOTG, PCTOTA,PRV, PDENAIR, & - PPRESSURE, PTEMP,& - PRC, ZOM, PCCTOT,PSIG0, PRG0, PDT, PSOLORG) -END IF - -! Mass need to be positive -PCTOTA(:,:,:)= MAX (PCTOTA(:,:,:),0.) -PCTOTG(:,:)= MAX (PCTOTG(:,:),0.) - -DO JI=1,JPMODE - ZSUM(:)=0. - DO JJ=1,NSP+NCARB+NSOA - ZSUM(:)=ZSUM(:)+PCTOTA(:,JJ,JI)/XRHOI(JJ) - ENDDO - - DO JJ=1,NSP+NCARB+NSOA - PCCTOT(:,JJ,JI)=PCTOTA(:,JJ,JI)/XRHOI(JJ)/ZSUM(:) - - ENDDO -ENDDO - -!****************************************************************************** -! Calcul des nouveaux moments d'ordre 3 et 6 -! Le moment d'ordre 3 est recalcule a partir de la composition de chaque mode -! Le moment d'ordre 6 est calcule pour garder sigma constant pendant l'equilibre chimique -!****************************************************************************** -DO JN=1,JPMODE -! - PM(:,NM0(JN)) = MAX(PM(:,NM0(JN)), ZPMIN(NM0(JN))) - PM(:,NM3(JN)) = MAX(PM(:,NM3(JN)), ZPMIN(NM3(JN))) - PM(:,NM6(JN)) = MAX(PM(:,NM6(JN)), ZPMIN(NM6(JN))) - - IF (JN .EQ. 1) THEN - - IF (LVARSIGI) THEN ! variable dispersion for mode 1 - - ZSIGMA(:)=PM(:,NM3(JN))**2./(PM(:,NM0(JN))*PM(:,NM6(JN))) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGIMAX) - ZSIGMA(:) = XSIGIMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGIMIN) - ZSIGMA(:) = XSIGIMIN - END WHERE - - ELSE ! fixed dispersion for mode 1 - ZSIGMA(:) = XINISIGI - END IF - END IF -! - IF (JN .EQ. 2) THEN - - IF (LVARSIGJ) THEN ! variable dispersion for mode 2 - - ZSIGMA(:)=PM(:,NM3(JN))**2./(PM(:,NM0(JN))*PM(:,NM6(JN))) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGJMAX) - ZSIGMA(:) = XSIGJMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGJMIN) - ZSIGMA(:) = XSIGJMIN - END WHERE - - ELSE ! fixed dispersion for mode 2 - ZSIGMA(:) = XINISIGJ - END IF - END IF - - PSIG0(:,JN) = LOG(ZSIGMA(:)) - - PN0(:,JN) = PM(:,NM0(JN)) - -END DO - -DO JN=1,JPMODE -! Calcul du nouveau moment d'ordre 3 - ZNEWM(:,JN)=0. - DO JJ=1,NSP+NCARB+NSOA - PCTOTA(:,JJ,JN) = MAX(PCTOTA(:,JJ,JN),0.) - ZNEWM(:,JN)=ZNEWM(:,JN)+PCTOTA(:,JJ,JN)/XFAC(JJ) - ENDDO - PM(:,NM3(JN))=MAX(ZNEWM(:,JN),ZPMIN(NM3(JN))) -END DO - -DO JN=1,JPMODE - PM(:,NM6(JN)) = PM(:,NM0(JN)) & - * ( (PM(:,NM3(JN))/PM(:,NM0(JN)))**(1./3.) * exp(-(3./2.)*PSIG0(:,JN)**2))**6 & - * exp(18.*PSIG0(:,JN)**2) - - PRG0(:,JN)= (PM(:,NM3(JN))**4/(PM(:,NM6(JN)) * PM(:,NM0(JN))**3))**(1./6.) -ENDDO -! -! -IF (LHOOK) CALL DR_HOOK('CH_AER_SOLV',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_SOLV diff --git a/src/arome/chem/internals/ch_aer_surf.F90 b/src/arome/chem/internals/ch_aer_surf.F90 deleted file mode 100644 index 21b93cc6f09690b934757d3918c9160f718679ee..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_surf.F90 +++ /dev/null @@ -1,72 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_SURF( PM, PRG, PSIG, PSURF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################ -!! -!! PURPOSE -!! ------- -!! Compute surface aerosol -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet (LA) -!! -!! MODIFICATIONS -!! ------------- -!! -!! EXTERNAL -!! -------- -!! None -!! -USE MODD_CH_AEROSOL, ONLY : XPI, JPMODE, NM0, NM3, NM6 -! -IMPLICIT NONE -! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(IN) :: PM ! moments -REAL, DIMENSION(:,:), INTENT(IN) :: PRG ! radius -REAL, DIMENSION(:,:), INTENT(IN) :: PSIG ! dispersion -REAL, DIMENSION(:,:), INTENT(OUT) :: PSURF ! aerosol surface -! -! -!* 0.2 declarations local variables -! -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZSIG0, ZRG0, ZN0 -REAL, DIMENSION(SIZE(PM,1),SIZE(PM,2)) :: ZM -INTEGER :: JN -! -!------------------------------------------------------------------------------- -! -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_SURF',0,ZHOOK_HANDLE) -DO JN=1, JPMODE - ZM(:,NM0(JN)) = PM(:,NM0(JN)) ! 1/m3 - ZM(:,NM3(JN)) = PM(:,NM3(JN)) ! - ZM(:,NM6(JN)) = PM(:,NM6(JN)) - - ZN0(:,JN) = ZM(:,NM0(JN)) * 1E-6 ! convert from 1/m3 to 1/cc - ZRG0(:,JN)= PRG(:,JN) * 1E-6 ! convert from micrometers to meters - ZSIG0(:,JN)= PSIG(:,JN) -! -! Surface = Pi * M2 with M2 = N Rg**2 exp (2*(ln(sigma)**2)) -! -!surface in m2 / cc (psurf will be convert into SI units in BASIC) - PSURF(:,JN) = XPI * ZN0(:,JN) * (ZRG0(:,JN))**2 * EXP(2.*ZSIG0(:,JN)**2) - -ENDDO -! -! -IF (LHOOK) CALL DR_HOOK('CH_AER_SURF',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_SURF diff --git a/src/arome/chem/internals/ch_aer_thermo.F90 b/src/arome/chem/internals/ch_aer_thermo.F90 deleted file mode 100644 index 408b4130c4318db7d77eb79a9094698aefd00443..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_thermo.F90 +++ /dev/null @@ -1,120 +0,0 @@ -! ######spl -SUBROUTINE CH_AER_THERMO(PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! -!! -! -!! PURPOSE -!! ------- -! Make the thermodynamic equilibrium calculation -! Give gas equilibrium concentration for semi-volatile -! species NH3 and HNO3 ... at that time. -! For SO4, the equilibrium concentration is 0.0 - -!! AUTHOR -!! ------ -!! F. Cousin * LA * -!! -!! MODIFICATIONS -!! ------------- -!! Original 05/04/02 -!! Modifications 15/03/03 (P.Tulet) update to log-normal model -!! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -! INPUT -! PAER(:,1) :: H2SO4 in micrograms / m**3 -! PAER(:,2) :: NH3(g) in micrograms / m**3 -! PAER(:,3) :: HNO3(g) in micrograms / m**3 -! PAER(:,4) :: H2O(a) in micrograms / m**3 -! PAER(:,5) :: NO3(a) in micrograms / m**3 -! PAER(:,6) :: NH4(a) in micrograms / m**3 -! PTEMP : temperature in K -! PPRESSURE : pressure = RHO * T * R (in Pa) assuming 20.95 vol% O2 -! PPKM : n_molec (moelc./cm3): M = 1E-3*RHO(kg/m3) * Navo / m_mol -! PPKH2 : molecular weight of H2O: m_mol^H2O = 18.0 g/mol -! ==> m_mol^air / m_mol^H2O = 1.6 -! -! OUTPUT -! zout(:,1) :: waterc : ratio [water content]/[mineral species content] -! zout(:,2)*cnh3(:) : NH3 gas equilibrimum concentrations (kg/m3) -! zout(:,3)*cno3(:) : NO3 gas equilibrimum concentrations (kg/m3) -! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -! -! -USE MODI_CH_AER_INTERMIN -USE MODD_CH_AEROSOL -IMPLICIT NONE -! -!* 0.1 declarations of arguments -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC - -! -!* 0.2 declarations of local variables -DOUBLE PRECISION, DIMENSION(SIZE(PAER,1)) :: waterc,chno3,ch2so4,cnh3 -DOUBLE PRECISION, DIMENSION(SIZE(PAER,1)) :: TEMPE, ZTOTNH3, ZTOTNO3 -DOUBLE PRECISION, DIMENSION(SIZE(PAER,1),3) :: zout -! -!...........PARAMETERS and their descriptions: - -REAL, PARAMETER :: ZMWH2O = 18.0 ! molecular weight for water -REAL, PARAMETER :: ZMWNO3 = 62.0049 ! molecular weight for NO3 -REAL, PARAMETER :: ZMH2SO4 = 98.07354 ! molecular weight for H2SO4 -REAL, PARAMETER :: ZMWNH3 = 17.03061 ! molecular weight for NH3 -! -! Conversion micrograms / m3 in kg/m3 -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_THERMO',0,ZHOOK_HANDLE) -PAER(:,:) = PAER(:,:) * 1E-9 -! -IF((NSP-1).NE.0) THEN -! -! -! -! Compute total mass concentration for mineral species -! -!!!!ch2so4(:) = PAER(:,1) + conc(:,numesoc(ih2so4-npri))*fac1*conmw(ih2so4-npri) -ZTOTNO3(:) = PAER(:,5) + PAER(:,3) -ZTOTNH3(:) = PAER(:,6) + PAER(:,2) -ch2so4(:) = PAER(:,1) ! all so4 is in the aerosol phase: to be update in the future -chno3(:) = ZTOTNO3(:) -cnh3(:) = ZTOTNH3(:) - -! Temperature -TEMPE=PTEMP(:) - -!print*,'avant CH_AER_INTERMIN' -!print*,'ch2so4=', ch2so4(1:5) -!print*,'cnh3=', cnh3(1:5) -!print*,'cno3=', chno3(1:5) -! -! -CALL CH_AER_INTERMIN(PRH,TEMPE,ch2so4,cnh3,chno3,zout,SIZE(PAER,1)) -! -!print*,'apres CH_AER_INTERMIN' -!print*,'zout(:1:5,1)=',zout(1:5,1) -!print*,'zout(:1:5,2)=',zout(1:5,2) -!print*,'zout(:1:5,3)=',zout(1:5,3) -waterc(:) = zout(:,1) -PAER(:,2) = zout(:,2)*cnh3(:) -PAER(:,3) = zout(:,3)*chno3(:) -PAER(:,5) = ZTOTNO3(:) - PAER(:,3) -PAER(:,6) = ZTOTNH3(:) - PAER(:,2) -PAER(:,4) = waterc(:) * ZMWH2O * & - & (PAER(:,1) / ZMH2SO4 + PAER(:,5) / ZMWNO3 + PAER(:,6) / ZMWNH3) - -! -! Conversion kg/m3 in micrograms / m3 - -PAER(:,:) = PAER(:,:) * 1E9 -! -! -ENDIF -! -IF (LHOOK) CALL DR_HOOK('CH_AER_THERMO',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_AER_THERMO diff --git a/src/arome/chem/internals/ch_aer_trans.F90 b/src/arome/chem/internals/ch_aer_trans.F90 deleted file mode 100644 index 5342387264c023ba616e9f5dd057bb351549db5d..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_trans.F90 +++ /dev/null @@ -1,958 +0,0 @@ -! ######spl - SUBROUTINE CH_AER_TRANS(KDIR, PM, PSIG0, PRG0, PN0, PRHOP0, PAERO,& - PCONC, PCTOTG, PCTOTA, PCCTOT,PFRAC,PMI,PMASK,GSCHEME) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################ -!! -!! PURPOSE -!! ------- -!! Transfer of gaz phase species into aerosol variables (KDIR = 0) -!! and back (KDIR = 1) after call to the aerosol module. -!! -!! REFERENCE -!! --------- -!a! none -!! -!! AUTHOR -!! ------ -!! Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! P .Tulet * add biogenics and BC -!! P .Tulet * stability of moments -!! P .Tulet * add SOA for AER and MPMPO -!! -!! EXTERNAL -!! -------- -!! None -!! -USE MODD_CH_AEROSOL - -!! -IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -INTEGER, INTENT(IN) :: KDIR ! KDIR = 0 gas -> aero - ! KDIR = 1 aero -> gas -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM ! moments -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0, PRHOP0, PCTOTG -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCONC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAERO -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMI -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMASK -CHARACTER(LEN=10), INTENT(IN) :: GSCHEME - -! -! -!* 0.2 declarations local variables -! -INTEGER :: JJ, JN ! loop counter -! variables for the aerosol module -! -REAL, DIMENSION(SIZE(PM,1)) :: ZSIGMA -REAL, DIMENSION(SIZE(PM,1)) :: ZSUM -REAL, SAVE, DIMENSION(JPIN) :: ZPMIN -LOGICAL, SAVE :: GPHYSLIM = .TRUE. ! flag -REAL :: ZRGMIN -REAL, PARAMETER :: ZCSTAVOG=6.0221367E+11 -REAL :: ZINIRADIUSI, ZINIRADIUSJ - - -! -!------------------------------------------------------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_TRANS',0,ZHOOK_HANDLE) -IF (KDIR .EQ. 0) THEN -! -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ------------------------------------ -! -IF (GPHYSLIM) THEN -GPHYSLIM=.FALSE. - -IF (CRGUNIT=="MASS") THEN -ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) -ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) -ELSE -ZINIRADIUSI = XINIRADIUSI -ZINIRADIUSJ = XINIRADIUSJ -END IF - -ZPMIN(1) = XN0IMIN -ZRGMIN = XCOEFRADIMIN * ZINIRADIUSI -ZPMIN(2) = ZPMIN(1) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGIMIN)**2) -ZPMIN(3) = ZPMIN(1) * (ZRGMIN**6)*EXP(18. * LOG(XSIGIMIN)**2) - -ZPMIN(4) = XN0JMIN -ZRGMIN = XCOEFRADJMIN * ZINIRADIUSJ -ZPMIN(5) = ZPMIN(4) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGJMIN)**2) -ZPMIN(6) = ZPMIN(4) * (ZRGMIN**6)*EXP(18. * LOG(XSIGJMIN)**2) - -END IF - -PCTOTG(:,:) = 0. -PCTOTA(:,:,:) = 0. -PFRAC(:,:) = 0. -PCONC(:,:) = MAX(PCONC(:,:), 1.E-80) -PAERO(:,:) = MAX(PAERO(:,:), 1.E-80) - -!* 1.n transfer aerosol mass from gas to aerosol variables -! (and conversion of molec/cm3 to microgram/m3) -! -! gas phase species - PCTOTG(:,JP_AER_SO4g) = 0. !all sulfates has been converted into aerosol phase - PCTOTG(:,JP_AER_NO3g) = PCONC(:,JP_CH_HNO3)*XHNO3/ZCSTAVOG - PCTOTG(:,JP_AER_NH3g) = PCONC(:,JP_CH_NH3)*XNH3/ZCSTAVOG -! -! aerosol phase - PCTOTA(:,JP_AER_SO4,1) = PAERO(:,JP_CH_SO4i)*PMI(:,JP_AER_SO4)/ZCSTAVOG - PCTOTA(:,JP_AER_SO4,2) = PAERO(:,JP_CH_SO4j)*PMI(:,JP_AER_SO4)/ZCSTAVOG - PCTOTA(:,JP_AER_NO3,1) = PAERO(:,JP_CH_NO3i)*PMI(:,JP_AER_NO3)/ZCSTAVOG - PCTOTA(:,JP_AER_NO3,2) = PAERO(:,JP_CH_NO3j)*PMI(:,JP_AER_NO3)/ZCSTAVOG - PCTOTA(:,JP_AER_NH3,1) = PAERO(:,JP_CH_NH3i)*PMI(:,JP_AER_NH3)/ZCSTAVOG - PCTOTA(:,JP_AER_NH3,2) = PAERO(:,JP_CH_NH3j)*PMI(:,JP_AER_NH3)/ZCSTAVOG -! -! water - PCTOTA(:,JP_AER_H2O,1) = PAERO(:,JP_CH_H2Oi)*PMI(:,JP_AER_H2O)/ZCSTAVOG - PCTOTA(:,JP_AER_H2O,2) = PAERO(:,JP_CH_H2Oj)*PMI(:,JP_AER_H2O)/ZCSTAVOG -! -! primary organic carbon - PCTOTA(:,JP_AER_OC,1) = PAERO(:,JP_CH_OCi)*PMI(:,JP_AER_OC)/ZCSTAVOG - PCTOTA(:,JP_AER_OC,2) = PAERO(:,JP_CH_OCj)*PMI(:,JP_AER_OC)/ZCSTAVOG -! primary black carbon - PCTOTA(:,JP_AER_BC,1) = PAERO(:,JP_CH_BCi)*PMI(:,JP_AER_BC)/ZCSTAVOG - PCTOTA(:,JP_AER_BC,2) = PAERO(:,JP_CH_BCj)*PMI(:,JP_AER_BC)/ZCSTAVOG -! - -IF (NSOA .EQ. 10) THEN -IF (TRIM(CORGANIC) == 'PUN') THEN - IF (GSCHEME == "RELACS2") THEN ! ReLACS2 scheme - PCTOTG(:,JP_AER_SOA1) = PCONC(:,JP_CH_URG1)*XURG1/ZCSTAVOG - PFRAC(:,JP_CH_URG1) = 1. - PMI(:,JP_AER_SOA1) = PFRAC(:,JP_CH_URG1) * XURG1 - - PCTOTG(:,JP_AER_SOA2) = PCONC(:,JP_CH_URG2) *XURG2/ZCSTAVOG +& - PCONC(:,JP_CH_RPG2)*XRPG2/ZCSTAVOG +& - PCONC(:,JP_CH_RP18)*XRP18/ZCSTAVOG - PFRAC(:,JP_CH_URG2) = PCONC(:,JP_CH_URG2) *XURG2/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RPG2) = PCONC(:,JP_CH_RPG2) *XRPG2/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RP18) = PCONC(:,JP_CH_RP18) *XRP18/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PMI(:,JP_AER_SOA2) = PFRAC(:,JP_CH_URG2) * XURG2 + & - PFRAC(:,JP_CH_RPG2) * XRPG2 + & - PFRAC(:,JP_CH_RP18) * XRP18 - - - PCTOTG(:,JP_AER_SOA3) = PCONC(:,JP_CH_RPG3)*XRPG3/ZCSTAVOG - PFRAC(:,JP_CH_RPG3) = 1. - PMI(:,JP_AER_SOA3) = PFRAC(:,JP_CH_RPG3) * XRPG3 - - PCTOTG(:,JP_AER_SOA4) = PCONC(:,JP_CH_URG4)*XURG4/ZCSTAVOG - PFRAC(:,JP_CH_URG4) = 1. - PMI(:,JP_AER_SOA4) = PFRAC(:,JP_CH_URG4) * XURG4 - - PCTOTG(:,JP_AER_SOA5) = PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG +& - PCONC(:,JP_CH_RPR3)*XRPR3/ZCSTAVOG +& - PCONC(:,JP_CH_AP7) *XAP7/ZCSTAVOG - PFRAC(:,JP_CH_UR17) = PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_RPR3) = PCONC(:,JP_CH_RPR3) *XRPR3/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_AP7) = PCONC(:,JP_CH_AP7) *XAP7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PMI(:,JP_AER_SOA5) = PFRAC(:,JP_CH_UR17) *XUR17 + & - PFRAC(:,JP_CH_RPR3) *XRPR3 + & - PFRAC(:,JP_CH_AP7) *XAP7 - - PCTOTG(:,JP_AER_SOA6) = PCONC(:,JP_CH_URG6) *XURG6/ZCSTAVOG +& - PCONC(:,JP_CH_UR22) *XUR22/ZCSTAVOG - PFRAC(:,JP_CH_URG6) = PCONC(:,JP_CH_URG6) *XURG6/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PFRAC(:,JP_CH_UR22) = PCONC(:,JP_CH_UR22)*XUR22/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PMI(:,JP_AER_SOA6) = PFRAC(:,JP_CH_URG6) *XURG6 + & - PFRAC(:,JP_CH_UR22) *XUR22 - - PCTOTG(:,JP_AER_SOA7) = PCONC(:,JP_CH_URG7) *XURG7/ZCSTAVOG +& - PCONC(:,JP_CH_RPR4)*XRPR4/ZCSTAVOG +& - PCONC(:,JP_CH_RPR7)*XRPR7/ZCSTAVOG +& - PCONC(:,JP_CH_RPG7)*XRPG7/ZCSTAVOG - - PFRAC(:,JP_CH_URG7) = PCONC(:,JP_CH_URG7) *XURG7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RPR4) = PCONC(:,JP_CH_RPR4) *XRPR4/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RPR7) = PCONC(:,JP_CH_RPR7) *XRPR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RPG7) = PCONC(:,JP_CH_RPG7) *XRPG7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PMI(:,JP_AER_SOA7) = PFRAC(:,JP_CH_URG7) * XURG7 + & - PFRAC(:,JP_CH_RPR4) * XRPR4 + & - PFRAC(:,JP_CH_RPR7) * XRPR7 + & - PFRAC(:,JP_CH_RPG7)* XRPG7 - - PCTOTG(:,JP_AER_SOA8) = PCONC(:,JP_CH_URG8) *XURG8/ZCSTAVOG - PFRAC(:,JP_CH_URG8) = 1. - PMI(:,JP_AER_SOA8) = PFRAC(:,JP_CH_URG8) *XURG8 - - PCTOTG(:,JP_AER_SOA9) = PCONC(:,JP_CH_URG9) *XURG9/ZCSTAVOG +& - PCONC(:,JP_CH_UR26) *XUR26/ZCSTAVOG - PFRAC(:,JP_CH_URG9) = PCONC(:,JP_CH_URG9) *XURG9/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_UR26) = PCONC(:,JP_CH_UR26) *XUR26/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PMI(:,JP_AER_SOA9) = PFRAC(:,JP_CH_URG9)*XURG9 + & - PFRAC(:,JP_CH_UR26)*XUR26 - - - PCTOTG(:,JP_AER_SOA10) = PCONC(:,JP_CH_URG10)*XURG10/ZCSTAVOG +& - PCONC(:,JP_CH_UR7) *XUR7/ZCSTAVOG +& - PCONC(:,JP_CH_UR8) *XUR8/ZCSTAVOG +& - PCONC(:,JP_CH_PAN8) *XPAN8/ZCSTAVOG - PFRAC(:,JP_CH_URG10)= PCONC(:,JP_CH_URG10)*XURG10/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_UR7) = PCONC(:,JP_CH_UR7) *XUR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_UR8) = PCONC(:,JP_CH_UR8) *XUR8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_PAN8) = PCONC(:,JP_CH_PAN8) *XPAN8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PMI(:,JP_AER_SOA10) = PFRAC(:,JP_CH_URG10)*XURG10 + & - PFRAC(:,JP_CH_UR7) *XUR7 + & - PFRAC(:,JP_CH_UR8) *XUR8 + & - PFRAC(:,JP_CH_PAN8) *XPAN8 - ELSE ! CACM scheme - PCTOTG(:,JP_AER_SOA1) = PCONC(:,JP_CH_UR21)*XUR21/ZCSTAVOG + & - PCONC(:,JP_CH_UR28)*XUR28/ZCSTAVOG - PFRAC(:,JP_CH_UR21) = PCONC(:,JP_CH_UR21) *XUR21/ZCSTAVOG / PCTOTG(:,JP_AER_SOA1) - PFRAC(:,JP_CH_UR28) = PCONC(:,JP_CH_UR28) *XUR28/ZCSTAVOG / PCTOTG(:,JP_AER_SOA1) - PMI(:,JP_AER_SOA1) = PFRAC(:,JP_CH_UR21) * XUR21 + & - PFRAC(:,JP_CH_UR28) * XUR28 - - PCTOTG(:,JP_AER_SOA2) = PCONC(:,JP_CH_UR29) *XUR29/ZCSTAVOG +& - PCONC(:,JP_CH_UR30) *XUR30/ZCSTAVOG +& - PCONC(:,JP_CH_RP13)*XRP13/ZCSTAVOG +& - PCONC(:,JP_CH_RP17)*XRP17/ZCSTAVOG +& - PCONC(:,JP_CH_RP18)*XRP18/ZCSTAVOG - PFRAC(:,JP_CH_UR29) = PCONC(:,JP_CH_UR29) *XUR29/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_UR30) = PCONC(:,JP_CH_UR30) *XUR30/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RP13) = PCONC(:,JP_CH_RP13) *XRP13/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RP17) = PCONC(:,JP_CH_RP17) *XRP17/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RP18) = PCONC(:,JP_CH_RP18) *XRP18/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PMI(:,JP_AER_SOA2) = PFRAC(:,JP_CH_UR29) * XUR29 + & - PFRAC(:,JP_CH_UR30) * XUR30 + & - PFRAC(:,JP_CH_RP13) * XRP13 + & - PFRAC(:,JP_CH_RP17) * XRP17 + & - PFRAC(:,JP_CH_RP18) * XRP18 - - - PCTOTG(:,JP_AER_SOA3) = PCONC(:,JP_CH_RPR9)*XRPR9/ZCSTAVOG + & - PCONC(:,JP_CH_RP12)*XRP12/ZCSTAVOG - PFRAC(:,JP_CH_RPR9) = PCONC(:,JP_CH_RPR9) *XRPR9/ZCSTAVOG / PCTOTG(:,JP_AER_SOA3) - PFRAC(:,JP_CH_RP12) = PCONC(:,JP_CH_RP12) *XRP12/ZCSTAVOG / PCTOTG(:,JP_AER_SOA3) - PMI(:,JP_AER_SOA3) = PFRAC(:,JP_CH_RPR9) * XRPR9 + & - PFRAC(:,JP_CH_RP12) * XRP12 - - PCTOTG(:,JP_AER_SOA4) = PCONC(:,JP_CH_UR3) *XUR3/ZCSTAVOG + & - PCONC(:,JP_CH_UR23)*XUR23/ZCSTAVOG - PFRAC(:,JP_CH_UR3) = PCONC(:,JP_CH_UR3) *XUR3/ZCSTAVOG / PCTOTG(:,JP_AER_SOA4) - PFRAC(:,JP_CH_UR23)= PCONC(:,JP_CH_UR23) *XUR23/ZCSTAVOG / PCTOTG(:,JP_AER_SOA4) - PMI(:,JP_AER_SOA4) = PFRAC(:,JP_CH_UR3) * XUR3 + & - PFRAC(:,JP_CH_UR23) * XUR23 - - PCTOTG(:,JP_AER_SOA5) = PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG +& - PCONC(:,JP_CH_RPR3)*XRPR3/ZCSTAVOG +& - PCONC(:,JP_CH_AP7) *XAP7/ZCSTAVOG - PFRAC(:,JP_CH_UR17) = PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_RPR3) = PCONC(:,JP_CH_RPR3) *XRPR3/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_AP7) = PCONC(:,JP_CH_AP7) *XAP7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PMI(:,JP_AER_SOA5) = PFRAC(:,JP_CH_UR17) *XUR17 + & - PFRAC(:,JP_CH_RPR3) *XRPR3 + & - PFRAC(:,JP_CH_AP7) *XAP7 - - PCTOTG(:,JP_AER_SOA6) = PCONC(:,JP_CH_UR31) *XUR31/ZCSTAVOG +& - PCONC(:,JP_CH_AP1) *XAP1 /ZCSTAVOG +& - PCONC(:,JP_CH_AP6) *XAP6 /ZCSTAVOG +& - PCONC(:,JP_CH_UR22) *XUR22/ZCSTAVOG - PFRAC(:,JP_CH_UR31) = PCONC(:,JP_CH_UR31) *XUR31/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PFRAC(:,JP_CH_AP1) = PCONC(:,JP_CH_AP1) *XAP1/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PFRAC(:,JP_CH_AP6) = PCONC(:,JP_CH_AP6) *XAP6/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PFRAC(:,JP_CH_UR22) = PCONC(:,JP_CH_UR22)*XUR22/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PMI(:,JP_AER_SOA6) = PFRAC(:,JP_CH_UR31) *XUR31 + & - PFRAC(:,JP_CH_AP1) *XAP1 + & - PFRAC(:,JP_CH_AP6) *XAP6 + & - PFRAC(:,JP_CH_UR22) *XUR22 - - PCTOTG(:,JP_AER_SOA7) = PCONC(:,JP_CH_ADAC)*XADAC/ZCSTAVOG +& - PCONC(:,JP_CH_UR2) *XUR2 /ZCSTAVOG +& - PCONC(:,JP_CH_UR14)*XUR14/ZCSTAVOG +& - PCONC(:,JP_CH_UR27)*XUR27/ZCSTAVOG +& - PCONC(:,JP_CH_RPR4)*XRPR4/ZCSTAVOG +& - PCONC(:,JP_CH_RPR7)*XRPR7/ZCSTAVOG +& - PCONC(:,JP_CH_RP19)*XRP19/ZCSTAVOG +& - PCONC(:,JP_CH_RP14)*XRP14/ZCSTAVOG - - - PFRAC(:,JP_CH_ADAC) = PCONC(:,JP_CH_ADAC) *XADAC/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_UR2 ) = PCONC(:,JP_CH_UR2 ) *XUR2 /ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_UR14) = PCONC(:,JP_CH_UR14) *XUR14/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RPR4) = PCONC(:,JP_CH_RPR4) *XRPR4/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RPR7) = PCONC(:,JP_CH_RPR7) *XRPR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RP19) = PCONC(:,JP_CH_RP19) *XRP19/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RP14) = PCONC(:,JP_CH_RP14) *XRP14/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PMI(:,JP_AER_SOA7) = PFRAC(:,JP_CH_ADAC) * XADAC + & - PFRAC(:,JP_CH_UR2 ) * XUR2 + & - PFRAC(:,JP_CH_UR14) * XUR14 + & - PFRAC(:,JP_CH_RPR4) * XRPR4 + & - PFRAC(:,JP_CH_RPR7) * XRPR7 + & - PFRAC(:,JP_CH_RP19) * XRP19 + & - PFRAC(:,JP_CH_RP14) * XRP14 - - PCTOTG(:,JP_AER_SOA8) = PCONC(:,JP_CH_UR11) *XUR11/ZCSTAVOG + & - PCONC(:,JP_CH_UR15) *XUR15/ZCSTAVOG + & - PCONC(:,JP_CH_AP10) *XAP10/ZCSTAVOG - PFRAC(:,JP_CH_UR11) = PCONC(:,JP_CH_UR11) *XUR11/ZCSTAVOG / PCTOTG(:,JP_AER_SOA8) - PFRAC(:,JP_CH_UR15) = PCONC(:,JP_CH_UR15) *XUR15/ZCSTAVOG / PCTOTG(:,JP_AER_SOA8) - PFRAC(:,JP_CH_AP10) = PCONC(:,JP_CH_AP10) *XAP10/ZCSTAVOG / PCTOTG(:,JP_AER_SOA8) - PMI(:,JP_AER_SOA8) = PFRAC(:,JP_CH_UR11) *XUR11 + & - PFRAC(:,JP_CH_UR15) *XUR15 + & - PFRAC(:,JP_CH_AP10) *XAP10 - - PCTOTG(:,JP_AER_SOA9) = PCONC(:,JP_CH_UR20) *XUR20/ZCSTAVOG +& - PCONC(:,JP_CH_UR34) *XUR34/ZCSTAVOG +& - PCONC(:,JP_CH_AP11) *XAP11/ZCSTAVOG +& - PCONC(:,JP_CH_AP12) *XAP12/ZCSTAVOG +& - PCONC(:,JP_CH_UR26) *XUR26/ZCSTAVOG - PFRAC(:,JP_CH_UR20) = PCONC(:,JP_CH_UR20) *XUR20/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_UR34) = PCONC(:,JP_CH_UR34) *XUR34/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_AP11) = PCONC(:,JP_CH_AP11) *XAP11/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_AP12) = PCONC(:,JP_CH_AP12) *XAP12/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_UR26) = PCONC(:,JP_CH_UR26) *XUR26/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PMI(:,JP_AER_SOA9) = PFRAC(:,JP_CH_UR20)*XUR20 + & - PFRAC(:,JP_CH_UR34)*XUR34 + & - PFRAC(:,JP_CH_AP11)*XAP11 + & - PFRAC(:,JP_CH_AP12)*XAP12 + & - PFRAC(:,JP_CH_UR26)*XUR26 - - - PCTOTG(:,JP_AER_SOA10) = PCONC(:,JP_CH_PAN8)*XPAN8/ZCSTAVOG +& - PCONC(:,JP_CH_UR5) *XUR5/ZCSTAVOG +& - PCONC(:,JP_CH_UR6) *XUR6/ZCSTAVOG +& - PCONC(:,JP_CH_UR7) *XUR7/ZCSTAVOG +& - PCONC(:,JP_CH_UR8) *XUR8/ZCSTAVOG +& - PCONC(:,JP_CH_AP8) *XAP8/ZCSTAVOG - PFRAC(:,JP_CH_UR5) = PCONC(:,JP_CH_UR5) *XUR5/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_UR6) = PCONC(:,JP_CH_UR6) *XUR6/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_UR7) = PCONC(:,JP_CH_UR7) *XUR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_UR8) = PCONC(:,JP_CH_UR8) *XUR8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_AP8) = PCONC(:,JP_CH_AP8) *XAP8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_PAN8) = PCONC(:,JP_CH_PAN8) *XPAN8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PMI(:,JP_AER_SOA10) = PFRAC(:,JP_CH_UR5) *XUR5 + & - PFRAC(:,JP_CH_UR6) *XUR6 + & - PFRAC(:,JP_CH_UR7) *XUR7 + & - PFRAC(:,JP_CH_UR8) *XUR8 + & - PFRAC(:,JP_CH_AP8) *XAP8 + & - PFRAC(:,JP_CH_PAN8) *XPAN8 - - END IF -END IF -IF (TRIM(CORGANIC) == 'MPMPO') THEN - IF (GSCHEME == "RELACS2") THEN ! ReLACS2 scheme - PCTOTG(:,JP_AER_SOA1) = PCONC(:,JP_CH_URG6)*XURG6/ZCSTAVOG - PFRAC(:,JP_CH_URG6) = 1. - PMI(:,JP_AER_SOA1) = PFRAC(:,JP_CH_URG6) * XURG6 - - PCTOTG(:,JP_AER_SOA2) = PCONC(:,JP_CH_URG7) *XURG7/ZCSTAVOG +& - PCONC(:,JP_CH_RPG7)*XRPG7/ZCSTAVOG +& - PCONC(:,JP_CH_RPR7)*XRPR7/ZCSTAVOG - PFRAC(:,JP_CH_URG7) = PCONC(:,JP_CH_URG7) *XURG7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RPG7) = PCONC(:,JP_CH_RPG7) *XRPG7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RPR7) = PCONC(:,JP_CH_RPR7) *XRPR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PMI(:,JP_AER_SOA2) = PFRAC(:,JP_CH_URG7) * XURG7 + & - PFRAC(:,JP_CH_RPG7) * XRPG7 + & - PFRAC(:,JP_CH_RPR7) * XRPR7 - - PCTOTG(:,JP_AER_SOA3) = PCONC(:,JP_CH_URG8)*XURG8/ZCSTAVOG - PFRAC(:,JP_CH_URG8) = 1. - PMI(:,JP_AER_SOA3) = PFRAC(:,JP_CH_URG8) * XURG8 - - PCTOTG(:,JP_AER_SOA4) = PCONC(:,JP_CH_URG9)*XURG9/ZCSTAVOG - PFRAC(:,JP_CH_URG9) = PCONC(:,JP_CH_URG9) *XURG9/ZCSTAVOG / PCTOTG(:,JP_AER_SOA4) - PMI(:,JP_AER_SOA4) = PFRAC(:,JP_CH_URG9) * XURG9 - - PCTOTG(:,JP_AER_SOA5) = PCONC(:,JP_CH_URG10)*XURG10/ZCSTAVOG +& - PCONC(:,JP_CH_AP7)* XAP7/ZCSTAVOG - PFRAC(:,JP_CH_URG10) = PCONC(:,JP_CH_URG10) * XURG10/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_AP7) = PCONC(:,JP_CH_AP7) * XAP7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PMI(:,JP_AER_SOA5) = PFRAC(:,JP_CH_URG10) * XURG10 + & - PFRAC(:,JP_CH_AP7) * XAP7 - - PCTOTG(:,JP_AER_SOA6) = PCONC(:,JP_CH_URG1) * XURG1/ZCSTAVOG - PFRAC(:,JP_CH_URG1) = PCONC(:,JP_CH_URG1) * XURG1/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PMI(:,JP_AER_SOA6) = PFRAC(:,JP_CH_URG1) * XURG1 - - PCTOTG(:,JP_AER_SOA7) = PCONC(:,JP_CH_URG2) * XURG2/ZCSTAVOG +& - PCONC(:,JP_CH_RPG2)* XRPG2/ZCSTAVOG +& - PCONC(:,JP_CH_UR26)* XUR26/ZCSTAVOG +& - PCONC(:,JP_CH_RP18)* XRP18/ZCSTAVOG - - PFRAC(:,JP_CH_URG2) = PCONC(:,JP_CH_URG2) * XURG2/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_UR26) = PCONC(:,JP_CH_UR26) * XUR26/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RPG2) = PCONC(:,JP_CH_RPG2) * XRPG2/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RP18) = PCONC(:,JP_CH_RP18) * XRP18/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PMI(:,JP_AER_SOA7) = PFRAC(:,JP_CH_URG2)* XURG2 + & - PFRAC(:,JP_CH_UR26)* XUR26 + & - PFRAC(:,JP_CH_RPG2)* XRPG2 + & - PFRAC(:,JP_CH_RP18)* XRP18 - - PCTOTG(:,JP_AER_SOA8) = PCONC(:,JP_CH_RPG3) *XRPG3/ZCSTAVOG - PFRAC(:,JP_CH_RPG3) = PCONC(:,JP_CH_RPG3) *XRPG3/ZCSTAVOG / PCTOTG(:,JP_AER_SOA8) - PMI(:,JP_AER_SOA8) = PFRAC(:,JP_CH_RPG3) *XRPG3 - - PCTOTG(:,JP_AER_SOA9) = PCONC(:,JP_CH_URG4) *XURG4/ZCSTAVOG + & - PCONC(:,JP_CH_UR8)* XUR8/ZCSTAVOG - PFRAC(:,JP_CH_URG4) = PCONC(:,JP_CH_URG4) * XURG4/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_UR8) = PCONC(:,JP_CH_UR8) * XUR8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PMI(:,JP_AER_SOA9) = PFRAC(:,JP_CH_URG4)*XURG4 + & - PFRAC(:,JP_CH_UR8)*XUR8 - - PCTOTG(:,JP_AER_SOA10) = PCONC(:,JP_CH_UR7)*XUR7/ZCSTAVOG +& - PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG - PFRAC(:,JP_CH_UR7)= PCONC(:,JP_CH_UR7)*XUR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_UR17) = PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PMI(:,JP_AER_SOA10) = PFRAC(:,JP_CH_UR7)*XUR7 + & - PFRAC(:,JP_CH_UR17)*XUR17 - - - ELSE ! CACM scheme - - PCTOTG(:,JP_AER_SOA1) = PCONC(:,JP_CH_AP1) *XAP1/ZCSTAVOG +& - PCONC(:,JP_CH_AP6) *XAP6/ZCSTAVOG +& - PCONC(:,JP_CH_UR31)*XUR31/ZCSTAVOG - PFRAC(:,JP_CH_AP1) = PCONC(:,JP_CH_AP1) *XAP1/ZCSTAVOG / PCTOTG(:,JP_AER_SOA1) - PFRAC(:,JP_CH_AP6) = PCONC(:,JP_CH_AP6) *XAP6/ZCSTAVOG / PCTOTG(:,JP_AER_SOA1) - PFRAC(:,JP_CH_UR31) = PCONC(:,JP_CH_UR31) *XUR31/ZCSTAVOG / PCTOTG(:,JP_AER_SOA1) - PMI(:,JP_AER_SOA1) = PFRAC(:,JP_CH_AP1) * XAP1 + & - PFRAC(:,JP_CH_AP6) * XAP6 + & - PFRAC(:,JP_CH_UR31)* XUR31 - - PCTOTG(:,JP_AER_SOA2) = PCONC(:,JP_CH_UR2) *XUR2/ZCSTAVOG +& - PCONC(:,JP_CH_UR14) *XUR14/ZCSTAVOG +& - PCONC(:,JP_CH_ADAC) *XADAC/ZCSTAVOG +& - PCONC(:,JP_CH_RP14)*XRP14/ZCSTAVOG +& - PCONC(:,JP_CH_RP19)*XRP19/ZCSTAVOG +& - PCONC(:,JP_CH_RPR7)*XRPR7/ZCSTAVOG - PFRAC(:,JP_CH_UR2) = PCONC(:,JP_CH_UR2) *XUR2/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_UR14) = PCONC(:,JP_CH_UR14) *XUR14/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RP14) = PCONC(:,JP_CH_RP14) *XRP14/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RP19) = PCONC(:,JP_CH_RP19) *XRP19/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_RPR7) = PCONC(:,JP_CH_RPR7) *XRPR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PFRAC(:,JP_CH_ADAC) = PCONC(:,JP_CH_ADAC) *XADAC/ZCSTAVOG / PCTOTG(:,JP_AER_SOA2) - PMI(:,JP_AER_SOA2) = PFRAC(:,JP_CH_UR2) * XUR2 + & - PFRAC(:,JP_CH_UR14) * XUR14 + & - PFRAC(:,JP_CH_ADAC) * XADAC + & - PFRAC(:,JP_CH_RP14) * XRP14 + & - PFRAC(:,JP_CH_RP19) * XRP19 + & - PFRAC(:,JP_CH_RPR7) * XRPR7 - - PCTOTG(:,JP_AER_SOA3) = PCONC(:,JP_CH_AP10)*XAP10/ZCSTAVOG + & - PCONC(:,JP_CH_UR11)*XUR11/ZCSTAVOG + & - PCONC(:,JP_CH_UR15)*XUR15/ZCSTAVOG - PFRAC(:,JP_CH_AP10) = PCONC(:,JP_CH_AP10) *XAP10/ZCSTAVOG / PCTOTG(:,JP_AER_SOA3) - PFRAC(:,JP_CH_UR11) = PCONC(:,JP_CH_UR11) *XUR11/ZCSTAVOG / PCTOTG(:,JP_AER_SOA3) - PFRAC(:,JP_CH_UR15) = PCONC(:,JP_CH_UR15) *XUR15/ZCSTAVOG / PCTOTG(:,JP_AER_SOA3) - PMI(:,JP_AER_SOA3) = PFRAC(:,JP_CH_AP10) * XAP10 + & - PFRAC(:,JP_CH_UR11) * XUR15 + & - PFRAC(:,JP_CH_UR15) * XUR15 - - PCTOTG(:,JP_AER_SOA4) = PCONC(:,JP_CH_AP11)*XAP11/ZCSTAVOG + & - PCONC(:,JP_CH_AP12)*XAP12/ZCSTAVOG + & - PCONC(:,JP_CH_UR20)*XUR20/ZCSTAVOG + & - PCONC(:,JP_CH_UR34)*XUR34/ZCSTAVOG - PFRAC(:,JP_CH_AP11) = PCONC(:,JP_CH_AP11) *XAP11/ZCSTAVOG / PCTOTG(:,JP_AER_SOA4) - PFRAC(:,JP_CH_AP12) = PCONC(:,JP_CH_AP12) *XAP12/ZCSTAVOG / PCTOTG(:,JP_AER_SOA4) - PFRAC(:,JP_CH_UR20) = PCONC(:,JP_CH_UR20) *XUR20/ZCSTAVOG / PCTOTG(:,JP_AER_SOA4) - PFRAC(:,JP_CH_UR34) = PCONC(:,JP_CH_UR34) *XUR34/ZCSTAVOG / PCTOTG(:,JP_AER_SOA4) - PMI(:,JP_AER_SOA4) = PFRAC(:,JP_CH_AP11) * XAP11 + & - PFRAC(:,JP_CH_AP11) * XAP11 + & - PFRAC(:,JP_CH_UR20) * XUR20 + & - PFRAC(:,JP_CH_UR34) * XUR34 - - PCTOTG(:,JP_AER_SOA5) = PCONC(:,JP_CH_UR5)*XUR5/ZCSTAVOG + & - PCONC(:,JP_CH_UR6)*XUR6/ZCSTAVOG + & - PCONC(:,JP_CH_AP8)*XAP8/ZCSTAVOG + & - PCONC(:,JP_CH_AP7)* XAP7/ZCSTAVOG - PFRAC(:,JP_CH_UR5) = PCONC(:,JP_CH_UR5) * XUR5/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_UR6) = PCONC(:,JP_CH_UR6) * XUR6/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_AP7) = PCONC(:,JP_CH_AP7) * XAP7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PFRAC(:,JP_CH_AP8) = PCONC(:,JP_CH_AP8) * XAP8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA5) - PMI(:,JP_AER_SOA5) = PFRAC(:,JP_CH_UR5) * XUR5 + & - PFRAC(:,JP_CH_UR6) * XUR6 + & - PFRAC(:,JP_CH_AP8) * XAP8 + & - PFRAC(:,JP_CH_AP7) * XAP7 - - PCTOTG(:,JP_AER_SOA6) = PCONC(:,JP_CH_UR21) * XUR21/ZCSTAVOG + & - PCONC(:,JP_CH_UR28) * XUR28/ZCSTAVOG - PFRAC(:,JP_CH_UR21) = PCONC(:,JP_CH_UR21) * XUR21/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PFRAC(:,JP_CH_UR28) = PCONC(:,JP_CH_UR28) * XUR28/ZCSTAVOG / PCTOTG(:,JP_AER_SOA6) - PMI(:,JP_AER_SOA6) = PFRAC(:,JP_CH_UR21) * XUR21 + & - PFRAC(:,JP_CH_UR28) * XUR28 - - PCTOTG(:,JP_AER_SOA7) = PCONC(:,JP_CH_UR29)* XUR29/ZCSTAVOG +& - PCONC(:,JP_CH_UR26)* XUR26/ZCSTAVOG +& - PCONC(:,JP_CH_UR30)* XUR30/ZCSTAVOG +& - PCONC(:,JP_CH_RP13)* XRP13/ZCSTAVOG +& - PCONC(:,JP_CH_RP17)* XRP17/ZCSTAVOG +& - PCONC(:,JP_CH_RP18)* XRP18/ZCSTAVOG - - PFRAC(:,JP_CH_UR29) = PCONC(:,JP_CH_UR29) * XUR29/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_UR26) = PCONC(:,JP_CH_UR26) * XUR26/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_UR30) = PCONC(:,JP_CH_UR30) * XUR30/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RP13) = PCONC(:,JP_CH_RP13) * XRP13/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RP17) = PCONC(:,JP_CH_RP17) * XRP17/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PFRAC(:,JP_CH_RP18) = PCONC(:,JP_CH_RP18) * XRP18/ZCSTAVOG / PCTOTG(:,JP_AER_SOA7) - PMI(:,JP_AER_SOA7) = PFRAC(:,JP_CH_UR29)* XUR29 + & - PFRAC(:,JP_CH_UR26)* XUR26 + & - PFRAC(:,JP_CH_UR30)* XUR30 + & - PFRAC(:,JP_CH_RP13)* XRP13 + & - PFRAC(:,JP_CH_RP17)* XRP17 + & - PFRAC(:,JP_CH_RP18)* XRP18 - - PCTOTG(:,JP_AER_SOA8) = PCONC(:,JP_CH_RPR9) *XRPR9/ZCSTAVOG + & - PCONC(:,JP_CH_RP12) *XRP12/ZCSTAVOG - PFRAC(:,JP_CH_RPR9) = PCONC(:,JP_CH_RPR9) *XRPR9/ZCSTAVOG / PCTOTG(:,JP_AER_SOA8) - PFRAC(:,JP_CH_RP12) = PCONC(:,JP_CH_RP12) *XRP12/ZCSTAVOG / PCTOTG(:,JP_AER_SOA8) - PMI(:,JP_AER_SOA8) = PFRAC(:,JP_CH_RPR9) *XRPR9 + & - PFRAC(:,JP_CH_RP12) *XRP12 - - PCTOTG(:,JP_AER_SOA9) = PCONC(:,JP_CH_UR3) *XUR3/ZCSTAVOG + & - PCONC(:,JP_CH_UR23)*XUR23/ZCSTAVOG + & - PCONC(:,JP_CH_UR8) *XUR8/ZCSTAVOG - PFRAC(:,JP_CH_UR3) = PCONC(:,JP_CH_UR3) * XUR3 /ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_UR23) = PCONC(:,JP_CH_UR23) * XUR23/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PFRAC(:,JP_CH_UR8) = PCONC(:,JP_CH_UR8) * XUR8/ZCSTAVOG / PCTOTG(:,JP_AER_SOA9) - PMI(:,JP_AER_SOA9) = PFRAC(:,JP_CH_UR3) *XUR3 + & - PFRAC(:,JP_CH_UR23)*XUR23+ & - PFRAC(:,JP_CH_UR8)*XUR8 - - PCTOTG(:,JP_AER_SOA10) = PCONC(:,JP_CH_UR7)*XUR7/ZCSTAVOG +& - PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG - PFRAC(:,JP_CH_UR7)= PCONC(:,JP_CH_UR7)*XUR7/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PFRAC(:,JP_CH_UR17) = PCONC(:,JP_CH_UR17) *XUR17/ZCSTAVOG / PCTOTG(:,JP_AER_SOA10) - PMI(:,JP_AER_SOA10) = PFRAC(:,JP_CH_UR7)*XUR7 + & - PFRAC(:,JP_CH_UR17)*XUR17 - - END IF -END IF - - - PCTOTA(:,JP_AER_SOA1,1) = PAERO(:,JP_CH_SOA1i)*PMI(:,JP_AER_SOA1)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA1,2) = PAERO(:,JP_CH_SOA1j)*PMI(:,JP_AER_SOA1)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA2,1) = PAERO(:,JP_CH_SOA2i)*PMI(:,JP_AER_SOA2)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA2,2) = PAERO(:,JP_CH_SOA2j)*PMI(:,JP_AER_SOA2)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA3,1) = PAERO(:,JP_CH_SOA3i)*PMI(:,JP_AER_SOA3)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA3,2) = PAERO(:,JP_CH_SOA3j)*PMI(:,JP_AER_SOA3)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA4,1) = PAERO(:,JP_CH_SOA4i)*PMI(:,JP_AER_SOA4)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA4,2) = PAERO(:,JP_CH_SOA4j)*PMI(:,JP_AER_SOA4)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA5,1) = PAERO(:,JP_CH_SOA5i)*PMI(:,JP_AER_SOA5)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA5,2) = PAERO(:,JP_CH_SOA5j)*PMI(:,JP_AER_SOA5)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA6,1) = PAERO(:,JP_CH_SOA6i)*PMI(:,JP_AER_SOA6)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA6,2) = PAERO(:,JP_CH_SOA6j)*PMI(:,JP_AER_SOA6)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA7,1) = PAERO(:,JP_CH_SOA7i)*PMI(:,JP_AER_SOA7)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA7,2) = PAERO(:,JP_CH_SOA7j)*PMI(:,JP_AER_SOA7)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA8,1) = PAERO(:,JP_CH_SOA8i)*PMI(:,JP_AER_SOA8)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA8,2) = PAERO(:,JP_CH_SOA8j)*PMI(:,JP_AER_SOA8)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA9,1) = PAERO(:,JP_CH_SOA9i)*PMI(:,JP_AER_SOA9)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA9,2) = PAERO(:,JP_CH_SOA9j)*PMI(:,JP_AER_SOA9)/ZCSTAVOG - - PCTOTA(:,JP_AER_SOA10,1) = PAERO(:,JP_CH_SOA10i)*PMI(:,JP_AER_SOA10)/ZCSTAVOG - PCTOTA(:,JP_AER_SOA10,2) = PAERO(:,JP_CH_SOA10j)*PMI(:,JP_AER_SOA10)/ZCSTAVOG - -END IF -! - - PCTOTA(:,:,:) = MAX(PCTOTA(:,:,:),1.E-80) -! -!* 1.n transfer moment 0 from gas to aerosol variable -! - PM(:,1) = MAX(PAERO(:,JP_CH_M0i) * 1E+6, XN0IMIN) ! convert from 1/cc to 1/m3 - PM(:,4) = MAX(PAERO(:,JP_CH_M0j) * 1E+6, XN0JMIN) ! convert from 1/cc to 1/m3 - -! -! -!* 1.n calculate moment 3 from total aerosol mass -! - PM(:,2) = 0. - PM(:,5) = 0. - DO JJ = 1,NSP+NCARB+NSOA - PM(:,2) = PM(:,2)+PCTOTA(:,JJ,1)/XFAC(JJ) - PM(:,5) = PM(:,5)+PCTOTA(:,JJ,2)/XFAC(JJ) - ENDDO - - !* 1.n set moment 6 - -IF (LVARSIGI) THEN ! set M6 variable standard deviation - PM(:,3) = MAX(PAERO(:,JP_CH_M6i), 1E-80) -ELSE ! fixed standard deviation - PM(:,3) = PM(:,1) & - * ( (PM(:,2)/PM(:,1))**(1./3.) & - * exp(-(3./2.)*log(XINISIGI)**2))**6 & - * exp(18.*log(XINISIGI)**2) -END IF - -IF (LVARSIGJ) THEN ! set M6 variable standard deviation - PM(:,6) = MAX(PAERO(:,JP_CH_M6j), 1E-80) -ELSE ! fixed standard deviation - PM(:,6) = PM(:,4) & - * ( (PM(:,5)/PM(:,4))**(1./3.) & - * exp(-(3./2.)*log(XINISIGJ)**2))**6 & - * exp(18.*log(XINISIGJ)**2) -END IF - - - -!********************************************* -! Calcul de PCCTOT -!********************************************** - -DO JN=1,JPMODE - ZSUM(:)=0. - DO JJ=1,NSP+NCARB+NSOA - ZSUM(:)=ZSUM(:)+PCTOTA(:,JJ,JN)/XRHOI(JJ) - END DO - - DO JJ=1,NSP+NCARB+NSOA - PCCTOT(:,JJ,JN)=PCTOTA(:,JJ,JN)/(XRHOI(JJ)*ZSUM(:)) - ENDDO -END DO - - ! compute the new particle density -DO JN=1,JPMODE - PRHOP0(:,JN)=0. - DO JJ=1,NSP+NCARB+NSOA - PRHOP0(:,JN)=PRHOP0(:,JN)+PCCTOT(:,JJ,JN)*XRHOI(JJ) - ENDDO -ENDDO -! -!* 1.n set moment 6 (fixed or variable) - -DO JN=1,JPMODE - - IF (JN .EQ. 1) THEN - - IF (LVARSIGI) THEN ! variable dispersion for mode 1 - - ZSIGMA(:)=PM(:,NM3(JN))**2/(PM(:,NM0(JN))*PM(:,NM6(JN))) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGIMAX) - ZSIGMA(:) = XSIGIMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGIMIN) - ZSIGMA(:) = XSIGIMIN - END WHERE - - ELSE ! fixed dispersion for mode 1 - ZSIGMA(:) = XINISIGI - END IF - END IF - -! - IF (JN .EQ. 2) THEN - - IF (LVARSIGJ) THEN ! variable dispersion for mode 2 - - ZSIGMA(:)=PM(:,NM3(JN))**2/(PM(:,NM0(JN))*PM(:,NM6(JN))) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGJMAX) - ZSIGMA(:) = XSIGJMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGJMIN) - ZSIGMA(:) = XSIGJMIN - END WHERE - - ELSE ! fixed dispersion for mode 2 - ZSIGMA(:) = XINISIGJ - END IF - END IF - - -PSIG0(:,JN) = LOG(ZSIGMA(:)) -PN0(:,JN) = PM(:,NM0(JN)) - -PM(:,NM6(JN)) = PM(:,NM0(JN)) & - * ( (PM(:,NM3(JN))/PM(:,NM0(JN)))**(1./3.) * exp(-(3./2.)*log(ZSIGMA(:))**2))**6 & - * exp(18.*log(ZSIGMA(:))**2) - -PRG0(:,JN)= (PM(:,NM3(JN))**4/(PM(:,NM6(JN)) * PM(:,NM0(JN))**3))**(1./6.) - -PMASK(:,JN) = 0. -WHERE ( (PM(:,NM0(JN)) > ZPMIN(NM0(JN))).AND.& - (PM(:,NM3(JN)) > ZPMIN(NM3(JN))).AND.& - (PM(:,NM6(JN)) > ZPMIN(NM6(JN))) ) -PMASK(:,JN) = 1. -END WHERE - -ENDDO - -ELSE -! -!* 2. TRANSFER FROM AEROSOL TO GAS MODULE -! ------------------------------------ -! -! -!* 2.n transfer aerosol mass from aerosol to gas variables -! -! gas phase species - PCONC(:,JP_CH_HNO3) = PCTOTG(:,JP_AER_NO3g) *ZCSTAVOG / XHNO3 - PCONC(:,JP_CH_NH3) = PCTOTG(:,JP_AER_NH3g) *ZCSTAVOG / XNH3 -! -! aerosol phase - PAERO(:,JP_CH_SO4i) = PCTOTA(:,JP_AER_SO4,1)*ZCSTAVOG / PMI(:,JP_AER_SO4) - PAERO(:,JP_CH_SO4j) = PCTOTA(:,JP_AER_SO4,2)*ZCSTAVOG / PMI(:,JP_AER_SO4) - PAERO(:,JP_CH_NO3i) = PCTOTA(:,JP_AER_NO3,1)*ZCSTAVOG / PMI(:,JP_AER_NO3) - PAERO(:,JP_CH_NO3j) = PCTOTA(:,JP_AER_NO3,2)*ZCSTAVOG / PMI(:,JP_AER_NO3) - PAERO(:,JP_CH_NH3i) = PCTOTA(:,JP_AER_NH3,1)*ZCSTAVOG / PMI(:,JP_AER_NH3) - PAERO(:,JP_CH_NH3j) = PCTOTA(:,JP_AER_NH3,2)*ZCSTAVOG / PMI(:,JP_AER_NH3) -! -! water - PAERO(:,JP_CH_H2Oi) = PCTOTA(:,JP_AER_H2O,1)*ZCSTAVOG / PMI(:,JP_AER_H2O) - PAERO(:,JP_CH_H2Oj) = PCTOTA(:,JP_AER_H2O,2)*ZCSTAVOG / PMI(:,JP_AER_H2O) -! -! primary organic carbon - PAERO(:,JP_CH_OCi) = PCTOTA(:,JP_AER_OC,1)*ZCSTAVOG / PMI(:,JP_AER_OC) - PAERO(:,JP_CH_OCj) = PCTOTA(:,JP_AER_OC,2)*ZCSTAVOG / PMI(:,JP_AER_OC) -! -! primary black carbon - PAERO(:,JP_CH_BCi) = PCTOTA(:,JP_AER_BC,1)*ZCSTAVOG / PMI(:,JP_AER_BC) - PAERO(:,JP_CH_BCj) = PCTOTA(:,JP_AER_BC,2)*ZCSTAVOG / PMI(:,JP_AER_BC) -! -IF (NSOA .EQ. 10) THEN -! Secondary organic carbon - PAERO(:,JP_CH_SOA1i) = PCTOTA(:,JP_AER_SOA1,1)*ZCSTAVOG / PMI(:,JP_AER_SOA1) - PAERO(:,JP_CH_SOA1j) = PCTOTA(:,JP_AER_SOA1,2)*ZCSTAVOG / PMI(:,JP_AER_SOA1) - - PAERO(:,JP_CH_SOA2i) = PCTOTA(:,JP_AER_SOA2,1)*ZCSTAVOG / PMI(:,JP_AER_SOA2) - PAERO(:,JP_CH_SOA2j) = PCTOTA(:,JP_AER_SOA2,2)*ZCSTAVOG / PMI(:,JP_AER_SOA2) - - PAERO(:,JP_CH_SOA3i) = PCTOTA(:,JP_AER_SOA3,1)*ZCSTAVOG / PMI(:,JP_AER_SOA3) - PAERO(:,JP_CH_SOA3j) = PCTOTA(:,JP_AER_SOA3,2)*ZCSTAVOG / PMI(:,JP_AER_SOA3) - - PAERO(:,JP_CH_SOA4i) = PCTOTA(:,JP_AER_SOA4,1)*ZCSTAVOG / PMI(:,JP_AER_SOA4) - PAERO(:,JP_CH_SOA4j) = PCTOTA(:,JP_AER_SOA4,2)*ZCSTAVOG / PMI(:,JP_AER_SOA4) - - PAERO(:,JP_CH_SOA5i) = PCTOTA(:,JP_AER_SOA5,1)*ZCSTAVOG / PMI(:,JP_AER_SOA5) - PAERO(:,JP_CH_SOA5j) = PCTOTA(:,JP_AER_SOA5,2)*ZCSTAVOG / PMI(:,JP_AER_SOA5) - - PAERO(:,JP_CH_SOA6i) = PCTOTA(:,JP_AER_SOA6,1)*ZCSTAVOG / PMI(:,JP_AER_SOA6) - PAERO(:,JP_CH_SOA6j) = PCTOTA(:,JP_AER_SOA6,2)*ZCSTAVOG / PMI(:,JP_AER_SOA6) - - PAERO(:,JP_CH_SOA7i) = PCTOTA(:,JP_AER_SOA7,1)*ZCSTAVOG / PMI(:,JP_AER_SOA7) - PAERO(:,JP_CH_SOA7j) = PCTOTA(:,JP_AER_SOA7,2)*ZCSTAVOG / PMI(:,JP_AER_SOA7) - - PAERO(:,JP_CH_SOA8i) = PCTOTA(:,JP_AER_SOA8,1)*ZCSTAVOG / PMI(:,JP_AER_SOA8) - PAERO(:,JP_CH_SOA8j) = PCTOTA(:,JP_AER_SOA8,2)*ZCSTAVOG / PMI(:,JP_AER_SOA8) - - PAERO(:,JP_CH_SOA9i) = PCTOTA(:,JP_AER_SOA9,1)*ZCSTAVOG / PMI(:,JP_AER_SOA9) - PAERO(:,JP_CH_SOA9j) = PCTOTA(:,JP_AER_SOA9,2)*ZCSTAVOG / PMI(:,JP_AER_SOA9) - - PAERO(:,JP_CH_SOA10i) = PCTOTA(:,JP_AER_SOA10,1)*ZCSTAVOG / PMI(:,JP_AER_SOA10) - PAERO(:,JP_CH_SOA10j) = PCTOTA(:,JP_AER_SOA10,2)*ZCSTAVOG / PMI(:,JP_AER_SOA10) - -IF (TRIM(CORGANIC) == 'PUN') THEN - IF (GSCHEME == "RELACS2") THEN ! ReLACS2 scheme - PCONC(:,JP_CH_URG1) = PFRAC(:,JP_CH_URG1) * PCTOTG(:,JP_AER_SOA1) * ZCSTAVOG / XURG1 - - PCONC(:,JP_CH_URG2) = PFRAC(:,JP_CH_URG2) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XURG2 - PCONC(:,JP_CH_RPG2) = PFRAC(:,JP_CH_RPG2) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRPG2 - PCONC(:,JP_CH_RP18) = PFRAC(:,JP_CH_RP18) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRP18 - - PCONC(:,JP_CH_RPG3) = PFRAC(:,JP_CH_RPG3) * PCTOTG(:,JP_AER_SOA3) * ZCSTAVOG / XRPG3 - - PCONC(:,JP_CH_URG4) = PFRAC(:,JP_CH_URG4) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XURG4 - - PCONC(:,JP_CH_UR17) = PFRAC(:,JP_CH_UR17) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XUR17 - - PCONC(:,JP_CH_RPR3) = PFRAC(:,JP_CH_RPR3) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XRPR3 - PCONC(:,JP_CH_AP7) = PFRAC(:,JP_CH_AP7) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XAP7 - - PCONC(:,JP_CH_UR22) = PFRAC(:,JP_CH_UR22) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XUR22 - PCONC(:,JP_CH_URG6) = PFRAC(:,JP_CH_URG6) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XURG6 - - PCONC(:,JP_CH_URG7) = PFRAC(:,JP_CH_URG7) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XURG7 - PCONC(:,JP_CH_RPG7) = PFRAC(:,JP_CH_RPG7) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRPG7 - PCONC(:,JP_CH_RPR4) = PFRAC(:,JP_CH_RPR4) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRPR4 - PCONC(:,JP_CH_RPR7) = PFRAC(:,JP_CH_RPR7) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRPR7 - - PCONC(:,JP_CH_URG8) = PFRAC(:,JP_CH_URG8) * PCTOTG(:,JP_AER_SOA8) * ZCSTAVOG / XURG8 - - PCONC(:,JP_CH_URG9) = PFRAC(:,JP_CH_URG9) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XURG9 - PCONC(:,JP_CH_UR26) = PFRAC(:,JP_CH_UR26) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR26 - - PCONC(:,JP_CH_URG10) = PFRAC(:,JP_CH_URG10)* PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XURG10 - PCONC(:,JP_CH_UR7) = PFRAC(:,JP_CH_UR7) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR7 - PCONC(:,JP_CH_UR8) = PFRAC(:,JP_CH_UR8) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR8 - PCONC(:,JP_CH_PAN8) = PFRAC(:,JP_CH_PAN8) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XPAN8 - - ELSE ! CACM scheme - PCONC(:,JP_CH_UR21) = PFRAC(:,JP_CH_UR21) * PCTOTG(:,JP_AER_SOA1) * ZCSTAVOG / XUR21 - PCONC(:,JP_CH_UR28) = PFRAC(:,JP_CH_UR28) * PCTOTG(:,JP_AER_SOA1) * ZCSTAVOG / XUR28 - - PCONC(:,JP_CH_UR29) = PFRAC(:,JP_CH_UR29) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XUR29 - PCONC(:,JP_CH_UR30) = PFRAC(:,JP_CH_UR30) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XUR30 - PCONC(:,JP_CH_RP13) = PFRAC(:,JP_CH_RP13) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRP13 - PCONC(:,JP_CH_RP17) = PFRAC(:,JP_CH_RP17) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRP17 - PCONC(:,JP_CH_RP18) = PFRAC(:,JP_CH_RP18) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRP18 - - PCONC(:,JP_CH_RPR9) = PFRAC(:,JP_CH_RPR9) * PCTOTG(:,JP_AER_SOA3) * ZCSTAVOG / XRPR9 - PCONC(:,JP_CH_RP12) = PFRAC(:,JP_CH_RP12) * PCTOTG(:,JP_AER_SOA3) * ZCSTAVOG / XRP12 - - PCONC(:,JP_CH_UR3 ) = PFRAC(:,JP_CH_UR3 ) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XUR3 - PCONC(:,JP_CH_UR23) = PFRAC(:,JP_CH_UR23) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XUR23 - - PCONC(:,JP_CH_UR17) = PFRAC(:,JP_CH_UR17) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XUR17 - PCONC(:,JP_CH_RPR3) = PFRAC(:,JP_CH_RPR3) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XRPR3 - PCONC(:,JP_CH_AP7) = PFRAC(:,JP_CH_AP7) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XAP7 - - PCONC(:,JP_CH_UR22) = PFRAC(:,JP_CH_UR22) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XUR22 - PCONC(:,JP_CH_UR31) = PFRAC(:,JP_CH_UR31) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XUR31 - PCONC(:,JP_CH_AP1) = PFRAC(:,JP_CH_AP1 ) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XAP1 - PCONC(:,JP_CH_AP6) = PFRAC(:,JP_CH_AP6 ) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XAP6 - - PCONC(:,JP_CH_ADAC) = PFRAC(:,JP_CH_ADAC) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XADAC - PCONC(:,JP_CH_UR14) = PFRAC(:,JP_CH_UR14) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XUR14 - PCONC(:,JP_CH_UR27) = PFRAC(:,JP_CH_UR27) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XUR27 - PCONC(:,JP_CH_UR2 ) = PFRAC(:,JP_CH_UR2 ) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XUR2 - PCONC(:,JP_CH_RP14) = PFRAC(:,JP_CH_RP14) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRP14 - PCONC(:,JP_CH_RP19) = PFRAC(:,JP_CH_RP19) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRP19 - PCONC(:,JP_CH_RPR4) = PFRAC(:,JP_CH_RPR4) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRPR4 - PCONC(:,JP_CH_RPR7) = PFRAC(:,JP_CH_RPR7) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRPR7 - - PCONC(:,JP_CH_UR11) = PFRAC(:,JP_CH_UR11) * PCTOTG(:,JP_AER_SOA8) * ZCSTAVOG / XUR11 - PCONC(:,JP_CH_UR15) = PFRAC(:,JP_CH_UR15) * PCTOTG(:,JP_AER_SOA8) * ZCSTAVOG / XUR15 - PCONC(:,JP_CH_AP10) = PFRAC(:,JP_CH_AP10) * PCTOTG(:,JP_AER_SOA8) * ZCSTAVOG / XAP10 - - PCONC(:,JP_CH_UR20) = PFRAC(:,JP_CH_UR20) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR20 - PCONC(:,JP_CH_UR34) = PFRAC(:,JP_CH_UR34) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR34 - PCONC(:,JP_CH_AP11) = PFRAC(:,JP_CH_AP11) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XAP11 - PCONC(:,JP_CH_AP12) = PFRAC(:,JP_CH_AP12) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XAP12 - PCONC(:,JP_CH_UR26) = PFRAC(:,JP_CH_UR26) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR26 - - PCONC(:,JP_CH_UR5) = PFRAC(:,JP_CH_UR5) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR5 - PCONC(:,JP_CH_UR6) = PFRAC(:,JP_CH_UR6) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR6 - PCONC(:,JP_CH_UR7) = PFRAC(:,JP_CH_UR7) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR7 - PCONC(:,JP_CH_UR8) = PFRAC(:,JP_CH_UR8) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR8 - PCONC(:,JP_CH_AP8) = PFRAC(:,JP_CH_AP8) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XAP8 - PCONC(:,JP_CH_PAN8) = PFRAC(:,JP_CH_PAN8) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XPAN8 - END IF -END IF -IF (TRIM(CORGANIC) == 'MPMPO') THEN - - IF (GSCHEME == "RELACS2") THEN ! ReLACS2 scheme - PCONC(:,JP_CH_URG6) = PFRAC(:,JP_CH_URG6) * PCTOTG(:,JP_AER_SOA1) * ZCSTAVOG / XURG6 - PCONC(:,JP_CH_URG7) = PFRAC(:,JP_CH_URG7) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XURG7 - PCONC(:,JP_CH_RPR7) = PFRAC(:,JP_CH_RPR7) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRPR7 - PCONC(:,JP_CH_RPG7) = PFRAC(:,JP_CH_RPG7) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRPG7 - - PCONC(:,JP_CH_URG8) = PFRAC(:,JP_CH_URG8) * PCTOTG(:,JP_AER_SOA3) * ZCSTAVOG / XURG8 - - PCONC(:,JP_CH_URG9) = PFRAC(:,JP_CH_URG9) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XURG9 - - PCONC(:,JP_CH_URG10) = PFRAC(:,JP_CH_URG10) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XURG10 - PCONC(:,JP_CH_AP7) = PFRAC(:,JP_CH_AP7) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XAP7 - - PCONC(:,JP_CH_URG1) = PFRAC(:,JP_CH_URG1) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XURG1 - - PCONC(:,JP_CH_URG2) = PFRAC(:,JP_CH_URG2) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XURG2 - PCONC(:,JP_CH_RPG2) = PFRAC(:,JP_CH_RPG2) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRPG2 - PCONC(:,JP_CH_RP18) = PFRAC(:,JP_CH_RP18) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRP18 - PCONC(:,JP_CH_UR26) = PFRAC(:,JP_CH_UR26) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XUR26 - - PCONC(:,JP_CH_RPG3) = PFRAC(:,JP_CH_RPG3) * PCTOTG(:,JP_AER_SOA8) * ZCSTAVOG / XRPG3 - - PCONC(:,JP_CH_URG4) = PFRAC(:,JP_CH_URG4) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XURG4 - PCONC(:,JP_CH_UR8) = PFRAC(:,JP_CH_UR8) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR8 - - PCONC(:,JP_CH_UR7) = PFRAC(:,JP_CH_UR7)* PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR7 - PCONC(:,JP_CH_UR17) = PFRAC(:,JP_CH_UR17) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR17 - ELSE ! CACM scheme - PCONC(:,JP_CH_UR31) = PFRAC(:,JP_CH_UR31) * PCTOTG(:,JP_AER_SOA1) * ZCSTAVOG / XUR31 - PCONC(:,JP_CH_AP1) = PFRAC(:,JP_CH_AP1) * PCTOTG(:,JP_AER_SOA1) * ZCSTAVOG / XAP1 - PCONC(:,JP_CH_AP6) = PFRAC(:,JP_CH_AP6) * PCTOTG(:,JP_AER_SOA1) * ZCSTAVOG / XAP6 - - PCONC(:,JP_CH_ADAC) = PFRAC(:,JP_CH_ADAC) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XADAC - PCONC(:,JP_CH_RPR7) = PFRAC(:,JP_CH_RPR7) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRPR7 - PCONC(:,JP_CH_UR2) = PFRAC(:,JP_CH_UR2) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XUR2 - PCONC(:,JP_CH_UR14) = PFRAC(:,JP_CH_UR14) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XUR14 - PCONC(:,JP_CH_UR27) = PFRAC(:,JP_CH_UR27) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XUR27 - PCONC(:,JP_CH_RP14) = PFRAC(:,JP_CH_RP14) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRP14 - PCONC(:,JP_CH_RP19) = PFRAC(:,JP_CH_RP19) * PCTOTG(:,JP_AER_SOA2) * ZCSTAVOG / XRP19 - - PCONC(:,JP_CH_UR11) = PFRAC(:,JP_CH_UR11) * PCTOTG(:,JP_AER_SOA3) * ZCSTAVOG / XUR11 - PCONC(:,JP_CH_UR15) = PFRAC(:,JP_CH_UR15) * PCTOTG(:,JP_AER_SOA3) * ZCSTAVOG / XUR15 - PCONC(:,JP_CH_AP10) = PFRAC(:,JP_CH_AP10) * PCTOTG(:,JP_AER_SOA3) * ZCSTAVOG / XAP10 - - PCONC(:,JP_CH_UR20) = PFRAC(:,JP_CH_UR20) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XUR20 - PCONC(:,JP_CH_UR34) = PFRAC(:,JP_CH_UR34) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XUR34 - PCONC(:,JP_CH_AP11) = PFRAC(:,JP_CH_AP11) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XAP11 - PCONC(:,JP_CH_AP12) = PFRAC(:,JP_CH_AP12) * PCTOTG(:,JP_AER_SOA4) * ZCSTAVOG / XAP12 - - PCONC(:,JP_CH_UR5) = PFRAC(:,JP_CH_UR5) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XUR5 - PCONC(:,JP_CH_UR6) = PFRAC(:,JP_CH_UR6) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XUR6 - PCONC(:,JP_CH_AP7) = PFRAC(:,JP_CH_AP7) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XAP7 - PCONC(:,JP_CH_AP8) = PFRAC(:,JP_CH_AP8) * PCTOTG(:,JP_AER_SOA5) * ZCSTAVOG / XAP8 - - PCONC(:,JP_CH_UR21) = PFRAC(:,JP_CH_UR21) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XUR21 - PCONC(:,JP_CH_UR28) = PFRAC(:,JP_CH_UR28) * PCTOTG(:,JP_AER_SOA6) * ZCSTAVOG / XUR28 - - PCONC(:,JP_CH_UR29) = PFRAC(:,JP_CH_UR29) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XUR29 - PCONC(:,JP_CH_UR26) = PFRAC(:,JP_CH_UR26) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XUR26 - PCONC(:,JP_CH_UR30) = PFRAC(:,JP_CH_UR30) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XUR30 - PCONC(:,JP_CH_RP13) = PFRAC(:,JP_CH_RP13) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRP13 - PCONC(:,JP_CH_RP17) = PFRAC(:,JP_CH_RP17) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRP17 - PCONC(:,JP_CH_RP18) = PFRAC(:,JP_CH_RP18) * PCTOTG(:,JP_AER_SOA7) * ZCSTAVOG / XRP18 - - PCONC(:,JP_CH_RPR9) = PFRAC(:,JP_CH_RPR9) * PCTOTG(:,JP_AER_SOA8) * ZCSTAVOG / XRPR9 - PCONC(:,JP_CH_RP12) = PFRAC(:,JP_CH_RP12) * PCTOTG(:,JP_AER_SOA8) * ZCSTAVOG / XRP12 - - PCONC(:,JP_CH_UR3) = PFRAC(:,JP_CH_UR3) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR3 - PCONC(:,JP_CH_UR23) = PFRAC(:,JP_CH_UR23) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR23 - PCONC(:,JP_CH_UR8) = PFRAC(:,JP_CH_UR8) * PCTOTG(:,JP_AER_SOA9) * ZCSTAVOG / XUR8 - - PCONC(:,JP_CH_UR7) = PFRAC(:,JP_CH_UR7) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR7 - PCONC(:,JP_CH_UR17) = PFRAC(:,JP_CH_UR17) * PCTOTG(:,JP_AER_SOA10) * ZCSTAVOG / XUR17 - END IF -END IF -END IF -! -!* 2.n transfer moment 0 and 6 back to gas variables -! - PAERO(:,JP_CH_M0i) = PM(:,1) * 1E-6 ! convert from 1/m3 to 1/cc - PAERO(:,JP_CH_M0j) = PM(:,4) * 1E-6 ! convert from 1/m3 to 1/cc -IF (LVARSIGI) PAERO(:,JP_CH_M6i) = PM(:,3) -IF (LVARSIGJ) PAERO(:,JP_CH_M6j) = PM(:,6) -! -!* 2.n transfer N, SIG, RG, RHOP - -DO JN=1,JPMODE - PN0(:,JN) =PM(:,NM0(JN)) - PRG0(:,JN)=PM(:,NM3(JN))**(2./3.) & - / (PM(:,NM0(JN))**(0.5)*PM(:,NM6(JN))**(1./6.)) -! -!attention, le xsig0 représente en réalité ln(sigma) -! - PSIG0(:,JN)=1./3.*sqrt(-log(PM(:,NM3(JN))**2/(PM(:,NM0(JN))*PM(:,NM6(JN))))) -ENDDO - -END IF -! -! -IF (LHOOK) CALL DR_HOOK('CH_AER_TRANS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_TRANS diff --git a/src/arome/chem/internals/ch_aer_velgrav_n.F90 b/src/arome/chem/internals/ch_aer_velgrav_n.F90 deleted file mode 100644 index ccd575e8a517d5855ac3d85dd0fef662ed282234..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aer_velgrav_n.F90 +++ /dev/null @@ -1,103 +0,0 @@ -! ######spl -SUBROUTINE CH_AER_VELGRAV_n(PSIG, PRG, PTHT, PABST, PRHODREF, PRHOP, PMU, PVGK,PDPK, PVGG) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet (meteo france) -!! -!! MODIFICATIONS -!! ------------- -!! -! Entry variables: -! -! PM(IN) -Array of moments -! -!************************************************************* -! Exit variables: -! -! PFSED(IN) -Array of moment variation due to dry deposition -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! PDPK -Polydisperse diffusivity (m2/s) -! PVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!! IMPLICIT ARGUMENTS -USE MODD_CH_AEROSOL -USE MODD_CH_AERO_n -!! -!------------------------------------------------------------------------------- -IMPLICIT NONE -! -!* 0.1 Declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGK,PDPK -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PMU -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGG -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRHOP -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG, PRG -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST, PRHODREF -! -!* 0.2 Declarations of local variables -! -REAL, DIMENSION(size(PSIG,1),size(PSIG,2),size(PSIG,3)) :: ZTEMP,ZLAMBDA -REAL, DIMENSION(size(PSIG,1),size(PSIG,2),size(PSIG,3)) :: ZRG,ZLN2S -REAL, DIMENSION(size(PSIG,1),size(PSIG,2),size(PSIG,3)) :: ZKNG -REAL, DIMENSION(size(PSIG,1),size(PSIG,2),size(PSIG,3),JPMODE) :: ZDPG -! -REAL, PARAMETER :: gasmw=28.9644d0 -REAL :: ZK -! -INTEGER :: JI,JJ -! -!------------------------------------------------------------------------------- -!temperature -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_AER_VELGRAV_N',0,ZHOOK_HANDLE) -ZTEMP(:,:,:)=PTHT(:,:,:)*(PABST(:,:,:)/XP00)**(XRD/XCPD) -! -! Sutherland's equation for viscosity -PMU(:,:,:)=1.8325d-5*416.16/(ZTEMP(:,:,:)+120)*(ZTEMP(:,:,:)/296.16)*SQRT(ZTEMP(:,:,:)/296.16) -!PMU(:,:,:)=0.003661*ZTEMP(:,:,:) -!PMU(:,:,:)=.0066164*PMU(:,:,:)*sqrt(PMU(:,:,:))/(ZTEMP(:,:,:)+114.d0) -! -! Mean free path (Seinfeld and Pandis p455) -ZLAMBDA(:,:,:)=PMU(:,:,:)/PRHODREF(:,:,:)*sqrt(1.89d-4*gasmw/ZTEMP(:,:,:))*1.e6 -! -DO JI=1,JPMODE - ! - ZRG(:,:,:)=PRG(:,:,:,JI) * 1E-6 - ZLN2S(:,:,:)=LOG(PSIG(:,:,:,JI))**2 - ! - ZKNG(:,:,:)=ZLAMBDA(:,:,:) / PRG(:,:,:,JI) - ! - PVGG(:,:,:,JI)= 2.*XG*PRHOP(:,:,:,JI)*ZRG(:,:,:)**2 /(9.*PMU(:,:,:)) - ZDPG(:,:,:,JI)=XBOLTZ*ZTEMP(:,:,:)/ (6.*XPI* ZRG(:,:,:)*PMU(:,:,:)) - ! - DO JJ=0,2 - ! - ZK=real(3*JJ) - PDPK(:,:,:,3*JI+JJ-2)=ZDPG(:,:,:,JI)*(exp((-2.*ZK+1.)/2.*ZLN2S(:,:,:))+1.246*ZKNG(:,:,:)*& - exp((-4.*ZK+4)/2.*ZLN2S(:,:,:))) - - PVGK(:,:,:,3*JI+JJ-2)=PVGG(:,:,:,JI)*& - (exp((4.*ZK+4.)/2.*ZLN2S(:,:,:)) + 1.246*ZKNG(:,:,:)* exp((2.*ZK+1.)/2.*ZLN2S(:,:,:))) - ! - ENDDO - ! -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_AER_VELGRAV_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AER_VELGRAV_n diff --git a/src/arome/chem/internals/ch_allocate_taccs.F90 b/src/arome/chem/internals/ch_allocate_taccs.F90 deleted file mode 100644 index 6539bc52d7dbd0dc0c3fa6cdfdc7984e63ddb5e6..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_allocate_taccs.F90 +++ /dev/null @@ -1,202 +0,0 @@ -! ######spl - SUBROUTINE CH_ALLOCATE_TACCS(KMI,KVECNPT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ###################################### -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!!*** *CH_ALLOCATE_TACCS* -!! -!! PURPOSE -!! ------- -! Allocation of all CCSTYPE variables for model KMI -!! -!!** METHOD -!! ------ -!! -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Gazen Didier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/06/2005 -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, INTENT(IN) :: KMI ! model index -INTEGER, INTENT(IN) :: KVECNPT -!! -!!---------------------------------------------------------------------- -! /BEGIN_INITIAL/ -! /END_INITIAL/ -! initialisation of the names of the chemical species -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_ALLOCATE_TACCS',0,ZHOOK_HANDLE) -ALLOCATE(TACCS(KMI)%K001(KVECNPT)) -ALLOCATE(TACCS(KMI)%K002(KVECNPT)) -ALLOCATE(TACCS(KMI)%K003(KVECNPT)) -ALLOCATE(TACCS(KMI)%K004(KVECNPT)) -ALLOCATE(TACCS(KMI)%K005(KVECNPT)) -ALLOCATE(TACCS(KMI)%K006(KVECNPT)) -ALLOCATE(TACCS(KMI)%K007(KVECNPT)) -ALLOCATE(TACCS(KMI)%K008(KVECNPT)) -ALLOCATE(TACCS(KMI)%K009(KVECNPT)) -ALLOCATE(TACCS(KMI)%K010(KVECNPT)) -ALLOCATE(TACCS(KMI)%K011(KVECNPT)) -ALLOCATE(TACCS(KMI)%K012(KVECNPT)) -ALLOCATE(TACCS(KMI)%K013(KVECNPT)) -ALLOCATE(TACCS(KMI)%K014(KVECNPT)) -ALLOCATE(TACCS(KMI)%K015(KVECNPT)) -ALLOCATE(TACCS(KMI)%K016(KVECNPT)) -ALLOCATE(TACCS(KMI)%K017(KVECNPT)) -ALLOCATE(TACCS(KMI)%K018(KVECNPT)) -ALLOCATE(TACCS(KMI)%K019(KVECNPT)) -ALLOCATE(TACCS(KMI)%K020(KVECNPT)) -ALLOCATE(TACCS(KMI)%K021(KVECNPT)) -ALLOCATE(TACCS(KMI)%K022(KVECNPT)) -ALLOCATE(TACCS(KMI)%K023(KVECNPT)) -ALLOCATE(TACCS(KMI)%K024(KVECNPT)) -ALLOCATE(TACCS(KMI)%K025(KVECNPT)) -ALLOCATE(TACCS(KMI)%K026(KVECNPT)) -ALLOCATE(TACCS(KMI)%K027(KVECNPT)) -ALLOCATE(TACCS(KMI)%K028(KVECNPT)) -ALLOCATE(TACCS(KMI)%K029(KVECNPT)) -ALLOCATE(TACCS(KMI)%K030(KVECNPT)) -ALLOCATE(TACCS(KMI)%K031(KVECNPT)) -ALLOCATE(TACCS(KMI)%K032(KVECNPT)) -ALLOCATE(TACCS(KMI)%K033(KVECNPT)) -ALLOCATE(TACCS(KMI)%K034(KVECNPT)) -ALLOCATE(TACCS(KMI)%K035(KVECNPT)) -ALLOCATE(TACCS(KMI)%K036(KVECNPT)) -ALLOCATE(TACCS(KMI)%K037(KVECNPT)) -ALLOCATE(TACCS(KMI)%K038(KVECNPT)) -ALLOCATE(TACCS(KMI)%K039(KVECNPT)) -ALLOCATE(TACCS(KMI)%K040(KVECNPT)) -ALLOCATE(TACCS(KMI)%K041(KVECNPT)) -ALLOCATE(TACCS(KMI)%K042(KVECNPT)) -ALLOCATE(TACCS(KMI)%K043(KVECNPT)) -ALLOCATE(TACCS(KMI)%K044(KVECNPT)) -ALLOCATE(TACCS(KMI)%K045(KVECNPT)) -ALLOCATE(TACCS(KMI)%K046(KVECNPT)) -ALLOCATE(TACCS(KMI)%K047(KVECNPT)) -ALLOCATE(TACCS(KMI)%K048(KVECNPT)) -ALLOCATE(TACCS(KMI)%K049(KVECNPT)) -ALLOCATE(TACCS(KMI)%K050(KVECNPT)) -ALLOCATE(TACCS(KMI)%K051(KVECNPT)) -ALLOCATE(TACCS(KMI)%K052(KVECNPT)) -ALLOCATE(TACCS(KMI)%K053(KVECNPT)) -ALLOCATE(TACCS(KMI)%K054(KVECNPT)) -ALLOCATE(TACCS(KMI)%K055(KVECNPT)) -ALLOCATE(TACCS(KMI)%K056(KVECNPT)) -ALLOCATE(TACCS(KMI)%K057(KVECNPT)) -ALLOCATE(TACCS(KMI)%K058(KVECNPT)) -ALLOCATE(TACCS(KMI)%K059(KVECNPT)) -ALLOCATE(TACCS(KMI)%K060(KVECNPT)) -ALLOCATE(TACCS(KMI)%K061(KVECNPT)) -ALLOCATE(TACCS(KMI)%K062(KVECNPT)) -ALLOCATE(TACCS(KMI)%K063(KVECNPT)) -ALLOCATE(TACCS(KMI)%K064(KVECNPT)) -ALLOCATE(TACCS(KMI)%K065(KVECNPT)) -ALLOCATE(TACCS(KMI)%K066(KVECNPT)) -ALLOCATE(TACCS(KMI)%K067(KVECNPT)) -ALLOCATE(TACCS(KMI)%K068(KVECNPT)) -ALLOCATE(TACCS(KMI)%K069(KVECNPT)) -ALLOCATE(TACCS(KMI)%K070(KVECNPT)) -ALLOCATE(TACCS(KMI)%K071(KVECNPT)) -ALLOCATE(TACCS(KMI)%K072(KVECNPT)) -ALLOCATE(TACCS(KMI)%K073(KVECNPT)) -ALLOCATE(TACCS(KMI)%K074(KVECNPT)) -ALLOCATE(TACCS(KMI)%K075(KVECNPT)) -ALLOCATE(TACCS(KMI)%K076(KVECNPT)) -ALLOCATE(TACCS(KMI)%K077(KVECNPT)) -ALLOCATE(TACCS(KMI)%K078(KVECNPT)) -ALLOCATE(TACCS(KMI)%K079(KVECNPT)) -ALLOCATE(TACCS(KMI)%K080(KVECNPT)) -ALLOCATE(TACCS(KMI)%K081(KVECNPT)) -ALLOCATE(TACCS(KMI)%K082(KVECNPT)) -ALLOCATE(TACCS(KMI)%K083(KVECNPT)) -ALLOCATE(TACCS(KMI)%K084(KVECNPT)) -ALLOCATE(TACCS(KMI)%K085(KVECNPT)) -ALLOCATE(TACCS(KMI)%K086(KVECNPT)) -ALLOCATE(TACCS(KMI)%K087(KVECNPT)) -ALLOCATE(TACCS(KMI)%K088(KVECNPT)) -ALLOCATE(TACCS(KMI)%K089(KVECNPT)) -ALLOCATE(TACCS(KMI)%K090(KVECNPT)) -ALLOCATE(TACCS(KMI)%K091(KVECNPT)) -ALLOCATE(TACCS(KMI)%K092(KVECNPT)) -ALLOCATE(TACCS(KMI)%K093(KVECNPT)) -ALLOCATE(TACCS(KMI)%K094(KVECNPT)) -ALLOCATE(TACCS(KMI)%K095(KVECNPT)) -ALLOCATE(TACCS(KMI)%K096(KVECNPT)) -ALLOCATE(TACCS(KMI)%K097(KVECNPT)) -ALLOCATE(TACCS(KMI)%K098(KVECNPT)) -ALLOCATE(TACCS(KMI)%K099(KVECNPT)) -ALLOCATE(TACCS(KMI)%K100(KVECNPT)) -ALLOCATE(TACCS(KMI)%K101(KVECNPT)) -ALLOCATE(TACCS(KMI)%K102(KVECNPT)) -ALLOCATE(TACCS(KMI)%K103(KVECNPT)) -ALLOCATE(TACCS(KMI)%K104(KVECNPT)) -ALLOCATE(TACCS(KMI)%K105(KVECNPT)) -ALLOCATE(TACCS(KMI)%K106(KVECNPT)) -ALLOCATE(TACCS(KMI)%K107(KVECNPT)) -ALLOCATE(TACCS(KMI)%K108(KVECNPT)) -ALLOCATE(TACCS(KMI)%K109(KVECNPT)) -ALLOCATE(TACCS(KMI)%K110(KVECNPT)) -ALLOCATE(TACCS(KMI)%K111(KVECNPT)) -ALLOCATE(TACCS(KMI)%K112(KVECNPT)) -ALLOCATE(TACCS(KMI)%K113(KVECNPT)) -ALLOCATE(TACCS(KMI)%K114(KVECNPT)) -ALLOCATE(TACCS(KMI)%K115(KVECNPT)) -ALLOCATE(TACCS(KMI)%K116(KVECNPT)) -ALLOCATE(TACCS(KMI)%K117(KVECNPT)) -ALLOCATE(TACCS(KMI)%K118(KVECNPT)) -ALLOCATE(TACCS(KMI)%K119(KVECNPT)) -ALLOCATE(TACCS(KMI)%K120(KVECNPT)) -ALLOCATE(TACCS(KMI)%K121(KVECNPT)) -ALLOCATE(TACCS(KMI)%K122(KVECNPT)) -ALLOCATE(TACCS(KMI)%K123(KVECNPT)) -ALLOCATE(TACCS(KMI)%K124(KVECNPT)) -ALLOCATE(TACCS(KMI)%K125(KVECNPT)) -ALLOCATE(TACCS(KMI)%K126(KVECNPT)) -ALLOCATE(TACCS(KMI)%K127(KVECNPT)) -ALLOCATE(TACCS(KMI)%K128(KVECNPT)) -ALLOCATE(TACCS(KMI)%NOUT(KVECNPT)) -ALLOCATE(TACCS(KMI)%NVERB(KVECNPT)) -ALLOCATE(TACCS(KMI)%MODELLEVEL(KVECNPT)) -ALLOCATE(TACCS(KMI)%T(KVECNPT)) -ALLOCATE(TACCS(KMI)%PRESSURE(KVECNPT)) -ALLOCATE(TACCS(KMI)%M(KVECNPT)) -ALLOCATE(TACCS(KMI)%H2O(KVECNPT)) -ALLOCATE(TACCS(KMI)%CLOUDWATER(KVECNPT)) -ALLOCATE(TACCS(KMI)%O2(KVECNPT)) -ALLOCATE(TACCS(KMI)%N2(KVECNPT)) -ALLOCATE(TACCS(KMI)%H2(KVECNPT)) -ALLOCATE(TACCS(KMI)%OH(KVECNPT)) -ALLOCATE(TACCS(KMI)%O1D(KVECNPT)) -ALLOCATE(TACCS(KMI)%O3P(KVECNPT)) -ALLOCATE(TACCS(KMI)%LAT(KVECNPT)) -ALLOCATE(TACCS(KMI)%LON(KVECNPT)) -ALLOCATE(TACCS(KMI)%YEAR(KVECNPT)) -ALLOCATE(TACCS(KMI)%MONTH(KVECNPT)) -ALLOCATE(TACCS(KMI)%DAY(KVECNPT)) -IF (LHOOK) CALL DR_HOOK('CH_ALLOCATE_TACCS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_ALLOCATE_TACCS diff --git a/src/arome/chem/internals/ch_aqua.F90 b/src/arome/chem/internals/ch_aqua.F90 deleted file mode 100644 index 02c13b405d616da17d08ae49fef06d4b5164c413..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_aqua.F90 +++ /dev/null @@ -1,41 +0,0 @@ -! ######spl - SUBROUTINE CH_AQUA (TEMP, P, LWC, & - H2O2, O3, SO2, CO2, HNO3, H2SO4, NH3, & - PFRAC, PPH, POX ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ########################################################### -!! -!!**** *CH_AQUA* -!! -!! PURPOSE -!! ------- -!! -!! empty box for ch_aqua.f90 -!! -!! EXPLICIT ARGUMENTS -! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: TEMP ! air temperature -REAL, INTENT(IN) :: P ! pressure (in atm) -REAL, INTENT(IN) :: LWC ! cloud liquid water mixing ratio (kg/kg) -REAL, INTENT(IN) :: H2O2, O3, SO2, CO2, HNO3, H2SO4, NH3 - ! total concentration of these chemical species -REAL, INTENT(INOUT) :: PPH ! pH of the droplets -REAL, INTENT(OUT), DIMENSION(3,4) :: PFRAC ! fraction of each dissolved - ! species in the four states -REAL, INTENT(OUT), DIMENSION(2) :: POX ! SO2 oxidation by O3 - ! and H2O2 -!======================================================================= -!======================================================================= -!! -!! EXECUTABLE STATEMENTS -!! --------------------- - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_AQUA',0,ZHOOK_HANDLE) - PFRAC(:,1) = 1.0 - PFRAC(:,2:4) = 0.0 - POX(:) = 0.0 - IF (LHOOK) CALL DR_HOOK('CH_AQUA',1,ZHOOK_HANDLE) - RETURN -END SUBROUTINE CH_AQUA diff --git a/src/arome/chem/internals/ch_ares.F90 b/src/arome/chem/internals/ch_ares.F90 deleted file mode 100644 index d7e49b5319532e01588c6d3efcf207d56866dde0..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_ares.F90 +++ /dev/null @@ -1,103 +0,0 @@ -! ######spl - SUBROUTINE CH_ARES (PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ########################################################## -!! -!! PURPOSE -!! ------- -!! -!! Calculate the aerosol chemical speciation and water content. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! V. Crassier & K. Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -!***************************************************************** -! Parameters of ARES: -! -! SO4 : Total sulfate in MICROGRAMS/M**3 as sulfate (IN) -! HNO3 : Nitric Acid in MICROGRAMS/M**3 as nitric acid (IN) -! NO3 : Total nitrate in MICROGRAMS/M**3 as nitric acid (IN) -! NH3 : Total ammonia in MICROGRAMS/M**3 as ammonia (IN) -! NH4 : Ammonium in MICROGRAMS/M**3 as ammonium (IN) -! RH : Fractional relative humidity (IN) -! TEMP : Temperature in Kelvin (IN) -! GNO3 : Gas phase nitric acid in MICROGRAMS/M**3 (OUT) -! GNH3 : Gas phase ammonia in MICROGRAMS/M**3 (OUT) -! ASO4 : Aerosol phase sulfate in MICROGRAMS/M**3 (OUT) -! ANO3 : Aerosol phase nitrate in MICROGRAMS/M**3 (OUT) -! ANH4 : Aerosol phase ammonium in MICROGRAMS/M**3 (OUT) -! AH2O : Aerosol phase water in MICROGRAMS/M**3 (OUT) -! -!*************************************************************** -!! -!! EXTERNAL -!! ------- -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -IMPLICIT NONE -!...........ARGUMENTS and their descriptions -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC -! -! PAER(:,1) :: H2SO4 in micrograms / m**3 -! PAER(:,2) :: NH3(g) in micrograms / m**3 -! PAER(:,3) :: HNO3(g) in micrograms / m**3 -! PAER(:,4) :: H2O(a) in micrograms / m**3 -! PAER(:,5) :: NO3(a) in micrograms / m**3 -! PAER(:,6) :: NH4(a) in micrograms / m**3 -! -!...........PARAMETERS and their descriptions: - -REAL, PARAMETER :: ZMWNO3 = 62.0049 ! molecular weight for NO3 -REAL, PARAMETER :: ZMWHNO3 = 63.01287 ! molecular weight for HNO3 -REAL, PARAMETER :: ZMWNH3 = 17.03061 ! molecular weight for NH3 -REAL, PARAMETER :: ZMWNH4 = 18.03858 ! molecular weight for NH4 - -INTEGER :: I - -REAL :: SO4,HNO3,NH3,NO3,NH4,TEMP,RH -REAL :: ASO4,ANO3,AH2O,ANH4,GNH3,GNO3 - -EXTERNAL RPMARES -!----------------------------------------------------------------------------- - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_ARES',0,ZHOOK_HANDLE) -DO I=1,SIZE(PAER,1) - - SO4=PAER(I,1) - HNO3=PAER(I,3)+PAER(I,5)*ZMWHNO3/ZMWNO3 - NH3=PAER(I,2)+PAER(I,6)*ZMWNH3/ZMWNH4 - NO3=0. - NH4=0. - TEMP= PTEMP(I) - RH = PRH(I) - -! call ARES - CALL RPMARES ( SO4, HNO3, NO3, NH3, NH4, RH, TEMP, & - ASO4, ANO3, AH2O, ANH4, GNH3, GNO3) - - PAER(I,1)=ASO4 - PAER(I,2)=GNH3 - PAER(I,3)=GNO3 - PAER(I,4)=AH2O - PAER(I,5)=ANO3 - PAER(I,6)=ANH4 - -ENDDO - -IF (LHOOK) CALL DR_HOOK('CH_ARES',1,ZHOOK_HANDLE) -END SUBROUTINE CH_ARES diff --git a/src/arome/chem/internals/ch_convect_scavenging.F90 b/src/arome/chem/internals/ch_convect_scavenging.F90 deleted file mode 100644 index 9f9e97373ae20f9b2d55983e611b94797c8f88d1..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_convect_scavenging.F90 +++ /dev/null @@ -1,716 +0,0 @@ -! ######spl - SUBROUTINE CH_CONVECT_SCAVENGING( KLON, KLEV, KCH, PCH1, PCH1C, & - KDPL, KPBL, KLCL, KCTL, KLFS, KDBL, & - PUMF, PUER, PUDR, PDMF, PDER, PDDR, & - PTIMEC, PDXDY, PMIXF, PLMASS, PWSUB,& - KFTSTEPS, & - PURC, PURR, PURI, PURS, PUTT, PPRESS,& - PRHODREF ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ####################################################################### -! -!!**** Compute modified soluble chemical tracer values due to convective -!! precipitations + transport -!! -!! -!! PURPOSE -!! ------- -!! The purpose of this routine is to determine the final adjusted -!! environmental values of the chemical tracers -!! The final convective tendencies can then be evaluated in the main -!! routine DEEP_CONVECT by (PCH1C-PCH1)/PTIMEC -!! -!! -!!** METHOD -!! ------ -!! Identical to the computation of the conservative variables in the -!! main deep convection code -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_CST -!! XG ! gravity constant -!! -!! Module MODD_CONVPAREXT -!! JCVEXB, JCVEXT ! extra levels on the vertical boundaries -!! -!! AUTHOR -!! ------ -!! C. MARI * Laboratoire d'Aerologie * -!! -!! MODIFICATIONS -!! ------------- -!! -!! Original 10/04/00 -!! P. Tulet 25/04/05 Aerosols/ Dust scavenging -!! -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CST -USE MODD_PARAMETERS -USE MODD_CONVPAREXT -USE MODD_CH_M9 -USE MODD_CH_CONST, ONLY : XSREALHENRYVAL -USE MODD_NSV, ONLY : NSV_CHEMBEG, NSV_CHEMEND, & - NSV_AERBEG, NSV_AEREND, & - NSV_DSTBEG, NSV_DSTEND, & - NSV_SLTBEG, NSV_SLTEND -!USE MODD_SALT, ONLY : LSALT, NMODE_SLT, JPSALTORDER -!USE MODD_DUST, ONLY : LDUST, NMODE_DST, JPDUSTORDER -!USE MODD_CH_AEROSOL, ONLY : JPMODE, LORILAM, NSP, NSOA, NCARB -USE MODD_SALT -USE MODD_DUST -USE MODD_CH_AEROSOL -USE MODD_CSTS_SALT -USE MODD_CSTS_DUST -USE MODE_DUST_PSD -USE MODE_SALT_PSD -USE MODE_AERO_PSD -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -INTEGER, INTENT(IN) :: KLON ! horizontal dimension -INTEGER, INTENT(IN) :: KLEV ! vertical dimension -INTEGER, INTENT(IN) :: KCH ! number of passive tracers -! -REAL,DIMENSION(KLON,KLEV,KCH),INTENT(IN) :: PCH1 ! grid scale tracer concentr. -REAL,DIMENSION(KLON,KLEV,KCH),INTENT(OUT):: PCH1C! conv adjusted tracer concntr. -! -INTEGER, DIMENSION(KLON), INTENT(IN) :: KDPL ! index for departure level -INTEGER, DIMENSION(KLON), INTENT(IN) :: KPBL ! index for top of source layer -INTEGER, DIMENSION(KLON), INTENT(IN) :: KLCL ! index lifting condens. level -INTEGER, DIMENSION(KLON), INTENT(IN) :: KCTL ! index for cloud top level -INTEGER, DIMENSION(KLON), INTENT(IN) :: KLFS ! index for level of free sink -INTEGER, DIMENSION(KLON), INTENT(IN) :: KDBL ! index for downdraft base level -! -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUMF ! updraft mass flux (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUER ! updraft entrainment (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUDR ! updraft detrainment (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PDMF ! downdraft mass flux (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PDER ! downdraft entrainment (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PDDR ! downdraft detrainment (kg/s) -! -REAL, DIMENSION(KLON), INTENT(IN) :: PTIMEC! convection time step -REAL, DIMENSION(KLON), INTENT(IN) :: PDXDY ! grid area (m^2) -REAL, DIMENSION(KLON), INTENT(IN) :: PMIXF ! mixed fraction at LFS -REAL, DIMENSION(KLON,KLEV),INTENT(IN) :: PLMASS! mass of model layer (kg) -REAL, DIMENSION(KLON,KLEV),INTENT(IN) :: PWSUB ! envir. compensating subsidence(Pa/s) -INTEGER, INTENT(IN) :: KFTSTEPS ! maximum fractional time steps -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PURC ! microphysical -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PURR ! reservoirs in the -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PURI ! updraft -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PURS ! -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUTT ! updraft temperature (K) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PPRESS ! Pa -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PRHODREF -! -!* 0.2 Declarations of local variables : -! -INTEGER :: INCH1 ! number of chemical tracers -INTEGER :: IKB,IKE -INTEGER :: IKS ! vertical dimension -INTEGER :: JI ! horizontal loop index -INTEGER :: JK, JKP ! vertical loop index -INTEGER :: JN ! chemical tracer loop index -INTEGER :: IMODEIDX ! mode order index -INTEGER :: JSTEP ! fractional time loop index -INTEGER :: JKLC, JKLD, JKLP, JKMAX ! loop index for levels -INTEGER :: JKAQ -REAL :: ZCONV -! -REAL, DIMENSION(KLON,KLEV) :: ZOMG ! compensat. subsidence (Pa/s) -REAL, DIMENSION(KLON,KLEV,KCH) :: ZUCH1, ZDCH1 ! updraft/downdraft values -REAL, DIMENSION(KLON) :: ZTIMEC ! fractional convective time step -REAL, DIMENSION(KLON,KLEV) :: ZTIMC! 2D work array for ZTIMEC -REAL, DIMENSION(KLON,KLEV,KCH) :: ZCH1MFIN, ZCH1MFOUT - ! work arrays for environm. compensat. mass -REAL, DIMENSION(KLON,KCH) :: ZWORK1, ZWORK2, ZWORK3 -! -! scavenging in updraft -! -REAL, DIMENSION(KLON,KLEV) :: ZT, ZLWCC, ZLWCI, ZKS1, ZKS2 -REAL, DIMENSION(KLON,KLEV) :: ZKHDUST, ZKHCDUST -REAL, DIMENSION(KLON,KLEV) :: ZKHSALT, ZKHCSALT -REAL, DIMENSION(KLON,KLEV,KCH) :: ZKH, ZKHC, ZKHI -REAL, DIMENSION(KLON,KLEV,KCH) :: ZFACTOR -REAL, DIMENSION(KLON,KLEV) :: ZPROS,ZPROR -REAL, DIMENSION(KLON,KLEV,KCH) :: ZPARTSCAV, ZRIM -REAL, DIMENSION(KLON,KLEV) :: ZPARTAERO -REAL :: ZHP -REAL, DIMENSION(KLON,1,KLEV,JPMODE) :: ZRGAER,ZSIGAER, ZNAER, ZBCMIN -REAL, DIMENSION(KLON,1,KLEV,NMODE_DST) :: ZRGDST,ZSIGDST,ZNDST, ZMINMASS_DST,ZRGDSTMIN -REAL, DIMENSION(KLON,1,KLEV,NMODE_SLT) :: ZRGSLT,ZSIGSLT,ZNSLT, ZMINMASS_SLT,ZRGSLTMIN -REAL, DIMENSION(NMODE_DST) :: ZMIN_DST -REAL, DIMENSION(NMODE_SLT) :: ZMIN_SLT -REAL, DIMENSION(KLON,1,KLEV,KCH) :: ZSV, ZSVC -REAL, DIMENSION(KLON,1,KLEV) :: ZRHODREF -REAL, DIMENSION(NMODE_DST) :: ZINIRADIUS_DST -REAL, DIMENSION(NMODE_SLT) :: ZINIRADIUS_SLT -REAL :: ZRHOP, ZFAC, ZMI - -LOGICAL, SAVE :: GCHFIRSTCALL = .TRUE. -! -!------------------------------------------------------------------------------- -! -!* 0.1 Compute loop bounds -! ------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_CONVECT_SCAVENGING',0,ZHOOK_HANDLE) -INCH1 = KCH -IKB = 1 + JCVEXB -IKS = KLEV -IKE = KLEV - JCVEXT -JKMAX = MAXVAL( KCTL(:) ) -! -! -!* 0.2 Initialisation -! -------------- -ZKH(:,:,:) = 0. -ZKHDUST(:,:) = 0. -ZKHSALT(:,:) = 0. -ZKHI(:,:,:) = 0. -ZKHC(:,:,:) = 0. -ZKHCDUST(:,:) = 0. -ZKHCSALT(:,:) = 0. -ZPARTSCAV(:,:,:) = 0. -ZFACTOR(:,:,:) = 0. -ZPROS(:,:) = 0. -ZPROR(:,:) = 0. -ZKS2(:,:) = 0. -ZKS1(:,:) = 0. -! -!* 1. Fraction of tracer present in the liquid/ice cloud condensate -! -------------------------------------------------------------- -! -! 1.1 Total liquid water content m3/m3 -! -------------------------------- -! -ZLWCC(:,:) = 0. -ZLWCI(:,:) = 0. -WHERE ((PURC(:,:)+PURR(:,:)).NE.0.) & - ZLWCC(:,:) = (PURC(:,:)+PURR(:,:))*PRHODREF(:,:)/XRHOLW -! bulk density for ice varies widely from 0.3 to 0.92 g/cm3 -WHERE ((PURI(:,:)+PURS(:,:)).NE.0.) & - ZLWCI(:,:) = (PURI(:,:)+PURS(:,:))*PRHODREF(:,:)/910. -! -ZT(:,:) = PUTT(:,:) -ZHP = 1.E-5 -! -!* 1.2 Fraction of tracer present in the liquid cloud condensate -! --------------------------------------------------------- -DO JKAQ = NSV_CHEMBEG, NSV_CHEMEND - WHERE (ZT(:,:).GT.0.) - ZKS1(:,:) = 1.7E-2 * EXP(-2090.*((1./ZT(:,:))-(1./298.))) - ZKS2(:,:) = 6.3E-8 * EXP(-1495.*((1./ZT(:,:))-(1./298.))) - ZKH(:,:,JKAQ) = XSREALHENRYVAL(JKAQ-NSV_CHEMBEG+1,1)* & - EXP(-XSREALHENRYVAL(JKAQ-NSV_CHEMBEG+1,2)*((1./ZT(:,:))-(1./298.))) - ENDWHERE -ENDDO -! -DO JKAQ = NSV_CHEMBEG, NSV_CHEMEND - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='N2O5') THEN - WHERE (ZT(:,:).GT.0.) - ZKH(:,:,JKAQ) = 2.00E+0*EXP(3400.*((1./ZT(:,:))-(1./298.)))*1.E20 - END WHERE - IF (GCHFIRSTCALL) THEN - WRITE(*,*)'In CH_CONVECT_SCAVENGING: special treatment for',CNAMES(JKAQ-NSV_CHEMBEG+1) - ENDIF -! - ELSE IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HONO' .OR. CNAMES(JKAQ-NSV_CHEMBEG+1)=='HNO2') THEN - WHERE (ZT(:,:).GT.0.) - ZKH(:,:,JKAQ) = 5.00E+1*EXP(4900.*((1./ZT(:,:))-(1./298.)))* & - 5.10E-4*EXP(1250.*((1./ZT(:,:))-(1./298.)))/ZHP - END WHERE - IF (GCHFIRSTCALL) THEN - WRITE(*,*)'In CH_CONVECT_SCAVENGING: special treatment for',CNAMES(JKAQ-NSV_CHEMBEG+1) - ENDIF - ELSE IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HNO3') THEN - WHERE (ZT(:,:).GT.0.) - ZKH(:,:,JKAQ) = 2.10E+5*EXP(8700.*((1./ZT(:,:))-(1./298.)))*15.4/ZHP - END WHERE - IF (GCHFIRSTCALL) THEN - WRITE(*,*)'In CH_CONVECT_SCAVENGING: special treatment for',CNAMES(JKAQ-NSV_CHEMBEG+1) - ENDIF - ELSE IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='SO2') THEN - WHERE (ZT(:,:).GT.0.) - ZKH(:,:,JKAQ) = 1.4*EXP(2900.*((1./ZT(:,:))-(1./298.))) * & - ( 1.+(ZKS1(:,:)/ZHP)+(ZKS1(:,:)*ZKS2(:,:)/ZHP/ZHP)) - END WHERE - IF (GCHFIRSTCALL) THEN - WRITE(*,*)'In CH_CONVECT_SCAVENGING: special treatment for',CNAMES(JKAQ-NSV_CHEMBEG+1) - ENDIF - ELSE IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HO2') THEN - WHERE (ZT(:,:).GT.0.) - ZKH(:,:,JKAQ) = 4.00E+3*EXP(5900.*((1./ZT(:,:))-(1./298.)))*2.5E-5/ZHP - END WHERE - IF (GCHFIRSTCALL) THEN - WRITE(*,*)'In CH_CONVECT_SCAVENGING: special treatment for',CNAMES(JKAQ-NSV_CHEMBEG+1) - ENDIF - ELSE IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='ORA2') THEN - WHERE (ZT(:,:).GT.0.) - ZKH(:,:,JKAQ) = 8.80E+3*EXP(6400.*((1./ZT(:,:))-(1./298.)))* & - 1.70E-5*EXP(50.*((1./ZT(:,:))-(1./298.)))/ZHP - END WHERE - IF (GCHFIRSTCALL) THEN - WRITE(*,*)'In CH_CONVECT_SCAVENGING: special treatment for',CNAMES(JKAQ-NSV_CHEMBEG+1) - ENDIF - ENDIF -! -ENDDO -! -IF (LDUST) THEN - WHERE (ZT(:,:).GT.0.) - ZKHDUST(:,:) = 2.10E+5*EXP(8700.*((1./ZT(:,:))-(1./298.)))*15.4/ZHP - END WHERE -END IF - -IF (LSALT) THEN - WHERE (ZT(:,:).GT.0.) - ZKHSALT(:,:) = 2.10E+5*EXP(8700.*((1./ZT(:,:))-(1./298.)))*15.4/ZHP - END WHERE -END IF -! -GCHFIRSTCALL = .FALSE. -! -! Convert KH from mol/l/atm in ppp/ppp -! ------------------------------------ -DO JKAQ = NSV_CHEMBEG, NSV_CHEMEND - ZKHC(:,:,JKAQ) = ZKH(:,:,JKAQ)*0.08205*ZT(:,:)*ZLWCC(:,:) -ENDDO - -IF (LDUST) ZKHCDUST(:,:) = ZKHDUST(:,:)*0.08205*ZT(:,:)*ZLWCC(:,:) -IF (LSALT) ZKHCSALT(:,:) = ZKHSALT(:,:)*0.08205*ZT(:,:)*ZLWCC(:,:) - -! -!* 1.3 Fraction of tracer present in the ice cloud condensate -! --------------------------------------------------------- -! -DO JKAQ = NSV_CHEMBEG, NSV_CHEMEND -! - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HNO3') THEN - WHERE (ZT(:,:).GT.0.) - ZKHI(:,:,JKAQ) = 1.E9 - ENDWHERE - ENDIF - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='H2O2') THEN -! Co-Condensation - WHERE (ZT(:,:).GT.0.) - ZKHI(:,:,JKAQ) = (0.2/1.0)*SQRT(18./34.)*PPRESS(:,:)/ & - (611.0 * EXP(6138.*((1./273.)-(1./ZT(:,:))))) & - * 34./18. / (34./29.) * PURI(:,:) - ENDWHERE - ENDIF -ENDDO -! -! -! Convert KHI from cm3(air)/cm3(ice) in ppp/ppp -! --------------------------------------------- -DO JKAQ = NSV_CHEMBEG, NSV_CHEMEND - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HNO3') THEN - WHERE (ZLWCI(:,:).NE.0.) - ZKHI(:,:,JKAQ) = ZKHI(:,:,JKAQ) * ZLWCI(:,:) - ELSEWHERE - ZKHI(:,:,JKAQ) = 0. - ENDWHERE - ENDIF -ENDDO -! -!* 1.4 Retention efficiency (R<1 => volatilization during riming -! in mixed clouds -! ---------------------------------------------------------- -ZRIM(:,:,:)=1. -! -DO JKAQ = NSV_CHEMBEG, NSV_CHEMEND -! - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='OP1' .OR. CNAMES(JKAQ-NSV_CHEMBEG+1)=='CH3OOH') THEN - WHERE ((PURI(:,:) /=0.).AND.(PURC(:,:) /=0.)) - ZRIM(:,:,JKAQ) =0.02 - ENDWHERE - ENDIF - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HCHO' .OR. CNAMES(JKAQ-NSV_CHEMBEG+1)=='CH2O') THEN - WHERE ((PURI(:,:) /=0.).AND.(PURC(:,:) /=0.)) - ZRIM(:,:,JKAQ)=0.02 - ENDWHERE - ENDIF - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='H2O2') THEN - WHERE ((PURI(:,:) /=0.).AND.(PURC(:,:) /=0.)) - ZRIM(:,:,JKAQ)=0.05 - ENDWHERE - ENDIF - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HNO3') THEN - WHERE ((PURI(:,:) /=0.).AND.(PURC(:,:) /=0.)) - ZRIM(:,:,JKAQ)=1.00 - ENDWHERE - ENDIF -! -ENDDO -! -!* 1.5 Calculate partitioning factor -! ----------------------------- -! -WHERE (PURC(:,:)+PURR(:,:) /= 0.) - ZPROR(:,:) = PURR(:,:) / ( PURC(:,:)+PURR(:,:) ) -ENDWHERE -! -WHERE (PURI(:,:)+PURS(:,:) /= 0.) - ZPROS(:,:) = PURS(:,:) / ( PURI(:,:)+PURS(:,:) ) -ENDWHERE -! -DO JKAQ = NSV_CHEMBEG, NSV_CHEMEND -! - ZFACTOR(:,:,JKAQ) = ( 1. + ZKHC(:,:,JKAQ) + ZKHI(:,:,JKAQ) ) - ZPARTSCAV(:,:,JKAQ) = & - (ZPROR(:,:) * ZKHC(:,:,JKAQ) * ZRIM(:,:,JKAQ) + & - ZPROS(:,:) * ZKHI(:,:,JKAQ)) / & - ZFACTOR(:,:,JKAQ) - IF (CNAMES(JKAQ-NSV_CHEMBEG+1)=='HNO3') THEN - ZPARTAERO(:,:) = (ZPROR(:,:) * ZKHC(:,:,JKAQ) ) / ( 1. + ZKHC(:,:,JKAQ) ) - END IF -! -ENDDO -! -IF (LORILAM) THEN - DO JKAQ = NSV_AERBEG, NSV_AERBEG+(NSP+NSOA+NCARB)*JPMODE-1 - ZPARTSCAV(:,:,JKAQ) = ZPARTAERO(:,:) - ENDDO -END IF -! -IF (LDUST) THEN - DO JN=1,NMODE_DST - IF (LVARSIG) THEN - ZPARTSCAV(:,:,NSV_DSTBEG-1+2+(JN-1)*3) = & - (ZPROR(:,:) * ZKHCDUST(:,:) ) / ( 1. + ZKHCDUST(:,:) ) - ELSE - ZPARTSCAV(:,:,NSV_DSTBEG-1+2+(JN-1)*2) = & - (ZPROR(:,:) * ZKHCDUST(:,:) ) / ( 1. + ZKHCDUST(:,:) ) - END IF - ENDDO -END IF -! -IF (LSALT) THEN - DO JN=1,NMODE_SLT - IF (LVARSIG_SLT) THEN - ZPARTSCAV(:,:,NSV_SLTBEG-1+2+(JN-1)*3) = & - (ZPROR(:,:) * ZKHCSALT(:,:) ) / ( 1. + ZKHCSALT(:,:) ) - ELSE - ZPARTSCAV(:,:,NSV_SLTBEG-1+2+(JN-1)*2) = & - (ZPROR(:,:) * ZKHCSALT(:,:) ) / ( 1. + ZKHCSALT(:,:) ) - END IF - ENDDO -END IF -! -! -!* 2. Updraft computations -! -------------------- -! -ZUCH1(:,:,:) = 0. -! -!* 2.1 Initialization at LCL -! ---------------------------------- -! -DO JI = 1, KLON - JKLC = KLCL(JI) - JKLD = KDPL(JI) - JKLP = KPBL(JI) - ZWORK1(JI,:) = .5 * ( PCH1(JI,JKLD,:) + PCH1(JI,JKLP,:) ) -END DO -! -!* 2.2 Final updraft loop -! ------------------ -! -DO JK = MINVAL( KDPL(:) ), JKMAX -JKP = JK + 1 -! - DO JN = 1, INCH1 - DO JI = 1, KLON - IF ( KDPL(JI) <= JK .AND. KLCL(JI) > JK ) & - ZUCH1(JI,JK,JN) = ZWORK1(JI,JN) -! - IF ( KLCL(JI) - 1 <= JK .AND. KCTL(JI) > JK ) THEN - ZUCH1(JI,JKP,JN) = ( PUMF(JI,JK) * ZUCH1(JI,JK,JN) + & - PUER(JI,JKP) * PCH1(JI,JK,JN) ) / & - ((1. + ZPARTSCAV(JI,JKP,JN)) * PUMF(JI,JKP) + PUDR(JI,JKP) ) - END IF - END DO - END DO -! -END DO -! -!* 3. Downdraft computations -! ---------------------- -! -ZDCH1(:,:,:) = 0. -! -!* 3.1 Initialization at the LFS -! ------------------------- -! -ZWORK1(:,:) = SPREAD( PMIXF(:), DIM=2, NCOPIES=INCH1 ) -DO JI = 1, KLON - JK = KLFS(JI) - ZDCH1(JI,JK,:) = ZWORK1(JI,:) * PCH1(JI,JK,:) + & - ( 1. - ZWORK1(JI,:) ) * ZUCH1(JI,JK,:) -END DO -! -!* 3.2 Final downdraft loop -! -------------------- -! -DO JK = MAXVAL( KLFS(:) ), IKB + 1, -1 -JKP = JK - 1 - DO JN = 1, INCH1 - DO JI = 1, KLON - IF ( JK <= KLFS(JI) .AND. JKP >= KDBL(JI) ) THEN - ZDCH1(JI,JKP,JN) = ( ZDCH1(JI,JK,JN) * PDMF(JI,JK) - & - PCH1(JI,JK,JN) * PDER(JI,JKP) ) / & - ( PDMF(JI,JKP) - PDDR(JI,JKP) - 1.E-7 ) - END IF - END DO - END DO -END DO -! -! -!* 4. Final closure (environmental) computations -! ------------------------------------------ -! -PCH1C(:,:,:) = PCH1(:,:,:) ! initialize adjusted envir. values -! -DO JK = IKB, IKE - ZOMG(:,JK) = PWSUB(:,JK) * PDXDY(:) / XG ! environmental subsidence -END DO -! -ZTIMEC(:) = PTIMEC(:) / REAL( KFTSTEPS ) ! adjust fractional time step - ! to be an integer multiple of PTIMEC -WHERE ( PTIMEC(:) < 1. ) ZTIMEC(:) = 0. -ZTIMC(:,:)= SPREAD( ZTIMEC(:), DIM=2, NCOPIES=IKS ) -! -ZCH1MFIN(:,:,:) = 0. -ZCH1MFOUT(:,:,:) = 0. -! -DO JSTEP = 1, KFTSTEPS ! Enter the fractional time step loop -! - DO JK = IKB + 1, JKMAX - JKP = MAX( IKB + 1, JK - 1 ) - ZWORK3(:,:) = SPREAD( ZOMG(:,JK), DIM=2, NCOPIES=INCH1 ) - ZWORK1(:,:) = SIGN( 1., ZWORK3(:,:) ) - ZWORK2(:,:) = 0.5 * ( 1. + ZWORK1(:,:) ) - ZWORK1(:,:) = 0.5 * ( 1. - ZWORK1(:,:) ) - ZCH1MFIN(:,JK,:) = - ZWORK3(:,:) * PCH1C(:,JKP,:) * ZWORK1(:,:) - ZCH1MFOUT(:,JK,:) = ZWORK3(:,:) * PCH1C(:,JK,:) * ZWORK2(:,:) - ZCH1MFIN(:,JKP,:) = ZCH1MFIN(:,JKP,:) + ZCH1MFOUT(:,JK,:) * ZWORK2(:,:) - ZCH1MFOUT(:,JKP,:)= ZCH1MFOUT(:,JKP,:) + ZCH1MFIN(:,JK,:) * ZWORK1(:,:) - END DO -! - DO JN = 1, INCH1 - DO JK = IKB + 1, JKMAX - PCH1C(:,JK,JN) = PCH1C(:,JK,JN) + ZTIMC(:,JK) / PLMASS(:,JK) * ( & - ZCH1MFIN(:,JK,JN) + PUDR(:,JK) * ZUCH1(:,JK,JN) + & - PDDR(:,JK) * ZDCH1(:,JK,JN) - ZCH1MFOUT(:,JK,JN) - & - ( PUER(:,JK) + PDER(:,JK) ) * PCH1(:,JK,JN) ) - PCH1C(:,JK,JN) = MAX( 0., PCH1C(:,JK,JN) ) - END DO - END DO -! -END DO ! Exit the fractional time step loop - -IF (LORILAM) THEN ! ORILAM chemical aerosol scavenging -ZSV(:,1,:,NSV_AERBEG:NSV_AEREND) = MAX(PCH1(:,:,NSV_AERBEG:NSV_AEREND),1.E-80) -ZSVC(:,1,:,NSV_AERBEG:NSV_AEREND) = MAX(PCH1(:,:,NSV_AERBEG:NSV_AEREND),1.E-80) -DO JN = NSV_AERBEG, NSV_AERBEG+(NSP+NSOA+NCARB)*JPMODE-1 - ZSVC(:,1,IKB:IKE,JN) = MIN(ZSVC(:,IKB:IKE,1,JN),ZSV(:,IKB:IKE,1,JN)) -ENDDO - -ZRHODREF(:,1,IKB:IKE) = PRHODREF(:,IKB:IKE) - -! Compute RG and SIGMA with old concentration PCH1 -CALL PPP2AERO(ZSV(:,:,IKB:IKE,NSV_AERBEG:NSV_AEREND),& - ZRHODREF(:,:,IKB:IKE), PSIG3D=ZSIGAER(:,:,IKB:IKE,:),& - PRG3D=ZRGAER(:,:,IKB:IKE,:),PN3D=ZNAER(:,:,IKB:IKE,:)) - -DO JN=NSV_AERBEG,NSV_AEREND,2 - WHERE (ZNAER(:,:,IKB:IKE,1) .LE. XN0IMIN) ! minimum number of particles - ! => no scavenging - ZSVC(:,:,IKB:IKE,JN) = ZSV(:,:,IKB:IKE,JN) - END WHERE -ENDDO - -DO JN=NSV_AERBEG+1,NSV_AEREND,2 - WHERE (ZNAER(:,:,IKB:IKE,2) .LE. XN0JMIN) ! minimum number of particles - ! => no scavenging - ZSVC(:,:,IKB:IKE,JN) = ZSV(:,:,IKB:IKE,JN) - END WHERE -ENDDO -! Limit low values to minimum particles number; minimum mass has been -! put into BC -ZBCMIN(:,:,IKB:IKE,1) = XN0IMIN * (ZRGAER(:,:,IKB:IKE,1)**3)*EXP(4.5 * (LOG(ZSIGAER(:,:,IKB:IKE,1))**2)) *& - (4./3.)*3.14292654*1.8e3*1.e-9 * & - 6.0221367E+11/(1E-6 * XAVOGADRO / XMD*12.*ZRHODREF(:,:,IKB:IKE)) - -ZBCMIN(:,:,IKB:IKE,2) = XN0JMIN * (ZRGAER(:,:,IKB:IKE,2)**3)*& - EXP(4.5 * (LOG(ZSIGAER(:,:,IKB:IKE,2))**2)) *& - (4./3.)*3.14292654*1.8e3*1.e-9 * & - 6.0221367E+11/(1E-6 * XAVOGADRO / XMD*12.*ZRHODREF(:,:,IKB:IKE)) - - ZSVC(:,:,IKB:IKE,NSV_AERBEG+JP_CH_BCi-1) = MAX(ZBCMIN(:,:,IKB:IKE,1), & - ZSVC(:,:,IKB:IKE,NSV_AERBEG+JP_CH_BCi-1)) - ZSVC(:,:,IKB:IKE,NSV_AERBEG+JP_CH_BCj-1) = MAX(ZBCMIN(:,:,IKB:IKE,2), & - ZSVC(:,:,IKB:IKE,NSV_AERBEG+JP_CH_BCj-1)) - -END IF -! -! Dust scavenging -IF (LDUST) THEN - ! Initialization - ZRHOP = XDENSITY_DUST - ZFAC = (4./3.)*XPI*ZRHOP*1.e-9 - ZMI = XMOLARWEIGHT_DUST ! molecular mass in kg/mol - ZCONV = ZMI * XM3TOUM3 / (XMD * ZRHOP * XPI * 4./3.) - ! - DO JN=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JN) - ZMIN_DST(JN) = XN0MIN(IMODEIDX) - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS_DST(JN) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS_DST(JN) = XINIRADIUS(IMODEIDX) - END IF - END DO - ! - ZRHODREF(:,1,:) = PRHODREF(:,:) - ! - ZSV(:,1,:,NSV_DSTBEG:NSV_DSTEND) = PCH1(:,:,NSV_DSTBEG:NSV_DSTEND) - ! - ZSVC(:,1,:,NSV_DSTBEG:NSV_DSTEND) = ZSV(:,1,:,NSV_DSTBEG:NSV_DSTEND) - ! - ! Compute RG and SIGMA with old concentration PCH1 - CALL PPP2DUST(ZSV(:,:,IKB:IKE,NSV_DSTBEG:NSV_DSTEND), ZRHODREF(:,:,IKB:IKE),& - PSIG3D=ZSIGDST(:,:,IKB:IKE,:), PRG3D=ZRGDST(:,:,IKB:IKE,:), & - PN3D=ZNDST(:,:,IKB:IKE,:)) - ! - IF (LVARSIG) THEN ! Case with variable standard devisation - ! - DO JN=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JN) - !New mass concentration do not be less than minimum value possible - ZRGDSTMIN(:,:,:,JN) = ZINIRADIUS_DST(JN) - ZRGDSTMIN(:,:,IKB:IKE,JN) = MIN(ZRGDSTMIN(:,:,IKB:IKE,JN), ZRGDST(:,:,IKB:IKE,JN)) - ZMINMASS_DST(:,:,IKB:IKE,JN) = XN0MIN(IMODEIDX) * ZRGDSTMIN(:,:,IKB:IKE,JN)**3 * & - EXP(4.5 * LOG(ZSIGDST(:,:,IKB:IKE,JN))**2) * & - (ZCONV * ZRHODREF(:,:,IKB:IKE)) - - ZSVC(:,1,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*3) = & - PCH1C(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*3) - ! ZSVC(:,1,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*3) = & - ! MIN(PCH1C(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*3),PCH1(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*3)) - WHERE (ZNDST(:,1,IKB:IKE,JN) .GT. ZMIN_DST(JN)) - PCH1C(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*3) = & - MAX(ZSVC(:,1,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*3),& - ZMINMASS_DST(:,1,IKB:IKE,JN)) - END WHERE - ENDDO - ! - ELSE ! Case with fixed standard deviation - DO JN=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JN) - !New mass concentration should not be less than minimum value possible - ZRGDSTMIN(:,:,:,JN) = ZINIRADIUS_DST(JN) - ZRGDSTMIN(:,:,IKB:IKE,JN) = MIN(ZRGDSTMIN(:,:,IKB:IKE,JN), ZRGDST(:,:,IKB:IKE,JN)) - ZMINMASS_DST(:,:,IKB:IKE,JN) = XN0MIN(IMODEIDX) * ZRGDSTMIN(:,:,IKB:IKE,JN)**3 * & - EXP(4.5 * LOG(ZSIGDST(:,:,IKB:IKE,JN))**2) / & - (ZCONV * ZRHODREF(:,:,IKB:IKE)) - ZSVC(:,1,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*2) = & - PCH1C(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*2) - ! ZSVC(:,1,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*2) = & - ! MIN(PCH1C(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*2),PCH1(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*2)) - WHERE (ZNDST(:,1,IKB:IKE,JN) .GT. ZMIN_DST(JN)) - PCH1C(:,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*2) = MAX(ZSVC(:,1,IKB:IKE,NSV_DSTBEG-1+2+(JN-1)*2),& - ZMINMASS_DST(:,1,IKB:IKE,JN)) - END WHERE - ENDDO - ENDIF -END IF -! -! Sea Salt scavenging -IF (LSALT) THEN - ! Initialization - ZRHOP = XDENSITY_SALT - ZFAC = (4./3.)*XPI*ZRHOP*1.e-9 - ZMI = XMOLARWEIGHT_SALT ! molecular mass in kg/mol - ZCONV = ZMI * XM3TOUM3_SALT / (XMD * ZRHOP * XPI * 4./3.) - ! - DO JN=1,NMODE_SLT - IMODEIDX = JPSALTORDER(JN) - ZMIN_SLT(JN) = XN0MIN_SLT(IMODEIDX) - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS_SLT(JN) = XINIRADIUS_SLT(IMODEIDX) * EXP(-3.*(LOG(XINISIG_SLT(IMODEIDX)))**2) - ELSE - ZINIRADIUS_SLT(JN) = XINIRADIUS_SLT(IMODEIDX) - END IF - END DO - ! - ZRHODREF(:,1,:) = PRHODREF(:,:) - ! - ZSV(:,1,:,NSV_SLTBEG:NSV_SLTEND) = PCH1(:,:,NSV_SLTBEG:NSV_SLTEND) - ! - ZSVC(:,1,:,NSV_SLTBEG:NSV_SLTEND) = ZSV(:,1,:,NSV_SLTBEG:NSV_SLTEND) - ! - ! Compute RG and SIGMA with old concentration PCH1 - CALL PPP2SALT(ZSV(:,:,IKB:IKE,NSV_SLTBEG:NSV_SLTEND), ZRHODREF(:,:,IKB:IKE),& - PSIG3D=ZSIGSLT(:,:,IKB:IKE,:), PRG3D=ZRGSLT(:,:,IKB:IKE,:), & - PN3D=ZNSLT(:,:,IKB:IKE,:)) - ! - IF (LVARSIG_SLT) THEN ! Case with variable standard devisation - ! - DO JN=1,NMODE_SLT - IMODEIDX = JPSALTORDER(JN) - !New mass concentration do not be less than minimum value possible - ZRGSLTMIN(:,:,:,JN) = ZINIRADIUS_SLT(JN) - ZRGSLTMIN(:,:,IKB:IKE,JN) = MIN(ZRGSLTMIN(:,:,IKB:IKE,JN), ZRGSLT(:,:,IKB:IKE,JN)) - ZMINMASS_SLT(:,:,IKB:IKE,JN) = XN0MIN(IMODEIDX) * ZRGSLTMIN(:,:,IKB:IKE,JN)**3 * & - EXP(4.5 * LOG(ZSIGSLT(:,:,IKB:IKE,JN))**2) * & - (ZCONV * ZRHODREF(:,:,IKB:IKE)) - - ZSVC(:,1,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*3) = & - PCH1C(:,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*3) - ! ZSVC(:,1,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*3) = & - ! MIN(PCH1C(:,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*3),PCH1(:,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*3)) - WHERE (ZNSLT(:,1,IKB:IKE,JN) .GT. ZMIN_SLT(JN)) - PCH1C(:,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*3) = & - MAX(ZSVC(:,1,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*3),& - ZMINMASS_SLT(:,1,IKB:IKE,JN)) - END WHERE - ENDDO - ! - ELSE ! Case with fixed standard deviation - DO JN=1,NMODE_SLT - IMODEIDX = JPSALTORDER(JN) - !New mass concentration should not be less than minimum value possible - ZRGSLTMIN(:,:,:,JN) = ZINIRADIUS_SLT(JN) - ZRGSLTMIN(:,:,IKB:IKE,JN) = MIN(ZRGSLTMIN(:,:,IKB:IKE,JN), ZRGSLT(:,:,IKB:IKE,JN)) - ZMINMASS_SLT(:,:,IKB:IKE,JN) = XN0MIN(IMODEIDX) *& - ZRGSLTMIN(:,:,IKB:IKE,JN)**3 * & - EXP(4.5 * LOG(ZSIGSLT(:,:,IKB:IKE,JN))**2) / & - (ZCONV * ZRHODREF(:,:,IKB:IKE)) - ZSVC(:,1,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*2) = & - PCH1C(:,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*2) - WHERE (ZNSLT(:,1,IKB:IKE,JN) .GT. ZMIN_SLT(JN)) - PCH1C(:,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*2) = & - MAX(ZSVC(:,1,IKB:IKE,NSV_SLTBEG-1+2+(JN-1)*2),& - ZMINMASS_SLT(:,1,IKB:IKE,JN)) - END WHERE - ENDDO - ENDIF -END IF -! -! -IF (LHOOK) CALL DR_HOOK('CH_CONVECT_SCAVENGING',1,ZHOOK_HANDLE) -END SUBROUTINE CH_CONVECT_SCAVENGING diff --git a/src/arome/chem/internals/ch_cranck.F90 b/src/arome/chem/internals/ch_cranck.F90 deleted file mode 100644 index 852e09523b4d6bca84d736b33e1d427e54ef9f8a..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_cranck.F90 +++ /dev/null @@ -1,159 +0,0 @@ -! ######spl -SUBROUTINE CH_CRANCK(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PALPHA) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################################################### -!! -!!*** *CH_CRANCK* -!! -!! PURPOSE -!! ------- -! solve one time-step of the chemical differential equation d/dt y = f(y) -!! -!!** METHOD -!! ------ -!! Cranck-Nicholson method (CRANCK): -!! y^n+1 = y^n + dt*( alpha*f^n + (1-alpha)f^n-1 ) -!! for alpha = 1 the method reduces to EULER EXPLICIT -!! for alpha = 0 the method reduces to EULER IMPLICIT -!! for alpha = 1/2 the method reduces to EULER SEMI-IMPLICIT -!! The implicit equation is solved by Newton-Raphson iteration: -!! z^m+1 = z^m - (DF)(z^m)^-1 * F(z^m) -!! where F(z) = z - y^n - dt*( alpha*f^n + (1-alpha)f(z) ) -!! the iteration process should yield: z^m --> y^n+1 for increasing m -!! -!! REFERENCE -!! --------- -!! J. Stoer: Einf\"uhrung in die Numerische Mathematik I & II, -!! Heidelberger Taschenb\"ucher, Springer Verlag, Berlin, 1983 & 1978. -!! -!! AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 12/06/95 -!! 31/07/96 (K. Suhre) restructured -!! 19/04/02 add PALPHA argument -!! 01/12/03 (Gazen) change Chemical scheme interface -!! EXTERNAL -!! -------- -USE MODI_CH_FCN -USE MODI_CH_JAC -USE MODI_CH_GAUSS -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number -REAL, INTENT(IN) :: PALPHA -! -!* 0.2 declaration of local variables -! -INTEGER :: IFAIL, JI, JJ -INTEGER :: IITERCOUNT ! counter for Newton-Raphson iteration -INTEGER :: IMAXITER = 20 ! maximal # of iterations before faillure -REAL, DIMENSION(KVECNPT) :: ZERR ! error in iteration -REAL :: ZMAXERR = 1E-6 ! maximal relative error for solution of implicit eqn -REAL :: ZNORM ! vector norm for calculation of relative error -REAL, DIMENSION(KVECNPT,KEQ) :: ZYN ! stores y^n + dt**alpha*f^n -REAL, DIMENSION(KVECNPT,KEQ) :: ZF ! f(y) -REAL, DIMENSION(KEQ) :: ZFTRAPEZ ! F(z^m), then z^m+1 - z^m -REAL, DIMENSION(KVECNPT,KEQ) :: ZFTRAPEZVECT ! F(z^m), then z^m+1 - z^m -REAL, DIMENSION(KEQ,KEQ) :: ZB,ZC ! working matrice for the iteration -REAL, DIMENSION(KVECNPT,KEQ,KEQ) :: ZBVECT - -!------------------------------------------------------------------------------ -! -!* 1. CALCULATE FIRST GUESS FOR ITERATION (ZYN) -! ---------------------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_CRANCK',0,ZHOOK_HANDLE) -CALL CH_FCN(PTSIMUL,PCONC,ZF,KMI,KVECNPT,KEQ) -ZYN(:,:) = PCONC(:,:) + PALPHA*PDTACT*ZF(:,:) -PNEWCONC(:,:) = PCONC(:,:) -! -!* 2. NEWTON RAPHSON ITERATION -! ----------------------------- -! -ZERR(:) = 2.*ZMAXERR -IITERCOUNT = 0 -newton: DO WHILE (MAXVAL(ZERR).GT.ZMAXERR) -! - IITERCOUNT = IITERCOUNT + 1 - IF (IITERCOUNT.GT.IMAXITER) THEN - STOP "CH_CRANCK ERROR: no convergence of Newton-Raphson iteration obtained" - ENDIF -! -!* 2.1 calculate derivative F for next iteration -! - CALL CH_FCN(PTSIMUL+PDTACT,PNEWCONC,ZF,KMI,KVECNPT,KEQ) - - ZFTRAPEZVECT(:,:) = PNEWCONC(:,:) - ZYN(:,:) - (1.0-PALPHA)*PDTACT*ZF(:,:) -! -!* 2.2 calculate the Jacobien B -! - CALL CH_JAC(PTSIMUL+PDTACT,PNEWCONC,ZBVECT,KMI,KVECNPT,KEQ) -! -!* 2.3 modify JAC after Cranck-Nicholson method -! - ZBVECT(:,:,:) = -(1.0-PALPHA)*PDTACT*ZBVECT(:,:,:) - DO JI = 1, KEQ - ZBVECT(:,JI,JI) = 1.0 + ZBVECT(:,JI,JI) - ENDDO -! -!%kloos% -! Modification of matrix inversion (25/04/97) -! -!* 2.4 calculate LU factorization for ZB (result is put in ZB) -! - DO JI=1,KVECNPT - - ZB(:,:)=ZBVECT(JI,:,:) - ZFTRAPEZ(:)=ZFTRAPEZVECT(JI,:) - - IFAIL = 1 - CALL CH_GAUSS(ZB,ZC,KEQ,IFAIL) - IF (IFAIL.NE.0) THEN - STOP 'CH_CRANCK ERROR: matrix cannot be inverted by CH_GAUSS' - ENDIF -! -!* 2.5 calculate dY = ZB F (result is put in ZFTRAPEZ) -! - ZFTRAPEZ(:)=MATMUL(ZC(:,:),ZFTRAPEZ(:)) -! -!* 2.6 calculate Y (n+1) -! - ZERR(JI) = 0.0 - ZNORM = 0.0 - DO JJ=1,KEQ - ZERR(JI) = ZERR(JI) + ABS(ZFTRAPEZ(JJ)) - PNEWCONC(JI,JJ) = PNEWCONC(JI,JJ) - ZFTRAPEZ(JJ) - ZNORM = ZNORM + 0.5*ABS(PCONC(JI,JJ)+PNEWCONC(JI,JJ)) - ENDDO -!% - ZERR(JI) = ZERR(JI) / ZNORM - - ENDDO -! -END DO newton -! -IF (LHOOK) CALL DR_HOOK('CH_CRANCK',1,ZHOOK_HANDLE) -END SUBROUTINE CH_CRANCK diff --git a/src/arome/chem/internals/ch_deallocate_taccs.F90 b/src/arome/chem/internals/ch_deallocate_taccs.F90 deleted file mode 100644 index c0f4f159bc3f84dfe53a169905e04cb7dd7f48c8..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_deallocate_taccs.F90 +++ /dev/null @@ -1,201 +0,0 @@ -! ######spl - SUBROUTINE CH_DEALLOCATE_TACCS(KMI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################### -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!!*** *CH_DEALLOCATE_TACCS* -!! -!! PURPOSE -!! ------- -! Deallocation of all CCSTYPE variables for model KMI -!! -!!** METHOD -!! ------ -!! -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Gazen Didier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/06/2005 -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, INTENT(IN) :: KMI ! model index -!! -!!---------------------------------------------------------------------- -! /BEGIN_INITIAL/ -! /END_INITIAL/ -! initialisation of the names of the chemical species -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_DEALLOCATE_TACCS',0,ZHOOK_HANDLE) -IF (ASSOCIATED(TACCS(KMI)%K001)) DEALLOCATE(TACCS(KMI)%K001) -IF (ASSOCIATED(TACCS(KMI)%K002)) DEALLOCATE(TACCS(KMI)%K002) -IF (ASSOCIATED(TACCS(KMI)%K003)) DEALLOCATE(TACCS(KMI)%K003) -IF (ASSOCIATED(TACCS(KMI)%K004)) DEALLOCATE(TACCS(KMI)%K004) -IF (ASSOCIATED(TACCS(KMI)%K005)) DEALLOCATE(TACCS(KMI)%K005) -IF (ASSOCIATED(TACCS(KMI)%K006)) DEALLOCATE(TACCS(KMI)%K006) -IF (ASSOCIATED(TACCS(KMI)%K007)) DEALLOCATE(TACCS(KMI)%K007) -IF (ASSOCIATED(TACCS(KMI)%K008)) DEALLOCATE(TACCS(KMI)%K008) -IF (ASSOCIATED(TACCS(KMI)%K009)) DEALLOCATE(TACCS(KMI)%K009) -IF (ASSOCIATED(TACCS(KMI)%K010)) DEALLOCATE(TACCS(KMI)%K010) -IF (ASSOCIATED(TACCS(KMI)%K011)) DEALLOCATE(TACCS(KMI)%K011) -IF (ASSOCIATED(TACCS(KMI)%K012)) DEALLOCATE(TACCS(KMI)%K012) -IF (ASSOCIATED(TACCS(KMI)%K013)) DEALLOCATE(TACCS(KMI)%K013) -IF (ASSOCIATED(TACCS(KMI)%K014)) DEALLOCATE(TACCS(KMI)%K014) -IF (ASSOCIATED(TACCS(KMI)%K015)) DEALLOCATE(TACCS(KMI)%K015) -IF (ASSOCIATED(TACCS(KMI)%K016)) DEALLOCATE(TACCS(KMI)%K016) -IF (ASSOCIATED(TACCS(KMI)%K017)) DEALLOCATE(TACCS(KMI)%K017) -IF (ASSOCIATED(TACCS(KMI)%K018)) DEALLOCATE(TACCS(KMI)%K018) -IF (ASSOCIATED(TACCS(KMI)%K019)) DEALLOCATE(TACCS(KMI)%K019) -IF (ASSOCIATED(TACCS(KMI)%K020)) DEALLOCATE(TACCS(KMI)%K020) -IF (ASSOCIATED(TACCS(KMI)%K021)) DEALLOCATE(TACCS(KMI)%K021) -IF (ASSOCIATED(TACCS(KMI)%K022)) DEALLOCATE(TACCS(KMI)%K022) -IF (ASSOCIATED(TACCS(KMI)%K023)) DEALLOCATE(TACCS(KMI)%K023) -IF (ASSOCIATED(TACCS(KMI)%K024)) DEALLOCATE(TACCS(KMI)%K024) -IF (ASSOCIATED(TACCS(KMI)%K025)) DEALLOCATE(TACCS(KMI)%K025) -IF (ASSOCIATED(TACCS(KMI)%K026)) DEALLOCATE(TACCS(KMI)%K026) -IF (ASSOCIATED(TACCS(KMI)%K027)) DEALLOCATE(TACCS(KMI)%K027) -IF (ASSOCIATED(TACCS(KMI)%K028)) DEALLOCATE(TACCS(KMI)%K028) -IF (ASSOCIATED(TACCS(KMI)%K029)) DEALLOCATE(TACCS(KMI)%K029) -IF (ASSOCIATED(TACCS(KMI)%K030)) DEALLOCATE(TACCS(KMI)%K030) -IF (ASSOCIATED(TACCS(KMI)%K031)) DEALLOCATE(TACCS(KMI)%K031) -IF (ASSOCIATED(TACCS(KMI)%K032)) DEALLOCATE(TACCS(KMI)%K032) -IF (ASSOCIATED(TACCS(KMI)%K033)) DEALLOCATE(TACCS(KMI)%K033) -IF (ASSOCIATED(TACCS(KMI)%K034)) DEALLOCATE(TACCS(KMI)%K034) -IF (ASSOCIATED(TACCS(KMI)%K035)) DEALLOCATE(TACCS(KMI)%K035) -IF (ASSOCIATED(TACCS(KMI)%K036)) DEALLOCATE(TACCS(KMI)%K036) -IF (ASSOCIATED(TACCS(KMI)%K037)) DEALLOCATE(TACCS(KMI)%K037) -IF (ASSOCIATED(TACCS(KMI)%K038)) DEALLOCATE(TACCS(KMI)%K038) -IF (ASSOCIATED(TACCS(KMI)%K039)) DEALLOCATE(TACCS(KMI)%K039) -IF (ASSOCIATED(TACCS(KMI)%K040)) DEALLOCATE(TACCS(KMI)%K040) -IF (ASSOCIATED(TACCS(KMI)%K041)) DEALLOCATE(TACCS(KMI)%K041) -IF (ASSOCIATED(TACCS(KMI)%K042)) DEALLOCATE(TACCS(KMI)%K042) -IF (ASSOCIATED(TACCS(KMI)%K043)) DEALLOCATE(TACCS(KMI)%K043) -IF (ASSOCIATED(TACCS(KMI)%K044)) DEALLOCATE(TACCS(KMI)%K044) -IF (ASSOCIATED(TACCS(KMI)%K045)) DEALLOCATE(TACCS(KMI)%K045) -IF (ASSOCIATED(TACCS(KMI)%K046)) DEALLOCATE(TACCS(KMI)%K046) -IF (ASSOCIATED(TACCS(KMI)%K047)) DEALLOCATE(TACCS(KMI)%K047) -IF (ASSOCIATED(TACCS(KMI)%K048)) DEALLOCATE(TACCS(KMI)%K048) -IF (ASSOCIATED(TACCS(KMI)%K049)) DEALLOCATE(TACCS(KMI)%K049) -IF (ASSOCIATED(TACCS(KMI)%K050)) DEALLOCATE(TACCS(KMI)%K050) -IF (ASSOCIATED(TACCS(KMI)%K051)) DEALLOCATE(TACCS(KMI)%K051) -IF (ASSOCIATED(TACCS(KMI)%K052)) DEALLOCATE(TACCS(KMI)%K052) -IF (ASSOCIATED(TACCS(KMI)%K053)) DEALLOCATE(TACCS(KMI)%K053) -IF (ASSOCIATED(TACCS(KMI)%K054)) DEALLOCATE(TACCS(KMI)%K054) -IF (ASSOCIATED(TACCS(KMI)%K055)) DEALLOCATE(TACCS(KMI)%K055) -IF (ASSOCIATED(TACCS(KMI)%K056)) DEALLOCATE(TACCS(KMI)%K056) -IF (ASSOCIATED(TACCS(KMI)%K057)) DEALLOCATE(TACCS(KMI)%K057) -IF (ASSOCIATED(TACCS(KMI)%K058)) DEALLOCATE(TACCS(KMI)%K058) -IF (ASSOCIATED(TACCS(KMI)%K059)) DEALLOCATE(TACCS(KMI)%K059) -IF (ASSOCIATED(TACCS(KMI)%K060)) DEALLOCATE(TACCS(KMI)%K060) -IF (ASSOCIATED(TACCS(KMI)%K061)) DEALLOCATE(TACCS(KMI)%K061) -IF (ASSOCIATED(TACCS(KMI)%K062)) DEALLOCATE(TACCS(KMI)%K062) -IF (ASSOCIATED(TACCS(KMI)%K063)) DEALLOCATE(TACCS(KMI)%K063) -IF (ASSOCIATED(TACCS(KMI)%K064)) DEALLOCATE(TACCS(KMI)%K064) -IF (ASSOCIATED(TACCS(KMI)%K065)) DEALLOCATE(TACCS(KMI)%K065) -IF (ASSOCIATED(TACCS(KMI)%K066)) DEALLOCATE(TACCS(KMI)%K066) -IF (ASSOCIATED(TACCS(KMI)%K067)) DEALLOCATE(TACCS(KMI)%K067) -IF (ASSOCIATED(TACCS(KMI)%K068)) DEALLOCATE(TACCS(KMI)%K068) -IF (ASSOCIATED(TACCS(KMI)%K069)) DEALLOCATE(TACCS(KMI)%K069) -IF (ASSOCIATED(TACCS(KMI)%K070)) DEALLOCATE(TACCS(KMI)%K070) -IF (ASSOCIATED(TACCS(KMI)%K071)) DEALLOCATE(TACCS(KMI)%K071) -IF (ASSOCIATED(TACCS(KMI)%K072)) DEALLOCATE(TACCS(KMI)%K072) -IF (ASSOCIATED(TACCS(KMI)%K073)) DEALLOCATE(TACCS(KMI)%K073) -IF (ASSOCIATED(TACCS(KMI)%K074)) DEALLOCATE(TACCS(KMI)%K074) -IF (ASSOCIATED(TACCS(KMI)%K075)) DEALLOCATE(TACCS(KMI)%K075) -IF (ASSOCIATED(TACCS(KMI)%K076)) DEALLOCATE(TACCS(KMI)%K076) -IF (ASSOCIATED(TACCS(KMI)%K077)) DEALLOCATE(TACCS(KMI)%K077) -IF (ASSOCIATED(TACCS(KMI)%K078)) DEALLOCATE(TACCS(KMI)%K078) -IF (ASSOCIATED(TACCS(KMI)%K079)) DEALLOCATE(TACCS(KMI)%K079) -IF (ASSOCIATED(TACCS(KMI)%K080)) DEALLOCATE(TACCS(KMI)%K080) -IF (ASSOCIATED(TACCS(KMI)%K081)) DEALLOCATE(TACCS(KMI)%K081) -IF (ASSOCIATED(TACCS(KMI)%K082)) DEALLOCATE(TACCS(KMI)%K082) -IF (ASSOCIATED(TACCS(KMI)%K083)) DEALLOCATE(TACCS(KMI)%K083) -IF (ASSOCIATED(TACCS(KMI)%K084)) DEALLOCATE(TACCS(KMI)%K084) -IF (ASSOCIATED(TACCS(KMI)%K085)) DEALLOCATE(TACCS(KMI)%K085) -IF (ASSOCIATED(TACCS(KMI)%K086)) DEALLOCATE(TACCS(KMI)%K086) -IF (ASSOCIATED(TACCS(KMI)%K087)) DEALLOCATE(TACCS(KMI)%K087) -IF (ASSOCIATED(TACCS(KMI)%K088)) DEALLOCATE(TACCS(KMI)%K088) -IF (ASSOCIATED(TACCS(KMI)%K089)) DEALLOCATE(TACCS(KMI)%K089) -IF (ASSOCIATED(TACCS(KMI)%K090)) DEALLOCATE(TACCS(KMI)%K090) -IF (ASSOCIATED(TACCS(KMI)%K091)) DEALLOCATE(TACCS(KMI)%K091) -IF (ASSOCIATED(TACCS(KMI)%K092)) DEALLOCATE(TACCS(KMI)%K092) -IF (ASSOCIATED(TACCS(KMI)%K093)) DEALLOCATE(TACCS(KMI)%K093) -IF (ASSOCIATED(TACCS(KMI)%K094)) DEALLOCATE(TACCS(KMI)%K094) -IF (ASSOCIATED(TACCS(KMI)%K095)) DEALLOCATE(TACCS(KMI)%K095) -IF (ASSOCIATED(TACCS(KMI)%K096)) DEALLOCATE(TACCS(KMI)%K096) -IF (ASSOCIATED(TACCS(KMI)%K097)) DEALLOCATE(TACCS(KMI)%K097) -IF (ASSOCIATED(TACCS(KMI)%K098)) DEALLOCATE(TACCS(KMI)%K098) -IF (ASSOCIATED(TACCS(KMI)%K099)) DEALLOCATE(TACCS(KMI)%K099) -IF (ASSOCIATED(TACCS(KMI)%K100)) DEALLOCATE(TACCS(KMI)%K100) -IF (ASSOCIATED(TACCS(KMI)%K101)) DEALLOCATE(TACCS(KMI)%K101) -IF (ASSOCIATED(TACCS(KMI)%K102)) DEALLOCATE(TACCS(KMI)%K102) -IF (ASSOCIATED(TACCS(KMI)%K103)) DEALLOCATE(TACCS(KMI)%K103) -IF (ASSOCIATED(TACCS(KMI)%K104)) DEALLOCATE(TACCS(KMI)%K104) -IF (ASSOCIATED(TACCS(KMI)%K105)) DEALLOCATE(TACCS(KMI)%K105) -IF (ASSOCIATED(TACCS(KMI)%K106)) DEALLOCATE(TACCS(KMI)%K106) -IF (ASSOCIATED(TACCS(KMI)%K107)) DEALLOCATE(TACCS(KMI)%K107) -IF (ASSOCIATED(TACCS(KMI)%K108)) DEALLOCATE(TACCS(KMI)%K108) -IF (ASSOCIATED(TACCS(KMI)%K109)) DEALLOCATE(TACCS(KMI)%K109) -IF (ASSOCIATED(TACCS(KMI)%K110)) DEALLOCATE(TACCS(KMI)%K110) -IF (ASSOCIATED(TACCS(KMI)%K111)) DEALLOCATE(TACCS(KMI)%K111) -IF (ASSOCIATED(TACCS(KMI)%K112)) DEALLOCATE(TACCS(KMI)%K112) -IF (ASSOCIATED(TACCS(KMI)%K113)) DEALLOCATE(TACCS(KMI)%K113) -IF (ASSOCIATED(TACCS(KMI)%K114)) DEALLOCATE(TACCS(KMI)%K114) -IF (ASSOCIATED(TACCS(KMI)%K115)) DEALLOCATE(TACCS(KMI)%K115) -IF (ASSOCIATED(TACCS(KMI)%K116)) DEALLOCATE(TACCS(KMI)%K116) -IF (ASSOCIATED(TACCS(KMI)%K117)) DEALLOCATE(TACCS(KMI)%K117) -IF (ASSOCIATED(TACCS(KMI)%K118)) DEALLOCATE(TACCS(KMI)%K118) -IF (ASSOCIATED(TACCS(KMI)%K119)) DEALLOCATE(TACCS(KMI)%K119) -IF (ASSOCIATED(TACCS(KMI)%K120)) DEALLOCATE(TACCS(KMI)%K120) -IF (ASSOCIATED(TACCS(KMI)%K121)) DEALLOCATE(TACCS(KMI)%K121) -IF (ASSOCIATED(TACCS(KMI)%K122)) DEALLOCATE(TACCS(KMI)%K122) -IF (ASSOCIATED(TACCS(KMI)%K123)) DEALLOCATE(TACCS(KMI)%K123) -IF (ASSOCIATED(TACCS(KMI)%K124)) DEALLOCATE(TACCS(KMI)%K124) -IF (ASSOCIATED(TACCS(KMI)%K125)) DEALLOCATE(TACCS(KMI)%K125) -IF (ASSOCIATED(TACCS(KMI)%K126)) DEALLOCATE(TACCS(KMI)%K126) -IF (ASSOCIATED(TACCS(KMI)%K127)) DEALLOCATE(TACCS(KMI)%K127) -IF (ASSOCIATED(TACCS(KMI)%K128)) DEALLOCATE(TACCS(KMI)%K128) -IF (ASSOCIATED(TACCS(KMI)%NOUT)) DEALLOCATE(TACCS(KMI)%NOUT) -IF (ASSOCIATED(TACCS(KMI)%NVERB)) DEALLOCATE(TACCS(KMI)%NVERB) -IF (ASSOCIATED(TACCS(KMI)%MODELLEVEL)) DEALLOCATE(TACCS(KMI)%MODELLEVEL) -IF (ASSOCIATED(TACCS(KMI)%T)) DEALLOCATE(TACCS(KMI)%T) -IF (ASSOCIATED(TACCS(KMI)%PRESSURE)) DEALLOCATE(TACCS(KMI)%PRESSURE) -IF (ASSOCIATED(TACCS(KMI)%M)) DEALLOCATE(TACCS(KMI)%M) -IF (ASSOCIATED(TACCS(KMI)%H2O)) DEALLOCATE(TACCS(KMI)%H2O) -IF (ASSOCIATED(TACCS(KMI)%CLOUDWATER)) DEALLOCATE(TACCS(KMI)%CLOUDWATER) -IF (ASSOCIATED(TACCS(KMI)%O2)) DEALLOCATE(TACCS(KMI)%O2) -IF (ASSOCIATED(TACCS(KMI)%N2)) DEALLOCATE(TACCS(KMI)%N2) -IF (ASSOCIATED(TACCS(KMI)%H2)) DEALLOCATE(TACCS(KMI)%H2) -IF (ASSOCIATED(TACCS(KMI)%OH)) DEALLOCATE(TACCS(KMI)%OH) -IF (ASSOCIATED(TACCS(KMI)%O1D)) DEALLOCATE(TACCS(KMI)%O1D) -IF (ASSOCIATED(TACCS(KMI)%O3P)) DEALLOCATE(TACCS(KMI)%O3P) -IF (ASSOCIATED(TACCS(KMI)%LAT)) DEALLOCATE(TACCS(KMI)%LAT) -IF (ASSOCIATED(TACCS(KMI)%LON)) DEALLOCATE(TACCS(KMI)%LON) -IF (ASSOCIATED(TACCS(KMI)%YEAR)) DEALLOCATE(TACCS(KMI)%YEAR) -IF (ASSOCIATED(TACCS(KMI)%MONTH)) DEALLOCATE(TACCS(KMI)%MONTH) -IF (ASSOCIATED(TACCS(KMI)%DAY)) DEALLOCATE(TACCS(KMI)%DAY) -IF (LHOOK) CALL DR_HOOK('CH_DEALLOCATE_TACCS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_DEALLOCATE_TACCS diff --git a/src/arome/chem/internals/ch_diagnostics.F90 b/src/arome/chem/internals/ch_diagnostics.F90 deleted file mode 100644 index e629c996999472956d97216aeb70d535c342f6ae..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_diagnostics.F90 +++ /dev/null @@ -1,108 +0,0 @@ -! ######spl - SUBROUTINE CH_DIAGNOSTICS(PCONC, KMI, KVECNPT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################## -!! -!!*** *CH_DIAGNOSTICS* -!! -!! PURPOSE -!! ------- -!! calculate all desirable diagnostics -!! -!!** METHOD -!! ------ -!! Actually the following variables will be saved: -!! PCONC, reaction rates, PROD, LOSS, TERMS; -!! these variables are calculated by CH_PRODLOSS, CH_TERMS, and CH_GET_RATES -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/03/95 -!! 27/07/96 (K. Suhre) restructured -!! 01/12/03 (Gazen) change Chemical scheme interface!! -!! EXTERNAL -!! -------- -USE MODI_CH_GET_RATES -USE MODI_CH_PRODLOSS -USE MODI_CH_TERMS -USE MODI_CH_NONZEROTERMS -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_MODEL0D, ONLY: XTSIMUL, NDIAGIO, CDIAGFORMAT, NVERB -USE MODD_CH_M9, ONLY: NREAC, NEQ, NNONZEROTERMS -!! -!----------------------------------------------------------------------------- -!* 0. DECLARATIONS -! ---------------- -! -IMPLICIT NONE -! -!* 0.1 Declaration of arguments -! ---------------------------- - -INTEGER, INTENT(IN) :: KVECNPT -REAL, DIMENSION(:,:), INTENT(IN) :: PCONC ! the chem species -INTEGER, INTENT(IN) :: KMI -! -!* 0.2 Declaration of local variables -! ---------------------------------- -INTEGER :: JI -!REAL, DIMENSION(KVECNPT,NREAC) :: ZRATE ! variable to retrieve data -REAL, DIMENSION(:,:),ALLOCATABLE :: ZRATE ! variable to retrieve data -!REAL, DIMENSION(KVECNPT,NEQ) :: ZPROD, ZLOSS ! dito -REAL, DIMENSION(:,:), ALLOCATABLE :: ZPROD, ZLOSS ! dito -!REAL, DIMENSION(KVECNPT,NEQ,NREAC) :: ZTERMS ! dito -REAL, DIMENSION(:,:,:),ALLOCATABLE :: ZTERMS ! dito -!INTEGER, DIMENSION(2, NNONZEROTERMS) :: IINDEX ! indices of non-zero terms -INTEGER, DIMENSION(:,:),ALLOCATABLE :: IINDEX ! indices of non-zero terms -! -! Allocate local arrays -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_DIAGNOSTICS',0,ZHOOK_HANDLE) -ALLOCATE(ZRATE(KVECNPT,NREAC)) -ALLOCATE(ZPROD(KVECNPT,NEQ), ZLOSS(KVECNPT,NEQ)) -ALLOCATE(ZTERMS(KVECNPT,NEQ,NREAC)) -ALLOCATE(IINDEX(2, NNONZEROTERMS)) -! -!* EXECUTABLE STATEMENTS -! --------------------- -! -IF (NVERB >= 5) PRINT *, "CH_DIAGNOSTICS called at XTSIMUL = ", XTSIMUL -! -! get reaction rates -CALL CH_GET_RATES(ZRATE,KMI,KVECNPT,NREAC) -! -! get PROD and LOSS terms -CALL CH_PRODLOSS(XTSIMUL,PCONC,ZPROD,ZLOSS,KMI,KVECNPT,NEQ) -! -! get individual TERMS (contrib. of reaction i to the evolution of species j) -CALL CH_TERMS(XTSIMUL,PCONC,ZTERMS,KMI,KVECNPT,NEQ,NREAC) -! -! get the indices of the explicit contributions -! (only non-zero terms will be stored) -CALL CH_NONZEROTERMS(IINDEX, NNONZEROTERMS) -! -! write variables to file -WRITE(NDIAGIO,CDIAGFORMAT) XTSIMUL, & - (PCONC(1,JI), JI = 1, NEQ), & - (ZRATE(1,JI), JI = 1, NREAC), & - (ZPROD(1,JI), JI = 1, NEQ), & - (ZLOSS(1,JI), JI = 1, NEQ), & - (ZTERMS(1,IINDEX(1,JI),IINDEX(2,JI)), & - JI = 1, NNONZEROTERMS) -! -DEALLOCATE(ZPROD, ZLOSS) -DEALLOCATE(ZTERMS) -DEALLOCATE(IINDEX) -! -IF (LHOOK) CALL DR_HOOK('CH_DIAGNOSTICS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_DIAGNOSTICS diff --git a/src/arome/chem/internals/ch_exqssa.F90 b/src/arome/chem/internals/ch_exqssa.F90 deleted file mode 100644 index 58f2d76fc6c006a0ca5d6233f2217b87ef7fad1d..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_exqssa.F90 +++ /dev/null @@ -1,224 +0,0 @@ -! ######spl -SUBROUTINE CH_EXQSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PSLOW, PFAST, PDTMAX) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################################################### -!! -!!*** *CH_EXQSSA* -!! -!! PURPOSE -!! ------- -! solve one time-step of the chemical differential equation d/dt C = P - L*C -!! -!!** METHOD -!! ------ -!! Quasy steady state approximation (EXQSSA): -!! C_n+1 = Q(C_n,h) = P_n / L_n + ( C_n - P_n / L_n ) exp( - L_n Dt) -!! -!! Extrapolation -!! C_n+1(h) = Q(C_n,h) -!! C_n+0.5(h/2)=Q(C_n,h/2) -!! C_n+1(h/2)=Q(C_n+0.5,h/2) -!! C_n+1 = 2 C_n+1(h/2) - C_n+1(h) -!! -!! REFERENCE -!! --------- -!! O. Hertel et al , -!! Test of two Numerical schemes for use in atmospheric transport -!! chemistry models, -!! Atmospheric environment, 16, 2591--2611, 1993. -!! -!! A. Sandu et al -!! Benchmarking Stiff Ode Solvers For Atmospheric Chemistry Problems I: -!! Implicit versus Explicit -!! submitted to Atmospheric Environment 26/01/1996 -!! -!! AUTHOR -!! ------ -!! A. FASSI FIHRI *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 13/02/96 -!! 10/04/96 (K. Suhre) take out performance control statements -!! 31/07/96 (K. Suhre) restructured -!! 05/03/98 (V. Crassier) vectorized with fixed timestep -!! 31/03/99 (K. Suhre) change minor details (i.e. numerical pbs with -!! LOSS=0 species under Absoft and HP f90 compilers -!! and control of correct time stepping if user input -!! is uncorrect) and restructure -!! 01/08/01 (C. Mari) add PSLOW, PFAST, PDTMAX arguments -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -USE MODI_CH_PRODLOSS -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC - ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC - ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number - ! reac. rates, auxiliary variables -REAL, INTENT(IN) :: PSLOW, PFAST, PDTMAX -! -!* 0.2 declaration of local variables -! -REAL, DIMENSION(KVECNPT,KEQ) :: ZCONC, ZPROD, ZLOSS -REAL, DIMENSION(KVECNPT,KEQ) :: ZCONC1, ZCONC2 -REAL, DIMENSION(KVECNPT,KEQ) :: ZCONC1A, ZCONC2A -REAL, DIMENSION(KVECNPT,KEQ) :: ZCONC1B, ZCONC2B -REAL, DIMENSION(KVECNPT,KEQ) :: ZCONC1C, ZCONC2C -REAL, DIMENSION(KVECNPT,KEQ) :: ZTMP, ZRATIO -REAL :: ZTIME, ZSTEP -INTEGER :: JI -REAL, DIMENSION(KVECNPT,KEQ) :: ZA, ZB, ZC -REAL, PARAMETER :: ZEPS = 1E-14 ! to avoid division by zero -INTEGER :: IITER ! number of internal timesteps -! -!------------------------------------------------------------------------------ -! -!* 1. INITIALIZE SOME VARIABLES -! ------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_EXQSSA',0,ZHOOK_HANDLE) -ZTIME = PTSIMUL -ZCONC = PCONC -IITER = MAX(1,INT(1.E-3+(PDTACT/PDTMAX))) -ZSTEP = PDTACT / IITER -! -!* 2. INTERATION LOOP -! -------------------- -! -DO JI=1, IITER -! -!* 2.1 calculate production and loss terms -! - ZCONC(:,:) = MAX(ZCONC(:,:), 1E-10) - CALL CH_PRODLOSS(ZTIME,ZCONC,ZPROD,ZLOSS,KMI,KVECNPT,KEQ) -! -! elimiate negative loss rates that may be inherited from the transport scheme -! - ZLOSS(:,:) = MAX(0.,ZLOSS(:,:)) - ZA(:,:) = 0. - ZB(:,:) = 0. - WHERE ( ZLOSS .LE. 1./(PSLOW*ZSTEP) ) ZA(:,:) = 1. - WHERE ( ZLOSS .GT. 1./(PFAST*ZSTEP) ) ZB(:,:) = 1. - ZC(:,:) = 1. - ZA(:,:) - ZB(:,:) -! -!* 2.2 first guess -! -! especes lentes ZLOSS<1./(PSLOW*ZSTEP) -! calcul des constantes multiplicatives -!*************************************** - - ZTMP(:,:) = ZSTEP*(ZPROD(:,:) - ZLOSS(:,:)*ZCONC(:,:)) - ZCONC1A(:,:) = ZCONC(:,:) + ZTMP(:,:) - ZCONC2A(:,:) = ZCONC(:,:) + 0.5 * ZTMP(:,:) - -! especes rapides ZLOSS>1./(PFAST*ZSTEP) -! calcul des constantes multiplicatives -!*************************************** - - ZCONC1B(:,:) = ZPROD(:,:) / MAX(ZEPS, ZLOSS(:,:)) - ZCONC2B(:,:) = ZCONC1B(:,:) - -! especes intermediaires -! calcul des constantes multiplicatives -!*************************************** - - ZRATIO(:,:) = ZPROD(:,:) / MAX(ZEPS, ZLOSS(:,:)) - ZTMP(:,:) = EXP(-ZLOSS(:,:)*ZSTEP*0.5) - ZCONC1C(:,:) = ZTMP(:,:) * ZTMP(:,:) * ( ZCONC(:,:) - ZRATIO(:,:) ) & - + ZRATIO(:,:) - ZCONC2C(:,:) = ZTMP(:,:) * ( ZCONC(:,:) - ZRATIO(:,:) ) + ZRATIO(:,:) - -! calcul des concentrations intermediaires -!***************************************** - - ZCONC1(:,:)= ZA(:,:)*ZCONC1A(:,:) & - + ZB(:,:)*ZCONC1B(:,:) & - + ZC(:,:)*ZCONC1C(:,:) - ZCONC2(:,:)= ZA(:,:)*ZCONC2A(:,:) & - + ZB(:,:)*ZCONC2B(:,:) & - + ZC(:,:)*ZCONC2C(:,:) - -! -!* 2.3 calculate new production and loss terms -! - ZCONC2(:,:) = MAX(ZCONC2(:,:), 1E-10) - CALL CH_PRODLOSS(ZTIME+0.5*ZSTEP,ZCONC2,ZPROD,ZLOSS,KMI,KVECNPT,KEQ) -! -! elimiate negative loss rates that may be inherited from the transport scheme -! - ZLOSS(:,:) = MAX(0.,ZLOSS(:,:)) - ZA(:,:) = 0. - ZB(:,:) = 0. - WHERE ( ZLOSS .LE. 1./(PSLOW*ZSTEP) ) ZA(:,:) = 1. - WHERE ( ZLOSS .GT. 1./(PFAST*ZSTEP) ) ZB(:,:) = 1. - ZC(:,:) = 1. - ZA(:,:) - ZB(:,:) -! -! especes lentes ZLOSS<1./(PSLOW*ZSTEP) -! calcul des constantes multiplicatives -!*************************************** - - ZTMP(:,:) = ZSTEP*(ZPROD(:,:) - ZLOSS(:,:)*ZCONC(:,:)) - ZCONC2A(:,:) = ZCONC2(:,:) + 0.5 * ZTMP(:,:) -! -! especes rapides ZLOSS>1./(PFAST*ZSTEP) -! calcul des constantes multiplicatives -!*************************************** - - ZCONC2B(:,:) = ZPROD(:,:) / MAX(ZEPS, ZLOSS(:,:)) - -! -! especes intermediaires -! calcul des constantes multiplicatives -!*************************************** - - ZRATIO(:,:) = ZPROD(:,:) / MAX(ZEPS, ZLOSS(:,:)) - ZTMP(:,:) = EXP(-ZLOSS(:,:)*ZSTEP*0.5) - ZCONC2C(:,:) = ZTMP(:,:) * ( ZCONC2(:,:) - ZRATIO(:,:) ) + ZRATIO(:,:) - -! calcul des concentrations intermediaires -!***************************************** - - ZCONC2(:,:) = ZA(:,:)*ZCONC2A(:,:) & - + ZB(:,:)*ZCONC2B(:,:) & - + ZC(:,:)*ZCONC2C(:,:) - -! IF ZSTEP*ZLOSS < 1. --> A=1 else B=1 -!************************************* - - ZA(:,:) = 0. - WHERE ( (ZSTEP*ZLOSS) .LT. 1. ) ZA(:,:) = 1. - ZB(:,:) = 1. - ZA(:,:) - - ZCONC(:,:) = ZA(:,:)*MAX(0.,2.*ZCONC2(:,:)-ZCONC1(:,:)) & - + ZB(:,:)*MAX(0.,ZCONC2(:,:)) - - ZTIME=ZTIME+ZSTEP - -ENDDO -! -PNEWCONC = ZCONC -! -IF (LHOOK) CALL DR_HOOK('CH_EXQSSA',1,ZHOOK_HANDLE) -END SUBROUTINE CH_EXQSSA diff --git a/src/arome/chem/internals/ch_fcn.F90 b/src/arome/chem/internals/ch_fcn.F90 deleted file mode 100644 index f7358157cb1313bc4560794729aca7c74e4fe964..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_fcn.F90 +++ /dev/null @@ -1,68 +0,0 @@ -! ######spl - SUBROUTINE CH_FCN(PTIME,PCONC,PDCDT,KMI,KVECNPT,KEQ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!!*** *CH_FCN* -!! -!! PURPOSE -!! ------- -! calculation of first derivative for the chemical reaction mechanism -!! -!!** METHOD -!! ------ -!! For each prognostical chemical species the first derivative is -!! calculated as defined by the chemical reaction mechanism. -!! The reaction rates and other user-defined auxiliary variables are -!! transfered in the TYPE(CCSTYPE) variable TPK%. -!! The subroutine PRODLOSS is called in order to calculate P and L -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -USE MODI_CH_PRODLOSS -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PDCDT -INTEGER, INTENT(IN) :: KMI -!! -!! LOCAL VARIABLES -!! --------------- -REAL, DIMENSION(KVECNPT,KEQ) :: ZPROD, ZLOSS -!!---------------------------------------------------------------------- -!! -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_FCN',0,ZHOOK_HANDLE) -CALL CH_PRODLOSS(PTIME,PCONC,ZPROD,ZLOSS,KMI,KVECNPT,KEQ) -PDCDT(:,:) = ZPROD(:,:) - PCONC(:,:) * ZLOSS(:,:) -IF (LHOOK) CALL DR_HOOK('CH_FCN',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_FCN diff --git a/src/arome/chem/internals/ch_gauss.F90 b/src/arome/chem/internals/ch_gauss.F90 deleted file mode 100644 index 9eb2879cd7d138ebc315279b0700c33637c97028..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_gauss.F90 +++ /dev/null @@ -1,139 +0,0 @@ -! ######spl - SUBROUTINE CH_GAUSS(PIN,POUT,KDIM,KFAIL) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################# - -!!**** *CH_GAUSS*-inversion of a squared matrix using pivot search - -!! PURPOSE -!! ------- -! Inversion of a real squared matrix - -!! METHOD -!! ------ -! This routine inverts the KDIMxKDIM matrix PIN using the Gauss-Jordan -! algorithm with pivot-element search and returns its inverse -! in the KDIMxKDIM matrix POUT. If the inversion fails (in the case where -! the matrix PIN is singulary), the variable KFAIL will be set to 1. -! If KFAIL is set to 0 on entry, the subroutine will stop. If -! KFAIL is negative, the program continues silently, otherwise an -! error message is printed. - -!! REFERENCE -!! --------- -! J. Stoer: Einf\"uhrung in die Numerische Mathematik I, -! Heidelberger Taschenb\"ucher, Springer Verlag, Berlin, 1983. - -!! AUTHOR -!! ------ -!! K. Suhre - -!! MODIFICATIONS -!! ------------- -!! Original 24/02/95 (adapted from FORTRAN77 version in tools.k) -!! 27/02/95 (K. Suhre) put in some more array syntax - -!! EXTERNAL -!! -------- -!! none - -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none - -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, INTENT(IN) :: KDIM ! dimension of the matrix -INTEGER, INTENT(INOUT) :: KFAIL ! error flag -REAL, DIMENSION(KDIM,KDIM), INTENT(IN) :: PIN ! matrix to be inverted -REAL, DIMENSION(KDIM,KDIM), INTENT(OUT) :: POUT ! inverse matrix - -!! DECLARATION OF LOCAL CONSTANTS -!! ------------------------------ -REAL, PARAMETER :: PPEPS = 1.0E-20 ! lower bound for pivot element - -!! DECLARATION OF LOCAL VARIABLES -!! ------------------------------ -INTEGER :: IPIVOT ! current pivot element -INTEGER, DIMENSION(KDIM) :: IORDER ! to stock the permutations -INTEGER :: JI, JJ, JK, IMEM ! integer variables -INTEGER, DIMENSION(1) :: IHELP ! help array for MAXLOC -REAL, DIMENSION(KDIM,KDIM) :: ZWORK ! work array -REAL :: ZMAX, ZMEM ! real variables -REAL, DIMENSION(KDIM) :: ZCOL ! 1D work array - -!! EXECUTABLE STATEMENTS -!! --------------------- - -!* copy PIN into workarray ZWORK -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_GAUSS',0,ZHOOK_HANDLE) -ZWORK(:,:) = PIN(:,:) - -!* initialize permutation array IORDER -IORDER = (/ (JJ,JJ = 1, KDIM) /) - -!* outer loop for matrix elimination -elimination_loop : DO JJ = 1, KDIM - -!* pivot search - ZMAX = MAXVAL(ABS(ZWORK(JJ:KDIM,JJ))) - IHELP = MAXLOC(ABS(ZWORK(JJ:KDIM,JJ))) + JJ - 1 - IPIVOT = IHELP(1) - -!* check for singulary matrix, print error message and stop -!* if this is requested by KFAIL (see above for possible values for KFAIL) - error : IF (ZMAX.LE.PPEPS) THEN - IF (KFAIL.GE.0) THEN - PRINT *, "Error message from subroutine CH_GAUSS: ", & - "singulary matrix cannot be inverted!" - ENDIF - IF (KFAIL.EQ.0) STOP 1 - KFAIL = 1 - IF (LHOOK) CALL DR_HOOK('CH_GAUSS',1,ZHOOK_HANDLE) - RETURN - ENDIF error - -!* interchange the lines - IF (IPIVOT.GT.JJ) THEN - ZCOL = ZWORK(JJ,:) - ZWORK(JJ,:) = ZWORK(IPIVOT,:) - ZWORK(IPIVOT,:) = ZCOL - IMEM = IORDER(JJ) - IORDER(JJ) = IORDER(IPIVOT) - IORDER(IPIVOT) = IMEM - ENDIF - -!* transformation - ZMEM = 1.0/ZWORK(JJ,JJ) - ZWORK(:,JJ) = ZMEM * ZWORK(:,JJ) - ZWORK(JJ,JJ) = ZMEM - - DO JK = 1, JJ-1 - ZWORK(1:JJ-1,JK) = ZWORK(1:JJ-1,JK) - ZWORK(1:JJ-1,JJ)*ZWORK(JJ,JK) - ZWORK(JJ+1:KDIM,JK) = ZWORK(JJ+1:KDIM,JK) - ZWORK(JJ+1:KDIM,JJ)*ZWORK(JJ,JK) - ZWORK(JJ,JK) = -ZMEM * ZWORK(JJ,JK) - ENDDO - - DO JK = JJ+1, KDIM - ZWORK(1:JJ-1,JK) = ZWORK(1:JJ-1,JK) - ZWORK(1:JJ-1,JJ)*ZWORK(JJ,JK) - ZWORK(JJ+1:KDIM,JK) = ZWORK(JJ+1:KDIM,JK) - ZWORK(JJ+1:KDIM,JJ)*ZWORK(JJ,JK) - ZWORK(JJ,JK) = -ZMEM * ZWORK(JJ,JK) - ENDDO - -ENDDO elimination_loop - -!* change columns -DO JI = 1, KDIM - ZCOL(IORDER(:)) = ZWORK(JI,:) - POUT(JI,:) = ZCOL(:) -ENDDO - -!* set KFAIL to success value 0 -KFAIL = 0 - -IF (LHOOK) CALL DR_HOOK('CH_GAUSS',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_GAUSS diff --git a/src/arome/chem/internals/ch_get_cnames.F90 b/src/arome/chem/internals/ch_get_cnames.F90 deleted file mode 100644 index 11c7cdc1af7d8fdc23fe66ba99a208c377d9063d..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_get_cnames.F90 +++ /dev/null @@ -1,60 +0,0 @@ -! ######spl - SUBROUTINE CH_GET_CNAMES(HNAMES) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ################################# -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!! -!!*** *CH_GET_CNAMES* -!! -!! PURPOSE -!! ------- -! return the names for the chemical species in HNAMES -!! -!!** METHOD -!! ------ -!! simple -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -!! -!! LOCAL VARIABLES -!! --------------- -CHARACTER(LEN=32), DIMENSION(:), INTENT(OUT) :: HNAMES -!! -!!---------------------------------------------------------------------- -!! -! copy the names of the chemical species into HNAMES -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_GET_CNAMES',0,ZHOOK_HANDLE) -HNAMES = CNAMES -IF (LHOOK) CALL DR_HOOK('CH_GET_CNAMES',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_GET_CNAMES diff --git a/src/arome/chem/internals/ch_get_rates.F90 b/src/arome/chem/internals/ch_get_rates.F90 deleted file mode 100644 index 66685bcf4728e55a43189d0bdf7fe995061645f1..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_get_rates.F90 +++ /dev/null @@ -1,193 +0,0 @@ -! ######spl - SUBROUTINE CH_GET_RATES(PRATE,KMI,KVECNPT,KREAC) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################ -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!! -!!*** *MODD_CH_GETRATES* -!! -!! PURPOSE -!! ------- -! retrieve reaction rates from TPK in an array -!! -!!** METHOD -!! ------ -!! simple -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KREAC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KREAC) :: PRATE -INTEGER, INTENT(IN) :: KMI -!! -!! LOCAL VARIABLES -!! --------------- -TYPE(CCSTYPE), POINTER :: TPK -!!---------------------------------------------------------------------- -!! -!! EXECUTABLE STATEMENTS -!! --------------------- -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_GET_RATES',0,ZHOOK_HANDLE) -TPK=>TACCS(KMI) -!! -PRATE(:,1) = TPK%K001(:) -PRATE(:,2) = TPK%K002(:) -PRATE(:,3) = TPK%K003(:) -PRATE(:,4) = TPK%K004(:) -PRATE(:,5) = TPK%K005(:) -PRATE(:,6) = TPK%K006(:) -PRATE(:,7) = TPK%K007(:) -PRATE(:,8) = TPK%K008(:) -PRATE(:,9) = TPK%K009(:) -PRATE(:,10) = TPK%K010(:) -PRATE(:,11) = TPK%K011(:) -PRATE(:,12) = TPK%K012(:) -PRATE(:,13) = TPK%K013(:) -PRATE(:,14) = TPK%K014(:) -PRATE(:,15) = TPK%K015(:) -PRATE(:,16) = TPK%K016(:) -PRATE(:,17) = TPK%K017(:) -PRATE(:,18) = TPK%K018(:) -PRATE(:,19) = TPK%K019(:) -PRATE(:,20) = TPK%K020(:) -PRATE(:,21) = TPK%K021(:) -PRATE(:,22) = TPK%K022(:) -PRATE(:,23) = TPK%K023(:) -PRATE(:,24) = TPK%K024(:) -PRATE(:,25) = TPK%K025(:) -PRATE(:,26) = TPK%K026(:) -PRATE(:,27) = TPK%K027(:) -PRATE(:,28) = TPK%K028(:) -PRATE(:,29) = TPK%K029(:) -PRATE(:,30) = TPK%K030(:) -PRATE(:,31) = TPK%K031(:) -PRATE(:,32) = TPK%K032(:) -PRATE(:,33) = TPK%K033(:) -PRATE(:,34) = TPK%K034(:) -PRATE(:,35) = TPK%K035(:) -PRATE(:,36) = TPK%K036(:) -PRATE(:,37) = TPK%K037(:) -PRATE(:,38) = TPK%K038(:) -PRATE(:,39) = TPK%K039(:) -PRATE(:,40) = TPK%K040(:) -PRATE(:,41) = TPK%K041(:) -PRATE(:,42) = TPK%K042(:) -PRATE(:,43) = TPK%K043(:) -PRATE(:,44) = TPK%K044(:) -PRATE(:,45) = TPK%K045(:) -PRATE(:,46) = TPK%K046(:) -PRATE(:,47) = TPK%K047(:) -PRATE(:,48) = TPK%K048(:) -PRATE(:,49) = TPK%K049(:) -PRATE(:,50) = TPK%K050(:) -PRATE(:,51) = TPK%K051(:) -PRATE(:,52) = TPK%K052(:) -PRATE(:,53) = TPK%K053(:) -PRATE(:,54) = TPK%K054(:) -PRATE(:,55) = TPK%K055(:) -PRATE(:,56) = TPK%K056(:) -PRATE(:,57) = TPK%K057(:) -PRATE(:,58) = TPK%K058(:) -PRATE(:,59) = TPK%K059(:) -PRATE(:,60) = TPK%K060(:) -PRATE(:,61) = TPK%K061(:) -PRATE(:,62) = TPK%K062(:) -PRATE(:,63) = TPK%K063(:) -PRATE(:,64) = TPK%K064(:) -PRATE(:,65) = TPK%K065(:) -PRATE(:,66) = TPK%K066(:) -PRATE(:,67) = TPK%K067(:) -PRATE(:,68) = TPK%K068(:) -PRATE(:,69) = TPK%K069(:) -PRATE(:,70) = TPK%K070(:) -PRATE(:,71) = TPK%K071(:) -PRATE(:,72) = TPK%K072(:) -PRATE(:,73) = TPK%K073(:) -PRATE(:,74) = TPK%K074(:) -PRATE(:,75) = TPK%K075(:) -PRATE(:,76) = TPK%K076(:) -PRATE(:,77) = TPK%K077(:) -PRATE(:,78) = TPK%K078(:) -PRATE(:,79) = TPK%K079(:) -PRATE(:,80) = TPK%K080(:) -PRATE(:,81) = TPK%K081(:) -PRATE(:,82) = TPK%K082(:) -PRATE(:,83) = TPK%K083(:) -PRATE(:,84) = TPK%K084(:) -PRATE(:,85) = TPK%K085(:) -PRATE(:,86) = TPK%K086(:) -PRATE(:,87) = TPK%K087(:) -PRATE(:,88) = TPK%K088(:) -PRATE(:,89) = TPK%K089(:) -PRATE(:,90) = TPK%K090(:) -PRATE(:,91) = TPK%K091(:) -PRATE(:,92) = TPK%K092(:) -PRATE(:,93) = TPK%K093(:) -PRATE(:,94) = TPK%K094(:) -PRATE(:,95) = TPK%K095(:) -PRATE(:,96) = TPK%K096(:) -PRATE(:,97) = TPK%K097(:) -PRATE(:,98) = TPK%K098(:) -PRATE(:,99) = TPK%K099(:) -PRATE(:,100) = TPK%K100(:) -PRATE(:,101) = TPK%K101(:) -PRATE(:,102) = TPK%K102(:) -PRATE(:,103) = TPK%K103(:) -PRATE(:,104) = TPK%K104(:) -PRATE(:,105) = TPK%K105(:) -PRATE(:,106) = TPK%K106(:) -PRATE(:,107) = TPK%K107(:) -PRATE(:,108) = TPK%K108(:) -PRATE(:,109) = TPK%K109(:) -PRATE(:,110) = TPK%K110(:) -PRATE(:,111) = TPK%K111(:) -PRATE(:,112) = TPK%K112(:) -PRATE(:,113) = TPK%K113(:) -PRATE(:,114) = TPK%K114(:) -PRATE(:,115) = TPK%K115(:) -PRATE(:,116) = TPK%K116(:) -PRATE(:,117) = TPK%K117(:) -PRATE(:,118) = TPK%K118(:) -PRATE(:,119) = TPK%K119(:) -PRATE(:,120) = TPK%K120(:) -PRATE(:,121) = TPK%K121(:) -PRATE(:,122) = TPK%K122(:) -PRATE(:,123) = TPK%K123(:) -PRATE(:,124) = TPK%K124(:) -PRATE(:,125) = TPK%K125(:) -PRATE(:,126) = TPK%K126(:) -PRATE(:,127) = TPK%K127(:) -PRATE(:,128) = TPK%K128(:) -IF (LHOOK) CALL DR_HOOK('CH_GET_RATES',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_GET_RATES diff --git a/src/arome/chem/internals/ch_ini_orilam.F90 b/src/arome/chem/internals/ch_ini_orilam.F90 deleted file mode 100644 index bb4cdef8a6dbf7b0a0db7b21982904a26c0e4ae4..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_ini_orilam.F90 +++ /dev/null @@ -1,222 +0,0 @@ -! ######spl - SUBROUTINE CH_INI_ORILAM(PM, PSIG0, PRG0, PN0,PCTOTG, PCTOTA, PCCTOT, & - PSEDA, POM, PRHOP0, PAERO, PCHEM, PRV, PDENAIR,& - PPRESSURE, PTEMP, PRC, PFRAC, PMI, GSCHEME) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ########################################## -!! -!! PURPOSE -!! ------- -!! initialize the aerosol variables (vectorwise) by calling NNARES -!! -!! METHOD -!! ------- -!! call the solver with zero coag/growth/cond terms -!! then only ares should be active and we won't need to recode everyting -!! here ;-) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre Tulet (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODI_CH_AER_SOLV -USE MODI_CH_AER_TRANS -USE MODD_CH_AEROSOL -USE MODD_CH_M9, ONLY : CNAMES -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM, POM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMI -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRHOP0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCHEM, PAERO -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -CHARACTER(LEN=10), INTENT(IN) :: GSCHEME -! -!* 0.2 declarations of local variables -! -REAL, DIMENSION(SIZE(PM,1),(JPMODE)*3) :: ZDMINTRA, ZDMINTER, ZDMCOND -REAL, DIMENSION(SIZE(PM,1),JPMODE) :: ZMASK, ZSOLORG - -INTEGER :: JJ, JI -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INI_ORILAM',0,ZHOOK_HANDLE) -POM(:,:) = 0. -PFRAC(:,:) = 0. -PSEDA(:,:) = 0. -ZDMINTRA(:,:) = 0. -ZDMINTER(:,:) = 0. -ZDMCOND(:,:) = 0. -ZSOLORG(:,:) = 0. -ZMASK(:,:) = 1. -! -! Initialization of constants -XPI = 2.*ASIN(1.) -XBOLTZ = 1.380658E-23 -XAVOGADRO = 6.0221367E+23 -XG = 9.80665 -XP00 = 1.E5 -XMD = 28.9644E-3 -XRD = XAVOGADRO * XBOLTZ / XMD -XCPD = 7.* XRD /2. -! -! Moments index -NM0(1) = 1 -NM3(1) = 2 -NM6(1) = 3 -NM0(2) = 4 -NM3(2) = 5 -NM6(2) = 6 -! -! Aerosol Density -! Cf Ackermann (all to black carbon except water) -XRHOI(:) = 1.8e3 -XRHOI(JP_AER_H2O) = 1.0e3 ! water -! -DO JJ=1,NSP+NCARB+NSOA - XFAC(JJ)=(4./3.)*XPI*XRHOI(JJ)*1.e-9 -ENDDO -! -! verify that all array elements are defined -DO JI = 1, SIZE(XRHOI) - IF (XRHOI(JI) .LE. 0.0) THEN - PRINT *, 'CH_AER_MOD_INIT ERROR: density for species ', JI, ' not defined' - STOP 'CH_AER_MOD_INIT ERROR: density not defined' - END IF -ENDDO -! -! Index gas scheme <=> Index Orilam -! -JP_CH_SO42M = 0 ! unuse in many schemes -! -DO JJ=1,SIZE(CNAMES) -! for heterogeneous chemistry -IF (CNAMES(JJ) == "O3") JP_CH_O3 = JJ -IF (CNAMES(JJ) == "SO2") JP_CH_SO2 = JJ -IF (CNAMES(JJ) == "SO42M") JP_CH_SO42M = JJ -IF (CNAMES(JJ) == "H2O2") JP_CH_H2O2 = JJ - -! Inorganics -IF (CNAMES(JJ) == "HNO3") JP_CH_HNO3 = JJ -IF (CNAMES(JJ) == "NH3") JP_CH_NH3 = JJ -IF ((CNAMES(JJ) == "H2SO4").OR.(CNAMES(JJ) == "SULF")) JP_CH_H2SO4 = JJ - -! SOA group 1 -IF (CNAMES(JJ) == "URG1") JP_CH_URG1 = JJ -IF (CNAMES(JJ) == "UR21") JP_CH_UR21 = JJ -IF (CNAMES(JJ) == "UR28") JP_CH_UR28 = JJ - -! SOA group 2 -IF (CNAMES(JJ) == "URG2") JP_CH_URG2 = JJ -IF (CNAMES(JJ) == "RPG2") JP_CH_RPG2 = JJ -IF (CNAMES(JJ) == "RP18") JP_CH_RP18 = JJ -IF (CNAMES(JJ) == "UR29") JP_CH_UR29 = JJ -IF (CNAMES(JJ) == "UR30") JP_CH_UR30 = JJ -IF (CNAMES(JJ) == "RP13") JP_CH_RP13 = JJ -IF (CNAMES(JJ) == "RP17") JP_CH_RP17 = JJ - -! SOA group 3 -IF (CNAMES(JJ) == "RPG3") JP_CH_RPG3 = JJ -IF (CNAMES(JJ) == "RPR9") JP_CH_RPR9 = JJ -IF (CNAMES(JJ) == "RP12") JP_CH_RP12 = JJ - -! SOA group 4 -IF (CNAMES(JJ) == "URG4") JP_CH_URG4 = JJ -IF (CNAMES(JJ) == "UR8") JP_CH_UR8 = JJ ! only for MPMPO (for PUN it is group 10) -IF (CNAMES(JJ) == "UR3") JP_CH_UR3 = JJ -IF (CNAMES(JJ) == "UR23") JP_CH_UR23 = JJ - -! SOA group 5 -IF (CNAMES(JJ) == "UR17") JP_CH_UR17 = JJ -IF (CNAMES(JJ) == "AP7") JP_CH_AP7 = JJ -IF (CNAMES(JJ) == "UR7") JP_CH_UR7 = JJ ! only for MPMPO (for PUN it is group 10) -IF (CNAMES(JJ) == "RPR3") JP_CH_RPR3 = JJ ! only for PUN (for MPMPO it is not a SOA precursor) - -! SOA group 6 -IF (CNAMES(JJ) == "URG6") JP_CH_URG6 = JJ -IF (CNAMES(JJ) == "ARAC") JP_CH_ARAC = JJ -IF (CNAMES(JJ) == "UR22") JP_CH_UR22 = JJ ! only for PUN (for MPMPO it is not a SOA precursor) -IF (CNAMES(JJ) == "UR31") JP_CH_UR31 = JJ -IF (CNAMES(JJ) == "AP1") JP_CH_AP1 = JJ -IF (CNAMES(JJ) == "AP6") JP_CH_AP6 = JJ - -! SOA group 7 -IF (CNAMES(JJ) == "URG7") JP_CH_URG7 = JJ -IF (CNAMES(JJ) == "RPG7") JP_CH_RPG7 = JJ -IF (CNAMES(JJ) == "RPR7") JP_CH_RPR7 = JJ -IF (CNAMES(JJ) == "RPR4") JP_CH_RPR4 = JJ ! only for PUN (for MPMPO it is not a SOA precursor) -IF (CNAMES(JJ) == "RP14") JP_CH_RP14 = JJ ! only for PUN (for MPMPO it is not a SOA precursor) -IF (CNAMES(JJ) == "RP19") JP_CH_RP19 = JJ ! only for PUN (for MPMPO it is not a SOA precursor) -IF (CNAMES(JJ) == "ADAC") JP_CH_ADAC = JJ -IF (CNAMES(JJ) == "UR2") JP_CH_UR2 = JJ -IF (CNAMES(JJ) == "UR14") JP_CH_UR14 = JJ -IF (CNAMES(JJ) == "UR27") JP_CH_UR27 = JJ - -! SOA group 8 -IF (CNAMES(JJ) == "URG8") JP_CH_URG8 = JJ -IF (CNAMES(JJ) == "UR19") JP_CH_UR19 = JJ ! only for MPMPO (for PUN it is not a SOA precursor) -IF (CNAMES(JJ) == "UR11") JP_CH_UR11 = JJ -IF (CNAMES(JJ) == "UR15") JP_CH_UR15 = JJ -IF (CNAMES(JJ) == "AP10") JP_CH_AP10 = JJ - -! SOA group 9 -IF (CNAMES(JJ) == "URG9") JP_CH_URG9 = JJ -IF (CNAMES(JJ) == "UR20") JP_CH_UR20 = JJ -IF (CNAMES(JJ) == "UR34") JP_CH_UR34 = JJ -IF (CNAMES(JJ) == "AP11") JP_CH_AP11 = JJ -IF (CNAMES(JJ) == "AP12") JP_CH_AP12 = JJ -IF (CNAMES(JJ) == "UR26") JP_CH_UR26 = JJ - -! SOA group 10 -IF (CNAMES(JJ) == "URG10") JP_CH_URG10 = JJ -IF (CNAMES(JJ) == "PAN8") JP_CH_PAN8 = JJ ! only for PUN (for MPMPO it is not a SOA precursor) -IF (CNAMES(JJ) == "UR5") JP_CH_UR5 = JJ -IF (CNAMES(JJ) == "UR6") JP_CH_UR6 = JJ -IF (CNAMES(JJ) == "UR7") JP_CH_UR7 = JJ -IF (CNAMES(JJ) == "UR8") JP_CH_UR8 = JJ -IF (CNAMES(JJ) == "AP8") JP_CH_AP8 = JJ - -END DO -! -! -!* 0.4 initialization aerosol solveur -CALL CH_AER_TRANS(0, PM, PSIG0, PRG0, PN0, PRHOP0, PAERO,& - PCHEM, PCTOTG, PCTOTA, PCCTOT, PFRAC, PMI, ZMASK, GSCHEME ) - -CALL CH_AER_SOLV(PM,PSIG0, PRG0, PN0, PCTOTG, PCTOTA, PCCTOT, & - ZDMINTRA,ZDMINTER,ZDMCOND,PSEDA,0.,POM,& - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, 0., ZSOLORG) - -CALL CH_AER_TRANS(1, PM, PSIG0, PRG0, PN0, PRHOP0, PAERO,& - PCHEM, PCTOTG, PCTOTA, PCCTOT, PFRAC, PMI, ZMASK, GSCHEME) - -! -IF (LHOOK) CALL DR_HOOK('CH_INI_ORILAM',1,ZHOOK_HANDLE) -RETURN -! -END SUBROUTINE CH_INI_ORILAM diff --git a/src/arome/chem/internals/ch_init_ccs.F90 b/src/arome/chem/internals/ch_init_ccs.F90 deleted file mode 100644 index bf1f3030b128745b7be163d42da19ef002eab9c7..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_init_ccs.F90 +++ /dev/null @@ -1,467 +0,0 @@ -! ######spl - SUBROUTINE CH_INIT_CCS(KEQ,KOUT,KVERB) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ###################################### -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!!*** *CH_INIT_CCS* -!! -!! PURPOSE -!! ------- -! initialization of the chemical reaction mechanism -!! -!!** METHOD -!! ------ -!! -!! The variables CNAMES and CREACS of MODD_CH_M9_SCHEME are defined here. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, INTENT(IN) :: KEQ ! number of scalar variables -INTEGER, INTENT(IN) :: KOUT, KVERB ! stdout output, verbosity level -!! -!! LOCAL VARIABLES -!! --------------- -INTEGER :: JII ! loop control -!! -!!---------------------------------------------------------------------- -! /BEGIN_INITIAL/ -! /END_INITIAL/ -! initialisation of the names of the chemical species -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INIT_CCS',0,ZHOOK_HANDLE) -CNAMES(1) = 'O3' -CNAMES(2) = 'H2O2' -CNAMES(3) = 'NO' -CNAMES(4) = 'NO2' -CNAMES(5) = 'NO3' -CNAMES(6) = 'N2O5' -CNAMES(7) = 'HONO' -CNAMES(8) = 'HNO3' -CNAMES(9) = 'HNO4' -CNAMES(10) = 'NH3' -CNAMES(11) = 'SO2' -CNAMES(12) = 'SULF' -CNAMES(13) = 'CO' -CNAMES(14) = 'OH' -CNAMES(15) = 'HO2' -CNAMES(16) = 'CH4' -CNAMES(17) = 'ETH' -CNAMES(18) = 'ALKA' -CNAMES(19) = 'ALKE' -CNAMES(20) = 'BIO' -CNAMES(21) = 'ARO' -CNAMES(22) = 'HCHO' -CNAMES(23) = 'ALD' -CNAMES(24) = 'KET' -CNAMES(25) = 'CARBO' -CNAMES(26) = 'ONIT' -CNAMES(27) = 'PAN' -CNAMES(28) = 'OP1' -CNAMES(29) = 'OP2' -CNAMES(30) = 'ORA2' -CNAMES(31) = 'MO2' -CNAMES(32) = 'ALKAP' -CNAMES(33) = 'ALKEP' -CNAMES(34) = 'BIOP' -CNAMES(35) = 'PHO' -CNAMES(36) = 'ADD' -CNAMES(37) = 'AROP' -CNAMES(38) = 'CARBOP' -CNAMES(39) = 'OLN' -CNAMES(40) = 'XO2' -! initialisation of the names of the reactions - CREACS(1) = 'K001' - CREACS(2) = 'K002' - CREACS(3) = 'K003' - CREACS(4) = 'K004' - CREACS(5) = 'K005' - CREACS(6) = 'K006' - CREACS(7) = 'K007' - CREACS(8) = 'K008' - CREACS(9) = 'K009' - CREACS(10) = 'K010' - CREACS(11) = 'K011' - CREACS(12) = 'K012' - CREACS(13) = 'K013' - CREACS(14) = 'K014' - CREACS(15) = 'K015' - CREACS(16) = 'K016' - CREACS(17) = 'K017' - CREACS(18) = 'K018' - CREACS(19) = 'K019' - CREACS(20) = 'K020' - CREACS(21) = 'K021' - CREACS(22) = 'K022' - CREACS(23) = 'K023' - CREACS(24) = 'K024' - CREACS(25) = 'K025' - CREACS(26) = 'K026' - CREACS(27) = 'K027' - CREACS(28) = 'K028' - CREACS(29) = 'K029' - CREACS(30) = 'K030' - CREACS(31) = 'K031' - CREACS(32) = 'K032' - CREACS(33) = 'K033' - CREACS(34) = 'K034' - CREACS(35) = 'K035' - CREACS(36) = 'K036' - CREACS(37) = 'K037' - CREACS(38) = 'K038' - CREACS(39) = 'K039' - CREACS(40) = 'K040' - CREACS(41) = 'K041' - CREACS(42) = 'K042' - CREACS(43) = 'K043' - CREACS(44) = 'K044' - CREACS(45) = 'K045' - CREACS(46) = 'K046' - CREACS(47) = 'K047' - CREACS(48) = 'K048' - CREACS(49) = 'K049' - CREACS(50) = 'K050' - CREACS(51) = 'K051' - CREACS(52) = 'K052' - CREACS(53) = 'K053' - CREACS(54) = 'K054' - CREACS(55) = 'K055' - CREACS(56) = 'K056' - CREACS(57) = 'K057' - CREACS(58) = 'K058' - CREACS(59) = 'K059' - CREACS(60) = 'K060' - CREACS(61) = 'K061' - CREACS(62) = 'K062' - CREACS(63) = 'K063' - CREACS(64) = 'K064' - CREACS(65) = 'K065' - CREACS(66) = 'K066' - CREACS(67) = 'K067' - CREACS(68) = 'K068' - CREACS(69) = 'K069' - CREACS(70) = 'K070' - CREACS(71) = 'K071' - CREACS(72) = 'K072' - CREACS(73) = 'K073' - CREACS(74) = 'K074' - CREACS(75) = 'K075' - CREACS(76) = 'K076' - CREACS(77) = 'K077' - CREACS(78) = 'K078' - CREACS(79) = 'K079' - CREACS(80) = 'K080' - CREACS(81) = 'K081' - CREACS(82) = 'K082' - CREACS(83) = 'K083' - CREACS(84) = 'K084' - CREACS(85) = 'K085' - CREACS(86) = 'K086' - CREACS(87) = 'K087' - CREACS(88) = 'K088' - CREACS(89) = 'K089' - CREACS(90) = 'K090' - CREACS(91) = 'K091' - CREACS(92) = 'K092' - CREACS(93) = 'K093' - CREACS(94) = 'K094' - CREACS(95) = 'K095' - CREACS(96) = 'K096' - CREACS(97) = 'K097' - CREACS(98) = 'K098' - CREACS(99) = 'K099' - CREACS(100) = 'K100' - CREACS(101) = 'K101' - CREACS(102) = 'K102' - CREACS(103) = 'K103' - CREACS(104) = 'K104' - CREACS(105) = 'K105' - CREACS(106) = 'K106' - CREACS(107) = 'K107' - CREACS(108) = 'K108' - CREACS(109) = 'K109' - CREACS(110) = 'K110' - CREACS(111) = 'K111' - CREACS(112) = 'K112' - CREACS(113) = 'K113' - CREACS(114) = 'K114' - CREACS(115) = 'K115' - CREACS(116) = 'K116' - CREACS(117) = 'K117' - CREACS(118) = 'K118' - CREACS(119) = 'K119' - CREACS(120) = 'K120' - CREACS(121) = 'K121' - CREACS(122) = 'K122' - CREACS(123) = 'K123' - CREACS(124) = 'K124' - CREACS(125) = 'K125' - CREACS(126) = 'K126' - CREACS(127) = 'K127' - CREACS(128) = 'K128' -! initialisation of the full reactions - CFULLREACS(1) = 'K001=!ZRATES(:,001)::NO2-->O3P+NO' - CFULLREACS(2) = 'K002=!ZRATES(:,002)::O3-->O1D+O2' - CFULLREACS(3) = 'K003=!ZRATES(:,003)::O3-->O3P+O2' - CFULLREACS(4) = 'K004=!ZRATES(:,004)::HONO-->OH+NO' - CFULLREACS(5) = 'K005=!ZRATES(:,005)::HNO3-->OH+NO2' - CFULLREACS(6) = 'K006=!ZRATES(:,006)::HNO4-->0.65*HO2+0.65*NO2+0.35*OH+0.35*NO& -&3' - CFULLREACS(7) = 'K007=!ZRATES(:,007)::NO3-->NO+O2' - CFULLREACS(8) = 'K008=!ZRATES(:,008)::NO3-->NO2+O3P' - CFULLREACS(9) = 'K009=!ZRATES(:,009)::H2O2-->OH+OH' - CFULLREACS(10) = 'K010=!ZRATES(:,010)::HCHO-->H2+CO' - CFULLREACS(11) = 'K011=!ZRATES(:,011)::HCHO-->HO2+HO2+CO' - CFULLREACS(12) = 'K012=!ZRATES(:,012)::ALD-->MO2+HO2+CO' - CFULLREACS(13) = 'K013=!ZRATES(:,013)::OP1-->HCHO+HO2+OH' - CFULLREACS(14) = 'K014=!ZRATES(:,014)::OP2-->0.96205*ALD+0.96205*HO2+0.03795*M& -&O2+OH' - CFULLREACS(15) = 'K015=!ZRATES(:,015)::KET-->1.00000*CARBOP+1.00000*ALKAP' - CFULLREACS(16) = 'K016=!ZRATES(:,016)::CARBO-->0.06517*HCHO+0.69622*CARBOP+0.7& -&5830*HO2+0.91924*CO+0.20842*H2' - CFULLREACS(17) = 'K017=!ZRATES(:,017)::ONIT-->0.20*ALD+0.80*KET+HO2+NO2' - CFULLREACS(18) = 'K018=TPK%M*6.00E-34*(TPK%T/300)**(-2.3)::O3P+O2-->O3' - CFULLREACS(19) = 'K019=8.00E-12*exp(-(2060.0/TPK%T))::O3P+O3-->2.0*O2' - CFULLREACS(20) = 'K020=1.80E-11*exp(-(-110.0/TPK%T))::O1D+N2-->O3P+N2' - CFULLREACS(21) = 'K021=3.20E-11*exp(-(-70.0/TPK%T))::O1D+O2-->O3P+O2' - CFULLREACS(22) = 'K022=2.20E-10::O1D+H2O-->OH+OH' - CFULLREACS(23) = 'K023=1.60E-12*exp(-(940.0/TPK%T))::O3+OH-->HO2+O2' - CFULLREACS(24) = 'K024=1.10E-14*exp(-(500.0/TPK%T))::O3+HO2-->OH+2.0*O2' - CFULLREACS(25) = 'K025=4.80E-11*exp(-(-250.0/TPK%T))::OH+HO2-->H2O+O2' - CFULLREACS(26) = 'K026=2.90E-12*exp(-(160.0/TPK%T))::H2O2+OH-->HO2+H2O' - CFULLREACS(27) = 'K027=2.3E-13*EXP(600./TPK%T)+1.7E-33*TPK%M*EXP(1000./TPK%T):& -&:HO2+HO2-->H2O2+O2' - CFULLREACS(28) = 'K028=3.22E-34*EXP(2800./TPK%T)+2.38E-54*TPK%M*EXP(3200./TPK%& -&T)::HO2+HO2+H2O-->H2O2+H2O+O2' - CFULLREACS(29) = 'K029=@TROE(1.,9.00E-32,1.5,3.00E-11,0.0,TPK%M,TPK%T,KVECNPT)& -&::O3P+NO-->NO2' - CFULLREACS(30) = 'K030=6.50E-12*exp(-(-120.0/TPK%T))::O3P+NO2-->NO+O2' - CFULLREACS(31) = 'K031=@TROE(1.,9.00E-32,2.0,2.20E-11,0.0,TPK%M,TPK%T,KVECNPT)& -&::O3P+NO2-->NO3' - CFULLREACS(32) = 'K032=@TROE(1.,7.00E-31,2.6,1.50E-11,0.5,TPK%M,TPK%T,KVECNPT)& -&::OH+NO-->HONO' - CFULLREACS(33) = 'K033=@TROE(1.,2.60E-30,3.2,2.40E-11,1.3,TPK%M,TPK%T,KVECNPT)& -&::OH+NO2-->HNO3' - CFULLREACS(34) = 'K034=2.20E-11::OH+NO3-->NO2+HO2' - CFULLREACS(35) = 'K035=3.70E-12*exp(-(-250.0/TPK%T))::HO2+NO-->NO2+OH' - CFULLREACS(36) = 'K036=@TROE(1.,1.80E-31,3.2,4.70E-12,1.4,TPK%M,TPK%T,KVECNPT)& -&::HO2+NO2-->HNO4' - CFULLREACS(37) = 'K037=@TROE_EQUIL(1.80E-31,3.2,4.70E-12,1.4,4.76E+26,10900.,T& -&PK%M,TPK%T,KVECNPT)::HNO4-->HO2+NO2' - CFULLREACS(38) = 'K038=3.50E-12::HO2+NO3-->0.3*HNO3+0.7*NO2+0.7*OH' - CFULLREACS(39) = 'K039=1.80E-11*exp(-(390.0/TPK%T))::OH+HONO-->H2O+NO2' - CFULLREACS(40) = 'K040=(7.2E-15*EXP(785/TPK%T))+(1.9E-33*EXP(725/TPK%T)*TPK%M)& -&/(1+(1.9E-33*EXP(725/TPK%T)*TPK%M)/(4.1E-16*EXP(1440/TPK%T)))::OH+HNO3-->NO3+H& -&2O' - CFULLREACS(41) = 'K041=1.30E-12*exp(-(-380.0/TPK%T))::OH+HNO4-->NO2+H2O+O2' - CFULLREACS(42) = 'K042=2.00E-12*exp(-(1400.0/TPK%T))::O3+NO-->NO2+O2' - CFULLREACS(43) = 'K043=1.20E-13*exp(-(2450.0/TPK%T))::O3+NO2-->NO3+O2' - CFULLREACS(44) = 'K044=3.30E-39*exp(-(-530.0/TPK%T))::NO+NO+O2-->NO2+NO2' - CFULLREACS(45) = 'K045=1.50E-11*exp(-(-170.0/TPK%T))::NO3+NO-->NO2+NO2' - CFULLREACS(46) = 'K046=4.50E-14*exp(-(1260.0/TPK%T))::NO3+NO2-->NO+NO2+O2' - CFULLREACS(47) = 'K047=@TROE(1.,2.20E-30,3.9,1.50E-12,0.7,TPK%M,TPK%T,KVECNPT)& -&::NO3+NO2-->N2O5' - CFULLREACS(48) = 'K048=@TROE_EQUIL(2.20E-30,3.9,1.50E-12,0.7,3.70E+26,11000.0,& -&TPK%M,TPK%T,KVECNPT)::N2O5-->NO2+NO3' - CFULLREACS(49) = 'K049=8.50E-13*exp(-(2450.0/TPK%T))::NO3+NO3-->NO2+NO2+O2' - CFULLREACS(50) = 'K050=5.50E-12*exp(-(2000.0/TPK%T))::OH+H2-->H2O+HO2' - CFULLREACS(51) = 'K051=@TROE(1.,3.00E-31,3.3,1.50E-12,0.0,TPK%M,TPK%T,KVECNPT)& -&::OH+SO2-->SULF+HO2' - CFULLREACS(52) = 'K052=1.5E-13*(1.+2.439E-20*TPK%M)::CO+OH-->HO2+CO2' - CFULLREACS(53) = 'K053=6.00E-11::BIO+O3P-->0.91868*ALKE+0.05*HCHO+0.02*OH+0.01& -&*CO+0.13255*CARBO+0.28*HO2+0.15*XO2' - CFULLREACS(54) = 'K054=0.00E-01*exp(-(-13.0/TPK%T))::CARBO+O3P-->ALD' - CFULLREACS(55) = 'K055=TPK%T*TPK%T*7.44E-18*exp(-(1361./TPK%T))::CH4+OH-->MO2+& -&H2O' - CFULLREACS(56) = 'K056=1.51E-17*TPK%T*TPK%T*exp(-(492./TPK%T))::ETH+OH-->ALKAP& -&' - CFULLREACS(57) = 'K057=3.76E-12*exp(-(260.0/TPK%T))+1.70E-12*exp(-(155.0/TPK%T& -&))+1.21E-12*exp(-(125.0/TPK%T))::ALKA+OH-->0.87811*ALKAP+0.12793*HO2+0.08173*A& -&LD+0.03498*KET+0.00835*CARBO+0.00140*HCHO+0.00878*ORA1+0.00878*CO+0.00878*OH+H& -&2O' - CFULLREACS(58) = 'K058=1.78E-12*exp(-(-438.0/TPK%T))+6.07E-13*exp(-(-500.0/TPK& -&%T))+0.00E-01*exp(-(-448.0/TPK%T))::ALKE+OH-->1.02529*ALKEP+0.00000*BIOP' - CFULLREACS(59) = 'K059=2.54E-11*exp(-(-410.0/TPK%T))+0.00E-01*exp(-(-444.0/TPK& -&%T))+0.00E-01::BIO+OH-->1.00000*BIOP' - CFULLREACS(60) = 'K060=3.31E-12*exp(-(-355.0/TPK%T))+3.45E-13::ARO+OH-->0.9396& -&8*ADD+0.10318*XO2+0.10318*HO2+0.00276*PHO' - CFULLREACS(61) = 'K061=1.00E-11::HCHO+OH-->HO2+CO+H2O' - CFULLREACS(62) = 'K062=5.55E-12*exp(-(-331.0/TPK%T))::ALD+OH-->1.00000*CARBOP+& -&H2O' - CFULLREACS(63) = 'K063=TPK%T*TPK%T*5.68E-18*exp(-(-92.0/TPK%T))::KET+OH-->1.00& -&000*CARBOP+H2O' - CFULLREACS(64) = 'K064=1.32E-11+1.88E-12*exp(-(-175.0/TPK%T))::CARBO+OH-->0.51& -&419*CARBOP+0.16919*CARBO+1.01732*CO+0.51208*HO2+0.00000*HCHO+0.06253*ALD+0.008& -&53*KET+0.10162*XO2+0.75196*H2O' - CFULLREACS(65) = 'K065=2.93E-12*exp(-(-190.0/TPK%T))::OP1+OH-->0.65*MO2+0.35*H& -&CHO+0.35*OH' - CFULLREACS(66) = 'K066=3.36E-12*exp(-(-190.0/TPK%T))::OP2+OH-->0.40341*ALKAP+0& -&.05413*CARBOP+0.07335*ALD+0.37591*KET+0.09333*XO2+0.02915*HO2+0.02915*HCHO+0.4& -&4925*OH' - CFULLREACS(67) = 'K067=3.80E-14+1.59E-14*exp(-(-500.0/TPK%T))::PAN+OH-->0.5783& -&9*HCHO+0.21863*CARBO+0.71893*NO3+0.28107*PAN+0.28107*HO2+0.29733*H2O+XO2' - CFULLREACS(68) = 'K068=5.31E-12*exp(-(260.0/TPK%T))::ONIT+OH-->1.00000*ALKAP+N& -&O2+H2O' - CFULLREACS(69) = 'K069=3.40E-13*exp(-(1900.0/TPK%T))::HCHO+NO3-->HO2+HNO3+CO' - CFULLREACS(70) = 'K070=1.40E-12*exp(-(1900.0/TPK%T))::ALD+NO3-->1.00000*CARBOP& -&+HNO3' - CFULLREACS(71) = 'K071=1.62E-12*exp(-(1900.0/TPK%T))+0.00E-01*exp(-(150.0/TPK%& -&T))+1.94E-14*exp(-(1000.0/TPK%T))::CARBO+NO3-->0.91567*HNO3+0.38881*CARBOP+0.1& -&0530*CARBO+0.05265*ALD+0.00632*KET+0.10530*NO2+0.10530*XO2+0.63217*HO2+1.33723& -&*CO+0.00000*OLN' - CFULLREACS(72) = 'K072=4.92E-16::ARO+NO3-->HNO3+PHO' - CFULLREACS(73) = 'K073=4.35E-18*TPK%T*TPK%T*exp(-(2282.0/TPK%T))+1.91E-14*exp(& -&-(450.0/TPK%T))+1.08E-15*exp(-(-450.0/TPK%T))+0.00E-01::ALKE+NO3-->0.00000*CAR& -&BO+0.93768*OLN' - CFULLREACS(74) = 'K074=4.00E-12*exp(-(446.0/TPK%T))+0.00E-01*exp(-(-490.0/TPK%& -&T))+0.00E-01::BIO+NO3-->0.91741*CARBO+1.00000*OLN' - CFULLREACS(75) = 'K075=3.76E-16*exp(-(500.0/TPK%T))::PAN+NO3-->0.60*ONIT+0.60*& -&NO3+0.40000*PAN+0.40*HCHO+0.40*NO2+XO2' - CFULLREACS(76) = 'K076=8.17E-15*exp(-(2580.0/TPK%T))+4.32E-16*exp(-(1800.0/TPK& -&%T))+2.87E-17*exp(-(845.0/TPK%T))+0.00E-01*exp(-(2283.0/TPK%T))::ALKE+O3-->0.4& -&8290*HCHO+0.51468*ALD+0.07377*KET+0.00000*CARBO+0.35120*CO+0.15343*ORA1+0.0814& -&3*ORA2+0.23451*HO2+0.39435*OH+0.05705*CARBOP+0.03196*ETH+0.00000*ALKE+0.04300*& -&CH4+0.13966*MO2+0.09815*ALKAP+0.01833*H2O2+0.00000*XO2+0.05409*H2+0.00000*O3P' - CFULLREACS(77) = 'K077=7.86E-15*exp(-(1913.0/TPK%T))+0.00E-01*exp(-(732.0/TPK%& -&T))+0.00E-01::BIO+O3-->0.90000*HCHO+0.00000*ALD+0.00000*KET+0.39754*CARBO+0.36& -&000*CO+0.37388*ALKE+0.00000*ALKAP+0.17000*CARBOP+0.03000*MO2+0.15000*ORA1+0.00& -&000*ORA2+0.28000*OH+0.30000*HO2+0.00100*H2O2+0.05000*H2+0.13000*XO2+0.09000*O3& -&P' - CFULLREACS(78) = 'K078=0.00E-01*exp(-(2112.0/TPK%T))+1.38E-19::CARBO+O3-->0.00& -&000*HCHO+1.07583*CARBO+0.15692*ALD+0.10788*ORA1+0.20595*ORA2+0.27460*CARBOP+0.& -&10149*OP2+0.64728*CO+0.28441*HO2+0.20595*OH+0.00000*H2' - CFULLREACS(79) = 'K079=7.20E-17*exp(-(1700.0/TPK%T))::PAN+O3-->0.70*HCHO+0.300& -&00*PAN+0.70*NO2+0.13*CO+0.04*H2+0.11*ORA1+0.08*HO2+0.036*OH+0.70000*CARBOP' - CFULLREACS(80) = 'K080=2.00E-11::PHO+NO2-->0.10670*ARO+ONIT' - CFULLREACS(81) = 'K081=1.00E-11::PHO+HO2-->1.06698*ARO' - CFULLREACS(82) = 'K082=3.60E-11::ADD+NO2-->ARO+HONO' - CFULLREACS(83) = 'K083=1.66E-17*exp(-(-1044.0/TPK%T))::ADD+O2-->0.98*AROP+0.02& -&*ARO+0.02*HO2' - CFULLREACS(84) = 'K084=2.80E-11::ADD+O3-->ARO+OH' - CFULLREACS(85) = 'K085=@TROE(5.86E-01,9.70E-29,5.6,9.30E-12,1.5,TPK%M,TPK%T,KV& -&ECNPT)::CARBOP+NO2-->1.00000*PAN' - CFULLREACS(86) = 'K086=@TROE_EQUIL(9.70E-29,5.6,9.30E-12,1.5,1.16E+28,13954.,T& -&PK%M,TPK%T,KVECNPT)::PAN-->1.00000*CARBOP+NO2' - CFULLREACS(87) = 'K087=4.20E-12*exp(-(-180.0/TPK%T))::MO2+NO-->HCHO+HO2+NO2' - CFULLREACS(88) = 'K088=4.36E-12::ALKAP+NO-->0.33144*ALD+0.03002*HCHO+0.54531*K& -&ET+0.03407*CARBO+0.74265*HO2+0.09016*MO2+0.08187*ALKAP+0.13007*XO2+0.08459*ONI& -&T+0.91541*NO2' - CFULLREACS(89) = 'K089=6.93E-12::ALKEP+NO-->1.39870*HCHO+0.42125*ALD+0.05220*K& -&ET+HO2+NO2' - CFULLREACS(90) = 'K090=4.00E-12::BIOP+NO-->0.45463*CARBO+0.60600*HCHO+0.00000*& -&ALD+0.00000*KET+0.37815*ALKE+0.84700*HO2+0.84700*NO2+0.15300*ONIT' - CFULLREACS(91) = 'K091=4.00E-12::AROP+NO-->0.95115*NO2+0.95115*HO2+2.06993*CAR& -&BO+0.04885*ONIT' - CFULLREACS(92) = 'K092=1.22E-11::CARBOP+NO-->0.78134*MO2+0.09532*CARBOP+0.0584& -&8*HCHO+0.07368*ALD+0.08670*CARBO+0.12334*HO2+0.02563*XO2+NO2' - CFULLREACS(93) = 'K093=4.00E-12::OLN+NO-->0.18401*ONIT+1.81599*NO2+0.18401*HO2& -&+0.23419*HCHO+1.01182*ALD+0.37862*KET' - CFULLREACS(94) = 'K094=3.80E-13*exp(-(-800.0/TPK%T))::MO2+HO2-->OP1' - CFULLREACS(95) = 'K095=6.16E-14*exp(-(-700.0/TPK%T))+1.52E-13*exp(-(-1300.0/TP& -&K%T))::ALKAP+HO2-->1.00524*OP2' - CFULLREACS(96) = 'K096=1.81E-13*exp(-(-1300.0/TPK%T))::ALKEP+HO2-->1.00524*OP2& -&' - CFULLREACS(97) = 'K097=1.28E-13*exp(-(-1300.0/TPK%T))+0.00E-01::BIOP+HO2-->1.0& -&0524*OP2' - CFULLREACS(98) = 'K098=3.75E-13*exp(-(-980.0/TPK%T))::AROP+HO2-->1.00524*OP2' - CFULLREACS(99) = 'K099=5.94E-13*exp(-(-550.0/TPK%T))+1.99E-16*exp(-(-2640.0/TP& -&K%T))+5.56E-14*exp(-(-1300.0/TPK%T))::CARBOP+HO2-->0.80904*OP2+0.17307*ORA2+0.& -&17307*O3' - CFULLREACS(100) = 'K100=1.66E-13*exp(-(-1300.0/TPK%T))::OLN+HO2-->ONIT' - CFULLREACS(101) = 'K101=9.10E-14*exp(-(-416.0/TPK%T))::MO2+MO2-->1.33*HCHO+0.6& -&6*HO2' - CFULLREACS(102) = 'K102=1.03E-14*exp(-(-158.0/TPK%T))+6.24E-14*exp(-(-431.0/TP& -&K%T))+1.53E-14*exp(-(-467.0/TPK%T))+4.34E-15*exp(-(-633.0/TPK%T))::ALKAP+MO2--& -&>0.80556*HCHO+0.98383*HO2+0.56070*ALD+0.09673*KET+0.01390*MO2+0.07976*CARBO+0.& -&13370*XO2+0.00385*ALKAP' - CFULLREACS(103) = 'K103=1.57E-13*exp(-(-708.0/TPK%T))::ALKEP+MO2-->1.42894*HCH& -&O+0.46413*ALD+0.03814*KET+HO2' - CFULLREACS(104) = 'K104=1.36E-13*exp(-(-708.0/TPK%T))::BIOP+MO2-->0.56064*CARB& -&O+0.48074*ALKE+1.00000*HO2+1.09000*HCHO+0.00000*ALD+0.00000*KET' - CFULLREACS(105) = 'K105=3.56E-14*exp(-(-708.0/TPK%T))::AROP+MO2-->HCHO+1.02767& -&*HO2+1.99461*CARBO' - CFULLREACS(106) = 'K106=1.77E-11*exp(-(440.0/TPK%T))+1.48E-16*exp(-(-2510.0/TP& -&K%T))+3.10E-13*exp(-(-508.0/TPK%T))::CARBOP+MO2-->0.95723*HCHO+0.82998*HO2+0.5& -&6031*MO2+0.13684*ORA2+0.05954*CARBOP+0.15387*CARBO+0.08295*ALD+0.02212*XO2' - CFULLREACS(107) = 'K107=1.12E-13*exp(-(-708.0/TPK%T))::OLN+MO2-->0.88625*HCHO+& -&0.67560*HO2+0.67560*ONIT+0.41524*ALD+0.09667*KET+0.32440*NO2' - CFULLREACS(108) = 'K108=4.44E-14*exp(-(-211.0/TPK%T))+2.23E-13*exp(-(-460.0/TP& -&K%T))+4.10E-14*exp(-(-522.0/TPK%T))+1.17E-14*exp(-(-683.0/TPK%T))::ALKAP+CARBO& -&P-->0.71461*ALD+0.48079*HO2+0.51480*MO2+0.49810*ORA2+0.18819*KET+0.07600*HCHO+& -&0.00828*ALKAP+0.11306*XO2+0.06954*CARBO' - CFULLREACS(109) = 'K109=4.36E-13*exp(-(-765.0/TPK%T))::ALKEP+CARBOP-->0.68192*& -&HCHO+0.68374*ALD+0.50078*HO2+0.50078*MO2+0.49922*ORA2+0.06579*KET' - CFULLREACS(110) = 'K110=7.60E-13*exp(-(-765.0/TPK%T))::BIOP+CARBOP-->0.78591*C& -&ARBO+0.24463*ALKE+0.50600*HO2+0.49400*ORA2+0.34000*HCHO+0.50600*MO2+0.00000*AL& -&D+0.00000*KET' - CFULLREACS(111) = 'K111=3.63E-13*exp(-(-765.0/TPK%T))::AROP+CARBOP-->MO2+HO2+1& -&.99455*CARBO' - CFULLREACS(112) = 'K112=7.73E-13*exp(-(-530.0/TPK%T))+1.70E-13*exp(-(-565.0/TP& -&K%T))::CARBOP+CARBOP-->1.66702*MO2+0.05821*CARBOP+0.03432*HCHO+0.10777*CARBO+0& -&.06969*ALD+0.02190*KET+0.07566*HO2+0.01593*XO2+0.09955*ORA2' - CFULLREACS(113) = 'K113=4.85E-13*exp(-(-765.0/TPK%T))::OLN+CARBOP-->0.66562*ON& -&IT+0.51037*MO2+0.48963*ORA2+0.17599*HO2+0.13414*HCHO+0.42122*ALD+0.10822*KET+0& -&.00000*NO2' - CFULLREACS(114) = 'K114=4.19E-15*exp(-(-1000.0/TPK%T))::OLN+OLN-->2.00*ONIT+HO& -&2' - CFULLREACS(115) = 'K115=2.48E-14*exp(-(-1000.0/TPK%T))::OLN+OLN-->0.00000*HCHO& -&+0.00000*ALD+0.00000*KET+0.00000*HO2+0.00000*NO2+0.00000*ONIT' - CFULLREACS(116) = 'K116=1.20E-12::MO2+NO3-->HCHO+HO2+NO2' - CFULLREACS(117) = 'K117=1.20E-12::ALKAP+NO3-->0.33743*ALD+0.81290*HO2+0.03142*& -&HCHO+0.62978*KET+0.03531*CARBO+0.09731*MO2+0.08994*ALKAP+0.16271*XO2+NO2' - CFULLREACS(118) = 'K118=1.20E-12::ALKEP+NO3-->1.40909*HCHO+0.43039*ALD+0.02051& -&*KET+HO2+NO2' - CFULLREACS(119) = 'K119=1.20E-12::BIOP+NO3-->0.61160*CARBO+0.42729*ALKE+0.6860& -&0*HCHO+0.00000*ALD+0.00000*KET+HO2+NO2' - CFULLREACS(120) = 'K120=1.20E-12::AROP+NO3-->2.81904*CARBO+HO2+NO2' - CFULLREACS(121) = 'K121=3.48E-12::CARBOP+NO3-->0.91910*MO2+0.03175*CARBOP+0.03& -&175*HCHO+0.03455*CARBO+0.02936*ALD+0.04915*HO2+0.01021*XO2+NO2' - CFULLREACS(122) = 'K122=1.20E-12::OLN+NO3-->0.25928*ONIT+1.74072*NO2+0.25928*H& -&O2+0.20740*HCHO+0.91850*ALD+0.34740*KET' - CFULLREACS(123) = 'K123=1.66E-13*exp(-(-1300.0/TPK%T))::XO2+HO2-->1.00524*OP2' - CFULLREACS(124) = 'K124=5.99E-15*exp(-(-1510.0/TPK%T))::XO2+MO2-->HCHO+HO2' - CFULLREACS(125) = 'K125=1.69E-14*exp(-(-1560.0/TPK%T))::XO2+CARBOP-->MO2' - CFULLREACS(126) = 'K126=7.13E-17*exp(-(-2950.0/TPK%T))::XO2+XO2-->' - CFULLREACS(127) = 'K127=4.00E-12::XO2+NO-->NO2' - CFULLREACS(128) = 'K128=1.20E-12::XO2+NO3-->NO2' -IF (KVERB >= 5) THEN -! print information to KOUT - WRITE(KOUT,*) 'CH_INIT_CCS: prognostic variables are:' - DO JII = 1, NEQ - WRITE(KOUT,'(I4,2A)') JII, '. ', TRIM(CNAMES(JII)) - END DO - WRITE(KOUT,*) 'CH_INIT_CCS: implemented reactions are:' - DO JII = 1, NREAC - WRITE(KOUT,'(I4,2A)') JII, '. ', TRIM(CFULLREACS(JII)) - END DO -END IF -IF (LHOOK) CALL DR_HOOK('CH_INIT_CCS',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_INIT_CCS diff --git a/src/arome/chem/internals/ch_init_diagnostics.F90 b/src/arome/chem/internals/ch_init_diagnostics.F90 deleted file mode 100644 index e0a4e8a458b76fe6c5053c507154517d2b11c104..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_init_diagnostics.F90 +++ /dev/null @@ -1,128 +0,0 @@ -! ######spl - SUBROUTINE CH_INIT_DIAGNOSTICS - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################## -!! -!!**** *CH_INIT_DIAGNOSTICS* -!! -!! PURPOSE -!! ------- -!! prepare diagnostics -!! -!! METHOD -!! ------ -!! the diagnostics file CDIAGFILE (default: "BOX.DIAG") will be opened -!! and the headder will be written, containing general information -!! on the saved variables, actually the following variables will be saved: -!! CONC, reaction rates, PROD, LOSS, TERMS; -!! these variables are calculated by CH_PRODLOSS, CH_TERMS, and CH_GET_RATES -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 14/05/95 -!! 27/07/96 (K. Suhre) restructured -!! 01/12/03 (Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_MODEL0D, ONLY: CDIAGFILE, CRUNID, CDIAGFORMAT, & - NDIAGIO, XTSIMUL -USE MODD_CH_M9, ONLY: NEQ, NREAC, NNONZEROTERMS, CNAMES, CREACS -!! -!! -!! -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! ----------------------------- -! -!* 0.2 Declaration of local variables -! ---------------------------------- -! -CHARACTER*8 :: YDATE ! for retrieval of date and time -CHARACTER*10 :: YTIME ! dito -! -INTEGER :: JI -!INTEGER, DIMENSION(2, NNONZEROTERMS) :: IINDEX ! indices of non-zero terms -INTEGER, DIMENSION(:,:), ALLOCATABLE :: IINDEX ! indices of non-zero terms -! Allocate IINDEX -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INIT_DIAGNOSTICS',0,ZHOOK_HANDLE) -ALLOCATE(IINDEX(2,NNONZEROTERMS)) -! -!* EXECUTABLE STATEMENTS -! --------------------- -! -! open the file -PRINT *, "CH_INIT_DIAGNOSTICS: opening unit ", NDIAGIO, " for file ", CDIAGFILE -OPEN(UNIT = NDIAGIO, & - FILE = CDIAGFILE, & - FORM = "FORMATTED", & - STATUS = "UNKNOWN" ) -! -! write the headder -CALL DATE_AND_TIME(YDATE, YTIME) -WRITE(NDIAGIO,'(4A)')'MODEL0D DIAGNOSTICS VERSION 1.1 AT ',YDATE,":",YTIME -WRITE(NDIAGIO,'(A)') CRUNID -! -! number of variables and their names -WRITE(NDIAGIO,'(4I10)') 1+NEQ+NREAC+2*NEQ+NNONZEROTERMS, & - NEQ, NREAC, NNONZEROTERMS -! -! diagnostics time -WRITE(NDIAGIO, '(A)') "XTSIMUL" -! -! the concentrations -DO JI = 1, NEQ - WRITE(NDIAGIO, '(A)') CNAMES(JI) -ENDDO -! -! the reaction rates -DO JI = 1, NREAC - WRITE(NDIAGIO, '(A)') CREACS(JI) -ENDDO -! -! the production terms -DO JI = 1, NEQ - WRITE(NDIAGIO, '(A)') CNAMES(JI) // "-PROD" -ENDDO -! -! the destruction terms terms -DO JI = 1, NEQ - WRITE(NDIAGIO, '(A)') CNAMES(JI) // "-LOSS" -ENDDO -! -! get the indices of the explicit contributions -! (only non-zero terms will be stored) -CALL CH_NONZEROTERMS(IINDEX, NNONZEROTERMS) -DO JI = 1, NNONZEROTERMS - WRITE(NDIAGIO, '(A)') CNAMES(IINDEX(1,JI)) // "-" // CREACS(IINDEX(2,JI)) -ENDDO -DO JI = 1, NNONZEROTERMS - WRITE(NDIAGIO, '(2I5)') IINDEX(1,JI), IINDEX(2,JI) -ENDDO -! -! write format of following data -WRITE(NDIAGIO,'(A)') CDIAGFORMAT -! -DEALLOCATE(IINDEX) -! -IF (LHOOK) CALL DR_HOOK('CH_INIT_DIAGNOSTICS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_INIT_DIAGNOSTICS diff --git a/src/arome/chem/internals/ch_init_jvalues.F90 b/src/arome/chem/internals/ch_init_jvalues.F90 deleted file mode 100644 index 3aa7acc4482d7595b60c99873dd57fd1442a0104..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_init_jvalues.F90 +++ /dev/null @@ -1,154 +0,0 @@ -! ######spl - SUBROUTINE CH_INIT_JVALUES(KDAY, KMONTH, KYEAR, KLUOUT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################### -!! -!!*** *CH_INIT_JVALUES* -!! -!! PURPOSE -!! ------- -! calculate J-Values used by MesoNH-chemistry -!! -!!** METHOD -!! ------ -!! The radiative transfer model TUV is called for a dicrete number -!! of solar zenith angle (latitude, longitude, time) and altitude. -!! TUV itself requires -!! a number of input files that will reside in directories -!! DATAX, DATA0 and DATA4 (to be created at runtime by tar xvf TUVDATA.tar). -!! Temporal interpolation is performed in CH_MONITOR. -!! -!!============================================================================== -!! -!! REFERENCES -!! ---------- -!! MesoNH-chemistry book 3 -!! -!! AUTHOR -!! ------ -!! C. Mari -!! -!! MODIFICATIONS -!! ------------- -!! Original 11/03/01 -!! Modification -!! 12/03/01 (P. Tulet) Include variation of J with surface albedo -!! 01/02/04 (P. Tulet) externalisation , modification of the albedo UV -!! interpolation -!! 01/12/04 (P. Tulet) update for arome -!! -!! EXTERNAL -!! -------- -!! TUV39.f (Fortran 77 code from S. Madronich) -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! None -! -USE MODD_CH_INIT_JVALUES -! -!* 0. DECLARATIONS -! ----------------- -! -IMPLICIT NONE -! -INTEGER, INTENT(IN) :: KLUOUT -INTEGER, INTENT(IN) :: KYEAR ! Current Year -INTEGER, INTENT(IN) :: KMONTH ! Current Month -INTEGER, INTENT(IN) :: KDAY ! Current Day - -! -! Calculation of J values -! -REAL, DIMENSION(NZZ_JVAL) :: ZLWC -REAL :: ZDZ -REAL :: ZDOBNEW -REAL :: ZSZALOOP, ZALBLOOP -REAL :: ZMAX = 30E3 - ! MAXIMUM HEIGHT FOR WHICH J-VALUES WILL BE COMPUTED -INTEGER :: IDATE -! -! J value storage -! -CHARACTER*40, DIMENSION(JPJVMAX) :: YLABELOUT -REAL, DIMENSION(NZZ_JVAL,JPJVMAX) :: ZJOUT -! -! Parameters for interpolation -! -INTEGER :: JALB, JKLEV, JSZA, JJVAL -! -!---------------------------------------------------------------------------- -! -! -!* 1. INITIALISATION -! ------------------- -! -! Nb of interpolation values for albedo; values = 10 -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INIT_JVALUES',0,ZHOOK_HANDLE) -NBALB=10 -IF (.NOT.ALLOCATED(XJDATA)) ALLOCATE(XJDATA(NSZA_INCR,NZZ_JVAL,JPJVMAX,NBALB)) - ! - !* Albedo - ! now denifed by radiation scheme - ! - !* Solar Zenith Angle - ! - IF (.NOT. ALLOCATED(XSZA_JVAL)) ALLOCATE(XSZA_JVAL(NSZA_INCR)) - DO JSZA = 1, NSZA_INCR - XSZA_JVAL(JSZA) = FLOAT(JSZA-1) - ENDDO - ! - !* Ozone Column - ! - ZDOBNEW = 320. - ! - !* Date - ! - IDATE= MOD(KYEAR,100) *10000 + KMONTH * 100 + KDAY - ! - !* Vertical Levels - ! - ZDZ = ZMAX / FLOAT(NZZ_JVAL - 1) - IF(.NOT.ALLOCATED(XZZ_JVAL)) ALLOCATE(XZZ_JVAL(NZZ_JVAL)) - DO JKLEV = 1, NZZ_JVAL - XZZ_JVAL(JKLEV) = FLOAT(JKLEV-1) * ZDZ - ZLWC(JKLEV)= 0.0 - ENDDO - ! - !* CALL TUV 3.9 - ! ------------ - ! - DO JALB=1,NBALB - ZALBLOOP=0.02+0.20*FLOAT(JALB-1)/FLOAT(NBALB-1) - DO JSZA = 1, NSZA_INCR - ZSZALOOP = XSZA_JVAL(JSZA) - CALL TUVMAIN( ZSZALOOP, IDATE, & - ZALBLOOP, ZDOBNEW, & - NZZ_JVAL,XZZ_JVAL, ZLWC, & - JPJVMAX, ZJOUT, YLABELOUT ) - DO JKLEV = 1, NZZ_JVAL - DO JJVAL = 1, JPJVMAX - XJDATA(JSZA,JKLEV,JJVAL,JALB) = ZJOUT(JKLEV,JJVAL) - ENDDO - ENDDO - ENDDO - ENDDO - XJDATA(:,:,:,:)=MAX(0.,XJDATA(:,:,:,:)) - ! -WRITE(KLUOUT,*) "There are ", NZZ_JVAL, " vertical levels with a spacing of ",& - ZDZ, "m" -WRITE(KLUOUT,*) "The solar zenith angle varies from", XSZA_JVAL(1)," to ", & - XSZA_JVAL(NSZA_INCR) -WRITE(KLUOUT,*) "There are the following ", JPJVMAX, " photolysis reactions:" -DO JJVAL = 1, JPJVMAX - WRITE(KLUOUT,'(I4, A, A70)') JJVAL, ". ", YLABELOUT(JJVAL) -ENDDO -DO JJVAL = 1, JPJVMAX - WRITE(KLUOUT,'(A12,1X,I2,E12.4,1X,E12.4)')'J Values',JJVAL, & - MAXVAL(XJDATA(:,:,JJVAL,:)), MINVAL(XJDATA(:,:,JJVAL,:)) -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_INIT_JVALUES',1,ZHOOK_HANDLE) -END SUBROUTINE CH_INIT_JVALUES diff --git a/src/arome/chem/internals/ch_init_output.F90 b/src/arome/chem/internals/ch_init_output.F90 deleted file mode 100644 index 22e679447605d18151508555428eebf12ce9e92f..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_init_output.F90 +++ /dev/null @@ -1,126 +0,0 @@ -! ######spl - SUBROUTINE CH_INIT_OUTPUT(TPM) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################## -!! -!!*** *CH_INIT_OUTPUT* -!! -!! PURPOSE -!! ------- -!! prepare regular output of results -!! -!!** METHOD -!! ------ -!! the result file CRESULTFILE (default: "BOX.RESULT") will be opened -!! and the headder will be written, containing general information -!! on the saved variables, presently the following variables will be saved: -!! - concentration of all prognostic variables -!! - the reaction constants and photolysis rates -!! - the meteo variables -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 25/04/95 -!! 27/07/96 (K. Suhre) restructured -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_MODEL0D, ONLY: CRESULTFILE, CRUNID, CRESULTFORMAT, & - NRESULTIO, XTSIMUL -USE MODD_CH_M9, ONLY: NEQ, NREAC, NMETEOVARS, CNAMES, CREACS, METEOTRANSTYPE -USE MODD_CH_AEROSOL -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -TYPE(METEOTRANSTYPE), INTENT(IN) :: TPM ! the meteo variables -! -!* 0.2 declaration of local variables -! -CHARACTER*8 :: YDATE ! for retrieval of date and time -CHARACTER*10 :: YTIME ! dito -INTEGER :: JI ! loop control -INTEGER :: NAERO -! -!------------------------------------------------------------------------------ -! -!* 1. OPEN OUTPUT FILE -! ---------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INIT_OUTPUT',0,ZHOOK_HANDLE) -PRINT *, "CH_INIT_OUTPUT: opening unit ", NRESULTIO, " for file ", CRESULTFILE -OPEN(UNIT = NRESULTIO, & - FILE = CRESULTFILE, & - FORM = "FORMATTED", & - STATUS = "UNKNOWN" ) -! -!* 2. WRITE HEADDER -! ------------------ -! -!* 2.1 write two lines of comment (date, time, runid) -! -IF (LORILAM) THEN -NAERO=SIZE(CAERONAMES) -ELSE -NAERO=0 -END IF - -CALL DATE_AND_TIME(YDATE, YTIME) -WRITE(NRESULTIO,'(4A)')'MODEL0D RESULTS VERSION 1.1 AT ',YDATE,":",YTIME -WRITE(NRESULTIO,'(A)') CRUNID -! -!* 2.2 write number of variables and their names -! -WRITE(NRESULTIO,'(4I6)') 1+NEQ+NAERO+NREAC+NMETEOVARS, NEQ, NREAC, NMETEOVARS -! -!* 2.3 write simulation time -! -WRITE(NRESULTIO, '(A)') "XTSIMUL" -! -!* 2.4 write chemical concentrations -! -DO JI = 1, NEQ - WRITE(NRESULTIO, '(A)') CNAMES(JI) -ENDDO -DO JI = 1, NAERO - WRITE(NRESULTIO, '(A)') CAERONAMES(JI) -ENDDO -! -!* 2.5 write reaction and photolysis rates -! -DO JI = 1, NREAC - WRITE(NRESULTIO, '(A)') CREACS(JI) -ENDDO -! -!* 2.6 write meteo variables -! -DO JI = 1, NMETEOVARS - WRITE(NRESULTIO, '(A)') TPM%CMETEOVAR(JI) -ENDDO -! -!* 2.7 write data output format -! -WRITE(NRESULTIO,'(A)') CRESULTFORMAT -! -IF (LHOOK) CALL DR_HOOK('CH_INIT_OUTPUT',1,ZHOOK_HANDLE) -END SUBROUTINE CH_INIT_OUTPUT diff --git a/src/arome/chem/internals/ch_init_scheme.F90 b/src/arome/chem/internals/ch_init_scheme.F90 deleted file mode 100644 index baa0988e080552cc28303e3d833f35d4e59f7dcb..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_init_scheme.F90 +++ /dev/null @@ -1,81 +0,0 @@ -! ######spl - SUBROUTINE CH_INIT_SCHEME(KLUOUT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################### -!! -!!*** *CH_INIT_SCHEME* -!! -!! PURPOSE -!! ------- -! initialize module MODD_CH_M9 variables (now MesoNH variables) from internal -! scheme constants defined in module MODD_CH_M9_SCHEME from BASIC.f90 (scheme dependant). -!! -!!** METHOD -!! ------ -!! Names of variables are identical in both MODD_CH_M9 and MODD_CH_M9_SCHEME -!! modules to minimize sources modifications and keep users habits. -!! So we rename variables/constant from MODD_CH_M9_SCHEME by prefixing them with -!! I_ (I means scheme Internal). -!! -!!============================================================================== -!! -!! REFERENCES -!! ---------- -!! MesoNH-chemistry book 3 -!! -!! AUTHOR -!! ------ -!! D. Gazen -!! -!! MODIFICATIONS -!! ------------- -!! Original 19/10/03 -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! None -!---------------------------------------------------------------------------- -! -USE MODD_CH_M9 !! the mesonh interface for chemical variables -USE MODD_CH_M9_SCHEME, ONLY : TACCS, & - & I_NEQ=>NEQ, & - & I_NREAC=>NREAC, & - & I_NMETEOVARS=>NMETEOVARS, & - & I_NNONZEROTERMS=>NNONZEROTERMS, & - & I_CNAMES=>CNAMES, & - & I_CREACS=>CREACS, & - & I_CFULLREACS=>CFULLREACS, & - & JP_CO -! -IMPLICIT NONE -! -!* 0. DECLARATIONS -! ----------------- -! -INTEGER, INTENT(IN) :: KLUOUT -! -!---------------------------------------------------------------------------- -! -!* 1. INITIALISATION -! ------------------- -!Left member belongs to MODD_CH_M9 module variables -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INIT_SCHEME',0,ZHOOK_HANDLE) -NEQ = I_NEQ -NREAC = I_NREAC -NMETEOVARS = I_NMETEOVARS -NNONZEROTERMS = I_NNONZEROTERMS -! -CNAMES=>I_CNAMES -CREACS=>I_CREACS -CFULLREACS=>I_CFULLREACS -! -! -WRITE(KLUOUT,*) 'CH_INIT_SCHEME done : NEQ, NREAC, NMETEOVARS, NNONZEROTERMS = ',& - & NEQ, NREAC, NMETEOVARS, NNONZEROTERMS - -IF (LHOOK) CALL DR_HOOK('CH_INIT_SCHEME',1,ZHOOK_HANDLE) -END SUBROUTINE CH_INIT_SCHEME diff --git a/src/arome/chem/internals/ch_inter1.F b/src/arome/chem/internals/ch_inter1.F deleted file mode 100644 index 7d412c04d237113fa5d179061892fb5cc9c583b4..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_inter1.F +++ /dev/null @@ -1,43 +0,0 @@ -! ######spl - SUBROUTINE ch_inter1(ng,xg,yg, n,x,y) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - INTEGER n, ng - REAL xg(ng) - REAL x(n), y(n) - -! output: - REAL yg(ng) - -! local: - REAL slope - INTEGER jsave, i, j -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_INTER1',0,ZHOOK_HANDLE) - jsave = 1 - DO 20, i = 1, ng - yg(i) = 0. - j = jsave - 10 CONTINUE - IF ((x(j) .GT. xg(i)) .OR. (xg(i) .GE. x(j+1))) THEN - j = j+1 - IF (j .LE. n-1) GOTO 10 -! ---- end of loop 10 ---- - ELSE - slope = (y(j+1)-y(j)) / (x(j+1)-x(j)) - yg(i) = y(j) + slope * (xg(i) - x(j)) - jsave = j - ENDIF - 20 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('CH_INTER1',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE CH_INTER1 diff --git a/src/arome/chem/internals/ch_inter2.F b/src/arome/chem/internals/ch_inter2.F deleted file mode 100644 index 1a9a1142f0fc67bdab0773dade9f4313a21578f8..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_inter2.F +++ /dev/null @@ -1,136 +0,0 @@ -! ######spl - SUBROUTINE ch_inter2(ng,xg,yg,n,x,y,ierr) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - INTEGER ng, n - REAL x(n), y(n), xg(ng) - -! output: - REAL yg(ng) - -! local: - REAL area, xgl, xgu - REAL darea, slope - REAL a1, a2, b1, b2 - INTEGER ngintv - INTEGER i, k, jstart - INTEGER ierr -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_INTER2',0,ZHOOK_HANDLE) - ierr = 0 - -! test for correct ordering of data, by increasing value of x - - DO 10, i = 2, n - IF (x(i) .LE. x(i-1)) THEN - ierr = 1 - WRITE(*,*)'data not sorted' - IF (LHOOK) CALL DR_HOOK('CH_INTER2',1,ZHOOK_HANDLE) - RETURN - ENDIF - 10 CONTINUE - - DO i = 2, ng - IF (xg(i) .LE. xg(i-1)) THEN - ierr = 2 - WRITE(0,*) '>>> ERROR (inter2) <<< xg-grid not sorted!' - IF (LHOOK) CALL DR_HOOK('CH_INTER2',1,ZHOOK_HANDLE) - RETURN - ENDIF - ENDDO - -! check for xg-values outside the x-range - - IF ( (x(1) .GT. xg(1)) .OR. (x(n) .LT. xg(ng)) ) THEN - WRITE(0,*) '>>> ERROR (inter2) <<< Data do not span '// & - & 'grid. ' - WRITE(0,*) ' Use ADDPNT to '// & - & 'expand data and re-run.' - STOP - ENDIF - -! find the integral of each grid interval and use this to -! calculate the average y value for the interval -! xgl and xgu are the lower and upper limits of the grid interval - - jstart = 1 - ngintv = ng - 1 - DO 50, i = 1,ngintv - -! initalize: - - area = 0.0 - xgl = xg(i) - xgu = xg(i+1) - -! discard data before the first grid interval and after the -! last grid interval -! for internal grid intervals, start calculating area by interpolating -! between the last point which lies in the previous interval and the -! first point inside the current interval - - k = jstart - IF (k .LE. n-1) THEN - -! if both points are before the first grid, go to the next point - 30 CONTINUE - IF (x(k+1) .LE. xgl) THEN - jstart = k - 1 - k = k+1 - IF (k .LE. n-1) GO TO 30 - ENDIF - - -! if the last point is beyond the end of the grid, complete and go to the next -! grid - 40 CONTINUE - IF ((k .LE. n-1) .AND. (x(k) .LT. xgu)) THEN - - jstart = k-1 - -! compute x-coordinates of increment - - a1 = MAX(x(k),xgl) - a2 = MIN(x(k+1),xgu) - -! if points coincide, contribution is zero - - IF (x(k+1).EQ.x(k)) THEN - darea = 0.e0 - ELSE - slope = (y(k+1) - y(k))/(x(k+1) - x(k)) - b1 = y(k) + slope*(a1 - x(k)) - b2 = y(k) + slope*(a2 - x(k)) - darea = (a2 - a1)*(b2 + b1)/2. - ENDIF - - -! find the area under the trapezoid from a1 to a2 - - area = area + darea - -! go to next point - - k = k+1 - GO TO 40 - - ENDIF - - ENDIF - -! calculate the average y after summing the areas in the interval - yg(i) = area/(xgu - xgl) - - 50 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('CH_INTER2',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE CH_INTER2 diff --git a/src/arome/chem/internals/ch_interp_jvalues.F90 b/src/arome/chem/internals/ch_interp_jvalues.F90 deleted file mode 100644 index b5d5e4ba5c180c43d75fe9bbb8a52af94f3c1dd4..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_interp_jvalues.F90 +++ /dev/null @@ -1,252 +0,0 @@ -! ######spl - SUBROUTINE CH_INTERP_JVALUES(PJVALUES,PZZ, PZS, PALBUV, PZENITH,& - KLON, KLAT, KLEV, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB, KLUOUT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ###################################### -! -!! -!!*** *CH_INTERP_JVALUES* interpolate photolysis rates in time and space -!! -!! PURPOSE -!! ------- -!! Interpolates J-Values in time and space -!! -!!** METHOD -!! -!! REFERENCE -!! --------- -!! MesoNH documentation -!! -!! AUTHOR -!! ------ -!! C. Mari (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/03/01 -!! P. Tulet 01/11/03 externalisation surface/ UV albedos from -! radiations -!! P. Tulet 01/06/05 updates for arome -!! -!!------------------------------------------------------------------------------ -!! -!! EXTERNAL -!! -------- -! -USE MODD_PARAMETERS -USE MODD_CST -USE MODD_CONF -USE MODD_CH_INIT_JVALUES -! -!! EXPLICIT ARGUMENTS -!! ------------------ -! -IMPLICIT NONE -! -INTEGER, INTENT(IN) :: KLUOUT -INTEGER, INTENT(IN) :: KLON ! dimension I -INTEGER, INTENT(IN) :: KLAT ! dimension J -INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels -REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALBUV, PZS -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ -REAL, DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES -INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim -INTEGER, INTENT(IN) :: KVERB ! verbosity level -! -!! LOCAL VARIABLES -!! --------------- -! -! -INTEGER :: JI, JJ, JH ! loop counters -INTEGER :: IIU, IJU, IKU , IKB, IKE -INTEGER :: JALB, JJVAL -! -REAL, DIMENSION(:,:,:,:,:), ALLOCATABLE :: ZJDATAALB -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSZA -REAL, DIMENSION(:,:), ALLOCATABLE :: ZCOSZEN - ! cosine of zenithal angle -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSINZEN - ! sine of zenithal angle -REAL, DIMENSION(:,:), ALLOCATABLE :: ZAZIMSOL - ! azimuthal solar angle (not used) -REAL, DIMENSION(:,:,:), ALLOCATABLE :: ZWT -REAL, DIMENSION(:,:), ALLOCATABLE :: ZALB1, ZALB2 -INTEGER :: JSZA, JNHT -INTEGER, DIMENSION(:,:), ALLOCATABLE :: JSZAN, JKHTA -REAL, DIMENSION(:,:), ALLOCATABLE :: ZFSZA, ZOMSZA, ZOMFHTA, ZFHTA -INTEGER :: IIB ! physical boundary -INTEGER :: IIE ! physical boundary -INTEGER :: IJB ! physical boundary -INTEGER :: IJE ! physical boundary - -! -!--------------------------------------------------------------------------- -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INTERP_JVALUES',0,ZHOOK_HANDLE) -IF (CPROGRAM == "MOD0D") THEN - -IIU=1 -IJU=1 -IKB=1 -IKE=1 -IKU=1 -IJB=1 -IJE=1 -IIB=1 -IIE=1 - -ELSE -IIU=NIU -IJU=NJU -IKU=SIZE(PZZ,3) - -IIB = NIB -IIE = NIE -IJB = NJB -IJE = NJE -IKB = 1 + JPVEXT -IKE = IKU - JPVEXT - -END IF -! -IF (.NOT.ALLOCATED(ZCOSZEN)) ALLOCATE(ZCOSZEN(IIU,IJU)) -IF (.NOT.ALLOCATED(ZSINZEN)) ALLOCATE(ZSINZEN(IIU,IJU)) -IF (.NOT.ALLOCATED(ZAZIMSOL)) ALLOCATE(ZAZIMSOL(IIU,IJU)) -IF (.NOT.ALLOCATED(ZSZA)) ALLOCATE(ZSZA(IIU,IJU)) -IF (.NOT.ALLOCATED(JSZAN)) ALLOCATE(JSZAN(IIU,IJU)) -IF (.NOT.ALLOCATED(ZFSZA)) ALLOCATE(ZFSZA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZOMSZA)) ALLOCATE(ZOMSZA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZOMFHTA)) ALLOCATE(ZOMFHTA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZFHTA)) ALLOCATE(ZFHTA(IIU,IJU)) -IF (.NOT.ALLOCATED(JKHTA)) ALLOCATE(JKHTA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZWT)) ALLOCATE(ZWT(IIU,IJU,4)) -IF (.NOT.ALLOCATED(ZALB1)) ALLOCATE(ZALB1(IIU,IJU)) -IF (.NOT.ALLOCATED(ZALB2)) ALLOCATE(ZALB2(IIU,IJU)) -IF (.NOT.ALLOCATED(ZJDATAALB)) & - ALLOCATE(ZJDATAALB(IIU,IJU,IKU,JPJVMAX,NBALB)) - -ZJDATAALB(:,:,:,:,:)=0. -! -ZCOSZEN(:,:) = COS(PZENITH(:,:)) -ZSZA(:,:) = ACOS(ZCOSZEN(:,:)) * 180. / (2.*ASIN(1.)) -! - !* find index for solar zenith angle - ! --------------------------------- - ! -JSZAN(:,:) = 2 -DO JSZA = 2, NSZA_INCR-1 - WHERE(ZSZA(:,:).GT.XSZA_JVAL(JSZA)) - JSZAN(:,:) = JSZA+1 - END WHERE -END DO -ZFSZA(:,:) = 0. -DO JJ=IJB,IJE - DO JI=IIB,IIE - ZFSZA(JI,JJ) = (XSZA_JVAL(JSZAN(JI,JJ)) - ZSZA(JI,JJ))/ & - (XSZA_JVAL(JSZAN(JI,JJ)) - XSZA_JVAL(JSZAN(JI,JJ)-1)) - END DO -END DO -ZOMSZA(:,:) = 1. - ZFSZA(:,:) - - ! - ! * Vertical interpolation of J values - ! ---------------------------------- - ! -! -DO JH = 1, IKE-IKB+1 - ! - JKHTA(:,:) = 2 - ZFHTA(:,:) = 0. - DO JNHT = 2, NZZ_JVAL - 1 - WHERE((PZZ(:,:,JH)-PZS(:,:)).GT.XZZ_JVAL(JNHT)) JKHTA(:,:) = JNHT + 1 - END DO - DO JJ=IJB,IJE - DO JI=IIB,IIE - ZFHTA(JI,JJ) = (XZZ_JVAL(JKHTA(JI,JJ)) - (PZZ(JI,JJ,JH)-PZS(JI,JJ))) & - /(XZZ_JVAL(JKHTA(JI,JJ))-XZZ_JVAL(JKHTA(JI,JJ)-1)) - END DO - END DO - ZOMFHTA(:,:) = 1. - ZFHTA(:,:) - ! - ZWT(:,:,1) = ZOMSZA(:,:) * ZFHTA(:,:) - ZWT(:,:,2) = ZFSZA(:,:) * ZFHTA(:,:) - ZWT(:,:,3) = ZFSZA(:,:) * ZOMFHTA(:,:) - ZWT(:,:,4) = ZOMSZA(:,:) * ZOMFHTA(:,:) - ! - - ! - DO JALB = 1, NBALB - DO JJVAL = 1, JPJVMAX - DO JJ=IJB,IJE - DO JI=IIB,IIE - ZJDATAALB(JI,JJ,JH,JJVAL,JALB) = & - ZWT(JI,JJ,1) * XJDATA(JSZAN(JI,JJ)-1,JKHTA(JI,JJ)-1,JJVAL,JALB) & - + ZWT(JI,JJ,2) * XJDATA(JSZAN(JI,JJ),JKHTA(JI,JJ)-1,JJVAL,JALB) & - + ZWT(JI,JJ,3) * XJDATA(JSZAN(JI,JJ)-1,JKHTA(JI,JJ),JJVAL,JALB) & - + ZWT(JI,JJ,4) * XJDATA(JSZAN(JI,JJ),JKHTA(JI,JJ),JJVAL,JALB) - END DO - END DO - ENDDO - ENDDO -ENDDO - -ZJDATAALB(:,:,IKE,:,:) = ZJDATAALB(:,:,IKE-IKB+1,:,:) -ZJDATAALB(:,:,IKU,:,:) = ZJDATAALB(:,:,IKE-IKB+1,:,:) - - -! -DO JALB = 1, NBALB - DO JJVAL = 1, JPJVMAX - DO JH = IKB, IKE - WHERE(ZSZA(:,:).GT.100.) ZJDATAALB(:,:,JH,JJVAL,JALB)=0. - ENDDO - ENDDO -ENDDO -! -! -PJVALUES(:,:,:,:) = ZJDATAALB(:,:,:,:,1) -! - -DO JALB=1,NBALB-1 - ZALB1(:,:) = 0.02+0.20*FLOAT(JALB-1)/FLOAT(NBALB-1) - ZALB2(:,:) = 0.02+0.20*FLOAT(JALB )/FLOAT(NBALB-1) - - DO JJVAL = 1, JPJVMAX - DO JH = IKB, IKE - WHERE(PALBUV(:,:)>ZALB1(:,:) .AND. PALBUV(:,:)<=ZALB2(:,:)) - PJVALUES(:,:,JH,JJVAL) = & - ( PALBUV(:,:) - ZALB1(:,:) ) / ( ZALB2(:,:) - ZALB1(:,:) ) * ZJDATAALB(:,:,JH,JJVAL,JALB ) & - + ( ZALB2(:,:) - PALBUV(:,:) ) / ( ZALB2(:,:) - ZALB1(:,:)) * ZJDATAALB(:,:,JH,JJVAL,JALB+1) - END WHERE - WHERE(PALBUV(:,:) > ZALB2(:,:)) PJVALUES(:,:,JH,JJVAL) = ZJDATAALB(:,:,JH,JJVAL,JALB+1) - END DO - END DO -END DO -! -! -PJVALUES(:,:,:,:) = MAX(0.,PJVALUES(:,:,:,:)) -! -IF (KVERB >= 6) THEN -WRITE(KLUOUT,*) "photolysis rates interpolated in time and space" -END IF - -DEALLOCATE(ZCOSZEN) -DEALLOCATE(ZSINZEN) -DEALLOCATE(ZAZIMSOL) -DEALLOCATE(ZSZA) -DEALLOCATE(ZJDATAALB) -DEALLOCATE(JSZAN) -DEALLOCATE(ZFSZA) -DEALLOCATE(ZOMSZA) -DEALLOCATE(ZOMFHTA) -DEALLOCATE(ZFHTA) -DEALLOCATE(ZWT) -DEALLOCATE(ZALB1) -DEALLOCATE(ZALB2) - -! -IF (LHOOK) CALL DR_HOOK('CH_INTERP_JVALUES',1,ZHOOK_HANDLE) -END SUBROUTINE CH_INTERP_JVALUES diff --git a/src/arome/chem/internals/ch_interp_jvalues_n.F90 b/src/arome/chem/internals/ch_interp_jvalues_n.F90 deleted file mode 100644 index 2cf333d741e548c2767267118d08617f5acf7151..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_interp_jvalues_n.F90 +++ /dev/null @@ -1,254 +0,0 @@ -! ######spl - SUBROUTINE CH_INTERP_JVALUES_n(PJVALUES,PZZ, PZS, PALBUV, PZENITH,& - KLON, KLAT, KLEV, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB, KLUOUT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ###################################### -! -!! -!!*** *CH_INTERP_JVALUES_n* interpolate photolysis rates in time and space -!! -!! PURPOSE -!! ------- -!! Interpolates J-Values in time and space -!! -!!** METHOD -!! -!! REFERENCE -!! --------- -!! MesoNH documentation -!! -!! AUTHOR -!! ------ -!! C. Mari (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/03/01 -!! P. Tulet 01/11/03 externalisation surface/ UV albedos from -! radiations -!! P. Tulet 01/06/05 updates for arome -!! -!!------------------------------------------------------------------------------ -!! -!! EXTERNAL -!! -------- -! -USE MODD_PARAMETERS -USE MODD_CST -USE MODD_CONF -USE MODD_CH_INIT_JVALUES -! -!! EXPLICIT ARGUMENTS -!! ------------------ -! -IMPLICIT NONE -! -INTEGER, INTENT(IN) :: KLUOUT -INTEGER, INTENT(IN) :: KLON ! dimension I -INTEGER, INTENT(IN) :: KLAT ! dimension J -INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels -REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALBUV, PZS -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ -REAL, DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES -INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim -INTEGER, INTENT(IN) :: KVERB ! verbosity level -! -!! LOCAL VARIABLES -!! --------------- -! -! -INTEGER :: JI, JJ, JH ! loop counters -INTEGER :: IIU, IJU, IKU , IKB, IKE -INTEGER :: JALB, JJVAL -! -REAL, DIMENSION(:,:,:,:,:), ALLOCATABLE :: ZJDATAALB -! -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSZA -REAL, DIMENSION(:,:), ALLOCATABLE :: ZCOSZEN - ! cosine of zenithal angle -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSINZEN - ! sine of zenithal angle -REAL, DIMENSION(:,:), ALLOCATABLE :: ZAZIMSOL - ! azimuthal solar angle (not used) -REAL, DIMENSION(:,:,:), ALLOCATABLE :: ZWT -REAL, DIMENSION(:,:), ALLOCATABLE :: ZALB1, ZALB2 -INTEGER :: JSZA, JNHT -INTEGER, DIMENSION(:,:), ALLOCATABLE :: JSZAN, JKHTA -REAL, DIMENSION(:,:), ALLOCATABLE :: ZFSZA, ZOMSZA, ZOMFHTA, ZFHTA -INTEGER :: IIB ! physical boundary -INTEGER :: IIE ! physical boundary -INTEGER :: IJB ! physical boundary -INTEGER :: IJE ! physical boundary - -! -!--------------------------------------------------------------------------- -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_INTERP_JVALUES_N',0,ZHOOK_HANDLE) -IF (CPROGRAM == "MOD0D") THEN - -IIU=1 -IJU=1 -IKB=1 -IKE=1 -IKU=1 -IJB=1 -IJE=1 -IIB=1 -IIE=1 - -ELSE - -IIU=NIU -IJU=NJU -IKU=SIZE(PZZ,3) - -IIB = NIB -IIE = NIE -IJB = NJB -IJE = NJE -IKB = 1 + JPVEXT -IKE = IKU - JPVEXT - -END IF -! -IF (.NOT.ALLOCATED(ZCOSZEN)) ALLOCATE(ZCOSZEN(IIU,IJU)) -IF (.NOT.ALLOCATED(ZSINZEN)) ALLOCATE(ZSINZEN(IIU,IJU)) -IF (.NOT.ALLOCATED(ZAZIMSOL)) ALLOCATE(ZAZIMSOL(IIU,IJU)) -IF (.NOT.ALLOCATED(ZSZA)) ALLOCATE(ZSZA(IIU,IJU)) -IF (.NOT.ALLOCATED(JSZAN)) ALLOCATE(JSZAN(IIU,IJU)) -IF (.NOT.ALLOCATED(ZFSZA)) ALLOCATE(ZFSZA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZOMSZA)) ALLOCATE(ZOMSZA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZOMFHTA)) ALLOCATE(ZOMFHTA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZFHTA)) ALLOCATE(ZFHTA(IIU,IJU)) -IF (.NOT.ALLOCATED(JKHTA)) ALLOCATE(JKHTA(IIU,IJU)) -IF (.NOT.ALLOCATED(ZWT)) ALLOCATE(ZWT(IIU,IJU,4)) -IF (.NOT.ALLOCATED(ZALB1)) ALLOCATE(ZALB1(IIU,IJU)) -IF (.NOT.ALLOCATED(ZALB2)) ALLOCATE(ZALB2(IIU,IJU)) -IF (.NOT.ALLOCATED(ZJDATAALB)) & - ALLOCATE(ZJDATAALB(IIU,IJU,IKU,JPJVMAX,NBALB)) - - ZJDATAALB(:,:,:,:,:)=0. -! -ZCOSZEN(:,:) = COS(PZENITH(:,:)) -ZSZA(:,:) = ACOS(ZCOSZEN(:,:)) * 180. / (2.*ASIN(1.)) -! - !* find index for solar zenith angle - ! --------------------------------- - ! -JSZAN(:,:) = 2 -DO JSZA = 2, NSZA_INCR-1 - WHERE(ZSZA(:,:).GT.XSZA_JVAL(JSZA)) - JSZAN(:,:) = JSZA+1 - END WHERE -END DO - -ZFSZA(:,:) = 0. -DO JJ=IJB,IJE - DO JI=IIB,IIE - ZFSZA(JI,JJ) = (XSZA_JVAL(JSZAN(JI,JJ)) - ZSZA(JI,JJ))/ & - (XSZA_JVAL(JSZAN(JI,JJ)) - XSZA_JVAL(JSZAN(JI,JJ)-1)) - END DO -END DO -ZOMSZA(:,:) = 1. - ZFSZA(:,:) - - ! - ! * Vertical interpolation of J values - ! ---------------------------------- - ! -! -ZFHTA(:,:) = 0. -DO JH = 1, IKE-IKB+1 - ! - JKHTA(:,:) = 2 - DO JNHT = 2, NZZ_JVAL - 1 - WHERE((PZZ(:,:,JH)-PZS(:,:)).GT.XZZ_JVAL(JNHT)) JKHTA(:,:) = JNHT + 1 - END DO - DO JJ=IJB,IJE - DO JI=IIB,IIE - ZFHTA(JI,JJ) = (XZZ_JVAL(JKHTA(JI,JJ)) - (PZZ(JI,JJ,JH)-PZS(JI,JJ))) & - /(XZZ_JVAL(JKHTA(JI,JJ))-XZZ_JVAL(JKHTA(JI,JJ)-1)) - END DO - END DO - ZOMFHTA(:,:) = 1. - ZFHTA(:,:) - ! - ZWT(:,:,1) = ZOMSZA(:,:) * ZFHTA(:,:) - ZWT(:,:,2) = ZFSZA(:,:) * ZFHTA(:,:) - ZWT(:,:,3) = ZFSZA(:,:) * ZOMFHTA(:,:) - ZWT(:,:,4) = ZOMSZA(:,:) * ZOMFHTA(:,:) - ! - - ! - DO JALB = 1, NBALB - DO JJVAL = 1, JPJVMAX - DO JJ=IJB,IJE - DO JI=IIB,IIE - ZJDATAALB(JI,JJ,JH,JJVAL,JALB) = & - ZWT(JI,JJ,1) * XJDATA(JSZAN(JI,JJ)-1,JKHTA(JI,JJ)-1,JJVAL,JALB) & - + ZWT(JI,JJ,2) * XJDATA(JSZAN(JI,JJ),JKHTA(JI,JJ)-1,JJVAL,JALB) & - + ZWT(JI,JJ,3) * XJDATA(JSZAN(JI,JJ)-1,JKHTA(JI,JJ),JJVAL,JALB) & - + ZWT(JI,JJ,4) * XJDATA(JSZAN(JI,JJ),JKHTA(JI,JJ),JJVAL,JALB) - END DO - END DO - ENDDO - ENDDO -ENDDO - -ZJDATAALB(:,:,IKE,:,:) = ZJDATAALB(:,:,IKE-IKB+1,:,:) -ZJDATAALB(:,:,IKU,:,:) = ZJDATAALB(:,:,IKE-IKB+1,:,:) - - -! -DO JALB = 1, NBALB - DO JJVAL = 1, JPJVMAX - DO JH = IKB, IKE - WHERE(ZSZA(:,:).GT.100.) ZJDATAALB(:,:,JH,JJVAL,JALB)=0. - ENDDO - ENDDO -ENDDO -! -! -PJVALUES(:,:,:,:) = ZJDATAALB(:,:,:,:,1) -! - -DO JALB=1,NBALB-1 - ZALB1(:,:) = 0.02+0.20*FLOAT(JALB-1)/FLOAT(NBALB-1) - ZALB2(:,:) = 0.02+0.20*FLOAT(JALB )/FLOAT(NBALB-1) - - DO JJVAL = 1, JPJVMAX - DO JH = IKB, IKE - WHERE(PALBUV(:,:)>ZALB1(:,:) .AND. PALBUV(:,:)<=ZALB2(:,:)) - PJVALUES(:,:,JH,JJVAL) = & - ( PALBUV(:,:) - ZALB1(:,:) ) / ( ZALB2(:,:) - ZALB1(:,:) ) * ZJDATAALB(:,:,JH,JJVAL,JALB ) & - + ( ZALB2(:,:) - PALBUV(:,:) ) / ( ZALB2(:,:) - ZALB1(:,:)) * ZJDATAALB(:,:,JH,JJVAL,JALB+1) - END WHERE - WHERE(PALBUV(:,:) > ZALB2(:,:)) PJVALUES(:,:,JH,JJVAL) = ZJDATAALB(:,:,JH,JJVAL,JALB+1) - END DO - END DO -END DO -! -! -PJVALUES(:,:,:,:) = MAX(0.,PJVALUES(:,:,:,:)) -! -IF (KVERB >= 6) THEN -WRITE(KLUOUT,*) "photolysis rates interpolated in time and space" -END IF - -DEALLOCATE(ZCOSZEN) -DEALLOCATE(ZSINZEN) -DEALLOCATE(ZAZIMSOL) -DEALLOCATE(ZSZA) -DEALLOCATE(ZJDATAALB) -DEALLOCATE(JSZAN) -DEALLOCATE(ZFSZA) -DEALLOCATE(ZOMSZA) -DEALLOCATE(ZOMFHTA) -DEALLOCATE(ZFHTA) -DEALLOCATE(ZWT) -DEALLOCATE(ZALB1) -DEALLOCATE(ZALB2) - -! -IF (LHOOK) CALL DR_HOOK('CH_INTERP_JVALUES_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_INTERP_JVALUES_n diff --git a/src/arome/chem/internals/ch_isoropia.F90 b/src/arome/chem/internals/ch_isoropia.F90 deleted file mode 100644 index bef014faad9ef4f26cc9052c6cee199c172a83ad..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_isoropia.F90 +++ /dev/null @@ -1,217 +0,0 @@ -! ######spl - SUBROUTINE CH_ISOROPIA (PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ########################################################## -!! -!! PURPOSE -!! ------- -!! -!! Calculate the aerosol chemical speciation and water content. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet ( Meteo France / GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -!***************************************************************** - -! ======================== ARGUMENTS / USAGE =========================== -! -! INPUT: -! 1. [WI] -! DOUBLE PRECISION array of length [5]. -! Concentrations, expressed in moles/m3. Depending on the type of -! problem solved (specified in CNTRL(1)), WI contains either -! GAS+AEROSOL or AEROSOL only concentratios. -! WI(1) - sodium -! WI(2) - sulfate -! WI(3) - ammonium -! WI(4) - nitrate -! WI(5) - chloride -! -! 2. [RHI] -! DOUBLE PRECISION variable. -! Ambient relative humidity expressed on a (0,1) scale. -! -! 3. [TEMPI] -! DOUBLE PRECISION variable. -! Ambient temperature expressed in Kelvins. -! -! 4. [CNTRL] -! DOUBLE PRECISION array of length [2]. -! Parameters that control the type of problem solved. -! -! CNTRL(1): Defines the type of problem solved. -! 0 - Forward problem is solved. In this case, array WI contains -! GAS and AEROSOL concentrations together. -! 1 - Reverse problem is solved. In this case, array WI contains -! AEROSOL concentrations only. -! -! CNTRL(2): Defines the state of the aerosol -! 0 - The aerosol can have both solid+liquid phases (deliquescent) -! 1 - The aerosol is in only liquid state (metastable aerosol) -! -! OUTPUT: -! 1. [WT] -! DOUBLE PRECISION array of length [5]. -! Total concentrations (GAS+AEROSOL) of species, expressed in moles/m3. -! If the foreward probelm is solved (CNTRL(1)=0), array WT is -! identical to array WI. -! WT(1) - total sodium -! WT(2) - total sulfate -! WT(3) - total ammonium -! WT(4) - total nitrate -! WT(5) - total chloride -! -! 2. [GAS] -! DOUBLE PRECISION array of length [03]. -! Gaseous species concentrations, expressed in moles/m3. -! GAS(1) - NH3 -! GAS(2) - HNO3 -! GAS(3) - HCl -! -! 3. [AERLIQ] -! DOUBLE PRECISION array of length [11]. -! Liquid aerosol species concentrations, expressed in moles/m3. -! AERLIQ(01) - H+(aq) -! AERLIQ(02) - Na+(aq) -! AERLIQ(03) - NH4+(aq) -! AERLIQ(04) - Cl-(aq) -! AERLIQ(05) - SO4--(aq) -! AERLIQ(06) - HSO4-(aq) -! AERLIQ(07) - NO3-(aq) -! AERLIQ(08) - H2O -! AERLIQ(09) - NH3(aq) (undissociated) -! AERLIQ(10) - HNCl(aq) (undissociated) -! AERLIQ(11) - HNO3(aq) (undissociated) -! AERLIQ(12) - OH-(aq) -! -! 4. [AERSLD] -! DOUBLE PRECISION array of length [09]. -! Solid aerosol species concentrations, expressed in moles/m3. -! AERSLD(01) - NaNO3(s) -! AERSLD(02) - NH4NO3(s) -! AERSLD(03) - NaCl(s) -! AERSLD(04) - NH4Cl(s) -! AERSLD(05) - Na2SO4(s) -! AERSLD(06) - (NH4)2SO4(s) -! AERSLD(07) - NaHSO4(s) -! AERSLD(08) - NH4HSO4(s) -! AERSLD(09) - (NH4)4H(SO4)2(s) -! -! 5. [SCASI] -! CHARACTER*15 variable. -! Returns the subcase which the input corresponds to. -! -! 6. [OTHER] -! DOUBLE PRECISION array of length [6]. -! Returns solution information. -! -! OTHER(1): Shows if aerosol water exists. -! 0 - Aerosol is WET -! 1 - Aerosol is DRY -! -! OTHER(2): Aerosol Sulfate ratio, defined as (in moles/m3) : -! (total ammonia + total Na) / (total sulfate) -! -! OTHER(3): Sulfate ratio based on aerosol properties that defines -! a sulfate poor system: -! (aerosol ammonia + aerosol Na) / (aerosol sulfate) -! -! OTHER(4): Aerosol sodium ratio, defined as (in moles/m3) : -! (total Na) / (total sulfate) -! -! OTHER(5): Ionic strength of the aqueous aerosol (if it exists). -! -! OTHER(6): Total number of calls to the activity coefficient -! calculation subroutine. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!*************************************************************** -!! -!! EXTERNAL -!! ------- -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -IMPLICIT NONE -!!...........ARGUMENTS and their descriptions -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC -! -! PAER(:,1) :: H2SO4 in micrograms / m**3 -! PAER(:,2) :: NH3(g) in micrograms / m**3 -! PAER(:,3) :: HNO3(g) in micrograms / m**3 -! PAER(:,4) :: H2O(a) in micrograms / m**3 -! PAER(:,5) :: NO3(a) in micrograms / m**3 -! PAER(:,6) :: NH4(a) in micrograms / m**3 -! -!...........PARAMETERS and their descriptions: - -REAL, PARAMETER :: ZMWH2O = 18.0 ! molecular weight for water -REAL, PARAMETER :: ZMWNO3 = 62.0049 ! molecular weight for NO3 -REAL, PARAMETER :: ZMWHNO3 = 63.01287 ! molecular weight for HNO3 -REAL, PARAMETER :: ZMH2SO4 = 98.07354 ! molecular weight for H2SO4 -REAL, PARAMETER :: ZMWNH3 = 17.03061 ! molecular weight for NH3 -REAL, PARAMETER :: ZMWNH4 = 18.03858 ! molecular weight for NH4 -INTEGER, PARAMETER :: NOTHER=6,NCOMP=5,NGASAQ=3,NSLDS=9,NIONS=7 - -INTEGER :: I -DOUBLE PRECISION,DIMENSION(2) :: CNTRL -DOUBLE PRECISION, DIMENSION(NOTHER) :: OTHER -CHARACTER(LEN=15) :: SCASI -DOUBLE PRECISION, DIMENSION(NCOMP) :: WI, WT -DOUBLE PRECISION, DIMENSION(NGASAQ) :: GAS -DOUBLE PRECISION, DIMENSION(NSLDS) :: AERSLD -DOUBLE PRECISION, DIMENSION(NIONS+NGASAQ+2) :: AERLIQ -DOUBLE PRECISION :: RHI,TEMPI - - -!----------------------------------------------------------------------------- - -! Entry for isoropia - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_ISOROPIA',0,ZHOOK_HANDLE) -CNTRL(1) = 0 -CNTRL(2) = 1 - - -DO I=1,SIZE(PAER,1) - - WI(1)=0. - WI(2)=PAER(I,1) * 1E-6 / ZMH2SO4 - WI(3)=PAER(I,2) * 1E-6 / ZMWNH3 + PAER(I,6) * 1E-6 / ZMWNH4 - WI(4)=PAER(I,5) * 1E-6 / ZMWNO3 + PAER(I,3) * 1E-6 / ZMWHNO3 - WI(5)=0. - ! Temperature - TEMPI=PTEMP(I) - RHI=MIN(1.,MAX(0.,PRH(I))) - - CALL ISOROPIA (WI,RHI,TEMPI,CNTRL,WT,GAS,AERLIQ,AERSLD,SCASI,OTHER) - - - PAER(I,1) = WT(2) * 1E6 * ZMH2SO4 - PAER(I,2) = GAS(1) * 1E6 * ZMWNH3 - PAER(I,3) = GAS(2) * 1E6 * ZMWHNO3 - PAER(I,4) = AERLIQ(8) * 1E6 * ZMWH2O - PAER(I,5) = (WT(4) - GAS(2) ) * 1E6 * ZMWNO3 - PAER(I,6) = (WT(3) - GAS(1) ) * 1E6 * ZMWNH4 - -ENDDO - -IF (LHOOK) CALL DR_HOOK('CH_ISOROPIA',1,ZHOOK_HANDLE) -END SUBROUTINE CH_ISOROPIA diff --git a/src/arome/chem/internals/ch_jac.F90 b/src/arome/chem/internals/ch_jac.F90 deleted file mode 100644 index 9f8c0d691fb0ae4613523947785585d53bb35b49..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_jac.F90 +++ /dev/null @@ -1,4053 +0,0 @@ -! ######spl - SUBROUTINE CH_JAC(PTIME,PCONC,PJAC,KMI,KVECNPT,KEQ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!!*** *CH_JAC* -!! -!! PURPOSE -!! ------- -! calculation of the JACOBIAN matrix -!! -!!** METHOD -!! ------ -!! The Jacobian matrix J is calculated as defined by the chemical -!! reaction mechanism. -!! The reaction rates and other user-defined auxiliary variables are -!! transfered in the TYPE(CCSTYPE) variable TPK%. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ,KEQ) :: PJAC -INTEGER, INTENT(IN) :: KMI -! -TYPE(CCSTYPE), POINTER :: TPK -!! -!!---------------------------------------------------------------------- -!! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_JAC',0,ZHOOK_HANDLE) -TPK=>TACCS(KMI) -! -! /BEGIN_CODE/ - TPK%O1D(:)=(TPK%K002(:)*PCONC(:,JP_O3))/(TPK%K020(:)*TPK%N2(:)+TPK%K021(:)*TPK%O2(:)+& - &TPK%K022(:)*TPK%H2O(:)) - - - TPK%O3P(:)=(TPK%K001(:)*PCONC(:,JP_NO2)+TPK%K003(:)*PCONC(:,JP_O3)+TPK%K008(:)*PCONC(:,JP_NO3)+& - &TPK%K020(:)*TPK%O1D(:)*TPK%N2(:)+TPK%K021(:)*TPK%O1D(:)*TPK%O2(:)+& - &0.00000*TPK%K076(:)*PCONC(:,JP_ALKE)*PCONC(:,JP_O3)+& - &0.09000*TPK%K077(:)*PCONC(:,JP_BIO)*PCONC(:,JP_O3))/& - &(TPK%K018(:)*TPK%O2(:)+TPK%K019(:)*PCONC(:,JP_O3)+TPK%K029(:)*PCONC(:,JP_NO)+& - &TPK%K030(:)*PCONC(:,JP_NO2)+TPK%K031(:)*PCONC(:,JP_NO2)+TPK%K053(:)*PCONC(:,JP_BIO)+& - &TPK%K054(:)*PCONC(:,JP_CARBO)) - - -! /END_CODE/ -PJAC(:,:,:) = 0.0 -! -!O3/O3=-K002-K003-K019*<O3P>-K023*<OH>-K024*<HO2>-K042*<NO>-K043*<NO2>-K076*<AL -!KE>-K077*<BIO>-K078*<CARBO>-K079*<PAN>-K084*<ADD> - PJAC(:,1,1)=-TPK%K002(:)-TPK%K003(:)-TPK%K019(:)*TPK%O3P(:)-TPK%K023(:)*PCONC(& -&:,14)-TPK%K024(:)*PCONC(:,15)-TPK%K042(:)*PCONC(:,3)-TPK%K043(:)*PCONC(:,4)-TP& -&K%K076(:)*PCONC(:,19)-TPK%K077(:)*PCONC(:,20)-TPK%K078(:)*PCONC(:,25)-TPK%K079& -&(:)*PCONC(:,27)-TPK%K084(:)*PCONC(:,36) -! -!O3/H2O2=0.0 -! -!O3/NO=-K042*<O3> - PJAC(:,1,3)=-TPK%K042(:)*PCONC(:,1) -! -!O3/NO2=-K043*<O3> - PJAC(:,1,4)=-TPK%K043(:)*PCONC(:,1) -! -!O3/NO3=0.0 -! -!O3/N2O5=0.0 -! -!O3/HONO=0.0 -! -!O3/HNO3=0.0 -! -!O3/HNO4=0.0 -! -!O3/NH3=0.0 -! -!O3/SO2=0.0 -! -!O3/SULF=0.0 -! -!O3/CO=0.0 -! -!O3/OH=-K023*<O3> - PJAC(:,1,14)=-TPK%K023(:)*PCONC(:,1) -! -!O3/HO2=-K024*<O3>+0.17307*K099*<CARBOP> - PJAC(:,1,15)=-TPK%K024(:)*PCONC(:,1)+0.17307*TPK%K099(:)*PCONC(:,38) -! -!O3/CH4=0.0 -! -!O3/ETH=0.0 -! -!O3/ALKA=0.0 -! -!O3/ALKE=-K076*<O3> - PJAC(:,1,19)=-TPK%K076(:)*PCONC(:,1) -! -!O3/BIO=-K077*<O3> - PJAC(:,1,20)=-TPK%K077(:)*PCONC(:,1) -! -!O3/ARO=0.0 -! -!O3/HCHO=0.0 -! -!O3/ALD=0.0 -! -!O3/KET=0.0 -! -!O3/CARBO=-K078*<O3> - PJAC(:,1,25)=-TPK%K078(:)*PCONC(:,1) -! -!O3/ONIT=0.0 -! -!O3/PAN=-K079*<O3> - PJAC(:,1,27)=-TPK%K079(:)*PCONC(:,1) -! -!O3/OP1=0.0 -! -!O3/OP2=0.0 -! -!O3/ORA2=0.0 -! -!O3/MO2=0.0 -! -!O3/ALKAP=0.0 -! -!O3/ALKEP=0.0 -! -!O3/BIOP=0.0 -! -!O3/PHO=0.0 -! -!O3/ADD=-K084*<O3> - PJAC(:,1,36)=-TPK%K084(:)*PCONC(:,1) -! -!O3/AROP=0.0 -! -!O3/CARBOP=+0.17307*K099*<HO2> - PJAC(:,1,38)=+0.17307*TPK%K099(:)*PCONC(:,15) -! -!O3/OLN=0.0 -! -!O3/XO2=0.0 -! -!H2O2/O3=+0.01833*K076*<ALKE>+0.00100*K077*<BIO> - PJAC(:,2,1)=+0.01833*TPK%K076(:)*PCONC(:,19)+0.00100*TPK%K077(:)*PCONC(:,20) -! -!H2O2/H2O2=-K009-K026*<OH> - PJAC(:,2,2)=-TPK%K009(:)-TPK%K026(:)*PCONC(:,14) -! -!H2O2/NO=0.0 -! -!H2O2/NO2=0.0 -! -!H2O2/NO3=0.0 -! -!H2O2/N2O5=0.0 -! -!H2O2/HONO=0.0 -! -!H2O2/HNO3=0.0 -! -!H2O2/HNO4=0.0 -! -!H2O2/NH3=0.0 -! -!H2O2/SO2=0.0 -! -!H2O2/SULF=0.0 -! -!H2O2/CO=0.0 -! -!H2O2/OH=-K026*<H2O2> - PJAC(:,2,14)=-TPK%K026(:)*PCONC(:,2) -! -!H2O2/HO2=+K027*<HO2>+K027*<HO2>+K028*<HO2>*<H2O>+K028*<HO2>*<H2O> - PJAC(:,2,15)=+TPK%K027(:)*PCONC(:,15)+TPK%K027(:)*PCONC(:,15)+TPK%K028(:)*PCON& -&C(:,15)*TPK%H2O(:)+TPK%K028(:)*PCONC(:,15)*TPK%H2O(:) -! -!H2O2/CH4=0.0 -! -!H2O2/ETH=0.0 -! -!H2O2/ALKA=0.0 -! -!H2O2/ALKE=+0.01833*K076*<O3> - PJAC(:,2,19)=+0.01833*TPK%K076(:)*PCONC(:,1) -! -!H2O2/BIO=+0.00100*K077*<O3> - PJAC(:,2,20)=+0.00100*TPK%K077(:)*PCONC(:,1) -! -!H2O2/ARO=0.0 -! -!H2O2/HCHO=0.0 -! -!H2O2/ALD=0.0 -! -!H2O2/KET=0.0 -! -!H2O2/CARBO=0.0 -! -!H2O2/ONIT=0.0 -! -!H2O2/PAN=0.0 -! -!H2O2/OP1=0.0 -! -!H2O2/OP2=0.0 -! -!H2O2/ORA2=0.0 -! -!H2O2/MO2=0.0 -! -!H2O2/ALKAP=0.0 -! -!H2O2/ALKEP=0.0 -! -!H2O2/BIOP=0.0 -! -!H2O2/PHO=0.0 -! -!H2O2/ADD=0.0 -! -!H2O2/AROP=0.0 -! -!H2O2/CARBOP=0.0 -! -!H2O2/OLN=0.0 -! -!H2O2/XO2=0.0 -! -!NO/O3=-K042*<NO> - PJAC(:,3,1)=-TPK%K042(:)*PCONC(:,3) -! -!NO/H2O2=0.0 -! -!NO/NO=-K029*<O3P>-K032*<OH>-K035*<HO2>-K042*<O3>-K044*<NO>*<O2>-K044*<NO>*<O2> -!-K044*<NO>*<O2>-K044*<NO>*<O2>-K045*<NO3>-K087*<MO2>-K088*<ALKAP>-K089*<ALKEP> -!-K090*<BIOP>-K091*<AROP>-K092*<CARBOP>-K093*<OLN>-K127*<XO2> - PJAC(:,3,3)=-TPK%K029(:)*TPK%O3P(:)-TPK%K032(:)*PCONC(:,14)-TPK%K035(:)*PCONC(& -&:,15)-TPK%K042(:)*PCONC(:,1)-TPK%K044(:)*PCONC(:,3)*TPK%O2(:)-TPK%K044(:)*PCON& -&C(:,3)*TPK%O2(:)-TPK%K044(:)*PCONC(:,3)*TPK%O2(:)-TPK%K044(:)*PCONC(:,3)*TPK%O& -&2(:)-TPK%K045(:)*PCONC(:,5)-TPK%K087(:)*PCONC(:,31)-TPK%K088(:)*PCONC(:,32)-TP& -&K%K089(:)*PCONC(:,33)-TPK%K090(:)*PCONC(:,34)-TPK%K091(:)*PCONC(:,37)-TPK%K092& -&(:)*PCONC(:,38)-TPK%K093(:)*PCONC(:,39)-TPK%K127(:)*PCONC(:,40) -! -!NO/NO2=+K001+K030*<O3P>+K046*<NO3> - PJAC(:,3,4)=+TPK%K001(:)+TPK%K030(:)*TPK%O3P(:)+TPK%K046(:)*PCONC(:,5) -! -!NO/NO3=+K007-K045*<NO>+K046*<NO2> - PJAC(:,3,5)=+TPK%K007(:)-TPK%K045(:)*PCONC(:,3)+TPK%K046(:)*PCONC(:,4) -! -!NO/N2O5=0.0 -! -!NO/HONO=+K004 - PJAC(:,3,7)=+TPK%K004(:) -! -!NO/HNO3=0.0 -! -!NO/HNO4=0.0 -! -!NO/NH3=0.0 -! -!NO/SO2=0.0 -! -!NO/SULF=0.0 -! -!NO/CO=0.0 -! -!NO/OH=-K032*<NO> - PJAC(:,3,14)=-TPK%K032(:)*PCONC(:,3) -! -!NO/HO2=-K035*<NO> - PJAC(:,3,15)=-TPK%K035(:)*PCONC(:,3) -! -!NO/CH4=0.0 -! -!NO/ETH=0.0 -! -!NO/ALKA=0.0 -! -!NO/ALKE=0.0 -! -!NO/BIO=0.0 -! -!NO/ARO=0.0 -! -!NO/HCHO=0.0 -! -!NO/ALD=0.0 -! -!NO/KET=0.0 -! -!NO/CARBO=0.0 -! -!NO/ONIT=0.0 -! -!NO/PAN=0.0 -! -!NO/OP1=0.0 -! -!NO/OP2=0.0 -! -!NO/ORA2=0.0 -! -!NO/MO2=-K087*<NO> - PJAC(:,3,31)=-TPK%K087(:)*PCONC(:,3) -! -!NO/ALKAP=-K088*<NO> - PJAC(:,3,32)=-TPK%K088(:)*PCONC(:,3) -! -!NO/ALKEP=-K089*<NO> - PJAC(:,3,33)=-TPK%K089(:)*PCONC(:,3) -! -!NO/BIOP=-K090*<NO> - PJAC(:,3,34)=-TPK%K090(:)*PCONC(:,3) -! -!NO/PHO=0.0 -! -!NO/ADD=0.0 -! -!NO/AROP=-K091*<NO> - PJAC(:,3,37)=-TPK%K091(:)*PCONC(:,3) -! -!NO/CARBOP=-K092*<NO> - PJAC(:,3,38)=-TPK%K092(:)*PCONC(:,3) -! -!NO/OLN=-K093*<NO> - PJAC(:,3,39)=-TPK%K093(:)*PCONC(:,3) -! -!NO/XO2=-K127*<NO> - PJAC(:,3,40)=-TPK%K127(:)*PCONC(:,3) -! -!NO2/O3=+K042*<NO>-K043*<NO2>+0.70*K079*<PAN> - PJAC(:,4,1)=+TPK%K042(:)*PCONC(:,3)-TPK%K043(:)*PCONC(:,4)+0.70*TPK%K079(:)*PC& -&ONC(:,27) -! -!NO2/H2O2=0.0 -! -!NO2/NO=+K029*<O3P>+K035*<HO2>+K042*<O3>+K044*<NO>*<O2>+K044*<NO>*<O2>+K044*<NO -!>*<O2>+K044*<NO>*<O2>+K045*<NO3>+K045*<NO3>+K087*<MO2>+0.91541*K088*<ALKAP>+K0 -!89*<ALKEP>+0.84700*K090*<BIOP>+0.95115*K091*<AROP>+K092*<CARBOP>+1.81599*K093* -!<OLN>+K127*<XO2> - PJAC(:,4,3)=+TPK%K029(:)*TPK%O3P(:)+TPK%K035(:)*PCONC(:,15)+TPK%K042(:)*PCONC(& -&:,1)+TPK%K044(:)*PCONC(:,3)*TPK%O2(:)+TPK%K044(:)*PCONC(:,3)*TPK%O2(:)+TPK%K04& -&4(:)*PCONC(:,3)*TPK%O2(:)+TPK%K044(:)*PCONC(:,3)*TPK%O2(:)+TPK%K045(:)*PCONC(:& -&,5)+TPK%K045(:)*PCONC(:,5)+TPK%K087(:)*PCONC(:,31)+0.91541*TPK%K088(:)*PCONC(:& -&,32)+TPK%K089(:)*PCONC(:,33)+0.84700*TPK%K090(:)*PCONC(:,34)+0.95115*TPK%K091(& -&:)*PCONC(:,37)+TPK%K092(:)*PCONC(:,38)+1.81599*TPK%K093(:)*PCONC(:,39)+TPK%K12& -&7(:)*PCONC(:,40) -! -!NO2/NO2=-K001-K030*<O3P>-K031*<O3P>-K033*<OH>-K036*<HO2>-K043*<O3>+K046*<NO3>- -!K046*<NO3>-K047*<NO3>-K080*<PHO>-K082*<ADD>-K085*<CARBOP> - PJAC(:,4,4)=-TPK%K001(:)-TPK%K030(:)*TPK%O3P(:)-TPK%K031(:)*TPK%O3P(:)-TPK%K03& -&3(:)*PCONC(:,14)-TPK%K036(:)*PCONC(:,15)-TPK%K043(:)*PCONC(:,1)+TPK%K046(:)*PC& -&ONC(:,5)-TPK%K046(:)*PCONC(:,5)-TPK%K047(:)*PCONC(:,5)-TPK%K080(:)*PCONC(:,35)& -&-TPK%K082(:)*PCONC(:,36)-TPK%K085(:)*PCONC(:,38) -! -!NO2/NO3=+K008+K034*<OH>+0.7*K038*<HO2>+K045*<NO>+K045*<NO>+K046*<NO2>-K046*<NO -!2>-K047*<NO2>+K049*<NO3>+K049*<NO3>+K049*<NO3>+K049*<NO3>+0.10530*K071*<CARBO> -!+0.40*K075*<PAN>+K116*<MO2>+K117*<ALKAP>+K118*<ALKEP>+K119*<BIOP>+K120*<AROP>+ -!K121*<CARBOP>+1.74072*K122*<OLN>+K128*<XO2> - PJAC(:,4,5)=+TPK%K008(:)+TPK%K034(:)*PCONC(:,14)+0.7*TPK%K038(:)*PCONC(:,15)+T& -&PK%K045(:)*PCONC(:,3)+TPK%K045(:)*PCONC(:,3)+TPK%K046(:)*PCONC(:,4)-TPK%K046(:& -&)*PCONC(:,4)-TPK%K047(:)*PCONC(:,4)+TPK%K049(:)*PCONC(:,5)+TPK%K049(:)*PCONC(:& -&,5)+TPK%K049(:)*PCONC(:,5)+TPK%K049(:)*PCONC(:,5)+0.10530*TPK%K071(:)*PCONC(:,& -&25)+0.40*TPK%K075(:)*PCONC(:,27)+TPK%K116(:)*PCONC(:,31)+TPK%K117(:)*PCONC(:,3& -&2)+TPK%K118(:)*PCONC(:,33)+TPK%K119(:)*PCONC(:,34)+TPK%K120(:)*PCONC(:,37)+TPK& -&%K121(:)*PCONC(:,38)+1.74072*TPK%K122(:)*PCONC(:,39)+TPK%K128(:)*PCONC(:,40) -! -!NO2/N2O5=+K048 - PJAC(:,4,6)=+TPK%K048(:) -! -!NO2/HONO=+K039*<OH> - PJAC(:,4,7)=+TPK%K039(:)*PCONC(:,14) -! -!NO2/HNO3=+K005 - PJAC(:,4,8)=+TPK%K005(:) -! -!NO2/HNO4=+0.65*K006+K037+K041*<OH> - PJAC(:,4,9)=+0.65*TPK%K006(:)+TPK%K037(:)+TPK%K041(:)*PCONC(:,14) -! -!NO2/NH3=0.0 -! -!NO2/SO2=0.0 -! -!NO2/SULF=0.0 -! -!NO2/CO=0.0 -! -!NO2/OH=-K033*<NO2>+K034*<NO3>+K039*<HONO>+K041*<HNO4>+K068*<ONIT> - PJAC(:,4,14)=-TPK%K033(:)*PCONC(:,4)+TPK%K034(:)*PCONC(:,5)+TPK%K039(:)*PCONC(& -&:,7)+TPK%K041(:)*PCONC(:,9)+TPK%K068(:)*PCONC(:,26) -! -!NO2/HO2=+K035*<NO>-K036*<NO2>+0.7*K038*<NO3> - PJAC(:,4,15)=+TPK%K035(:)*PCONC(:,3)-TPK%K036(:)*PCONC(:,4)+0.7*TPK%K038(:)*PC& -&ONC(:,5) -! -!NO2/CH4=0.0 -! -!NO2/ETH=0.0 -! -!NO2/ALKA=0.0 -! -!NO2/ALKE=0.0 -! -!NO2/BIO=0.0 -! -!NO2/ARO=0.0 -! -!NO2/HCHO=0.0 -! -!NO2/ALD=0.0 -! -!NO2/KET=0.0 -! -!NO2/CARBO=+0.10530*K071*<NO3> - PJAC(:,4,25)=+0.10530*TPK%K071(:)*PCONC(:,5) -! -!NO2/ONIT=+K017+K068*<OH> - PJAC(:,4,26)=+TPK%K017(:)+TPK%K068(:)*PCONC(:,14) -! -!NO2/PAN=+0.40*K075*<NO3>+0.70*K079*<O3>+K086 - PJAC(:,4,27)=+0.40*TPK%K075(:)*PCONC(:,5)+0.70*TPK%K079(:)*PCONC(:,1)+TPK%K086& -&(:) -! -!NO2/OP1=0.0 -! -!NO2/OP2=0.0 -! -!NO2/ORA2=0.0 -! -!NO2/MO2=+K087*<NO>+0.32440*K107*<OLN>+K116*<NO3> - PJAC(:,4,31)=+TPK%K087(:)*PCONC(:,3)+0.32440*TPK%K107(:)*PCONC(:,39)+TPK%K116(& -&:)*PCONC(:,5) -! -!NO2/ALKAP=+0.91541*K088*<NO>+K117*<NO3> - PJAC(:,4,32)=+0.91541*TPK%K088(:)*PCONC(:,3)+TPK%K117(:)*PCONC(:,5) -! -!NO2/ALKEP=+K089*<NO>+K118*<NO3> - PJAC(:,4,33)=+TPK%K089(:)*PCONC(:,3)+TPK%K118(:)*PCONC(:,5) -! -!NO2/BIOP=+0.84700*K090*<NO>+K119*<NO3> - PJAC(:,4,34)=+0.84700*TPK%K090(:)*PCONC(:,3)+TPK%K119(:)*PCONC(:,5) -! -!NO2/PHO=-K080*<NO2> - PJAC(:,4,35)=-TPK%K080(:)*PCONC(:,4) -! -!NO2/ADD=-K082*<NO2> - PJAC(:,4,36)=-TPK%K082(:)*PCONC(:,4) -! -!NO2/AROP=+0.95115*K091*<NO>+K120*<NO3> - PJAC(:,4,37)=+0.95115*TPK%K091(:)*PCONC(:,3)+TPK%K120(:)*PCONC(:,5) -! -!NO2/CARBOP=-K085*<NO2>+K092*<NO>+0.00000*K113*<OLN>+K121*<NO3> - PJAC(:,4,38)=-TPK%K085(:)*PCONC(:,4)+TPK%K092(:)*PCONC(:,3)+0.00000*TPK%K113(:& -&)*PCONC(:,39)+TPK%K121(:)*PCONC(:,5) -! -!NO2/OLN=+1.81599*K093*<NO>+0.32440*K107*<MO2>+0.00000*K113*<CARBOP>+0.00000*K1 -!15*<OLN>+0.00000*K115*<OLN>+1.74072*K122*<NO3> - PJAC(:,4,39)=+1.81599*TPK%K093(:)*PCONC(:,3)+0.32440*TPK%K107(:)*PCONC(:,31)+0& -&.00000*TPK%K113(:)*PCONC(:,38)+0.00000*TPK%K115(:)*PCONC(:,39)+0.00000*TPK%K11& -&5(:)*PCONC(:,39)+1.74072*TPK%K122(:)*PCONC(:,5) -! -!NO2/XO2=+K127*<NO>+K128*<NO3> - PJAC(:,4,40)=+TPK%K127(:)*PCONC(:,3)+TPK%K128(:)*PCONC(:,5) -! -!NO3/O3=+K043*<NO2> - PJAC(:,5,1)=+TPK%K043(:)*PCONC(:,4) -! -!NO3/H2O2=0.0 -! -!NO3/NO=-K045*<NO3> - PJAC(:,5,3)=-TPK%K045(:)*PCONC(:,5) -! -!NO3/NO2=+K031*<O3P>+K043*<O3>-K046*<NO3>-K047*<NO3> - PJAC(:,5,4)=+TPK%K031(:)*TPK%O3P(:)+TPK%K043(:)*PCONC(:,1)-TPK%K046(:)*PCONC(:& -&,5)-TPK%K047(:)*PCONC(:,5) -! -!NO3/NO3=-K007-K008-K034*<OH>-K038*<HO2>-K045*<NO>-K046*<NO2>-K047*<NO2>-K049*< -!NO3>-K049*<NO3>-K049*<NO3>-K049*<NO3>-K069*<HCHO>-K070*<ALD>-K071*<CARBO>-K072 -!*<ARO>-K073*<ALKE>-K074*<BIO>+0.60*K075*<PAN>-K075*<PAN>-K116*<MO2>-K117*<ALKA -!P>-K118*<ALKEP>-K119*<BIOP>-K120*<AROP>-K121*<CARBOP>-K122*<OLN>-K128*<XO2> - PJAC(:,5,5)=-TPK%K007(:)-TPK%K008(:)-TPK%K034(:)*PCONC(:,14)-TPK%K038(:)*PCONC& -&(:,15)-TPK%K045(:)*PCONC(:,3)-TPK%K046(:)*PCONC(:,4)-TPK%K047(:)*PCONC(:,4)-TP& -&K%K049(:)*PCONC(:,5)-TPK%K049(:)*PCONC(:,5)-TPK%K049(:)*PCONC(:,5)-TPK%K049(:)& -&*PCONC(:,5)-TPK%K069(:)*PCONC(:,22)-TPK%K070(:)*PCONC(:,23)-TPK%K071(:)*PCONC(& -&:,25)-TPK%K072(:)*PCONC(:,21)-TPK%K073(:)*PCONC(:,19)-TPK%K074(:)*PCONC(:,20)+& -&0.60*TPK%K075(:)*PCONC(:,27)-TPK%K075(:)*PCONC(:,27)-TPK%K116(:)*PCONC(:,31)-T& -&PK%K117(:)*PCONC(:,32)-TPK%K118(:)*PCONC(:,33)-TPK%K119(:)*PCONC(:,34)-TPK%K12& -&0(:)*PCONC(:,37)-TPK%K121(:)*PCONC(:,38)-TPK%K122(:)*PCONC(:,39)-TPK%K128(:)*P& -&CONC(:,40) -! -!NO3/N2O5=+K048 - PJAC(:,5,6)=+TPK%K048(:) -! -!NO3/HONO=0.0 -! -!NO3/HNO3=+K040*<OH> - PJAC(:,5,8)=+TPK%K040(:)*PCONC(:,14) -! -!NO3/HNO4=+0.35*K006 - PJAC(:,5,9)=+0.35*TPK%K006(:) -! -!NO3/NH3=0.0 -! -!NO3/SO2=0.0 -! -!NO3/SULF=0.0 -! -!NO3/CO=0.0 -! -!NO3/OH=-K034*<NO3>+K040*<HNO3>+0.71893*K067*<PAN> - PJAC(:,5,14)=-TPK%K034(:)*PCONC(:,5)+TPK%K040(:)*PCONC(:,8)+0.71893*TPK%K067(:& -&)*PCONC(:,27) -! -!NO3/HO2=-K038*<NO3> - PJAC(:,5,15)=-TPK%K038(:)*PCONC(:,5) -! -!NO3/CH4=0.0 -! -!NO3/ETH=0.0 -! -!NO3/ALKA=0.0 -! -!NO3/ALKE=-K073*<NO3> - PJAC(:,5,19)=-TPK%K073(:)*PCONC(:,5) -! -!NO3/BIO=-K074*<NO3> - PJAC(:,5,20)=-TPK%K074(:)*PCONC(:,5) -! -!NO3/ARO=-K072*<NO3> - PJAC(:,5,21)=-TPK%K072(:)*PCONC(:,5) -! -!NO3/HCHO=-K069*<NO3> - PJAC(:,5,22)=-TPK%K069(:)*PCONC(:,5) -! -!NO3/ALD=-K070*<NO3> - PJAC(:,5,23)=-TPK%K070(:)*PCONC(:,5) -! -!NO3/KET=0.0 -! -!NO3/CARBO=-K071*<NO3> - PJAC(:,5,25)=-TPK%K071(:)*PCONC(:,5) -! -!NO3/ONIT=0.0 -! -!NO3/PAN=+0.71893*K067*<OH>+0.60*K075*<NO3>-K075*<NO3> - PJAC(:,5,27)=+0.71893*TPK%K067(:)*PCONC(:,14)+0.60*TPK%K075(:)*PCONC(:,5)-TPK%& -&K075(:)*PCONC(:,5) -! -!NO3/OP1=0.0 -! -!NO3/OP2=0.0 -! -!NO3/ORA2=0.0 -! -!NO3/MO2=-K116*<NO3> - PJAC(:,5,31)=-TPK%K116(:)*PCONC(:,5) -! -!NO3/ALKAP=-K117*<NO3> - PJAC(:,5,32)=-TPK%K117(:)*PCONC(:,5) -! -!NO3/ALKEP=-K118*<NO3> - PJAC(:,5,33)=-TPK%K118(:)*PCONC(:,5) -! -!NO3/BIOP=-K119*<NO3> - PJAC(:,5,34)=-TPK%K119(:)*PCONC(:,5) -! -!NO3/PHO=0.0 -! -!NO3/ADD=0.0 -! -!NO3/AROP=-K120*<NO3> - PJAC(:,5,37)=-TPK%K120(:)*PCONC(:,5) -! -!NO3/CARBOP=-K121*<NO3> - PJAC(:,5,38)=-TPK%K121(:)*PCONC(:,5) -! -!NO3/OLN=-K122*<NO3> - PJAC(:,5,39)=-TPK%K122(:)*PCONC(:,5) -! -!NO3/XO2=-K128*<NO3> - PJAC(:,5,40)=-TPK%K128(:)*PCONC(:,5) -! -!N2O5/O3=0.0 -! -!N2O5/H2O2=0.0 -! -!N2O5/NO=0.0 -! -!N2O5/NO2=+K047*<NO3> - PJAC(:,6,4)=+TPK%K047(:)*PCONC(:,5) -! -!N2O5/NO3=+K047*<NO2> - PJAC(:,6,5)=+TPK%K047(:)*PCONC(:,4) -! -!N2O5/N2O5=-K048 - PJAC(:,6,6)=-TPK%K048(:) -! -!N2O5/HONO=0.0 -! -!N2O5/HNO3=0.0 -! -!N2O5/HNO4=0.0 -! -!N2O5/NH3=0.0 -! -!N2O5/SO2=0.0 -! -!N2O5/SULF=0.0 -! -!N2O5/CO=0.0 -! -!N2O5/OH=0.0 -! -!N2O5/HO2=0.0 -! -!N2O5/CH4=0.0 -! -!N2O5/ETH=0.0 -! -!N2O5/ALKA=0.0 -! -!N2O5/ALKE=0.0 -! -!N2O5/BIO=0.0 -! -!N2O5/ARO=0.0 -! -!N2O5/HCHO=0.0 -! -!N2O5/ALD=0.0 -! -!N2O5/KET=0.0 -! -!N2O5/CARBO=0.0 -! -!N2O5/ONIT=0.0 -! -!N2O5/PAN=0.0 -! -!N2O5/OP1=0.0 -! -!N2O5/OP2=0.0 -! -!N2O5/ORA2=0.0 -! -!N2O5/MO2=0.0 -! -!N2O5/ALKAP=0.0 -! -!N2O5/ALKEP=0.0 -! -!N2O5/BIOP=0.0 -! -!N2O5/PHO=0.0 -! -!N2O5/ADD=0.0 -! -!N2O5/AROP=0.0 -! -!N2O5/CARBOP=0.0 -! -!N2O5/OLN=0.0 -! -!N2O5/XO2=0.0 -! -!HONO/O3=0.0 -! -!HONO/H2O2=0.0 -! -!HONO/NO=+K032*<OH> - PJAC(:,7,3)=+TPK%K032(:)*PCONC(:,14) -! -!HONO/NO2=+K082*<ADD> - PJAC(:,7,4)=+TPK%K082(:)*PCONC(:,36) -! -!HONO/NO3=0.0 -! -!HONO/N2O5=0.0 -! -!HONO/HONO=-K004-K039*<OH> - PJAC(:,7,7)=-TPK%K004(:)-TPK%K039(:)*PCONC(:,14) -! -!HONO/HNO3=0.0 -! -!HONO/HNO4=0.0 -! -!HONO/NH3=0.0 -! -!HONO/SO2=0.0 -! -!HONO/SULF=0.0 -! -!HONO/CO=0.0 -! -!HONO/OH=+K032*<NO>-K039*<HONO> - PJAC(:,7,14)=+TPK%K032(:)*PCONC(:,3)-TPK%K039(:)*PCONC(:,7) -! -!HONO/HO2=0.0 -! -!HONO/CH4=0.0 -! -!HONO/ETH=0.0 -! -!HONO/ALKA=0.0 -! -!HONO/ALKE=0.0 -! -!HONO/BIO=0.0 -! -!HONO/ARO=0.0 -! -!HONO/HCHO=0.0 -! -!HONO/ALD=0.0 -! -!HONO/KET=0.0 -! -!HONO/CARBO=0.0 -! -!HONO/ONIT=0.0 -! -!HONO/PAN=0.0 -! -!HONO/OP1=0.0 -! -!HONO/OP2=0.0 -! -!HONO/ORA2=0.0 -! -!HONO/MO2=0.0 -! -!HONO/ALKAP=0.0 -! -!HONO/ALKEP=0.0 -! -!HONO/BIOP=0.0 -! -!HONO/PHO=0.0 -! -!HONO/ADD=+K082*<NO2> - PJAC(:,7,36)=+TPK%K082(:)*PCONC(:,4) -! -!HONO/AROP=0.0 -! -!HONO/CARBOP=0.0 -! -!HONO/OLN=0.0 -! -!HONO/XO2=0.0 -! -!HNO3/O3=0.0 -! -!HNO3/H2O2=0.0 -! -!HNO3/NO=0.0 -! -!HNO3/NO2=+K033*<OH> - PJAC(:,8,4)=+TPK%K033(:)*PCONC(:,14) -! -!HNO3/NO3=+0.3*K038*<HO2>+K069*<HCHO>+K070*<ALD>+0.91567*K071*<CARBO>+K072*<ARO -!> - PJAC(:,8,5)=+0.3*TPK%K038(:)*PCONC(:,15)+TPK%K069(:)*PCONC(:,22)+TPK%K070(:)*P& -&CONC(:,23)+0.91567*TPK%K071(:)*PCONC(:,25)+TPK%K072(:)*PCONC(:,21) -! -!HNO3/N2O5=0.0 -! -!HNO3/HONO=0.0 -! -!HNO3/HNO3=-K005-K040*<OH> - PJAC(:,8,8)=-TPK%K005(:)-TPK%K040(:)*PCONC(:,14) -! -!HNO3/HNO4=0.0 -! -!HNO3/NH3=0.0 -! -!HNO3/SO2=0.0 -! -!HNO3/SULF=0.0 -! -!HNO3/CO=0.0 -! -!HNO3/OH=+K033*<NO2>-K040*<HNO3> - PJAC(:,8,14)=+TPK%K033(:)*PCONC(:,4)-TPK%K040(:)*PCONC(:,8) -! -!HNO3/HO2=+0.3*K038*<NO3> - PJAC(:,8,15)=+0.3*TPK%K038(:)*PCONC(:,5) -! -!HNO3/CH4=0.0 -! -!HNO3/ETH=0.0 -! -!HNO3/ALKA=0.0 -! -!HNO3/ALKE=0.0 -! -!HNO3/BIO=0.0 -! -!HNO3/ARO=+K072*<NO3> - PJAC(:,8,21)=+TPK%K072(:)*PCONC(:,5) -! -!HNO3/HCHO=+K069*<NO3> - PJAC(:,8,22)=+TPK%K069(:)*PCONC(:,5) -! -!HNO3/ALD=+K070*<NO3> - PJAC(:,8,23)=+TPK%K070(:)*PCONC(:,5) -! -!HNO3/KET=0.0 -! -!HNO3/CARBO=+0.91567*K071*<NO3> - PJAC(:,8,25)=+0.91567*TPK%K071(:)*PCONC(:,5) -! -!HNO3/ONIT=0.0 -! -!HNO3/PAN=0.0 -! -!HNO3/OP1=0.0 -! -!HNO3/OP2=0.0 -! -!HNO3/ORA2=0.0 -! -!HNO3/MO2=0.0 -! -!HNO3/ALKAP=0.0 -! -!HNO3/ALKEP=0.0 -! -!HNO3/BIOP=0.0 -! -!HNO3/PHO=0.0 -! -!HNO3/ADD=0.0 -! -!HNO3/AROP=0.0 -! -!HNO3/CARBOP=0.0 -! -!HNO3/OLN=0.0 -! -!HNO3/XO2=0.0 -! -!HNO4/O3=0.0 -! -!HNO4/H2O2=0.0 -! -!HNO4/NO=0.0 -! -!HNO4/NO2=+K036*<HO2> - PJAC(:,9,4)=+TPK%K036(:)*PCONC(:,15) -! -!HNO4/NO3=0.0 -! -!HNO4/N2O5=0.0 -! -!HNO4/HONO=0.0 -! -!HNO4/HNO3=0.0 -! -!HNO4/HNO4=-K006-K037-K041*<OH> - PJAC(:,9,9)=-TPK%K006(:)-TPK%K037(:)-TPK%K041(:)*PCONC(:,14) -! -!HNO4/NH3=0.0 -! -!HNO4/SO2=0.0 -! -!HNO4/SULF=0.0 -! -!HNO4/CO=0.0 -! -!HNO4/OH=-K041*<HNO4> - PJAC(:,9,14)=-TPK%K041(:)*PCONC(:,9) -! -!HNO4/HO2=+K036*<NO2> - PJAC(:,9,15)=+TPK%K036(:)*PCONC(:,4) -! -!HNO4/CH4=0.0 -! -!HNO4/ETH=0.0 -! -!HNO4/ALKA=0.0 -! -!HNO4/ALKE=0.0 -! -!HNO4/BIO=0.0 -! -!HNO4/ARO=0.0 -! -!HNO4/HCHO=0.0 -! -!HNO4/ALD=0.0 -! -!HNO4/KET=0.0 -! -!HNO4/CARBO=0.0 -! -!HNO4/ONIT=0.0 -! -!HNO4/PAN=0.0 -! -!HNO4/OP1=0.0 -! -!HNO4/OP2=0.0 -! -!HNO4/ORA2=0.0 -! -!HNO4/MO2=0.0 -! -!HNO4/ALKAP=0.0 -! -!HNO4/ALKEP=0.0 -! -!HNO4/BIOP=0.0 -! -!HNO4/PHO=0.0 -! -!HNO4/ADD=0.0 -! -!HNO4/AROP=0.0 -! -!HNO4/CARBOP=0.0 -! -!HNO4/OLN=0.0 -! -!HNO4/XO2=0.0 -! -!NH3/O3=0.0 -! -!NH3/H2O2=0.0 -! -!NH3/NO=0.0 -! -!NH3/NO2=0.0 -! -!NH3/NO3=0.0 -! -!NH3/N2O5=0.0 -! -!NH3/HONO=0.0 -! -!NH3/HNO3=0.0 -! -!NH3/HNO4=0.0 -! -!NH3/NH3=0.0 -! -!NH3/SO2=0.0 -! -!NH3/SULF=0.0 -! -!NH3/CO=0.0 -! -!NH3/OH=0.0 -! -!NH3/HO2=0.0 -! -!NH3/CH4=0.0 -! -!NH3/ETH=0.0 -! -!NH3/ALKA=0.0 -! -!NH3/ALKE=0.0 -! -!NH3/BIO=0.0 -! -!NH3/ARO=0.0 -! -!NH3/HCHO=0.0 -! -!NH3/ALD=0.0 -! -!NH3/KET=0.0 -! -!NH3/CARBO=0.0 -! -!NH3/ONIT=0.0 -! -!NH3/PAN=0.0 -! -!NH3/OP1=0.0 -! -!NH3/OP2=0.0 -! -!NH3/ORA2=0.0 -! -!NH3/MO2=0.0 -! -!NH3/ALKAP=0.0 -! -!NH3/ALKEP=0.0 -! -!NH3/BIOP=0.0 -! -!NH3/PHO=0.0 -! -!NH3/ADD=0.0 -! -!NH3/AROP=0.0 -! -!NH3/CARBOP=0.0 -! -!NH3/OLN=0.0 -! -!NH3/XO2=0.0 -! -!SO2/O3=0.0 -! -!SO2/H2O2=0.0 -! -!SO2/NO=0.0 -! -!SO2/NO2=0.0 -! -!SO2/NO3=0.0 -! -!SO2/N2O5=0.0 -! -!SO2/HONO=0.0 -! -!SO2/HNO3=0.0 -! -!SO2/HNO4=0.0 -! -!SO2/NH3=0.0 -! -!SO2/SO2=-K051*<OH> - PJAC(:,11,11)=-TPK%K051(:)*PCONC(:,14) -! -!SO2/SULF=0.0 -! -!SO2/CO=0.0 -! -!SO2/OH=-K051*<SO2> - PJAC(:,11,14)=-TPK%K051(:)*PCONC(:,11) -! -!SO2/HO2=0.0 -! -!SO2/CH4=0.0 -! -!SO2/ETH=0.0 -! -!SO2/ALKA=0.0 -! -!SO2/ALKE=0.0 -! -!SO2/BIO=0.0 -! -!SO2/ARO=0.0 -! -!SO2/HCHO=0.0 -! -!SO2/ALD=0.0 -! -!SO2/KET=0.0 -! -!SO2/CARBO=0.0 -! -!SO2/ONIT=0.0 -! -!SO2/PAN=0.0 -! -!SO2/OP1=0.0 -! -!SO2/OP2=0.0 -! -!SO2/ORA2=0.0 -! -!SO2/MO2=0.0 -! -!SO2/ALKAP=0.0 -! -!SO2/ALKEP=0.0 -! -!SO2/BIOP=0.0 -! -!SO2/PHO=0.0 -! -!SO2/ADD=0.0 -! -!SO2/AROP=0.0 -! -!SO2/CARBOP=0.0 -! -!SO2/OLN=0.0 -! -!SO2/XO2=0.0 -! -!SULF/O3=0.0 -! -!SULF/H2O2=0.0 -! -!SULF/NO=0.0 -! -!SULF/NO2=0.0 -! -!SULF/NO3=0.0 -! -!SULF/N2O5=0.0 -! -!SULF/HONO=0.0 -! -!SULF/HNO3=0.0 -! -!SULF/HNO4=0.0 -! -!SULF/NH3=0.0 -! -!SULF/SO2=+K051*<OH> - PJAC(:,12,11)=+TPK%K051(:)*PCONC(:,14) -! -!SULF/SULF=0.0 -! -!SULF/CO=0.0 -! -!SULF/OH=+K051*<SO2> - PJAC(:,12,14)=+TPK%K051(:)*PCONC(:,11) -! -!SULF/HO2=0.0 -! -!SULF/CH4=0.0 -! -!SULF/ETH=0.0 -! -!SULF/ALKA=0.0 -! -!SULF/ALKE=0.0 -! -!SULF/BIO=0.0 -! -!SULF/ARO=0.0 -! -!SULF/HCHO=0.0 -! -!SULF/ALD=0.0 -! -!SULF/KET=0.0 -! -!SULF/CARBO=0.0 -! -!SULF/ONIT=0.0 -! -!SULF/PAN=0.0 -! -!SULF/OP1=0.0 -! -!SULF/OP2=0.0 -! -!SULF/ORA2=0.0 -! -!SULF/MO2=0.0 -! -!SULF/ALKAP=0.0 -! -!SULF/ALKEP=0.0 -! -!SULF/BIOP=0.0 -! -!SULF/PHO=0.0 -! -!SULF/ADD=0.0 -! -!SULF/AROP=0.0 -! -!SULF/CARBOP=0.0 -! -!SULF/OLN=0.0 -! -!SULF/XO2=0.0 -! -!CO/O3=+0.35120*K076*<ALKE>+0.36000*K077*<BIO>+0.64728*K078*<CARBO>+0.13*K079*< -!PAN> - PJAC(:,13,1)=+0.35120*TPK%K076(:)*PCONC(:,19)+0.36000*TPK%K077(:)*PCONC(:,20)+& -&0.64728*TPK%K078(:)*PCONC(:,25)+0.13*TPK%K079(:)*PCONC(:,27) -! -!CO/H2O2=0.0 -! -!CO/NO=0.0 -! -!CO/NO2=0.0 -! -!CO/NO3=+K069*<HCHO>+1.33723*K071*<CARBO> - PJAC(:,13,5)=+TPK%K069(:)*PCONC(:,22)+1.33723*TPK%K071(:)*PCONC(:,25) -! -!CO/N2O5=0.0 -! -!CO/HONO=0.0 -! -!CO/HNO3=0.0 -! -!CO/HNO4=0.0 -! -!CO/NH3=0.0 -! -!CO/SO2=0.0 -! -!CO/SULF=0.0 -! -!CO/CO=-K052*<OH> - PJAC(:,13,13)=-TPK%K052(:)*PCONC(:,14) -! -!CO/OH=-K052*<CO>+0.00878*K057*<ALKA>+K061*<HCHO>+1.01732*K064*<CARBO> - PJAC(:,13,14)=-TPK%K052(:)*PCONC(:,13)+0.00878*TPK%K057(:)*PCONC(:,18)+TPK%K06& -&1(:)*PCONC(:,22)+1.01732*TPK%K064(:)*PCONC(:,25) -! -!CO/HO2=0.0 -! -!CO/CH4=0.0 -! -!CO/ETH=0.0 -! -!CO/ALKA=+0.00878*K057*<OH> - PJAC(:,13,18)=+0.00878*TPK%K057(:)*PCONC(:,14) -! -!CO/ALKE=+0.35120*K076*<O3> - PJAC(:,13,19)=+0.35120*TPK%K076(:)*PCONC(:,1) -! -!CO/BIO=+0.01*K053*<O3P>+0.36000*K077*<O3> - PJAC(:,13,20)=+0.01*TPK%K053(:)*TPK%O3P(:)+0.36000*TPK%K077(:)*PCONC(:,1) -! -!CO/ARO=0.0 -! -!CO/HCHO=+K010+K011+K061*<OH>+K069*<NO3> - PJAC(:,13,22)=+TPK%K010(:)+TPK%K011(:)+TPK%K061(:)*PCONC(:,14)+TPK%K069(:)*PCO& -&NC(:,5) -! -!CO/ALD=+K012 - PJAC(:,13,23)=+TPK%K012(:) -! -!CO/KET=0.0 -! -!CO/CARBO=+0.91924*K016+1.01732*K064*<OH>+1.33723*K071*<NO3>+0.64728*K078*<O3> - PJAC(:,13,25)=+0.91924*TPK%K016(:)+1.01732*TPK%K064(:)*PCONC(:,14)+1.33723*TPK& -&%K071(:)*PCONC(:,5)+0.64728*TPK%K078(:)*PCONC(:,1) -! -!CO/ONIT=0.0 -! -!CO/PAN=+0.13*K079*<O3> - PJAC(:,13,27)=+0.13*TPK%K079(:)*PCONC(:,1) -! -!CO/OP1=0.0 -! -!CO/OP2=0.0 -! -!CO/ORA2=0.0 -! -!CO/MO2=0.0 -! -!CO/ALKAP=0.0 -! -!CO/ALKEP=0.0 -! -!CO/BIOP=0.0 -! -!CO/PHO=0.0 -! -!CO/ADD=0.0 -! -!CO/AROP=0.0 -! -!CO/CARBOP=0.0 -! -!CO/OLN=0.0 -! -!CO/XO2=0.0 -! -!OH/O3=-K023*<OH>+K024*<HO2>+0.39435*K076*<ALKE>+0.28000*K077*<BIO>+0.20595*K07 -!8*<CARBO>+0.036*K079*<PAN>+K084*<ADD> - PJAC(:,14,1)=-TPK%K023(:)*PCONC(:,14)+TPK%K024(:)*PCONC(:,15)+0.39435*TPK%K076& -&(:)*PCONC(:,19)+0.28000*TPK%K077(:)*PCONC(:,20)+0.20595*TPK%K078(:)*PCONC(:,25& -&)+0.036*TPK%K079(:)*PCONC(:,27)+TPK%K084(:)*PCONC(:,36) -! -!OH/H2O2=+K009+K009-K026*<OH> - PJAC(:,14,2)=+TPK%K009(:)+TPK%K009(:)-TPK%K026(:)*PCONC(:,14) -! -!OH/NO=-K032*<OH>+K035*<HO2> - PJAC(:,14,3)=-TPK%K032(:)*PCONC(:,14)+TPK%K035(:)*PCONC(:,15) -! -!OH/NO2=-K033*<OH> - PJAC(:,14,4)=-TPK%K033(:)*PCONC(:,14) -! -!OH/NO3=-K034*<OH>+0.7*K038*<HO2> - PJAC(:,14,5)=-TPK%K034(:)*PCONC(:,14)+0.7*TPK%K038(:)*PCONC(:,15) -! -!OH/N2O5=0.0 -! -!OH/HONO=+K004-K039*<OH> - PJAC(:,14,7)=+TPK%K004(:)-TPK%K039(:)*PCONC(:,14) -! -!OH/HNO3=+K005-K040*<OH> - PJAC(:,14,8)=+TPK%K005(:)-TPK%K040(:)*PCONC(:,14) -! -!OH/HNO4=+0.35*K006-K041*<OH> - PJAC(:,14,9)=+0.35*TPK%K006(:)-TPK%K041(:)*PCONC(:,14) -! -!OH/NH3=0.0 -! -!OH/SO2=-K051*<OH> - PJAC(:,14,11)=-TPK%K051(:)*PCONC(:,14) -! -!OH/SULF=0.0 -! -!OH/CO=-K052*<OH> - PJAC(:,14,13)=-TPK%K052(:)*PCONC(:,14) -! -!OH/OH=-K023*<O3>-K025*<HO2>-K026*<H2O2>-K032*<NO>-K033*<NO2>-K034*<NO3>-K039*< -!HONO>-K040*<HNO3>-K041*<HNO4>-K050*<H2>-K051*<SO2>-K052*<CO>-K055*<CH4>-K056*< -!ETH>+0.00878*K057*<ALKA>-K057*<ALKA>-K058*<ALKE>-K059*<BIO>-K060*<ARO>-K061*<H -!CHO>-K062*<ALD>-K063*<KET>-K064*<CARBO>+0.35*K065*<OP1>-K065*<OP1>+0.44925*K06 -!6*<OP2>-K066*<OP2>-K067*<PAN>-K068*<ONIT> - PJAC(:,14,14)=-TPK%K023(:)*PCONC(:,1)-TPK%K025(:)*PCONC(:,15)-TPK%K026(:)*PCON& -&C(:,2)-TPK%K032(:)*PCONC(:,3)-TPK%K033(:)*PCONC(:,4)-TPK%K034(:)*PCONC(:,5)-TP& -&K%K039(:)*PCONC(:,7)-TPK%K040(:)*PCONC(:,8)-TPK%K041(:)*PCONC(:,9)-TPK%K050(:)& -&*TPK%H2(:)-TPK%K051(:)*PCONC(:,11)-TPK%K052(:)*PCONC(:,13)-TPK%K055(:)*PCONC(:& -&,16)-TPK%K056(:)*PCONC(:,17)+0.00878*TPK%K057(:)*PCONC(:,18)-TPK%K057(:)*PCONC& -&(:,18)-TPK%K058(:)*PCONC(:,19)-TPK%K059(:)*PCONC(:,20)-TPK%K060(:)*PCONC(:,21)& -&-TPK%K061(:)*PCONC(:,22)-TPK%K062(:)*PCONC(:,23)-TPK%K063(:)*PCONC(:,24)-TPK%K& -&064(:)*PCONC(:,25)+0.35*TPK%K065(:)*PCONC(:,28)-TPK%K065(:)*PCONC(:,28)+0.4492& -&5*TPK%K066(:)*PCONC(:,29)-TPK%K066(:)*PCONC(:,29)-TPK%K067(:)*PCONC(:,27)-TPK%& -&K068(:)*PCONC(:,26) -! -!OH/HO2=+K024*<O3>-K025*<OH>+K035*<NO>+0.7*K038*<NO3> - PJAC(:,14,15)=+TPK%K024(:)*PCONC(:,1)-TPK%K025(:)*PCONC(:,14)+TPK%K035(:)*PCON& -&C(:,3)+0.7*TPK%K038(:)*PCONC(:,5) -! -!OH/CH4=-K055*<OH> - PJAC(:,14,16)=-TPK%K055(:)*PCONC(:,14) -! -!OH/ETH=-K056*<OH> - PJAC(:,14,17)=-TPK%K056(:)*PCONC(:,14) -! -!OH/ALKA=+0.00878*K057*<OH>-K057*<OH> - PJAC(:,14,18)=+0.00878*TPK%K057(:)*PCONC(:,14)-TPK%K057(:)*PCONC(:,14) -! -!OH/ALKE=-K058*<OH>+0.39435*K076*<O3> - PJAC(:,14,19)=-TPK%K058(:)*PCONC(:,14)+0.39435*TPK%K076(:)*PCONC(:,1) -! -!OH/BIO=+0.02*K053*<O3P>-K059*<OH>+0.28000*K077*<O3> - PJAC(:,14,20)=+0.02*TPK%K053(:)*TPK%O3P(:)-TPK%K059(:)*PCONC(:,14)+0.28000*TPK& -&%K077(:)*PCONC(:,1) -! -!OH/ARO=-K060*<OH> - PJAC(:,14,21)=-TPK%K060(:)*PCONC(:,14) -! -!OH/HCHO=-K061*<OH> - PJAC(:,14,22)=-TPK%K061(:)*PCONC(:,14) -! -!OH/ALD=-K062*<OH> - PJAC(:,14,23)=-TPK%K062(:)*PCONC(:,14) -! -!OH/KET=-K063*<OH> - PJAC(:,14,24)=-TPK%K063(:)*PCONC(:,14) -! -!OH/CARBO=-K064*<OH>+0.20595*K078*<O3> - PJAC(:,14,25)=-TPK%K064(:)*PCONC(:,14)+0.20595*TPK%K078(:)*PCONC(:,1) -! -!OH/ONIT=-K068*<OH> - PJAC(:,14,26)=-TPK%K068(:)*PCONC(:,14) -! -!OH/PAN=-K067*<OH>+0.036*K079*<O3> - PJAC(:,14,27)=-TPK%K067(:)*PCONC(:,14)+0.036*TPK%K079(:)*PCONC(:,1) -! -!OH/OP1=+K013+0.35*K065*<OH>-K065*<OH> - PJAC(:,14,28)=+TPK%K013(:)+0.35*TPK%K065(:)*PCONC(:,14)-TPK%K065(:)*PCONC(:,14& -&) -! -!OH/OP2=+K014+0.44925*K066*<OH>-K066*<OH> - PJAC(:,14,29)=+TPK%K014(:)+0.44925*TPK%K066(:)*PCONC(:,14)-TPK%K066(:)*PCONC(:& -&,14) -! -!OH/ORA2=0.0 -! -!OH/MO2=0.0 -! -!OH/ALKAP=0.0 -! -!OH/ALKEP=0.0 -! -!OH/BIOP=0.0 -! -!OH/PHO=0.0 -! -!OH/ADD=+K084*<O3> - PJAC(:,14,36)=+TPK%K084(:)*PCONC(:,1) -! -!OH/AROP=0.0 -! -!OH/CARBOP=0.0 -! -!OH/OLN=0.0 -! -!OH/XO2=0.0 -! -!HO2/O3=+K023*<OH>-K024*<HO2>+0.23451*K076*<ALKE>+0.30000*K077*<BIO>+0.28441*K0 -!78*<CARBO>+0.08*K079*<PAN> - PJAC(:,15,1)=+TPK%K023(:)*PCONC(:,14)-TPK%K024(:)*PCONC(:,15)+0.23451*TPK%K076& -&(:)*PCONC(:,19)+0.30000*TPK%K077(:)*PCONC(:,20)+0.28441*TPK%K078(:)*PCONC(:,25& -&)+0.08*TPK%K079(:)*PCONC(:,27) -! -!HO2/H2O2=+K026*<OH> - PJAC(:,15,2)=+TPK%K026(:)*PCONC(:,14) -! -!HO2/NO=-K035*<HO2>+K087*<MO2>+0.74265*K088*<ALKAP>+K089*<ALKEP>+0.84700*K090*< -!BIOP>+0.95115*K091*<AROP>+0.12334*K092*<CARBOP>+0.18401*K093*<OLN> - PJAC(:,15,3)=-TPK%K035(:)*PCONC(:,15)+TPK%K087(:)*PCONC(:,31)+0.74265*TPK%K088& -&(:)*PCONC(:,32)+TPK%K089(:)*PCONC(:,33)+0.84700*TPK%K090(:)*PCONC(:,34)+0.9511& -&5*TPK%K091(:)*PCONC(:,37)+0.12334*TPK%K092(:)*PCONC(:,38)+0.18401*TPK%K093(:)*& -&PCONC(:,39) -! -!HO2/NO2=-K036*<HO2> - PJAC(:,15,4)=-TPK%K036(:)*PCONC(:,15) -! -!HO2/NO3=+K034*<OH>-K038*<HO2>+K069*<HCHO>+0.63217*K071*<CARBO>+K116*<MO2>+0.81 -!290*K117*<ALKAP>+K118*<ALKEP>+K119*<BIOP>+K120*<AROP>+0.04915*K121*<CARBOP>+0. -!25928*K122*<OLN> - PJAC(:,15,5)=+TPK%K034(:)*PCONC(:,14)-TPK%K038(:)*PCONC(:,15)+TPK%K069(:)*PCON& -&C(:,22)+0.63217*TPK%K071(:)*PCONC(:,25)+TPK%K116(:)*PCONC(:,31)+0.81290*TPK%K1& -&17(:)*PCONC(:,32)+TPK%K118(:)*PCONC(:,33)+TPK%K119(:)*PCONC(:,34)+TPK%K120(:)*& -&PCONC(:,37)+0.04915*TPK%K121(:)*PCONC(:,38)+0.25928*TPK%K122(:)*PCONC(:,39) -! -!HO2/N2O5=0.0 -! -!HO2/HONO=0.0 -! -!HO2/HNO3=0.0 -! -!HO2/HNO4=+0.65*K006+K037 - PJAC(:,15,9)=+0.65*TPK%K006(:)+TPK%K037(:) -! -!HO2/NH3=0.0 -! -!HO2/SO2=+K051*<OH> - PJAC(:,15,11)=+TPK%K051(:)*PCONC(:,14) -! -!HO2/SULF=0.0 -! -!HO2/CO=+K052*<OH> - PJAC(:,15,13)=+TPK%K052(:)*PCONC(:,14) -! -!HO2/OH=+K023*<O3>-K025*<HO2>+K026*<H2O2>+K034*<NO3>+K050*<H2>+K051*<SO2>+K052* -!<CO>+0.12793*K057*<ALKA>+0.10318*K060*<ARO>+K061*<HCHO>+0.51208*K064*<CARBO>+0 -!.02915*K066*<OP2>+0.28107*K067*<PAN> - PJAC(:,15,14)=+TPK%K023(:)*PCONC(:,1)-TPK%K025(:)*PCONC(:,15)+TPK%K026(:)*PCON& -&C(:,2)+TPK%K034(:)*PCONC(:,5)+TPK%K050(:)*TPK%H2(:)+TPK%K051(:)*PCONC(:,11)+TP& -&K%K052(:)*PCONC(:,13)+0.12793*TPK%K057(:)*PCONC(:,18)+0.10318*TPK%K060(:)*PCON& -&C(:,21)+TPK%K061(:)*PCONC(:,22)+0.51208*TPK%K064(:)*PCONC(:,25)+0.02915*TPK%K0& -&66(:)*PCONC(:,29)+0.28107*TPK%K067(:)*PCONC(:,27) -! -!HO2/HO2=-K024*<O3>-K025*<OH>-K027*<HO2>-K027*<HO2>-K027*<HO2>-K027*<HO2>-K028* -!<HO2>*<H2O>-K028*<HO2>*<H2O>-K028*<HO2>*<H2O>-K028*<HO2>*<H2O>-K035*<NO>-K036* -!<NO2>-K038*<NO3>-K081*<PHO>-K094*<MO2>-K095*<ALKAP>-K096*<ALKEP>-K097*<BIOP>-K -!098*<AROP>-K099*<CARBOP>-K100*<OLN>-K123*<XO2> - PJAC(:,15,15)=-TPK%K024(:)*PCONC(:,1)-TPK%K025(:)*PCONC(:,14)-TPK%K027(:)*PCON& -&C(:,15)-TPK%K027(:)*PCONC(:,15)-TPK%K027(:)*PCONC(:,15)-TPK%K027(:)*PCONC(:,15& -&)-TPK%K028(:)*PCONC(:,15)*TPK%H2O(:)-TPK%K028(:)*PCONC(:,15)*TPK%H2O(:)-TPK%K0& -&28(:)*PCONC(:,15)*TPK%H2O(:)-TPK%K028(:)*PCONC(:,15)*TPK%H2O(:)-TPK%K035(:)*PC& -&ONC(:,3)-TPK%K036(:)*PCONC(:,4)-TPK%K038(:)*PCONC(:,5)-TPK%K081(:)*PCONC(:,35)& -&-TPK%K094(:)*PCONC(:,31)-TPK%K095(:)*PCONC(:,32)-TPK%K096(:)*PCONC(:,33)-TPK%K& -&097(:)*PCONC(:,34)-TPK%K098(:)*PCONC(:,37)-TPK%K099(:)*PCONC(:,38)-TPK%K100(:)& -&*PCONC(:,39)-TPK%K123(:)*PCONC(:,40) -! -!HO2/CH4=0.0 -! -!HO2/ETH=0.0 -! -!HO2/ALKA=+0.12793*K057*<OH> - PJAC(:,15,18)=+0.12793*TPK%K057(:)*PCONC(:,14) -! -!HO2/ALKE=+0.23451*K076*<O3> - PJAC(:,15,19)=+0.23451*TPK%K076(:)*PCONC(:,1) -! -!HO2/BIO=+0.28*K053*<O3P>+0.30000*K077*<O3> - PJAC(:,15,20)=+0.28*TPK%K053(:)*TPK%O3P(:)+0.30000*TPK%K077(:)*PCONC(:,1) -! -!HO2/ARO=+0.10318*K060*<OH> - PJAC(:,15,21)=+0.10318*TPK%K060(:)*PCONC(:,14) -! -!HO2/HCHO=+K011+K011+K061*<OH>+K069*<NO3> - PJAC(:,15,22)=+TPK%K011(:)+TPK%K011(:)+TPK%K061(:)*PCONC(:,14)+TPK%K069(:)*PCO& -&NC(:,5) -! -!HO2/ALD=+K012 - PJAC(:,15,23)=+TPK%K012(:) -! -!HO2/KET=0.0 -! -!HO2/CARBO=+0.75830*K016+0.51208*K064*<OH>+0.63217*K071*<NO3>+0.28441*K078*<O3> - PJAC(:,15,25)=+0.75830*TPK%K016(:)+0.51208*TPK%K064(:)*PCONC(:,14)+0.63217*TPK& -&%K071(:)*PCONC(:,5)+0.28441*TPK%K078(:)*PCONC(:,1) -! -!HO2/ONIT=+K017 - PJAC(:,15,26)=+TPK%K017(:) -! -!HO2/PAN=+0.28107*K067*<OH>+0.08*K079*<O3> - PJAC(:,15,27)=+0.28107*TPK%K067(:)*PCONC(:,14)+0.08*TPK%K079(:)*PCONC(:,1) -! -!HO2/OP1=+K013 - PJAC(:,15,28)=+TPK%K013(:) -! -!HO2/OP2=+0.96205*K014+0.02915*K066*<OH> - PJAC(:,15,29)=+0.96205*TPK%K014(:)+0.02915*TPK%K066(:)*PCONC(:,14) -! -!HO2/ORA2=0.0 -! -!HO2/MO2=+K087*<NO>-K094*<HO2>+0.66*K101*<MO2>+0.66*K101*<MO2>+0.98383*K102*<AL -!KAP>+K103*<ALKEP>+1.00000*K104*<BIOP>+1.02767*K105*<AROP>+0.82998*K106*<CARBOP -!>+0.67560*K107*<OLN>+K116*<NO3>+K124*<XO2> - PJAC(:,15,31)=+TPK%K087(:)*PCONC(:,3)-TPK%K094(:)*PCONC(:,15)+0.66*TPK%K101(:)& -&*PCONC(:,31)+0.66*TPK%K101(:)*PCONC(:,31)+0.98383*TPK%K102(:)*PCONC(:,32)+TPK%& -&K103(:)*PCONC(:,33)+1.00000*TPK%K104(:)*PCONC(:,34)+1.02767*TPK%K105(:)*PCONC(& -&:,37)+0.82998*TPK%K106(:)*PCONC(:,38)+0.67560*TPK%K107(:)*PCONC(:,39)+TPK%K116& -&(:)*PCONC(:,5)+TPK%K124(:)*PCONC(:,40) -! -!HO2/ALKAP=+0.74265*K088*<NO>-K095*<HO2>+0.98383*K102*<MO2>+0.48079*K108*<CARBO -!P>+0.81290*K117*<NO3> - PJAC(:,15,32)=+0.74265*TPK%K088(:)*PCONC(:,3)-TPK%K095(:)*PCONC(:,15)+0.98383*& -&TPK%K102(:)*PCONC(:,31)+0.48079*TPK%K108(:)*PCONC(:,38)+0.81290*TPK%K117(:)*PC& -&ONC(:,5) -! -!HO2/ALKEP=+K089*<NO>-K096*<HO2>+K103*<MO2>+0.50078*K109*<CARBOP>+K118*<NO3> - PJAC(:,15,33)=+TPK%K089(:)*PCONC(:,3)-TPK%K096(:)*PCONC(:,15)+TPK%K103(:)*PCON& -&C(:,31)+0.50078*TPK%K109(:)*PCONC(:,38)+TPK%K118(:)*PCONC(:,5) -! -!HO2/BIOP=+0.84700*K090*<NO>-K097*<HO2>+1.00000*K104*<MO2>+0.50600*K110*<CARBOP -!>+K119*<NO3> - PJAC(:,15,34)=+0.84700*TPK%K090(:)*PCONC(:,3)-TPK%K097(:)*PCONC(:,15)+1.00000*& -&TPK%K104(:)*PCONC(:,31)+0.50600*TPK%K110(:)*PCONC(:,38)+TPK%K119(:)*PCONC(:,5) -! -!HO2/PHO=-K081*<HO2> - PJAC(:,15,35)=-TPK%K081(:)*PCONC(:,15) -! -!HO2/ADD=+0.02*K083*<O2> - PJAC(:,15,36)=+0.02*TPK%K083(:)*TPK%O2(:) -! -!HO2/AROP=+0.95115*K091*<NO>-K098*<HO2>+1.02767*K105*<MO2>+K111*<CARBOP>+K120*< -!NO3> - PJAC(:,15,37)=+0.95115*TPK%K091(:)*PCONC(:,3)-TPK%K098(:)*PCONC(:,15)+1.02767*& -&TPK%K105(:)*PCONC(:,31)+TPK%K111(:)*PCONC(:,38)+TPK%K120(:)*PCONC(:,5) -! -!HO2/CARBOP=+0.12334*K092*<NO>-K099*<HO2>+0.82998*K106*<MO2>+0.48079*K108*<ALKA -!P>+0.50078*K109*<ALKEP>+0.50600*K110*<BIOP>+K111*<AROP>+0.07566*K112*<CARBOP>+ -!0.07566*K112*<CARBOP>+0.17599*K113*<OLN>+0.04915*K121*<NO3> - PJAC(:,15,38)=+0.12334*TPK%K092(:)*PCONC(:,3)-TPK%K099(:)*PCONC(:,15)+0.82998*& -&TPK%K106(:)*PCONC(:,31)+0.48079*TPK%K108(:)*PCONC(:,32)+0.50078*TPK%K109(:)*PC& -&ONC(:,33)+0.50600*TPK%K110(:)*PCONC(:,34)+TPK%K111(:)*PCONC(:,37)+0.07566*TPK%& -&K112(:)*PCONC(:,38)+0.07566*TPK%K112(:)*PCONC(:,38)+0.17599*TPK%K113(:)*PCONC(& -&:,39)+0.04915*TPK%K121(:)*PCONC(:,5) -! -!HO2/OLN=+0.18401*K093*<NO>-K100*<HO2>+0.67560*K107*<MO2>+0.17599*K113*<CARBOP> -!+K114*<OLN>+K114*<OLN>+0.00000*K115*<OLN>+0.00000*K115*<OLN>+0.25928*K122*<NO3 -!> - PJAC(:,15,39)=+0.18401*TPK%K093(:)*PCONC(:,3)-TPK%K100(:)*PCONC(:,15)+0.67560*& -&TPK%K107(:)*PCONC(:,31)+0.17599*TPK%K113(:)*PCONC(:,38)+TPK%K114(:)*PCONC(:,39& -&)+TPK%K114(:)*PCONC(:,39)+0.00000*TPK%K115(:)*PCONC(:,39)+0.00000*TPK%K115(:)*& -&PCONC(:,39)+0.25928*TPK%K122(:)*PCONC(:,5) -! -!HO2/XO2=-K123*<HO2>+K124*<MO2> - PJAC(:,15,40)=-TPK%K123(:)*PCONC(:,15)+TPK%K124(:)*PCONC(:,31) -! -!CH4/O3=+0.04300*K076*<ALKE> - PJAC(:,16,1)=+0.04300*TPK%K076(:)*PCONC(:,19) -! -!CH4/H2O2=0.0 -! -!CH4/NO=0.0 -! -!CH4/NO2=0.0 -! -!CH4/NO3=0.0 -! -!CH4/N2O5=0.0 -! -!CH4/HONO=0.0 -! -!CH4/HNO3=0.0 -! -!CH4/HNO4=0.0 -! -!CH4/NH3=0.0 -! -!CH4/SO2=0.0 -! -!CH4/SULF=0.0 -! -!CH4/CO=0.0 -! -!CH4/OH=-K055*<CH4> - PJAC(:,16,14)=-TPK%K055(:)*PCONC(:,16) -! -!CH4/HO2=0.0 -! -!CH4/CH4=-K055*<OH> - PJAC(:,16,16)=-TPK%K055(:)*PCONC(:,14) -! -!CH4/ETH=0.0 -! -!CH4/ALKA=0.0 -! -!CH4/ALKE=+0.04300*K076*<O3> - PJAC(:,16,19)=+0.04300*TPK%K076(:)*PCONC(:,1) -! -!CH4/BIO=0.0 -! -!CH4/ARO=0.0 -! -!CH4/HCHO=0.0 -! -!CH4/ALD=0.0 -! -!CH4/KET=0.0 -! -!CH4/CARBO=0.0 -! -!CH4/ONIT=0.0 -! -!CH4/PAN=0.0 -! -!CH4/OP1=0.0 -! -!CH4/OP2=0.0 -! -!CH4/ORA2=0.0 -! -!CH4/MO2=0.0 -! -!CH4/ALKAP=0.0 -! -!CH4/ALKEP=0.0 -! -!CH4/BIOP=0.0 -! -!CH4/PHO=0.0 -! -!CH4/ADD=0.0 -! -!CH4/AROP=0.0 -! -!CH4/CARBOP=0.0 -! -!CH4/OLN=0.0 -! -!CH4/XO2=0.0 -! -!ETH/O3=+0.03196*K076*<ALKE> - PJAC(:,17,1)=+0.03196*TPK%K076(:)*PCONC(:,19) -! -!ETH/H2O2=0.0 -! -!ETH/NO=0.0 -! -!ETH/NO2=0.0 -! -!ETH/NO3=0.0 -! -!ETH/N2O5=0.0 -! -!ETH/HONO=0.0 -! -!ETH/HNO3=0.0 -! -!ETH/HNO4=0.0 -! -!ETH/NH3=0.0 -! -!ETH/SO2=0.0 -! -!ETH/SULF=0.0 -! -!ETH/CO=0.0 -! -!ETH/OH=-K056*<ETH> - PJAC(:,17,14)=-TPK%K056(:)*PCONC(:,17) -! -!ETH/HO2=0.0 -! -!ETH/CH4=0.0 -! -!ETH/ETH=-K056*<OH> - PJAC(:,17,17)=-TPK%K056(:)*PCONC(:,14) -! -!ETH/ALKA=0.0 -! -!ETH/ALKE=+0.03196*K076*<O3> - PJAC(:,17,19)=+0.03196*TPK%K076(:)*PCONC(:,1) -! -!ETH/BIO=0.0 -! -!ETH/ARO=0.0 -! -!ETH/HCHO=0.0 -! -!ETH/ALD=0.0 -! -!ETH/KET=0.0 -! -!ETH/CARBO=0.0 -! -!ETH/ONIT=0.0 -! -!ETH/PAN=0.0 -! -!ETH/OP1=0.0 -! -!ETH/OP2=0.0 -! -!ETH/ORA2=0.0 -! -!ETH/MO2=0.0 -! -!ETH/ALKAP=0.0 -! -!ETH/ALKEP=0.0 -! -!ETH/BIOP=0.0 -! -!ETH/PHO=0.0 -! -!ETH/ADD=0.0 -! -!ETH/AROP=0.0 -! -!ETH/CARBOP=0.0 -! -!ETH/OLN=0.0 -! -!ETH/XO2=0.0 -! -!ALKA/O3=0.0 -! -!ALKA/H2O2=0.0 -! -!ALKA/NO=0.0 -! -!ALKA/NO2=0.0 -! -!ALKA/NO3=0.0 -! -!ALKA/N2O5=0.0 -! -!ALKA/HONO=0.0 -! -!ALKA/HNO3=0.0 -! -!ALKA/HNO4=0.0 -! -!ALKA/NH3=0.0 -! -!ALKA/SO2=0.0 -! -!ALKA/SULF=0.0 -! -!ALKA/CO=0.0 -! -!ALKA/OH=-K057*<ALKA> - PJAC(:,18,14)=-TPK%K057(:)*PCONC(:,18) -! -!ALKA/HO2=0.0 -! -!ALKA/CH4=0.0 -! -!ALKA/ETH=0.0 -! -!ALKA/ALKA=-K057*<OH> - PJAC(:,18,18)=-TPK%K057(:)*PCONC(:,14) -! -!ALKA/ALKE=0.0 -! -!ALKA/BIO=0.0 -! -!ALKA/ARO=0.0 -! -!ALKA/HCHO=0.0 -! -!ALKA/ALD=0.0 -! -!ALKA/KET=0.0 -! -!ALKA/CARBO=0.0 -! -!ALKA/ONIT=0.0 -! -!ALKA/PAN=0.0 -! -!ALKA/OP1=0.0 -! -!ALKA/OP2=0.0 -! -!ALKA/ORA2=0.0 -! -!ALKA/MO2=0.0 -! -!ALKA/ALKAP=0.0 -! -!ALKA/ALKEP=0.0 -! -!ALKA/BIOP=0.0 -! -!ALKA/PHO=0.0 -! -!ALKA/ADD=0.0 -! -!ALKA/AROP=0.0 -! -!ALKA/CARBOP=0.0 -! -!ALKA/OLN=0.0 -! -!ALKA/XO2=0.0 -! -!ALKE/O3=+0.00000*K076*<ALKE>-K076*<ALKE>+0.37388*K077*<BIO> - PJAC(:,19,1)=+0.00000*TPK%K076(:)*PCONC(:,19)-TPK%K076(:)*PCONC(:,19)+0.37388*& -&TPK%K077(:)*PCONC(:,20) -! -!ALKE/H2O2=0.0 -! -!ALKE/NO=+0.37815*K090*<BIOP> - PJAC(:,19,3)=+0.37815*TPK%K090(:)*PCONC(:,34) -! -!ALKE/NO2=0.0 -! -!ALKE/NO3=-K073*<ALKE>+0.42729*K119*<BIOP> - PJAC(:,19,5)=-TPK%K073(:)*PCONC(:,19)+0.42729*TPK%K119(:)*PCONC(:,34) -! -!ALKE/N2O5=0.0 -! -!ALKE/HONO=0.0 -! -!ALKE/HNO3=0.0 -! -!ALKE/HNO4=0.0 -! -!ALKE/NH3=0.0 -! -!ALKE/SO2=0.0 -! -!ALKE/SULF=0.0 -! -!ALKE/CO=0.0 -! -!ALKE/OH=-K058*<ALKE> - PJAC(:,19,14)=-TPK%K058(:)*PCONC(:,19) -! -!ALKE/HO2=0.0 -! -!ALKE/CH4=0.0 -! -!ALKE/ETH=0.0 -! -!ALKE/ALKA=0.0 -! -!ALKE/ALKE=-K058*<OH>-K073*<NO3>+0.00000*K076*<O3>-K076*<O3> - PJAC(:,19,19)=-TPK%K058(:)*PCONC(:,14)-TPK%K073(:)*PCONC(:,5)+0.00000*TPK%K076& -&(:)*PCONC(:,1)-TPK%K076(:)*PCONC(:,1) -! -!ALKE/BIO=+0.91868*K053*<O3P>+0.37388*K077*<O3> - PJAC(:,19,20)=+0.91868*TPK%K053(:)*TPK%O3P(:)+0.37388*TPK%K077(:)*PCONC(:,1) -! -!ALKE/ARO=0.0 -! -!ALKE/HCHO=0.0 -! -!ALKE/ALD=0.0 -! -!ALKE/KET=0.0 -! -!ALKE/CARBO=0.0 -! -!ALKE/ONIT=0.0 -! -!ALKE/PAN=0.0 -! -!ALKE/OP1=0.0 -! -!ALKE/OP2=0.0 -! -!ALKE/ORA2=0.0 -! -!ALKE/MO2=+0.48074*K104*<BIOP> - PJAC(:,19,31)=+0.48074*TPK%K104(:)*PCONC(:,34) -! -!ALKE/ALKAP=0.0 -! -!ALKE/ALKEP=0.0 -! -!ALKE/BIOP=+0.37815*K090*<NO>+0.48074*K104*<MO2>+0.24463*K110*<CARBOP>+0.42729* -!K119*<NO3> - PJAC(:,19,34)=+0.37815*TPK%K090(:)*PCONC(:,3)+0.48074*TPK%K104(:)*PCONC(:,31)+& -&0.24463*TPK%K110(:)*PCONC(:,38)+0.42729*TPK%K119(:)*PCONC(:,5) -! -!ALKE/PHO=0.0 -! -!ALKE/ADD=0.0 -! -!ALKE/AROP=0.0 -! -!ALKE/CARBOP=+0.24463*K110*<BIOP> - PJAC(:,19,38)=+0.24463*TPK%K110(:)*PCONC(:,34) -! -!ALKE/OLN=0.0 -! -!ALKE/XO2=0.0 -! -!BIO/O3=-K077*<BIO> - PJAC(:,20,1)=-TPK%K077(:)*PCONC(:,20) -! -!BIO/H2O2=0.0 -! -!BIO/NO=0.0 -! -!BIO/NO2=0.0 -! -!BIO/NO3=-K074*<BIO> - PJAC(:,20,5)=-TPK%K074(:)*PCONC(:,20) -! -!BIO/N2O5=0.0 -! -!BIO/HONO=0.0 -! -!BIO/HNO3=0.0 -! -!BIO/HNO4=0.0 -! -!BIO/NH3=0.0 -! -!BIO/SO2=0.0 -! -!BIO/SULF=0.0 -! -!BIO/CO=0.0 -! -!BIO/OH=-K059*<BIO> - PJAC(:,20,14)=-TPK%K059(:)*PCONC(:,20) -! -!BIO/HO2=0.0 -! -!BIO/CH4=0.0 -! -!BIO/ETH=0.0 -! -!BIO/ALKA=0.0 -! -!BIO/ALKE=0.0 -! -!BIO/BIO=-K053*<O3P>-K059*<OH>-K074*<NO3>-K077*<O3> - PJAC(:,20,20)=-TPK%K053(:)*TPK%O3P(:)-TPK%K059(:)*PCONC(:,14)-TPK%K074(:)*PCON& -&C(:,5)-TPK%K077(:)*PCONC(:,1) -! -!BIO/ARO=0.0 -! -!BIO/HCHO=0.0 -! -!BIO/ALD=0.0 -! -!BIO/KET=0.0 -! -!BIO/CARBO=0.0 -! -!BIO/ONIT=0.0 -! -!BIO/PAN=0.0 -! -!BIO/OP1=0.0 -! -!BIO/OP2=0.0 -! -!BIO/ORA2=0.0 -! -!BIO/MO2=0.0 -! -!BIO/ALKAP=0.0 -! -!BIO/ALKEP=0.0 -! -!BIO/BIOP=0.0 -! -!BIO/PHO=0.0 -! -!BIO/ADD=0.0 -! -!BIO/AROP=0.0 -! -!BIO/CARBOP=0.0 -! -!BIO/OLN=0.0 -! -!BIO/XO2=0.0 -! -!ARO/O3=+K084*<ADD> - PJAC(:,21,1)=+TPK%K084(:)*PCONC(:,36) -! -!ARO/H2O2=0.0 -! -!ARO/NO=0.0 -! -!ARO/NO2=+0.10670*K080*<PHO>+K082*<ADD> - PJAC(:,21,4)=+0.10670*TPK%K080(:)*PCONC(:,35)+TPK%K082(:)*PCONC(:,36) -! -!ARO/NO3=-K072*<ARO> - PJAC(:,21,5)=-TPK%K072(:)*PCONC(:,21) -! -!ARO/N2O5=0.0 -! -!ARO/HONO=0.0 -! -!ARO/HNO3=0.0 -! -!ARO/HNO4=0.0 -! -!ARO/NH3=0.0 -! -!ARO/SO2=0.0 -! -!ARO/SULF=0.0 -! -!ARO/CO=0.0 -! -!ARO/OH=-K060*<ARO> - PJAC(:,21,14)=-TPK%K060(:)*PCONC(:,21) -! -!ARO/HO2=+1.06698*K081*<PHO> - PJAC(:,21,15)=+1.06698*TPK%K081(:)*PCONC(:,35) -! -!ARO/CH4=0.0 -! -!ARO/ETH=0.0 -! -!ARO/ALKA=0.0 -! -!ARO/ALKE=0.0 -! -!ARO/BIO=0.0 -! -!ARO/ARO=-K060*<OH>-K072*<NO3> - PJAC(:,21,21)=-TPK%K060(:)*PCONC(:,14)-TPK%K072(:)*PCONC(:,5) -! -!ARO/HCHO=0.0 -! -!ARO/ALD=0.0 -! -!ARO/KET=0.0 -! -!ARO/CARBO=0.0 -! -!ARO/ONIT=0.0 -! -!ARO/PAN=0.0 -! -!ARO/OP1=0.0 -! -!ARO/OP2=0.0 -! -!ARO/ORA2=0.0 -! -!ARO/MO2=0.0 -! -!ARO/ALKAP=0.0 -! -!ARO/ALKEP=0.0 -! -!ARO/BIOP=0.0 -! -!ARO/PHO=+0.10670*K080*<NO2>+1.06698*K081*<HO2> - PJAC(:,21,35)=+0.10670*TPK%K080(:)*PCONC(:,4)+1.06698*TPK%K081(:)*PCONC(:,15) -! -!ARO/ADD=+K082*<NO2>+0.02*K083*<O2>+K084*<O3> - PJAC(:,21,36)=+TPK%K082(:)*PCONC(:,4)+0.02*TPK%K083(:)*TPK%O2(:)+TPK%K084(:)*P& -&CONC(:,1) -! -!ARO/AROP=0.0 -! -!ARO/CARBOP=0.0 -! -!ARO/OLN=0.0 -! -!ARO/XO2=0.0 -! -!HCHO/O3=+0.48290*K076*<ALKE>+0.90000*K077*<BIO>+0.00000*K078*<CARBO>+0.70*K079 -!*<PAN> - PJAC(:,22,1)=+0.48290*TPK%K076(:)*PCONC(:,19)+0.90000*TPK%K077(:)*PCONC(:,20)+& -&0.00000*TPK%K078(:)*PCONC(:,25)+0.70*TPK%K079(:)*PCONC(:,27) -! -!HCHO/H2O2=0.0 -! -!HCHO/NO=+K087*<MO2>+0.03002*K088*<ALKAP>+1.39870*K089*<ALKEP>+0.60600*K090*<BI -!OP>+0.05848*K092*<CARBOP>+0.23419*K093*<OLN> - PJAC(:,22,3)=+TPK%K087(:)*PCONC(:,31)+0.03002*TPK%K088(:)*PCONC(:,32)+1.39870*& -&TPK%K089(:)*PCONC(:,33)+0.60600*TPK%K090(:)*PCONC(:,34)+0.05848*TPK%K092(:)*PC& -&ONC(:,38)+0.23419*TPK%K093(:)*PCONC(:,39) -! -!HCHO/NO2=0.0 -! -!HCHO/NO3=-K069*<HCHO>+0.40*K075*<PAN>+K116*<MO2>+0.03142*K117*<ALKAP>+1.40909* -!K118*<ALKEP>+0.68600*K119*<BIOP>+0.03175*K121*<CARBOP>+0.20740*K122*<OLN> - PJAC(:,22,5)=-TPK%K069(:)*PCONC(:,22)+0.40*TPK%K075(:)*PCONC(:,27)+TPK%K116(:)& -&*PCONC(:,31)+0.03142*TPK%K117(:)*PCONC(:,32)+1.40909*TPK%K118(:)*PCONC(:,33)+0& -&.68600*TPK%K119(:)*PCONC(:,34)+0.03175*TPK%K121(:)*PCONC(:,38)+0.20740*TPK%K12& -&2(:)*PCONC(:,39) -! -!HCHO/N2O5=0.0 -! -!HCHO/HONO=0.0 -! -!HCHO/HNO3=0.0 -! -!HCHO/HNO4=0.0 -! -!HCHO/NH3=0.0 -! -!HCHO/SO2=0.0 -! -!HCHO/SULF=0.0 -! -!HCHO/CO=0.0 -! -!HCHO/OH=+0.00140*K057*<ALKA>-K061*<HCHO>+0.00000*K064*<CARBO>+0.35*K065*<OP1>+ -!0.02915*K066*<OP2>+0.57839*K067*<PAN> - PJAC(:,22,14)=+0.00140*TPK%K057(:)*PCONC(:,18)-TPK%K061(:)*PCONC(:,22)+0.00000& -&*TPK%K064(:)*PCONC(:,25)+0.35*TPK%K065(:)*PCONC(:,28)+0.02915*TPK%K066(:)*PCON& -&C(:,29)+0.57839*TPK%K067(:)*PCONC(:,27) -! -!HCHO/HO2=0.0 -! -!HCHO/CH4=0.0 -! -!HCHO/ETH=0.0 -! -!HCHO/ALKA=+0.00140*K057*<OH> - PJAC(:,22,18)=+0.00140*TPK%K057(:)*PCONC(:,14) -! -!HCHO/ALKE=+0.48290*K076*<O3> - PJAC(:,22,19)=+0.48290*TPK%K076(:)*PCONC(:,1) -! -!HCHO/BIO=+0.05*K053*<O3P>+0.90000*K077*<O3> - PJAC(:,22,20)=+0.05*TPK%K053(:)*TPK%O3P(:)+0.90000*TPK%K077(:)*PCONC(:,1) -! -!HCHO/ARO=0.0 -! -!HCHO/HCHO=-K010-K011-K061*<OH>-K069*<NO3> - PJAC(:,22,22)=-TPK%K010(:)-TPK%K011(:)-TPK%K061(:)*PCONC(:,14)-TPK%K069(:)*PCO& -&NC(:,5) -! -!HCHO/ALD=0.0 -! -!HCHO/KET=0.0 -! -!HCHO/CARBO=+0.06517*K016+0.00000*K064*<OH>+0.00000*K078*<O3> - PJAC(:,22,25)=+0.06517*TPK%K016(:)+0.00000*TPK%K064(:)*PCONC(:,14)+0.00000*TPK& -&%K078(:)*PCONC(:,1) -! -!HCHO/ONIT=0.0 -! -!HCHO/PAN=+0.57839*K067*<OH>+0.40*K075*<NO3>+0.70*K079*<O3> - PJAC(:,22,27)=+0.57839*TPK%K067(:)*PCONC(:,14)+0.40*TPK%K075(:)*PCONC(:,5)+0.7& -&0*TPK%K079(:)*PCONC(:,1) -! -!HCHO/OP1=+K013+0.35*K065*<OH> - PJAC(:,22,28)=+TPK%K013(:)+0.35*TPK%K065(:)*PCONC(:,14) -! -!HCHO/OP2=+0.02915*K066*<OH> - PJAC(:,22,29)=+0.02915*TPK%K066(:)*PCONC(:,14) -! -!HCHO/ORA2=0.0 -! -!HCHO/MO2=+K087*<NO>+1.33*K101*<MO2>+1.33*K101*<MO2>+0.80556*K102*<ALKAP>+1.428 -!94*K103*<ALKEP>+1.09000*K104*<BIOP>+K105*<AROP>+0.95723*K106*<CARBOP>+0.88625* -!K107*<OLN>+K116*<NO3>+K124*<XO2> - PJAC(:,22,31)=+TPK%K087(:)*PCONC(:,3)+1.33*TPK%K101(:)*PCONC(:,31)+1.33*TPK%K1& -&01(:)*PCONC(:,31)+0.80556*TPK%K102(:)*PCONC(:,32)+1.42894*TPK%K103(:)*PCONC(:,& -&33)+1.09000*TPK%K104(:)*PCONC(:,34)+TPK%K105(:)*PCONC(:,37)+0.95723*TPK%K106(:& -&)*PCONC(:,38)+0.88625*TPK%K107(:)*PCONC(:,39)+TPK%K116(:)*PCONC(:,5)+TPK%K124(& -&:)*PCONC(:,40) -! -!HCHO/ALKAP=+0.03002*K088*<NO>+0.80556*K102*<MO2>+0.07600*K108*<CARBOP>+0.03142 -!*K117*<NO3> - PJAC(:,22,32)=+0.03002*TPK%K088(:)*PCONC(:,3)+0.80556*TPK%K102(:)*PCONC(:,31)+& -&0.07600*TPK%K108(:)*PCONC(:,38)+0.03142*TPK%K117(:)*PCONC(:,5) -! -!HCHO/ALKEP=+1.39870*K089*<NO>+1.42894*K103*<MO2>+0.68192*K109*<CARBOP>+1.40909 -!*K118*<NO3> - PJAC(:,22,33)=+1.39870*TPK%K089(:)*PCONC(:,3)+1.42894*TPK%K103(:)*PCONC(:,31)+& -&0.68192*TPK%K109(:)*PCONC(:,38)+1.40909*TPK%K118(:)*PCONC(:,5) -! -!HCHO/BIOP=+0.60600*K090*<NO>+1.09000*K104*<MO2>+0.34000*K110*<CARBOP>+0.68600* -!K119*<NO3> - PJAC(:,22,34)=+0.60600*TPK%K090(:)*PCONC(:,3)+1.09000*TPK%K104(:)*PCONC(:,31)+& -&0.34000*TPK%K110(:)*PCONC(:,38)+0.68600*TPK%K119(:)*PCONC(:,5) -! -!HCHO/PHO=0.0 -! -!HCHO/ADD=0.0 -! -!HCHO/AROP=+K105*<MO2> - PJAC(:,22,37)=+TPK%K105(:)*PCONC(:,31) -! -!HCHO/CARBOP=+0.05848*K092*<NO>+0.95723*K106*<MO2>+0.07600*K108*<ALKAP>+0.68192 -!*K109*<ALKEP>+0.34000*K110*<BIOP>+0.03432*K112*<CARBOP>+0.03432*K112*<CARBOP>+ -!0.13414*K113*<OLN>+0.03175*K121*<NO3> - PJAC(:,22,38)=+0.05848*TPK%K092(:)*PCONC(:,3)+0.95723*TPK%K106(:)*PCONC(:,31)+& -&0.07600*TPK%K108(:)*PCONC(:,32)+0.68192*TPK%K109(:)*PCONC(:,33)+0.34000*TPK%K1& -&10(:)*PCONC(:,34)+0.03432*TPK%K112(:)*PCONC(:,38)+0.03432*TPK%K112(:)*PCONC(:,& -&38)+0.13414*TPK%K113(:)*PCONC(:,39)+0.03175*TPK%K121(:)*PCONC(:,5) -! -!HCHO/OLN=+0.23419*K093*<NO>+0.88625*K107*<MO2>+0.13414*K113*<CARBOP>+0.00000*K -!115*<OLN>+0.00000*K115*<OLN>+0.20740*K122*<NO3> - PJAC(:,22,39)=+0.23419*TPK%K093(:)*PCONC(:,3)+0.88625*TPK%K107(:)*PCONC(:,31)+& -&0.13414*TPK%K113(:)*PCONC(:,38)+0.00000*TPK%K115(:)*PCONC(:,39)+0.00000*TPK%K1& -&15(:)*PCONC(:,39)+0.20740*TPK%K122(:)*PCONC(:,5) -! -!HCHO/XO2=+K124*<MO2> - PJAC(:,22,40)=+TPK%K124(:)*PCONC(:,31) -! -!ALD/O3=+0.51468*K076*<ALKE>+0.00000*K077*<BIO>+0.15692*K078*<CARBO> - PJAC(:,23,1)=+0.51468*TPK%K076(:)*PCONC(:,19)+0.00000*TPK%K077(:)*PCONC(:,20)+& -&0.15692*TPK%K078(:)*PCONC(:,25) -! -!ALD/H2O2=0.0 -! -!ALD/NO=+0.33144*K088*<ALKAP>+0.42125*K089*<ALKEP>+0.00000*K090*<BIOP>+0.07368* -!K092*<CARBOP>+1.01182*K093*<OLN> - PJAC(:,23,3)=+0.33144*TPK%K088(:)*PCONC(:,32)+0.42125*TPK%K089(:)*PCONC(:,33)+& -&0.00000*TPK%K090(:)*PCONC(:,34)+0.07368*TPK%K092(:)*PCONC(:,38)+1.01182*TPK%K0& -&93(:)*PCONC(:,39) -! -!ALD/NO2=0.0 -! -!ALD/NO3=-K070*<ALD>+0.05265*K071*<CARBO>+0.33743*K117*<ALKAP>+0.43039*K118*<AL -!KEP>+0.00000*K119*<BIOP>+0.02936*K121*<CARBOP>+0.91850*K122*<OLN> - PJAC(:,23,5)=-TPK%K070(:)*PCONC(:,23)+0.05265*TPK%K071(:)*PCONC(:,25)+0.33743*& -&TPK%K117(:)*PCONC(:,32)+0.43039*TPK%K118(:)*PCONC(:,33)+0.00000*TPK%K119(:)*PC& -&ONC(:,34)+0.02936*TPK%K121(:)*PCONC(:,38)+0.91850*TPK%K122(:)*PCONC(:,39) -! -!ALD/N2O5=0.0 -! -!ALD/HONO=0.0 -! -!ALD/HNO3=0.0 -! -!ALD/HNO4=0.0 -! -!ALD/NH3=0.0 -! -!ALD/SO2=0.0 -! -!ALD/SULF=0.0 -! -!ALD/CO=0.0 -! -!ALD/OH=+0.08173*K057*<ALKA>-K062*<ALD>+0.06253*K064*<CARBO>+0.07335*K066*<OP2> - PJAC(:,23,14)=+0.08173*TPK%K057(:)*PCONC(:,18)-TPK%K062(:)*PCONC(:,23)+0.06253& -&*TPK%K064(:)*PCONC(:,25)+0.07335*TPK%K066(:)*PCONC(:,29) -! -!ALD/HO2=0.0 -! -!ALD/CH4=0.0 -! -!ALD/ETH=0.0 -! -!ALD/ALKA=+0.08173*K057*<OH> - PJAC(:,23,18)=+0.08173*TPK%K057(:)*PCONC(:,14) -! -!ALD/ALKE=+0.51468*K076*<O3> - PJAC(:,23,19)=+0.51468*TPK%K076(:)*PCONC(:,1) -! -!ALD/BIO=+0.00000*K077*<O3> - PJAC(:,23,20)=+0.00000*TPK%K077(:)*PCONC(:,1) -! -!ALD/ARO=0.0 -! -!ALD/HCHO=0.0 -! -!ALD/ALD=-K012-K062*<OH>-K070*<NO3> - PJAC(:,23,23)=-TPK%K012(:)-TPK%K062(:)*PCONC(:,14)-TPK%K070(:)*PCONC(:,5) -! -!ALD/KET=0.0 -! -!ALD/CARBO=+K054*<O3P>+0.06253*K064*<OH>+0.05265*K071*<NO3>+0.15692*K078*<O3> - PJAC(:,23,25)=+TPK%K054(:)*TPK%O3P(:)+0.06253*TPK%K064(:)*PCONC(:,14)+0.05265*& -&TPK%K071(:)*PCONC(:,5)+0.15692*TPK%K078(:)*PCONC(:,1) -! -!ALD/ONIT=+0.20*K017 - PJAC(:,23,26)=+0.20*TPK%K017(:) -! -!ALD/PAN=0.0 -! -!ALD/OP1=0.0 -! -!ALD/OP2=+0.96205*K014+0.07335*K066*<OH> - PJAC(:,23,29)=+0.96205*TPK%K014(:)+0.07335*TPK%K066(:)*PCONC(:,14) -! -!ALD/ORA2=0.0 -! -!ALD/MO2=+0.56070*K102*<ALKAP>+0.46413*K103*<ALKEP>+0.00000*K104*<BIOP>+0.08295 -!*K106*<CARBOP>+0.41524*K107*<OLN> - PJAC(:,23,31)=+0.56070*TPK%K102(:)*PCONC(:,32)+0.46413*TPK%K103(:)*PCONC(:,33)& -&+0.00000*TPK%K104(:)*PCONC(:,34)+0.08295*TPK%K106(:)*PCONC(:,38)+0.41524*TPK%K& -&107(:)*PCONC(:,39) -! -!ALD/ALKAP=+0.33144*K088*<NO>+0.56070*K102*<MO2>+0.71461*K108*<CARBOP>+0.33743* -!K117*<NO3> - PJAC(:,23,32)=+0.33144*TPK%K088(:)*PCONC(:,3)+0.56070*TPK%K102(:)*PCONC(:,31)+& -&0.71461*TPK%K108(:)*PCONC(:,38)+0.33743*TPK%K117(:)*PCONC(:,5) -! -!ALD/ALKEP=+0.42125*K089*<NO>+0.46413*K103*<MO2>+0.68374*K109*<CARBOP>+0.43039* -!K118*<NO3> - PJAC(:,23,33)=+0.42125*TPK%K089(:)*PCONC(:,3)+0.46413*TPK%K103(:)*PCONC(:,31)+& -&0.68374*TPK%K109(:)*PCONC(:,38)+0.43039*TPK%K118(:)*PCONC(:,5) -! -!ALD/BIOP=+0.00000*K090*<NO>+0.00000*K104*<MO2>+0.00000*K110*<CARBOP>+0.00000*K -!119*<NO3> - PJAC(:,23,34)=+0.00000*TPK%K090(:)*PCONC(:,3)+0.00000*TPK%K104(:)*PCONC(:,31)+& -&0.00000*TPK%K110(:)*PCONC(:,38)+0.00000*TPK%K119(:)*PCONC(:,5) -! -!ALD/PHO=0.0 -! -!ALD/ADD=0.0 -! -!ALD/AROP=0.0 -! -!ALD/CARBOP=+0.07368*K092*<NO>+0.08295*K106*<MO2>+0.71461*K108*<ALKAP>+0.68374* -!K109*<ALKEP>+0.00000*K110*<BIOP>+0.06969*K112*<CARBOP>+0.06969*K112*<CARBOP>+0 -!.42122*K113*<OLN>+0.02936*K121*<NO3> - PJAC(:,23,38)=+0.07368*TPK%K092(:)*PCONC(:,3)+0.08295*TPK%K106(:)*PCONC(:,31)+& -&0.71461*TPK%K108(:)*PCONC(:,32)+0.68374*TPK%K109(:)*PCONC(:,33)+0.00000*TPK%K1& -&10(:)*PCONC(:,34)+0.06969*TPK%K112(:)*PCONC(:,38)+0.06969*TPK%K112(:)*PCONC(:,& -&38)+0.42122*TPK%K113(:)*PCONC(:,39)+0.02936*TPK%K121(:)*PCONC(:,5) -! -!ALD/OLN=+1.01182*K093*<NO>+0.41524*K107*<MO2>+0.42122*K113*<CARBOP>+0.00000*K1 -!15*<OLN>+0.00000*K115*<OLN>+0.91850*K122*<NO3> - PJAC(:,23,39)=+1.01182*TPK%K093(:)*PCONC(:,3)+0.41524*TPK%K107(:)*PCONC(:,31)+& -&0.42122*TPK%K113(:)*PCONC(:,38)+0.00000*TPK%K115(:)*PCONC(:,39)+0.00000*TPK%K1& -&15(:)*PCONC(:,39)+0.91850*TPK%K122(:)*PCONC(:,5) -! -!ALD/XO2=0.0 -! -!KET/O3=+0.07377*K076*<ALKE>+0.00000*K077*<BIO> - PJAC(:,24,1)=+0.07377*TPK%K076(:)*PCONC(:,19)+0.00000*TPK%K077(:)*PCONC(:,20) -! -!KET/H2O2=0.0 -! -!KET/NO=+0.54531*K088*<ALKAP>+0.05220*K089*<ALKEP>+0.00000*K090*<BIOP>+0.37862* -!K093*<OLN> - PJAC(:,24,3)=+0.54531*TPK%K088(:)*PCONC(:,32)+0.05220*TPK%K089(:)*PCONC(:,33)+& -&0.00000*TPK%K090(:)*PCONC(:,34)+0.37862*TPK%K093(:)*PCONC(:,39) -! -!KET/NO2=0.0 -! -!KET/NO3=+0.00632*K071*<CARBO>+0.62978*K117*<ALKAP>+0.02051*K118*<ALKEP>+0.0000 -!0*K119*<BIOP>+0.34740*K122*<OLN> - PJAC(:,24,5)=+0.00632*TPK%K071(:)*PCONC(:,25)+0.62978*TPK%K117(:)*PCONC(:,32)+& -&0.02051*TPK%K118(:)*PCONC(:,33)+0.00000*TPK%K119(:)*PCONC(:,34)+0.34740*TPK%K1& -&22(:)*PCONC(:,39) -! -!KET/N2O5=0.0 -! -!KET/HONO=0.0 -! -!KET/HNO3=0.0 -! -!KET/HNO4=0.0 -! -!KET/NH3=0.0 -! -!KET/SO2=0.0 -! -!KET/SULF=0.0 -! -!KET/CO=0.0 -! -!KET/OH=+0.03498*K057*<ALKA>-K063*<KET>+0.00853*K064*<CARBO>+0.37591*K066*<OP2> - PJAC(:,24,14)=+0.03498*TPK%K057(:)*PCONC(:,18)-TPK%K063(:)*PCONC(:,24)+0.00853& -&*TPK%K064(:)*PCONC(:,25)+0.37591*TPK%K066(:)*PCONC(:,29) -! -!KET/HO2=0.0 -! -!KET/CH4=0.0 -! -!KET/ETH=0.0 -! -!KET/ALKA=+0.03498*K057*<OH> - PJAC(:,24,18)=+0.03498*TPK%K057(:)*PCONC(:,14) -! -!KET/ALKE=+0.07377*K076*<O3> - PJAC(:,24,19)=+0.07377*TPK%K076(:)*PCONC(:,1) -! -!KET/BIO=+0.00000*K077*<O3> - PJAC(:,24,20)=+0.00000*TPK%K077(:)*PCONC(:,1) -! -!KET/ARO=0.0 -! -!KET/HCHO=0.0 -! -!KET/ALD=0.0 -! -!KET/KET=-K015-K063*<OH> - PJAC(:,24,24)=-TPK%K015(:)-TPK%K063(:)*PCONC(:,14) -! -!KET/CARBO=+0.00853*K064*<OH>+0.00632*K071*<NO3> - PJAC(:,24,25)=+0.00853*TPK%K064(:)*PCONC(:,14)+0.00632*TPK%K071(:)*PCONC(:,5) -! -!KET/ONIT=+0.80*K017 - PJAC(:,24,26)=+0.80*TPK%K017(:) -! -!KET/PAN=0.0 -! -!KET/OP1=0.0 -! -!KET/OP2=+0.37591*K066*<OH> - PJAC(:,24,29)=+0.37591*TPK%K066(:)*PCONC(:,14) -! -!KET/ORA2=0.0 -! -!KET/MO2=+0.09673*K102*<ALKAP>+0.03814*K103*<ALKEP>+0.00000*K104*<BIOP>+0.09667 -!*K107*<OLN> - PJAC(:,24,31)=+0.09673*TPK%K102(:)*PCONC(:,32)+0.03814*TPK%K103(:)*PCONC(:,33)& -&+0.00000*TPK%K104(:)*PCONC(:,34)+0.09667*TPK%K107(:)*PCONC(:,39) -! -!KET/ALKAP=+0.54531*K088*<NO>+0.09673*K102*<MO2>+0.18819*K108*<CARBOP>+0.62978* -!K117*<NO3> - PJAC(:,24,32)=+0.54531*TPK%K088(:)*PCONC(:,3)+0.09673*TPK%K102(:)*PCONC(:,31)+& -&0.18819*TPK%K108(:)*PCONC(:,38)+0.62978*TPK%K117(:)*PCONC(:,5) -! -!KET/ALKEP=+0.05220*K089*<NO>+0.03814*K103*<MO2>+0.06579*K109*<CARBOP>+0.02051* -!K118*<NO3> - PJAC(:,24,33)=+0.05220*TPK%K089(:)*PCONC(:,3)+0.03814*TPK%K103(:)*PCONC(:,31)+& -&0.06579*TPK%K109(:)*PCONC(:,38)+0.02051*TPK%K118(:)*PCONC(:,5) -! -!KET/BIOP=+0.00000*K090*<NO>+0.00000*K104*<MO2>+0.00000*K110*<CARBOP>+0.00000*K -!119*<NO3> - PJAC(:,24,34)=+0.00000*TPK%K090(:)*PCONC(:,3)+0.00000*TPK%K104(:)*PCONC(:,31)+& -&0.00000*TPK%K110(:)*PCONC(:,38)+0.00000*TPK%K119(:)*PCONC(:,5) -! -!KET/PHO=0.0 -! -!KET/ADD=0.0 -! -!KET/AROP=0.0 -! -!KET/CARBOP=+0.18819*K108*<ALKAP>+0.06579*K109*<ALKEP>+0.00000*K110*<BIOP>+0.02 -!190*K112*<CARBOP>+0.02190*K112*<CARBOP>+0.10822*K113*<OLN> - PJAC(:,24,38)=+0.18819*TPK%K108(:)*PCONC(:,32)+0.06579*TPK%K109(:)*PCONC(:,33)& -&+0.00000*TPK%K110(:)*PCONC(:,34)+0.02190*TPK%K112(:)*PCONC(:,38)+0.02190*TPK%K& -&112(:)*PCONC(:,38)+0.10822*TPK%K113(:)*PCONC(:,39) -! -!KET/OLN=+0.37862*K093*<NO>+0.09667*K107*<MO2>+0.10822*K113*<CARBOP>+0.00000*K1 -!15*<OLN>+0.00000*K115*<OLN>+0.34740*K122*<NO3> - PJAC(:,24,39)=+0.37862*TPK%K093(:)*PCONC(:,3)+0.09667*TPK%K107(:)*PCONC(:,31)+& -&0.10822*TPK%K113(:)*PCONC(:,38)+0.00000*TPK%K115(:)*PCONC(:,39)+0.00000*TPK%K1& -&15(:)*PCONC(:,39)+0.34740*TPK%K122(:)*PCONC(:,5) -! -!KET/XO2=0.0 -! -!CARBO/O3=+0.00000*K076*<ALKE>+0.39754*K077*<BIO>+1.07583*K078*<CARBO>-K078*<CA -!RBO> - PJAC(:,25,1)=+0.00000*TPK%K076(:)*PCONC(:,19)+0.39754*TPK%K077(:)*PCONC(:,20)+& -&1.07583*TPK%K078(:)*PCONC(:,25)-TPK%K078(:)*PCONC(:,25) -! -!CARBO/H2O2=0.0 -! -!CARBO/NO=+0.03407*K088*<ALKAP>+0.45463*K090*<BIOP>+2.06993*K091*<AROP>+0.08670 -!*K092*<CARBOP> - PJAC(:,25,3)=+0.03407*TPK%K088(:)*PCONC(:,32)+0.45463*TPK%K090(:)*PCONC(:,34)+& -&2.06993*TPK%K091(:)*PCONC(:,37)+0.08670*TPK%K092(:)*PCONC(:,38) -! -!CARBO/NO2=0.0 -! -!CARBO/NO3=+0.10530*K071*<CARBO>-K071*<CARBO>+0.00000*K073*<ALKE>+0.91741*K074* -!<BIO>+0.03531*K117*<ALKAP>+0.61160*K119*<BIOP>+2.81904*K120*<AROP>+0.03455*K12 -!1*<CARBOP> - PJAC(:,25,5)=+0.10530*TPK%K071(:)*PCONC(:,25)-TPK%K071(:)*PCONC(:,25)+0.00000*& -&TPK%K073(:)*PCONC(:,19)+0.91741*TPK%K074(:)*PCONC(:,20)+0.03531*TPK%K117(:)*PC& -&ONC(:,32)+0.61160*TPK%K119(:)*PCONC(:,34)+2.81904*TPK%K120(:)*PCONC(:,37)+0.03& -&455*TPK%K121(:)*PCONC(:,38) -! -!CARBO/N2O5=0.0 -! -!CARBO/HONO=0.0 -! -!CARBO/HNO3=0.0 -! -!CARBO/HNO4=0.0 -! -!CARBO/NH3=0.0 -! -!CARBO/SO2=0.0 -! -!CARBO/SULF=0.0 -! -!CARBO/CO=0.0 -! -!CARBO/OH=+0.00835*K057*<ALKA>+0.16919*K064*<CARBO>-K064*<CARBO>+0.21863*K067*< -!PAN> - PJAC(:,25,14)=+0.00835*TPK%K057(:)*PCONC(:,18)+0.16919*TPK%K064(:)*PCONC(:,25)& -&-TPK%K064(:)*PCONC(:,25)+0.21863*TPK%K067(:)*PCONC(:,27) -! -!CARBO/HO2=0.0 -! -!CARBO/CH4=0.0 -! -!CARBO/ETH=0.0 -! -!CARBO/ALKA=+0.00835*K057*<OH> - PJAC(:,25,18)=+0.00835*TPK%K057(:)*PCONC(:,14) -! -!CARBO/ALKE=+0.00000*K073*<NO3>+0.00000*K076*<O3> - PJAC(:,25,19)=+0.00000*TPK%K073(:)*PCONC(:,5)+0.00000*TPK%K076(:)*PCONC(:,1) -! -!CARBO/BIO=+0.13255*K053*<O3P>+0.91741*K074*<NO3>+0.39754*K077*<O3> - PJAC(:,25,20)=+0.13255*TPK%K053(:)*TPK%O3P(:)+0.91741*TPK%K074(:)*PCONC(:,5)+0& -&.39754*TPK%K077(:)*PCONC(:,1) -! -!CARBO/ARO=0.0 -! -!CARBO/HCHO=0.0 -! -!CARBO/ALD=0.0 -! -!CARBO/KET=0.0 -! -!CARBO/CARBO=-K016-K054*<O3P>+0.16919*K064*<OH>-K064*<OH>+0.10530*K071*<NO3>-K0 -!71*<NO3>+1.07583*K078*<O3>-K078*<O3> - PJAC(:,25,25)=-TPK%K016(:)-TPK%K054(:)*TPK%O3P(:)+0.16919*TPK%K064(:)*PCONC(:,& -&14)-TPK%K064(:)*PCONC(:,14)+0.10530*TPK%K071(:)*PCONC(:,5)-TPK%K071(:)*PCONC(:& -&,5)+1.07583*TPK%K078(:)*PCONC(:,1)-TPK%K078(:)*PCONC(:,1) -! -!CARBO/ONIT=0.0 -! -!CARBO/PAN=+0.21863*K067*<OH> - PJAC(:,25,27)=+0.21863*TPK%K067(:)*PCONC(:,14) -! -!CARBO/OP1=0.0 -! -!CARBO/OP2=0.0 -! -!CARBO/ORA2=0.0 -! -!CARBO/MO2=+0.07976*K102*<ALKAP>+0.56064*K104*<BIOP>+1.99461*K105*<AROP>+0.1538 -!7*K106*<CARBOP> - PJAC(:,25,31)=+0.07976*TPK%K102(:)*PCONC(:,32)+0.56064*TPK%K104(:)*PCONC(:,34)& -&+1.99461*TPK%K105(:)*PCONC(:,37)+0.15387*TPK%K106(:)*PCONC(:,38) -! -!CARBO/ALKAP=+0.03407*K088*<NO>+0.07976*K102*<MO2>+0.06954*K108*<CARBOP>+0.0353 -!1*K117*<NO3> - PJAC(:,25,32)=+0.03407*TPK%K088(:)*PCONC(:,3)+0.07976*TPK%K102(:)*PCONC(:,31)+& -&0.06954*TPK%K108(:)*PCONC(:,38)+0.03531*TPK%K117(:)*PCONC(:,5) -! -!CARBO/ALKEP=0.0 -! -!CARBO/BIOP=+0.45463*K090*<NO>+0.56064*K104*<MO2>+0.78591*K110*<CARBOP>+0.61160 -!*K119*<NO3> - PJAC(:,25,34)=+0.45463*TPK%K090(:)*PCONC(:,3)+0.56064*TPK%K104(:)*PCONC(:,31)+& -&0.78591*TPK%K110(:)*PCONC(:,38)+0.61160*TPK%K119(:)*PCONC(:,5) -! -!CARBO/PHO=0.0 -! -!CARBO/ADD=0.0 -! -!CARBO/AROP=+2.06993*K091*<NO>+1.99461*K105*<MO2>+1.99455*K111*<CARBOP>+2.81904 -!*K120*<NO3> - PJAC(:,25,37)=+2.06993*TPK%K091(:)*PCONC(:,3)+1.99461*TPK%K105(:)*PCONC(:,31)+& -&1.99455*TPK%K111(:)*PCONC(:,38)+2.81904*TPK%K120(:)*PCONC(:,5) -! -!CARBO/CARBOP=+0.08670*K092*<NO>+0.15387*K106*<MO2>+0.06954*K108*<ALKAP>+0.7859 -!1*K110*<BIOP>+1.99455*K111*<AROP>+0.10777*K112*<CARBOP>+0.10777*K112*<CARBOP>+ -!0.03455*K121*<NO3> - PJAC(:,25,38)=+0.08670*TPK%K092(:)*PCONC(:,3)+0.15387*TPK%K106(:)*PCONC(:,31)+& -&0.06954*TPK%K108(:)*PCONC(:,32)+0.78591*TPK%K110(:)*PCONC(:,34)+1.99455*TPK%K1& -&11(:)*PCONC(:,37)+0.10777*TPK%K112(:)*PCONC(:,38)+0.10777*TPK%K112(:)*PCONC(:,& -&38)+0.03455*TPK%K121(:)*PCONC(:,5) -! -!CARBO/OLN=0.0 -! -!CARBO/XO2=0.0 -! -!ONIT/O3=0.0 -! -!ONIT/H2O2=0.0 -! -!ONIT/NO=+0.08459*K088*<ALKAP>+0.15300*K090*<BIOP>+0.04885*K091*<AROP>+0.18401* -!K093*<OLN> - PJAC(:,26,3)=+0.08459*TPK%K088(:)*PCONC(:,32)+0.15300*TPK%K090(:)*PCONC(:,34)+& -&0.04885*TPK%K091(:)*PCONC(:,37)+0.18401*TPK%K093(:)*PCONC(:,39) -! -!ONIT/NO2=+K080*<PHO> - PJAC(:,26,4)=+TPK%K080(:)*PCONC(:,35) -! -!ONIT/NO3=+0.60*K075*<PAN>+0.25928*K122*<OLN> - PJAC(:,26,5)=+0.60*TPK%K075(:)*PCONC(:,27)+0.25928*TPK%K122(:)*PCONC(:,39) -! -!ONIT/N2O5=0.0 -! -!ONIT/HONO=0.0 -! -!ONIT/HNO3=0.0 -! -!ONIT/HNO4=0.0 -! -!ONIT/NH3=0.0 -! -!ONIT/SO2=0.0 -! -!ONIT/SULF=0.0 -! -!ONIT/CO=0.0 -! -!ONIT/OH=-K068*<ONIT> - PJAC(:,26,14)=-TPK%K068(:)*PCONC(:,26) -! -!ONIT/HO2=+K100*<OLN> - PJAC(:,26,15)=+TPK%K100(:)*PCONC(:,39) -! -!ONIT/CH4=0.0 -! -!ONIT/ETH=0.0 -! -!ONIT/ALKA=0.0 -! -!ONIT/ALKE=0.0 -! -!ONIT/BIO=0.0 -! -!ONIT/ARO=0.0 -! -!ONIT/HCHO=0.0 -! -!ONIT/ALD=0.0 -! -!ONIT/KET=0.0 -! -!ONIT/CARBO=0.0 -! -!ONIT/ONIT=-K017-K068*<OH> - PJAC(:,26,26)=-TPK%K017(:)-TPK%K068(:)*PCONC(:,14) -! -!ONIT/PAN=+0.60*K075*<NO3> - PJAC(:,26,27)=+0.60*TPK%K075(:)*PCONC(:,5) -! -!ONIT/OP1=0.0 -! -!ONIT/OP2=0.0 -! -!ONIT/ORA2=0.0 -! -!ONIT/MO2=+0.67560*K107*<OLN> - PJAC(:,26,31)=+0.67560*TPK%K107(:)*PCONC(:,39) -! -!ONIT/ALKAP=+0.08459*K088*<NO> - PJAC(:,26,32)=+0.08459*TPK%K088(:)*PCONC(:,3) -! -!ONIT/ALKEP=0.0 -! -!ONIT/BIOP=+0.15300*K090*<NO> - PJAC(:,26,34)=+0.15300*TPK%K090(:)*PCONC(:,3) -! -!ONIT/PHO=+K080*<NO2> - PJAC(:,26,35)=+TPK%K080(:)*PCONC(:,4) -! -!ONIT/ADD=0.0 -! -!ONIT/AROP=+0.04885*K091*<NO> - PJAC(:,26,37)=+0.04885*TPK%K091(:)*PCONC(:,3) -! -!ONIT/CARBOP=+0.66562*K113*<OLN> - PJAC(:,26,38)=+0.66562*TPK%K113(:)*PCONC(:,39) -! -!ONIT/OLN=+0.18401*K093*<NO>+K100*<HO2>+0.67560*K107*<MO2>+0.66562*K113*<CARBOP -!>+2.00*K114*<OLN>+2.00*K114*<OLN>+0.00000*K115*<OLN>+0.00000*K115*<OLN>+0.2592 -!8*K122*<NO3> - PJAC(:,26,39)=+0.18401*TPK%K093(:)*PCONC(:,3)+TPK%K100(:)*PCONC(:,15)+0.67560*& -&TPK%K107(:)*PCONC(:,31)+0.66562*TPK%K113(:)*PCONC(:,38)+2.00*TPK%K114(:)*PCONC& -&(:,39)+2.00*TPK%K114(:)*PCONC(:,39)+0.00000*TPK%K115(:)*PCONC(:,39)+0.00000*TP& -&K%K115(:)*PCONC(:,39)+0.25928*TPK%K122(:)*PCONC(:,5) -! -!ONIT/XO2=0.0 -! -!PAN/O3=+0.30000*K079*<PAN>-K079*<PAN> - PJAC(:,27,1)=+0.30000*TPK%K079(:)*PCONC(:,27)-TPK%K079(:)*PCONC(:,27) -! -!PAN/H2O2=0.0 -! -!PAN/NO=0.0 -! -!PAN/NO2=+1.00000*K085*<CARBOP> - PJAC(:,27,4)=+1.00000*TPK%K085(:)*PCONC(:,38) -! -!PAN/NO3=+0.40000*K075*<PAN>-K075*<PAN> - PJAC(:,27,5)=+0.40000*TPK%K075(:)*PCONC(:,27)-TPK%K075(:)*PCONC(:,27) -! -!PAN/N2O5=0.0 -! -!PAN/HONO=0.0 -! -!PAN/HNO3=0.0 -! -!PAN/HNO4=0.0 -! -!PAN/NH3=0.0 -! -!PAN/SO2=0.0 -! -!PAN/SULF=0.0 -! -!PAN/CO=0.0 -! -!PAN/OH=+0.28107*K067*<PAN>-K067*<PAN> - PJAC(:,27,14)=+0.28107*TPK%K067(:)*PCONC(:,27)-TPK%K067(:)*PCONC(:,27) -! -!PAN/HO2=0.0 -! -!PAN/CH4=0.0 -! -!PAN/ETH=0.0 -! -!PAN/ALKA=0.0 -! -!PAN/ALKE=0.0 -! -!PAN/BIO=0.0 -! -!PAN/ARO=0.0 -! -!PAN/HCHO=0.0 -! -!PAN/ALD=0.0 -! -!PAN/KET=0.0 -! -!PAN/CARBO=0.0 -! -!PAN/ONIT=0.0 -! -!PAN/PAN=+0.28107*K067*<OH>-K067*<OH>+0.40000*K075*<NO3>-K075*<NO3>+0.30000*K07 -!9*<O3>-K079*<O3>-K086 - PJAC(:,27,27)=+0.28107*TPK%K067(:)*PCONC(:,14)-TPK%K067(:)*PCONC(:,14)+0.40000& -&*TPK%K075(:)*PCONC(:,5)-TPK%K075(:)*PCONC(:,5)+0.30000*TPK%K079(:)*PCONC(:,1)-& -&TPK%K079(:)*PCONC(:,1)-TPK%K086(:) -! -!PAN/OP1=0.0 -! -!PAN/OP2=0.0 -! -!PAN/ORA2=0.0 -! -!PAN/MO2=0.0 -! -!PAN/ALKAP=0.0 -! -!PAN/ALKEP=0.0 -! -!PAN/BIOP=0.0 -! -!PAN/PHO=0.0 -! -!PAN/ADD=0.0 -! -!PAN/AROP=0.0 -! -!PAN/CARBOP=+1.00000*K085*<NO2> - PJAC(:,27,38)=+1.00000*TPK%K085(:)*PCONC(:,4) -! -!PAN/OLN=0.0 -! -!PAN/XO2=0.0 -! -!OP1/O3=0.0 -! -!OP1/H2O2=0.0 -! -!OP1/NO=0.0 -! -!OP1/NO2=0.0 -! -!OP1/NO3=0.0 -! -!OP1/N2O5=0.0 -! -!OP1/HONO=0.0 -! -!OP1/HNO3=0.0 -! -!OP1/HNO4=0.0 -! -!OP1/NH3=0.0 -! -!OP1/SO2=0.0 -! -!OP1/SULF=0.0 -! -!OP1/CO=0.0 -! -!OP1/OH=-K065*<OP1> - PJAC(:,28,14)=-TPK%K065(:)*PCONC(:,28) -! -!OP1/HO2=+K094*<MO2> - PJAC(:,28,15)=+TPK%K094(:)*PCONC(:,31) -! -!OP1/CH4=0.0 -! -!OP1/ETH=0.0 -! -!OP1/ALKA=0.0 -! -!OP1/ALKE=0.0 -! -!OP1/BIO=0.0 -! -!OP1/ARO=0.0 -! -!OP1/HCHO=0.0 -! -!OP1/ALD=0.0 -! -!OP1/KET=0.0 -! -!OP1/CARBO=0.0 -! -!OP1/ONIT=0.0 -! -!OP1/PAN=0.0 -! -!OP1/OP1=-K013-K065*<OH> - PJAC(:,28,28)=-TPK%K013(:)-TPK%K065(:)*PCONC(:,14) -! -!OP1/OP2=0.0 -! -!OP1/ORA2=0.0 -! -!OP1/MO2=+K094*<HO2> - PJAC(:,28,31)=+TPK%K094(:)*PCONC(:,15) -! -!OP1/ALKAP=0.0 -! -!OP1/ALKEP=0.0 -! -!OP1/BIOP=0.0 -! -!OP1/PHO=0.0 -! -!OP1/ADD=0.0 -! -!OP1/AROP=0.0 -! -!OP1/CARBOP=0.0 -! -!OP1/OLN=0.0 -! -!OP1/XO2=0.0 -! -!OP2/O3=+0.10149*K078*<CARBO> - PJAC(:,29,1)=+0.10149*TPK%K078(:)*PCONC(:,25) -! -!OP2/H2O2=0.0 -! -!OP2/NO=0.0 -! -!OP2/NO2=0.0 -! -!OP2/NO3=0.0 -! -!OP2/N2O5=0.0 -! -!OP2/HONO=0.0 -! -!OP2/HNO3=0.0 -! -!OP2/HNO4=0.0 -! -!OP2/NH3=0.0 -! -!OP2/SO2=0.0 -! -!OP2/SULF=0.0 -! -!OP2/CO=0.0 -! -!OP2/OH=-K066*<OP2> - PJAC(:,29,14)=-TPK%K066(:)*PCONC(:,29) -! -!OP2/HO2=+1.00524*K095*<ALKAP>+1.00524*K096*<ALKEP>+1.00524*K097*<BIOP>+1.00524 -!*K098*<AROP>+0.80904*K099*<CARBOP>+1.00524*K123*<XO2> - PJAC(:,29,15)=+1.00524*TPK%K095(:)*PCONC(:,32)+1.00524*TPK%K096(:)*PCONC(:,33)& -&+1.00524*TPK%K097(:)*PCONC(:,34)+1.00524*TPK%K098(:)*PCONC(:,37)+0.80904*TPK%K& -&099(:)*PCONC(:,38)+1.00524*TPK%K123(:)*PCONC(:,40) -! -!OP2/CH4=0.0 -! -!OP2/ETH=0.0 -! -!OP2/ALKA=0.0 -! -!OP2/ALKE=0.0 -! -!OP2/BIO=0.0 -! -!OP2/ARO=0.0 -! -!OP2/HCHO=0.0 -! -!OP2/ALD=0.0 -! -!OP2/KET=0.0 -! -!OP2/CARBO=+0.10149*K078*<O3> - PJAC(:,29,25)=+0.10149*TPK%K078(:)*PCONC(:,1) -! -!OP2/ONIT=0.0 -! -!OP2/PAN=0.0 -! -!OP2/OP1=0.0 -! -!OP2/OP2=-K014-K066*<OH> - PJAC(:,29,29)=-TPK%K014(:)-TPK%K066(:)*PCONC(:,14) -! -!OP2/ORA2=0.0 -! -!OP2/MO2=0.0 -! -!OP2/ALKAP=+1.00524*K095*<HO2> - PJAC(:,29,32)=+1.00524*TPK%K095(:)*PCONC(:,15) -! -!OP2/ALKEP=+1.00524*K096*<HO2> - PJAC(:,29,33)=+1.00524*TPK%K096(:)*PCONC(:,15) -! -!OP2/BIOP=+1.00524*K097*<HO2> - PJAC(:,29,34)=+1.00524*TPK%K097(:)*PCONC(:,15) -! -!OP2/PHO=0.0 -! -!OP2/ADD=0.0 -! -!OP2/AROP=+1.00524*K098*<HO2> - PJAC(:,29,37)=+1.00524*TPK%K098(:)*PCONC(:,15) -! -!OP2/CARBOP=+0.80904*K099*<HO2> - PJAC(:,29,38)=+0.80904*TPK%K099(:)*PCONC(:,15) -! -!OP2/OLN=0.0 -! -!OP2/XO2=+1.00524*K123*<HO2> - PJAC(:,29,40)=+1.00524*TPK%K123(:)*PCONC(:,15) -! -!ORA2/O3=+0.08143*K076*<ALKE>+0.00000*K077*<BIO>+0.20595*K078*<CARBO> - PJAC(:,30,1)=+0.08143*TPK%K076(:)*PCONC(:,19)+0.00000*TPK%K077(:)*PCONC(:,20)+& -&0.20595*TPK%K078(:)*PCONC(:,25) -! -!ORA2/H2O2=0.0 -! -!ORA2/NO=0.0 -! -!ORA2/NO2=0.0 -! -!ORA2/NO3=0.0 -! -!ORA2/N2O5=0.0 -! -!ORA2/HONO=0.0 -! -!ORA2/HNO3=0.0 -! -!ORA2/HNO4=0.0 -! -!ORA2/NH3=0.0 -! -!ORA2/SO2=0.0 -! -!ORA2/SULF=0.0 -! -!ORA2/CO=0.0 -! -!ORA2/OH=0.0 -! -!ORA2/HO2=+0.17307*K099*<CARBOP> - PJAC(:,30,15)=+0.17307*TPK%K099(:)*PCONC(:,38) -! -!ORA2/CH4=0.0 -! -!ORA2/ETH=0.0 -! -!ORA2/ALKA=0.0 -! -!ORA2/ALKE=+0.08143*K076*<O3> - PJAC(:,30,19)=+0.08143*TPK%K076(:)*PCONC(:,1) -! -!ORA2/BIO=+0.00000*K077*<O3> - PJAC(:,30,20)=+0.00000*TPK%K077(:)*PCONC(:,1) -! -!ORA2/ARO=0.0 -! -!ORA2/HCHO=0.0 -! -!ORA2/ALD=0.0 -! -!ORA2/KET=0.0 -! -!ORA2/CARBO=+0.20595*K078*<O3> - PJAC(:,30,25)=+0.20595*TPK%K078(:)*PCONC(:,1) -! -!ORA2/ONIT=0.0 -! -!ORA2/PAN=0.0 -! -!ORA2/OP1=0.0 -! -!ORA2/OP2=0.0 -! -!ORA2/ORA2=0.0 -! -!ORA2/MO2=+0.13684*K106*<CARBOP> - PJAC(:,30,31)=+0.13684*TPK%K106(:)*PCONC(:,38) -! -!ORA2/ALKAP=+0.49810*K108*<CARBOP> - PJAC(:,30,32)=+0.49810*TPK%K108(:)*PCONC(:,38) -! -!ORA2/ALKEP=+0.49922*K109*<CARBOP> - PJAC(:,30,33)=+0.49922*TPK%K109(:)*PCONC(:,38) -! -!ORA2/BIOP=+0.49400*K110*<CARBOP> - PJAC(:,30,34)=+0.49400*TPK%K110(:)*PCONC(:,38) -! -!ORA2/PHO=0.0 -! -!ORA2/ADD=0.0 -! -!ORA2/AROP=0.0 -! -!ORA2/CARBOP=+0.17307*K099*<HO2>+0.13684*K106*<MO2>+0.49810*K108*<ALKAP>+0.4992 -!2*K109*<ALKEP>+0.49400*K110*<BIOP>+0.09955*K112*<CARBOP>+0.09955*K112*<CARBOP> -!+0.48963*K113*<OLN> - PJAC(:,30,38)=+0.17307*TPK%K099(:)*PCONC(:,15)+0.13684*TPK%K106(:)*PCONC(:,31)& -&+0.49810*TPK%K108(:)*PCONC(:,32)+0.49922*TPK%K109(:)*PCONC(:,33)+0.49400*TPK%K& -&110(:)*PCONC(:,34)+0.09955*TPK%K112(:)*PCONC(:,38)+0.09955*TPK%K112(:)*PCONC(:& -&,38)+0.48963*TPK%K113(:)*PCONC(:,39) -! -!ORA2/OLN=+0.48963*K113*<CARBOP> - PJAC(:,30,39)=+0.48963*TPK%K113(:)*PCONC(:,38) -! -!ORA2/XO2=0.0 -! -!MO2/O3=+0.13966*K076*<ALKE>+0.03000*K077*<BIO> - PJAC(:,31,1)=+0.13966*TPK%K076(:)*PCONC(:,19)+0.03000*TPK%K077(:)*PCONC(:,20) -! -!MO2/H2O2=0.0 -! -!MO2/NO=-K087*<MO2>+0.09016*K088*<ALKAP>+0.78134*K092*<CARBOP> - PJAC(:,31,3)=-TPK%K087(:)*PCONC(:,31)+0.09016*TPK%K088(:)*PCONC(:,32)+0.78134*& -&TPK%K092(:)*PCONC(:,38) -! -!MO2/NO2=0.0 -! -!MO2/NO3=-K116*<MO2>+0.09731*K117*<ALKAP>+0.91910*K121*<CARBOP> - PJAC(:,31,5)=-TPK%K116(:)*PCONC(:,31)+0.09731*TPK%K117(:)*PCONC(:,32)+0.91910*& -&TPK%K121(:)*PCONC(:,38) -! -!MO2/N2O5=0.0 -! -!MO2/HONO=0.0 -! -!MO2/HNO3=0.0 -! -!MO2/HNO4=0.0 -! -!MO2/NH3=0.0 -! -!MO2/SO2=0.0 -! -!MO2/SULF=0.0 -! -!MO2/CO=0.0 -! -!MO2/OH=+K055*<CH4>+0.65*K065*<OP1> - PJAC(:,31,14)=+TPK%K055(:)*PCONC(:,16)+0.65*TPK%K065(:)*PCONC(:,28) -! -!MO2/HO2=-K094*<MO2> - PJAC(:,31,15)=-TPK%K094(:)*PCONC(:,31) -! -!MO2/CH4=+K055*<OH> - PJAC(:,31,16)=+TPK%K055(:)*PCONC(:,14) -! -!MO2/ETH=0.0 -! -!MO2/ALKA=0.0 -! -!MO2/ALKE=+0.13966*K076*<O3> - PJAC(:,31,19)=+0.13966*TPK%K076(:)*PCONC(:,1) -! -!MO2/BIO=+0.03000*K077*<O3> - PJAC(:,31,20)=+0.03000*TPK%K077(:)*PCONC(:,1) -! -!MO2/ARO=0.0 -! -!MO2/HCHO=0.0 -! -!MO2/ALD=+K012 - PJAC(:,31,23)=+TPK%K012(:) -! -!MO2/KET=0.0 -! -!MO2/CARBO=0.0 -! -!MO2/ONIT=0.0 -! -!MO2/PAN=0.0 -! -!MO2/OP1=+0.65*K065*<OH> - PJAC(:,31,28)=+0.65*TPK%K065(:)*PCONC(:,14) -! -!MO2/OP2=+0.03795*K014 - PJAC(:,31,29)=+0.03795*TPK%K014(:) -! -!MO2/ORA2=0.0 -! -!MO2/MO2=-K087*<NO>-K094*<HO2>-K101*<MO2>-K101*<MO2>-K101*<MO2>-K101*<MO2>+0.01 -!390*K102*<ALKAP>-K102*<ALKAP>-K103*<ALKEP>-K104*<BIOP>-K105*<AROP>+0.56031*K10 -!6*<CARBOP>-K106*<CARBOP>-K107*<OLN>-K116*<NO3>-K124*<XO2> - PJAC(:,31,31)=-TPK%K087(:)*PCONC(:,3)-TPK%K094(:)*PCONC(:,15)-TPK%K101(:)*PCON& -&C(:,31)-TPK%K101(:)*PCONC(:,31)-TPK%K101(:)*PCONC(:,31)-TPK%K101(:)*PCONC(:,31& -&)+0.01390*TPK%K102(:)*PCONC(:,32)-TPK%K102(:)*PCONC(:,32)-TPK%K103(:)*PCONC(:,& -&33)-TPK%K104(:)*PCONC(:,34)-TPK%K105(:)*PCONC(:,37)+0.56031*TPK%K106(:)*PCONC(& -&:,38)-TPK%K106(:)*PCONC(:,38)-TPK%K107(:)*PCONC(:,39)-TPK%K116(:)*PCONC(:,5)-T& -&PK%K124(:)*PCONC(:,40) -! -!MO2/ALKAP=+0.09016*K088*<NO>+0.01390*K102*<MO2>-K102*<MO2>+0.51480*K108*<CARBO -!P>+0.09731*K117*<NO3> - PJAC(:,31,32)=+0.09016*TPK%K088(:)*PCONC(:,3)+0.01390*TPK%K102(:)*PCONC(:,31)-& -&TPK%K102(:)*PCONC(:,31)+0.51480*TPK%K108(:)*PCONC(:,38)+0.09731*TPK%K117(:)*PC& -&ONC(:,5) -! -!MO2/ALKEP=-K103*<MO2>+0.50078*K109*<CARBOP> - PJAC(:,31,33)=-TPK%K103(:)*PCONC(:,31)+0.50078*TPK%K109(:)*PCONC(:,38) -! -!MO2/BIOP=-K104*<MO2>+0.50600*K110*<CARBOP> - PJAC(:,31,34)=-TPK%K104(:)*PCONC(:,31)+0.50600*TPK%K110(:)*PCONC(:,38) -! -!MO2/PHO=0.0 -! -!MO2/ADD=0.0 -! -!MO2/AROP=-K105*<MO2>+K111*<CARBOP> - PJAC(:,31,37)=-TPK%K105(:)*PCONC(:,31)+TPK%K111(:)*PCONC(:,38) -! -!MO2/CARBOP=+0.78134*K092*<NO>+0.56031*K106*<MO2>-K106*<MO2>+0.51480*K108*<ALKA -!P>+0.50078*K109*<ALKEP>+0.50600*K110*<BIOP>+K111*<AROP>+1.66702*K112*<CARBOP>+ -!1.66702*K112*<CARBOP>+0.51037*K113*<OLN>+0.91910*K121*<NO3>+K125*<XO2> - PJAC(:,31,38)=+0.78134*TPK%K092(:)*PCONC(:,3)+0.56031*TPK%K106(:)*PCONC(:,31)-& -&TPK%K106(:)*PCONC(:,31)+0.51480*TPK%K108(:)*PCONC(:,32)+0.50078*TPK%K109(:)*PC& -&ONC(:,33)+0.50600*TPK%K110(:)*PCONC(:,34)+TPK%K111(:)*PCONC(:,37)+1.66702*TPK%& -&K112(:)*PCONC(:,38)+1.66702*TPK%K112(:)*PCONC(:,38)+0.51037*TPK%K113(:)*PCONC(& -&:,39)+0.91910*TPK%K121(:)*PCONC(:,5)+TPK%K125(:)*PCONC(:,40) -! -!MO2/OLN=-K107*<MO2>+0.51037*K113*<CARBOP> - PJAC(:,31,39)=-TPK%K107(:)*PCONC(:,31)+0.51037*TPK%K113(:)*PCONC(:,38) -! -!MO2/XO2=-K124*<MO2>+K125*<CARBOP> - PJAC(:,31,40)=-TPK%K124(:)*PCONC(:,31)+TPK%K125(:)*PCONC(:,38) -! -!ALKAP/O3=+0.09815*K076*<ALKE>+0.00000*K077*<BIO> - PJAC(:,32,1)=+0.09815*TPK%K076(:)*PCONC(:,19)+0.00000*TPK%K077(:)*PCONC(:,20) -! -!ALKAP/H2O2=0.0 -! -!ALKAP/NO=+0.08187*K088*<ALKAP>-K088*<ALKAP> - PJAC(:,32,3)=+0.08187*TPK%K088(:)*PCONC(:,32)-TPK%K088(:)*PCONC(:,32) -! -!ALKAP/NO2=0.0 -! -!ALKAP/NO3=+0.08994*K117*<ALKAP>-K117*<ALKAP> - PJAC(:,32,5)=+0.08994*TPK%K117(:)*PCONC(:,32)-TPK%K117(:)*PCONC(:,32) -! -!ALKAP/N2O5=0.0 -! -!ALKAP/HONO=0.0 -! -!ALKAP/HNO3=0.0 -! -!ALKAP/HNO4=0.0 -! -!ALKAP/NH3=0.0 -! -!ALKAP/SO2=0.0 -! -!ALKAP/SULF=0.0 -! -!ALKAP/CO=0.0 -! -!ALKAP/OH=+K056*<ETH>+0.87811*K057*<ALKA>+0.40341*K066*<OP2>+1.00000*K068*<ONIT -!> - PJAC(:,32,14)=+TPK%K056(:)*PCONC(:,17)+0.87811*TPK%K057(:)*PCONC(:,18)+0.40341& -&*TPK%K066(:)*PCONC(:,29)+1.00000*TPK%K068(:)*PCONC(:,26) -! -!ALKAP/HO2=-K095*<ALKAP> - PJAC(:,32,15)=-TPK%K095(:)*PCONC(:,32) -! -!ALKAP/CH4=0.0 -! -!ALKAP/ETH=+K056*<OH> - PJAC(:,32,17)=+TPK%K056(:)*PCONC(:,14) -! -!ALKAP/ALKA=+0.87811*K057*<OH> - PJAC(:,32,18)=+0.87811*TPK%K057(:)*PCONC(:,14) -! -!ALKAP/ALKE=+0.09815*K076*<O3> - PJAC(:,32,19)=+0.09815*TPK%K076(:)*PCONC(:,1) -! -!ALKAP/BIO=+0.00000*K077*<O3> - PJAC(:,32,20)=+0.00000*TPK%K077(:)*PCONC(:,1) -! -!ALKAP/ARO=0.0 -! -!ALKAP/HCHO=0.0 -! -!ALKAP/ALD=0.0 -! -!ALKAP/KET=+1.00000*K015 - PJAC(:,32,24)=+1.00000*TPK%K015(:) -! -!ALKAP/CARBO=0.0 -! -!ALKAP/ONIT=+1.00000*K068*<OH> - PJAC(:,32,26)=+1.00000*TPK%K068(:)*PCONC(:,14) -! -!ALKAP/PAN=0.0 -! -!ALKAP/OP1=0.0 -! -!ALKAP/OP2=+0.40341*K066*<OH> - PJAC(:,32,29)=+0.40341*TPK%K066(:)*PCONC(:,14) -! -!ALKAP/ORA2=0.0 -! -!ALKAP/MO2=+0.00385*K102*<ALKAP>-K102*<ALKAP> - PJAC(:,32,31)=+0.00385*TPK%K102(:)*PCONC(:,32)-TPK%K102(:)*PCONC(:,32) -! -!ALKAP/ALKAP=+0.08187*K088*<NO>-K088*<NO>-K095*<HO2>+0.00385*K102*<MO2>-K102*<M -!O2>+0.00828*K108*<CARBOP>-K108*<CARBOP>+0.08994*K117*<NO3>-K117*<NO3> - PJAC(:,32,32)=+0.08187*TPK%K088(:)*PCONC(:,3)-TPK%K088(:)*PCONC(:,3)-TPK%K095(& -&:)*PCONC(:,15)+0.00385*TPK%K102(:)*PCONC(:,31)-TPK%K102(:)*PCONC(:,31)+0.00828& -&*TPK%K108(:)*PCONC(:,38)-TPK%K108(:)*PCONC(:,38)+0.08994*TPK%K117(:)*PCONC(:,5& -&)-TPK%K117(:)*PCONC(:,5) -! -!ALKAP/ALKEP=0.0 -! -!ALKAP/BIOP=0.0 -! -!ALKAP/PHO=0.0 -! -!ALKAP/ADD=0.0 -! -!ALKAP/AROP=0.0 -! -!ALKAP/CARBOP=+0.00828*K108*<ALKAP>-K108*<ALKAP> - PJAC(:,32,38)=+0.00828*TPK%K108(:)*PCONC(:,32)-TPK%K108(:)*PCONC(:,32) -! -!ALKAP/OLN=0.0 -! -!ALKAP/XO2=0.0 -! -!ALKEP/O3=0.0 -! -!ALKEP/H2O2=0.0 -! -!ALKEP/NO=-K089*<ALKEP> - PJAC(:,33,3)=-TPK%K089(:)*PCONC(:,33) -! -!ALKEP/NO2=0.0 -! -!ALKEP/NO3=-K118*<ALKEP> - PJAC(:,33,5)=-TPK%K118(:)*PCONC(:,33) -! -!ALKEP/N2O5=0.0 -! -!ALKEP/HONO=0.0 -! -!ALKEP/HNO3=0.0 -! -!ALKEP/HNO4=0.0 -! -!ALKEP/NH3=0.0 -! -!ALKEP/SO2=0.0 -! -!ALKEP/SULF=0.0 -! -!ALKEP/CO=0.0 -! -!ALKEP/OH=+1.02529*K058*<ALKE> - PJAC(:,33,14)=+1.02529*TPK%K058(:)*PCONC(:,19) -! -!ALKEP/HO2=-K096*<ALKEP> - PJAC(:,33,15)=-TPK%K096(:)*PCONC(:,33) -! -!ALKEP/CH4=0.0 -! -!ALKEP/ETH=0.0 -! -!ALKEP/ALKA=0.0 -! -!ALKEP/ALKE=+1.02529*K058*<OH> - PJAC(:,33,19)=+1.02529*TPK%K058(:)*PCONC(:,14) -! -!ALKEP/BIO=0.0 -! -!ALKEP/ARO=0.0 -! -!ALKEP/HCHO=0.0 -! -!ALKEP/ALD=0.0 -! -!ALKEP/KET=0.0 -! -!ALKEP/CARBO=0.0 -! -!ALKEP/ONIT=0.0 -! -!ALKEP/PAN=0.0 -! -!ALKEP/OP1=0.0 -! -!ALKEP/OP2=0.0 -! -!ALKEP/ORA2=0.0 -! -!ALKEP/MO2=-K103*<ALKEP> - PJAC(:,33,31)=-TPK%K103(:)*PCONC(:,33) -! -!ALKEP/ALKAP=0.0 -! -!ALKEP/ALKEP=-K089*<NO>-K096*<HO2>-K103*<MO2>-K109*<CARBOP>-K118*<NO3> - PJAC(:,33,33)=-TPK%K089(:)*PCONC(:,3)-TPK%K096(:)*PCONC(:,15)-TPK%K103(:)*PCON& -&C(:,31)-TPK%K109(:)*PCONC(:,38)-TPK%K118(:)*PCONC(:,5) -! -!ALKEP/BIOP=0.0 -! -!ALKEP/PHO=0.0 -! -!ALKEP/ADD=0.0 -! -!ALKEP/AROP=0.0 -! -!ALKEP/CARBOP=-K109*<ALKEP> - PJAC(:,33,38)=-TPK%K109(:)*PCONC(:,33) -! -!ALKEP/OLN=0.0 -! -!ALKEP/XO2=0.0 -! -!BIOP/O3=0.0 -! -!BIOP/H2O2=0.0 -! -!BIOP/NO=-K090*<BIOP> - PJAC(:,34,3)=-TPK%K090(:)*PCONC(:,34) -! -!BIOP/NO2=0.0 -! -!BIOP/NO3=-K119*<BIOP> - PJAC(:,34,5)=-TPK%K119(:)*PCONC(:,34) -! -!BIOP/N2O5=0.0 -! -!BIOP/HONO=0.0 -! -!BIOP/HNO3=0.0 -! -!BIOP/HNO4=0.0 -! -!BIOP/NH3=0.0 -! -!BIOP/SO2=0.0 -! -!BIOP/SULF=0.0 -! -!BIOP/CO=0.0 -! -!BIOP/OH=+0.00000*K058*<ALKE>+1.00000*K059*<BIO> - PJAC(:,34,14)=+0.00000*TPK%K058(:)*PCONC(:,19)+1.00000*TPK%K059(:)*PCONC(:,20) -! -!BIOP/HO2=-K097*<BIOP> - PJAC(:,34,15)=-TPK%K097(:)*PCONC(:,34) -! -!BIOP/CH4=0.0 -! -!BIOP/ETH=0.0 -! -!BIOP/ALKA=0.0 -! -!BIOP/ALKE=+0.00000*K058*<OH> - PJAC(:,34,19)=+0.00000*TPK%K058(:)*PCONC(:,14) -! -!BIOP/BIO=+1.00000*K059*<OH> - PJAC(:,34,20)=+1.00000*TPK%K059(:)*PCONC(:,14) -! -!BIOP/ARO=0.0 -! -!BIOP/HCHO=0.0 -! -!BIOP/ALD=0.0 -! -!BIOP/KET=0.0 -! -!BIOP/CARBO=0.0 -! -!BIOP/ONIT=0.0 -! -!BIOP/PAN=0.0 -! -!BIOP/OP1=0.0 -! -!BIOP/OP2=0.0 -! -!BIOP/ORA2=0.0 -! -!BIOP/MO2=-K104*<BIOP> - PJAC(:,34,31)=-TPK%K104(:)*PCONC(:,34) -! -!BIOP/ALKAP=0.0 -! -!BIOP/ALKEP=0.0 -! -!BIOP/BIOP=-K090*<NO>-K097*<HO2>-K104*<MO2>-K110*<CARBOP>-K119*<NO3> - PJAC(:,34,34)=-TPK%K090(:)*PCONC(:,3)-TPK%K097(:)*PCONC(:,15)-TPK%K104(:)*PCON& -&C(:,31)-TPK%K110(:)*PCONC(:,38)-TPK%K119(:)*PCONC(:,5) -! -!BIOP/PHO=0.0 -! -!BIOP/ADD=0.0 -! -!BIOP/AROP=0.0 -! -!BIOP/CARBOP=-K110*<BIOP> - PJAC(:,34,38)=-TPK%K110(:)*PCONC(:,34) -! -!BIOP/OLN=0.0 -! -!BIOP/XO2=0.0 -! -!PHO/O3=0.0 -! -!PHO/H2O2=0.0 -! -!PHO/NO=0.0 -! -!PHO/NO2=-K080*<PHO> - PJAC(:,35,4)=-TPK%K080(:)*PCONC(:,35) -! -!PHO/NO3=+K072*<ARO> - PJAC(:,35,5)=+TPK%K072(:)*PCONC(:,21) -! -!PHO/N2O5=0.0 -! -!PHO/HONO=0.0 -! -!PHO/HNO3=0.0 -! -!PHO/HNO4=0.0 -! -!PHO/NH3=0.0 -! -!PHO/SO2=0.0 -! -!PHO/SULF=0.0 -! -!PHO/CO=0.0 -! -!PHO/OH=+0.00276*K060*<ARO> - PJAC(:,35,14)=+0.00276*TPK%K060(:)*PCONC(:,21) -! -!PHO/HO2=-K081*<PHO> - PJAC(:,35,15)=-TPK%K081(:)*PCONC(:,35) -! -!PHO/CH4=0.0 -! -!PHO/ETH=0.0 -! -!PHO/ALKA=0.0 -! -!PHO/ALKE=0.0 -! -!PHO/BIO=0.0 -! -!PHO/ARO=+0.00276*K060*<OH>+K072*<NO3> - PJAC(:,35,21)=+0.00276*TPK%K060(:)*PCONC(:,14)+TPK%K072(:)*PCONC(:,5) -! -!PHO/HCHO=0.0 -! -!PHO/ALD=0.0 -! -!PHO/KET=0.0 -! -!PHO/CARBO=0.0 -! -!PHO/ONIT=0.0 -! -!PHO/PAN=0.0 -! -!PHO/OP1=0.0 -! -!PHO/OP2=0.0 -! -!PHO/ORA2=0.0 -! -!PHO/MO2=0.0 -! -!PHO/ALKAP=0.0 -! -!PHO/ALKEP=0.0 -! -!PHO/BIOP=0.0 -! -!PHO/PHO=-K080*<NO2>-K081*<HO2> - PJAC(:,35,35)=-TPK%K080(:)*PCONC(:,4)-TPK%K081(:)*PCONC(:,15) -! -!PHO/ADD=0.0 -! -!PHO/AROP=0.0 -! -!PHO/CARBOP=0.0 -! -!PHO/OLN=0.0 -! -!PHO/XO2=0.0 -! -!ADD/O3=-K084*<ADD> - PJAC(:,36,1)=-TPK%K084(:)*PCONC(:,36) -! -!ADD/H2O2=0.0 -! -!ADD/NO=0.0 -! -!ADD/NO2=-K082*<ADD> - PJAC(:,36,4)=-TPK%K082(:)*PCONC(:,36) -! -!ADD/NO3=0.0 -! -!ADD/N2O5=0.0 -! -!ADD/HONO=0.0 -! -!ADD/HNO3=0.0 -! -!ADD/HNO4=0.0 -! -!ADD/NH3=0.0 -! -!ADD/SO2=0.0 -! -!ADD/SULF=0.0 -! -!ADD/CO=0.0 -! -!ADD/OH=+0.93968*K060*<ARO> - PJAC(:,36,14)=+0.93968*TPK%K060(:)*PCONC(:,21) -! -!ADD/HO2=0.0 -! -!ADD/CH4=0.0 -! -!ADD/ETH=0.0 -! -!ADD/ALKA=0.0 -! -!ADD/ALKE=0.0 -! -!ADD/BIO=0.0 -! -!ADD/ARO=+0.93968*K060*<OH> - PJAC(:,36,21)=+0.93968*TPK%K060(:)*PCONC(:,14) -! -!ADD/HCHO=0.0 -! -!ADD/ALD=0.0 -! -!ADD/KET=0.0 -! -!ADD/CARBO=0.0 -! -!ADD/ONIT=0.0 -! -!ADD/PAN=0.0 -! -!ADD/OP1=0.0 -! -!ADD/OP2=0.0 -! -!ADD/ORA2=0.0 -! -!ADD/MO2=0.0 -! -!ADD/ALKAP=0.0 -! -!ADD/ALKEP=0.0 -! -!ADD/BIOP=0.0 -! -!ADD/PHO=0.0 -! -!ADD/ADD=-K082*<NO2>-K083*<O2>-K084*<O3> - PJAC(:,36,36)=-TPK%K082(:)*PCONC(:,4)-TPK%K083(:)*TPK%O2(:)-TPK%K084(:)*PCONC(& -&:,1) -! -!ADD/AROP=0.0 -! -!ADD/CARBOP=0.0 -! -!ADD/OLN=0.0 -! -!ADD/XO2=0.0 -! -!AROP/O3=0.0 -! -!AROP/H2O2=0.0 -! -!AROP/NO=-K091*<AROP> - PJAC(:,37,3)=-TPK%K091(:)*PCONC(:,37) -! -!AROP/NO2=0.0 -! -!AROP/NO3=-K120*<AROP> - PJAC(:,37,5)=-TPK%K120(:)*PCONC(:,37) -! -!AROP/N2O5=0.0 -! -!AROP/HONO=0.0 -! -!AROP/HNO3=0.0 -! -!AROP/HNO4=0.0 -! -!AROP/NH3=0.0 -! -!AROP/SO2=0.0 -! -!AROP/SULF=0.0 -! -!AROP/CO=0.0 -! -!AROP/OH=0.0 -! -!AROP/HO2=-K098*<AROP> - PJAC(:,37,15)=-TPK%K098(:)*PCONC(:,37) -! -!AROP/CH4=0.0 -! -!AROP/ETH=0.0 -! -!AROP/ALKA=0.0 -! -!AROP/ALKE=0.0 -! -!AROP/BIO=0.0 -! -!AROP/ARO=0.0 -! -!AROP/HCHO=0.0 -! -!AROP/ALD=0.0 -! -!AROP/KET=0.0 -! -!AROP/CARBO=0.0 -! -!AROP/ONIT=0.0 -! -!AROP/PAN=0.0 -! -!AROP/OP1=0.0 -! -!AROP/OP2=0.0 -! -!AROP/ORA2=0.0 -! -!AROP/MO2=-K105*<AROP> - PJAC(:,37,31)=-TPK%K105(:)*PCONC(:,37) -! -!AROP/ALKAP=0.0 -! -!AROP/ALKEP=0.0 -! -!AROP/BIOP=0.0 -! -!AROP/PHO=0.0 -! -!AROP/ADD=+0.98*K083*<O2> - PJAC(:,37,36)=+0.98*TPK%K083(:)*TPK%O2(:) -! -!AROP/AROP=-K091*<NO>-K098*<HO2>-K105*<MO2>-K111*<CARBOP>-K120*<NO3> - PJAC(:,37,37)=-TPK%K091(:)*PCONC(:,3)-TPK%K098(:)*PCONC(:,15)-TPK%K105(:)*PCON& -&C(:,31)-TPK%K111(:)*PCONC(:,38)-TPK%K120(:)*PCONC(:,5) -! -!AROP/CARBOP=-K111*<AROP> - PJAC(:,37,38)=-TPK%K111(:)*PCONC(:,37) -! -!AROP/OLN=0.0 -! -!AROP/XO2=0.0 -! -!CARBOP/O3=+0.05705*K076*<ALKE>+0.17000*K077*<BIO>+0.27460*K078*<CARBO>+0.70000 -!*K079*<PAN> - PJAC(:,38,1)=+0.05705*TPK%K076(:)*PCONC(:,19)+0.17000*TPK%K077(:)*PCONC(:,20)+& -&0.27460*TPK%K078(:)*PCONC(:,25)+0.70000*TPK%K079(:)*PCONC(:,27) -! -!CARBOP/H2O2=0.0 -! -!CARBOP/NO=+0.09532*K092*<CARBOP>-K092*<CARBOP> - PJAC(:,38,3)=+0.09532*TPK%K092(:)*PCONC(:,38)-TPK%K092(:)*PCONC(:,38) -! -!CARBOP/NO2=-K085*<CARBOP> - PJAC(:,38,4)=-TPK%K085(:)*PCONC(:,38) -! -!CARBOP/NO3=+1.00000*K070*<ALD>+0.38881*K071*<CARBO>+0.03175*K121*<CARBOP>-K121 -!*<CARBOP> - PJAC(:,38,5)=+1.00000*TPK%K070(:)*PCONC(:,23)+0.38881*TPK%K071(:)*PCONC(:,25)+& -&0.03175*TPK%K121(:)*PCONC(:,38)-TPK%K121(:)*PCONC(:,38) -! -!CARBOP/N2O5=0.0 -! -!CARBOP/HONO=0.0 -! -!CARBOP/HNO3=0.0 -! -!CARBOP/HNO4=0.0 -! -!CARBOP/NH3=0.0 -! -!CARBOP/SO2=0.0 -! -!CARBOP/SULF=0.0 -! -!CARBOP/CO=0.0 -! -!CARBOP/OH=+1.00000*K062*<ALD>+1.00000*K063*<KET>+0.51419*K064*<CARBO>+0.05413* -!K066*<OP2> - PJAC(:,38,14)=+1.00000*TPK%K062(:)*PCONC(:,23)+1.00000*TPK%K063(:)*PCONC(:,24)& -&+0.51419*TPK%K064(:)*PCONC(:,25)+0.05413*TPK%K066(:)*PCONC(:,29) -! -!CARBOP/HO2=-K099*<CARBOP> - PJAC(:,38,15)=-TPK%K099(:)*PCONC(:,38) -! -!CARBOP/CH4=0.0 -! -!CARBOP/ETH=0.0 -! -!CARBOP/ALKA=0.0 -! -!CARBOP/ALKE=+0.05705*K076*<O3> - PJAC(:,38,19)=+0.05705*TPK%K076(:)*PCONC(:,1) -! -!CARBOP/BIO=+0.17000*K077*<O3> - PJAC(:,38,20)=+0.17000*TPK%K077(:)*PCONC(:,1) -! -!CARBOP/ARO=0.0 -! -!CARBOP/HCHO=0.0 -! -!CARBOP/ALD=+1.00000*K062*<OH>+1.00000*K070*<NO3> - PJAC(:,38,23)=+1.00000*TPK%K062(:)*PCONC(:,14)+1.00000*TPK%K070(:)*PCONC(:,5) -! -!CARBOP/KET=+1.00000*K015+1.00000*K063*<OH> - PJAC(:,38,24)=+1.00000*TPK%K015(:)+1.00000*TPK%K063(:)*PCONC(:,14) -! -!CARBOP/CARBO=+0.69622*K016+0.51419*K064*<OH>+0.38881*K071*<NO3>+0.27460*K078*< -!O3> - PJAC(:,38,25)=+0.69622*TPK%K016(:)+0.51419*TPK%K064(:)*PCONC(:,14)+0.38881*TPK& -&%K071(:)*PCONC(:,5)+0.27460*TPK%K078(:)*PCONC(:,1) -! -!CARBOP/ONIT=0.0 -! -!CARBOP/PAN=+0.70000*K079*<O3>+1.00000*K086 - PJAC(:,38,27)=+0.70000*TPK%K079(:)*PCONC(:,1)+1.00000*TPK%K086(:) -! -!CARBOP/OP1=0.0 -! -!CARBOP/OP2=+0.05413*K066*<OH> - PJAC(:,38,29)=+0.05413*TPK%K066(:)*PCONC(:,14) -! -!CARBOP/ORA2=0.0 -! -!CARBOP/MO2=+0.05954*K106*<CARBOP>-K106*<CARBOP> - PJAC(:,38,31)=+0.05954*TPK%K106(:)*PCONC(:,38)-TPK%K106(:)*PCONC(:,38) -! -!CARBOP/ALKAP=-K108*<CARBOP> - PJAC(:,38,32)=-TPK%K108(:)*PCONC(:,38) -! -!CARBOP/ALKEP=-K109*<CARBOP> - PJAC(:,38,33)=-TPK%K109(:)*PCONC(:,38) -! -!CARBOP/BIOP=-K110*<CARBOP> - PJAC(:,38,34)=-TPK%K110(:)*PCONC(:,38) -! -!CARBOP/PHO=0.0 -! -!CARBOP/ADD=0.0 -! -!CARBOP/AROP=-K111*<CARBOP> - PJAC(:,38,37)=-TPK%K111(:)*PCONC(:,38) -! -!CARBOP/CARBOP=-K085*<NO2>+0.09532*K092*<NO>-K092*<NO>-K099*<HO2>+0.05954*K106* -!<MO2>-K106*<MO2>-K108*<ALKAP>-K109*<ALKEP>-K110*<BIOP>-K111*<AROP>+0.05821*K11 -!2*<CARBOP>+0.05821*K112*<CARBOP>-K112*<CARBOP>-K112*<CARBOP>-K112*<CARBOP>-K11 -!2*<CARBOP>-K113*<OLN>+0.03175*K121*<NO3>-K121*<NO3>-K125*<XO2> - PJAC(:,38,38)=-TPK%K085(:)*PCONC(:,4)+0.09532*TPK%K092(:)*PCONC(:,3)-TPK%K092(& -&:)*PCONC(:,3)-TPK%K099(:)*PCONC(:,15)+0.05954*TPK%K106(:)*PCONC(:,31)-TPK%K106& -&(:)*PCONC(:,31)-TPK%K108(:)*PCONC(:,32)-TPK%K109(:)*PCONC(:,33)-TPK%K110(:)*PC& -&ONC(:,34)-TPK%K111(:)*PCONC(:,37)+0.05821*TPK%K112(:)*PCONC(:,38)+0.05821*TPK%& -&K112(:)*PCONC(:,38)-TPK%K112(:)*PCONC(:,38)-TPK%K112(:)*PCONC(:,38)-TPK%K112(:& -&)*PCONC(:,38)-TPK%K112(:)*PCONC(:,38)-TPK%K113(:)*PCONC(:,39)+0.03175*TPK%K121& -&(:)*PCONC(:,5)-TPK%K121(:)*PCONC(:,5)-TPK%K125(:)*PCONC(:,40) -! -!CARBOP/OLN=-K113*<CARBOP> - PJAC(:,38,39)=-TPK%K113(:)*PCONC(:,38) -! -!CARBOP/XO2=-K125*<CARBOP> - PJAC(:,38,40)=-TPK%K125(:)*PCONC(:,38) -! -!OLN/O3=0.0 -! -!OLN/H2O2=0.0 -! -!OLN/NO=-K093*<OLN> - PJAC(:,39,3)=-TPK%K093(:)*PCONC(:,39) -! -!OLN/NO2=0.0 -! -!OLN/NO3=+0.00000*K071*<CARBO>+0.93768*K073*<ALKE>+1.00000*K074*<BIO>-K122*<OLN -!> - PJAC(:,39,5)=+0.00000*TPK%K071(:)*PCONC(:,25)+0.93768*TPK%K073(:)*PCONC(:,19)+& -&1.00000*TPK%K074(:)*PCONC(:,20)-TPK%K122(:)*PCONC(:,39) -! -!OLN/N2O5=0.0 -! -!OLN/HONO=0.0 -! -!OLN/HNO3=0.0 -! -!OLN/HNO4=0.0 -! -!OLN/NH3=0.0 -! -!OLN/SO2=0.0 -! -!OLN/SULF=0.0 -! -!OLN/CO=0.0 -! -!OLN/OH=0.0 -! -!OLN/HO2=-K100*<OLN> - PJAC(:,39,15)=-TPK%K100(:)*PCONC(:,39) -! -!OLN/CH4=0.0 -! -!OLN/ETH=0.0 -! -!OLN/ALKA=0.0 -! -!OLN/ALKE=+0.93768*K073*<NO3> - PJAC(:,39,19)=+0.93768*TPK%K073(:)*PCONC(:,5) -! -!OLN/BIO=+1.00000*K074*<NO3> - PJAC(:,39,20)=+1.00000*TPK%K074(:)*PCONC(:,5) -! -!OLN/ARO=0.0 -! -!OLN/HCHO=0.0 -! -!OLN/ALD=0.0 -! -!OLN/KET=0.0 -! -!OLN/CARBO=+0.00000*K071*<NO3> - PJAC(:,39,25)=+0.00000*TPK%K071(:)*PCONC(:,5) -! -!OLN/ONIT=0.0 -! -!OLN/PAN=0.0 -! -!OLN/OP1=0.0 -! -!OLN/OP2=0.0 -! -!OLN/ORA2=0.0 -! -!OLN/MO2=-K107*<OLN> - PJAC(:,39,31)=-TPK%K107(:)*PCONC(:,39) -! -!OLN/ALKAP=0.0 -! -!OLN/ALKEP=0.0 -! -!OLN/BIOP=0.0 -! -!OLN/PHO=0.0 -! -!OLN/ADD=0.0 -! -!OLN/AROP=0.0 -! -!OLN/CARBOP=-K113*<OLN> - PJAC(:,39,38)=-TPK%K113(:)*PCONC(:,39) -! -!OLN/OLN=-K093*<NO>-K100*<HO2>-K107*<MO2>-K113*<CARBOP>-K114*<OLN>-K114*<OLN>-K -!114*<OLN>-K114*<OLN>-K115*<OLN>-K115*<OLN>-K115*<OLN>-K115*<OLN>-K122*<NO3> - PJAC(:,39,39)=-TPK%K093(:)*PCONC(:,3)-TPK%K100(:)*PCONC(:,15)-TPK%K107(:)*PCON& -&C(:,31)-TPK%K113(:)*PCONC(:,38)-TPK%K114(:)*PCONC(:,39)-TPK%K114(:)*PCONC(:,39& -&)-TPK%K114(:)*PCONC(:,39)-TPK%K114(:)*PCONC(:,39)-TPK%K115(:)*PCONC(:,39)-TPK%& -&K115(:)*PCONC(:,39)-TPK%K115(:)*PCONC(:,39)-TPK%K115(:)*PCONC(:,39)-TPK%K122(:& -&)*PCONC(:,5) -! -!OLN/XO2=0.0 -! -!XO2/O3=+0.00000*K076*<ALKE>+0.13000*K077*<BIO> - PJAC(:,40,1)=+0.00000*TPK%K076(:)*PCONC(:,19)+0.13000*TPK%K077(:)*PCONC(:,20) -! -!XO2/H2O2=0.0 -! -!XO2/NO=+0.13007*K088*<ALKAP>+0.02563*K092*<CARBOP>-K127*<XO2> - PJAC(:,40,3)=+0.13007*TPK%K088(:)*PCONC(:,32)+0.02563*TPK%K092(:)*PCONC(:,38)-& -&TPK%K127(:)*PCONC(:,40) -! -!XO2/NO2=0.0 -! -!XO2/NO3=+0.10530*K071*<CARBO>+K075*<PAN>+0.16271*K117*<ALKAP>+0.01021*K121*<CA -!RBOP>-K128*<XO2> - PJAC(:,40,5)=+0.10530*TPK%K071(:)*PCONC(:,25)+TPK%K075(:)*PCONC(:,27)+0.16271*& -&TPK%K117(:)*PCONC(:,32)+0.01021*TPK%K121(:)*PCONC(:,38)-TPK%K128(:)*PCONC(:,40& -&) -! -!XO2/N2O5=0.0 -! -!XO2/HONO=0.0 -! -!XO2/HNO3=0.0 -! -!XO2/HNO4=0.0 -! -!XO2/NH3=0.0 -! -!XO2/SO2=0.0 -! -!XO2/SULF=0.0 -! -!XO2/CO=0.0 -! -!XO2/OH=+0.10318*K060*<ARO>+0.10162*K064*<CARBO>+0.09333*K066*<OP2>+K067*<PAN> - PJAC(:,40,14)=+0.10318*TPK%K060(:)*PCONC(:,21)+0.10162*TPK%K064(:)*PCONC(:,25)& -&+0.09333*TPK%K066(:)*PCONC(:,29)+TPK%K067(:)*PCONC(:,27) -! -!XO2/HO2=-K123*<XO2> - PJAC(:,40,15)=-TPK%K123(:)*PCONC(:,40) -! -!XO2/CH4=0.0 -! -!XO2/ETH=0.0 -! -!XO2/ALKA=0.0 -! -!XO2/ALKE=+0.00000*K076*<O3> - PJAC(:,40,19)=+0.00000*TPK%K076(:)*PCONC(:,1) -! -!XO2/BIO=+0.15*K053*<O3P>+0.13000*K077*<O3> - PJAC(:,40,20)=+0.15*TPK%K053(:)*TPK%O3P(:)+0.13000*TPK%K077(:)*PCONC(:,1) -! -!XO2/ARO=+0.10318*K060*<OH> - PJAC(:,40,21)=+0.10318*TPK%K060(:)*PCONC(:,14) -! -!XO2/HCHO=0.0 -! -!XO2/ALD=0.0 -! -!XO2/KET=0.0 -! -!XO2/CARBO=+0.10162*K064*<OH>+0.10530*K071*<NO3> - PJAC(:,40,25)=+0.10162*TPK%K064(:)*PCONC(:,14)+0.10530*TPK%K071(:)*PCONC(:,5) -! -!XO2/ONIT=0.0 -! -!XO2/PAN=+K067*<OH>+K075*<NO3> - PJAC(:,40,27)=+TPK%K067(:)*PCONC(:,14)+TPK%K075(:)*PCONC(:,5) -! -!XO2/OP1=0.0 -! -!XO2/OP2=+0.09333*K066*<OH> - PJAC(:,40,29)=+0.09333*TPK%K066(:)*PCONC(:,14) -! -!XO2/ORA2=0.0 -! -!XO2/MO2=+0.13370*K102*<ALKAP>+0.02212*K106*<CARBOP>-K124*<XO2> - PJAC(:,40,31)=+0.13370*TPK%K102(:)*PCONC(:,32)+0.02212*TPK%K106(:)*PCONC(:,38)& -&-TPK%K124(:)*PCONC(:,40) -! -!XO2/ALKAP=+0.13007*K088*<NO>+0.13370*K102*<MO2>+0.11306*K108*<CARBOP>+0.16271* -!K117*<NO3> - PJAC(:,40,32)=+0.13007*TPK%K088(:)*PCONC(:,3)+0.13370*TPK%K102(:)*PCONC(:,31)+& -&0.11306*TPK%K108(:)*PCONC(:,38)+0.16271*TPK%K117(:)*PCONC(:,5) -! -!XO2/ALKEP=0.0 -! -!XO2/BIOP=0.0 -! -!XO2/PHO=0.0 -! -!XO2/ADD=0.0 -! -!XO2/AROP=0.0 -! -!XO2/CARBOP=+0.02563*K092*<NO>+0.02212*K106*<MO2>+0.11306*K108*<ALKAP>+0.01593* -!K112*<CARBOP>+0.01593*K112*<CARBOP>+0.01021*K121*<NO3>-K125*<XO2> - PJAC(:,40,38)=+0.02563*TPK%K092(:)*PCONC(:,3)+0.02212*TPK%K106(:)*PCONC(:,31)+& -&0.11306*TPK%K108(:)*PCONC(:,32)+0.01593*TPK%K112(:)*PCONC(:,38)+0.01593*TPK%K1& -&12(:)*PCONC(:,38)+0.01021*TPK%K121(:)*PCONC(:,5)-TPK%K125(:)*PCONC(:,40) -! -!XO2/OLN=0.0 -! -!XO2/XO2=-K123*<HO2>-K124*<MO2>-K125*<CARBOP>-K126*<XO2>-K126*<XO2>-K126*<XO2>- -!K126*<XO2>-K127*<NO>-K128*<NO3> - PJAC(:,40,40)=-TPK%K123(:)*PCONC(:,15)-TPK%K124(:)*PCONC(:,31)-TPK%K125(:)*PCO& -&NC(:,38)-TPK%K126(:)*PCONC(:,40)-TPK%K126(:)*PCONC(:,40)-TPK%K126(:)*PCONC(:,4& -&0)-TPK%K126(:)*PCONC(:,40)-TPK%K127(:)*PCONC(:,3)-TPK%K128(:)*PCONC(:,5) -IF (LHOOK) CALL DR_HOOK('CH_JAC',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_JAC diff --git a/src/arome/chem/internals/ch_jvalues_clouds.F90 b/src/arome/chem/internals/ch_jvalues_clouds.F90 deleted file mode 100644 index 7c23808c960b2a5dc1c0c476f2e9feebae479dff..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_jvalues_clouds.F90 +++ /dev/null @@ -1,249 +0,0 @@ -! ######spl - SUBROUTINE CH_JVALUES_CLOUDS(PZENITH, KPJVMAX, KJVLEVEL, PAZ, PLWC, PFCLD) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ##################################################################### -! -!! -!!*** *CH_JVALUES_CLOUDS* -! -!! PURPOSE Application of a cloud correction factor to the clear-sky values of -!! photolysis rate constants -!! ------- -!! -!!** METHOD -!! ------ -!! The method used to correct for cloud cover is taken from RADM -!! (Chang et al., 1987; Madronich, 1987) -!! The correction of clear-sky values depends on whether the location -!! is below, above or within the cloud. The equation allows for enhancement -!! of photolysis rates above the cloud due to the reflected -!! radiation from the cloud. Below cloud photolysis rates will be lower -!! than the clear-sky values due to the reduced transmission of radiation -!! through the cloud. -!! Within the cloud, the cloud correction factor is a simple linear -!! interpolation of the below cloud factor at cloud base to the above -!! cloud factor at cloud top. -!! -!! REFERENCE -!! --------- -!! -!! -!! AUTHOR -!! ------ -!! Celine Mari (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/01/00 -!! 05/03/05 P. Tulet (CNRM/GMEI) Update for Arome -!! -!!------------------------------------------------------------------------------ -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CST, ONLY : XRHOLW -USE MODD_PARAMETERS -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -!! -IMPLICIT NONE -INTEGER, INTENT(IN) :: KPJVMAX, KJVLEVEL -REAL, DIMENSION(:,:), INTENT(IN) :: PZENITH -REAL, DIMENSION(:,:,:), INTENT(IN) :: PLWC, PAZ -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PFCLD -!! -!! LOCAL VARIABLES -!! --------------- -!! -INTEGER :: JK, ILOOP, JI,JJ -INTEGER :: IIU,IJU,IKU,IKB,IKE -INTEGER,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ICL_TOP_ST, ICL_BASE_ST -INTEGER :: ICL_TOP, ICL_BASE -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ZTAU, ZTR, ZFCLDB -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2),KPJVMAX) :: ZFCLDA, X1, X2 -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ZLWCBAR, ZLWP -REAL :: ZLWCMIN -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ZCOSZEN ! cosine of zenithal angle -LOGICAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: GMASK, GCLOUD -REAL, DIMENSION(KPJVMAX) :: ALPHA ! reaction dependant coefficient -!------------------------------------------------------------------------------ -!! -!! EXECUTABLE STATEMENTS -!! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_JVALUES_CLOUDS',0,ZHOOK_HANDLE) -IIU = SIZE(PLWC,1) -IJU = SIZE(PLWC,2) -IKU = SIZE(PLWC,3) -IKB = 1+JPVEXT -! -IKE = IKU-JPVEXT - -! -! -! 1. Reaction dependent coefficient -! --------------------------------- -! -! -ALPHA(1:KPJVMAX)=1. -!! NO2 -ALPHA(2)=1.2 -!! O3 -ALPHA(3)=0.7 -!! NO3 -ALPHA(5)=1.3 -ALPHA(6)=1.3 -!! HCHO -ALPHA(14)=1.1 -!! ALD -ALPHA(17)=0.9 -! -! 2. Cloud Top and Cloud Base -! --------------------------- -! - ICL_TOP_ST(:,:) = 1 - ZLWCMIN = 1.E-4 -! - GCLOUD(:,:)=.TRUE. - GMASK(:,:)=.TRUE. - ! - DO JK=KJVLEVEL-1,1,-1 - ! - ! * Cloud top - ! - WHERE ( (GMASK(:,:)) .AND. (PLWC(:,:,JK) > ZLWCMIN) ) - GMASK(:,:)=.FALSE. - ICL_TOP_ST(:,:)=JK - ENDWHERE - ! - END DO - ! - WHERE (ICL_TOP_ST(:,:).EQ.1) - ICL_TOP_ST(:,:)=0. - GCLOUD(:,:)=.FALSE. - ENDWHERE - ! - ! * Cloud base - ! - ICL_BASE_ST(:,:)=IKE-IKB+1 - GMASK(:,:)=.TRUE. - ! - DO JK=1,IKE-IKB+1,1 - WHERE ( (GMASK(:,:)) .AND. (PLWC(:,:,JK) > ZLWCMIN) ) - GMASK(:,:)=.FALSE. - ICL_BASE_ST(:,:)=JK - END WHERE - END DO - WHERE (ICL_BASE_ST(:,:).EQ.IKE-IKB+1) - ICL_BASE_ST(:,:)=0. - GCLOUD(:,:)=.FALSE. - END WHERE - WHERE (ICL_BASE_ST(:,:).EQ.ICL_TOP_ST(:,:)) - GCLOUD(:,:)=.FALSE. - END WHERE - ! -! -! -! 3. Cosinus of the zenith angle -! ------------------------------ -! -! -ZCOSZEN(:,:) = COS(PZENITH(:,:)) -ZCOSZEN(:,:)=MAX(ZCOSZEN(:,:),0.5) -! -PFCLD(:,:,:,:)=1.0 -ZTR(:,:)=0. -ZTAU(:,:)=0. -ZLWCBAR(:,:)=0. -! -DO JI = 1, IIU - DO JJ = 1, IJU - IF (GCLOUD(JI,JJ)) THEN -! -! 4. Mean LWC of the cloud -! ------------------------- -! - ICL_BASE=ICL_BASE_ST(JI,JJ) - ICL_TOP=ICL_TOP_ST(JI,JJ) - ! - DO JK=ICL_BASE,ICL_TOP,1 - ZLWCBAR(JI,JJ) = ZLWCBAR(JI,JJ) + PLWC(JI,JJ,JK) - END DO - ZLWCBAR(JI,JJ) = ZLWCBAR(JI,JJ) /(ICL_TOP-ICL_BASE) -! -! Liquid water path in g/m2 -! - ZLWP(JI,JJ) = ZLWCBAR(JI,JJ) * 1.E3 * ( PAZ(JI,JJ,ICL_TOP) - PAZ(JI,JJ,ICL_BASE) ) -! -! 5. Cloud optical depth (Stephens, JAS, 1978) -! ------------------------------------------------------------- -! - IF (ZLWP(JI,JJ).GE.10.) THEN - ZTAU(JI,JJ) = 10.**(0.2633 + 1.7095 * LOG(LOG10(ZLWP(JI,JJ)))) - ELSE - ZTAU(JI,JJ) = 0. - END IF -! -! 6. Energy transmission coefficient -! ---------------------------------- -! - ZTR(JI,JJ) = (5.0 - EXP(-ZTAU(JI,JJ))) / (4.0 + 0.42 * ZTAU(JI,JJ)) -! - END IF - END DO -END DO -! -DO JI = 1, IIU - DO JJ = 1, IJU - ! - IF (GCLOUD(JI,JJ).AND.(ZTAU(JI,JJ).GT.5.0)) THEN - ! - ICL_BASE=ICL_BASE_ST(JI,JJ) - ICL_TOP=ICL_TOP_ST(JI,JJ) -! -! 7. Calculate cloud correction factor -! ------------------------------------ -! - ! - ! Below cloud - ! - ZFCLDB(JI,JJ) = 1.0 + (1.6 * ZTR(JI,JJ) * ZCOSZEN(JI,JJ) - 1.0) - ! - ! Above cloud - ! - DO ILOOP = 1, KPJVMAX - ZFCLDA(JI,JJ,ILOOP) = 1.0 + (1.0 + ALPHA(ILOOP)*(1.0 - ZTR(JI,JJ)) * & - ZCOSZEN(JI,JJ) - 1.0) - ! - X1(JI,JJ,ILOOP) = (ZFCLDA(JI,JJ,ILOOP) - ZFCLDB(JI,JJ))/ & - (PAZ(JI,JJ,ICL_TOP)-PAZ(JI,JJ,ICL_BASE)) - X2(JI,JJ,ILOOP) = (PAZ(JI,JJ,ICL_TOP)*ZFCLDB(JI,JJ)-PAZ(JI,JJ,ICL_BASE)* & - ZFCLDA(JI,JJ,ILOOP))/ & - (PAZ(JI,JJ,ICL_TOP)-PAZ(JI,JJ,ICL_BASE)) - ! - !In cloud layer: linear interpolation - ! - DO JK = 1, IKE-IKB+1 - ! - PFCLD(JI,JJ,JK,ILOOP) = X1(JI,JJ,ILOOP) * PAZ(JI,JJ,JK) + X2(JI,JJ,ILOOP) - IF ( JK .LE. ICL_BASE) PFCLD(JI,JJ,JK,ILOOP) = ZFCLDB(JI,JJ) - IF ( JK .GE. ICL_TOP) PFCLD(JI,JJ,JK,ILOOP) = ZFCLDA(JI,JJ,ILOOP) - ! - ENDDO - PFCLD(JI,JJ,KJVLEVEL,ILOOP) = PFCLD(JI,JJ,IKE-IKB+1,ILOOP) - ENDDO ! ILOOP - END IF - ! - END DO -END DO -! -! -IF (LHOOK) CALL DR_HOOK('CH_JVALUES_CLOUDS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_JVALUES_CLOUDS diff --git a/src/arome/chem/internals/ch_jvalues_clouds_n.F90 b/src/arome/chem/internals/ch_jvalues_clouds_n.F90 deleted file mode 100644 index 7123cc8719f5d0ba9aefd96dec0b302a61405832..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_jvalues_clouds_n.F90 +++ /dev/null @@ -1,259 +0,0 @@ -! ######spl - SUBROUTINE CH_JVALUES_CLOUDS_n(PZENITH, KPJVMAX, KJVLEVEL, PAZ, PLWC, PFCLD) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ##################################################################### -! -!! -!!*** *CH_JVALUES_CLOUDS_n* -! -!! PURPOSE Application of a cloud correction factor to the clear-sky values of -!! photolysis rate constants -!! ------- -!! -!!** METHOD -!! ------ -!! The method used to correct for cloud cover is taken from RADM -!! (Chang et al., 1987; Madronich, 1987) -!! The correction of clear-sky values depends on whether the location -!! is below, above or within the cloud. The equation allows for enhancement -!! of photolysis rates above the cloud due to the reflected -!! radiation from the cloud. Below cloud photolysis rates will be lower -!! than the clear-sky values due to the reduced transmission of radiation -!! through the cloud. -!! Within the cloud, the cloud correction factor is a simple linear -!! interpolation of the below cloud factor at cloud base to the above -!! cloud factor at cloud top. -!! -!! REFERENCE -!! --------- -!! -!! -!! AUTHOR -!! ------ -!! Celine Mari (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/01/00 -!! -!!------------------------------------------------------------------------------ -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CST, ONLY : XRHOLW -USE MODD_PARAMETERS -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -!! -IMPLICIT NONE -INTEGER, INTENT(IN) :: KPJVMAX, KJVLEVEL -REAL, DIMENSION(:,:,:), INTENT(IN) :: PLWC, PAZ -REAL, DIMENSION(:,:), INTENT(IN) :: PZENITH -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PFCLD -!! -!! LOCAL VARIABLES -!! --------------- -!! -INTEGER :: JK, ILOOP, JI,JJ -INTEGER :: IIU,IJU,IKU,IKB,IKE -INTEGER,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ICL_TOP_ST, ICL_BASE_ST -INTEGER :: ICL_TOP, ICL_BASE -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ZREFF, ZTAU, ZTR, ZFCLDB -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2),KPJVMAX) :: ZFCLDA, X1, X2 -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ZLWCBAR, ZLWP -REAL :: ZLWCMIN -REAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: ZCOSZEN ! cosinus of zenithal angle -LOGICAL,DIMENSION(SIZE(PLWC,1),SIZE(PLWC,2)) :: GMASK, GCLOUD -REAL, DIMENSION(KPJVMAX) :: ALPHA ! reaction dependant coefficient -!------------------------------------------------------------------------------ -!! -!! EXECUTABLE STATEMENTS -!! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_JVALUES_CLOUDS_N',0,ZHOOK_HANDLE) -IIU = SIZE(PLWC,1) -IJU = SIZE(PLWC,2) -IKU = SIZE(PLWC,3) -IKB = 1+JPVEXT -! -IKE = IKU-JPVEXT -! -! -! 1. Reaction dependent coefficient -! --------------------------------- -! -! -ALPHA(1:KPJVMAX)=1. -!! NO2 -ALPHA(2)=1.2 -!! O3 -ALPHA(3)=0.7 -!! NO3 -ALPHA(5)=1.3 -ALPHA(6)=1.3 -!! HCHO -ALPHA(14)=1.1 -!! ALD -ALPHA(17)=0.9 -! -! 2. Cloud Top and Cloud Base -! --------------------------- -! - ICL_TOP_ST(:,:) = 1 - ZLWCMIN = 1.E-4 -! - GCLOUD(:,:)=.TRUE. - GMASK(:,:)=.TRUE. - ! - DO JK=KJVLEVEL-1,1,-1 - ! - ! * Cloud top - ! - WHERE ( (GMASK(:,:)) .AND. (PLWC(:,:,JK) > ZLWCMIN) ) - GMASK(:,:)=.FALSE. - ICL_TOP_ST(:,:)=JK - ENDWHERE - ! - END DO - ! - WHERE (ICL_TOP_ST(:,:).EQ.1) - ICL_TOP_ST(:,:)=0. - GCLOUD(:,:)=.FALSE. - ENDWHERE - ! - ! * Cloud base - ! - ICL_BASE_ST(:,:)=IKE-IKB+1 - GMASK(:,:)=.TRUE. - ! - DO JK=1,IKE-IKB+1,1 - WHERE ( (GMASK(:,:)) .AND. (PLWC(:,:,JK) > ZLWCMIN) ) - GMASK(:,:)=.FALSE. - ICL_BASE_ST(:,:)=JK - END WHERE - END DO - WHERE (ICL_BASE_ST(:,:).EQ.IKE-IKB+1) - ICL_BASE_ST(:,:)=0. - GCLOUD(:,:)=.FALSE. - END WHERE - WHERE (ICL_BASE_ST(:,:).EQ.ICL_TOP_ST(:,:)) - GCLOUD(:,:)=.FALSE. - END WHERE - ! -! -! -! 3. Cosinus of the zenith angle -! ------------------------------ -! -! -ZCOSZEN(:,:) = COS(PZENITH(:,:)) -ZCOSZEN(:,:) = MAX(ZCOSZEN(:,:),0.5) -! -PFCLD(:,:,:,:)=1.0 -ZTR(:,:)=0. -ZTAU(:,:)=0. -ZLWCBAR(:,:)=0. -ZREFF(:,:) = 0. -! -DO JI = 1, IIU - DO JJ = 1, IJU - IF (GCLOUD(JI,JJ)) THEN -! -! 4. Mean LWC of the cloud -! ------------------------- -! - ICL_BASE=ICL_BASE_ST(JI,JJ) - ICL_TOP=ICL_TOP_ST(JI,JJ) - ! - DO JK=ICL_BASE,ICL_TOP,1 - ZLWCBAR(JI,JJ) = ZLWCBAR(JI,JJ) + PLWC(JI,JJ,JK) - END DO - ZLWCBAR(JI,JJ) = ZLWCBAR(JI,JJ) /(ICL_TOP-ICL_BASE) -! -! Liquid water path in g/m2 -! - ZLWP(JI,JJ) = ZLWCBAR(JI,JJ) * 1.E3 * ( PAZ(JI,JJ,ICL_TOP) - PAZ(JI,JJ,ICL_BASE) ) -! -! 5. Cloud optical depth (Fouquart et al., Rev. Geophys., 1990) -! ------------------------------------------------------------- -! -! ZREFF = (11. * ZLWCBAR * 1.E3 + 4.) * 1E-6 -! IF (ZREFF.NE.0.) THEN -! ZTAU = 3./2. * ZLWCBAR * 1.E3 * (ZD(ICL_TOP_ST)-ZD(ICL_BASE_ST)) / (XRHOLW * ZREFF) -! ELSE -! ZTAU = 0. -! END IF -! -! 5. Cloud optical depth (Stephens, JAS, 1978) -! ------------------------------------------------------------- -! - IF (ZLWP(JI,JJ).GE.10.) THEN - ZTAU(JI,JJ) = 10.**(0.2633 + 1.7095 * LOG(LOG10(ZLWP(JI,JJ)))) - ELSE - ZTAU(JI,JJ) = 0. - END IF -! -! 6. Energy transmission coefficient -! ---------------------------------- -! - ZTR(JI,JJ) = (5.0 - EXP(-ZTAU(JI,JJ))) / (4.0 + 0.42 * ZTAU(JI,JJ)) -! - END IF - END DO -END DO -! -DO JI = 1, IIU - DO JJ = 1, IJU - ! - IF (GCLOUD(JI,JJ).AND.(ZTAU(JI,JJ).GT.5.0)) THEN - ! - ICL_BASE=ICL_BASE_ST(JI,JJ) - ICL_TOP=ICL_TOP_ST(JI,JJ) -! -! 7. Calculate cloud correction factor -! ------------------------------------ -! - ! - ! Below cloud - ! - ZFCLDB(JI,JJ) = 1.0 + (1.6 * ZTR(JI,JJ) * ZCOSZEN(JI,JJ) - 1.0) - ! - ! Above cloud - ! - DO ILOOP = 1, KPJVMAX - ZFCLDA(JI,JJ,ILOOP) = 1.0 + (1.0 + ALPHA(ILOOP)*(1.0 - ZTR(JI,JJ)) * & - ZCOSZEN(JI,JJ) - 1.0) - ! - X1(JI,JJ,ILOOP) = (ZFCLDA(JI,JJ,ILOOP) - ZFCLDB(JI,JJ))/ & - (PAZ(JI,JJ,ICL_TOP)-PAZ(JI,JJ,ICL_BASE)) - X2(JI,JJ,ILOOP) = (PAZ(JI,JJ,ICL_TOP)*ZFCLDB(JI,JJ)-PAZ(JI,JJ,ICL_BASE)* & - ZFCLDA(JI,JJ,ILOOP))/ & - (PAZ(JI,JJ,ICL_TOP)-PAZ(JI,JJ,ICL_BASE)) - ! - !In cloud layer: linear interpolation - ! - DO JK = 1, IKE-IKB+1 - ! - PFCLD(JI,JJ,JK,ILOOP) = X1(JI,JJ,ILOOP) * PAZ(JI,JJ,JK) + X2(JI,JJ,ILOOP) - IF ( JK .LE. ICL_BASE) PFCLD(JI,JJ,JK,ILOOP) = ZFCLDB(JI,JJ) - IF ( JK .GE. ICL_TOP) PFCLD(JI,JJ,JK,ILOOP) = ZFCLDA(JI,JJ,ILOOP) - ! - ENDDO - PFCLD(JI,JJ,KJVLEVEL,ILOOP) = PFCLD(JI,JJ,IKE-IKB+1,ILOOP) - ENDDO ! ILOOP - END IF - ! - END DO -END DO -! -! - -IF (LHOOK) CALL DR_HOOK('CH_JVALUES_CLOUDS_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_JVALUES_CLOUDS_n diff --git a/src/arome/chem/internals/ch_jvalues_n.F90 b/src/arome/chem/internals/ch_jvalues_n.F90 deleted file mode 100644 index 52735e87f143a0ad29b974f47a2d9fb389257c1b..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_jvalues_n.F90 +++ /dev/null @@ -1,74 +0,0 @@ -! ######spl - SUBROUTINE CH_JVALUES_n(KVECNPT, KIINDEX, KJINDEX, KMODELLEVEL, KRATES, PJVALUES, PRATES) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################################### -! -!! -!!*** *CH_JVALUES* extracts photolysis rates -!! -!! PURPOSE -!! ------- -!! Extract photolysis rates from MODD_CH_JVALUES at a given model level -!! -!!** METHOD -!! ------ -!! After the photolysis rates have been set with CH_UPDATE_JVALUES_n, -!! the different photolysis rates may be extracted on the model levels. -! -!! REFERENCE -!! --------- -!! MesoNH documentation -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 05/03/97 -!! C. Mari 20/03/01 3D version of J values + vectorisation -!! Modification 01/12/03 (Gazen) change Chemical scheme interface -!! -!!------------------------------------------------------------------------------ -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_INIT_JVALUES, ONLY: JPJVMAX -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, DIMENSION(:), INTENT(IN) :: KMODELLEVEL -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, DIMENSION(:), INTENT(IN) :: KIINDEX,KJINDEX - ! current model grid point -INTEGER, INTENT(IN) :: KRATES - ! dimension of PRATES -REAL, DIMENSION(KVECNPT,KRATES), INTENT(OUT) :: PRATES - ! photolysis rates -REAL,DIMENSION(:,:,:,:), INTENT(IN) :: PJVALUES ! Tuv coefficients -!! -!! LOCAL VARIABLES -!! --------------- -INTEGER :: JI,JN -!! -!------------------------------------------------------------------------------ -!! -!! EXECUTABLE STATEMENTS -!! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_JVALUES_N',0,ZHOOK_HANDLE) -DO JI = 1, KRATES - DO JN = 1, KVECNPT - PRATES(JN,JI) = PJVALUES(KIINDEX(JN),KJINDEX(JN),KMODELLEVEL(JN),JI) - ENDDO -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_JVALUES_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_JVALUES_n diff --git a/src/arome/chem/internals/ch_linssa.F90 b/src/arome/chem/internals/ch_linssa.F90 deleted file mode 100644 index 688f4b2abbe92fe06dbddb75bafad96ba90b8140..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_linssa.F90 +++ /dev/null @@ -1,144 +0,0 @@ -! ######spl -SUBROUTINE CH_LINSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - KSSA, KSSAINDEX) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################################################### -!! -!!*** *CH_LINSSA* -!! -!!** PURPOSE -!! ------- -!! solve one time-step of the chemical differential equation d/dt C = f(C) -!! -!! METHOD -!! ------ -!! Linearised Steady (LINSSA): -!! y^n+1 = y^n + dt/2 * (P-dt/2 J^n)^-1 * (P+I) * f^n -!! -!! REFERENCE -!! --------- -!! K. Suhre and R. Rosset, -!! Modification of a linearized semi-implicit scheme for chemical -!! reactions using a steady-state-approximation, -!! Ann. Geophysicae, 12, 359--361, 1994. -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 25/04/95 -!! Modification 01/12/03 (Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -USE MODI_CH_FCN -USE MODI_CH_JAC -USE MODI_CH_GAUSS -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number -INTEGER, INTENT(IN) :: KSSA -INTEGER, DIMENSION(1000) :: KSSAINDEX -! -!* 0.2 declaration of local variables -! -REAL, DIMENSION(KVECNPT,KEQ) :: ZDCDTVECT -REAL, DIMENSION(KEQ) :: ZDCDT -REAL, DIMENSION(KVECNPT,KEQ,KEQ) :: ZWORKVECT -REAL, DIMENSION(KEQ,KEQ) :: ZWORK,ZINV -INTEGER :: IFAIL, JI, JJ -REAL, DIMENSION(:,:), SAVE, ALLOCATABLE :: ZPROJECTOR, ZFAC -LOGICAL, SAVE :: GSFIRSTCALL = .TRUE. -! -!------------------------------------------------------------------------------ -! -! -!* 1. ON FIRSTCALL, THE PROJECTOR WILL BE DEFINED -! ------------------------------------------------ -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_LINSSA',0,ZHOOK_HANDLE) -first_call : IF (GSFIRSTCALL) THEN - GSFIRSTCALL = .FALSE. - ALLOCATE(ZPROJECTOR(KVECNPT,KEQ)) - ALLOCATE(ZFAC(KVECNPT,KEQ)) - ZPROJECTOR(:,:) = 1.0 - DO JI = 1, KSSA - ZPROJECTOR(:,KSSAINDEX(JI)) = 0.0 - ENDDO -! - ZFAC(:,:) = 0.5*(1.0 + ZPROJECTOR(:,:)) -! -ENDIF first_call -! -!* 2. CALCULATE FIRST DERIVATIVE AND JACOBIAN -! -------------------------------------------- -! -CALL CH_FCN(PTSIMUL,PCONC,ZDCDTVECT, KMI,KVECNPT,KEQ) -! -!%kloos% -!ZJAC replaced by ZWORK -CALL CH_JAC(PTSIMUL,PCONC,ZWORKVECT, KMI,KVECNPT,KEQ) -! -!* 3. CALCULATE (P-dt/2 J^n)^-1 -! ------------------------------ -! -DO JJ=1,KVECNPT - -ZWORK(:,:) = - (0.5*PDTACT) * ZWORKVECT(JJ,:,:) -ZDCDT(:)=ZDCDTVECT(JJ,:) -!% -DO JI = 1, KEQ - ZWORK(JI,JI) = ZWORK(JI,JI) + ZPROJECTOR(JJ,JI) -ENDDO -! -!%kloos% -! inversion of matrix modified -! -!* 4. CALCULATE LU FACTORIZATION FOR MATRIX (P-dt/2 J^n)^-1 -! ---------------------------------------------------------- -! (result is put in ZWORK) -! -IFAIL = 1 -CALL CH_GAUSS(ZWORK,ZINV,KEQ,IFAIL) -IF (IFAIL.NE.0) THEN - STOP 'CH_LinSSA ERROR: matrix cannot be inverted by CH_GAUSS' -ENDIF -! -!* 5. CALCULATE 1/2 * (P+I) * f^n -! -------------------------------- -! -ZDCDT(:) = ZFAC(JJ,:) * ZDCDT(:) -! -!* 6. CALCULATE (1-dt/2 J^n)^-1 * (P+I)/2 * f^n (result is put in ZDCDT) -! ----------------------------------------------------------------------- -! -ZDCDT(:) = MATMUL(ZINV,ZDCDT) -! -!* 7. CALCULATE y^n+1 = y^n + dt/2 * (P-dt/2 J^n)^-1 * (P+I) * f^n -! ----------------------------------------------------------------- -! -PNEWCONC(JJ,:) = PCONC(JJ,:) + PDTACT * ZDCDT(:) -!% -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_LINSSA',1,ZHOOK_HANDLE) -END SUBROUTINE CH_LINSSA diff --git a/src/arome/chem/internals/ch_meteo_trans.F90 b/src/arome/chem/internals/ch_meteo_trans.F90 deleted file mode 100644 index 7f07b7a46f550c3bb2c78b9a34f52c2db25fb79d..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_meteo_trans.F90 +++ /dev/null @@ -1,219 +0,0 @@ -! ######spl - SUBROUTINE CH_METEO_TRANS(KL, PRHODREF, PRT, PTHT, PABST, & - KVECNPT, KVECMASK, TPM, KDAY,& - KMONTH, KYEAR, PLAT, PLON, PLAT0, PLON0,& - OUSERV, OUSERC, KLUOUT ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - -!! ############################################################### -!! -!!*** *CH_METEO_TRANS* -!! -!! PURPOSE -!! ------- -! Transfer of meteorological data, such as temperature, pressure -! and water vapor mixing ratio for one point into the variable TPM(JM+1) -!! -!! METHOD -!! ------ -!! For the given grid-point KI,KJ,KK, the meteorological parameters -!! will be transfered for use by CH_SET_RATES and CH_SET_PHOTO_RATES. -!! Presently, the variables altitude, air density, temperature, -!! water vapor mixing ratio, cloud water, longitude, latitude and date -!! will be transfered. In the chemical definition file (.chf) -!! these variables have to be transfered into variables like O2, H2O etc. -!! Also, consistency is checked between the number of -!! variables expected by the CCS (as defined in the .chf file) and -!! the number of variables to be transfered here. If you change -!! the meaning of XMETEOVARS in your .chf file, make sure to modify -!! this subroutine accordingly. -!! If the model is run in 1D mode, the model level instead of altitude -!! is passed. In 2D and 3D, altitude is passed with a negative sign -!! so that the radiation scheme TUV can make the difference between -!! model levels and altitude. -!! -!! AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 24/05/95 -!! 04/08/96 (K. Suhre) restructured -!! 21/02/97 (K. Suhre) add XLAT0 and XLON0 for LCARTESIAN=T case -!! 27/08/98 (P. Tulet) add temperature at t for kinetic coefficient -!! 09/03/99 (V. Crassier & K. Suhre) vectorization -!! 09/03/99 (K. Suhre) modification for TUV -!! 09/03/99 (C. Mari & J. Escobar) Code optimization -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! 01/12/04 (P. Tulet) update ch_meteo_transn.f90 for Arome -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!! -USE MODD_CH_M9, ONLY: NMETEOVARS, &! number of meteorological variables - METEOTRANSTYPE !type for meteo . transfer -!! -USE MODD_CST, ONLY: XP00, &! Surface pressure - XRD, &! R gas constant - XCPD !specific heat for dry air -!! -USE MODD_CONF, ONLY: LCARTESIAN ! Logical for cartesian geometry -!! -!! -!! -! - -! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! air density -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRT ! moist variables at t -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST ! theta and pressure at t -INTEGER, DIMENSION(:,:), INTENT(IN) :: KVECMASK -TYPE(METEOTRANSTYPE), DIMENSION(:), INTENT(INOUT) :: TPM - ! meteo variable for CCS -INTEGER, INTENT(IN) :: KYEAR ! Current Year -INTEGER, INTENT(IN) :: KMONTH ! Current Month -INTEGER, INTENT(IN) :: KDAY ! Current Day -INTEGER, INTENT(IN) :: KLUOUT ! channel for output listing -INTEGER, INTENT(IN) :: KL, KVECNPT -REAL, INTENT(IN) :: PLAT0, PLON0 -LOGICAL, INTENT(IN) :: OUSERV, OUSERC -REAL, DIMENSION(:,:), INTENT(IN) :: PLAT, PLON - - -! -!* 0.2 declarations of local variables -! -REAL,DIMENSION(SIZE(PRT,1),SIZE(PRT,2),SIZE(PRT,3),2) :: ZRT -REAL,DIMENSION(SIZE(PRT,1),SIZE(PRT,2)) :: ZLAT, ZLON -LOGICAL, SAVE :: GSFIRSTCALL = .TRUE. -INTEGER :: JI,JJ,JK,JM -INTEGER :: IDTI,IDTJ,IDTK -! -! -!------------------------------------------------------------------------------- -! -!* 1. INITIALIZE METEO VARIABLE TRANSFER -! ---------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_METEO_TRANS',0,ZHOOK_HANDLE) -firstcall : IF (GSFIRSTCALL) THEN -! - GSFIRSTCALL = .FALSE. -! -!* 1.1 check if number of variables NMETEOVARS -! corresponds to what the CCS expects -! - IF (NMETEOVARS /= 10) THEN - WRITE(KLUOUT,*) "CH_METEO_TRANS ERROR: number of meteovars to transfer" - WRITE(KLUOUT,*) "does not correspond to the number expected by the CCS:" - WRITE(KLUOUT,*) " meteovars to transfer: ", 10 - WRITE(KLUOUT,*) " NMETEOVARS expected: ", NMETEOVARS - WRITE(KLUOUT,*) "Check the definition of NMETEOVARS in your .chf file." - WRITE(KLUOUT,*) "The program will be stopped now!" - STOP 1 - END IF -! -! -!* 1.2 initialize names of meteo vars -! - TPM(:)%CMETEOVAR(1) = "Model level" - TPM(:)%CMETEOVAR(2) = "Air density (kg/m3)" - TPM(:)%CMETEOVAR(3) = "Temperature (K)" - TPM(:)%CMETEOVAR(4) = "Water vapor (kg/kg)" - TPM(:)%CMETEOVAR(5) = "Cloud water (kg/kg)" - TPM(:)%CMETEOVAR(6) = "Latitude (rad)" - TPM(:)%CMETEOVAR(7) = "Longitude (rad)" - TPM(:)%CMETEOVAR(8) = "Current date (year)" - TPM(:)%CMETEOVAR(9) = "Current date (month)" - TPM(:)%CMETEOVAR(10)= "Current date (day)" -! -ENDIF firstcall -! -! "Water vapor (kg/kg)" - IF (OUSERV) THEN - ZRT(:,:,:,1) = PRT(:,:,:, 1) - ELSE - ZRT(:,:,:,1) = 0.0 - ENDIF -! -! "Cloud water (kg/kg)" - IF (OUSERC) THEN - ZRT(:,:,:,2) = PRT(:,:,:, 2) - ELSE - ZRT(:,:,:,2) = 0.0 - ENDIF - - IF(LCARTESIAN) THEN -! "Latitude (rad)" - ZLAT(:,:) = PLAT0 -! "Longitude (rad)" - ZLON(:,:) = PLON0 - ELSE -! "Latitude (rad)" - ZLAT(:,:) = PLAT(:,:) -! "Longitude (rad)" - ZLON(:,:) = PLON(:,:) - END IF -! -! -!* 2. TRANSFER METEO VARIABLES -! ------------------------ -! -IDTI=KVECMASK(2,KL)-KVECMASK(1,KL)+1 -IDTJ=KVECMASK(4,KL)-KVECMASK(3,KL)+1 -IDTK=KVECMASK(6,KL)-KVECMASK(5,KL)+1 -!Vectorization: -!ocl novrec -!cdir nodep -DO JM=0,KVECNPT-1 - JI=JM-IDTI*(JM/IDTI)+KVECMASK(1,KL) - JJ=JM/IDTI-IDTJ*(JM/(IDTI*IDTJ))+KVECMASK(3,KL) - JK=JM/(IDTI*IDTJ)-IDTK*(JM/(IDTI*IDTJ*IDTK))+KVECMASK(5,KL) -! -!"Model Altitude" - TPM(JM+1)%XMETEOVAR(1) = JK-1 ! assuming first model level is level 2 -! TPM(JM+1)%XMETEOVAR(1) = JK ! assuming first model level is level 1 -! -! "Air density (kg/m3)" - TPM(JM+1)%XMETEOVAR(2) = PRHODREF(JI, JJ, JK) -! -! "Temperature (K)" - TPM(JM+1)%XMETEOVAR(3) = PTHT(JI,JJ,JK)*((PABST(JI,JJ,JK)/XP00)**(XRD/XCPD)) -! -! "Water vapor (kg/kg)" - TPM(JM+1)%XMETEOVAR(4) = ZRT(JI, JJ, JK, 1) -! -! "Cloud water (kg/kg)" - TPM(JM+1)%XMETEOVAR(5) = ZRT(JI, JJ, JK, 2) -! -! "Latitude (rad)" - TPM(JM+1)%XMETEOVAR(6) = ZLAT(JI, JJ) -! "Longitude (rad)" - TPM(JM+1)%XMETEOVAR(7) = ZLON(JI, JJ) -! -! "Current date" - TPM(JM+1)%XMETEOVAR(8) = FLOAT(KYEAR) - TPM(JM+1)%XMETEOVAR(9) = FLOAT(KMONTH) - TPM(JM+1)%XMETEOVAR(10)= FLOAT(KDAY) -! -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_METEO_TRANS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_METEO_TRANS diff --git a/src/arome/chem/internals/ch_nnares.F90 b/src/arome/chem/internals/ch_nnares.F90 deleted file mode 100644 index e70579837ae21f06385f61ff750663dedbdd579f..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_nnares.F90 +++ /dev/null @@ -1,131 +0,0 @@ -! ######spl - SUBROUTINE CH_NNARES (PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ########################################################## -!! -!! PURPOSE -!! ------- -!! -!! Calculate the aerosol chemical speciation and water content. -!! THIS IS NEURAL NET VERSION OF THE ORIGINAL ARES CODE, -!! GENERATED AND TRAINED USING NNFIT -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! V. Crassier & K. Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -!***************************************************************** -! Parameters of ARES: -! -! SO4 : Total sulfate in MICROGRAMS/M**3 as sulfate (IN) -! HNO3 : Nitric Acid in MICROGRAMS/M**3 as nitric acid (IN) -! NO3 : Total nitrate in MICROGRAMS/M**3 as nitric acid (IN) -! NH3 : Total ammonia in MICROGRAMS/M**3 as ammonia (IN) -! NH4 : Ammonium in MICROGRAMS/M**3 as ammonium (IN) -! RH : Fractional relative humidity (IN) -! TEMP : Temperature in Kelvin (IN) -! GNO3 : Gas phase nitric acid in MICROGRAMS/M**3 (OUT) -! GNH3 : Gas phase ammonia in MICROGRAMS/M**3 (OUT) -! ASO4 : Aerosol phase sulfate in MICROGRAMS/M**3 (OUT) -! ANO3 : Aerosol phase nitrate in MICROGRAMS/M**3 (OUT) -! ANH4 : Aerosol phase ammonium in MICROGRAMS/M**3 (OUT) -! AH2O : Aerosol phase water in MICROGRAMS/M**3 (OUT) -! -!*************************************************************** -!! -!! EXTERNAL -!! ------- -!! -!USE MODD_CH_M9 -USE MODD_CH_AEROSOL -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -IMPLICIT NONE -!...........ARGUMENTS and their descriptions -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC -! -! PAER(:,1) :: H2SO4 in micrograms / m**3 -! PAER(:,2) :: NH3(g) in micrograms / m**3 -! PAER(:,3) :: HNO3(g) in micrograms / m**3 -! PAER(:,4) :: H2O(a) in micrograms / m**3 -! PAER(:,5) :: NO3(a) in micrograms / m**3 -! PAER(:,6) :: NH4(a) in micrograms / m**3 -! -!...........PARAMETERS and their descriptions: - -REAL, PARAMETER :: ZMWH2O = 18.0 ! molecular weight for water -REAL, PARAMETER :: ZMWNO3 = 62.0049 ! molecular weight for NO3 -REAL, PARAMETER :: ZMWHNO3 = 63.01287 ! molecular weight for HNO3 -REAL, PARAMETER :: ZMH2SO4 = 98.07354 ! molecular weight for H2SO4 -REAL, PARAMETER :: ZMWNH3 = 17.03061 ! molecular weight for NH3 -REAL, PARAMETER :: ZMWNH4 = 18.03858 ! molecular weight for NH4 - -!----------------------------------------------------------------------------- -! .. the independant variables of the NN are: -! 1) mole fraction of total ammonium X = (NH4 + NH3) / (SO4) -! 2) mole fraction of total nitrate Y = (NO3 + HNO3) / (SO4 + NO3 + HNO3) -! 3) fractional relative humidity R = RH -! 4) temperature T = TEMP -! -! .. the output variables of the NN are: -! 1) mole fraction of water A = AH2O / (AH20+ASO4+ANO3+ANH4) -! 2) mole fraction of gas phase ammonia B = GNH3 / (GNH3 + ANH4) -! 3) mole fraction of gas phase nitrate C = GNO3 / (GNO3 + ANO3) -! -REAL, DIMENSION(SIZE(PAER,1)) :: TOTAMM,TOTNIT,TOTSUL -! .. input .. -REAL, DIMENSION(SIZE(PAER,1)) :: X, Y -! -! .. output .. -REAL, DIMENSION(SIZE(PAER,1)) :: A, B, C -! -!----------------------------------------------------------------------------- -! print *, "PAER(1:5,1) H2SO4 ", PAER(1:5,1) -! print *, "PAER(1:5,2) NH3 ", PAER(1:5,2) -! print *, "PAER(1:5,3) HNO3 ", PAER(1:5,3) - -! convert to NN input variables X, Y, R, T - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_NNARES',0,ZHOOK_HANDLE) - TOTAMM(:) = PAER(:,2)/ZMWNH3 + PAER(:,6)/ZMWNH4 - TOTNIT(:) = PAER(:,3)/ZMWHNO3 + PAER(:,5)/ZMWNO3 - TOTSUL(:) = PAER(:,1)/ZMH2SO4 - - X(:) = TOTAMM(:)/ TOTSUL(:) - Y(:) = TOTNIT(:) / (TOTNIT(:) + TOTSUL(:)) - - - -! call the neural net - CALL NN ( X, Y, PRH, PTEMP, A, B, C, SIZE(PAER,1)) - -! compute return variables in mole concentrations - PAER(:,1) = TOTSUL(:) - PAER(:,2) = B(:) * TOTAMM(:) - PAER(:,3) = C(:) * TOTNIT(:) - PAER(:,5) = (1-C(:)) * TOTNIT(:) - PAER(:,6) = (1.-B(:)) * TOTAMM(:) - PAER(:,4) = (1./(1.-A(:))) * (PAER(:,1) + PAER(:,5) + PAER(:,6)) - -! convert return variables to mass concentration - PAER(:,1)=PAER(:,1)*ZMH2SO4 - PAER(:,2)=PAER(:,2)*ZMWNH3 - PAER(:,3)=PAER(:,3)*ZMWHNO3 - PAER(:,4)=PAER(:,4)*ZMWH2O - PAER(:,5)=PAER(:,5)*ZMWNO3 - PAER(:,6)=PAER(:,6)*ZMWNH4 - -IF (LHOOK) CALL DR_HOOK('CH_NNARES',1,ZHOOK_HANDLE) -END SUBROUTINE CH_NNARES diff --git a/src/arome/chem/internals/ch_nonzeroterms.F90 b/src/arome/chem/internals/ch_nonzeroterms.F90 deleted file mode 100644 index e1f7c04528adacdcd368b83c673d23a2c8d7f712..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_nonzeroterms.F90 +++ /dev/null @@ -1,1243 +0,0 @@ -! ######spl - SUBROUTINE CH_NONZEROTERMS(KINDEX, KINDEXDIM) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!! -!!*** *MODD_CH_NONZEROTERMS* -!! -!! PURPOSE -!! ------- -! calculation of the contribution of each term in each reaction -!! -!!** METHOD -!! ------ -!! The contribution of reaction i to the evolution of species j -!! is returned in PTERMS. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, INTENT(IN) :: KINDEXDIM -INTEGER, INTENT(OUT), DIMENSION(2,KINDEXDIM) :: KINDEX -! check if output array is large enough -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_NONZEROTERMS',0,ZHOOK_HANDLE) -IF (KINDEXDIM.LT.593) THEN - STOP 'CH_NONZEROTERMS ERROR: array KINDEX is too small!' -END IF - KINDEX(1, 1)=3 - KINDEX(2, 1)=1 - KINDEX(1, 2)=4 - KINDEX(2, 2)=1 - KINDEX(1, 3)=1 - KINDEX(2, 3)=2 - KINDEX(1, 4)=1 - KINDEX(2, 4)=3 - KINDEX(1, 5)=3 - KINDEX(2, 5)=4 - KINDEX(1, 6)=7 - KINDEX(2, 6)=4 - KINDEX(1, 7)=14 - KINDEX(2, 7)=4 - KINDEX(1, 8)=4 - KINDEX(2, 8)=5 - KINDEX(1, 9)=8 - KINDEX(2, 9)=5 - KINDEX(1, 10)=14 - KINDEX(2, 10)=5 - KINDEX(1, 11)=4 - KINDEX(2, 11)=6 - KINDEX(1, 12)=5 - KINDEX(2, 12)=6 - KINDEX(1, 13)=9 - KINDEX(2, 13)=6 - KINDEX(1, 14)=14 - KINDEX(2, 14)=6 - KINDEX(1, 15)=15 - KINDEX(2, 15)=6 - KINDEX(1, 16)=3 - KINDEX(2, 16)=7 - KINDEX(1, 17)=5 - KINDEX(2, 17)=7 - KINDEX(1, 18)=4 - KINDEX(2, 18)=8 - KINDEX(1, 19)=5 - KINDEX(2, 19)=8 - KINDEX(1, 20)=2 - KINDEX(2, 20)=9 - KINDEX(1, 21)=14 - KINDEX(2, 21)=9 - KINDEX(1, 22)=13 - KINDEX(2, 22)=10 - KINDEX(1, 23)=22 - KINDEX(2, 23)=10 - KINDEX(1, 24)=13 - KINDEX(2, 24)=11 - KINDEX(1, 25)=15 - KINDEX(2, 25)=11 - KINDEX(1, 26)=22 - KINDEX(2, 26)=11 - KINDEX(1, 27)=13 - KINDEX(2, 27)=12 - KINDEX(1, 28)=15 - KINDEX(2, 28)=12 - KINDEX(1, 29)=23 - KINDEX(2, 29)=12 - KINDEX(1, 30)=31 - KINDEX(2, 30)=12 - KINDEX(1, 31)=14 - KINDEX(2, 31)=13 - KINDEX(1, 32)=15 - KINDEX(2, 32)=13 - KINDEX(1, 33)=22 - KINDEX(2, 33)=13 - KINDEX(1, 34)=28 - KINDEX(2, 34)=13 - KINDEX(1, 35)=14 - KINDEX(2, 35)=14 - KINDEX(1, 36)=15 - KINDEX(2, 36)=14 - KINDEX(1, 37)=23 - KINDEX(2, 37)=14 - KINDEX(1, 38)=29 - KINDEX(2, 38)=14 - KINDEX(1, 39)=31 - KINDEX(2, 39)=14 - KINDEX(1, 40)=24 - KINDEX(2, 40)=15 - KINDEX(1, 41)=32 - KINDEX(2, 41)=15 - KINDEX(1, 42)=38 - KINDEX(2, 42)=15 - KINDEX(1, 43)=13 - KINDEX(2, 43)=16 - KINDEX(1, 44)=15 - KINDEX(2, 44)=16 - KINDEX(1, 45)=22 - KINDEX(2, 45)=16 - KINDEX(1, 46)=25 - KINDEX(2, 46)=16 - KINDEX(1, 47)=38 - KINDEX(2, 47)=16 - KINDEX(1, 48)=4 - KINDEX(2, 48)=17 - KINDEX(1, 49)=15 - KINDEX(2, 49)=17 - KINDEX(1, 50)=23 - KINDEX(2, 50)=17 - KINDEX(1, 51)=24 - KINDEX(2, 51)=17 - KINDEX(1, 52)=26 - KINDEX(2, 52)=17 - KINDEX(1, 53)=1 - KINDEX(2, 53)=18 - KINDEX(1, 54)=1 - KINDEX(2, 54)=19 - KINDEX(1, 55)=14 - KINDEX(2, 55)=22 - KINDEX(1, 56)=1 - KINDEX(2, 56)=23 - KINDEX(1, 57)=14 - KINDEX(2, 57)=23 - KINDEX(1, 58)=15 - KINDEX(2, 58)=23 - KINDEX(1, 59)=1 - KINDEX(2, 59)=24 - KINDEX(1, 60)=14 - KINDEX(2, 60)=24 - KINDEX(1, 61)=15 - KINDEX(2, 61)=24 - KINDEX(1, 62)=14 - KINDEX(2, 62)=25 - KINDEX(1, 63)=15 - KINDEX(2, 63)=25 - KINDEX(1, 64)=2 - KINDEX(2, 64)=26 - KINDEX(1, 65)=14 - KINDEX(2, 65)=26 - KINDEX(1, 66)=15 - KINDEX(2, 66)=26 - KINDEX(1, 67)=2 - KINDEX(2, 67)=27 - KINDEX(1, 68)=15 - KINDEX(2, 68)=27 - KINDEX(1, 69)=2 - KINDEX(2, 69)=28 - KINDEX(1, 70)=15 - KINDEX(2, 70)=28 - KINDEX(1, 71)=3 - KINDEX(2, 71)=29 - KINDEX(1, 72)=4 - KINDEX(2, 72)=29 - KINDEX(1, 73)=3 - KINDEX(2, 73)=30 - KINDEX(1, 74)=4 - KINDEX(2, 74)=30 - KINDEX(1, 75)=4 - KINDEX(2, 75)=31 - KINDEX(1, 76)=5 - KINDEX(2, 76)=31 - KINDEX(1, 77)=3 - KINDEX(2, 77)=32 - KINDEX(1, 78)=7 - KINDEX(2, 78)=32 - KINDEX(1, 79)=14 - KINDEX(2, 79)=32 - KINDEX(1, 80)=4 - KINDEX(2, 80)=33 - KINDEX(1, 81)=8 - KINDEX(2, 81)=33 - KINDEX(1, 82)=14 - KINDEX(2, 82)=33 - KINDEX(1, 83)=4 - KINDEX(2, 83)=34 - KINDEX(1, 84)=5 - KINDEX(2, 84)=34 - KINDEX(1, 85)=14 - KINDEX(2, 85)=34 - KINDEX(1, 86)=15 - KINDEX(2, 86)=34 - KINDEX(1, 87)=3 - KINDEX(2, 87)=35 - KINDEX(1, 88)=4 - KINDEX(2, 88)=35 - KINDEX(1, 89)=14 - KINDEX(2, 89)=35 - KINDEX(1, 90)=15 - KINDEX(2, 90)=35 - KINDEX(1, 91)=4 - KINDEX(2, 91)=36 - KINDEX(1, 92)=9 - KINDEX(2, 92)=36 - KINDEX(1, 93)=15 - KINDEX(2, 93)=36 - KINDEX(1, 94)=4 - KINDEX(2, 94)=37 - KINDEX(1, 95)=9 - KINDEX(2, 95)=37 - KINDEX(1, 96)=15 - KINDEX(2, 96)=37 - KINDEX(1, 97)=4 - KINDEX(2, 97)=38 - KINDEX(1, 98)=5 - KINDEX(2, 98)=38 - KINDEX(1, 99)=8 - KINDEX(2, 99)=38 - KINDEX(1, 100)=14 - KINDEX(2, 100)=38 - KINDEX(1, 101)=15 - KINDEX(2, 101)=38 - KINDEX(1, 102)=4 - KINDEX(2, 102)=39 - KINDEX(1, 103)=7 - KINDEX(2, 103)=39 - KINDEX(1, 104)=14 - KINDEX(2, 104)=39 - KINDEX(1, 105)=5 - KINDEX(2, 105)=40 - KINDEX(1, 106)=8 - KINDEX(2, 106)=40 - KINDEX(1, 107)=14 - KINDEX(2, 107)=40 - KINDEX(1, 108)=4 - KINDEX(2, 108)=41 - KINDEX(1, 109)=9 - KINDEX(2, 109)=41 - KINDEX(1, 110)=14 - KINDEX(2, 110)=41 - KINDEX(1, 111)=1 - KINDEX(2, 111)=42 - KINDEX(1, 112)=3 - KINDEX(2, 112)=42 - KINDEX(1, 113)=4 - KINDEX(2, 113)=42 - KINDEX(1, 114)=1 - KINDEX(2, 114)=43 - KINDEX(1, 115)=4 - KINDEX(2, 115)=43 - KINDEX(1, 116)=5 - KINDEX(2, 116)=43 - KINDEX(1, 117)=3 - KINDEX(2, 117)=44 - KINDEX(1, 118)=4 - KINDEX(2, 118)=44 - KINDEX(1, 119)=3 - KINDEX(2, 119)=45 - KINDEX(1, 120)=4 - KINDEX(2, 120)=45 - KINDEX(1, 121)=5 - KINDEX(2, 121)=45 - KINDEX(1, 122)=3 - KINDEX(2, 122)=46 - KINDEX(1, 123)=4 - KINDEX(2, 123)=46 - KINDEX(1, 124)=5 - KINDEX(2, 124)=46 - KINDEX(1, 125)=4 - KINDEX(2, 125)=47 - KINDEX(1, 126)=5 - KINDEX(2, 126)=47 - KINDEX(1, 127)=6 - KINDEX(2, 127)=47 - KINDEX(1, 128)=4 - KINDEX(2, 128)=48 - KINDEX(1, 129)=5 - KINDEX(2, 129)=48 - KINDEX(1, 130)=6 - KINDEX(2, 130)=48 - KINDEX(1, 131)=4 - KINDEX(2, 131)=49 - KINDEX(1, 132)=5 - KINDEX(2, 132)=49 - KINDEX(1, 133)=14 - KINDEX(2, 133)=50 - KINDEX(1, 134)=15 - KINDEX(2, 134)=50 - KINDEX(1, 135)=11 - KINDEX(2, 135)=51 - KINDEX(1, 136)=12 - KINDEX(2, 136)=51 - KINDEX(1, 137)=14 - KINDEX(2, 137)=51 - KINDEX(1, 138)=15 - KINDEX(2, 138)=51 - KINDEX(1, 139)=13 - KINDEX(2, 139)=52 - KINDEX(1, 140)=14 - KINDEX(2, 140)=52 - KINDEX(1, 141)=15 - KINDEX(2, 141)=52 - KINDEX(1, 142)=13 - KINDEX(2, 142)=53 - KINDEX(1, 143)=14 - KINDEX(2, 143)=53 - KINDEX(1, 144)=15 - KINDEX(2, 144)=53 - KINDEX(1, 145)=19 - KINDEX(2, 145)=53 - KINDEX(1, 146)=20 - KINDEX(2, 146)=53 - KINDEX(1, 147)=22 - KINDEX(2, 147)=53 - KINDEX(1, 148)=25 - KINDEX(2, 148)=53 - KINDEX(1, 149)=40 - KINDEX(2, 149)=53 - KINDEX(1, 150)=23 - KINDEX(2, 150)=54 - KINDEX(1, 151)=25 - KINDEX(2, 151)=54 - KINDEX(1, 152)=14 - KINDEX(2, 152)=55 - KINDEX(1, 153)=16 - KINDEX(2, 153)=55 - KINDEX(1, 154)=31 - KINDEX(2, 154)=55 - KINDEX(1, 155)=14 - KINDEX(2, 155)=56 - KINDEX(1, 156)=17 - KINDEX(2, 156)=56 - KINDEX(1, 157)=32 - KINDEX(2, 157)=56 - KINDEX(1, 158)=13 - KINDEX(2, 158)=57 - KINDEX(1, 159)=14 - KINDEX(2, 159)=57 - KINDEX(1, 160)=15 - KINDEX(2, 160)=57 - KINDEX(1, 161)=18 - KINDEX(2, 161)=57 - KINDEX(1, 162)=22 - KINDEX(2, 162)=57 - KINDEX(1, 163)=23 - KINDEX(2, 163)=57 - KINDEX(1, 164)=24 - KINDEX(2, 164)=57 - KINDEX(1, 165)=25 - KINDEX(2, 165)=57 - KINDEX(1, 166)=32 - KINDEX(2, 166)=57 - KINDEX(1, 167)=14 - KINDEX(2, 167)=58 - KINDEX(1, 168)=19 - KINDEX(2, 168)=58 - KINDEX(1, 169)=33 - KINDEX(2, 169)=58 - KINDEX(1, 170)=34 - KINDEX(2, 170)=58 - KINDEX(1, 171)=14 - KINDEX(2, 171)=59 - KINDEX(1, 172)=20 - KINDEX(2, 172)=59 - KINDEX(1, 173)=34 - KINDEX(2, 173)=59 - KINDEX(1, 174)=14 - KINDEX(2, 174)=60 - KINDEX(1, 175)=15 - KINDEX(2, 175)=60 - KINDEX(1, 176)=21 - KINDEX(2, 176)=60 - KINDEX(1, 177)=35 - KINDEX(2, 177)=60 - KINDEX(1, 178)=36 - KINDEX(2, 178)=60 - KINDEX(1, 179)=40 - KINDEX(2, 179)=60 - KINDEX(1, 180)=13 - KINDEX(2, 180)=61 - KINDEX(1, 181)=14 - KINDEX(2, 181)=61 - KINDEX(1, 182)=15 - KINDEX(2, 182)=61 - KINDEX(1, 183)=22 - KINDEX(2, 183)=61 - KINDEX(1, 184)=14 - KINDEX(2, 184)=62 - KINDEX(1, 185)=23 - KINDEX(2, 185)=62 - KINDEX(1, 186)=38 - KINDEX(2, 186)=62 - KINDEX(1, 187)=14 - KINDEX(2, 187)=63 - KINDEX(1, 188)=24 - KINDEX(2, 188)=63 - KINDEX(1, 189)=38 - KINDEX(2, 189)=63 - KINDEX(1, 190)=13 - KINDEX(2, 190)=64 - KINDEX(1, 191)=14 - KINDEX(2, 191)=64 - KINDEX(1, 192)=15 - KINDEX(2, 192)=64 - KINDEX(1, 193)=22 - KINDEX(2, 193)=64 - KINDEX(1, 194)=23 - KINDEX(2, 194)=64 - KINDEX(1, 195)=24 - KINDEX(2, 195)=64 - KINDEX(1, 196)=25 - KINDEX(2, 196)=64 - KINDEX(1, 197)=38 - KINDEX(2, 197)=64 - KINDEX(1, 198)=40 - KINDEX(2, 198)=64 - KINDEX(1, 199)=14 - KINDEX(2, 199)=65 - KINDEX(1, 200)=22 - KINDEX(2, 200)=65 - KINDEX(1, 201)=28 - KINDEX(2, 201)=65 - KINDEX(1, 202)=31 - KINDEX(2, 202)=65 - KINDEX(1, 203)=14 - KINDEX(2, 203)=66 - KINDEX(1, 204)=15 - KINDEX(2, 204)=66 - KINDEX(1, 205)=22 - KINDEX(2, 205)=66 - KINDEX(1, 206)=23 - KINDEX(2, 206)=66 - KINDEX(1, 207)=24 - KINDEX(2, 207)=66 - KINDEX(1, 208)=29 - KINDEX(2, 208)=66 - KINDEX(1, 209)=32 - KINDEX(2, 209)=66 - KINDEX(1, 210)=38 - KINDEX(2, 210)=66 - KINDEX(1, 211)=40 - KINDEX(2, 211)=66 - KINDEX(1, 212)=5 - KINDEX(2, 212)=67 - KINDEX(1, 213)=14 - KINDEX(2, 213)=67 - KINDEX(1, 214)=15 - KINDEX(2, 214)=67 - KINDEX(1, 215)=22 - KINDEX(2, 215)=67 - KINDEX(1, 216)=25 - KINDEX(2, 216)=67 - KINDEX(1, 217)=27 - KINDEX(2, 217)=67 - KINDEX(1, 218)=40 - KINDEX(2, 218)=67 - KINDEX(1, 219)=4 - KINDEX(2, 219)=68 - KINDEX(1, 220)=14 - KINDEX(2, 220)=68 - KINDEX(1, 221)=26 - KINDEX(2, 221)=68 - KINDEX(1, 222)=32 - KINDEX(2, 222)=68 - KINDEX(1, 223)=5 - KINDEX(2, 223)=69 - KINDEX(1, 224)=8 - KINDEX(2, 224)=69 - KINDEX(1, 225)=13 - KINDEX(2, 225)=69 - KINDEX(1, 226)=15 - KINDEX(2, 226)=69 - KINDEX(1, 227)=22 - KINDEX(2, 227)=69 - KINDEX(1, 228)=5 - KINDEX(2, 228)=70 - KINDEX(1, 229)=8 - KINDEX(2, 229)=70 - KINDEX(1, 230)=23 - KINDEX(2, 230)=70 - KINDEX(1, 231)=38 - KINDEX(2, 231)=70 - KINDEX(1, 232)=4 - KINDEX(2, 232)=71 - KINDEX(1, 233)=5 - KINDEX(2, 233)=71 - KINDEX(1, 234)=8 - KINDEX(2, 234)=71 - KINDEX(1, 235)=13 - KINDEX(2, 235)=71 - KINDEX(1, 236)=15 - KINDEX(2, 236)=71 - KINDEX(1, 237)=23 - KINDEX(2, 237)=71 - KINDEX(1, 238)=24 - KINDEX(2, 238)=71 - KINDEX(1, 239)=25 - KINDEX(2, 239)=71 - KINDEX(1, 240)=38 - KINDEX(2, 240)=71 - KINDEX(1, 241)=39 - KINDEX(2, 241)=71 - KINDEX(1, 242)=40 - KINDEX(2, 242)=71 - KINDEX(1, 243)=5 - KINDEX(2, 243)=72 - KINDEX(1, 244)=8 - KINDEX(2, 244)=72 - KINDEX(1, 245)=21 - KINDEX(2, 245)=72 - KINDEX(1, 246)=35 - KINDEX(2, 246)=72 - KINDEX(1, 247)=5 - KINDEX(2, 247)=73 - KINDEX(1, 248)=19 - KINDEX(2, 248)=73 - KINDEX(1, 249)=25 - KINDEX(2, 249)=73 - KINDEX(1, 250)=39 - KINDEX(2, 250)=73 - KINDEX(1, 251)=5 - KINDEX(2, 251)=74 - KINDEX(1, 252)=20 - KINDEX(2, 252)=74 - KINDEX(1, 253)=25 - KINDEX(2, 253)=74 - KINDEX(1, 254)=39 - KINDEX(2, 254)=74 - KINDEX(1, 255)=4 - KINDEX(2, 255)=75 - KINDEX(1, 256)=5 - KINDEX(2, 256)=75 - KINDEX(1, 257)=22 - KINDEX(2, 257)=75 - KINDEX(1, 258)=26 - KINDEX(2, 258)=75 - KINDEX(1, 259)=27 - KINDEX(2, 259)=75 - KINDEX(1, 260)=40 - KINDEX(2, 260)=75 - KINDEX(1, 261)=1 - KINDEX(2, 261)=76 - KINDEX(1, 262)=2 - KINDEX(2, 262)=76 - KINDEX(1, 263)=13 - KINDEX(2, 263)=76 - KINDEX(1, 264)=14 - KINDEX(2, 264)=76 - KINDEX(1, 265)=15 - KINDEX(2, 265)=76 - KINDEX(1, 266)=16 - KINDEX(2, 266)=76 - KINDEX(1, 267)=17 - KINDEX(2, 267)=76 - KINDEX(1, 268)=19 - KINDEX(2, 268)=76 - KINDEX(1, 269)=22 - KINDEX(2, 269)=76 - KINDEX(1, 270)=23 - KINDEX(2, 270)=76 - KINDEX(1, 271)=24 - KINDEX(2, 271)=76 - KINDEX(1, 272)=25 - KINDEX(2, 272)=76 - KINDEX(1, 273)=30 - KINDEX(2, 273)=76 - KINDEX(1, 274)=31 - KINDEX(2, 274)=76 - KINDEX(1, 275)=32 - KINDEX(2, 275)=76 - KINDEX(1, 276)=38 - KINDEX(2, 276)=76 - KINDEX(1, 277)=40 - KINDEX(2, 277)=76 - KINDEX(1, 278)=1 - KINDEX(2, 278)=77 - KINDEX(1, 279)=2 - KINDEX(2, 279)=77 - KINDEX(1, 280)=13 - KINDEX(2, 280)=77 - KINDEX(1, 281)=14 - KINDEX(2, 281)=77 - KINDEX(1, 282)=15 - KINDEX(2, 282)=77 - KINDEX(1, 283)=19 - KINDEX(2, 283)=77 - KINDEX(1, 284)=20 - KINDEX(2, 284)=77 - KINDEX(1, 285)=22 - KINDEX(2, 285)=77 - KINDEX(1, 286)=23 - KINDEX(2, 286)=77 - KINDEX(1, 287)=24 - KINDEX(2, 287)=77 - KINDEX(1, 288)=25 - KINDEX(2, 288)=77 - KINDEX(1, 289)=30 - KINDEX(2, 289)=77 - KINDEX(1, 290)=31 - KINDEX(2, 290)=77 - KINDEX(1, 291)=32 - KINDEX(2, 291)=77 - KINDEX(1, 292)=38 - KINDEX(2, 292)=77 - KINDEX(1, 293)=40 - KINDEX(2, 293)=77 - KINDEX(1, 294)=1 - KINDEX(2, 294)=78 - KINDEX(1, 295)=13 - KINDEX(2, 295)=78 - KINDEX(1, 296)=14 - KINDEX(2, 296)=78 - KINDEX(1, 297)=15 - KINDEX(2, 297)=78 - KINDEX(1, 298)=22 - KINDEX(2, 298)=78 - KINDEX(1, 299)=23 - KINDEX(2, 299)=78 - KINDEX(1, 300)=25 - KINDEX(2, 300)=78 - KINDEX(1, 301)=29 - KINDEX(2, 301)=78 - KINDEX(1, 302)=30 - KINDEX(2, 302)=78 - KINDEX(1, 303)=38 - KINDEX(2, 303)=78 - KINDEX(1, 304)=1 - KINDEX(2, 304)=79 - KINDEX(1, 305)=4 - KINDEX(2, 305)=79 - KINDEX(1, 306)=13 - KINDEX(2, 306)=79 - KINDEX(1, 307)=14 - KINDEX(2, 307)=79 - KINDEX(1, 308)=15 - KINDEX(2, 308)=79 - KINDEX(1, 309)=22 - KINDEX(2, 309)=79 - KINDEX(1, 310)=27 - KINDEX(2, 310)=79 - KINDEX(1, 311)=38 - KINDEX(2, 311)=79 - KINDEX(1, 312)=4 - KINDEX(2, 312)=80 - KINDEX(1, 313)=21 - KINDEX(2, 313)=80 - KINDEX(1, 314)=26 - KINDEX(2, 314)=80 - KINDEX(1, 315)=35 - KINDEX(2, 315)=80 - KINDEX(1, 316)=15 - KINDEX(2, 316)=81 - KINDEX(1, 317)=21 - KINDEX(2, 317)=81 - KINDEX(1, 318)=35 - KINDEX(2, 318)=81 - KINDEX(1, 319)=4 - KINDEX(2, 319)=82 - KINDEX(1, 320)=7 - KINDEX(2, 320)=82 - KINDEX(1, 321)=21 - KINDEX(2, 321)=82 - KINDEX(1, 322)=36 - KINDEX(2, 322)=82 - KINDEX(1, 323)=15 - KINDEX(2, 323)=83 - KINDEX(1, 324)=21 - KINDEX(2, 324)=83 - KINDEX(1, 325)=36 - KINDEX(2, 325)=83 - KINDEX(1, 326)=37 - KINDEX(2, 326)=83 - KINDEX(1, 327)=1 - KINDEX(2, 327)=84 - KINDEX(1, 328)=14 - KINDEX(2, 328)=84 - KINDEX(1, 329)=21 - KINDEX(2, 329)=84 - KINDEX(1, 330)=36 - KINDEX(2, 330)=84 - KINDEX(1, 331)=4 - KINDEX(2, 331)=85 - KINDEX(1, 332)=27 - KINDEX(2, 332)=85 - KINDEX(1, 333)=38 - KINDEX(2, 333)=85 - KINDEX(1, 334)=4 - KINDEX(2, 334)=86 - KINDEX(1, 335)=27 - KINDEX(2, 335)=86 - KINDEX(1, 336)=38 - KINDEX(2, 336)=86 - KINDEX(1, 337)=3 - KINDEX(2, 337)=87 - KINDEX(1, 338)=4 - KINDEX(2, 338)=87 - KINDEX(1, 339)=15 - KINDEX(2, 339)=87 - KINDEX(1, 340)=22 - KINDEX(2, 340)=87 - KINDEX(1, 341)=31 - KINDEX(2, 341)=87 - KINDEX(1, 342)=3 - KINDEX(2, 342)=88 - KINDEX(1, 343)=4 - KINDEX(2, 343)=88 - KINDEX(1, 344)=15 - KINDEX(2, 344)=88 - KINDEX(1, 345)=22 - KINDEX(2, 345)=88 - KINDEX(1, 346)=23 - KINDEX(2, 346)=88 - KINDEX(1, 347)=24 - KINDEX(2, 347)=88 - KINDEX(1, 348)=25 - KINDEX(2, 348)=88 - KINDEX(1, 349)=26 - KINDEX(2, 349)=88 - KINDEX(1, 350)=31 - KINDEX(2, 350)=88 - KINDEX(1, 351)=32 - KINDEX(2, 351)=88 - KINDEX(1, 352)=40 - KINDEX(2, 352)=88 - KINDEX(1, 353)=3 - KINDEX(2, 353)=89 - KINDEX(1, 354)=4 - KINDEX(2, 354)=89 - KINDEX(1, 355)=15 - KINDEX(2, 355)=89 - KINDEX(1, 356)=22 - KINDEX(2, 356)=89 - KINDEX(1, 357)=23 - KINDEX(2, 357)=89 - KINDEX(1, 358)=24 - KINDEX(2, 358)=89 - KINDEX(1, 359)=33 - KINDEX(2, 359)=89 - KINDEX(1, 360)=3 - KINDEX(2, 360)=90 - KINDEX(1, 361)=4 - KINDEX(2, 361)=90 - KINDEX(1, 362)=15 - KINDEX(2, 362)=90 - KINDEX(1, 363)=19 - KINDEX(2, 363)=90 - KINDEX(1, 364)=22 - KINDEX(2, 364)=90 - KINDEX(1, 365)=23 - KINDEX(2, 365)=90 - KINDEX(1, 366)=24 - KINDEX(2, 366)=90 - KINDEX(1, 367)=25 - KINDEX(2, 367)=90 - KINDEX(1, 368)=26 - KINDEX(2, 368)=90 - KINDEX(1, 369)=34 - KINDEX(2, 369)=90 - KINDEX(1, 370)=3 - KINDEX(2, 370)=91 - KINDEX(1, 371)=4 - KINDEX(2, 371)=91 - KINDEX(1, 372)=15 - KINDEX(2, 372)=91 - KINDEX(1, 373)=25 - KINDEX(2, 373)=91 - KINDEX(1, 374)=26 - KINDEX(2, 374)=91 - KINDEX(1, 375)=37 - KINDEX(2, 375)=91 - KINDEX(1, 376)=3 - KINDEX(2, 376)=92 - KINDEX(1, 377)=4 - KINDEX(2, 377)=92 - KINDEX(1, 378)=15 - KINDEX(2, 378)=92 - KINDEX(1, 379)=22 - KINDEX(2, 379)=92 - KINDEX(1, 380)=23 - KINDEX(2, 380)=92 - KINDEX(1, 381)=25 - KINDEX(2, 381)=92 - KINDEX(1, 382)=31 - KINDEX(2, 382)=92 - KINDEX(1, 383)=38 - KINDEX(2, 383)=92 - KINDEX(1, 384)=40 - KINDEX(2, 384)=92 - KINDEX(1, 385)=3 - KINDEX(2, 385)=93 - KINDEX(1, 386)=4 - KINDEX(2, 386)=93 - KINDEX(1, 387)=15 - KINDEX(2, 387)=93 - KINDEX(1, 388)=22 - KINDEX(2, 388)=93 - KINDEX(1, 389)=23 - KINDEX(2, 389)=93 - KINDEX(1, 390)=24 - KINDEX(2, 390)=93 - KINDEX(1, 391)=26 - KINDEX(2, 391)=93 - KINDEX(1, 392)=39 - KINDEX(2, 392)=93 - KINDEX(1, 393)=15 - KINDEX(2, 393)=94 - KINDEX(1, 394)=28 - KINDEX(2, 394)=94 - KINDEX(1, 395)=31 - KINDEX(2, 395)=94 - KINDEX(1, 396)=15 - KINDEX(2, 396)=95 - KINDEX(1, 397)=29 - KINDEX(2, 397)=95 - KINDEX(1, 398)=32 - KINDEX(2, 398)=95 - KINDEX(1, 399)=15 - KINDEX(2, 399)=96 - KINDEX(1, 400)=29 - KINDEX(2, 400)=96 - KINDEX(1, 401)=33 - KINDEX(2, 401)=96 - KINDEX(1, 402)=15 - KINDEX(2, 402)=97 - KINDEX(1, 403)=29 - KINDEX(2, 403)=97 - KINDEX(1, 404)=34 - KINDEX(2, 404)=97 - KINDEX(1, 405)=15 - KINDEX(2, 405)=98 - KINDEX(1, 406)=29 - KINDEX(2, 406)=98 - KINDEX(1, 407)=37 - KINDEX(2, 407)=98 - KINDEX(1, 408)=1 - KINDEX(2, 408)=99 - KINDEX(1, 409)=15 - KINDEX(2, 409)=99 - KINDEX(1, 410)=29 - KINDEX(2, 410)=99 - KINDEX(1, 411)=30 - KINDEX(2, 411)=99 - KINDEX(1, 412)=38 - KINDEX(2, 412)=99 - KINDEX(1, 413)=15 - KINDEX(2, 413)=100 - KINDEX(1, 414)=26 - KINDEX(2, 414)=100 - KINDEX(1, 415)=39 - KINDEX(2, 415)=100 - KINDEX(1, 416)=15 - KINDEX(2, 416)=101 - KINDEX(1, 417)=22 - KINDEX(2, 417)=101 - KINDEX(1, 418)=31 - KINDEX(2, 418)=101 - KINDEX(1, 419)=15 - KINDEX(2, 419)=102 - KINDEX(1, 420)=22 - KINDEX(2, 420)=102 - KINDEX(1, 421)=23 - KINDEX(2, 421)=102 - KINDEX(1, 422)=24 - KINDEX(2, 422)=102 - KINDEX(1, 423)=25 - KINDEX(2, 423)=102 - KINDEX(1, 424)=31 - KINDEX(2, 424)=102 - KINDEX(1, 425)=32 - KINDEX(2, 425)=102 - KINDEX(1, 426)=40 - KINDEX(2, 426)=102 - KINDEX(1, 427)=15 - KINDEX(2, 427)=103 - KINDEX(1, 428)=22 - KINDEX(2, 428)=103 - KINDEX(1, 429)=23 - KINDEX(2, 429)=103 - KINDEX(1, 430)=24 - KINDEX(2, 430)=103 - KINDEX(1, 431)=31 - KINDEX(2, 431)=103 - KINDEX(1, 432)=33 - KINDEX(2, 432)=103 - KINDEX(1, 433)=15 - KINDEX(2, 433)=104 - KINDEX(1, 434)=19 - KINDEX(2, 434)=104 - KINDEX(1, 435)=22 - KINDEX(2, 435)=104 - KINDEX(1, 436)=23 - KINDEX(2, 436)=104 - KINDEX(1, 437)=24 - KINDEX(2, 437)=104 - KINDEX(1, 438)=25 - KINDEX(2, 438)=104 - KINDEX(1, 439)=31 - KINDEX(2, 439)=104 - KINDEX(1, 440)=34 - KINDEX(2, 440)=104 - KINDEX(1, 441)=15 - KINDEX(2, 441)=105 - KINDEX(1, 442)=22 - KINDEX(2, 442)=105 - KINDEX(1, 443)=25 - KINDEX(2, 443)=105 - KINDEX(1, 444)=31 - KINDEX(2, 444)=105 - KINDEX(1, 445)=37 - KINDEX(2, 445)=105 - KINDEX(1, 446)=15 - KINDEX(2, 446)=106 - KINDEX(1, 447)=22 - KINDEX(2, 447)=106 - KINDEX(1, 448)=23 - KINDEX(2, 448)=106 - KINDEX(1, 449)=25 - KINDEX(2, 449)=106 - KINDEX(1, 450)=30 - KINDEX(2, 450)=106 - KINDEX(1, 451)=31 - KINDEX(2, 451)=106 - KINDEX(1, 452)=38 - KINDEX(2, 452)=106 - KINDEX(1, 453)=40 - KINDEX(2, 453)=106 - KINDEX(1, 454)=4 - KINDEX(2, 454)=107 - KINDEX(1, 455)=15 - KINDEX(2, 455)=107 - KINDEX(1, 456)=22 - KINDEX(2, 456)=107 - KINDEX(1, 457)=23 - KINDEX(2, 457)=107 - KINDEX(1, 458)=24 - KINDEX(2, 458)=107 - KINDEX(1, 459)=26 - KINDEX(2, 459)=107 - KINDEX(1, 460)=31 - KINDEX(2, 460)=107 - KINDEX(1, 461)=39 - KINDEX(2, 461)=107 - KINDEX(1, 462)=15 - KINDEX(2, 462)=108 - KINDEX(1, 463)=22 - KINDEX(2, 463)=108 - KINDEX(1, 464)=23 - KINDEX(2, 464)=108 - KINDEX(1, 465)=24 - KINDEX(2, 465)=108 - KINDEX(1, 466)=25 - KINDEX(2, 466)=108 - KINDEX(1, 467)=30 - KINDEX(2, 467)=108 - KINDEX(1, 468)=31 - KINDEX(2, 468)=108 - KINDEX(1, 469)=32 - KINDEX(2, 469)=108 - KINDEX(1, 470)=38 - KINDEX(2, 470)=108 - KINDEX(1, 471)=40 - KINDEX(2, 471)=108 - KINDEX(1, 472)=15 - KINDEX(2, 472)=109 - KINDEX(1, 473)=22 - KINDEX(2, 473)=109 - KINDEX(1, 474)=23 - KINDEX(2, 474)=109 - KINDEX(1, 475)=24 - KINDEX(2, 475)=109 - KINDEX(1, 476)=30 - KINDEX(2, 476)=109 - KINDEX(1, 477)=31 - KINDEX(2, 477)=109 - KINDEX(1, 478)=33 - KINDEX(2, 478)=109 - KINDEX(1, 479)=38 - KINDEX(2, 479)=109 - KINDEX(1, 480)=15 - KINDEX(2, 480)=110 - KINDEX(1, 481)=19 - KINDEX(2, 481)=110 - KINDEX(1, 482)=22 - KINDEX(2, 482)=110 - KINDEX(1, 483)=23 - KINDEX(2, 483)=110 - KINDEX(1, 484)=24 - KINDEX(2, 484)=110 - KINDEX(1, 485)=25 - KINDEX(2, 485)=110 - KINDEX(1, 486)=30 - KINDEX(2, 486)=110 - KINDEX(1, 487)=31 - KINDEX(2, 487)=110 - KINDEX(1, 488)=34 - KINDEX(2, 488)=110 - KINDEX(1, 489)=38 - KINDEX(2, 489)=110 - KINDEX(1, 490)=15 - KINDEX(2, 490)=111 - KINDEX(1, 491)=25 - KINDEX(2, 491)=111 - KINDEX(1, 492)=31 - KINDEX(2, 492)=111 - KINDEX(1, 493)=37 - KINDEX(2, 493)=111 - KINDEX(1, 494)=38 - KINDEX(2, 494)=111 - KINDEX(1, 495)=15 - KINDEX(2, 495)=112 - KINDEX(1, 496)=22 - KINDEX(2, 496)=112 - KINDEX(1, 497)=23 - KINDEX(2, 497)=112 - KINDEX(1, 498)=24 - KINDEX(2, 498)=112 - KINDEX(1, 499)=25 - KINDEX(2, 499)=112 - KINDEX(1, 500)=30 - KINDEX(2, 500)=112 - KINDEX(1, 501)=31 - KINDEX(2, 501)=112 - KINDEX(1, 502)=38 - KINDEX(2, 502)=112 - KINDEX(1, 503)=40 - KINDEX(2, 503)=112 - KINDEX(1, 504)=4 - KINDEX(2, 504)=113 - KINDEX(1, 505)=15 - KINDEX(2, 505)=113 - KINDEX(1, 506)=22 - KINDEX(2, 506)=113 - KINDEX(1, 507)=23 - KINDEX(2, 507)=113 - KINDEX(1, 508)=24 - KINDEX(2, 508)=113 - KINDEX(1, 509)=26 - KINDEX(2, 509)=113 - KINDEX(1, 510)=30 - KINDEX(2, 510)=113 - KINDEX(1, 511)=31 - KINDEX(2, 511)=113 - KINDEX(1, 512)=38 - KINDEX(2, 512)=113 - KINDEX(1, 513)=39 - KINDEX(2, 513)=113 - KINDEX(1, 514)=15 - KINDEX(2, 514)=114 - KINDEX(1, 515)=26 - KINDEX(2, 515)=114 - KINDEX(1, 516)=39 - KINDEX(2, 516)=114 - KINDEX(1, 517)=4 - KINDEX(2, 517)=115 - KINDEX(1, 518)=15 - KINDEX(2, 518)=115 - KINDEX(1, 519)=22 - KINDEX(2, 519)=115 - KINDEX(1, 520)=23 - KINDEX(2, 520)=115 - KINDEX(1, 521)=24 - KINDEX(2, 521)=115 - KINDEX(1, 522)=26 - KINDEX(2, 522)=115 - KINDEX(1, 523)=39 - KINDEX(2, 523)=115 - KINDEX(1, 524)=4 - KINDEX(2, 524)=116 - KINDEX(1, 525)=5 - KINDEX(2, 525)=116 - KINDEX(1, 526)=15 - KINDEX(2, 526)=116 - KINDEX(1, 527)=22 - KINDEX(2, 527)=116 - KINDEX(1, 528)=31 - KINDEX(2, 528)=116 - KINDEX(1, 529)=4 - KINDEX(2, 529)=117 - KINDEX(1, 530)=5 - KINDEX(2, 530)=117 - KINDEX(1, 531)=15 - KINDEX(2, 531)=117 - KINDEX(1, 532)=22 - KINDEX(2, 532)=117 - KINDEX(1, 533)=23 - KINDEX(2, 533)=117 - KINDEX(1, 534)=24 - KINDEX(2, 534)=117 - KINDEX(1, 535)=25 - KINDEX(2, 535)=117 - KINDEX(1, 536)=31 - KINDEX(2, 536)=117 - KINDEX(1, 537)=32 - KINDEX(2, 537)=117 - KINDEX(1, 538)=40 - KINDEX(2, 538)=117 - KINDEX(1, 539)=4 - KINDEX(2, 539)=118 - KINDEX(1, 540)=5 - KINDEX(2, 540)=118 - KINDEX(1, 541)=15 - KINDEX(2, 541)=118 - KINDEX(1, 542)=22 - KINDEX(2, 542)=118 - KINDEX(1, 543)=23 - KINDEX(2, 543)=118 - KINDEX(1, 544)=24 - KINDEX(2, 544)=118 - KINDEX(1, 545)=33 - KINDEX(2, 545)=118 - KINDEX(1, 546)=4 - KINDEX(2, 546)=119 - KINDEX(1, 547)=5 - KINDEX(2, 547)=119 - KINDEX(1, 548)=15 - KINDEX(2, 548)=119 - KINDEX(1, 549)=19 - KINDEX(2, 549)=119 - KINDEX(1, 550)=22 - KINDEX(2, 550)=119 - KINDEX(1, 551)=23 - KINDEX(2, 551)=119 - KINDEX(1, 552)=24 - KINDEX(2, 552)=119 - KINDEX(1, 553)=25 - KINDEX(2, 553)=119 - KINDEX(1, 554)=34 - KINDEX(2, 554)=119 - KINDEX(1, 555)=4 - KINDEX(2, 555)=120 - KINDEX(1, 556)=5 - KINDEX(2, 556)=120 - KINDEX(1, 557)=15 - KINDEX(2, 557)=120 - KINDEX(1, 558)=25 - KINDEX(2, 558)=120 - KINDEX(1, 559)=37 - KINDEX(2, 559)=120 - KINDEX(1, 560)=4 - KINDEX(2, 560)=121 - KINDEX(1, 561)=5 - KINDEX(2, 561)=121 - KINDEX(1, 562)=15 - KINDEX(2, 562)=121 - KINDEX(1, 563)=22 - KINDEX(2, 563)=121 - KINDEX(1, 564)=23 - KINDEX(2, 564)=121 - KINDEX(1, 565)=25 - KINDEX(2, 565)=121 - KINDEX(1, 566)=31 - KINDEX(2, 566)=121 - KINDEX(1, 567)=38 - KINDEX(2, 567)=121 - KINDEX(1, 568)=40 - KINDEX(2, 568)=121 - KINDEX(1, 569)=4 - KINDEX(2, 569)=122 - KINDEX(1, 570)=5 - KINDEX(2, 570)=122 - KINDEX(1, 571)=15 - KINDEX(2, 571)=122 - KINDEX(1, 572)=22 - KINDEX(2, 572)=122 - KINDEX(1, 573)=23 - KINDEX(2, 573)=122 - KINDEX(1, 574)=24 - KINDEX(2, 574)=122 - KINDEX(1, 575)=26 - KINDEX(2, 575)=122 - KINDEX(1, 576)=39 - KINDEX(2, 576)=122 - KINDEX(1, 577)=15 - KINDEX(2, 577)=123 - KINDEX(1, 578)=29 - KINDEX(2, 578)=123 - KINDEX(1, 579)=40 - KINDEX(2, 579)=123 - KINDEX(1, 580)=15 - KINDEX(2, 580)=124 - KINDEX(1, 581)=22 - KINDEX(2, 581)=124 - KINDEX(1, 582)=31 - KINDEX(2, 582)=124 - KINDEX(1, 583)=40 - KINDEX(2, 583)=124 - KINDEX(1, 584)=31 - KINDEX(2, 584)=125 - KINDEX(1, 585)=38 - KINDEX(2, 585)=125 - KINDEX(1, 586)=40 - KINDEX(2, 586)=125 - KINDEX(1, 587)=40 - KINDEX(2, 587)=126 - KINDEX(1, 588)=3 - KINDEX(2, 588)=127 - KINDEX(1, 589)=4 - KINDEX(2, 589)=127 - KINDEX(1, 590)=40 - KINDEX(2, 590)=127 - KINDEX(1, 591)=4 - KINDEX(2, 591)=128 - KINDEX(1, 592)=5 - KINDEX(2, 592)=128 - KINDEX(1, 593)=40 - KINDEX(2, 593)=128 -IF (LHOOK) CALL DR_HOOK('CH_NONZEROTERMS',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_NONZEROTERMS diff --git a/src/arome/chem/internals/ch_orilam.F90 b/src/arome/chem/internals/ch_orilam.F90 deleted file mode 100644 index 54a333fa2074f84d007f6d5df642a710e80b8708..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_orilam.F90 +++ /dev/null @@ -1,95 +0,0 @@ -! ######spl -SUBROUTINE CH_ORILAM(PAERO, PCHEM, PM, PSIG0, PRG0, PN0, PCTOTG, PCTOTA,& - PCCTOT, PDTACT, PSEDA,& - PMU, PLAMBDA, PRHOP0, POM, PSO4RAT, & - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, PFRAC, PMI,& - PTIME, GSCHEME, PSOLORG) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ##################################################################################### -!! -!! PURPOSE -!! ------- -!! -!! ORILAM aerosol Code -!! -!! -!! Inputs: -!! PCHEM : Chemical (gaseous and aerosol) species (in molec./cm3) -!! PSEDA : Moments -!! -!! Outputs: -!! -!! -!! -!! REFERENCE -!! --------- -!! P. Tulet, V. Crassier, F. Cousin, K. Suhre, R. Rosset, jgr -!! ORILAM, A three moment lognormal aerosol scheme for mesoscale atmospheric -!! model. -!! On-line coupling into the Meso-NH-C model and validation on the Escompte -!! campaign. -!! -!! AUTHOR -!! ------ -!! Pierre Tulet (GMEI) and Vincent Crassier (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -!! EXTERNAL -!! -------- -USE MODI_CH_AER_TRANS -USE MODI_CH_AER_DRIVER - -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -USE MODD_CH_AEROSOL -! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -REAL, INTENT(IN) :: PDTACT, PTIME -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRHOP0, POM -REAL, DIMENSION(:), INTENT(INOUT) :: PLAMBDA, PMU, PSO4RAT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCHEM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAERO -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMI -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -CHARACTER(LEN=10), INTENT(IN) :: GSCHEME - -REAL, DIMENSION(SIZE(PAERO,1),JPMODE) :: ZMASK -! -!------------------------------------------------------------------------------- -! transfer gas phase variables into aerosol variables -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_ORILAM',0,ZHOOK_HANDLE) -CALL CH_AER_TRANS(0, PM, PSIG0, PRG0, PN0, PRHOP0,PAERO, PCHEM, PCTOTG, PCTOTA, PCCTOT,& - PFRAC, PMI, ZMASK,GSCHEME) - -! integrate aerosol variables -CALL CH_AER_DRIVER(PM,PSIG0, PRG0, PN0, PCTOTG, PCTOTA, PCCTOT, & - PDTACT, PSEDA, PMU, PLAMBDA, PRHOP0, POM, PSO4RAT, & - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, ZMASK, PTIME, & - PSOLORG) -! -! transfer aerosol variables back into gas phase variables - CALL CH_AER_TRANS(1, PM, PSIG0, PRG0, PN0, PRHOP0, PAERO, PCHEM, PCTOTG, PCTOTA, PCCTOT,& - PFRAC, PMI, ZMASK,GSCHEME) -! -! -IF (LHOOK) CALL DR_HOOK('CH_ORILAM',1,ZHOOK_HANDLE) -END SUBROUTINE CH_ORILAM diff --git a/src/arome/chem/internals/ch_output.F90 b/src/arome/chem/internals/ch_output.F90 deleted file mode 100644 index 1ce6ab0f6f5487478dd489a93b27ee91d0952944..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_output.F90 +++ /dev/null @@ -1,98 +0,0 @@ -! ######spl - SUBROUTINE CH_OUTPUT(PCONC, PAERO, PMI, TPM, KMI, KVECNPT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################## -!! -!!*** *CH_OUTPUT* -!! -!! PURPOSE -!! ------- -!! save variables to disk for later visualisation -!! -!! METHOD -!! ------ -!! write all variables specified in CH_INIT_OUTPUT in the format -!! CRESULTFORMAT to unit NRESULTIO, which should have been opened -!! previously by CH_INIT_OUTPUT -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/03/95 -!! 27/07/96 (K. Suhre) restructured -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -USE MODI_CH_GET_RATES -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_MODEL0D, ONLY: NRESULTIO, XTSIMUL, CRESULTFORMAT, NVERB -USE MODD_CH_AEROSOL, ONLY: LORILAM -USE MODD_CH_M9, ONLY: NEQ, NREAC, NMETEOVARS, METEOTRANSTYPE -!! - -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -INTEGER, INTENT(IN) :: KVECNPT -REAL, DIMENSION(:,:), INTENT(IN) :: PCONC ! the chem species -REAL, DIMENSION(:,:), INTENT(IN) :: PAERO ! the chem species -REAL, DIMENSION(:,:), INTENT(IN) :: PMI ! the molecular mass -TYPE(METEOTRANSTYPE), DIMENSION(KVECNPT), INTENT(IN) :: TPM ! the meteo variables -INTEGER, INTENT(IN) :: KMI -! -!* 0.2 declaration of local variables -!! -INTEGER :: JI ! loop control -!REAL, DIMENSION(KVECNPT,NREAC) :: ZRATE ! for retrieval of reaction rates and names -REAL, DIMENSION(:,:), ALLOCATABLE :: ZRATE ! for retrieval of reaction rates and names -INTEGER :: NAERO, NMI -! -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_OUTPUT',0,ZHOOK_HANDLE) -ALLOCATE(ZRATE(KVECNPT,NREAC)) -! -!* EXECUTABLE STATEMENTS -! --------------------- -! -IF (LORILAM) THEN -NAERO=SIZE(PAERO,2) -NMI=SIZE(PMI,2) -ELSE -NAERO=0 -NMI=0 -END IF -IF (NVERB >= 5) & - PRINT *, "CH_OUTPUT: saving results to disk at XTSIMUL = ", XTSIMUL -! -! get reaction rates -CALL CH_GET_RATES(ZRATE,KMI,KVECNPT,NREAC) -! -! write all variables to file -WRITE(NRESULTIO,CRESULTFORMAT) XTSIMUL, & - (PCONC(1,JI), JI = 1, NEQ), & - (PAERO(1,JI), JI = 1, NAERO), & - (PMI(1,JI), JI = 1, NMI), & - (ZRATE(1,JI), JI = 1, NREAC), & - (TPM(1)%XMETEOVAR(JI), JI = 1, NMETEOVARS) -! -DEALLOCATE(ZRATE) -! -IF (LHOOK) CALL DR_HOOK('CH_OUTPUT',1,ZHOOK_HANDLE) -END SUBROUTINE CH_OUTPUT diff --git a/src/arome/chem/internals/ch_prodloss.F90 b/src/arome/chem/internals/ch_prodloss.F90 deleted file mode 100644 index 7e160767cb5efc73ccc23f08ad4050f7ff1a63f0..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_prodloss.F90 +++ /dev/null @@ -1,709 +0,0 @@ -!OPTION! -Nfusion - SUBROUTINE CH_PRODLOSS(PTIME,PCONC,PPROD,PLOSS,KMI,KVECNPT,KEQ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ################################################### -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!! -!!*** *MODD_CH_PRODLOSS* -!! -!! PURPOSE -!! ------- -! calculation of production and loss terms for diagnostics -!! -!!** METHOD -!! ------ -!! The terms of temporal derivative of the chemical species, -!! written as: -!! d/dt PCONC = CH_FCN = PPROD - PCONC*PLOSS, -!! are calculated for diagnostic purposes. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PPROD, PLOSS -INTEGER, INTENT(IN) :: KMI -TYPE(CCSTYPE), POINTER :: TPK -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS',0,ZHOOK_HANDLE) -TPK=>TACCS(KMI) -! /BEGIN_CODE/ - - TPK%O1D(:)=(TPK%K002(:)*PCONC(:,JP_O3))/(TPK%K020(:)*TPK%N2(:)+TPK%K021(:)*TPK%O2(:)+& - &TPK%K022(:)*TPK%H2O(:)) - - TPK%O3P(:)=(TPK%K001(:)*PCONC(:,JP_NO2)+TPK%K003(:)*PCONC(:,JP_O3)+TPK%K008(:)*PCONC(:,JP_NO3)+& - &TPK%K020(:)*TPK%O1D(:)*TPK%N2(:)+TPK%K021(:)*TPK%O1D(:)*TPK%O2(:)+& - &0.09000*TPK%K077(:)*PCONC(:,JP_BIO)*PCONC(:,JP_O3))/& - &(TPK%K018(:)*TPK%O2(:)+TPK%K019(:)*PCONC(:,JP_O3)+TPK%K029(:)*PCONC(:,JP_NO)+& - &TPK%K030(:)*PCONC(:,JP_NO2)+TPK%K031(:)*PCONC(:,JP_NO2)+TPK%K053(:)*PCONC(:,JP_BIO)+& - &TPK%K054(:)*PCONC(:,JP_CARBO)) - - -! /END_CODE/ -CALL SUB0 -CALL SUB1 -CALL SUB2 -CALL SUB3 - -IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS',1,ZHOOK_HANDLE) -CONTAINS - -!OPTION! -Nfusion -SUBROUTINE SUB0 -! -!Indices 1 a 10 -! -! -!PPROD(O3) = +K018*<O3P>*<O2>+0.17307*K099*<CARBOP>*<HO2> - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB0',0,ZHOOK_HANDLE) - PPROD(:,1) = +TPK%K018(:)*TPK%O3P(:)*TPK%O2(:)+0.17307*TPK%K099(:)*PCONC(:,38)& -&*PCONC(:,15) -!PLOSS(O3) = +K002+K003+K019*<O3P>+K023*<OH>+K024*<HO2>+K042*<NO>+K043*<NO2>+K0 -!76*<ALKE>+K077*<BIO>+K078*<CARBO>+K079*<PAN>+K084*<ADD> - PLOSS(:,1) = +TPK%K002(:)+TPK%K003(:)+TPK%K019(:)*TPK%O3P(:)+TPK%K023(:)*PCONC& -&(:,14)+TPK%K024(:)*PCONC(:,15)+TPK%K042(:)*PCONC(:,3)+TPK%K043(:)*PCONC(:,4)+T& -&PK%K076(:)*PCONC(:,19)+TPK%K077(:)*PCONC(:,20)+TPK%K078(:)*PCONC(:,25)+TPK%K07& -&9(:)*PCONC(:,27)+TPK%K084(:)*PCONC(:,36) -! -!PPROD(H2O2) = +K027*<HO2>*<HO2>+K028*<HO2>*<HO2>*<H2O>+0.01833*K076*<ALKE>*<O3 -!>+0.00100*K077*<BIO>*<O3> - PPROD(:,2) = +TPK%K027(:)*PCONC(:,15)*PCONC(:,15)+TPK%K028(:)*PCONC(:,15)*PCON& -&C(:,15)*TPK%H2O(:)+0.01833*TPK%K076(:)*PCONC(:,19)*PCONC(:,1)+0.00100*TPK%K077& -&(:)*PCONC(:,20)*PCONC(:,1) -!PLOSS(H2O2) = +K009+K026*<OH> - PLOSS(:,2) = +TPK%K009(:)+TPK%K026(:)*PCONC(:,14) -! -!PPROD(NO) = +K001*<NO2>+K004*<HONO>+K007*<NO3>+K030*<O3P>*<NO2>+K046*<NO3>*<NO -!2> - PPROD(:,3) = +TPK%K001(:)*PCONC(:,4)+TPK%K004(:)*PCONC(:,7)+TPK%K007(:)*PCONC(& -&:,5)+TPK%K030(:)*TPK%O3P(:)*PCONC(:,4)+TPK%K046(:)*PCONC(:,5)*PCONC(:,4) -!PLOSS(NO) = +K029*<O3P>+K032*<OH>+K035*<HO2>+K042*<O3>+K044*<NO>*<O2>+K044*<NO -!>*<O2>+K045*<NO3>+K087*<MO2>+K088*<ALKAP>+K089*<ALKEP>+K090*<BIOP>+K091*<AROP> -!+K092*<CARBOP>+K093*<OLN>+K127*<XO2> - PLOSS(:,3) = +TPK%K029(:)*TPK%O3P(:)+TPK%K032(:)*PCONC(:,14)+TPK%K035(:)*PCONC& -&(:,15)+TPK%K042(:)*PCONC(:,1)+TPK%K044(:)*PCONC(:,3)*TPK%O2(:)+TPK%K044(:)*PCO& -&NC(:,3)*TPK%O2(:)+TPK%K045(:)*PCONC(:,5)+TPK%K087(:)*PCONC(:,31)+TPK%K088(:)*P& -&CONC(:,32)+TPK%K089(:)*PCONC(:,33)+TPK%K090(:)*PCONC(:,34)+TPK%K091(:)*PCONC(:& -&,37)+TPK%K092(:)*PCONC(:,38)+TPK%K093(:)*PCONC(:,39)+TPK%K127(:)*PCONC(:,40) -! - -!PPROD(NO2) = +K005*<HNO3>+0.65*K006*<HNO4>+K008*<NO3>+K017*<ONIT>+K029*<O3P>*< -!NO>+K034*<OH>*<NO3>+K035*<HO2>*<NO>+K037*<HNO4>+0.7*K038*<HO2>*<NO3>+K039*<OH> -!*<HONO>+K041*<OH>*<HNO4>+K042*<O3>*<NO>+K044*<NO>*<NO>*<O2>+K044*<NO>*<NO>*<O2 -!>+K045*<NO3>*<NO>+K045*<NO3>*<NO>+K046*<NO3>*<NO2>+K048*<N2O5>+K049*<NO3>*<NO3 -!>+K049*<NO3>*<NO3>+K068*<ONIT>*<OH>+0.10530*K071*<CARBO>*<NO3>+0.40*K075*<PAN> -!*<NO3>+0.70*K079*<PAN>*<O3>+K086*<PAN>+K087*<MO2>*<NO>+0.91541*K088*<ALKAP>*<N -!O>+K089*<ALKEP>*<NO>+0.84700*K090*<BIOP>*<NO>+0.95115*K091*<AROP>*<NO>+K092*<C -!ARBOP>*<NO>+1.81599*K093*<OLN>*<NO>+0.32440*K107*<OLN>*<MO2>+0.00000*K113*<OLN -!>*<CARBOP>+0.00000*K115*<OLN>*<OLN>+K116*<MO2>*<NO3>+K117*<ALKAP>*<NO3>+K118*< -!ALKEP>*<NO3>+K119*<BIOP>*<NO3>+K120*<AROP>*<NO3>+K121*<CARBOP>*<NO3>+1.74072*K -!122*<OLN>*<NO3>+K127*<XO2>*<NO>+K128*<XO2>*<NO3> - PPROD(:,4) = +TPK%K005(:)*PCONC(:,8)+0.65*TPK%K006(:)*PCONC(:,9)+TPK%K008(:)*P& -&CONC(:,5)+TPK%K017(:)*PCONC(:,26)+TPK%K029(:)*TPK%O3P(:)*PCONC(:,3)+TPK%K034(:& -&)*PCONC(:,14)*PCONC(:,5)+TPK%K035(:)*PCONC(:,15)*PCONC(:,3)+TPK%K037(:)*PCONC(& -&:,9)+0.7*TPK%K038(:)*PCONC(:,15)*PCONC(:,5)+TPK%K039(:)*PCONC(:,14)*PCONC(:,7)& -&+TPK%K041(:)*PCONC(:,14)*PCONC(:,9)+TPK%K042(:)*PCONC(:,1)*PCONC(:,3)+TPK%K044& -&(:)*PCONC(:,3)*PCONC(:,3)*TPK%O2(:)+TPK%K044(:)*PCONC(:,3)*PCONC(:,3)*TPK%O2(:& -&)+TPK%K045(:)*PCONC(:,5)*PCONC(:,3)+TPK%K045(:)*PCONC(:,5)*PCONC(:,3)+TPK%K046& -&(:)*PCONC(:,5)*PCONC(:,4)+TPK%K048(:)*PCONC(:,6)+TPK%K049(:)*PCONC(:,5)*PCONC(& -&:,5)+TPK%K049(:)*PCONC(:,5)*PCONC(:,5)+TPK%K068(:)*PCONC(:,26)*PCONC(:,14)+0.1& -&0530*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+0.40*TPK%K075(:)*PCONC(:,27)*PCONC(:,5& -&)+0.70*TPK%K079(:)*PCONC(:,27)*PCONC(:,1)+TPK%K086(:)*PCONC(:,27)+TPK%K087(:)*& -&PCONC(:,31)*PCONC(:,3)+0.91541*TPK%K088(:)*PCONC(:,32)*PCONC(:,3)+TPK%K089(:)*& -&PCONC(:,33)*PCONC(:,3)+0.84700*TPK%K090(:)*PCONC(:,34)*PCONC(:,3)+0.95115*TPK%& -&K091(:)*PCONC(:,37)*PCONC(:,3)+TPK%K092(:)*PCONC(:,38)*PCONC(:,3)+1.81599*TPK%& -&K093(:)*PCONC(:,39)*PCONC(:,3)+0.32440*TPK%K107(:)*PCONC(:,39)*PCONC(:,31)+0.0& -&0000*TPK%K113(:)*PCONC(:,39)*PCONC(:,38)+0.00000*TPK%K115(:)*PCONC(:,39)*PCONC& -&(:,39)+TPK%K116(:)*PCONC(:,31)*PCONC(:,5)+TPK%K117(:)*PCONC(:,32)*PCONC(:,5)+T& -&PK%K118(:)*PCONC(:,33)*PCONC(:,5)+TPK%K119(:)*PCONC(:,34)*PCONC(:,5)+TPK%K120(& -&:)*PCONC(:,37)*PCONC(:,5)+TPK%K121(:)*PCONC(:,38)*PCONC(:,5)+1.74072*TPK%K122(& -&:)*PCONC(:,39)*PCONC(:,5)+TPK%K127(:)*PCONC(:,40)*PCONC(:,3)+TPK%K128(:)*PCONC& -&(:,40)*PCONC(:,5) -!PLOSS(NO2) = +K001+K030*<O3P>+K031*<O3P>+K033*<OH>+K036*<HO2>+K043*<O3>+K046*< -!NO3>+K047*<NO3>+K080*<PHO>+K082*<ADD>+K085*<CARBOP> - PLOSS(:,4) = +TPK%K001(:)+TPK%K030(:)*TPK%O3P(:)+TPK%K031(:)*TPK%O3P(:)+TPK%K0& -&33(:)*PCONC(:,14)+TPK%K036(:)*PCONC(:,15)+TPK%K043(:)*PCONC(:,1)+TPK%K046(:)*P& -&CONC(:,5)+TPK%K047(:)*PCONC(:,5)+TPK%K080(:)*PCONC(:,35)+TPK%K082(:)*PCONC(:,3& -&6)+TPK%K085(:)*PCONC(:,38) - -! -!PPROD(NO3) = +0.35*K006*<HNO4>+K031*<O3P>*<NO2>+K040*<OH>*<HNO3>+K043*<O3>*<NO -!2>+K048*<N2O5>+0.71893*K067*<PAN>*<OH>+0.60*K075*<PAN>*<NO3> - PPROD(:,5) = +0.35*TPK%K006(:)*PCONC(:,9)+TPK%K031(:)*TPK%O3P(:)*PCONC(:,4)+TP& -&K%K040(:)*PCONC(:,14)*PCONC(:,8)+TPK%K043(:)*PCONC(:,1)*PCONC(:,4)+TPK%K048(:)& -&*PCONC(:,6)+0.71893*TPK%K067(:)*PCONC(:,27)*PCONC(:,14)+0.60*TPK%K075(:)*PCONC& -&(:,27)*PCONC(:,5) -!PLOSS(NO3) = +K007+K008+K034*<OH>+K038*<HO2>+K045*<NO>+K046*<NO2>+K047*<NO2>+K -!049*<NO3>+K049*<NO3>+K069*<HCHO>+K070*<ALD>+K071*<CARBO>+K072*<ARO>+K073*<ALKE -!>+K074*<BIO>+K075*<PAN>+K116*<MO2>+K117*<ALKAP>+K118*<ALKEP>+K119*<BIOP>+K120* -!<AROP>+K121*<CARBOP>+K122*<OLN>+K128*<XO2> - PLOSS(:,5) = +TPK%K007(:)+TPK%K008(:)+TPK%K034(:)*PCONC(:,14)+TPK%K038(:)*PCON& -&C(:,15)+TPK%K045(:)*PCONC(:,3)+TPK%K046(:)*PCONC(:,4)+TPK%K047(:)*PCONC(:,4)+T& -&PK%K049(:)*PCONC(:,5)+TPK%K049(:)*PCONC(:,5)+TPK%K069(:)*PCONC(:,22)+TPK%K070(& -&:)*PCONC(:,23)+TPK%K071(:)*PCONC(:,25)+TPK%K072(:)*PCONC(:,21)+TPK%K073(:)*PCO& -&NC(:,19)+TPK%K074(:)*PCONC(:,20)+TPK%K075(:)*PCONC(:,27)+TPK%K116(:)*PCONC(:,3& -&1)+TPK%K117(:)*PCONC(:,32)+TPK%K118(:)*PCONC(:,33)+TPK%K119(:)*PCONC(:,34)+TPK& -&%K120(:)*PCONC(:,37)+TPK%K121(:)*PCONC(:,38)+TPK%K122(:)*PCONC(:,39)+TPK%K128(& -&:)*PCONC(:,40) -! -!PPROD(N2O5) = +K047*<NO3>*<NO2> - PPROD(:,6) = +TPK%K047(:)*PCONC(:,5)*PCONC(:,4) -!PLOSS(N2O5) = +K048 - PLOSS(:,6) = +TPK%K048(:) -! -!PPROD(HONO) = +K032*<OH>*<NO>+K082*<ADD>*<NO2> - PPROD(:,7) = +TPK%K032(:)*PCONC(:,14)*PCONC(:,3)+TPK%K082(:)*PCONC(:,36)*PCONC& -&(:,4) -!PLOSS(HONO) = +K004+K039*<OH> - PLOSS(:,7) = +TPK%K004(:)+TPK%K039(:)*PCONC(:,14) -! -!PPROD(HNO3) = +K033*<OH>*<NO2>+0.3*K038*<HO2>*<NO3>+K069*<HCHO>*<NO3>+K070*<AL -!D>*<NO3>+0.91567*K071*<CARBO>*<NO3>+K072*<ARO>*<NO3> - PPROD(:,8) = +TPK%K033(:)*PCONC(:,14)*PCONC(:,4)+0.3*TPK%K038(:)*PCONC(:,15)*P& -&CONC(:,5)+TPK%K069(:)*PCONC(:,22)*PCONC(:,5)+TPK%K070(:)*PCONC(:,23)*PCONC(:,5& -&)+0.91567*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+TPK%K072(:)*PCONC(:,21)*PCONC(:,5& -&) -!PLOSS(HNO3) = +K005+K040*<OH> - PLOSS(:,8) = +TPK%K005(:)+TPK%K040(:)*PCONC(:,14) -! -!PPROD(HNO4) = +K036*<HO2>*<NO2> - PPROD(:,9) = +TPK%K036(:)*PCONC(:,15)*PCONC(:,4) -!PLOSS(HNO4) = +K006+K037+K041*<OH> - PLOSS(:,9) = +TPK%K006(:)+TPK%K037(:)+TPK%K041(:)*PCONC(:,14) -! -!PPROD(NH3) = 0.0 - PPROD(:,10) = 0.0 -!PLOSS(NH3) = 0.0 - PLOSS(:,10) = 0.0 -! -IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB0',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE SUB0 -! -!OPTION! -Nfusion -SUBROUTINE SUB1 -! -!Indices 11 a 20 -! -! -!PPROD(SO2) = 0.0 - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB1',0,ZHOOK_HANDLE) - PPROD(:,11) = 0.0 -!PLOSS(SO2) = +K051*<OH> - PLOSS(:,11) = +TPK%K051(:)*PCONC(:,14) -! -!PPROD(SULF) = +K051*<OH>*<SO2> - PPROD(:,12) = +TPK%K051(:)*PCONC(:,14)*PCONC(:,11) -!PLOSS(SULF) = 0.0 - PLOSS(:,12) = 0.0 -! -!PPROD(CO) = +K010*<HCHO>+K011*<HCHO>+K012*<ALD>+0.91924*K016*<CARBO>+0.01*K053 -!*<BIO>*<O3P>+0.00878*K057*<ALKA>*<OH>+K061*<HCHO>*<OH>+1.01732*K064*<CARBO>*<O -!H>+K069*<HCHO>*<NO3>+1.33723*K071*<CARBO>*<NO3>+0.35120*K076*<ALKE>*<O3>+0.360 -!00*K077*<BIO>*<O3>+0.64728*K078*<CARBO>*<O3>+0.13*K079*<PAN>*<O3> - PPROD(:,13) = +TPK%K010(:)*PCONC(:,22)+TPK%K011(:)*PCONC(:,22)+TPK%K012(:)*PCO& -&NC(:,23)+0.91924*TPK%K016(:)*PCONC(:,25)+0.01*TPK%K053(:)*PCONC(:,20)*TPK%O3P(& -&:)+0.00878*TPK%K057(:)*PCONC(:,18)*PCONC(:,14)+TPK%K061(:)*PCONC(:,22)*PCONC(:& -&,14)+1.01732*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+TPK%K069(:)*PCONC(:,22)*PCONC& -&(:,5)+1.33723*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+0.35120*TPK%K076(:)*PCONC(:,1& -&9)*PCONC(:,1)+0.36000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.64728*TPK%K078(:)*P& -&CONC(:,25)*PCONC(:,1)+0.13*TPK%K079(:)*PCONC(:,27)*PCONC(:,1) -!PLOSS(CO) = +K052*<OH> - PLOSS(:,13) = +TPK%K052(:)*PCONC(:,14) -! -!PPROD(OH) = +K004*<HONO>+K005*<HNO3>+0.35*K006*<HNO4>+K009*<H2O2>+K009*<H2O2>+ -!K013*<OP1>+K014*<OP2>+K022*<O1D>*<H2O>+K022*<O1D>*<H2O>+K024*<O3>*<HO2>+K035*< -!HO2>*<NO>+0.7*K038*<HO2>*<NO3>+0.02*K053*<BIO>*<O3P>+0.00878*K057*<ALKA>*<OH>+ -!0.35*K065*<OP1>*<OH>+0.44925*K066*<OP2>*<OH>+0.39435*K076*<ALKE>*<O3>+0.28000* -!K077*<BIO>*<O3>+0.20595*K078*<CARBO>*<O3>+0.036*K079*<PAN>*<O3>+K084*<ADD>*<O3 -!> - PPROD(:,14) = +TPK%K004(:)*PCONC(:,7)+TPK%K005(:)*PCONC(:,8)+0.35*TPK%K006(:)*& -&PCONC(:,9)+TPK%K009(:)*PCONC(:,2)+TPK%K009(:)*PCONC(:,2)+TPK%K013(:)*PCONC(:,2& -&8)+TPK%K014(:)*PCONC(:,29)+TPK%K022(:)*TPK%O1D(:)*TPK%H2O(:)+TPK%K022(:)*TPK%O& -&1D(:)*TPK%H2O(:)+TPK%K024(:)*PCONC(:,1)*PCONC(:,15)+TPK%K035(:)*PCONC(:,15)*PC& -&ONC(:,3)+0.7*TPK%K038(:)*PCONC(:,15)*PCONC(:,5)+0.02*TPK%K053(:)*PCONC(:,20)*T& -&PK%O3P(:)+0.00878*TPK%K057(:)*PCONC(:,18)*PCONC(:,14)+0.35*TPK%K065(:)*PCONC(:& -&,28)*PCONC(:,14)+0.44925*TPK%K066(:)*PCONC(:,29)*PCONC(:,14)+0.39435*TPK%K076(& -&:)*PCONC(:,19)*PCONC(:,1)+0.28000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.20595*T& -&PK%K078(:)*PCONC(:,25)*PCONC(:,1)+0.036*TPK%K079(:)*PCONC(:,27)*PCONC(:,1)+TPK& -&%K084(:)*PCONC(:,36)*PCONC(:,1) -!PLOSS(OH) = +K023*<O3>+K025*<HO2>+K026*<H2O2>+K032*<NO>+K033*<NO2>+K034*<NO3>+ -!K039*<HONO>+K040*<HNO3>+K041*<HNO4>+K050*<H2>+K051*<SO2>+K052*<CO>+K055*<CH4>+ -!K056*<ETH>+K057*<ALKA>+K058*<ALKE>+K059*<BIO>+K060*<ARO>+K061*<HCHO>+K062*<ALD -!>+K063*<KET>+K064*<CARBO>+K065*<OP1>+K066*<OP2>+K067*<PAN>+K068*<ONIT> - PLOSS(:,14) = +TPK%K023(:)*PCONC(:,1)+TPK%K025(:)*PCONC(:,15)+TPK%K026(:)*PCON& -&C(:,2)+TPK%K032(:)*PCONC(:,3)+TPK%K033(:)*PCONC(:,4)+TPK%K034(:)*PCONC(:,5)+TP& -&K%K039(:)*PCONC(:,7)+TPK%K040(:)*PCONC(:,8)+TPK%K041(:)*PCONC(:,9)+TPK%K050(:)& -&*TPK%H2(:)+TPK%K051(:)*PCONC(:,11)+TPK%K052(:)*PCONC(:,13)+TPK%K055(:)*PCONC(:& -&,16)+TPK%K056(:)*PCONC(:,17)+TPK%K057(:)*PCONC(:,18)+TPK%K058(:)*PCONC(:,19)+T& -&PK%K059(:)*PCONC(:,20)+TPK%K060(:)*PCONC(:,21)+TPK%K061(:)*PCONC(:,22)+TPK%K06& -&2(:)*PCONC(:,23)+TPK%K063(:)*PCONC(:,24)+TPK%K064(:)*PCONC(:,25)+TPK%K065(:)*P& -&CONC(:,28)+TPK%K066(:)*PCONC(:,29)+TPK%K067(:)*PCONC(:,27)+TPK%K068(:)*PCONC(:& -&,26) -! -!PPROD(HO2) = +0.65*K006*<HNO4>+K011*<HCHO>+K011*<HCHO>+K012*<ALD>+K013*<OP1>+0 -!.96205*K014*<OP2>+0.75830*K016*<CARBO>+K017*<ONIT>+K023*<O3>*<OH>+K026*<H2O2>* -!<OH>+K034*<OH>*<NO3>+K037*<HNO4>+K050*<OH>*<H2>+K051*<OH>*<SO2>+K052*<CO>*<OH> -!+0.28*K053*<BIO>*<O3P>+0.12793*K057*<ALKA>*<OH>+0.10318*K060*<ARO>*<OH>+K061*< -!HCHO>*<OH>+0.51208*K064*<CARBO>*<OH>+0.02915*K066*<OP2>*<OH>+0.28107*K067*<PAN -!>*<OH>+K069*<HCHO>*<NO3>+0.63217*K071*<CARBO>*<NO3>+0.23451*K076*<ALKE>*<O3>+0 -!.30000*K077*<BIO>*<O3>+0.28441*K078*<CARBO>*<O3>+0.08*K079*<PAN>*<O3>+0.02*K08 -!3*<ADD>*<O2>+K087*<MO2>*<NO>+0.74265*K088*<ALKAP>*<NO>+K089*<ALKEP>*<NO>+0.847 -!00*K090*<BIOP>*<NO>+0.95115*K091*<AROP>*<NO>+0.12334*K092*<CARBOP>*<NO>+0.1840 -!1*K093*<OLN>*<NO>+0.66*K101*<MO2>*<MO2>+0.98383*K102*<ALKAP>*<MO2>+K103*<ALKEP -!>*<MO2>+1.00000*K104*<BIOP>*<MO2>+1.02767*K105*<AROP>*<MO2>+0.82998*K106*<CARB -!OP>*<MO2>+0.67560*K107*<OLN>*<MO2>+0.48079*K108*<ALKAP>*<CARBOP>+0.50078*K109* -!<ALKEP>*<CARBOP>+0.50600*K110*<BIOP>*<CARBOP>+K111*<AROP>*<CARBOP>+0.07566*K11 -!2*<CARBOP>*<CARBOP>+0.17599*K113*<OLN>*<CARBOP>+K114*<OLN>*<OLN>+0.00000*K115* -!<OLN>*<OLN>+K116*<MO2>*<NO3>+0.81290*K117*<ALKAP>*<NO3>+K118*<ALKEP>*<NO3>+K11 -!9*<BIOP>*<NO3>+K120*<AROP>*<NO3>+0.04915*K121*<CARBOP>*<NO3>+0.25928*K122*<OLN -!>*<NO3>+K124*<XO2>*<MO2> - PPROD(:,15) = +0.65*TPK%K006(:)*PCONC(:,9)+TPK%K011(:)*PCONC(:,22)+TPK%K011(:)& -&*PCONC(:,22)+TPK%K012(:)*PCONC(:,23)+TPK%K013(:)*PCONC(:,28)+0.96205*TPK%K014(& -&:)*PCONC(:,29)+0.75830*TPK%K016(:)*PCONC(:,25)+TPK%K017(:)*PCONC(:,26)+TPK%K02& -&3(:)*PCONC(:,1)*PCONC(:,14)+TPK%K026(:)*PCONC(:,2)*PCONC(:,14)+TPK%K034(:)*PCO& -&NC(:,14)*PCONC(:,5)+TPK%K037(:)*PCONC(:,9)+TPK%K050(:)*PCONC(:,14)*TPK%H2(:)+T& -&PK%K051(:)*PCONC(:,14)*PCONC(:,11)+TPK%K052(:)*PCONC(:,13)*PCONC(:,14)+0.28*TP& -&K%K053(:)*PCONC(:,20)*TPK%O3P(:)+0.12793*TPK%K057(:)*PCONC(:,18)*PCONC(:,14)+0& -&.10318*TPK%K060(:)*PCONC(:,21)*PCONC(:,14)+TPK%K061(:)*PCONC(:,22)*PCONC(:,14)& -&+0.51208*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+0.02915*TPK%K066(:)*PCONC(:,29)*P& -&CONC(:,14)+0.28107*TPK%K067(:)*PCONC(:,27)*PCONC(:,14)+TPK%K069(:)*PCONC(:,22)& -&*PCONC(:,5)+0.63217*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+0.23451*TPK%K076(:)*PCO& -&NC(:,19)*PCONC(:,1)+0.30000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.28441*TPK%K07& -&8(:)*PCONC(:,25)*PCONC(:,1)+0.08*TPK%K079(:)*PCONC(:,27)*PCONC(:,1)+0.02*TPK%K& -&083(:)*PCONC(:,36)*TPK%O2(:)+TPK%K087(:)*PCONC(:,31)*PCONC(:,3)+0.74265*TPK%K0& -&88(:)*PCONC(:,32)*PCONC(:,3)+TPK%K089(:)*PCONC(:,33)*PCONC(:,3)+0.84700*TPK%K0& -&90(:)*PCONC(:,34)*PCONC(:,3)+0.95115*TPK%K091(:)*PCONC(:,37)*PCONC(:,3)+0.1233& -&4*TPK%K092(:)*PCONC(:,38)*PCONC(:,3)+0.18401*TPK%K093(:)*PCONC(:,39)*PCONC(:,3& -&)+0.66*TPK%K101(:)*PCONC(:,31)*PCONC(:,31)+0.98383*TPK%K102(:)*PCONC(:,32)*PCO& -&NC(:,31)+TPK%K103(:)*PCONC(:,33)*PCONC(:,31)+1.00000*TPK%K104(:)*PCONC(:,34)*P& -&CONC(:,31)+1.02767*TPK%K105(:)*PCONC(:,37)*PCONC(:,31)+0.82998*TPK%K106(:)*PCO& -&NC(:,38)*PCONC(:,31)+0.67560*TPK%K107(:)*PCONC(:,39)*PCONC(:,31)+0.48079*TPK%K& -&108(:)*PCONC(:,32)*PCONC(:,38)+0.50078*TPK%K109(:)*PCONC(:,33)*PCONC(:,38)+0.5& -&0600*TPK%K110(:)*PCONC(:,34)*PCONC(:,38)+TPK%K111(:)*PCONC(:,37)*PCONC(:,38)+0& -&.07566*TPK%K112(:)*PCONC(:,38)*PCONC(:,38)+0.17599*TPK%K113(:)*PCONC(:,39)*PCO& -&NC(:,38)+TPK%K114(:)*PCONC(:,39)*PCONC(:,39)+0.00000*TPK%K115(:)*PCONC(:,39)*P& -&CONC(:,39)+TPK%K116(:)*PCONC(:,31)*PCONC(:,5)+0.81290*TPK%K117(:)*PCONC(:,32)*& -&PCONC(:,5)+TPK%K118(:)*PCONC(:,33)*PCONC(:,5)+TPK%K119(:)*PCONC(:,34)*PCONC(:,& -&5)+TPK%K120(:)*PCONC(:,37)*PCONC(:,5)+0.04915*TPK%K121(:)*PCONC(:,38)*PCONC(:,& -&5)+0.25928*TPK%K122(:)*PCONC(:,39)*PCONC(:,5)+TPK%K124(:)*PCONC(:,40)*PCONC(:,& -&31) -!PLOSS(HO2) = +K024*<O3>+K025*<OH>+K027*<HO2>+K027*<HO2>+K028*<HO2>*<H2O>+K028* -!<HO2>*<H2O>+K035*<NO>+K036*<NO2>+K038*<NO3>+K081*<PHO>+K094*<MO2>+K095*<ALKAP> -!+K096*<ALKEP>+K097*<BIOP>+K098*<AROP>+K099*<CARBOP>+K100*<OLN>+K123*<XO2> - PLOSS(:,15) = +TPK%K024(:)*PCONC(:,1)+TPK%K025(:)*PCONC(:,14)+TPK%K027(:)*PCON& -&C(:,15)+TPK%K027(:)*PCONC(:,15)+TPK%K028(:)*PCONC(:,15)*TPK%H2O(:)+TPK%K028(:)& -&*PCONC(:,15)*TPK%H2O(:)+TPK%K035(:)*PCONC(:,3)+TPK%K036(:)*PCONC(:,4)+TPK%K038& -&(:)*PCONC(:,5)+TPK%K081(:)*PCONC(:,35)+TPK%K094(:)*PCONC(:,31)+TPK%K095(:)*PCO& -&NC(:,32)+TPK%K096(:)*PCONC(:,33)+TPK%K097(:)*PCONC(:,34)+TPK%K098(:)*PCONC(:,3& -&7)+TPK%K099(:)*PCONC(:,38)+TPK%K100(:)*PCONC(:,39)+TPK%K123(:)*PCONC(:,40) -! -!PPROD(CH4) = +0.04300*K076*<ALKE>*<O3> - PPROD(:,16) = +0.04300*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) -!PLOSS(CH4) = +K055*<OH> - PLOSS(:,16) = +TPK%K055(:)*PCONC(:,14) -! -!PPROD(ETH) = +0.03196*K076*<ALKE>*<O3> - PPROD(:,17) = +0.03196*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) -!PLOSS(ETH) = +K056*<OH> - PLOSS(:,17) = +TPK%K056(:)*PCONC(:,14) -! -!PPROD(ALKA) = 0.0 - PPROD(:,18) = 0.0 -!PLOSS(ALKA) = +K057*<OH> - PLOSS(:,18) = +TPK%K057(:)*PCONC(:,14) -! -!PPROD(ALKE) = +0.91868*K053*<BIO>*<O3P>+0.00000*K076*<ALKE>*<O3>+0.37388*K077* -!<BIO>*<O3>+0.37815*K090*<BIOP>*<NO>+0.48074*K104*<BIOP>*<MO2>+0.24463*K110*<BI -!OP>*<CARBOP>+0.42729*K119*<BIOP>*<NO3> - PPROD(:,19) = +0.91868*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:)+0.00000*TPK%K076(:)*& -&PCONC(:,19)*PCONC(:,1)+0.37388*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.37815*TPK%& -&K090(:)*PCONC(:,34)*PCONC(:,3)+0.48074*TPK%K104(:)*PCONC(:,34)*PCONC(:,31)+0.2& -&4463*TPK%K110(:)*PCONC(:,34)*PCONC(:,38)+0.42729*TPK%K119(:)*PCONC(:,34)*PCONC& -&(:,5) -!PLOSS(ALKE) = +K058*<OH>+K073*<NO3>+K076*<O3> - PLOSS(:,19) = +TPK%K058(:)*PCONC(:,14)+TPK%K073(:)*PCONC(:,5)+TPK%K076(:)*PCON& -&C(:,1) -! -!PPROD(BIO) = 0.0 - PPROD(:,20) = 0.0 -!PLOSS(BIO) = +K053*<O3P>+K059*<OH>+K074*<NO3>+K077*<O3> - PLOSS(:,20) = +TPK%K053(:)*TPK%O3P(:)+TPK%K059(:)*PCONC(:,14)+TPK%K074(:)*PCON& -&C(:,5)+TPK%K077(:)*PCONC(:,1) -! -IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB1',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE SUB1 -! -!OPTION! -Nfusion -SUBROUTINE SUB2 -! -!Indices 21 a 30 -! -! -!PPROD(ARO) = +0.10670*K080*<PHO>*<NO2>+1.06698*K081*<PHO>*<HO2>+K082*<ADD>*<NO -!2>+0.02*K083*<ADD>*<O2>+K084*<ADD>*<O3> - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB2',0,ZHOOK_HANDLE) - PPROD(:,21) = +0.10670*TPK%K080(:)*PCONC(:,35)*PCONC(:,4)+1.06698*TPK%K081(:)*& -&PCONC(:,35)*PCONC(:,15)+TPK%K082(:)*PCONC(:,36)*PCONC(:,4)+0.02*TPK%K083(:)*PC& -&ONC(:,36)*TPK%O2(:)+TPK%K084(:)*PCONC(:,36)*PCONC(:,1) -!PLOSS(ARO) = +K060*<OH>+K072*<NO3> - PLOSS(:,21) = +TPK%K060(:)*PCONC(:,14)+TPK%K072(:)*PCONC(:,5) -! -!PPROD(HCHO) = +K013*<OP1>+0.06517*K016*<CARBO>+0.05*K053*<BIO>*<O3P>+0.00140*K -!057*<ALKA>*<OH>+0.00000*K064*<CARBO>*<OH>+0.35*K065*<OP1>*<OH>+0.02915*K066*<O -!P2>*<OH>+0.57839*K067*<PAN>*<OH>+0.40*K075*<PAN>*<NO3>+0.48290*K076*<ALKE>*<O3 -!>+0.90000*K077*<BIO>*<O3>+0.00000*K078*<CARBO>*<O3>+0.70*K079*<PAN>*<O3>+K087* -!<MO2>*<NO>+0.03002*K088*<ALKAP>*<NO>+1.39870*K089*<ALKEP>*<NO>+0.60600*K090*<B -!IOP>*<NO>+0.05848*K092*<CARBOP>*<NO>+0.23419*K093*<OLN>*<NO>+1.33*K101*<MO2>*< -!MO2>+0.80556*K102*<ALKAP>*<MO2>+1.42894*K103*<ALKEP>*<MO2>+1.09000*K104*<BIOP> -!*<MO2>+K105*<AROP>*<MO2>+0.95723*K106*<CARBOP>*<MO2>+0.88625*K107*<OLN>*<MO2>+ -!0.07600*K108*<ALKAP>*<CARBOP>+0.68192*K109*<ALKEP>*<CARBOP>+0.34000*K110*<BIOP -!>*<CARBOP>+0.03432*K112*<CARBOP>*<CARBOP>+0.13414*K113*<OLN>*<CARBOP>+0.00000* -!K115*<OLN>*<OLN>+K116*<MO2>*<NO3>+0.03142*K117*<ALKAP>*<NO3>+1.40909*K118*<ALK -!EP>*<NO3>+0.68600*K119*<BIOP>*<NO3>+0.03175*K121*<CARBOP>*<NO3>+0.20740*K122*< -!OLN>*<NO3>+K124*<XO2>*<MO2> - PPROD(:,22) = +TPK%K013(:)*PCONC(:,28)+0.06517*TPK%K016(:)*PCONC(:,25)+0.05*TP& -&K%K053(:)*PCONC(:,20)*TPK%O3P(:)+0.00140*TPK%K057(:)*PCONC(:,18)*PCONC(:,14)+0& -&.00000*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+0.35*TPK%K065(:)*PCONC(:,28)*PCONC(& -&:,14)+0.02915*TPK%K066(:)*PCONC(:,29)*PCONC(:,14)+0.57839*TPK%K067(:)*PCONC(:,& -&27)*PCONC(:,14)+0.40*TPK%K075(:)*PCONC(:,27)*PCONC(:,5)+0.48290*TPK%K076(:)*PC& -&ONC(:,19)*PCONC(:,1)+0.90000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.00000*TPK%K0& -&78(:)*PCONC(:,25)*PCONC(:,1)+0.70*TPK%K079(:)*PCONC(:,27)*PCONC(:,1)+TPK%K087(& -&:)*PCONC(:,31)*PCONC(:,3)+0.03002*TPK%K088(:)*PCONC(:,32)*PCONC(:,3)+1.39870*T& -&PK%K089(:)*PCONC(:,33)*PCONC(:,3)+0.60600*TPK%K090(:)*PCONC(:,34)*PCONC(:,3)+0& -&.05848*TPK%K092(:)*PCONC(:,38)*PCONC(:,3)+0.23419*TPK%K093(:)*PCONC(:,39)*PCON& -&C(:,3)+1.33*TPK%K101(:)*PCONC(:,31)*PCONC(:,31)+0.80556*TPK%K102(:)*PCONC(:,32& -&)*PCONC(:,31)+1.42894*TPK%K103(:)*PCONC(:,33)*PCONC(:,31)+1.09000*TPK%K104(:)*& -&PCONC(:,34)*PCONC(:,31)+TPK%K105(:)*PCONC(:,37)*PCONC(:,31)+0.95723*TPK%K106(:& -&)*PCONC(:,38)*PCONC(:,31)+0.88625*TPK%K107(:)*PCONC(:,39)*PCONC(:,31)+0.07600*& -&TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.68192*TPK%K109(:)*PCONC(:,33)*PCONC(:,38& -&)+0.34000*TPK%K110(:)*PCONC(:,34)*PCONC(:,38)+0.03432*TPK%K112(:)*PCONC(:,38)*& -&PCONC(:,38)+0.13414*TPK%K113(:)*PCONC(:,39)*PCONC(:,38)+0.00000*TPK%K115(:)*PC& -&ONC(:,39)*PCONC(:,39)+TPK%K116(:)*PCONC(:,31)*PCONC(:,5)+0.03142*TPK%K117(:)*P& -&CONC(:,32)*PCONC(:,5)+1.40909*TPK%K118(:)*PCONC(:,33)*PCONC(:,5)+0.68600*TPK%K& -&119(:)*PCONC(:,34)*PCONC(:,5)+0.03175*TPK%K121(:)*PCONC(:,38)*PCONC(:,5)+0.207& -&40*TPK%K122(:)*PCONC(:,39)*PCONC(:,5)+TPK%K124(:)*PCONC(:,40)*PCONC(:,31) -!PLOSS(HCHO) = +K010+K011+K061*<OH>+K069*<NO3> - PLOSS(:,22) = +TPK%K010(:)+TPK%K011(:)+TPK%K061(:)*PCONC(:,14)+TPK%K069(:)*PCO& -&NC(:,5) -! -!PPROD(ALD) = +0.96205*K014*<OP2>+0.20*K017*<ONIT>+K054*<CARBO>*<O3P>+0.08173*K -!057*<ALKA>*<OH>+0.06253*K064*<CARBO>*<OH>+0.07335*K066*<OP2>*<OH>+0.05265*K071 -!*<CARBO>*<NO3>+0.51468*K076*<ALKE>*<O3>+0.00000*K077*<BIO>*<O3>+0.15692*K078*< -!CARBO>*<O3>+0.33144*K088*<ALKAP>*<NO>+0.42125*K089*<ALKEP>*<NO>+0.00000*K090*< -!BIOP>*<NO>+0.07368*K092*<CARBOP>*<NO>+1.01182*K093*<OLN>*<NO>+0.56070*K102*<AL -!KAP>*<MO2>+0.46413*K103*<ALKEP>*<MO2>+0.00000*K104*<BIOP>*<MO2>+0.08295*K106*< -!CARBOP>*<MO2>+0.41524*K107*<OLN>*<MO2>+0.71461*K108*<ALKAP>*<CARBOP>+0.68374*K -!109*<ALKEP>*<CARBOP>+0.00000*K110*<BIOP>*<CARBOP>+0.06969*K112*<CARBOP>*<CARBO -!P>+0.42122*K113*<OLN>*<CARBOP>+0.00000*K115*<OLN>*<OLN>+0.33743*K117*<ALKAP>*< -!NO3>+0.43039*K118*<ALKEP>*<NO3>+0.00000*K119*<BIOP>*<NO3>+0.02936*K121*<CARBOP -!>*<NO3>+0.91850*K122*<OLN>*<NO3> - PPROD(:,23) = +0.96205*TPK%K014(:)*PCONC(:,29)+0.20*TPK%K017(:)*PCONC(:,26)+TP& -&K%K054(:)*PCONC(:,25)*TPK%O3P(:)+0.08173*TPK%K057(:)*PCONC(:,18)*PCONC(:,14)+0& -&.06253*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+0.07335*TPK%K066(:)*PCONC(:,29)*PCO& -&NC(:,14)+0.05265*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+0.51468*TPK%K076(:)*PCONC(& -&:,19)*PCONC(:,1)+0.00000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.15692*TPK%K078(:& -&)*PCONC(:,25)*PCONC(:,1)+0.33144*TPK%K088(:)*PCONC(:,32)*PCONC(:,3)+0.42125*TP& -&K%K089(:)*PCONC(:,33)*PCONC(:,3)+0.00000*TPK%K090(:)*PCONC(:,34)*PCONC(:,3)+0.& -&07368*TPK%K092(:)*PCONC(:,38)*PCONC(:,3)+1.01182*TPK%K093(:)*PCONC(:,39)*PCONC& -&(:,3)+0.56070*TPK%K102(:)*PCONC(:,32)*PCONC(:,31)+0.46413*TPK%K103(:)*PCONC(:,& -&33)*PCONC(:,31)+0.00000*TPK%K104(:)*PCONC(:,34)*PCONC(:,31)+0.08295*TPK%K106(:& -&)*PCONC(:,38)*PCONC(:,31)+0.41524*TPK%K107(:)*PCONC(:,39)*PCONC(:,31)+0.71461*& -&TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.68374*TPK%K109(:)*PCONC(:,33)*PCONC(:,38& -&)+0.00000*TPK%K110(:)*PCONC(:,34)*PCONC(:,38)+0.06969*TPK%K112(:)*PCONC(:,38)*& -&PCONC(:,38)+0.42122*TPK%K113(:)*PCONC(:,39)*PCONC(:,38)+0.00000*TPK%K115(:)*PC& -&ONC(:,39)*PCONC(:,39)+0.33743*TPK%K117(:)*PCONC(:,32)*PCONC(:,5)+0.43039*TPK%K& -&118(:)*PCONC(:,33)*PCONC(:,5)+0.00000*TPK%K119(:)*PCONC(:,34)*PCONC(:,5)+0.029& -&36*TPK%K121(:)*PCONC(:,38)*PCONC(:,5)+0.91850*TPK%K122(:)*PCONC(:,39)*PCONC(:,& -&5) -!PLOSS(ALD) = +K012+K062*<OH>+K070*<NO3> - PLOSS(:,23) = +TPK%K012(:)+TPK%K062(:)*PCONC(:,14)+TPK%K070(:)*PCONC(:,5) -! -!PPROD(KET) = +0.80*K017*<ONIT>+0.03498*K057*<ALKA>*<OH>+0.00853*K064*<CARBO>*< -!OH>+0.37591*K066*<OP2>*<OH>+0.00632*K071*<CARBO>*<NO3>+0.07377*K076*<ALKE>*<O3 -!>+0.00000*K077*<BIO>*<O3>+0.54531*K088*<ALKAP>*<NO>+0.05220*K089*<ALKEP>*<NO>+ -!0.00000*K090*<BIOP>*<NO>+0.37862*K093*<OLN>*<NO>+0.09673*K102*<ALKAP>*<MO2>+0. -!03814*K103*<ALKEP>*<MO2>+0.00000*K104*<BIOP>*<MO2>+0.09667*K107*<OLN>*<MO2>+0. -!18819*K108*<ALKAP>*<CARBOP>+0.06579*K109*<ALKEP>*<CARBOP>+0.00000*K110*<BIOP>* -!<CARBOP>+0.02190*K112*<CARBOP>*<CARBOP>+0.10822*K113*<OLN>*<CARBOP>+0.00000*K1 -!15*<OLN>*<OLN>+0.62978*K117*<ALKAP>*<NO3>+0.02051*K118*<ALKEP>*<NO3>+0.00000*K -!119*<BIOP>*<NO3>+0.34740*K122*<OLN>*<NO3> - PPROD(:,24) = +0.80*TPK%K017(:)*PCONC(:,26)+0.03498*TPK%K057(:)*PCONC(:,18)*PC& -&ONC(:,14)+0.00853*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+0.37591*TPK%K066(:)*PCON& -&C(:,29)*PCONC(:,14)+0.00632*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+0.07377*TPK%K07& -&6(:)*PCONC(:,19)*PCONC(:,1)+0.00000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.54531& -&*TPK%K088(:)*PCONC(:,32)*PCONC(:,3)+0.05220*TPK%K089(:)*PCONC(:,33)*PCONC(:,3)& -&+0.00000*TPK%K090(:)*PCONC(:,34)*PCONC(:,3)+0.37862*TPK%K093(:)*PCONC(:,39)*PC& -&ONC(:,3)+0.09673*TPK%K102(:)*PCONC(:,32)*PCONC(:,31)+0.03814*TPK%K103(:)*PCONC& -&(:,33)*PCONC(:,31)+0.00000*TPK%K104(:)*PCONC(:,34)*PCONC(:,31)+0.09667*TPK%K10& -&7(:)*PCONC(:,39)*PCONC(:,31)+0.18819*TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.065& -&79*TPK%K109(:)*PCONC(:,33)*PCONC(:,38)+0.00000*TPK%K110(:)*PCONC(:,34)*PCONC(:& -&,38)+0.02190*TPK%K112(:)*PCONC(:,38)*PCONC(:,38)+0.10822*TPK%K113(:)*PCONC(:,3& -&9)*PCONC(:,38)+0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,39)+0.62978*TPK%K117(:)& -&*PCONC(:,32)*PCONC(:,5)+0.02051*TPK%K118(:)*PCONC(:,33)*PCONC(:,5)+0.00000*TPK& -&%K119(:)*PCONC(:,34)*PCONC(:,5)+0.34740*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) -!PLOSS(KET) = +K015+K063*<OH> - PLOSS(:,24) = +TPK%K015(:)+TPK%K063(:)*PCONC(:,14) -! -!PPROD(CARBO) = +0.13255*K053*<BIO>*<O3P>+0.00835*K057*<ALKA>*<OH>+0.16919*K064 -!*<CARBO>*<OH>+0.21863*K067*<PAN>*<OH>+0.10530*K071*<CARBO>*<NO3>+0.00000*K073* -!<ALKE>*<NO3>+0.91741*K074*<BIO>*<NO3>+0.00000*K076*<ALKE>*<O3>+0.39754*K077*<B -!IO>*<O3>+1.07583*K078*<CARBO>*<O3>+0.03407*K088*<ALKAP>*<NO>+0.45463*K090*<BIO -!P>*<NO>+2.06993*K091*<AROP>*<NO>+0.08670*K092*<CARBOP>*<NO>+0.07976*K102*<ALKA -!P>*<MO2>+0.56064*K104*<BIOP>*<MO2>+1.99461*K105*<AROP>*<MO2>+0.15387*K106*<CAR -!BOP>*<MO2>+0.06954*K108*<ALKAP>*<CARBOP>+0.78591*K110*<BIOP>*<CARBOP>+1.99455* -!K111*<AROP>*<CARBOP>+0.10777*K112*<CARBOP>*<CARBOP>+0.03531*K117*<ALKAP>*<NO3> -!+0.61160*K119*<BIOP>*<NO3>+2.81904*K120*<AROP>*<NO3>+0.03455*K121*<CARBOP>*<NO -!3> - PPROD(:,25) = +0.13255*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:)+0.00835*TPK%K057(:)*& -&PCONC(:,18)*PCONC(:,14)+0.16919*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+0.21863*TP& -&K%K067(:)*PCONC(:,27)*PCONC(:,14)+0.10530*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+0& -&.00000*TPK%K073(:)*PCONC(:,19)*PCONC(:,5)+0.91741*TPK%K074(:)*PCONC(:,20)*PCON& -&C(:,5)+0.00000*TPK%K076(:)*PCONC(:,19)*PCONC(:,1)+0.39754*TPK%K077(:)*PCONC(:,& -&20)*PCONC(:,1)+1.07583*TPK%K078(:)*PCONC(:,25)*PCONC(:,1)+0.03407*TPK%K088(:)*& -&PCONC(:,32)*PCONC(:,3)+0.45463*TPK%K090(:)*PCONC(:,34)*PCONC(:,3)+2.06993*TPK%& -&K091(:)*PCONC(:,37)*PCONC(:,3)+0.08670*TPK%K092(:)*PCONC(:,38)*PCONC(:,3)+0.07& -&976*TPK%K102(:)*PCONC(:,32)*PCONC(:,31)+0.56064*TPK%K104(:)*PCONC(:,34)*PCONC(& -&:,31)+1.99461*TPK%K105(:)*PCONC(:,37)*PCONC(:,31)+0.15387*TPK%K106(:)*PCONC(:,& -&38)*PCONC(:,31)+0.06954*TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.78591*TPK%K110(:& -&)*PCONC(:,34)*PCONC(:,38)+1.99455*TPK%K111(:)*PCONC(:,37)*PCONC(:,38)+0.10777*& -&TPK%K112(:)*PCONC(:,38)*PCONC(:,38)+0.03531*TPK%K117(:)*PCONC(:,32)*PCONC(:,5)& -&+0.61160*TPK%K119(:)*PCONC(:,34)*PCONC(:,5)+2.81904*TPK%K120(:)*PCONC(:,37)*PC& -&ONC(:,5)+0.03455*TPK%K121(:)*PCONC(:,38)*PCONC(:,5) -!PLOSS(CARBO) = +K016+K054*<O3P>+K064*<OH>+K071*<NO3>+K078*<O3> - PLOSS(:,25) = +TPK%K016(:)+TPK%K054(:)*TPK%O3P(:)+TPK%K064(:)*PCONC(:,14)+TPK%& -&K071(:)*PCONC(:,5)+TPK%K078(:)*PCONC(:,1) -! -!PPROD(ONIT) = +0.60*K075*<PAN>*<NO3>+K080*<PHO>*<NO2>+0.08459*K088*<ALKAP>*<NO -!>+0.15300*K090*<BIOP>*<NO>+0.04885*K091*<AROP>*<NO>+0.18401*K093*<OLN>*<NO>+K1 -!00*<OLN>*<HO2>+0.67560*K107*<OLN>*<MO2>+0.66562*K113*<OLN>*<CARBOP>+2.00*K114* -!<OLN>*<OLN>+0.00000*K115*<OLN>*<OLN>+0.25928*K122*<OLN>*<NO3> - PPROD(:,26) = +0.60*TPK%K075(:)*PCONC(:,27)*PCONC(:,5)+TPK%K080(:)*PCONC(:,35)& -&*PCONC(:,4)+0.08459*TPK%K088(:)*PCONC(:,32)*PCONC(:,3)+0.15300*TPK%K090(:)*PCO& -&NC(:,34)*PCONC(:,3)+0.04885*TPK%K091(:)*PCONC(:,37)*PCONC(:,3)+0.18401*TPK%K09& -&3(:)*PCONC(:,39)*PCONC(:,3)+TPK%K100(:)*PCONC(:,39)*PCONC(:,15)+0.67560*TPK%K1& -&07(:)*PCONC(:,39)*PCONC(:,31)+0.66562*TPK%K113(:)*PCONC(:,39)*PCONC(:,38)+2.00& -&*TPK%K114(:)*PCONC(:,39)*PCONC(:,39)+0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,3& -&9)+0.25928*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) -!PLOSS(ONIT) = +K017+K068*<OH> - PLOSS(:,26) = +TPK%K017(:)+TPK%K068(:)*PCONC(:,14) -! -!PPROD(PAN) = +0.28107*K067*<PAN>*<OH>+0.40000*K075*<PAN>*<NO3>+0.30000*K079*<P -!AN>*<O3>+1.00000*K085*<CARBOP>*<NO2> - PPROD(:,27) = +0.28107*TPK%K067(:)*PCONC(:,27)*PCONC(:,14)+0.40000*TPK%K075(:)& -&*PCONC(:,27)*PCONC(:,5)+0.30000*TPK%K079(:)*PCONC(:,27)*PCONC(:,1)+1.00000*TPK& -&%K085(:)*PCONC(:,38)*PCONC(:,4) -!PLOSS(PAN) = +K067*<OH>+K075*<NO3>+K079*<O3>+K086 - PLOSS(:,27) = +TPK%K067(:)*PCONC(:,14)+TPK%K075(:)*PCONC(:,5)+TPK%K079(:)*PCON& -&C(:,1)+TPK%K086(:) -! -!PPROD(OP1) = +K094*<MO2>*<HO2> - PPROD(:,28) = +TPK%K094(:)*PCONC(:,31)*PCONC(:,15) -!PLOSS(OP1) = +K013+K065*<OH> - PLOSS(:,28) = +TPK%K013(:)+TPK%K065(:)*PCONC(:,14) -! -!PPROD(OP2) = +0.10149*K078*<CARBO>*<O3>+1.00524*K095*<ALKAP>*<HO2>+1.00524*K09 -!6*<ALKEP>*<HO2>+1.00524*K097*<BIOP>*<HO2>+1.00524*K098*<AROP>*<HO2>+0.80904*K0 -!99*<CARBOP>*<HO2>+1.00524*K123*<XO2>*<HO2> - PPROD(:,29) = +0.10149*TPK%K078(:)*PCONC(:,25)*PCONC(:,1)+1.00524*TPK%K095(:)*& -&PCONC(:,32)*PCONC(:,15)+1.00524*TPK%K096(:)*PCONC(:,33)*PCONC(:,15)+1.00524*TP& -&K%K097(:)*PCONC(:,34)*PCONC(:,15)+1.00524*TPK%K098(:)*PCONC(:,37)*PCONC(:,15)+& -&0.80904*TPK%K099(:)*PCONC(:,38)*PCONC(:,15)+1.00524*TPK%K123(:)*PCONC(:,40)*PC& -&ONC(:,15) -!PLOSS(OP2) = +K014+K066*<OH> - PLOSS(:,29) = +TPK%K014(:)+TPK%K066(:)*PCONC(:,14) -! -!PPROD(ORA2) = +0.08143*K076*<ALKE>*<O3>+0.00000*K077*<BIO>*<O3>+0.20595*K078*< -!CARBO>*<O3>+0.17307*K099*<CARBOP>*<HO2>+0.13684*K106*<CARBOP>*<MO2>+0.49810*K1 -!08*<ALKAP>*<CARBOP>+0.49922*K109*<ALKEP>*<CARBOP>+0.49400*K110*<BIOP>*<CARBOP> -!+0.09955*K112*<CARBOP>*<CARBOP>+0.48963*K113*<OLN>*<CARBOP> - PPROD(:,30) = +0.08143*TPK%K076(:)*PCONC(:,19)*PCONC(:,1)+0.00000*TPK%K077(:)*& -&PCONC(:,20)*PCONC(:,1)+0.20595*TPK%K078(:)*PCONC(:,25)*PCONC(:,1)+0.17307*TPK%& -&K099(:)*PCONC(:,38)*PCONC(:,15)+0.13684*TPK%K106(:)*PCONC(:,38)*PCONC(:,31)+0.& -&49810*TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.49922*TPK%K109(:)*PCONC(:,33)*PCON& -&C(:,38)+0.49400*TPK%K110(:)*PCONC(:,34)*PCONC(:,38)+0.09955*TPK%K112(:)*PCONC(& -&:,38)*PCONC(:,38)+0.48963*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) -!PLOSS(ORA2) = 0.0 - PLOSS(:,30) = 0.0 -! -IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB2',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE SUB2 -! -!OPTION! -Nfusion -SUBROUTINE SUB3 -! -!Indices 31 a 40 -! -! -!PPROD(MO2) = +K012*<ALD>+0.03795*K014*<OP2>+K055*<CH4>*<OH>+0.65*K065*<OP1>*<O -!H>+0.13966*K076*<ALKE>*<O3>+0.03000*K077*<BIO>*<O3>+0.09016*K088*<ALKAP>*<NO>+ -!0.78134*K092*<CARBOP>*<NO>+0.01390*K102*<ALKAP>*<MO2>+0.56031*K106*<CARBOP>*<M -!O2>+0.51480*K108*<ALKAP>*<CARBOP>+0.50078*K109*<ALKEP>*<CARBOP>+0.50600*K110*< -!BIOP>*<CARBOP>+K111*<AROP>*<CARBOP>+1.66702*K112*<CARBOP>*<CARBOP>+0.51037*K11 -!3*<OLN>*<CARBOP>+0.09731*K117*<ALKAP>*<NO3>+0.91910*K121*<CARBOP>*<NO3>+K125*< -!XO2>*<CARBOP> - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB3',0,ZHOOK_HANDLE) - PPROD(:,31) = +TPK%K012(:)*PCONC(:,23)+0.03795*TPK%K014(:)*PCONC(:,29)+TPK%K05& -&5(:)*PCONC(:,16)*PCONC(:,14)+0.65*TPK%K065(:)*PCONC(:,28)*PCONC(:,14)+0.13966*& -&TPK%K076(:)*PCONC(:,19)*PCONC(:,1)+0.03000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+& -&0.09016*TPK%K088(:)*PCONC(:,32)*PCONC(:,3)+0.78134*TPK%K092(:)*PCONC(:,38)*PCO& -&NC(:,3)+0.01390*TPK%K102(:)*PCONC(:,32)*PCONC(:,31)+0.56031*TPK%K106(:)*PCONC(& -&:,38)*PCONC(:,31)+0.51480*TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.50078*TPK%K109& -&(:)*PCONC(:,33)*PCONC(:,38)+0.50600*TPK%K110(:)*PCONC(:,34)*PCONC(:,38)+TPK%K1& -&11(:)*PCONC(:,37)*PCONC(:,38)+1.66702*TPK%K112(:)*PCONC(:,38)*PCONC(:,38)+0.51& -&037*TPK%K113(:)*PCONC(:,39)*PCONC(:,38)+0.09731*TPK%K117(:)*PCONC(:,32)*PCONC(& -&:,5)+0.91910*TPK%K121(:)*PCONC(:,38)*PCONC(:,5)+TPK%K125(:)*PCONC(:,40)*PCONC(& -&:,38) -!PLOSS(MO2) = +K087*<NO>+K094*<HO2>+K101*<MO2>+K101*<MO2>+K102*<ALKAP>+K103*<AL -!KEP>+K104*<BIOP>+K105*<AROP>+K106*<CARBOP>+K107*<OLN>+K116*<NO3>+K124*<XO2> - PLOSS(:,31) = +TPK%K087(:)*PCONC(:,3)+TPK%K094(:)*PCONC(:,15)+TPK%K101(:)*PCON& -&C(:,31)+TPK%K101(:)*PCONC(:,31)+TPK%K102(:)*PCONC(:,32)+TPK%K103(:)*PCONC(:,33& -&)+TPK%K104(:)*PCONC(:,34)+TPK%K105(:)*PCONC(:,37)+TPK%K106(:)*PCONC(:,38)+TPK%& -&K107(:)*PCONC(:,39)+TPK%K116(:)*PCONC(:,5)+TPK%K124(:)*PCONC(:,40) -! -!PPROD(ALKAP) = +1.00000*K015*<KET>+K056*<ETH>*<OH>+0.87811*K057*<ALKA>*<OH>+0. -!40341*K066*<OP2>*<OH>+1.00000*K068*<ONIT>*<OH>+0.09815*K076*<ALKE>*<O3>+0.0000 -!0*K077*<BIO>*<O3>+0.08187*K088*<ALKAP>*<NO>+0.00385*K102*<ALKAP>*<MO2>+0.00828 -!*K108*<ALKAP>*<CARBOP>+0.08994*K117*<ALKAP>*<NO3> - PPROD(:,32) = +1.00000*TPK%K015(:)*PCONC(:,24)+TPK%K056(:)*PCONC(:,17)*PCONC(:& -&,14)+0.87811*TPK%K057(:)*PCONC(:,18)*PCONC(:,14)+0.40341*TPK%K066(:)*PCONC(:,2& -&9)*PCONC(:,14)+1.00000*TPK%K068(:)*PCONC(:,26)*PCONC(:,14)+0.09815*TPK%K076(:)& -&*PCONC(:,19)*PCONC(:,1)+0.00000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.08187*TPK& -&%K088(:)*PCONC(:,32)*PCONC(:,3)+0.00385*TPK%K102(:)*PCONC(:,32)*PCONC(:,31)+0.& -&00828*TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.08994*TPK%K117(:)*PCONC(:,32)*PCON& -&C(:,5) -!PLOSS(ALKAP) = +K088*<NO>+K095*<HO2>+K102*<MO2>+K108*<CARBOP>+K117*<NO3> - PLOSS(:,32) = +TPK%K088(:)*PCONC(:,3)+TPK%K095(:)*PCONC(:,15)+TPK%K102(:)*PCON& -&C(:,31)+TPK%K108(:)*PCONC(:,38)+TPK%K117(:)*PCONC(:,5) -! -!PPROD(ALKEP) = +1.02529*K058*<ALKE>*<OH> - PPROD(:,33) = +1.02529*TPK%K058(:)*PCONC(:,19)*PCONC(:,14) -!PLOSS(ALKEP) = +K089*<NO>+K096*<HO2>+K103*<MO2>+K109*<CARBOP>+K118*<NO3> - PLOSS(:,33) = +TPK%K089(:)*PCONC(:,3)+TPK%K096(:)*PCONC(:,15)+TPK%K103(:)*PCON& -&C(:,31)+TPK%K109(:)*PCONC(:,38)+TPK%K118(:)*PCONC(:,5) -! -!PPROD(BIOP) = +0.00000*K058*<ALKE>*<OH>+1.00000*K059*<BIO>*<OH> - PPROD(:,34) = +0.00000*TPK%K058(:)*PCONC(:,19)*PCONC(:,14)+1.00000*TPK%K059(:)& -&*PCONC(:,20)*PCONC(:,14) -!PLOSS(BIOP) = +K090*<NO>+K097*<HO2>+K104*<MO2>+K110*<CARBOP>+K119*<NO3> - PLOSS(:,34) = +TPK%K090(:)*PCONC(:,3)+TPK%K097(:)*PCONC(:,15)+TPK%K104(:)*PCON& -&C(:,31)+TPK%K110(:)*PCONC(:,38)+TPK%K119(:)*PCONC(:,5) -! -!PPROD(PHO) = +0.00276*K060*<ARO>*<OH>+K072*<ARO>*<NO3> - PPROD(:,35) = +0.00276*TPK%K060(:)*PCONC(:,21)*PCONC(:,14)+TPK%K072(:)*PCONC(:& -&,21)*PCONC(:,5) -!PLOSS(PHO) = +K080*<NO2>+K081*<HO2> - PLOSS(:,35) = +TPK%K080(:)*PCONC(:,4)+TPK%K081(:)*PCONC(:,15) -! -!PPROD(ADD) = +0.93968*K060*<ARO>*<OH> - PPROD(:,36) = +0.93968*TPK%K060(:)*PCONC(:,21)*PCONC(:,14) -!PLOSS(ADD) = +K082*<NO2>+K083*<O2>+K084*<O3> - PLOSS(:,36) = +TPK%K082(:)*PCONC(:,4)+TPK%K083(:)*TPK%O2(:)+TPK%K084(:)*PCONC(& -&:,1) -! -!PPROD(AROP) = +0.98*K083*<ADD>*<O2> - PPROD(:,37) = +0.98*TPK%K083(:)*PCONC(:,36)*TPK%O2(:) -!PLOSS(AROP) = +K091*<NO>+K098*<HO2>+K105*<MO2>+K111*<CARBOP>+K120*<NO3> - PLOSS(:,37) = +TPK%K091(:)*PCONC(:,3)+TPK%K098(:)*PCONC(:,15)+TPK%K105(:)*PCON& -&C(:,31)+TPK%K111(:)*PCONC(:,38)+TPK%K120(:)*PCONC(:,5) -! -!PPROD(CARBOP) = +1.00000*K015*<KET>+0.69622*K016*<CARBO>+1.00000*K062*<ALD>*<O -!H>+1.00000*K063*<KET>*<OH>+0.51419*K064*<CARBO>*<OH>+0.05413*K066*<OP2>*<OH>+1 -!.00000*K070*<ALD>*<NO3>+0.38881*K071*<CARBO>*<NO3>+0.05705*K076*<ALKE>*<O3>+0. -!17000*K077*<BIO>*<O3>+0.27460*K078*<CARBO>*<O3>+0.70000*K079*<PAN>*<O3>+1.0000 -!0*K086*<PAN>+0.09532*K092*<CARBOP>*<NO>+0.05954*K106*<CARBOP>*<MO2>+0.05821*K1 -!12*<CARBOP>*<CARBOP>+0.03175*K121*<CARBOP>*<NO3> - PPROD(:,38) = +1.00000*TPK%K015(:)*PCONC(:,24)+0.69622*TPK%K016(:)*PCONC(:,25)& -&+1.00000*TPK%K062(:)*PCONC(:,23)*PCONC(:,14)+1.00000*TPK%K063(:)*PCONC(:,24)*P& -&CONC(:,14)+0.51419*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+0.05413*TPK%K066(:)*PCO& -&NC(:,29)*PCONC(:,14)+1.00000*TPK%K070(:)*PCONC(:,23)*PCONC(:,5)+0.38881*TPK%K0& -&71(:)*PCONC(:,25)*PCONC(:,5)+0.05705*TPK%K076(:)*PCONC(:,19)*PCONC(:,1)+0.1700& -&0*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.27460*TPK%K078(:)*PCONC(:,25)*PCONC(:,1& -&)+0.70000*TPK%K079(:)*PCONC(:,27)*PCONC(:,1)+1.00000*TPK%K086(:)*PCONC(:,27)+0& -&.09532*TPK%K092(:)*PCONC(:,38)*PCONC(:,3)+0.05954*TPK%K106(:)*PCONC(:,38)*PCON& -&C(:,31)+0.05821*TPK%K112(:)*PCONC(:,38)*PCONC(:,38)+0.03175*TPK%K121(:)*PCONC(& -&:,38)*PCONC(:,5) -!PLOSS(CARBOP) = +K085*<NO2>+K092*<NO>+K099*<HO2>+K106*<MO2>+K108*<ALKAP>+K109* -!<ALKEP>+K110*<BIOP>+K111*<AROP>+K112*<CARBOP>+K112*<CARBOP>+K113*<OLN>+K121*<N -!O3>+K125*<XO2> - PLOSS(:,38) = +TPK%K085(:)*PCONC(:,4)+TPK%K092(:)*PCONC(:,3)+TPK%K099(:)*PCONC& -&(:,15)+TPK%K106(:)*PCONC(:,31)+TPK%K108(:)*PCONC(:,32)+TPK%K109(:)*PCONC(:,33)& -&+TPK%K110(:)*PCONC(:,34)+TPK%K111(:)*PCONC(:,37)+TPK%K112(:)*PCONC(:,38)+TPK%K& -&112(:)*PCONC(:,38)+TPK%K113(:)*PCONC(:,39)+TPK%K121(:)*PCONC(:,5)+TPK%K125(:)*& -&PCONC(:,40) -! -!PPROD(OLN) = +0.00000*K071*<CARBO>*<NO3>+0.93768*K073*<ALKE>*<NO3>+1.00000*K07 -!4*<BIO>*<NO3> - PPROD(:,39) = +0.00000*TPK%K071(:)*PCONC(:,25)*PCONC(:,5)+0.93768*TPK%K073(:)*& -&PCONC(:,19)*PCONC(:,5)+1.00000*TPK%K074(:)*PCONC(:,20)*PCONC(:,5) -!PLOSS(OLN) = +K093*<NO>+K100*<HO2>+K107*<MO2>+K113*<CARBOP>+K114*<OLN>+K114*<O -!LN>+K115*<OLN>+K115*<OLN>+K122*<NO3> - PLOSS(:,39) = +TPK%K093(:)*PCONC(:,3)+TPK%K100(:)*PCONC(:,15)+TPK%K107(:)*PCON& -&C(:,31)+TPK%K113(:)*PCONC(:,38)+TPK%K114(:)*PCONC(:,39)+TPK%K114(:)*PCONC(:,39& -&)+TPK%K115(:)*PCONC(:,39)+TPK%K115(:)*PCONC(:,39)+TPK%K122(:)*PCONC(:,5) -! -!PPROD(XO2) = +0.15*K053*<BIO>*<O3P>+0.10318*K060*<ARO>*<OH>+0.10162*K064*<CARB -!O>*<OH>+0.09333*K066*<OP2>*<OH>+K067*<PAN>*<OH>+0.10530*K071*<CARBO>*<NO3>+K07 -!5*<PAN>*<NO3>+0.00000*K076*<ALKE>*<O3>+0.13000*K077*<BIO>*<O3>+0.13007*K088*<A -!LKAP>*<NO>+0.02563*K092*<CARBOP>*<NO>+0.13370*K102*<ALKAP>*<MO2>+0.02212*K106* -!<CARBOP>*<MO2>+0.11306*K108*<ALKAP>*<CARBOP>+0.01593*K112*<CARBOP>*<CARBOP>+0. -!16271*K117*<ALKAP>*<NO3>+0.01021*K121*<CARBOP>*<NO3> - PPROD(:,40) = +0.15*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:)+0.10318*TPK%K060(:)*PCO& -&NC(:,21)*PCONC(:,14)+0.10162*TPK%K064(:)*PCONC(:,25)*PCONC(:,14)+0.09333*TPK%K& -&066(:)*PCONC(:,29)*PCONC(:,14)+TPK%K067(:)*PCONC(:,27)*PCONC(:,14)+0.10530*TPK& -&%K071(:)*PCONC(:,25)*PCONC(:,5)+TPK%K075(:)*PCONC(:,27)*PCONC(:,5)+0.00000*TPK& -&%K076(:)*PCONC(:,19)*PCONC(:,1)+0.13000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1)+0.1& -&3007*TPK%K088(:)*PCONC(:,32)*PCONC(:,3)+0.02563*TPK%K092(:)*PCONC(:,38)*PCONC(& -&:,3)+0.13370*TPK%K102(:)*PCONC(:,32)*PCONC(:,31)+0.02212*TPK%K106(:)*PCONC(:,3& -&8)*PCONC(:,31)+0.11306*TPK%K108(:)*PCONC(:,32)*PCONC(:,38)+0.01593*TPK%K112(:)& -&*PCONC(:,38)*PCONC(:,38)+0.16271*TPK%K117(:)*PCONC(:,32)*PCONC(:,5)+0.01021*TP& -&K%K121(:)*PCONC(:,38)*PCONC(:,5) -!PLOSS(XO2) = +K123*<HO2>+K124*<MO2>+K125*<CARBOP>+K126*<XO2>+K126*<XO2>+K127*< -!NO>+K128*<NO3> - PLOSS(:,40) = +TPK%K123(:)*PCONC(:,15)+TPK%K124(:)*PCONC(:,31)+TPK%K125(:)*PCO& -&NC(:,38)+TPK%K126(:)*PCONC(:,40)+TPK%K126(:)*PCONC(:,40)+TPK%K127(:)*PCONC(:,3& -&)+TPK%K128(:)*PCONC(:,5) -! -IF (LHOOK) CALL DR_HOOK('CH_PRODLOSS:SUB3',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE SUB3 -! -! -END SUBROUTINE CH_PRODLOSS diff --git a/src/arome/chem/internals/ch_qssa.F90 b/src/arome/chem/internals/ch_qssa.F90 deleted file mode 100644 index de9feb3dc8119123e793d40bba824654b9f652a4..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_qssa.F90 +++ /dev/null @@ -1,122 +0,0 @@ -! ######spl -SUBROUTINE CH_QSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PSLOW, PFAST, KQSSAITER) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################################################### -!! -!!*** *CH_QSSA* -!! -!! PURPOSE -!! ------- -!! solve one time-step of the chemical differential equation d/dt C = P-L*C -!! -!! METHOD -!! ------ -!! Quasy steady state approximation (QSSA): -!! C_n+1 = P_n / L_n if lifetime < Dt/10 -!! C_n+1 = C_n + ( P_n - L_n * C_n) Dt if lifetime > 100 * Dt -!! C_n+1 = P_n / L_n + ( C_n - P_n / L_n ) exp( - L_n Dt) else -!! -!! REFERENCE -!! --------- -!! O. Hertel et al , -!! Test of two Numerical schemes for use in atmospheric transport -!! chemistry models, -!! Atmospheric environment, 16, 2591--2611, 1993. -!! -!! AUTHOR -!! ------ -!! A. Fassi Fihri *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 18/12/95 -!! 10/04/96 (K. Suhre) take out all performance analysis and -!! internal time-stepping -!! 31/07/96 (K. Suhre) restructured -!! 01/08/01 (C. Mari) add PSLOW, PFAST, KQSSAITER arguments -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -USE MODI_CH_PRODLOSS -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number -REAL, INTENT(IN) :: PSLOW, PFAST -INTEGER, INTENT(IN) :: KQSSAITER -! -!* 0.2 declaration of local variables -! -REAL, DIMENSION(KVECNPT,KEQ) :: ZPROD, ZLOSS, ZCONC0, ZTMP -LOGICAL, DIMENSION(KVECNPT,KEQ) :: GSHORT, GMED, GLONG - ! mask for short, medium and long lived species -INTEGER :: ICOUNT ! counter for iteration number -! -!------------------------------------------------------------------------------ -! -!* 1. PREPARE VARIABLES -! ---------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_QSSA',0,ZHOOK_HANDLE) -PNEWCONC(:,:) = PCONC(:,:) -! -!* 2. ITERATE NQSSAITER TIMES -! ---------------------------- -! -DO ICOUNT = 1, KQSSAITER -! - ZCONC0(:,:) = PNEWCONC(:,:) -! -!* 2.1 calculate production and loss terms -! - CALL CH_PRODLOSS(PTSIMUL,ZCONC0,ZPROD,ZLOSS,KMI,KVECNPT,KEQ) -! -!* 2.2 decide which species are short, medium and long lived species -! - GSHORT(:,:) = ZLOSS(:,:) .GT. (1./(PFAST*PDTACT)) - GLONG(:,:) = ZLOSS(:,:) .LT. (1./(PSLOW*PDTACT)) - GMED(:,:) = .NOT. (GSHORT(:,:) .OR. GLONG(:,:)) -! -!* 2.3 analytical solution assuming PROD and LOSS constant throughout -! a time-step (medium long lived species) -! - WHERE (GMED) - ZTMP(:,:) = ZPROD(:,:)/ZLOSS(:,:) - PNEWCONC(:,:) = ZTMP(:,:) + (ZCONC0(:,:) - ZTMP(:,:))*EXP(-ZLOSS(:,:)*PDTACT) - END WHERE -! -!* 2.4 euler explicit integration (long lived species) -! - WHERE ( GLONG ) - PNEWCONC(:,:) = ZCONC0(:,:) + (ZPROD(:,:) - PDTACT*ZLOSS(:,:)*ZCONC0(:,:)) - ENDWHERE -! -!* 2.5 steady state approximation (short lived species) -! - WHERE ( GSHORT ) - PNEWCONC(:,:) = ZPROD(:,:) / ZLOSS(:,:) - END WHERE -! -END DO -! -IF (LHOOK) CALL DR_HOOK('CH_QSSA',1,ZHOOK_HANDLE) -END SUBROUTINE CH_QSSA diff --git a/src/arome/chem/internals/ch_read_meteo.F90 b/src/arome/chem/internals/ch_read_meteo.F90 deleted file mode 100644 index ab77d8132a646ad955597e25d51334e6ffc162fa..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_read_meteo.F90 +++ /dev/null @@ -1,69 +0,0 @@ -! ######spl - SUBROUTINE CH_READ_METEO(TPM) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################# -!! -!!*** *CH_READ_METEO* -!! -!! PURPOSE -!! ------- -!! Read a set of meteo variables -!! -!!** METHOD -!! ------ -!! read NMETEOVARS values and the time for the next update XTNEXTMETEO -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/04/95 -!! 27/07/96 (K. Suhre) restructured -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_MODEL0D, ONLY: NMETEOIO, XTNEXTMETEO, NVERB -USE MODD_CH_M9, ONLY: NMETEOVARS, METEOTRANSTYPE -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -TYPE(METEOTRANSTYPE), INTENT(INOUT) :: TPM ! the meteo variables -! -!* 0.2 declaration of local variables -! ---------------- -INTEGER :: JI ! loop control -! -!------------------------------------------------------------------------------ -! -!* EXECUTABLE STATEMENTS -! --------------------- -! -! read meteo variables and time of next update -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_READ_METEO',0,ZHOOK_HANDLE) -READ(NMETEOIO,*) (TPM%XMETEOVAR(JI), JI = 1, NMETEOVARS) -READ(NMETEOIO,*) XTNEXTMETEO -! -! print what has been read -IF (NVERB >= 7) THEN - PRINT *, 'CH_READ_METEO: new set of meteo variables has been read:' - DO JI = 1, NMETEOVARS - PRINT *, TPM%CMETEOVAR(JI), ': ', TPM%XMETEOVAR(JI) - ENDDO -END IF -IF (NVERB >= 5) THEN - PRINT *, 'CH_READ_METEO: next update at XTNEXTMETEO = ', XTNEXTMETEO -END IF -! -IF (LHOOK) CALL DR_HOOK('CH_READ_METEO',1,ZHOOK_HANDLE) -END SUBROUTINE CH_READ_METEO diff --git a/src/arome/chem/internals/ch_read_vector.F90 b/src/arome/chem/internals/ch_read_vector.F90 deleted file mode 100644 index cab6cac8795ff200dc985676ab9c66a87552f833..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_read_vector.F90 +++ /dev/null @@ -1,145 +0,0 @@ -! ######spl - SUBROUTINE CH_READ_VECTOR(KEQ, HNAMES, PVAR, PDEFAULT, KIN, KOUT, KVERB) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################################################### -!! -!!*** *CH_READ_VECTOR* -!! -!! PURPOSE -!! ------- -! read a vector of chemical parameters -!! -!!** METHOD -!! ------ -!! This subroutine reads from an already opened file (channel KIO) -!! pairs of character variables and values. It then associates the -!! values to an array of variable names that has been passed as argument. -!! In practice, this program will be used to read for example the initial -!! conditions of a vector of chemical variables. -!! The format of the data to be entered is as follows: -!! line 1: number of variables to be read -!! line 2: FORTRAN format e.g. (A10,E12.5) -!! line 3++: species value e.g. 'O3' 5.5E10 -!! -!! If a species is not defined in the file it will be assigned the -!! default value. If KVERB is greater or equal to 10, the full -!! association will be printed to KOUT. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 01/04/1999 -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -INTEGER, INTENT(IN) :: KEQ - ! number of variables to be defined -CHARACTER*(*), DIMENSION(KEQ), INTENT(IN) :: HNAMES - ! names of the variables to be defined -REAL, DIMENSION(KEQ), INTENT(OUT):: PVAR - ! value of the variable to be read -REAL, INTENT(IN) :: PDEFAULT - ! default value -INTEGER, INTENT(IN) :: KIN - ! I/O channel for file input -INTEGER, INTENT(IN) :: KOUT - ! I/O channel for printing -INTEGER, INTENT(IN) :: KVERB - ! verbosity level -! -!* 0.2 declarations of local variables -! -CHARACTER(LEN=40) :: YFORMAT ! format for input -! -INTEGER :: IINPUT ! number of surface values to be read -CHARACTER(LEN=40), DIMENSION(:), ALLOCATABLE :: YINPUTNAME ! species names -REAL , DIMENSION(:), ALLOCATABLE :: ZINPUTVAL ! surface val. -! -INTEGER :: JI, JN, JNREAL ! loop control variables -INTEGER :: INACT ! array pointer -! -!------------------------------------------------------------------------------- -! -!* 1. ASSOCIATE VALUES TO NAMES -! ------------------------- -! -!* 1.1 read input values -! -! read number of input lines IINPUT -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_READ_VECTOR',0,ZHOOK_HANDLE) -READ(KIN, *) IINPUT -! -! read data input format -READ(KIN,"(A)") YFORMAT -! -! allocate input fields -ALLOCATE(YINPUTNAME(IINPUT)) -ALLOCATE(ZINPUTVAL(IINPUT)) -! -! read input values -IF (KVERB >= 10) THEN - WRITE(KOUT,'(A)') '----------------------------------------------------' - WRITE(KOUT,'(A)') 'CH_READ_VECTOR: reading ...' -END IF -DO JI = 1, IINPUT - READ(KIN,YFORMAT) YINPUTNAME(JI), ZINPUTVAL(JI) - IF (KVERB >= 10) WRITE(KOUT,YFORMAT) YINPUTNAME(JI), ZINPUTVAL(JI) -END DO -! -!* 1.2 map values on PVAR -! -IF (KVERB >= 10) THEN - WRITE(KOUT,'(A)') '----------------------------------------------------' - WRITE(KOUT,'(A)') 'CH_READ_VECTOR: associating ...' - WRITE(KOUT,'(I4)') KEQ - WRITE(KOUT,'(A)') YFORMAT -END IF -! -PVAR(:) = PDEFAULT -! -DO JNREAL = 1, KEQ - INACT = 0 - search_loop1 : DO JN = 1, IINPUT - IF (HNAMES(JNREAL) .EQ. YINPUTNAME(JN)) THEN - INACT = JN - EXIT search_loop1 - END IF - END DO search_loop1 - IF (INACT .NE. 0) PVAR(JNREAL) = ZINPUTVAL(INACT) - IF (KVERB >= 10) THEN - WRITE(KOUT,YFORMAT) HNAMES(JNREAL), PVAR(JNREAL) - END IF -END DO -! -IF (KVERB >= 10) & - WRITE(KOUT,'(A)') '----------------------------------------------------' -! -DEALLOCATE(YINPUTNAME) -DEALLOCATE(ZINPUTVAL) -! -IF (LHOOK) CALL DR_HOOK('CH_READ_VECTOR',1,ZHOOK_HANDLE) -RETURN -! -END SUBROUTINE CH_READ_VECTOR diff --git a/src/arome/chem/internals/ch_set_photo_rates.F90 b/src/arome/chem/internals/ch_set_photo_rates.F90 deleted file mode 100644 index d3c87a1525ee465c261304f67a714606ee412ddc..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_set_photo_rates.F90 +++ /dev/null @@ -1,147 +0,0 @@ -! ######spl - SUBROUTINE CH_SET_PHOTO_RATES(PTIME,PCONC,KL,TPM,KMI,KOUT,KVERB,KVECNPT,KVECMASK,KEQ,PJVALUES) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################################################# -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!!*** *MODD_CH_SET_PHOTO_RATES* -!! -!! PURPOSE -!! ------- -! set or calculate photolysis rates -!! -!!** METHOD -!! ------ -!! simple -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 29/03/01: Vectorization + nesting (C. Mari) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -USE MODD_CH_M9, ONLY : METEOTRANSTYPE -USE MODI_CH_ALLOCATE_TACCS -! USER DEFINED FUNCTIONS -USE MODI_TROE -USE MODI_TROE_EQUIL -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT,KL,KEQ,KMI -INTEGER, DIMENSION(:,:), INTENT(IN) :: KVECMASK -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -TYPE(METEOTRANSTYPE), DIMENSION(KVECNPT), INTENT(IN) :: TPM -INTEGER, INTENT(IN) :: KOUT,KVERB -REAL,DIMENSION(:,:,:,:), INTENT(IN) :: PJVALUES ! Tuv coefficient -!! -! /BEGIN_SET_PHOTO_RATES/ - ! parameter for use by subroutine JVALUES, - ! contains the actual photolysis rates - REAL, DIMENSION(KVECNPT,21) :: ZRATESIO ! TUV photolysis rates at one level - REAL, DIMENSION(KVECNPT,17) :: ZRATES ! photolysis rates of RACM (vector) - INTEGER :: JITPK ! loop counter for J-Value transfer - INTEGER :: IDTI,IDTJ - INTEGER :: JITPKPLUS - INTEGER, DIMENSION(KVECNPT) :: ITABI, ITABJ - INTEGER, DIMENSION(KVECNPT) :: IMODELLEVEL - TYPE(CCSTYPE), POINTER :: TPK - ! - ! Normally allocated in CH_SET_RATES but who knows ? - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CH_SET_PHOTO_RATES',0,ZHOOK_HANDLE) - IF (.NOT. ASSOCIATED(TACCS(KMI)%NVERB)) THEN - CALL CH_ALLOCATE_TACCS(KMI, KVECNPT) - END IF - ! - ! TPK is set for current model - TPK=>TACCS(KMI) - - ! calculation of photolysis rates and transfer into local variables - ! - IDTI=KVECMASK(2,KL)-KVECMASK(1,KL)+1 - IDTJ=KVECMASK(4,KL)-KVECMASK(3,KL)+1 - DO JITPK = 0, KVECNPT-1 - ! - JITPKPLUS=JITPK+1 - ITABI(JITPKPLUS)=JITPK-IDTI*(JITPK/IDTI)+KVECMASK(1,KL) - ITABJ(JITPKPLUS)=JITPK/IDTI-IDTJ*(JITPK/(IDTI*IDTJ))+KVECMASK(3,KL) -! modification for VPP optimization - ZRATESIO(JITPK+1,:) = PJVALUES(ITABI(JITPKPLUS),ITABJ(JITPKPLUS),TPK%MODELLEVEL(JITPK+1),:) - ENDDO - ! - DO JITPK = 0, KVECNPT-1 - ! - ! associate TUV J-Values to ReLACS J-Values - ! - ZRATES(JITPK+1, 1) = ZRATESIO(JITPK+1,2) - ZRATES(JITPK+1, 2) = ZRATESIO(JITPK+1,3) - ZRATES(JITPK+1, 3) = ZRATESIO(JITPK+1,4) - ZRATES(JITPK+1, 4) = ZRATESIO(JITPK+1,9) - ZRATES(JITPK+1, 5) = ZRATESIO(JITPK+1,10) - ZRATES(JITPK+1, 6) = ZRATESIO(JITPK+1,11) - ZRATES(JITPK+1, 7) = ZRATESIO(JITPK+1,5) - ZRATES(JITPK+1, 8) = ZRATESIO(JITPK+1,6) - ZRATES(JITPK+1, 9) = ZRATESIO(JITPK+1,12) - ZRATES(JITPK+1, 10) = ZRATESIO(JITPK+1,14) - ZRATES(JITPK+1, 11) = ZRATESIO(JITPK+1,13) - ZRATES(JITPK+1, 12) = ZRATESIO(JITPK+1,17) - ZRATES(JITPK+1, 13) = ZRATESIO(JITPK+1,15) - ZRATES(JITPK+1, 14) = 0.962055 *ZRATESIO(JITPK+1,15)+& - & 1.06247E-02 *ZRATESIO(JITPK+1,12) - ZRATES(JITPK+1, 15) = ZRATESIO(JITPK+1,20) - ZRATES(JITPK+1, 16) = 3.16657 *ZRATESIO(JITPK+1,15)& - &+ 0.372446 *ZRATESIO(JITPK+1,15)& - &+ 8.42257 *ZRATESIO(JITPK+1,15)& - &+ 207.5913 *ZRATESIO(JITPK+1,20)& - &+ 0.0 *ZRATESIO(JITPK+1,20)& - &+ 8.44837E-04 *ZRATESIO(JITPK+1,20) - ZRATES(JITPK+1, 17) = ZRATESIO(JITPK+1,16) - ! - END DO - ! -! /END_SET_PHOTO_RATES/ - TPK%K001=ZRATES(:,001) - TPK%K002=ZRATES(:,002) - TPK%K003=ZRATES(:,003) - TPK%K004=ZRATES(:,004) - TPK%K005=ZRATES(:,005) - TPK%K006=ZRATES(:,006) - TPK%K007=ZRATES(:,007) - TPK%K008=ZRATES(:,008) - TPK%K009=ZRATES(:,009) - TPK%K010=ZRATES(:,010) - TPK%K011=ZRATES(:,011) - TPK%K012=ZRATES(:,012) - TPK%K013=ZRATES(:,013) - TPK%K014=ZRATES(:,014) - TPK%K015=ZRATES(:,015) - TPK%K016=ZRATES(:,016) - TPK%K017=ZRATES(:,017) -TPK%NOUT = KOUT -TPK%NVERB = KVERB -IF (LHOOK) CALL DR_HOOK('CH_SET_PHOTO_RATES',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_SET_PHOTO_RATES diff --git a/src/arome/chem/internals/ch_set_rates.F90 b/src/arome/chem/internals/ch_set_rates.F90 deleted file mode 100644 index 78a7491af29721ac20f379b68549f0052b524b21..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_set_rates.F90 +++ /dev/null @@ -1,253 +0,0 @@ -! ######spl - SUBROUTINE CH_SET_RATES(PTIME,PCONC,TPM,KMI,KOUT,KVERB,KVECNPT,KEQ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################################### -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!!*** *MODD_CH_SET_RATES* -!! -!! PURPOSE -!! ------- -! set or calculate reaction rates -!! -!!** METHOD -!! ------ -!! simple -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -USE MODD_CH_M9, ONLY : METEOTRANSTYPE -USE MODI_CH_ALLOCATE_TACCS -USE MODI_CH_DEALLOCATE_TACCS -! USER DEFINED FUNCTIONS -USE MODI_TROE -USE MODI_TROE_EQUIL -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -TYPE(METEOTRANSTYPE), DIMENSION(KVECNPT), INTENT(IN):: TPM -INTEGER, INTENT(IN) :: KMI -INTEGER, INTENT(IN) :: KOUT,KVERB -!! -! /BEGIN_SET_RATES/ - ! - ! transfer of meteo-variables into variables used by the - ! chemical core system (and some unit conversion): - ! - ! molecular weight of air: m_mol^air = 28.8 g/mol - ! molecular weight of H2O: m_mol^H2O = 18.0 g/mol - ! ==> m_mol^air / m_mol^H2O = 1.6 - ! density conversion factor: 1 g/cm3 = 1E+3 kg/m3 - ! n_molec (moelc./cm3): M = 1E-3*RHO(kg/m3) * Navo / m_mol - ! n_water: H2O = M * 1.6 * Rv - ! pressure = RHO * T * R * 1E-5 (in atm) - ! assuming 20.95 vol% O2 - ! - TYPE(CCSTYPE), POINTER :: TPK - !! - !!---------------------------------------------------------------------- -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_SET_RATES',0,ZHOOK_HANDLE) -IF (.NOT. ASSOCIATED(TACCS(KMI)%NVERB)) THEN - CALL CH_ALLOCATE_TACCS(KMI,KVECNPT) -END IF - - IF (SIZE(TACCS(KMI)%NVERB) .NE. KVECNPT) THEN - CALL CH_DEALLOCATE_TACCS(KMI) - CALL CH_ALLOCATE_TACCS(KMI,KVECNPT) - END IF - -TPK=>TACCS(KMI) - - TPK%MODELLEVEL = TPM%XMETEOVAR(1) - TPK%M = 1E-3*TPM%XMETEOVAR(2) * 6.0221367E+23 / 28.9644 - TPK%T = TPM%XMETEOVAR(3) - TPK%H2O = TPK%M*1.6077*TPM%XMETEOVAR(4) - TPK%CLOUDWATER = TPM%XMETEOVAR(5) - TPK%LAT = TPM%XMETEOVAR(6) - TPK%LON = TPM%XMETEOVAR(7) - TPK%YEAR = INT(TPM%XMETEOVAR(8)) - TPK%MONTH = INT(TPM%XMETEOVAR(9)) - TPK%DAY = INT(TPM%XMETEOVAR(10)) - ! derived variables - TPK%PRESSURE = TPM%XMETEOVAR(2) * TPK%T * 288.290947 * 1E-5 - TPK%O2 = 0.2095 * TPK%M - TPK%N2 = TPK%M - TPK%O2 - TPK%H2 = 1.23e13 - ! - ! the following prints will be erased - IF (KVERB >= 15) THEN - WRITE(KOUT,*) "CH_SET_RATES: the following variables have been updated" - WRITE(KOUT,*) "MODELLEVEL: ", TPK%MODELLEVEL(1) - WRITE(KOUT,*) "M: ", TPK%M(1) , "molec/cm3" - WRITE(KOUT,*) "T: ", TPK%T(1) , "K" - WRITE(KOUT,*) "H2O ", TPK%H2O(1) , "molec/cm3" - WRITE(KOUT,*) "CLOUDWATER: ", TPK%CLOUDWATER(1) , "kg/kg" - WRITE(KOUT,*) "LATITUDE: ", TPK%LAT(1) , "degree" - WRITE(KOUT,*) "LONGITUDE: ", TPK%LON(1) , "degree" - WRITE(KOUT,*) "YEAR: ", TPK%YEAR(1) - WRITE(KOUT,*) "MONTH: ", TPK%MONTH(1) - WRITE(KOUT,*) "DAY: ", TPK%DAY(1) - WRITE(KOUT,*) "PRESSURE: ", TPK%PRESSURE(1) , "atm" - WRITE(KOUT,*) "O2: ", TPK%O2(1) , "molec/cm3" - WRITE(KOUT,*) "N2: ", TPK%N2(1) , "molec/cm3" - WRITE(KOUT,*) "H2: ", TPK%H2(1) , "molec/cm3" - END IF - ! -! /END_SET_RATES/ - TPK%K018=TPK%M*6.00E-34*(TPK%T/300)**(-2.3) - TPK%K019=8.00E-12*exp(-(2060.0/TPK%T)) - TPK%K020=1.80E-11*exp(-(-110.0/TPK%T)) - TPK%K021=3.20E-11*exp(-(-70.0/TPK%T)) - TPK%K022=2.20E-10 - TPK%K023=1.60E-12*exp(-(940.0/TPK%T)) - TPK%K024=1.10E-14*exp(-(500.0/TPK%T)) - TPK%K025=4.80E-11*exp(-(-250.0/TPK%T)) - TPK%K026=2.90E-12*exp(-(160.0/TPK%T)) - TPK%K027=2.3E-13*EXP(600./TPK%T)+1.7E-33*TPK%M*EXP(1000./TPK%T) - TPK%K028=3.22E-34*EXP(2800./TPK%T)+2.38E-54*TPK%M*EXP(3200./TPK%T) - TPK%K029=TROE(1.,9.00E-32,1.5,3.00E-11,0.0,TPK%M,TPK%T,KVECNPT) - TPK%K030=6.50E-12*exp(-(-120.0/TPK%T)) - TPK%K031=TROE(1.,9.00E-32,2.0,2.20E-11,0.0,TPK%M,TPK%T,KVECNPT) - TPK%K032=TROE(1.,7.00E-31,2.6,1.50E-11,0.5,TPK%M,TPK%T,KVECNPT) - TPK%K033=TROE(1.,2.60E-30,3.2,2.40E-11,1.3,TPK%M,TPK%T,KVECNPT) - TPK%K034=2.20E-11 - TPK%K035=3.70E-12*exp(-(-250.0/TPK%T)) - TPK%K036=TROE(1.,1.80E-31,3.2,4.70E-12,1.4,TPK%M,TPK%T,KVECNPT) - TPK%K037=TROE_EQUIL(1.80E-31,3.2,4.70E-12,1.4,4.76E+26,10900.,TPK%M,TPK%T,KVEC& -&NPT) - TPK%K038=3.50E-12 - TPK%K039=1.80E-11*exp(-(390.0/TPK%T)) - TPK%K040=(7.2E-15*EXP(785/TPK%T))+(1.9E-33*EXP(725/TPK%T)*TPK%M)/(1+(1.9E-33*E& -&XP(725/TPK%T)*TPK%M)/(4.1E-16*EXP(1440/TPK%T))) - TPK%K041=1.30E-12*exp(-(-380.0/TPK%T)) - TPK%K042=2.00E-12*exp(-(1400.0/TPK%T)) - TPK%K043=1.20E-13*exp(-(2450.0/TPK%T)) - TPK%K044=3.30E-39*exp(-(-530.0/TPK%T)) - TPK%K045=1.50E-11*exp(-(-170.0/TPK%T)) - TPK%K046=4.50E-14*exp(-(1260.0/TPK%T)) - TPK%K047=TROE(1.,2.20E-30,3.9,1.50E-12,0.7,TPK%M,TPK%T,KVECNPT) - TPK%K048=TROE_EQUIL(2.20E-30,3.9,1.50E-12,0.7,3.70E+26,11000.0,TPK%M,TPK%T,KVE& -&CNPT) - TPK%K049=8.50E-13*exp(-(2450.0/TPK%T)) - TPK%K050=5.50E-12*exp(-(2000.0/TPK%T)) - TPK%K051=TROE(1.,3.00E-31,3.3,1.50E-12,0.0,TPK%M,TPK%T,KVECNPT) - TPK%K052=1.5E-13*(1.+2.439E-20*TPK%M) - TPK%K053=6.00E-11 - TPK%K054=0.00E-01*exp(-(-13.0/TPK%T)) - TPK%K055=TPK%T*TPK%T*7.44E-18*exp(-(1361./TPK%T)) - TPK%K056=1.51E-17*TPK%T*TPK%T*exp(-(492./TPK%T)) - TPK%K057=3.76E-12*exp(-(260.0/TPK%T))+1.70E-12*exp(-(155.0/TPK%T))+1.21E-12*ex& -&p(-(125.0/TPK%T)) - TPK%K058=1.78E-12*exp(-(-438.0/TPK%T))+6.07E-13*exp(-(-500.0/TPK%T))+0.00E-01*& -&exp(-(-448.0/TPK%T)) - TPK%K059=2.54E-11*exp(-(-410.0/TPK%T))+0.00E-01*exp(-(-444.0/TPK%T))+0.00E-01 - TPK%K060=3.31E-12*exp(-(-355.0/TPK%T))+3.45E-13 - TPK%K061=1.00E-11 - TPK%K062=5.55E-12*exp(-(-331.0/TPK%T)) - TPK%K063=TPK%T*TPK%T*5.68E-18*exp(-(-92.0/TPK%T)) - TPK%K064=1.32E-11+1.88E-12*exp(-(-175.0/TPK%T)) - TPK%K065=2.93E-12*exp(-(-190.0/TPK%T)) - TPK%K066=3.36E-12*exp(-(-190.0/TPK%T)) - TPK%K067=3.80E-14+1.59E-14*exp(-(-500.0/TPK%T)) - TPK%K068=5.31E-12*exp(-(260.0/TPK%T)) - TPK%K069=3.40E-13*exp(-(1900.0/TPK%T)) - TPK%K070=1.40E-12*exp(-(1900.0/TPK%T)) - TPK%K071=1.62E-12*exp(-(1900.0/TPK%T))+0.00E-01*exp(-(150.0/TPK%T))+1.94E-14*e& -&xp(-(1000.0/TPK%T)) - TPK%K072=4.92E-16 - TPK%K073=4.35E-18*TPK%T*TPK%T*exp(-(2282.0/TPK%T))+1.91E-14*exp(-(450.0/TPK%T)& -&)+1.08E-15*exp(-(-450.0/TPK%T))+0.00E-01 - TPK%K074=4.00E-12*exp(-(446.0/TPK%T))+0.00E-01*exp(-(-490.0/TPK%T))+0.00E-01 - TPK%K075=3.76E-16*exp(-(500.0/TPK%T)) - TPK%K076=8.17E-15*exp(-(2580.0/TPK%T))+4.32E-16*exp(-(1800.0/TPK%T))+2.87E-17*& -&exp(-(845.0/TPK%T))+0.00E-01*exp(-(2283.0/TPK%T)) - TPK%K077=7.86E-15*exp(-(1913.0/TPK%T))+0.00E-01*exp(-(732.0/TPK%T))+0.00E-01 - TPK%K078=0.00E-01*exp(-(2112.0/TPK%T))+1.38E-19 - TPK%K079=7.20E-17*exp(-(1700.0/TPK%T)) - TPK%K080=2.00E-11 - TPK%K081=1.00E-11 - TPK%K082=3.60E-11 - TPK%K083=1.66E-17*exp(-(-1044.0/TPK%T)) - TPK%K084=2.80E-11 - TPK%K085=TROE(5.86E-01,9.70E-29,5.6,9.30E-12,1.5,TPK%M,TPK%T,KVECNPT) - TPK%K086=TROE_EQUIL(9.70E-29,5.6,9.30E-12,1.5,1.16E+28,13954.,TPK%M,TPK%T,KVEC& -&NPT) - TPK%K087=4.20E-12*exp(-(-180.0/TPK%T)) - TPK%K088=4.36E-12 - TPK%K089=6.93E-12 - TPK%K090=4.00E-12 - TPK%K091=4.00E-12 - TPK%K092=1.22E-11 - TPK%K093=4.00E-12 - TPK%K094=3.80E-13*exp(-(-800.0/TPK%T)) - TPK%K095=6.16E-14*exp(-(-700.0/TPK%T))+1.52E-13*exp(-(-1300.0/TPK%T)) - TPK%K096=1.81E-13*exp(-(-1300.0/TPK%T)) - TPK%K097=1.28E-13*exp(-(-1300.0/TPK%T))+0.00E-01 - TPK%K098=3.75E-13*exp(-(-980.0/TPK%T)) - TPK%K099=5.94E-13*exp(-(-550.0/TPK%T))+1.99E-16*exp(-(-2640.0/TPK%T))+5.56E-14& -&*exp(-(-1300.0/TPK%T)) - TPK%K100=1.66E-13*exp(-(-1300.0/TPK%T)) - TPK%K101=9.10E-14*exp(-(-416.0/TPK%T)) - TPK%K102=1.03E-14*exp(-(-158.0/TPK%T))+6.24E-14*exp(-(-431.0/TPK%T))+1.53E-14*& -&exp(-(-467.0/TPK%T))+4.34E-15*exp(-(-633.0/TPK%T)) - TPK%K103=1.57E-13*exp(-(-708.0/TPK%T)) - TPK%K104=1.36E-13*exp(-(-708.0/TPK%T)) - TPK%K105=3.56E-14*exp(-(-708.0/TPK%T)) - TPK%K106=1.77E-11*exp(-(440.0/TPK%T))+1.48E-16*exp(-(-2510.0/TPK%T))+3.10E-13*& -&exp(-(-508.0/TPK%T)) - TPK%K107=1.12E-13*exp(-(-708.0/TPK%T)) - TPK%K108=4.44E-14*exp(-(-211.0/TPK%T))+2.23E-13*exp(-(-460.0/TPK%T))+4.10E-14*& -&exp(-(-522.0/TPK%T))+1.17E-14*exp(-(-683.0/TPK%T)) - TPK%K109=4.36E-13*exp(-(-765.0/TPK%T)) - TPK%K110=7.60E-13*exp(-(-765.0/TPK%T)) - TPK%K111=3.63E-13*exp(-(-765.0/TPK%T)) - TPK%K112=7.73E-13*exp(-(-530.0/TPK%T))+1.70E-13*exp(-(-565.0/TPK%T)) - TPK%K113=4.85E-13*exp(-(-765.0/TPK%T)) - TPK%K114=4.19E-15*exp(-(-1000.0/TPK%T)) - TPK%K115=2.48E-14*exp(-(-1000.0/TPK%T)) - TPK%K116=1.20E-12 - TPK%K117=1.20E-12 - TPK%K118=1.20E-12 - TPK%K119=1.20E-12 - TPK%K120=1.20E-12 - TPK%K121=3.48E-12 - TPK%K122=1.20E-12 - TPK%K123=1.66E-13*exp(-(-1300.0/TPK%T)) - TPK%K124=5.99E-15*exp(-(-1510.0/TPK%T)) - TPK%K125=1.69E-14*exp(-(-1560.0/TPK%T)) - TPK%K126=7.13E-17*exp(-(-2950.0/TPK%T)) - TPK%K127=4.00E-12 - TPK%K128=1.20E-12 -TPK%NOUT(:) = KOUT -TPK%NVERB(:) = KVERB -IF (LHOOK) CALL DR_HOOK('CH_SET_RATES',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_SET_RATES diff --git a/src/arome/chem/internals/ch_show_chem.F90 b/src/arome/chem/internals/ch_show_chem.F90 deleted file mode 100644 index c89f367c0328fc7e9d55c135f11c846be882532b..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_show_chem.F90 +++ /dev/null @@ -1,60 +0,0 @@ -! ######spl - SUBROUTINE CH_SHOW_CHEM(PCONC, HNAMES) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################# -!! -!!**** *CH_SHOW_CHEM* -!! -!! PURPOSE -!! ------- -!! print a set of values to the screen -!! -!! METHOD -!! ------ -!! NEQ values will be written to the screen, -!! the format will be as follows: -!! line 1: 'name1' value1 -!! ... -!! line NEQ: 'nameNEQ' valueNEQ -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/04/95 -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -!! PCONC: concentration vector to be read -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, DIMENSION(:), INTENT(IN) :: PCONC ! PCONC: concentration vector -CHARACTER(LEN=32), DIMENSION(:), INTENT(IN) :: HNAMES ! name of each species -! -!! DECLARATION OF LOCAL VARIABLES -!! ------------------------------ -INTEGER :: JI -! -!! EXECUTABLE STATEMENTS -!! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_SHOW_CHEM',0,ZHOOK_HANDLE) -DO JI = 1, SIZE(PCONC) - PRINT '(3A,E20.8)', "'", HNAMES(JI), "' ", PCONC(JI) -ENDDO -! -IF (LHOOK) CALL DR_HOOK('CH_SHOW_CHEM',1,ZHOOK_HANDLE) -END SUBROUTINE CH_SHOW_CHEM diff --git a/src/arome/chem/internals/ch_sis.F90 b/src/arome/chem/internals/ch_sis.F90 deleted file mode 100644 index 5e7968ff8bba73520b19724ca2d227cd18585165..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_sis.F90 +++ /dev/null @@ -1,121 +0,0 @@ -! ######spl - SUBROUTINE CH_SIS(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ###################################################################### -!! -!!*** *CH_SIS* -!! -!! PURPOSE -!! ------- -! solve one time-step of the chemical differential euation d/dt C = f(C) -!! -!!** METHOD -!! ------ -!! Semi-Implicit Symmetric (SIS): -!! y^n+1 = y^n + dt*(1-dt/2 J^n)^-1 f^n -!! -!! REFERENCE -!! --------- -!! Ramaroson, R. A., M. Pirre, and D.Cariolle, -!! A box model for on-line computations of diurnal variations -!! in a 1-D model: potential for application in multidimensional cases, -!! Ann. Geophysicae, 10, 416--428, 1992. -!! -!! AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 24/04/95 -!! 31/07/96 (K. Suhre) restructured -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -USE MODI_CH_FCN -USE MODI_CH_JAC -USE MODI_CH_GAUSS -!% -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number -! -!* 0.2 declaration of local variables -! -REAL, DIMENSION(KVECNPT,KEQ) :: ZDCDTVECT -REAL, DIMENSION(KEQ) :: ZDCDT -REAL, DIMENSION(KVECNPT,KEQ,KEQ) :: ZWORKVECT -REAL, DIMENSION(KEQ,KEQ) :: ZWORK,ZINV -INTEGER :: IFAIL, JI,JJ -! -!------------------------------------------------------------------------------ -! -!* 1. CALCULATE FIRST DERIVATIVE AND JACOBIAN -! -------------------------------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_SIS',0,ZHOOK_HANDLE) -CALL CH_FCN(PTSIMUL,PCONC,ZDCDTVECT,KMI,KVECNPT,KEQ) -! -!%kloos% -!Matrix ZJAC replaced by ZWORK -! -CALL CH_JAC(PTSIMUL,PCONC,ZWORKVECT,KMI,KVECNPT,KEQ) -! -!* 2. CALCULATE (1-dt/2 J^n)^-1 -! ------------------------------ -! -DO JJ=1,KVECNPT - -ZWORK(:,:) = - (0.5*PDTACT) * ZWORKVECT(JJ,:,:) -ZDCDT(:) = ZDCDTVECT(JJ,:) -!% -DO JI = 1, KEQ - ZWORK(JI,JI) = ZWORK(JI,JI) + 1.0 -ENDDO -! -!%kloos% -! Inversion of matrix modified -! -!* 3. COMPUTE LU FACTORIZATION OF MATRIX (1-dt/2) J^n with LAPACK LIBRARY -! ------------------------------------------------------------------------ -! -IFAIL = 1 -CALL CH_GAUSS(ZWORK,ZINV,KEQ,IFAIL) -IF (IFAIL.NE.0) THEN - STOP 'CH_SIS ERROR: matrix cannot be inverted by CH_GAUSS' -ENDIF -! -!* 4. CALCULATE (1-dt/2 J^n)^-1 f^n -! ----------------------------------- -! -ZDCDT(:)=MATMUL(ZINV,ZDCDT) -! -!* 5. CALCULATE y^n+1 = y^n + dt*(1-dt/2 J^n)^-1 f^n -! --------------------------------------------------- -! -PNEWCONC(JJ,:) = PCONC(JJ,:) + PDTACT * ZDCDT(:) - -ENDDO -!% -! -IF (LHOOK) CALL DR_HOOK('CH_SIS',1,ZHOOK_HANDLE) -END SUBROUTINE CH_SIS diff --git a/src/arome/chem/internals/ch_solver_n.F90 b/src/arome/chem/internals/ch_solver_n.F90 deleted file mode 100644 index 9d87e5cc626a717923c02417478c44d9441182db..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_solver_n.F90 +++ /dev/null @@ -1,145 +0,0 @@ -! ######spl - SUBROUTINE CH_SOLVER_n(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################################################### -!! -!!*** *CH_SOLVER_n* -!! -!! PURPOSE -!! ------- -!! solution of one timestep of the chemical differential equation -!! -!!** METHOD -!! ------ -!! Calls the individual solvers and passes the corresponding parameters -!! on. A fixed integration step is used, however, some solvers internally -!! use variable time steps. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 24/04/95 -!! 10/11/95 KS: integrate SVODE solver (AFF) -!! 10/04/96 KS: integrate QSSA and EXQSSA solver (AFF) -!! 31/07/96 KS: add TPK to parameterlist (some solver desactivated !@) -!! 01/08/01 (C. Mari) change routine to _n -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! 01/06/07 (P. Tulet) model number in argument (for AROME) -!! -!! EXTERNAL -!! -------- -!! calls the different solvers like SIS, LinSSA, NAG, etc -USE MODI_CH_SIS -USE MODI_CH_LINSSA -USE MODI_CH_CRANCK -!USE MODI_CH_SVODE -USE MODI_CH_QSSA -USE MODI_CH_EXQSSA -!@USE MODI_CH_D02EAF -!@USE MODI_CH_D02EBF -!@USE MODI_CH_D02NBF -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_SOLVER_n -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KMI ! model number -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -! -!------------------------------------------------------------------------------ -! -! -!* 1. CALL THE SOLVERS -! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_SOLVER_N',0,ZHOOK_HANDLE) -SELECT CASE (CSOLVER) -! -CASE ('SIS') -! - ! call SIS - CALL CH_SIS(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT,KMI) - ! -CASE ('LINSSA', 'LinSSA') -! - ! call LinSSA - CALL CH_LINSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - NSSA, NSSAINDEX) -! -CASE ('CRANCK') -! - ! call Cranck-Nicholson method - CALL CH_CRANCK(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - XALPHA) -! -CASE ('D02EAF') -! - ! call NAG's stiff-solver D02EAF - !@CALL CH_D02EAF(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KMI) - STOP 'CH_SOLVER_n SORRY: requested solver currently not supported (CSOLVER)' -! -CASE ('D02EBF') -! - ! call NAG's stiff-solver D02EBF - !@CALL CH_D02EBF(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KMI) - STOP 'CH_SOLVER_n SORRY: requested solver currently not supported (CSOLVER)' -! -CASE ('D02NBF') -! - ! call NAG's stiff-solver D02NBF - !@CALL CH_D02NBF(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KMI) - STOP 'CH_SOLVER_n SORRY: requested solver currently not supported (CSOLVER)' -! -CASE ('SVODE') -! - ! call SVODE solver - - ! CALL CH_SVODE(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - ! XRTOL, XATOL, NPED) - STOP 'CH_SOLVER_n SORRY: requested solver currently not supported (CSOLVER) until Masdev47' -! -CASE ('QSSA') -! - ! call QSSA - CALL CH_QSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - XSLOW, XFAST, NQSSAITER) - ! -CASE ('EXQSSA') -! - ! call EXQSSA - CALL CH_EXQSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - XSLOW, XFAST, XDTMAX) - ! -CASE ('NONE') -! - ! no integration at all (for debugging purposes) - PNEWCONC(:,:) = PCONC(:,:) -! -CASE DEFAULT - STOP 'CH_SOLVER_n ERROR: requested solver not supported (CSOLVER)' -END SELECT -! -IF (LHOOK) CALL DR_HOOK('CH_SOLVER_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_SOLVER_n diff --git a/src/arome/chem/internals/ch_sparse.F90 b/src/arome/chem/internals/ch_sparse.F90 deleted file mode 100644 index 8378474b3afb05df5bc465f6b320069efe011a11..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_sparse.F90 +++ /dev/null @@ -1,1359 +0,0 @@ -! ######spl - SUBROUTINE CH_SPARSE(KSPARSE, KSPARSEDIM) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################### -!! -!!*** *MODD_CH_SPARSE* -!! -!! PURPOSE -!! ------- -! calculation of the non-zero matrix elements in the Jacobian -!! -!!** METHOD -!! ------ -!! A 2D array KSPARSE of DIMESNSION(2,*) is returned, containing -!! the indices of the non-zero matrix elements in the Jacobian. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -INTEGER, INTENT(INOUT) :: KSPARSEDIM -INTEGER, INTENT(OUT), DIMENSION(2,KSPARSEDIM) :: KSPARSE -!! -!! LOCAL VARIABLES -!! --------------- -!! none -!!---------------------------------------------------------------------- -!! -!! EXECUTABLE STATEMENTS -!! --------------------- -! check if output array is large enough -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_SPARSE',0,ZHOOK_HANDLE) -IF (KSPARSEDIM.LT.432) THEN - STOP 'CH_SPARSE ERROR: array KSPARSE is too small!' -END IF -!O3/O3 - KSPARSE(1, 1)=1 - KSPARSE(2, 1)=1 -!O3/NO - KSPARSE(1, 2)=1 - KSPARSE(2, 2)=3 -!O3/NO2 - KSPARSE(1, 3)=1 - KSPARSE(2, 3)=4 -!O3/OH - KSPARSE(1, 4)=1 - KSPARSE(2, 4)=14 -!O3/HO2 - KSPARSE(1, 5)=1 - KSPARSE(2, 5)=15 -!O3/ALKE - KSPARSE(1, 6)=1 - KSPARSE(2, 6)=19 -!O3/BIO - KSPARSE(1, 7)=1 - KSPARSE(2, 7)=20 -!O3/CARBO - KSPARSE(1, 8)=1 - KSPARSE(2, 8)=25 -!O3/PAN - KSPARSE(1, 9)=1 - KSPARSE(2, 9)=27 -!O3/ADD - KSPARSE(1, 10)=1 - KSPARSE(2, 10)=36 -!O3/CARBOP - KSPARSE(1, 11)=1 - KSPARSE(2, 11)=38 -!H2O2/O3 - KSPARSE(1, 12)=2 - KSPARSE(2, 12)=1 -!H2O2/H2O2 - KSPARSE(1, 13)=2 - KSPARSE(2, 13)=2 -!H2O2/OH - KSPARSE(1, 14)=2 - KSPARSE(2, 14)=14 -!H2O2/HO2 - KSPARSE(1, 15)=2 - KSPARSE(2, 15)=15 -!H2O2/ALKE - KSPARSE(1, 16)=2 - KSPARSE(2, 16)=19 -!H2O2/BIO - KSPARSE(1, 17)=2 - KSPARSE(2, 17)=20 -!NO/O3 - KSPARSE(1, 18)=3 - KSPARSE(2, 18)=1 -!NO/NO - KSPARSE(1, 19)=3 - KSPARSE(2, 19)=3 -!NO/NO2 - KSPARSE(1, 20)=3 - KSPARSE(2, 20)=4 -!NO/NO3 - KSPARSE(1, 21)=3 - KSPARSE(2, 21)=5 -!NO/HONO - KSPARSE(1, 22)=3 - KSPARSE(2, 22)=7 -!NO/OH - KSPARSE(1, 23)=3 - KSPARSE(2, 23)=14 -!NO/HO2 - KSPARSE(1, 24)=3 - KSPARSE(2, 24)=15 -!NO/MO2 - KSPARSE(1, 25)=3 - KSPARSE(2, 25)=31 -!NO/ALKAP - KSPARSE(1, 26)=3 - KSPARSE(2, 26)=32 -!NO/ALKEP - KSPARSE(1, 27)=3 - KSPARSE(2, 27)=33 -!NO/BIOP - KSPARSE(1, 28)=3 - KSPARSE(2, 28)=34 -!NO/AROP - KSPARSE(1, 29)=3 - KSPARSE(2, 29)=37 -!NO/CARBOP - KSPARSE(1, 30)=3 - KSPARSE(2, 30)=38 -!NO/OLN - KSPARSE(1, 31)=3 - KSPARSE(2, 31)=39 -!NO/XO2 - KSPARSE(1, 32)=3 - KSPARSE(2, 32)=40 -!NO2/O3 - KSPARSE(1, 33)=4 - KSPARSE(2, 33)=1 -!NO2/NO - KSPARSE(1, 34)=4 - KSPARSE(2, 34)=3 -!NO2/NO2 - KSPARSE(1, 35)=4 - KSPARSE(2, 35)=4 -!NO2/NO3 - KSPARSE(1, 36)=4 - KSPARSE(2, 36)=5 -!NO2/N2O5 - KSPARSE(1, 37)=4 - KSPARSE(2, 37)=6 -!NO2/HONO - KSPARSE(1, 38)=4 - KSPARSE(2, 38)=7 -!NO2/HNO3 - KSPARSE(1, 39)=4 - KSPARSE(2, 39)=8 -!NO2/HNO4 - KSPARSE(1, 40)=4 - KSPARSE(2, 40)=9 -!NO2/OH - KSPARSE(1, 41)=4 - KSPARSE(2, 41)=14 -!NO2/HO2 - KSPARSE(1, 42)=4 - KSPARSE(2, 42)=15 -!NO2/CARBO - KSPARSE(1, 43)=4 - KSPARSE(2, 43)=25 -!NO2/ONIT - KSPARSE(1, 44)=4 - KSPARSE(2, 44)=26 -!NO2/PAN - KSPARSE(1, 45)=4 - KSPARSE(2, 45)=27 -!NO2/MO2 - KSPARSE(1, 46)=4 - KSPARSE(2, 46)=31 -!NO2/ALKAP - KSPARSE(1, 47)=4 - KSPARSE(2, 47)=32 -!NO2/ALKEP - KSPARSE(1, 48)=4 - KSPARSE(2, 48)=33 -!NO2/BIOP - KSPARSE(1, 49)=4 - KSPARSE(2, 49)=34 -!NO2/PHO - KSPARSE(1, 50)=4 - KSPARSE(2, 50)=35 -!NO2/ADD - KSPARSE(1, 51)=4 - KSPARSE(2, 51)=36 -!NO2/AROP - KSPARSE(1, 52)=4 - KSPARSE(2, 52)=37 -!NO2/CARBOP - KSPARSE(1, 53)=4 - KSPARSE(2, 53)=38 -!NO2/OLN - KSPARSE(1, 54)=4 - KSPARSE(2, 54)=39 -!NO2/XO2 - KSPARSE(1, 55)=4 - KSPARSE(2, 55)=40 -!NO3/O3 - KSPARSE(1, 56)=5 - KSPARSE(2, 56)=1 -!NO3/NO - KSPARSE(1, 57)=5 - KSPARSE(2, 57)=3 -!NO3/NO2 - KSPARSE(1, 58)=5 - KSPARSE(2, 58)=4 -!NO3/NO3 - KSPARSE(1, 59)=5 - KSPARSE(2, 59)=5 -!NO3/N2O5 - KSPARSE(1, 60)=5 - KSPARSE(2, 60)=6 -!NO3/HNO3 - KSPARSE(1, 61)=5 - KSPARSE(2, 61)=8 -!NO3/HNO4 - KSPARSE(1, 62)=5 - KSPARSE(2, 62)=9 -!NO3/OH - KSPARSE(1, 63)=5 - KSPARSE(2, 63)=14 -!NO3/HO2 - KSPARSE(1, 64)=5 - KSPARSE(2, 64)=15 -!NO3/ALKE - KSPARSE(1, 65)=5 - KSPARSE(2, 65)=19 -!NO3/BIO - KSPARSE(1, 66)=5 - KSPARSE(2, 66)=20 -!NO3/ARO - KSPARSE(1, 67)=5 - KSPARSE(2, 67)=21 -!NO3/HCHO - KSPARSE(1, 68)=5 - KSPARSE(2, 68)=22 -!NO3/ALD - KSPARSE(1, 69)=5 - KSPARSE(2, 69)=23 -!NO3/CARBO - KSPARSE(1, 70)=5 - KSPARSE(2, 70)=25 -!NO3/PAN - KSPARSE(1, 71)=5 - KSPARSE(2, 71)=27 -!NO3/MO2 - KSPARSE(1, 72)=5 - KSPARSE(2, 72)=31 -!NO3/ALKAP - KSPARSE(1, 73)=5 - KSPARSE(2, 73)=32 -!NO3/ALKEP - KSPARSE(1, 74)=5 - KSPARSE(2, 74)=33 -!NO3/BIOP - KSPARSE(1, 75)=5 - KSPARSE(2, 75)=34 -!NO3/AROP - KSPARSE(1, 76)=5 - KSPARSE(2, 76)=37 -!NO3/CARBOP - KSPARSE(1, 77)=5 - KSPARSE(2, 77)=38 -!NO3/OLN - KSPARSE(1, 78)=5 - KSPARSE(2, 78)=39 -!NO3/XO2 - KSPARSE(1, 79)=5 - KSPARSE(2, 79)=40 -!N2O5/NO2 - KSPARSE(1, 80)=6 - KSPARSE(2, 80)=4 -!N2O5/NO3 - KSPARSE(1, 81)=6 - KSPARSE(2, 81)=5 -!N2O5/N2O5 - KSPARSE(1, 82)=6 - KSPARSE(2, 82)=6 -!HONO/NO - KSPARSE(1, 83)=7 - KSPARSE(2, 83)=3 -!HONO/NO2 - KSPARSE(1, 84)=7 - KSPARSE(2, 84)=4 -!HONO/HONO - KSPARSE(1, 85)=7 - KSPARSE(2, 85)=7 -!HONO/OH - KSPARSE(1, 86)=7 - KSPARSE(2, 86)=14 -!HONO/ADD - KSPARSE(1, 87)=7 - KSPARSE(2, 87)=36 -!HNO3/NO2 - KSPARSE(1, 88)=8 - KSPARSE(2, 88)=4 -!HNO3/NO3 - KSPARSE(1, 89)=8 - KSPARSE(2, 89)=5 -!HNO3/HNO3 - KSPARSE(1, 90)=8 - KSPARSE(2, 90)=8 -!HNO3/OH - KSPARSE(1, 91)=8 - KSPARSE(2, 91)=14 -!HNO3/HO2 - KSPARSE(1, 92)=8 - KSPARSE(2, 92)=15 -!HNO3/ARO - KSPARSE(1, 93)=8 - KSPARSE(2, 93)=21 -!HNO3/HCHO - KSPARSE(1, 94)=8 - KSPARSE(2, 94)=22 -!HNO3/ALD - KSPARSE(1, 95)=8 - KSPARSE(2, 95)=23 -!HNO3/CARBO - KSPARSE(1, 96)=8 - KSPARSE(2, 96)=25 -!HNO4/NO2 - KSPARSE(1, 97)=9 - KSPARSE(2, 97)=4 -!HNO4/HNO4 - KSPARSE(1, 98)=9 - KSPARSE(2, 98)=9 -!HNO4/OH - KSPARSE(1, 99)=9 - KSPARSE(2, 99)=14 -!HNO4/HO2 - KSPARSE(1, 100)=9 - KSPARSE(2, 100)=15 -!SO2/SO2 - KSPARSE(1, 101)=11 - KSPARSE(2, 101)=11 -!SO2/OH - KSPARSE(1, 102)=11 - KSPARSE(2, 102)=14 -!SULF/SO2 - KSPARSE(1, 103)=12 - KSPARSE(2, 103)=11 -!SULF/OH - KSPARSE(1, 104)=12 - KSPARSE(2, 104)=14 -!CO/O3 - KSPARSE(1, 105)=13 - KSPARSE(2, 105)=1 -!CO/NO3 - KSPARSE(1, 106)=13 - KSPARSE(2, 106)=5 -!CO/CO - KSPARSE(1, 107)=13 - KSPARSE(2, 107)=13 -!CO/OH - KSPARSE(1, 108)=13 - KSPARSE(2, 108)=14 -!CO/ALKA - KSPARSE(1, 109)=13 - KSPARSE(2, 109)=18 -!CO/ALKE - KSPARSE(1, 110)=13 - KSPARSE(2, 110)=19 -!CO/BIO - KSPARSE(1, 111)=13 - KSPARSE(2, 111)=20 -!CO/HCHO - KSPARSE(1, 112)=13 - KSPARSE(2, 112)=22 -!CO/ALD - KSPARSE(1, 113)=13 - KSPARSE(2, 113)=23 -!CO/CARBO - KSPARSE(1, 114)=13 - KSPARSE(2, 114)=25 -!CO/PAN - KSPARSE(1, 115)=13 - KSPARSE(2, 115)=27 -!OH/O3 - KSPARSE(1, 116)=14 - KSPARSE(2, 116)=1 -!OH/H2O2 - KSPARSE(1, 117)=14 - KSPARSE(2, 117)=2 -!OH/NO - KSPARSE(1, 118)=14 - KSPARSE(2, 118)=3 -!OH/NO2 - KSPARSE(1, 119)=14 - KSPARSE(2, 119)=4 -!OH/NO3 - KSPARSE(1, 120)=14 - KSPARSE(2, 120)=5 -!OH/HONO - KSPARSE(1, 121)=14 - KSPARSE(2, 121)=7 -!OH/HNO3 - KSPARSE(1, 122)=14 - KSPARSE(2, 122)=8 -!OH/HNO4 - KSPARSE(1, 123)=14 - KSPARSE(2, 123)=9 -!OH/SO2 - KSPARSE(1, 124)=14 - KSPARSE(2, 124)=11 -!OH/CO - KSPARSE(1, 125)=14 - KSPARSE(2, 125)=13 -!OH/OH - KSPARSE(1, 126)=14 - KSPARSE(2, 126)=14 -!OH/HO2 - KSPARSE(1, 127)=14 - KSPARSE(2, 127)=15 -!OH/CH4 - KSPARSE(1, 128)=14 - KSPARSE(2, 128)=16 -!OH/ETH - KSPARSE(1, 129)=14 - KSPARSE(2, 129)=17 -!OH/ALKA - KSPARSE(1, 130)=14 - KSPARSE(2, 130)=18 -!OH/ALKE - KSPARSE(1, 131)=14 - KSPARSE(2, 131)=19 -!OH/BIO - KSPARSE(1, 132)=14 - KSPARSE(2, 132)=20 -!OH/ARO - KSPARSE(1, 133)=14 - KSPARSE(2, 133)=21 -!OH/HCHO - KSPARSE(1, 134)=14 - KSPARSE(2, 134)=22 -!OH/ALD - KSPARSE(1, 135)=14 - KSPARSE(2, 135)=23 -!OH/KET - KSPARSE(1, 136)=14 - KSPARSE(2, 136)=24 -!OH/CARBO - KSPARSE(1, 137)=14 - KSPARSE(2, 137)=25 -!OH/ONIT - KSPARSE(1, 138)=14 - KSPARSE(2, 138)=26 -!OH/PAN - KSPARSE(1, 139)=14 - KSPARSE(2, 139)=27 -!OH/OP1 - KSPARSE(1, 140)=14 - KSPARSE(2, 140)=28 -!OH/OP2 - KSPARSE(1, 141)=14 - KSPARSE(2, 141)=29 -!OH/ADD - KSPARSE(1, 142)=14 - KSPARSE(2, 142)=36 -!HO2/O3 - KSPARSE(1, 143)=15 - KSPARSE(2, 143)=1 -!HO2/H2O2 - KSPARSE(1, 144)=15 - KSPARSE(2, 144)=2 -!HO2/NO - KSPARSE(1, 145)=15 - KSPARSE(2, 145)=3 -!HO2/NO2 - KSPARSE(1, 146)=15 - KSPARSE(2, 146)=4 -!HO2/NO3 - KSPARSE(1, 147)=15 - KSPARSE(2, 147)=5 -!HO2/HNO4 - KSPARSE(1, 148)=15 - KSPARSE(2, 148)=9 -!HO2/SO2 - KSPARSE(1, 149)=15 - KSPARSE(2, 149)=11 -!HO2/CO - KSPARSE(1, 150)=15 - KSPARSE(2, 150)=13 -!HO2/OH - KSPARSE(1, 151)=15 - KSPARSE(2, 151)=14 -!HO2/HO2 - KSPARSE(1, 152)=15 - KSPARSE(2, 152)=15 -!HO2/ALKA - KSPARSE(1, 153)=15 - KSPARSE(2, 153)=18 -!HO2/ALKE - KSPARSE(1, 154)=15 - KSPARSE(2, 154)=19 -!HO2/BIO - KSPARSE(1, 155)=15 - KSPARSE(2, 155)=20 -!HO2/ARO - KSPARSE(1, 156)=15 - KSPARSE(2, 156)=21 -!HO2/HCHO - KSPARSE(1, 157)=15 - KSPARSE(2, 157)=22 -!HO2/ALD - KSPARSE(1, 158)=15 - KSPARSE(2, 158)=23 -!HO2/CARBO - KSPARSE(1, 159)=15 - KSPARSE(2, 159)=25 -!HO2/ONIT - KSPARSE(1, 160)=15 - KSPARSE(2, 160)=26 -!HO2/PAN - KSPARSE(1, 161)=15 - KSPARSE(2, 161)=27 -!HO2/OP1 - KSPARSE(1, 162)=15 - KSPARSE(2, 162)=28 -!HO2/OP2 - KSPARSE(1, 163)=15 - KSPARSE(2, 163)=29 -!HO2/MO2 - KSPARSE(1, 164)=15 - KSPARSE(2, 164)=31 -!HO2/ALKAP - KSPARSE(1, 165)=15 - KSPARSE(2, 165)=32 -!HO2/ALKEP - KSPARSE(1, 166)=15 - KSPARSE(2, 166)=33 -!HO2/BIOP - KSPARSE(1, 167)=15 - KSPARSE(2, 167)=34 -!HO2/PHO - KSPARSE(1, 168)=15 - KSPARSE(2, 168)=35 -!HO2/ADD - KSPARSE(1, 169)=15 - KSPARSE(2, 169)=36 -!HO2/AROP - KSPARSE(1, 170)=15 - KSPARSE(2, 170)=37 -!HO2/CARBOP - KSPARSE(1, 171)=15 - KSPARSE(2, 171)=38 -!HO2/OLN - KSPARSE(1, 172)=15 - KSPARSE(2, 172)=39 -!HO2/XO2 - KSPARSE(1, 173)=15 - KSPARSE(2, 173)=40 -!CH4/O3 - KSPARSE(1, 174)=16 - KSPARSE(2, 174)=1 -!CH4/OH - KSPARSE(1, 175)=16 - KSPARSE(2, 175)=14 -!CH4/CH4 - KSPARSE(1, 176)=16 - KSPARSE(2, 176)=16 -!CH4/ALKE - KSPARSE(1, 177)=16 - KSPARSE(2, 177)=19 -!ETH/O3 - KSPARSE(1, 178)=17 - KSPARSE(2, 178)=1 -!ETH/OH - KSPARSE(1, 179)=17 - KSPARSE(2, 179)=14 -!ETH/ETH - KSPARSE(1, 180)=17 - KSPARSE(2, 180)=17 -!ETH/ALKE - KSPARSE(1, 181)=17 - KSPARSE(2, 181)=19 -!ALKA/OH - KSPARSE(1, 182)=18 - KSPARSE(2, 182)=14 -!ALKA/ALKA - KSPARSE(1, 183)=18 - KSPARSE(2, 183)=18 -!ALKE/O3 - KSPARSE(1, 184)=19 - KSPARSE(2, 184)=1 -!ALKE/NO - KSPARSE(1, 185)=19 - KSPARSE(2, 185)=3 -!ALKE/NO3 - KSPARSE(1, 186)=19 - KSPARSE(2, 186)=5 -!ALKE/OH - KSPARSE(1, 187)=19 - KSPARSE(2, 187)=14 -!ALKE/ALKE - KSPARSE(1, 188)=19 - KSPARSE(2, 188)=19 -!ALKE/BIO - KSPARSE(1, 189)=19 - KSPARSE(2, 189)=20 -!ALKE/MO2 - KSPARSE(1, 190)=19 - KSPARSE(2, 190)=31 -!ALKE/BIOP - KSPARSE(1, 191)=19 - KSPARSE(2, 191)=34 -!ALKE/CARBOP - KSPARSE(1, 192)=19 - KSPARSE(2, 192)=38 -!BIO/O3 - KSPARSE(1, 193)=20 - KSPARSE(2, 193)=1 -!BIO/NO3 - KSPARSE(1, 194)=20 - KSPARSE(2, 194)=5 -!BIO/OH - KSPARSE(1, 195)=20 - KSPARSE(2, 195)=14 -!BIO/BIO - KSPARSE(1, 196)=20 - KSPARSE(2, 196)=20 -!ARO/O3 - KSPARSE(1, 197)=21 - KSPARSE(2, 197)=1 -!ARO/NO2 - KSPARSE(1, 198)=21 - KSPARSE(2, 198)=4 -!ARO/NO3 - KSPARSE(1, 199)=21 - KSPARSE(2, 199)=5 -!ARO/OH - KSPARSE(1, 200)=21 - KSPARSE(2, 200)=14 -!ARO/HO2 - KSPARSE(1, 201)=21 - KSPARSE(2, 201)=15 -!ARO/ARO - KSPARSE(1, 202)=21 - KSPARSE(2, 202)=21 -!ARO/PHO - KSPARSE(1, 203)=21 - KSPARSE(2, 203)=35 -!ARO/ADD - KSPARSE(1, 204)=21 - KSPARSE(2, 204)=36 -!HCHO/O3 - KSPARSE(1, 205)=22 - KSPARSE(2, 205)=1 -!HCHO/NO - KSPARSE(1, 206)=22 - KSPARSE(2, 206)=3 -!HCHO/NO3 - KSPARSE(1, 207)=22 - KSPARSE(2, 207)=5 -!HCHO/OH - KSPARSE(1, 208)=22 - KSPARSE(2, 208)=14 -!HCHO/ALKA - KSPARSE(1, 209)=22 - KSPARSE(2, 209)=18 -!HCHO/ALKE - KSPARSE(1, 210)=22 - KSPARSE(2, 210)=19 -!HCHO/BIO - KSPARSE(1, 211)=22 - KSPARSE(2, 211)=20 -!HCHO/HCHO - KSPARSE(1, 212)=22 - KSPARSE(2, 212)=22 -!HCHO/CARBO - KSPARSE(1, 213)=22 - KSPARSE(2, 213)=25 -!HCHO/PAN - KSPARSE(1, 214)=22 - KSPARSE(2, 214)=27 -!HCHO/OP1 - KSPARSE(1, 215)=22 - KSPARSE(2, 215)=28 -!HCHO/OP2 - KSPARSE(1, 216)=22 - KSPARSE(2, 216)=29 -!HCHO/MO2 - KSPARSE(1, 217)=22 - KSPARSE(2, 217)=31 -!HCHO/ALKAP - KSPARSE(1, 218)=22 - KSPARSE(2, 218)=32 -!HCHO/ALKEP - KSPARSE(1, 219)=22 - KSPARSE(2, 219)=33 -!HCHO/BIOP - KSPARSE(1, 220)=22 - KSPARSE(2, 220)=34 -!HCHO/AROP - KSPARSE(1, 221)=22 - KSPARSE(2, 221)=37 -!HCHO/CARBOP - KSPARSE(1, 222)=22 - KSPARSE(2, 222)=38 -!HCHO/OLN - KSPARSE(1, 223)=22 - KSPARSE(2, 223)=39 -!HCHO/XO2 - KSPARSE(1, 224)=22 - KSPARSE(2, 224)=40 -!ALD/O3 - KSPARSE(1, 225)=23 - KSPARSE(2, 225)=1 -!ALD/NO - KSPARSE(1, 226)=23 - KSPARSE(2, 226)=3 -!ALD/NO3 - KSPARSE(1, 227)=23 - KSPARSE(2, 227)=5 -!ALD/OH - KSPARSE(1, 228)=23 - KSPARSE(2, 228)=14 -!ALD/ALKA - KSPARSE(1, 229)=23 - KSPARSE(2, 229)=18 -!ALD/ALKE - KSPARSE(1, 230)=23 - KSPARSE(2, 230)=19 -!ALD/BIO - KSPARSE(1, 231)=23 - KSPARSE(2, 231)=20 -!ALD/ALD - KSPARSE(1, 232)=23 - KSPARSE(2, 232)=23 -!ALD/CARBO - KSPARSE(1, 233)=23 - KSPARSE(2, 233)=25 -!ALD/ONIT - KSPARSE(1, 234)=23 - KSPARSE(2, 234)=26 -!ALD/OP2 - KSPARSE(1, 235)=23 - KSPARSE(2, 235)=29 -!ALD/MO2 - KSPARSE(1, 236)=23 - KSPARSE(2, 236)=31 -!ALD/ALKAP - KSPARSE(1, 237)=23 - KSPARSE(2, 237)=32 -!ALD/ALKEP - KSPARSE(1, 238)=23 - KSPARSE(2, 238)=33 -!ALD/BIOP - KSPARSE(1, 239)=23 - KSPARSE(2, 239)=34 -!ALD/CARBOP - KSPARSE(1, 240)=23 - KSPARSE(2, 240)=38 -!ALD/OLN - KSPARSE(1, 241)=23 - KSPARSE(2, 241)=39 -!KET/O3 - KSPARSE(1, 242)=24 - KSPARSE(2, 242)=1 -!KET/NO - KSPARSE(1, 243)=24 - KSPARSE(2, 243)=3 -!KET/NO3 - KSPARSE(1, 244)=24 - KSPARSE(2, 244)=5 -!KET/OH - KSPARSE(1, 245)=24 - KSPARSE(2, 245)=14 -!KET/ALKA - KSPARSE(1, 246)=24 - KSPARSE(2, 246)=18 -!KET/ALKE - KSPARSE(1, 247)=24 - KSPARSE(2, 247)=19 -!KET/BIO - KSPARSE(1, 248)=24 - KSPARSE(2, 248)=20 -!KET/KET - KSPARSE(1, 249)=24 - KSPARSE(2, 249)=24 -!KET/CARBO - KSPARSE(1, 250)=24 - KSPARSE(2, 250)=25 -!KET/ONIT - KSPARSE(1, 251)=24 - KSPARSE(2, 251)=26 -!KET/OP2 - KSPARSE(1, 252)=24 - KSPARSE(2, 252)=29 -!KET/MO2 - KSPARSE(1, 253)=24 - KSPARSE(2, 253)=31 -!KET/ALKAP - KSPARSE(1, 254)=24 - KSPARSE(2, 254)=32 -!KET/ALKEP - KSPARSE(1, 255)=24 - KSPARSE(2, 255)=33 -!KET/BIOP - KSPARSE(1, 256)=24 - KSPARSE(2, 256)=34 -!KET/CARBOP - KSPARSE(1, 257)=24 - KSPARSE(2, 257)=38 -!KET/OLN - KSPARSE(1, 258)=24 - KSPARSE(2, 258)=39 -!CARBO/O3 - KSPARSE(1, 259)=25 - KSPARSE(2, 259)=1 -!CARBO/NO - KSPARSE(1, 260)=25 - KSPARSE(2, 260)=3 -!CARBO/NO3 - KSPARSE(1, 261)=25 - KSPARSE(2, 261)=5 -!CARBO/OH - KSPARSE(1, 262)=25 - KSPARSE(2, 262)=14 -!CARBO/ALKA - KSPARSE(1, 263)=25 - KSPARSE(2, 263)=18 -!CARBO/ALKE - KSPARSE(1, 264)=25 - KSPARSE(2, 264)=19 -!CARBO/BIO - KSPARSE(1, 265)=25 - KSPARSE(2, 265)=20 -!CARBO/CARBO - KSPARSE(1, 266)=25 - KSPARSE(2, 266)=25 -!CARBO/PAN - KSPARSE(1, 267)=25 - KSPARSE(2, 267)=27 -!CARBO/MO2 - KSPARSE(1, 268)=25 - KSPARSE(2, 268)=31 -!CARBO/ALKAP - KSPARSE(1, 269)=25 - KSPARSE(2, 269)=32 -!CARBO/BIOP - KSPARSE(1, 270)=25 - KSPARSE(2, 270)=34 -!CARBO/AROP - KSPARSE(1, 271)=25 - KSPARSE(2, 271)=37 -!CARBO/CARBOP - KSPARSE(1, 272)=25 - KSPARSE(2, 272)=38 -!ONIT/NO - KSPARSE(1, 273)=26 - KSPARSE(2, 273)=3 -!ONIT/NO2 - KSPARSE(1, 274)=26 - KSPARSE(2, 274)=4 -!ONIT/NO3 - KSPARSE(1, 275)=26 - KSPARSE(2, 275)=5 -!ONIT/OH - KSPARSE(1, 276)=26 - KSPARSE(2, 276)=14 -!ONIT/HO2 - KSPARSE(1, 277)=26 - KSPARSE(2, 277)=15 -!ONIT/ONIT - KSPARSE(1, 278)=26 - KSPARSE(2, 278)=26 -!ONIT/PAN - KSPARSE(1, 279)=26 - KSPARSE(2, 279)=27 -!ONIT/MO2 - KSPARSE(1, 280)=26 - KSPARSE(2, 280)=31 -!ONIT/ALKAP - KSPARSE(1, 281)=26 - KSPARSE(2, 281)=32 -!ONIT/BIOP - KSPARSE(1, 282)=26 - KSPARSE(2, 282)=34 -!ONIT/PHO - KSPARSE(1, 283)=26 - KSPARSE(2, 283)=35 -!ONIT/AROP - KSPARSE(1, 284)=26 - KSPARSE(2, 284)=37 -!ONIT/CARBOP - KSPARSE(1, 285)=26 - KSPARSE(2, 285)=38 -!ONIT/OLN - KSPARSE(1, 286)=26 - KSPARSE(2, 286)=39 -!PAN/O3 - KSPARSE(1, 287)=27 - KSPARSE(2, 287)=1 -!PAN/NO2 - KSPARSE(1, 288)=27 - KSPARSE(2, 288)=4 -!PAN/NO3 - KSPARSE(1, 289)=27 - KSPARSE(2, 289)=5 -!PAN/OH - KSPARSE(1, 290)=27 - KSPARSE(2, 290)=14 -!PAN/PAN - KSPARSE(1, 291)=27 - KSPARSE(2, 291)=27 -!PAN/CARBOP - KSPARSE(1, 292)=27 - KSPARSE(2, 292)=38 -!OP1/OH - KSPARSE(1, 293)=28 - KSPARSE(2, 293)=14 -!OP1/HO2 - KSPARSE(1, 294)=28 - KSPARSE(2, 294)=15 -!OP1/OP1 - KSPARSE(1, 295)=28 - KSPARSE(2, 295)=28 -!OP1/MO2 - KSPARSE(1, 296)=28 - KSPARSE(2, 296)=31 -!OP2/O3 - KSPARSE(1, 297)=29 - KSPARSE(2, 297)=1 -!OP2/OH - KSPARSE(1, 298)=29 - KSPARSE(2, 298)=14 -!OP2/HO2 - KSPARSE(1, 299)=29 - KSPARSE(2, 299)=15 -!OP2/CARBO - KSPARSE(1, 300)=29 - KSPARSE(2, 300)=25 -!OP2/OP2 - KSPARSE(1, 301)=29 - KSPARSE(2, 301)=29 -!OP2/ALKAP - KSPARSE(1, 302)=29 - KSPARSE(2, 302)=32 -!OP2/ALKEP - KSPARSE(1, 303)=29 - KSPARSE(2, 303)=33 -!OP2/BIOP - KSPARSE(1, 304)=29 - KSPARSE(2, 304)=34 -!OP2/AROP - KSPARSE(1, 305)=29 - KSPARSE(2, 305)=37 -!OP2/CARBOP - KSPARSE(1, 306)=29 - KSPARSE(2, 306)=38 -!OP2/XO2 - KSPARSE(1, 307)=29 - KSPARSE(2, 307)=40 -!ORA2/O3 - KSPARSE(1, 308)=30 - KSPARSE(2, 308)=1 -!ORA2/HO2 - KSPARSE(1, 309)=30 - KSPARSE(2, 309)=15 -!ORA2/ALKE - KSPARSE(1, 310)=30 - KSPARSE(2, 310)=19 -!ORA2/BIO - KSPARSE(1, 311)=30 - KSPARSE(2, 311)=20 -!ORA2/CARBO - KSPARSE(1, 312)=30 - KSPARSE(2, 312)=25 -!ORA2/MO2 - KSPARSE(1, 313)=30 - KSPARSE(2, 313)=31 -!ORA2/ALKAP - KSPARSE(1, 314)=30 - KSPARSE(2, 314)=32 -!ORA2/ALKEP - KSPARSE(1, 315)=30 - KSPARSE(2, 315)=33 -!ORA2/BIOP - KSPARSE(1, 316)=30 - KSPARSE(2, 316)=34 -!ORA2/CARBOP - KSPARSE(1, 317)=30 - KSPARSE(2, 317)=38 -!ORA2/OLN - KSPARSE(1, 318)=30 - KSPARSE(2, 318)=39 -!MO2/O3 - KSPARSE(1, 319)=31 - KSPARSE(2, 319)=1 -!MO2/NO - KSPARSE(1, 320)=31 - KSPARSE(2, 320)=3 -!MO2/NO3 - KSPARSE(1, 321)=31 - KSPARSE(2, 321)=5 -!MO2/OH - KSPARSE(1, 322)=31 - KSPARSE(2, 322)=14 -!MO2/HO2 - KSPARSE(1, 323)=31 - KSPARSE(2, 323)=15 -!MO2/CH4 - KSPARSE(1, 324)=31 - KSPARSE(2, 324)=16 -!MO2/ALKE - KSPARSE(1, 325)=31 - KSPARSE(2, 325)=19 -!MO2/BIO - KSPARSE(1, 326)=31 - KSPARSE(2, 326)=20 -!MO2/ALD - KSPARSE(1, 327)=31 - KSPARSE(2, 327)=23 -!MO2/OP1 - KSPARSE(1, 328)=31 - KSPARSE(2, 328)=28 -!MO2/OP2 - KSPARSE(1, 329)=31 - KSPARSE(2, 329)=29 -!MO2/MO2 - KSPARSE(1, 330)=31 - KSPARSE(2, 330)=31 -!MO2/ALKAP - KSPARSE(1, 331)=31 - KSPARSE(2, 331)=32 -!MO2/ALKEP - KSPARSE(1, 332)=31 - KSPARSE(2, 332)=33 -!MO2/BIOP - KSPARSE(1, 333)=31 - KSPARSE(2, 333)=34 -!MO2/AROP - KSPARSE(1, 334)=31 - KSPARSE(2, 334)=37 -!MO2/CARBOP - KSPARSE(1, 335)=31 - KSPARSE(2, 335)=38 -!MO2/OLN - KSPARSE(1, 336)=31 - KSPARSE(2, 336)=39 -!MO2/XO2 - KSPARSE(1, 337)=31 - KSPARSE(2, 337)=40 -!ALKAP/O3 - KSPARSE(1, 338)=32 - KSPARSE(2, 338)=1 -!ALKAP/NO - KSPARSE(1, 339)=32 - KSPARSE(2, 339)=3 -!ALKAP/NO3 - KSPARSE(1, 340)=32 - KSPARSE(2, 340)=5 -!ALKAP/OH - KSPARSE(1, 341)=32 - KSPARSE(2, 341)=14 -!ALKAP/HO2 - KSPARSE(1, 342)=32 - KSPARSE(2, 342)=15 -!ALKAP/ETH - KSPARSE(1, 343)=32 - KSPARSE(2, 343)=17 -!ALKAP/ALKA - KSPARSE(1, 344)=32 - KSPARSE(2, 344)=18 -!ALKAP/ALKE - KSPARSE(1, 345)=32 - KSPARSE(2, 345)=19 -!ALKAP/BIO - KSPARSE(1, 346)=32 - KSPARSE(2, 346)=20 -!ALKAP/KET - KSPARSE(1, 347)=32 - KSPARSE(2, 347)=24 -!ALKAP/ONIT - KSPARSE(1, 348)=32 - KSPARSE(2, 348)=26 -!ALKAP/OP2 - KSPARSE(1, 349)=32 - KSPARSE(2, 349)=29 -!ALKAP/MO2 - KSPARSE(1, 350)=32 - KSPARSE(2, 350)=31 -!ALKAP/ALKAP - KSPARSE(1, 351)=32 - KSPARSE(2, 351)=32 -!ALKAP/CARBOP - KSPARSE(1, 352)=32 - KSPARSE(2, 352)=38 -!ALKEP/NO - KSPARSE(1, 353)=33 - KSPARSE(2, 353)=3 -!ALKEP/NO3 - KSPARSE(1, 354)=33 - KSPARSE(2, 354)=5 -!ALKEP/OH - KSPARSE(1, 355)=33 - KSPARSE(2, 355)=14 -!ALKEP/HO2 - KSPARSE(1, 356)=33 - KSPARSE(2, 356)=15 -!ALKEP/ALKE - KSPARSE(1, 357)=33 - KSPARSE(2, 357)=19 -!ALKEP/MO2 - KSPARSE(1, 358)=33 - KSPARSE(2, 358)=31 -!ALKEP/ALKEP - KSPARSE(1, 359)=33 - KSPARSE(2, 359)=33 -!ALKEP/CARBOP - KSPARSE(1, 360)=33 - KSPARSE(2, 360)=38 -!BIOP/NO - KSPARSE(1, 361)=34 - KSPARSE(2, 361)=3 -!BIOP/NO3 - KSPARSE(1, 362)=34 - KSPARSE(2, 362)=5 -!BIOP/OH - KSPARSE(1, 363)=34 - KSPARSE(2, 363)=14 -!BIOP/HO2 - KSPARSE(1, 364)=34 - KSPARSE(2, 364)=15 -!BIOP/ALKE - KSPARSE(1, 365)=34 - KSPARSE(2, 365)=19 -!BIOP/BIO - KSPARSE(1, 366)=34 - KSPARSE(2, 366)=20 -!BIOP/MO2 - KSPARSE(1, 367)=34 - KSPARSE(2, 367)=31 -!BIOP/BIOP - KSPARSE(1, 368)=34 - KSPARSE(2, 368)=34 -!BIOP/CARBOP - KSPARSE(1, 369)=34 - KSPARSE(2, 369)=38 -!PHO/NO2 - KSPARSE(1, 370)=35 - KSPARSE(2, 370)=4 -!PHO/NO3 - KSPARSE(1, 371)=35 - KSPARSE(2, 371)=5 -!PHO/OH - KSPARSE(1, 372)=35 - KSPARSE(2, 372)=14 -!PHO/HO2 - KSPARSE(1, 373)=35 - KSPARSE(2, 373)=15 -!PHO/ARO - KSPARSE(1, 374)=35 - KSPARSE(2, 374)=21 -!PHO/PHO - KSPARSE(1, 375)=35 - KSPARSE(2, 375)=35 -!ADD/O3 - KSPARSE(1, 376)=36 - KSPARSE(2, 376)=1 -!ADD/NO2 - KSPARSE(1, 377)=36 - KSPARSE(2, 377)=4 -!ADD/OH - KSPARSE(1, 378)=36 - KSPARSE(2, 378)=14 -!ADD/ARO - KSPARSE(1, 379)=36 - KSPARSE(2, 379)=21 -!ADD/ADD - KSPARSE(1, 380)=36 - KSPARSE(2, 380)=36 -!AROP/NO - KSPARSE(1, 381)=37 - KSPARSE(2, 381)=3 -!AROP/NO3 - KSPARSE(1, 382)=37 - KSPARSE(2, 382)=5 -!AROP/HO2 - KSPARSE(1, 383)=37 - KSPARSE(2, 383)=15 -!AROP/MO2 - KSPARSE(1, 384)=37 - KSPARSE(2, 384)=31 -!AROP/ADD - KSPARSE(1, 385)=37 - KSPARSE(2, 385)=36 -!AROP/AROP - KSPARSE(1, 386)=37 - KSPARSE(2, 386)=37 -!AROP/CARBOP - KSPARSE(1, 387)=37 - KSPARSE(2, 387)=38 -!CARBOP/O3 - KSPARSE(1, 388)=38 - KSPARSE(2, 388)=1 -!CARBOP/NO - KSPARSE(1, 389)=38 - KSPARSE(2, 389)=3 -!CARBOP/NO2 - KSPARSE(1, 390)=38 - KSPARSE(2, 390)=4 -!CARBOP/NO3 - KSPARSE(1, 391)=38 - KSPARSE(2, 391)=5 -!CARBOP/OH - KSPARSE(1, 392)=38 - KSPARSE(2, 392)=14 -!CARBOP/HO2 - KSPARSE(1, 393)=38 - KSPARSE(2, 393)=15 -!CARBOP/ALKE - KSPARSE(1, 394)=38 - KSPARSE(2, 394)=19 -!CARBOP/BIO - KSPARSE(1, 395)=38 - KSPARSE(2, 395)=20 -!CARBOP/ALD - KSPARSE(1, 396)=38 - KSPARSE(2, 396)=23 -!CARBOP/KET - KSPARSE(1, 397)=38 - KSPARSE(2, 397)=24 -!CARBOP/CARBO - KSPARSE(1, 398)=38 - KSPARSE(2, 398)=25 -!CARBOP/PAN - KSPARSE(1, 399)=38 - KSPARSE(2, 399)=27 -!CARBOP/OP2 - KSPARSE(1, 400)=38 - KSPARSE(2, 400)=29 -!CARBOP/MO2 - KSPARSE(1, 401)=38 - KSPARSE(2, 401)=31 -!CARBOP/ALKAP - KSPARSE(1, 402)=38 - KSPARSE(2, 402)=32 -!CARBOP/ALKEP - KSPARSE(1, 403)=38 - KSPARSE(2, 403)=33 -!CARBOP/BIOP - KSPARSE(1, 404)=38 - KSPARSE(2, 404)=34 -!CARBOP/AROP - KSPARSE(1, 405)=38 - KSPARSE(2, 405)=37 -!CARBOP/CARBOP - KSPARSE(1, 406)=38 - KSPARSE(2, 406)=38 -!CARBOP/OLN - KSPARSE(1, 407)=38 - KSPARSE(2, 407)=39 -!CARBOP/XO2 - KSPARSE(1, 408)=38 - KSPARSE(2, 408)=40 -!OLN/NO - KSPARSE(1, 409)=39 - KSPARSE(2, 409)=3 -!OLN/NO3 - KSPARSE(1, 410)=39 - KSPARSE(2, 410)=5 -!OLN/HO2 - KSPARSE(1, 411)=39 - KSPARSE(2, 411)=15 -!OLN/ALKE - KSPARSE(1, 412)=39 - KSPARSE(2, 412)=19 -!OLN/BIO - KSPARSE(1, 413)=39 - KSPARSE(2, 413)=20 -!OLN/CARBO - KSPARSE(1, 414)=39 - KSPARSE(2, 414)=25 -!OLN/MO2 - KSPARSE(1, 415)=39 - KSPARSE(2, 415)=31 -!OLN/CARBOP - KSPARSE(1, 416)=39 - KSPARSE(2, 416)=38 -!OLN/OLN - KSPARSE(1, 417)=39 - KSPARSE(2, 417)=39 -!XO2/O3 - KSPARSE(1, 418)=40 - KSPARSE(2, 418)=1 -!XO2/NO - KSPARSE(1, 419)=40 - KSPARSE(2, 419)=3 -!XO2/NO3 - KSPARSE(1, 420)=40 - KSPARSE(2, 420)=5 -!XO2/OH - KSPARSE(1, 421)=40 - KSPARSE(2, 421)=14 -!XO2/HO2 - KSPARSE(1, 422)=40 - KSPARSE(2, 422)=15 -!XO2/ALKE - KSPARSE(1, 423)=40 - KSPARSE(2, 423)=19 -!XO2/BIO - KSPARSE(1, 424)=40 - KSPARSE(2, 424)=20 -!XO2/ARO - KSPARSE(1, 425)=40 - KSPARSE(2, 425)=21 -!XO2/CARBO - KSPARSE(1, 426)=40 - KSPARSE(2, 426)=25 -!XO2/PAN - KSPARSE(1, 427)=40 - KSPARSE(2, 427)=27 -!XO2/OP2 - KSPARSE(1, 428)=40 - KSPARSE(2, 428)=29 -!XO2/MO2 - KSPARSE(1, 429)=40 - KSPARSE(2, 429)=31 -!XO2/ALKAP - KSPARSE(1, 430)=40 - KSPARSE(2, 430)=32 -!XO2/CARBOP - KSPARSE(1, 431)=40 - KSPARSE(2, 431)=38 -!XO2/XO2 - KSPARSE(1, 432)=40 - KSPARSE(2, 432)=40 -KSPARSEDIM = 432 -IF (LHOOK) CALL DR_HOOK('CH_SPARSE',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_SPARSE diff --git a/src/arome/chem/internals/ch_svode.F90 b/src/arome/chem/internals/ch_svode.F90 deleted file mode 100644 index f9ff6985702b4b50201086703412f35e3ea91fae..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_svode.F90 +++ /dev/null @@ -1,132 +0,0 @@ -! ######spl -SUBROUTINE CH_SVODE(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PRTOL, PATOL, KPED ) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################################################################## -!! -!!**** *CH_SVODE* - -!! PURPOSE -!! ------- -!! solve one time-step of the chemical differential equation d/dt C = f(C) - -!! METHOD -!! ------ -!! the stiff-solver SVODE (written in FORTRAN77) -!! will be used to solve the system -!! NOTE: this subroutine is not 100% doctorized since we want -!! to conserve quasi-standard variable names used by SVODE - -!! REFERENCE -!! --------- -!! MesoNH book 2 - -!! AUTHOR -!! ------ -!! K. Suhre - -!! MODIFICATIONS -!! ------------- -!! Original 10/11/95 -!! 01/08/01 (C. Mari) add arguments -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -!! SVODE: stiff solver from NETLIB -!! CH_SVODE_FCN, CH_SVODE_JAC: argument list converters for CH_FCN, CH_JAC - -!! IMPLICIT ARGUMENTS -!! ------------------ -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC - ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC - ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model index -REAL, INTENT(IN) :: PRTOL, PATOL -INTEGER, INTENT(IN) :: KPED - -!! DECLARATION OF LOCAL VARIABLES -!! ------------------------------ -REAL, DIMENSION(KEQ) :: ZCONC ! concentration vector -REAL :: ZTBEGIN, ZTEND ! begin and end of integration step - -INTEGER :: ITOL = 1 ! type of error, don't play with this parameter -INTEGER :: ITASK = 1 ! integrate from PTSIMUL to PTSIMUL + PDTACT -INTEGER :: ISTATE ! integer flag (input and output) -INTEGER :: IOPT = 0 ! 0 to indicate no optional input used -INTEGER :: IMF ! 21=use stiff full analytical Jacobian - ! 22=use stiff full numerical Jacobian -REAL, DIMENSION(KEQ) :: ZRTOL ! relative tolerance (XRTOL) -REAL, DIMENSION(KEQ) :: ZATOL ! absolute tolerance (XATOL) - -! workspace declaration -INTEGER :: IRW ! will be set to (22 + 9*KEQ + 2*KEQ*KEQ) in the code -INTEGER :: IIW ! will be set to (30 + KEQ) in the code -REAL, DIMENSION(22 + 9*KEQ + 2*KEQ*KEQ) :: ZWORK ! workspace -INTEGER, DIMENSION(30 + KEQ) :: IWORK ! workspace - -! dummy parameters -INTEGER, DIMENSION(1) :: IPAR ! dummy parameter -REAL, DIMENSION(1) :: ZPAR ! dummy parameter - -INTEGER :: JI ! loop counter - -EXTERNAL CH_SVODE_FCN, CH_SVODE_JAC - -!* EXECUTABLE STATEMENTS -! --------------------- - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_SVODE',0,ZHOOK_HANDLE) -ZTBEGIN = PTSIMUL -ZTEND = PTSIMUL + PDTACT - -ZRTOL(:) = PRTOL -ZATOL(:) = PATOL - -! set array dimensions -IRW = (22 + 9*KEQ + 2*KEQ*KEQ) -IIW = (30 + KEQ) - -! choose calculation of Jacobian -IF (KPED .EQ. 0) THEN - IMF = 22 ! numerical calculation of Jacobian -ELSE - IMF = 21 ! analytical calculation of Jacobian using CH_JAC -ENDIF - -! at each call to SVODE start a new iteration cycle -ISTATE = 1 - -! this solver is not vectorized, we loop over all elements -DO JI = 1, KVECNPT - - ZCONC(:) = PCONC(JI,:) - - ! call SVODE solver - CALL SVODE (CH_SVODE_FCN, KEQ, ZCONC, ZTBEGIN, ZTEND, & - ITOL, ZRTOL, ZATOL, ITASK, & - ISTATE, IOPT, ZWORK, IRW, IWORK, IIW, CH_SVODE_JAC, IMF, & - ZPAR, IPAR, KMI, JI) - - IF (ISTATE.LT.0) THEN - PRINT *, "Problems !!! ISTATE = ", ISTATE - PRINT *, "at vector element ", JI, " out of ", KVECNPT - STOP "CH_SVODE: program stopped due to SVODE error!" - ENDIF - - PNEWCONC(JI,:) = ZCONC(:) - -END DO - -IF (LHOOK) CALL DR_HOOK('CH_SVODE',1,ZHOOK_HANDLE) -END SUBROUTINE CH_SVODE diff --git a/src/arome/chem/internals/ch_terms.F90 b/src/arome/chem/internals/ch_terms.F90 deleted file mode 100644 index 2377f0ed2372e39c13889f58071ee9499f622e4b..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_terms.F90 +++ /dev/null @@ -1,1856 +0,0 @@ -! ######spl - SUBROUTINE CH_TERMS(PTIME,PCONC,PTERMS,KMI,KVECNPT,KEQ,KREAC) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ################################################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!! -!!*** *MODD_CH_TERMS* -!! -!! PURPOSE -!! ------- -! calculation of the contribution of each term in each reaction -!! -!!** METHOD -!! ------ -!! The contribution of reaction i to the evolution of species j -!! is returned in PTERMS. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9_SCHEME -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ, KREAC -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ,KREAC):: PTERMS -INTEGER, INTENT(IN) :: KMI -!! -TYPE(CCSTYPE), POINTER :: TPK -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_TERMS',0,ZHOOK_HANDLE) -TPK=>TACCS(KMI) -! /BEGIN_CODE/ - TPK%O1D(:)=(TPK%K002(:)*PCONC(:,JP_O3))/(TPK%K020(:)*TPK%N2(:)+TPK%K021(:)*TPK%O2(:)+& - &TPK%K022(:)*TPK%H2O(:)) - - - TPK%O3P(:)=(TPK%K001(:)*PCONC(:,JP_NO2)+TPK%K003(:)*PCONC(:,JP_O3)+TPK%K008(:)*PCONC(:,JP_NO3)+& - &TPK%K020(:)*TPK%O1D(:)*TPK%N2(:)+TPK%K021(:)*TPK%O1D(:)*TPK%O2(:)+& - &0.00000*TPK%K076(:)*PCONC(:,JP_ALKE)*PCONC(:,JP_O3)+& - &0.09000*TPK%K077(:)*PCONC(:,JP_BIO)*PCONC(:,JP_O3))/& - &(TPK%K018(:)*TPK%O2(:)+TPK%K019(:)*PCONC(:,JP_O3)+TPK%K029(:)*PCONC(:,JP_NO)+& - &TPK%K030(:)*PCONC(:,JP_NO2)+TPK%K031(:)*PCONC(:,JP_NO2)+TPK%K053(:)*PCONC(:,JP_BIO)+& - &TPK%K054(:)*PCONC(:,JP_CARBO)) - - -! /END_CODE/ -PTERMS(:,:,:) = 0.0 -!PTERMS(NO,K001) = +K001*<NO2> - PTERMS(:,3,1) = +TPK%K001(:)*PCONC(:,4) - -!PTERMS(NO2,K001) = -K001*<NO2> - PTERMS(:,4,1) = -TPK%K001(:)*PCONC(:,4) - -!PTERMS(O3,K002) = -K002*<O3> - PTERMS(:,1,2) = -TPK%K002(:)*PCONC(:,1) - -!PTERMS(O3,K003) = -K003*<O3> - PTERMS(:,1,3) = -TPK%K003(:)*PCONC(:,1) - -!PTERMS(NO,K004) = +K004*<HONO> - PTERMS(:,3,4) = +TPK%K004(:)*PCONC(:,7) - -!PTERMS(HONO,K004) = -K004*<HONO> - PTERMS(:,7,4) = -TPK%K004(:)*PCONC(:,7) - -!PTERMS(OH,K004) = +K004*<HONO> - PTERMS(:,14,4) = +TPK%K004(:)*PCONC(:,7) - -!PTERMS(NO2,K005) = +K005*<HNO3> - PTERMS(:,4,5) = +TPK%K005(:)*PCONC(:,8) - -!PTERMS(HNO3,K005) = -K005*<HNO3> - PTERMS(:,8,5) = -TPK%K005(:)*PCONC(:,8) - -!PTERMS(OH,K005) = +K005*<HNO3> - PTERMS(:,14,5) = +TPK%K005(:)*PCONC(:,8) - -!PTERMS(NO2,K006) = +0.65*K006*<HNO4> - PTERMS(:,4,6) = +0.65*TPK%K006(:)*PCONC(:,9) - -!PTERMS(NO3,K006) = +0.35*K006*<HNO4> - PTERMS(:,5,6) = +0.35*TPK%K006(:)*PCONC(:,9) - -!PTERMS(HNO4,K006) = -K006*<HNO4> - PTERMS(:,9,6) = -TPK%K006(:)*PCONC(:,9) - -!PTERMS(OH,K006) = +0.35*K006*<HNO4> - PTERMS(:,14,6) = +0.35*TPK%K006(:)*PCONC(:,9) - -!PTERMS(HO2,K006) = +0.65*K006*<HNO4> - PTERMS(:,15,6) = +0.65*TPK%K006(:)*PCONC(:,9) - -!PTERMS(NO,K007) = +K007*<NO3> - PTERMS(:,3,7) = +TPK%K007(:)*PCONC(:,5) - -!PTERMS(NO3,K007) = -K007*<NO3> - PTERMS(:,5,7) = -TPK%K007(:)*PCONC(:,5) - -!PTERMS(NO2,K008) = +K008*<NO3> - PTERMS(:,4,8) = +TPK%K008(:)*PCONC(:,5) - -!PTERMS(NO3,K008) = -K008*<NO3> - PTERMS(:,5,8) = -TPK%K008(:)*PCONC(:,5) - -!PTERMS(H2O2,K009) = -K009*<H2O2> - PTERMS(:,2,9) = -TPK%K009(:)*PCONC(:,2) - -!PTERMS(OH,K009) = +K009*<H2O2> - PTERMS(:,14,9) = +TPK%K009(:)*PCONC(:,2) - -!PTERMS(CO,K010) = +K010*<HCHO> - PTERMS(:,13,10) = +TPK%K010(:)*PCONC(:,22) - -!PTERMS(HCHO,K010) = -K010*<HCHO> - PTERMS(:,22,10) = -TPK%K010(:)*PCONC(:,22) - -!PTERMS(CO,K011) = +K011*<HCHO> - PTERMS(:,13,11) = +TPK%K011(:)*PCONC(:,22) - -!PTERMS(HO2,K011) = +K011*<HCHO> - PTERMS(:,15,11) = +TPK%K011(:)*PCONC(:,22) - -!PTERMS(HCHO,K011) = -K011*<HCHO> - PTERMS(:,22,11) = -TPK%K011(:)*PCONC(:,22) - -!PTERMS(CO,K012) = +K012*<ALD> - PTERMS(:,13,12) = +TPK%K012(:)*PCONC(:,23) - -!PTERMS(HO2,K012) = +K012*<ALD> - PTERMS(:,15,12) = +TPK%K012(:)*PCONC(:,23) - -!PTERMS(ALD,K012) = -K012*<ALD> - PTERMS(:,23,12) = -TPK%K012(:)*PCONC(:,23) - -!PTERMS(MO2,K012) = +K012*<ALD> - PTERMS(:,31,12) = +TPK%K012(:)*PCONC(:,23) - -!PTERMS(OH,K013) = +K013*<OP1> - PTERMS(:,14,13) = +TPK%K013(:)*PCONC(:,28) - -!PTERMS(HO2,K013) = +K013*<OP1> - PTERMS(:,15,13) = +TPK%K013(:)*PCONC(:,28) - -!PTERMS(HCHO,K013) = +K013*<OP1> - PTERMS(:,22,13) = +TPK%K013(:)*PCONC(:,28) - -!PTERMS(OP1,K013) = -K013*<OP1> - PTERMS(:,28,13) = -TPK%K013(:)*PCONC(:,28) - -!PTERMS(OH,K014) = +K014*<OP2> - PTERMS(:,14,14) = +TPK%K014(:)*PCONC(:,29) - -!PTERMS(HO2,K014) = +0.96205*K014*<OP2> - PTERMS(:,15,14) = +0.96205*TPK%K014(:)*PCONC(:,29) - -!PTERMS(ALD,K014) = +0.96205*K014*<OP2> - PTERMS(:,23,14) = +0.96205*TPK%K014(:)*PCONC(:,29) - -!PTERMS(OP2,K014) = -K014*<OP2> - PTERMS(:,29,14) = -TPK%K014(:)*PCONC(:,29) - -!PTERMS(MO2,K014) = +0.03795*K014*<OP2> - PTERMS(:,31,14) = +0.03795*TPK%K014(:)*PCONC(:,29) - -!PTERMS(KET,K015) = -K015*<KET> - PTERMS(:,24,15) = -TPK%K015(:)*PCONC(:,24) - -!PTERMS(ALKAP,K015) = +1.00000*K015*<KET> - PTERMS(:,32,15) = +1.00000*TPK%K015(:)*PCONC(:,24) - -!PTERMS(CARBOP,K015) = +1.00000*K015*<KET> - PTERMS(:,38,15) = +1.00000*TPK%K015(:)*PCONC(:,24) - -!PTERMS(CO,K016) = +0.91924*K016*<CARBO> - PTERMS(:,13,16) = +0.91924*TPK%K016(:)*PCONC(:,25) - -!PTERMS(HO2,K016) = +0.75830*K016*<CARBO> - PTERMS(:,15,16) = +0.75830*TPK%K016(:)*PCONC(:,25) - -!PTERMS(HCHO,K016) = +0.06517*K016*<CARBO> - PTERMS(:,22,16) = +0.06517*TPK%K016(:)*PCONC(:,25) - -!PTERMS(CARBO,K016) = -K016*<CARBO> - PTERMS(:,25,16) = -TPK%K016(:)*PCONC(:,25) - -!PTERMS(CARBOP,K016) = +0.69622*K016*<CARBO> - PTERMS(:,38,16) = +0.69622*TPK%K016(:)*PCONC(:,25) - -!PTERMS(NO2,K017) = +K017*<ONIT> - PTERMS(:,4,17) = +TPK%K017(:)*PCONC(:,26) - -!PTERMS(HO2,K017) = +K017*<ONIT> - PTERMS(:,15,17) = +TPK%K017(:)*PCONC(:,26) - -!PTERMS(ALD,K017) = +0.20*K017*<ONIT> - PTERMS(:,23,17) = +0.20*TPK%K017(:)*PCONC(:,26) - -!PTERMS(KET,K017) = +0.80*K017*<ONIT> - PTERMS(:,24,17) = +0.80*TPK%K017(:)*PCONC(:,26) - -!PTERMS(ONIT,K017) = -K017*<ONIT> - PTERMS(:,26,17) = -TPK%K017(:)*PCONC(:,26) - -!PTERMS(O3,K018) = +K018*<O3P>*<O2> - PTERMS(:,1,18) = +TPK%K018(:)*TPK%O3P(:)*TPK%O2(:) - -!PTERMS(O3,K019) = -K019*<O3P>*<O3> - PTERMS(:,1,19) = -TPK%K019(:)*TPK%O3P(:)*PCONC(:,1) - -!PTERMS(OH,K022) = +K022*<O1D>*<H2O> - PTERMS(:,14,22) = +TPK%K022(:)*TPK%O1D(:)*TPK%H2O(:) - -!PTERMS(O3,K023) = -K023*<O3>*<OH> - PTERMS(:,1,23) = -TPK%K023(:)*PCONC(:,1)*PCONC(:,14) - -!PTERMS(OH,K023) = -K023*<O3>*<OH> - PTERMS(:,14,23) = -TPK%K023(:)*PCONC(:,1)*PCONC(:,14) - -!PTERMS(HO2,K023) = +K023*<O3>*<OH> - PTERMS(:,15,23) = +TPK%K023(:)*PCONC(:,1)*PCONC(:,14) - -!PTERMS(O3,K024) = -K024*<O3>*<HO2> - PTERMS(:,1,24) = -TPK%K024(:)*PCONC(:,1)*PCONC(:,15) - -!PTERMS(OH,K024) = +K024*<O3>*<HO2> - PTERMS(:,14,24) = +TPK%K024(:)*PCONC(:,1)*PCONC(:,15) - -!PTERMS(HO2,K024) = -K024*<O3>*<HO2> - PTERMS(:,15,24) = -TPK%K024(:)*PCONC(:,1)*PCONC(:,15) - -!PTERMS(OH,K025) = -K025*<OH>*<HO2> - PTERMS(:,14,25) = -TPK%K025(:)*PCONC(:,14)*PCONC(:,15) - -!PTERMS(HO2,K025) = -K025*<OH>*<HO2> - PTERMS(:,15,25) = -TPK%K025(:)*PCONC(:,14)*PCONC(:,15) - -!PTERMS(H2O2,K026) = -K026*<H2O2>*<OH> - PTERMS(:,2,26) = -TPK%K026(:)*PCONC(:,2)*PCONC(:,14) - -!PTERMS(OH,K026) = -K026*<H2O2>*<OH> - PTERMS(:,14,26) = -TPK%K026(:)*PCONC(:,2)*PCONC(:,14) - -!PTERMS(HO2,K026) = +K026*<H2O2>*<OH> - PTERMS(:,15,26) = +TPK%K026(:)*PCONC(:,2)*PCONC(:,14) - -!PTERMS(H2O2,K027) = +K027*<HO2>*<HO2> - PTERMS(:,2,27) = +TPK%K027(:)*PCONC(:,15)*PCONC(:,15) - -!PTERMS(HO2,K027) = -K027*<HO2>*<HO2> - PTERMS(:,15,27) = -TPK%K027(:)*PCONC(:,15)*PCONC(:,15) - -!PTERMS(H2O2,K028) = +K028*<HO2>*<HO2>*<H2O> - PTERMS(:,2,28) = +TPK%K028(:)*PCONC(:,15)*PCONC(:,15)*TPK%H2O(:) - -!PTERMS(HO2,K028) = -K028*<HO2>*<HO2>*<H2O> - PTERMS(:,15,28) = -TPK%K028(:)*PCONC(:,15)*PCONC(:,15)*TPK%H2O(:) - -!PTERMS(NO,K029) = -K029*<O3P>*<NO> - PTERMS(:,3,29) = -TPK%K029(:)*TPK%O3P(:)*PCONC(:,3) - -!PTERMS(NO2,K029) = +K029*<O3P>*<NO> - PTERMS(:,4,29) = +TPK%K029(:)*TPK%O3P(:)*PCONC(:,3) - -!PTERMS(NO,K030) = +K030*<O3P>*<NO2> - PTERMS(:,3,30) = +TPK%K030(:)*TPK%O3P(:)*PCONC(:,4) - -!PTERMS(NO2,K030) = -K030*<O3P>*<NO2> - PTERMS(:,4,30) = -TPK%K030(:)*TPK%O3P(:)*PCONC(:,4) - -!PTERMS(NO2,K031) = -K031*<O3P>*<NO2> - PTERMS(:,4,31) = -TPK%K031(:)*TPK%O3P(:)*PCONC(:,4) - -!PTERMS(NO3,K031) = +K031*<O3P>*<NO2> - PTERMS(:,5,31) = +TPK%K031(:)*TPK%O3P(:)*PCONC(:,4) - -!PTERMS(NO,K032) = -K032*<OH>*<NO> - PTERMS(:,3,32) = -TPK%K032(:)*PCONC(:,14)*PCONC(:,3) - -!PTERMS(HONO,K032) = +K032*<OH>*<NO> - PTERMS(:,7,32) = +TPK%K032(:)*PCONC(:,14)*PCONC(:,3) - -!PTERMS(OH,K032) = -K032*<OH>*<NO> - PTERMS(:,14,32) = -TPK%K032(:)*PCONC(:,14)*PCONC(:,3) - -!PTERMS(NO2,K033) = -K033*<OH>*<NO2> - PTERMS(:,4,33) = -TPK%K033(:)*PCONC(:,14)*PCONC(:,4) - -!PTERMS(HNO3,K033) = +K033*<OH>*<NO2> - PTERMS(:,8,33) = +TPK%K033(:)*PCONC(:,14)*PCONC(:,4) - -!PTERMS(OH,K033) = -K033*<OH>*<NO2> - PTERMS(:,14,33) = -TPK%K033(:)*PCONC(:,14)*PCONC(:,4) - -!PTERMS(NO2,K034) = +K034*<OH>*<NO3> - PTERMS(:,4,34) = +TPK%K034(:)*PCONC(:,14)*PCONC(:,5) - -!PTERMS(NO3,K034) = -K034*<OH>*<NO3> - PTERMS(:,5,34) = -TPK%K034(:)*PCONC(:,14)*PCONC(:,5) - -!PTERMS(OH,K034) = -K034*<OH>*<NO3> - PTERMS(:,14,34) = -TPK%K034(:)*PCONC(:,14)*PCONC(:,5) - -!PTERMS(HO2,K034) = +K034*<OH>*<NO3> - PTERMS(:,15,34) = +TPK%K034(:)*PCONC(:,14)*PCONC(:,5) - -!PTERMS(NO,K035) = -K035*<HO2>*<NO> - PTERMS(:,3,35) = -TPK%K035(:)*PCONC(:,15)*PCONC(:,3) - -!PTERMS(NO2,K035) = +K035*<HO2>*<NO> - PTERMS(:,4,35) = +TPK%K035(:)*PCONC(:,15)*PCONC(:,3) - -!PTERMS(OH,K035) = +K035*<HO2>*<NO> - PTERMS(:,14,35) = +TPK%K035(:)*PCONC(:,15)*PCONC(:,3) - -!PTERMS(HO2,K035) = -K035*<HO2>*<NO> - PTERMS(:,15,35) = -TPK%K035(:)*PCONC(:,15)*PCONC(:,3) - -!PTERMS(NO2,K036) = -K036*<HO2>*<NO2> - PTERMS(:,4,36) = -TPK%K036(:)*PCONC(:,15)*PCONC(:,4) - -!PTERMS(HNO4,K036) = +K036*<HO2>*<NO2> - PTERMS(:,9,36) = +TPK%K036(:)*PCONC(:,15)*PCONC(:,4) - -!PTERMS(HO2,K036) = -K036*<HO2>*<NO2> - PTERMS(:,15,36) = -TPK%K036(:)*PCONC(:,15)*PCONC(:,4) - -!PTERMS(NO2,K037) = +K037*<HNO4> - PTERMS(:,4,37) = +TPK%K037(:)*PCONC(:,9) - -!PTERMS(HNO4,K037) = -K037*<HNO4> - PTERMS(:,9,37) = -TPK%K037(:)*PCONC(:,9) - -!PTERMS(HO2,K037) = +K037*<HNO4> - PTERMS(:,15,37) = +TPK%K037(:)*PCONC(:,9) - -!PTERMS(NO2,K038) = +0.7*K038*<HO2>*<NO3> - PTERMS(:,4,38) = +0.7*TPK%K038(:)*PCONC(:,15)*PCONC(:,5) - -!PTERMS(NO3,K038) = -K038*<HO2>*<NO3> - PTERMS(:,5,38) = -TPK%K038(:)*PCONC(:,15)*PCONC(:,5) - -!PTERMS(HNO3,K038) = +0.3*K038*<HO2>*<NO3> - PTERMS(:,8,38) = +0.3*TPK%K038(:)*PCONC(:,15)*PCONC(:,5) - -!PTERMS(OH,K038) = +0.7*K038*<HO2>*<NO3> - PTERMS(:,14,38) = +0.7*TPK%K038(:)*PCONC(:,15)*PCONC(:,5) - -!PTERMS(HO2,K038) = -K038*<HO2>*<NO3> - PTERMS(:,15,38) = -TPK%K038(:)*PCONC(:,15)*PCONC(:,5) - -!PTERMS(NO2,K039) = +K039*<OH>*<HONO> - PTERMS(:,4,39) = +TPK%K039(:)*PCONC(:,14)*PCONC(:,7) - -!PTERMS(HONO,K039) = -K039*<OH>*<HONO> - PTERMS(:,7,39) = -TPK%K039(:)*PCONC(:,14)*PCONC(:,7) - -!PTERMS(OH,K039) = -K039*<OH>*<HONO> - PTERMS(:,14,39) = -TPK%K039(:)*PCONC(:,14)*PCONC(:,7) - -!PTERMS(NO3,K040) = +K040*<OH>*<HNO3> - PTERMS(:,5,40) = +TPK%K040(:)*PCONC(:,14)*PCONC(:,8) - -!PTERMS(HNO3,K040) = -K040*<OH>*<HNO3> - PTERMS(:,8,40) = -TPK%K040(:)*PCONC(:,14)*PCONC(:,8) - -!PTERMS(OH,K040) = -K040*<OH>*<HNO3> - PTERMS(:,14,40) = -TPK%K040(:)*PCONC(:,14)*PCONC(:,8) - -!PTERMS(NO2,K041) = +K041*<OH>*<HNO4> - PTERMS(:,4,41) = +TPK%K041(:)*PCONC(:,14)*PCONC(:,9) - -!PTERMS(HNO4,K041) = -K041*<OH>*<HNO4> - PTERMS(:,9,41) = -TPK%K041(:)*PCONC(:,14)*PCONC(:,9) - -!PTERMS(OH,K041) = -K041*<OH>*<HNO4> - PTERMS(:,14,41) = -TPK%K041(:)*PCONC(:,14)*PCONC(:,9) - -!PTERMS(O3,K042) = -K042*<O3>*<NO> - PTERMS(:,1,42) = -TPK%K042(:)*PCONC(:,1)*PCONC(:,3) - -!PTERMS(NO,K042) = -K042*<O3>*<NO> - PTERMS(:,3,42) = -TPK%K042(:)*PCONC(:,1)*PCONC(:,3) - -!PTERMS(NO2,K042) = +K042*<O3>*<NO> - PTERMS(:,4,42) = +TPK%K042(:)*PCONC(:,1)*PCONC(:,3) - -!PTERMS(O3,K043) = -K043*<O3>*<NO2> - PTERMS(:,1,43) = -TPK%K043(:)*PCONC(:,1)*PCONC(:,4) - -!PTERMS(NO2,K043) = -K043*<O3>*<NO2> - PTERMS(:,4,43) = -TPK%K043(:)*PCONC(:,1)*PCONC(:,4) - -!PTERMS(NO3,K043) = +K043*<O3>*<NO2> - PTERMS(:,5,43) = +TPK%K043(:)*PCONC(:,1)*PCONC(:,4) - -!PTERMS(NO,K044) = -K044*<NO>*<NO>*<O2> - PTERMS(:,3,44) = -TPK%K044(:)*PCONC(:,3)*PCONC(:,3)*TPK%O2(:) - -!PTERMS(NO2,K044) = +K044*<NO>*<NO>*<O2> - PTERMS(:,4,44) = +TPK%K044(:)*PCONC(:,3)*PCONC(:,3)*TPK%O2(:) - -!PTERMS(NO,K045) = -K045*<NO3>*<NO> - PTERMS(:,3,45) = -TPK%K045(:)*PCONC(:,5)*PCONC(:,3) - -!PTERMS(NO2,K045) = +K045*<NO3>*<NO> - PTERMS(:,4,45) = +TPK%K045(:)*PCONC(:,5)*PCONC(:,3) - -!PTERMS(NO3,K045) = -K045*<NO3>*<NO> - PTERMS(:,5,45) = -TPK%K045(:)*PCONC(:,5)*PCONC(:,3) - -!PTERMS(NO,K046) = +K046*<NO3>*<NO2> - PTERMS(:,3,46) = +TPK%K046(:)*PCONC(:,5)*PCONC(:,4) - -!PTERMS(NO2,K046) = -K046*<NO3>*<NO2> - PTERMS(:,4,46) = -TPK%K046(:)*PCONC(:,5)*PCONC(:,4) - -!PTERMS(NO3,K046) = -K046*<NO3>*<NO2> - PTERMS(:,5,46) = -TPK%K046(:)*PCONC(:,5)*PCONC(:,4) - -!PTERMS(NO2,K047) = -K047*<NO3>*<NO2> - PTERMS(:,4,47) = -TPK%K047(:)*PCONC(:,5)*PCONC(:,4) - -!PTERMS(NO3,K047) = -K047*<NO3>*<NO2> - PTERMS(:,5,47) = -TPK%K047(:)*PCONC(:,5)*PCONC(:,4) - -!PTERMS(N2O5,K047) = +K047*<NO3>*<NO2> - PTERMS(:,6,47) = +TPK%K047(:)*PCONC(:,5)*PCONC(:,4) - -!PTERMS(NO2,K048) = +K048*<N2O5> - PTERMS(:,4,48) = +TPK%K048(:)*PCONC(:,6) - -!PTERMS(NO3,K048) = +K048*<N2O5> - PTERMS(:,5,48) = +TPK%K048(:)*PCONC(:,6) - -!PTERMS(N2O5,K048) = -K048*<N2O5> - PTERMS(:,6,48) = -TPK%K048(:)*PCONC(:,6) - -!PTERMS(NO2,K049) = +K049*<NO3>*<NO3> - PTERMS(:,4,49) = +TPK%K049(:)*PCONC(:,5)*PCONC(:,5) - -!PTERMS(NO3,K049) = -K049*<NO3>*<NO3> - PTERMS(:,5,49) = -TPK%K049(:)*PCONC(:,5)*PCONC(:,5) - -!PTERMS(OH,K050) = -K050*<OH>*<H2> - PTERMS(:,14,50) = -TPK%K050(:)*PCONC(:,14)*TPK%H2(:) - -!PTERMS(HO2,K050) = +K050*<OH>*<H2> - PTERMS(:,15,50) = +TPK%K050(:)*PCONC(:,14)*TPK%H2(:) - -!PTERMS(SO2,K051) = -K051*<OH>*<SO2> - PTERMS(:,11,51) = -TPK%K051(:)*PCONC(:,14)*PCONC(:,11) - -!PTERMS(SULF,K051) = +K051*<OH>*<SO2> - PTERMS(:,12,51) = +TPK%K051(:)*PCONC(:,14)*PCONC(:,11) - -!PTERMS(OH,K051) = -K051*<OH>*<SO2> - PTERMS(:,14,51) = -TPK%K051(:)*PCONC(:,14)*PCONC(:,11) - -!PTERMS(HO2,K051) = +K051*<OH>*<SO2> - PTERMS(:,15,51) = +TPK%K051(:)*PCONC(:,14)*PCONC(:,11) - -!PTERMS(CO,K052) = -K052*<CO>*<OH> - PTERMS(:,13,52) = -TPK%K052(:)*PCONC(:,13)*PCONC(:,14) - -!PTERMS(OH,K052) = -K052*<CO>*<OH> - PTERMS(:,14,52) = -TPK%K052(:)*PCONC(:,13)*PCONC(:,14) - -!PTERMS(HO2,K052) = +K052*<CO>*<OH> - PTERMS(:,15,52) = +TPK%K052(:)*PCONC(:,13)*PCONC(:,14) - -!PTERMS(CO,K053) = +0.01*K053*<BIO>*<O3P> - PTERMS(:,13,53) = +0.01*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(OH,K053) = +0.02*K053*<BIO>*<O3P> - PTERMS(:,14,53) = +0.02*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(HO2,K053) = +0.28*K053*<BIO>*<O3P> - PTERMS(:,15,53) = +0.28*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(ALKE,K053) = +0.91868*K053*<BIO>*<O3P> - PTERMS(:,19,53) = +0.91868*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(BIO,K053) = -K053*<BIO>*<O3P> - PTERMS(:,20,53) = -TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(HCHO,K053) = +0.05*K053*<BIO>*<O3P> - PTERMS(:,22,53) = +0.05*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(CARBO,K053) = +0.13255*K053*<BIO>*<O3P> - PTERMS(:,25,53) = +0.13255*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(XO2,K053) = +0.15*K053*<BIO>*<O3P> - PTERMS(:,40,53) = +0.15*TPK%K053(:)*PCONC(:,20)*TPK%O3P(:) - -!PTERMS(ALD,K054) = +K054*<CARBO>*<O3P> - PTERMS(:,23,54) = +TPK%K054(:)*PCONC(:,25)*TPK%O3P(:) - -!PTERMS(CARBO,K054) = -K054*<CARBO>*<O3P> - PTERMS(:,25,54) = -TPK%K054(:)*PCONC(:,25)*TPK%O3P(:) - -!PTERMS(OH,K055) = -K055*<CH4>*<OH> - PTERMS(:,14,55) = -TPK%K055(:)*PCONC(:,16)*PCONC(:,14) - -!PTERMS(CH4,K055) = -K055*<CH4>*<OH> - PTERMS(:,16,55) = -TPK%K055(:)*PCONC(:,16)*PCONC(:,14) - -!PTERMS(MO2,K055) = +K055*<CH4>*<OH> - PTERMS(:,31,55) = +TPK%K055(:)*PCONC(:,16)*PCONC(:,14) - -!PTERMS(OH,K056) = -K056*<ETH>*<OH> - PTERMS(:,14,56) = -TPK%K056(:)*PCONC(:,17)*PCONC(:,14) - -!PTERMS(ETH,K056) = -K056*<ETH>*<OH> - PTERMS(:,17,56) = -TPK%K056(:)*PCONC(:,17)*PCONC(:,14) - -!PTERMS(ALKAP,K056) = +K056*<ETH>*<OH> - PTERMS(:,32,56) = +TPK%K056(:)*PCONC(:,17)*PCONC(:,14) - -!PTERMS(CO,K057) = +0.00878*K057*<ALKA>*<OH> - PTERMS(:,13,57) = +0.00878*TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(OH,K057) = -K057*<ALKA>*<OH> - PTERMS(:,14,57) = -TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(HO2,K057) = +0.12793*K057*<ALKA>*<OH> - PTERMS(:,15,57) = +0.12793*TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(ALKA,K057) = -K057*<ALKA>*<OH> - PTERMS(:,18,57) = -TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(HCHO,K057) = +0.00140*K057*<ALKA>*<OH> - PTERMS(:,22,57) = +0.00140*TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(ALD,K057) = +0.08173*K057*<ALKA>*<OH> - PTERMS(:,23,57) = +0.08173*TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(KET,K057) = +0.03498*K057*<ALKA>*<OH> - PTERMS(:,24,57) = +0.03498*TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(CARBO,K057) = +0.00835*K057*<ALKA>*<OH> - PTERMS(:,25,57) = +0.00835*TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(ALKAP,K057) = +0.87811*K057*<ALKA>*<OH> - PTERMS(:,32,57) = +0.87811*TPK%K057(:)*PCONC(:,18)*PCONC(:,14) - -!PTERMS(OH,K058) = -K058*<ALKE>*<OH> - PTERMS(:,14,58) = -TPK%K058(:)*PCONC(:,19)*PCONC(:,14) - -!PTERMS(ALKE,K058) = -K058*<ALKE>*<OH> - PTERMS(:,19,58) = -TPK%K058(:)*PCONC(:,19)*PCONC(:,14) - -!PTERMS(ALKEP,K058) = +1.02529*K058*<ALKE>*<OH> - PTERMS(:,33,58) = +1.02529*TPK%K058(:)*PCONC(:,19)*PCONC(:,14) - -!PTERMS(BIOP,K058) = +0.00000*K058*<ALKE>*<OH> - PTERMS(:,34,58) = +0.00000*TPK%K058(:)*PCONC(:,19)*PCONC(:,14) - -!PTERMS(OH,K059) = -K059*<BIO>*<OH> - PTERMS(:,14,59) = -TPK%K059(:)*PCONC(:,20)*PCONC(:,14) - -!PTERMS(BIO,K059) = -K059*<BIO>*<OH> - PTERMS(:,20,59) = -TPK%K059(:)*PCONC(:,20)*PCONC(:,14) - -!PTERMS(BIOP,K059) = +1.00000*K059*<BIO>*<OH> - PTERMS(:,34,59) = +1.00000*TPK%K059(:)*PCONC(:,20)*PCONC(:,14) - -!PTERMS(OH,K060) = -K060*<ARO>*<OH> - PTERMS(:,14,60) = -TPK%K060(:)*PCONC(:,21)*PCONC(:,14) - -!PTERMS(HO2,K060) = +0.10318*K060*<ARO>*<OH> - PTERMS(:,15,60) = +0.10318*TPK%K060(:)*PCONC(:,21)*PCONC(:,14) - -!PTERMS(ARO,K060) = -K060*<ARO>*<OH> - PTERMS(:,21,60) = -TPK%K060(:)*PCONC(:,21)*PCONC(:,14) - -!PTERMS(PHO,K060) = +0.00276*K060*<ARO>*<OH> - PTERMS(:,35,60) = +0.00276*TPK%K060(:)*PCONC(:,21)*PCONC(:,14) - -!PTERMS(ADD,K060) = +0.93968*K060*<ARO>*<OH> - PTERMS(:,36,60) = +0.93968*TPK%K060(:)*PCONC(:,21)*PCONC(:,14) - -!PTERMS(XO2,K060) = +0.10318*K060*<ARO>*<OH> - PTERMS(:,40,60) = +0.10318*TPK%K060(:)*PCONC(:,21)*PCONC(:,14) - -!PTERMS(CO,K061) = +K061*<HCHO>*<OH> - PTERMS(:,13,61) = +TPK%K061(:)*PCONC(:,22)*PCONC(:,14) - -!PTERMS(OH,K061) = -K061*<HCHO>*<OH> - PTERMS(:,14,61) = -TPK%K061(:)*PCONC(:,22)*PCONC(:,14) - -!PTERMS(HO2,K061) = +K061*<HCHO>*<OH> - PTERMS(:,15,61) = +TPK%K061(:)*PCONC(:,22)*PCONC(:,14) - -!PTERMS(HCHO,K061) = -K061*<HCHO>*<OH> - PTERMS(:,22,61) = -TPK%K061(:)*PCONC(:,22)*PCONC(:,14) - -!PTERMS(OH,K062) = -K062*<ALD>*<OH> - PTERMS(:,14,62) = -TPK%K062(:)*PCONC(:,23)*PCONC(:,14) - -!PTERMS(ALD,K062) = -K062*<ALD>*<OH> - PTERMS(:,23,62) = -TPK%K062(:)*PCONC(:,23)*PCONC(:,14) - -!PTERMS(CARBOP,K062) = +1.00000*K062*<ALD>*<OH> - PTERMS(:,38,62) = +1.00000*TPK%K062(:)*PCONC(:,23)*PCONC(:,14) - -!PTERMS(OH,K063) = -K063*<KET>*<OH> - PTERMS(:,14,63) = -TPK%K063(:)*PCONC(:,24)*PCONC(:,14) - -!PTERMS(KET,K063) = -K063*<KET>*<OH> - PTERMS(:,24,63) = -TPK%K063(:)*PCONC(:,24)*PCONC(:,14) - -!PTERMS(CARBOP,K063) = +1.00000*K063*<KET>*<OH> - PTERMS(:,38,63) = +1.00000*TPK%K063(:)*PCONC(:,24)*PCONC(:,14) - -!PTERMS(CO,K064) = +1.01732*K064*<CARBO>*<OH> - PTERMS(:,13,64) = +1.01732*TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(OH,K064) = -K064*<CARBO>*<OH> - PTERMS(:,14,64) = -TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(HO2,K064) = +0.51208*K064*<CARBO>*<OH> - PTERMS(:,15,64) = +0.51208*TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(HCHO,K064) = +0.00000*K064*<CARBO>*<OH> - PTERMS(:,22,64) = +0.00000*TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(ALD,K064) = +0.06253*K064*<CARBO>*<OH> - PTERMS(:,23,64) = +0.06253*TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(KET,K064) = +0.00853*K064*<CARBO>*<OH> - PTERMS(:,24,64) = +0.00853*TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(CARBO,K064) = -K064*<CARBO>*<OH> - PTERMS(:,25,64) = -TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(CARBOP,K064) = +0.51419*K064*<CARBO>*<OH> - PTERMS(:,38,64) = +0.51419*TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(XO2,K064) = +0.10162*K064*<CARBO>*<OH> - PTERMS(:,40,64) = +0.10162*TPK%K064(:)*PCONC(:,25)*PCONC(:,14) - -!PTERMS(OH,K065) = -K065*<OP1>*<OH> - PTERMS(:,14,65) = -TPK%K065(:)*PCONC(:,28)*PCONC(:,14) - -!PTERMS(HCHO,K065) = +0.35*K065*<OP1>*<OH> - PTERMS(:,22,65) = +0.35*TPK%K065(:)*PCONC(:,28)*PCONC(:,14) - -!PTERMS(OP1,K065) = -K065*<OP1>*<OH> - PTERMS(:,28,65) = -TPK%K065(:)*PCONC(:,28)*PCONC(:,14) - -!PTERMS(MO2,K065) = +0.65*K065*<OP1>*<OH> - PTERMS(:,31,65) = +0.65*TPK%K065(:)*PCONC(:,28)*PCONC(:,14) - -!PTERMS(OH,K066) = -K066*<OP2>*<OH> - PTERMS(:,14,66) = -TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(HO2,K066) = +0.02915*K066*<OP2>*<OH> - PTERMS(:,15,66) = +0.02915*TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(HCHO,K066) = +0.02915*K066*<OP2>*<OH> - PTERMS(:,22,66) = +0.02915*TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(ALD,K066) = +0.07335*K066*<OP2>*<OH> - PTERMS(:,23,66) = +0.07335*TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(KET,K066) = +0.37591*K066*<OP2>*<OH> - PTERMS(:,24,66) = +0.37591*TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(OP2,K066) = -K066*<OP2>*<OH> - PTERMS(:,29,66) = -TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(ALKAP,K066) = +0.40341*K066*<OP2>*<OH> - PTERMS(:,32,66) = +0.40341*TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(CARBOP,K066) = +0.05413*K066*<OP2>*<OH> - PTERMS(:,38,66) = +0.05413*TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(XO2,K066) = +0.09333*K066*<OP2>*<OH> - PTERMS(:,40,66) = +0.09333*TPK%K066(:)*PCONC(:,29)*PCONC(:,14) - -!PTERMS(NO3,K067) = +0.71893*K067*<PAN>*<OH> - PTERMS(:,5,67) = +0.71893*TPK%K067(:)*PCONC(:,27)*PCONC(:,14) - -!PTERMS(OH,K067) = -K067*<PAN>*<OH> - PTERMS(:,14,67) = -TPK%K067(:)*PCONC(:,27)*PCONC(:,14) - -!PTERMS(HO2,K067) = +0.28107*K067*<PAN>*<OH> - PTERMS(:,15,67) = +0.28107*TPK%K067(:)*PCONC(:,27)*PCONC(:,14) - -!PTERMS(HCHO,K067) = +0.57839*K067*<PAN>*<OH> - PTERMS(:,22,67) = +0.57839*TPK%K067(:)*PCONC(:,27)*PCONC(:,14) - -!PTERMS(CARBO,K067) = +0.21863*K067*<PAN>*<OH> - PTERMS(:,25,67) = +0.21863*TPK%K067(:)*PCONC(:,27)*PCONC(:,14) - -!PTERMS(PAN,K067) = -K067*<PAN>*<OH> - PTERMS(:,27,67) = -TPK%K067(:)*PCONC(:,27)*PCONC(:,14) - -!PTERMS(XO2,K067) = +K067*<PAN>*<OH> - PTERMS(:,40,67) = +TPK%K067(:)*PCONC(:,27)*PCONC(:,14) - -!PTERMS(NO2,K068) = +K068*<ONIT>*<OH> - PTERMS(:,4,68) = +TPK%K068(:)*PCONC(:,26)*PCONC(:,14) - -!PTERMS(OH,K068) = -K068*<ONIT>*<OH> - PTERMS(:,14,68) = -TPK%K068(:)*PCONC(:,26)*PCONC(:,14) - -!PTERMS(ONIT,K068) = -K068*<ONIT>*<OH> - PTERMS(:,26,68) = -TPK%K068(:)*PCONC(:,26)*PCONC(:,14) - -!PTERMS(ALKAP,K068) = +1.00000*K068*<ONIT>*<OH> - PTERMS(:,32,68) = +1.00000*TPK%K068(:)*PCONC(:,26)*PCONC(:,14) - -!PTERMS(NO3,K069) = -K069*<HCHO>*<NO3> - PTERMS(:,5,69) = -TPK%K069(:)*PCONC(:,22)*PCONC(:,5) - -!PTERMS(HNO3,K069) = +K069*<HCHO>*<NO3> - PTERMS(:,8,69) = +TPK%K069(:)*PCONC(:,22)*PCONC(:,5) - -!PTERMS(CO,K069) = +K069*<HCHO>*<NO3> - PTERMS(:,13,69) = +TPK%K069(:)*PCONC(:,22)*PCONC(:,5) - -!PTERMS(HO2,K069) = +K069*<HCHO>*<NO3> - PTERMS(:,15,69) = +TPK%K069(:)*PCONC(:,22)*PCONC(:,5) - -!PTERMS(HCHO,K069) = -K069*<HCHO>*<NO3> - PTERMS(:,22,69) = -TPK%K069(:)*PCONC(:,22)*PCONC(:,5) - -!PTERMS(NO3,K070) = -K070*<ALD>*<NO3> - PTERMS(:,5,70) = -TPK%K070(:)*PCONC(:,23)*PCONC(:,5) - -!PTERMS(HNO3,K070) = +K070*<ALD>*<NO3> - PTERMS(:,8,70) = +TPK%K070(:)*PCONC(:,23)*PCONC(:,5) - -!PTERMS(ALD,K070) = -K070*<ALD>*<NO3> - PTERMS(:,23,70) = -TPK%K070(:)*PCONC(:,23)*PCONC(:,5) - -!PTERMS(CARBOP,K070) = +1.00000*K070*<ALD>*<NO3> - PTERMS(:,38,70) = +1.00000*TPK%K070(:)*PCONC(:,23)*PCONC(:,5) - -!PTERMS(NO2,K071) = +0.10530*K071*<CARBO>*<NO3> - PTERMS(:,4,71) = +0.10530*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(NO3,K071) = -K071*<CARBO>*<NO3> - PTERMS(:,5,71) = -TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(HNO3,K071) = +0.91567*K071*<CARBO>*<NO3> - PTERMS(:,8,71) = +0.91567*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(CO,K071) = +1.33723*K071*<CARBO>*<NO3> - PTERMS(:,13,71) = +1.33723*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(HO2,K071) = +0.63217*K071*<CARBO>*<NO3> - PTERMS(:,15,71) = +0.63217*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(ALD,K071) = +0.05265*K071*<CARBO>*<NO3> - PTERMS(:,23,71) = +0.05265*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(KET,K071) = +0.00632*K071*<CARBO>*<NO3> - PTERMS(:,24,71) = +0.00632*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(CARBO,K071) = -K071*<CARBO>*<NO3> - PTERMS(:,25,71) = -TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(CARBOP,K071) = +0.38881*K071*<CARBO>*<NO3> - PTERMS(:,38,71) = +0.38881*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(OLN,K071) = +0.00000*K071*<CARBO>*<NO3> - PTERMS(:,39,71) = +0.00000*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(XO2,K071) = +0.10530*K071*<CARBO>*<NO3> - PTERMS(:,40,71) = +0.10530*TPK%K071(:)*PCONC(:,25)*PCONC(:,5) - -!PTERMS(NO3,K072) = -K072*<ARO>*<NO3> - PTERMS(:,5,72) = -TPK%K072(:)*PCONC(:,21)*PCONC(:,5) - -!PTERMS(HNO3,K072) = +K072*<ARO>*<NO3> - PTERMS(:,8,72) = +TPK%K072(:)*PCONC(:,21)*PCONC(:,5) - -!PTERMS(ARO,K072) = -K072*<ARO>*<NO3> - PTERMS(:,21,72) = -TPK%K072(:)*PCONC(:,21)*PCONC(:,5) - -!PTERMS(PHO,K072) = +K072*<ARO>*<NO3> - PTERMS(:,35,72) = +TPK%K072(:)*PCONC(:,21)*PCONC(:,5) - -!PTERMS(NO3,K073) = -K073*<ALKE>*<NO3> - PTERMS(:,5,73) = -TPK%K073(:)*PCONC(:,19)*PCONC(:,5) - -!PTERMS(ALKE,K073) = -K073*<ALKE>*<NO3> - PTERMS(:,19,73) = -TPK%K073(:)*PCONC(:,19)*PCONC(:,5) - -!PTERMS(CARBO,K073) = +0.00000*K073*<ALKE>*<NO3> - PTERMS(:,25,73) = +0.00000*TPK%K073(:)*PCONC(:,19)*PCONC(:,5) - -!PTERMS(OLN,K073) = +0.93768*K073*<ALKE>*<NO3> - PTERMS(:,39,73) = +0.93768*TPK%K073(:)*PCONC(:,19)*PCONC(:,5) - -!PTERMS(NO3,K074) = -K074*<BIO>*<NO3> - PTERMS(:,5,74) = -TPK%K074(:)*PCONC(:,20)*PCONC(:,5) - -!PTERMS(BIO,K074) = -K074*<BIO>*<NO3> - PTERMS(:,20,74) = -TPK%K074(:)*PCONC(:,20)*PCONC(:,5) - -!PTERMS(CARBO,K074) = +0.91741*K074*<BIO>*<NO3> - PTERMS(:,25,74) = +0.91741*TPK%K074(:)*PCONC(:,20)*PCONC(:,5) - -!PTERMS(OLN,K074) = +1.00000*K074*<BIO>*<NO3> - PTERMS(:,39,74) = +1.00000*TPK%K074(:)*PCONC(:,20)*PCONC(:,5) - -!PTERMS(NO2,K075) = +0.40*K075*<PAN>*<NO3> - PTERMS(:,4,75) = +0.40*TPK%K075(:)*PCONC(:,27)*PCONC(:,5) - -!PTERMS(NO3,K075) = -K075*<PAN>*<NO3> - PTERMS(:,5,75) = -TPK%K075(:)*PCONC(:,27)*PCONC(:,5) - -!PTERMS(HCHO,K075) = +0.40*K075*<PAN>*<NO3> - PTERMS(:,22,75) = +0.40*TPK%K075(:)*PCONC(:,27)*PCONC(:,5) - -!PTERMS(ONIT,K075) = +0.60*K075*<PAN>*<NO3> - PTERMS(:,26,75) = +0.60*TPK%K075(:)*PCONC(:,27)*PCONC(:,5) - -!PTERMS(PAN,K075) = -K075*<PAN>*<NO3> - PTERMS(:,27,75) = -TPK%K075(:)*PCONC(:,27)*PCONC(:,5) - -!PTERMS(XO2,K075) = +K075*<PAN>*<NO3> - PTERMS(:,40,75) = +TPK%K075(:)*PCONC(:,27)*PCONC(:,5) - -!PTERMS(O3,K076) = -K076*<ALKE>*<O3> - PTERMS(:,1,76) = -TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(H2O2,K076) = +0.01833*K076*<ALKE>*<O3> - PTERMS(:,2,76) = +0.01833*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(CO,K076) = +0.35120*K076*<ALKE>*<O3> - PTERMS(:,13,76) = +0.35120*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(OH,K076) = +0.39435*K076*<ALKE>*<O3> - PTERMS(:,14,76) = +0.39435*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(HO2,K076) = +0.23451*K076*<ALKE>*<O3> - PTERMS(:,15,76) = +0.23451*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(CH4,K076) = +0.04300*K076*<ALKE>*<O3> - PTERMS(:,16,76) = +0.04300*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(ETH,K076) = +0.03196*K076*<ALKE>*<O3> - PTERMS(:,17,76) = +0.03196*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(ALKE,K076) = -K076*<ALKE>*<O3> - PTERMS(:,19,76) = -TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(HCHO,K076) = +0.48290*K076*<ALKE>*<O3> - PTERMS(:,22,76) = +0.48290*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(ALD,K076) = +0.51468*K076*<ALKE>*<O3> - PTERMS(:,23,76) = +0.51468*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(KET,K076) = +0.07377*K076*<ALKE>*<O3> - PTERMS(:,24,76) = +0.07377*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(CARBO,K076) = +0.00000*K076*<ALKE>*<O3> - PTERMS(:,25,76) = +0.00000*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(ORA2,K076) = +0.08143*K076*<ALKE>*<O3> - PTERMS(:,30,76) = +0.08143*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(MO2,K076) = +0.13966*K076*<ALKE>*<O3> - PTERMS(:,31,76) = +0.13966*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(ALKAP,K076) = +0.09815*K076*<ALKE>*<O3> - PTERMS(:,32,76) = +0.09815*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(CARBOP,K076) = +0.05705*K076*<ALKE>*<O3> - PTERMS(:,38,76) = +0.05705*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(XO2,K076) = +0.00000*K076*<ALKE>*<O3> - PTERMS(:,40,76) = +0.00000*TPK%K076(:)*PCONC(:,19)*PCONC(:,1) - -!PTERMS(O3,K077) = -K077*<BIO>*<O3> - PTERMS(:,1,77) = -TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(H2O2,K077) = +0.00100*K077*<BIO>*<O3> - PTERMS(:,2,77) = +0.00100*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(CO,K077) = +0.36000*K077*<BIO>*<O3> - PTERMS(:,13,77) = +0.36000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(OH,K077) = +0.28000*K077*<BIO>*<O3> - PTERMS(:,14,77) = +0.28000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(HO2,K077) = +0.30000*K077*<BIO>*<O3> - PTERMS(:,15,77) = +0.30000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(ALKE,K077) = +0.37388*K077*<BIO>*<O3> - PTERMS(:,19,77) = +0.37388*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(BIO,K077) = -K077*<BIO>*<O3> - PTERMS(:,20,77) = -TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(HCHO,K077) = +0.90000*K077*<BIO>*<O3> - PTERMS(:,22,77) = +0.90000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(ALD,K077) = +0.00000*K077*<BIO>*<O3> - PTERMS(:,23,77) = +0.00000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(KET,K077) = +0.00000*K077*<BIO>*<O3> - PTERMS(:,24,77) = +0.00000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(CARBO,K077) = +0.39754*K077*<BIO>*<O3> - PTERMS(:,25,77) = +0.39754*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(ORA2,K077) = +0.00000*K077*<BIO>*<O3> - PTERMS(:,30,77) = +0.00000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(MO2,K077) = +0.03000*K077*<BIO>*<O3> - PTERMS(:,31,77) = +0.03000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(ALKAP,K077) = +0.00000*K077*<BIO>*<O3> - PTERMS(:,32,77) = +0.00000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(CARBOP,K077) = +0.17000*K077*<BIO>*<O3> - PTERMS(:,38,77) = +0.17000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(XO2,K077) = +0.13000*K077*<BIO>*<O3> - PTERMS(:,40,77) = +0.13000*TPK%K077(:)*PCONC(:,20)*PCONC(:,1) - -!PTERMS(O3,K078) = -K078*<CARBO>*<O3> - PTERMS(:,1,78) = -TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(CO,K078) = +0.64728*K078*<CARBO>*<O3> - PTERMS(:,13,78) = +0.64728*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(OH,K078) = +0.20595*K078*<CARBO>*<O3> - PTERMS(:,14,78) = +0.20595*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(HO2,K078) = +0.28441*K078*<CARBO>*<O3> - PTERMS(:,15,78) = +0.28441*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(HCHO,K078) = +0.00000*K078*<CARBO>*<O3> - PTERMS(:,22,78) = +0.00000*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(ALD,K078) = +0.15692*K078*<CARBO>*<O3> - PTERMS(:,23,78) = +0.15692*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(CARBO,K078) = -K078*<CARBO>*<O3> - PTERMS(:,25,78) = -TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(OP2,K078) = +0.10149*K078*<CARBO>*<O3> - PTERMS(:,29,78) = +0.10149*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(ORA2,K078) = +0.20595*K078*<CARBO>*<O3> - PTERMS(:,30,78) = +0.20595*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(CARBOP,K078) = +0.27460*K078*<CARBO>*<O3> - PTERMS(:,38,78) = +0.27460*TPK%K078(:)*PCONC(:,25)*PCONC(:,1) - -!PTERMS(O3,K079) = -K079*<PAN>*<O3> - PTERMS(:,1,79) = -TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(NO2,K079) = +0.70*K079*<PAN>*<O3> - PTERMS(:,4,79) = +0.70*TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(CO,K079) = +0.13*K079*<PAN>*<O3> - PTERMS(:,13,79) = +0.13*TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(OH,K079) = +0.036*K079*<PAN>*<O3> - PTERMS(:,14,79) = +0.036*TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(HO2,K079) = +0.08*K079*<PAN>*<O3> - PTERMS(:,15,79) = +0.08*TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(HCHO,K079) = +0.70*K079*<PAN>*<O3> - PTERMS(:,22,79) = +0.70*TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(PAN,K079) = -K079*<PAN>*<O3> - PTERMS(:,27,79) = -TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(CARBOP,K079) = +0.70000*K079*<PAN>*<O3> - PTERMS(:,38,79) = +0.70000*TPK%K079(:)*PCONC(:,27)*PCONC(:,1) - -!PTERMS(NO2,K080) = -K080*<PHO>*<NO2> - PTERMS(:,4,80) = -TPK%K080(:)*PCONC(:,35)*PCONC(:,4) - -!PTERMS(ARO,K080) = +0.10670*K080*<PHO>*<NO2> - PTERMS(:,21,80) = +0.10670*TPK%K080(:)*PCONC(:,35)*PCONC(:,4) - -!PTERMS(ONIT,K080) = +K080*<PHO>*<NO2> - PTERMS(:,26,80) = +TPK%K080(:)*PCONC(:,35)*PCONC(:,4) - -!PTERMS(PHO,K080) = -K080*<PHO>*<NO2> - PTERMS(:,35,80) = -TPK%K080(:)*PCONC(:,35)*PCONC(:,4) - -!PTERMS(HO2,K081) = -K081*<PHO>*<HO2> - PTERMS(:,15,81) = -TPK%K081(:)*PCONC(:,35)*PCONC(:,15) - -!PTERMS(ARO,K081) = +1.06698*K081*<PHO>*<HO2> - PTERMS(:,21,81) = +1.06698*TPK%K081(:)*PCONC(:,35)*PCONC(:,15) - -!PTERMS(PHO,K081) = -K081*<PHO>*<HO2> - PTERMS(:,35,81) = -TPK%K081(:)*PCONC(:,35)*PCONC(:,15) - -!PTERMS(NO2,K082) = -K082*<ADD>*<NO2> - PTERMS(:,4,82) = -TPK%K082(:)*PCONC(:,36)*PCONC(:,4) - -!PTERMS(HONO,K082) = +K082*<ADD>*<NO2> - PTERMS(:,7,82) = +TPK%K082(:)*PCONC(:,36)*PCONC(:,4) - -!PTERMS(ARO,K082) = +K082*<ADD>*<NO2> - PTERMS(:,21,82) = +TPK%K082(:)*PCONC(:,36)*PCONC(:,4) - -!PTERMS(ADD,K082) = -K082*<ADD>*<NO2> - PTERMS(:,36,82) = -TPK%K082(:)*PCONC(:,36)*PCONC(:,4) - -!PTERMS(HO2,K083) = +0.02*K083*<ADD>*<O2> - PTERMS(:,15,83) = +0.02*TPK%K083(:)*PCONC(:,36)*TPK%O2(:) - -!PTERMS(ARO,K083) = +0.02*K083*<ADD>*<O2> - PTERMS(:,21,83) = +0.02*TPK%K083(:)*PCONC(:,36)*TPK%O2(:) - -!PTERMS(ADD,K083) = -K083*<ADD>*<O2> - PTERMS(:,36,83) = -TPK%K083(:)*PCONC(:,36)*TPK%O2(:) - -!PTERMS(AROP,K083) = +0.98*K083*<ADD>*<O2> - PTERMS(:,37,83) = +0.98*TPK%K083(:)*PCONC(:,36)*TPK%O2(:) - -!PTERMS(O3,K084) = -K084*<ADD>*<O3> - PTERMS(:,1,84) = -TPK%K084(:)*PCONC(:,36)*PCONC(:,1) - -!PTERMS(OH,K084) = +K084*<ADD>*<O3> - PTERMS(:,14,84) = +TPK%K084(:)*PCONC(:,36)*PCONC(:,1) - -!PTERMS(ARO,K084) = +K084*<ADD>*<O3> - PTERMS(:,21,84) = +TPK%K084(:)*PCONC(:,36)*PCONC(:,1) - -!PTERMS(ADD,K084) = -K084*<ADD>*<O3> - PTERMS(:,36,84) = -TPK%K084(:)*PCONC(:,36)*PCONC(:,1) - -!PTERMS(NO2,K085) = -K085*<CARBOP>*<NO2> - PTERMS(:,4,85) = -TPK%K085(:)*PCONC(:,38)*PCONC(:,4) - -!PTERMS(PAN,K085) = +1.00000*K085*<CARBOP>*<NO2> - PTERMS(:,27,85) = +1.00000*TPK%K085(:)*PCONC(:,38)*PCONC(:,4) - -!PTERMS(CARBOP,K085) = -K085*<CARBOP>*<NO2> - PTERMS(:,38,85) = -TPK%K085(:)*PCONC(:,38)*PCONC(:,4) - -!PTERMS(NO2,K086) = +K086*<PAN> - PTERMS(:,4,86) = +TPK%K086(:)*PCONC(:,27) - -!PTERMS(PAN,K086) = -K086*<PAN> - PTERMS(:,27,86) = -TPK%K086(:)*PCONC(:,27) - -!PTERMS(CARBOP,K086) = +1.00000*K086*<PAN> - PTERMS(:,38,86) = +1.00000*TPK%K086(:)*PCONC(:,27) - -!PTERMS(NO,K087) = -K087*<MO2>*<NO> - PTERMS(:,3,87) = -TPK%K087(:)*PCONC(:,31)*PCONC(:,3) - -!PTERMS(NO2,K087) = +K087*<MO2>*<NO> - PTERMS(:,4,87) = +TPK%K087(:)*PCONC(:,31)*PCONC(:,3) - -!PTERMS(HO2,K087) = +K087*<MO2>*<NO> - PTERMS(:,15,87) = +TPK%K087(:)*PCONC(:,31)*PCONC(:,3) - -!PTERMS(HCHO,K087) = +K087*<MO2>*<NO> - PTERMS(:,22,87) = +TPK%K087(:)*PCONC(:,31)*PCONC(:,3) - -!PTERMS(MO2,K087) = -K087*<MO2>*<NO> - PTERMS(:,31,87) = -TPK%K087(:)*PCONC(:,31)*PCONC(:,3) - -!PTERMS(NO,K088) = -K088*<ALKAP>*<NO> - PTERMS(:,3,88) = -TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(NO2,K088) = +0.91541*K088*<ALKAP>*<NO> - PTERMS(:,4,88) = +0.91541*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(HO2,K088) = +0.74265*K088*<ALKAP>*<NO> - PTERMS(:,15,88) = +0.74265*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(HCHO,K088) = +0.03002*K088*<ALKAP>*<NO> - PTERMS(:,22,88) = +0.03002*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(ALD,K088) = +0.33144*K088*<ALKAP>*<NO> - PTERMS(:,23,88) = +0.33144*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(KET,K088) = +0.54531*K088*<ALKAP>*<NO> - PTERMS(:,24,88) = +0.54531*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(CARBO,K088) = +0.03407*K088*<ALKAP>*<NO> - PTERMS(:,25,88) = +0.03407*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(ONIT,K088) = +0.08459*K088*<ALKAP>*<NO> - PTERMS(:,26,88) = +0.08459*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(MO2,K088) = +0.09016*K088*<ALKAP>*<NO> - PTERMS(:,31,88) = +0.09016*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(ALKAP,K088) = -K088*<ALKAP>*<NO> - PTERMS(:,32,88) = -TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(XO2,K088) = +0.13007*K088*<ALKAP>*<NO> - PTERMS(:,40,88) = +0.13007*TPK%K088(:)*PCONC(:,32)*PCONC(:,3) - -!PTERMS(NO,K089) = -K089*<ALKEP>*<NO> - PTERMS(:,3,89) = -TPK%K089(:)*PCONC(:,33)*PCONC(:,3) - -!PTERMS(NO2,K089) = +K089*<ALKEP>*<NO> - PTERMS(:,4,89) = +TPK%K089(:)*PCONC(:,33)*PCONC(:,3) - -!PTERMS(HO2,K089) = +K089*<ALKEP>*<NO> - PTERMS(:,15,89) = +TPK%K089(:)*PCONC(:,33)*PCONC(:,3) - -!PTERMS(HCHO,K089) = +1.39870*K089*<ALKEP>*<NO> - PTERMS(:,22,89) = +1.39870*TPK%K089(:)*PCONC(:,33)*PCONC(:,3) - -!PTERMS(ALD,K089) = +0.42125*K089*<ALKEP>*<NO> - PTERMS(:,23,89) = +0.42125*TPK%K089(:)*PCONC(:,33)*PCONC(:,3) - -!PTERMS(KET,K089) = +0.05220*K089*<ALKEP>*<NO> - PTERMS(:,24,89) = +0.05220*TPK%K089(:)*PCONC(:,33)*PCONC(:,3) - -!PTERMS(ALKEP,K089) = -K089*<ALKEP>*<NO> - PTERMS(:,33,89) = -TPK%K089(:)*PCONC(:,33)*PCONC(:,3) - -!PTERMS(NO,K090) = -K090*<BIOP>*<NO> - PTERMS(:,3,90) = -TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(NO2,K090) = +0.84700*K090*<BIOP>*<NO> - PTERMS(:,4,90) = +0.84700*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(HO2,K090) = +0.84700*K090*<BIOP>*<NO> - PTERMS(:,15,90) = +0.84700*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(ALKE,K090) = +0.37815*K090*<BIOP>*<NO> - PTERMS(:,19,90) = +0.37815*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(HCHO,K090) = +0.60600*K090*<BIOP>*<NO> - PTERMS(:,22,90) = +0.60600*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(ALD,K090) = +0.00000*K090*<BIOP>*<NO> - PTERMS(:,23,90) = +0.00000*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(KET,K090) = +0.00000*K090*<BIOP>*<NO> - PTERMS(:,24,90) = +0.00000*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(CARBO,K090) = +0.45463*K090*<BIOP>*<NO> - PTERMS(:,25,90) = +0.45463*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(ONIT,K090) = +0.15300*K090*<BIOP>*<NO> - PTERMS(:,26,90) = +0.15300*TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(BIOP,K090) = -K090*<BIOP>*<NO> - PTERMS(:,34,90) = -TPK%K090(:)*PCONC(:,34)*PCONC(:,3) - -!PTERMS(NO,K091) = -K091*<AROP>*<NO> - PTERMS(:,3,91) = -TPK%K091(:)*PCONC(:,37)*PCONC(:,3) - -!PTERMS(NO2,K091) = +0.95115*K091*<AROP>*<NO> - PTERMS(:,4,91) = +0.95115*TPK%K091(:)*PCONC(:,37)*PCONC(:,3) - -!PTERMS(HO2,K091) = +0.95115*K091*<AROP>*<NO> - PTERMS(:,15,91) = +0.95115*TPK%K091(:)*PCONC(:,37)*PCONC(:,3) - -!PTERMS(CARBO,K091) = +2.06993*K091*<AROP>*<NO> - PTERMS(:,25,91) = +2.06993*TPK%K091(:)*PCONC(:,37)*PCONC(:,3) - -!PTERMS(ONIT,K091) = +0.04885*K091*<AROP>*<NO> - PTERMS(:,26,91) = +0.04885*TPK%K091(:)*PCONC(:,37)*PCONC(:,3) - -!PTERMS(AROP,K091) = -K091*<AROP>*<NO> - PTERMS(:,37,91) = -TPK%K091(:)*PCONC(:,37)*PCONC(:,3) - -!PTERMS(NO,K092) = -K092*<CARBOP>*<NO> - PTERMS(:,3,92) = -TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(NO2,K092) = +K092*<CARBOP>*<NO> - PTERMS(:,4,92) = +TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(HO2,K092) = +0.12334*K092*<CARBOP>*<NO> - PTERMS(:,15,92) = +0.12334*TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(HCHO,K092) = +0.05848*K092*<CARBOP>*<NO> - PTERMS(:,22,92) = +0.05848*TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(ALD,K092) = +0.07368*K092*<CARBOP>*<NO> - PTERMS(:,23,92) = +0.07368*TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(CARBO,K092) = +0.08670*K092*<CARBOP>*<NO> - PTERMS(:,25,92) = +0.08670*TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(MO2,K092) = +0.78134*K092*<CARBOP>*<NO> - PTERMS(:,31,92) = +0.78134*TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(CARBOP,K092) = -K092*<CARBOP>*<NO> - PTERMS(:,38,92) = -TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(XO2,K092) = +0.02563*K092*<CARBOP>*<NO> - PTERMS(:,40,92) = +0.02563*TPK%K092(:)*PCONC(:,38)*PCONC(:,3) - -!PTERMS(NO,K093) = -K093*<OLN>*<NO> - PTERMS(:,3,93) = -TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(NO2,K093) = +1.81599*K093*<OLN>*<NO> - PTERMS(:,4,93) = +1.81599*TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(HO2,K093) = +0.18401*K093*<OLN>*<NO> - PTERMS(:,15,93) = +0.18401*TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(HCHO,K093) = +0.23419*K093*<OLN>*<NO> - PTERMS(:,22,93) = +0.23419*TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(ALD,K093) = +1.01182*K093*<OLN>*<NO> - PTERMS(:,23,93) = +1.01182*TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(KET,K093) = +0.37862*K093*<OLN>*<NO> - PTERMS(:,24,93) = +0.37862*TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(ONIT,K093) = +0.18401*K093*<OLN>*<NO> - PTERMS(:,26,93) = +0.18401*TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(OLN,K093) = -K093*<OLN>*<NO> - PTERMS(:,39,93) = -TPK%K093(:)*PCONC(:,39)*PCONC(:,3) - -!PTERMS(HO2,K094) = -K094*<MO2>*<HO2> - PTERMS(:,15,94) = -TPK%K094(:)*PCONC(:,31)*PCONC(:,15) - -!PTERMS(OP1,K094) = +K094*<MO2>*<HO2> - PTERMS(:,28,94) = +TPK%K094(:)*PCONC(:,31)*PCONC(:,15) - -!PTERMS(MO2,K094) = -K094*<MO2>*<HO2> - PTERMS(:,31,94) = -TPK%K094(:)*PCONC(:,31)*PCONC(:,15) - -!PTERMS(HO2,K095) = -K095*<ALKAP>*<HO2> - PTERMS(:,15,95) = -TPK%K095(:)*PCONC(:,32)*PCONC(:,15) - -!PTERMS(OP2,K095) = +1.00524*K095*<ALKAP>*<HO2> - PTERMS(:,29,95) = +1.00524*TPK%K095(:)*PCONC(:,32)*PCONC(:,15) - -!PTERMS(ALKAP,K095) = -K095*<ALKAP>*<HO2> - PTERMS(:,32,95) = -TPK%K095(:)*PCONC(:,32)*PCONC(:,15) - -!PTERMS(HO2,K096) = -K096*<ALKEP>*<HO2> - PTERMS(:,15,96) = -TPK%K096(:)*PCONC(:,33)*PCONC(:,15) - -!PTERMS(OP2,K096) = +1.00524*K096*<ALKEP>*<HO2> - PTERMS(:,29,96) = +1.00524*TPK%K096(:)*PCONC(:,33)*PCONC(:,15) - -!PTERMS(ALKEP,K096) = -K096*<ALKEP>*<HO2> - PTERMS(:,33,96) = -TPK%K096(:)*PCONC(:,33)*PCONC(:,15) - -!PTERMS(HO2,K097) = -K097*<BIOP>*<HO2> - PTERMS(:,15,97) = -TPK%K097(:)*PCONC(:,34)*PCONC(:,15) - -!PTERMS(OP2,K097) = +1.00524*K097*<BIOP>*<HO2> - PTERMS(:,29,97) = +1.00524*TPK%K097(:)*PCONC(:,34)*PCONC(:,15) - -!PTERMS(BIOP,K097) = -K097*<BIOP>*<HO2> - PTERMS(:,34,97) = -TPK%K097(:)*PCONC(:,34)*PCONC(:,15) - -!PTERMS(HO2,K098) = -K098*<AROP>*<HO2> - PTERMS(:,15,98) = -TPK%K098(:)*PCONC(:,37)*PCONC(:,15) - -!PTERMS(OP2,K098) = +1.00524*K098*<AROP>*<HO2> - PTERMS(:,29,98) = +1.00524*TPK%K098(:)*PCONC(:,37)*PCONC(:,15) - -!PTERMS(AROP,K098) = -K098*<AROP>*<HO2> - PTERMS(:,37,98) = -TPK%K098(:)*PCONC(:,37)*PCONC(:,15) - -!PTERMS(O3,K099) = +0.17307*K099*<CARBOP>*<HO2> - PTERMS(:,1,99) = +0.17307*TPK%K099(:)*PCONC(:,38)*PCONC(:,15) - -!PTERMS(HO2,K099) = -K099*<CARBOP>*<HO2> - PTERMS(:,15,99) = -TPK%K099(:)*PCONC(:,38)*PCONC(:,15) - -!PTERMS(OP2,K099) = +0.80904*K099*<CARBOP>*<HO2> - PTERMS(:,29,99) = +0.80904*TPK%K099(:)*PCONC(:,38)*PCONC(:,15) - -!PTERMS(ORA2,K099) = +0.17307*K099*<CARBOP>*<HO2> - PTERMS(:,30,99) = +0.17307*TPK%K099(:)*PCONC(:,38)*PCONC(:,15) - -!PTERMS(CARBOP,K099) = -K099*<CARBOP>*<HO2> - PTERMS(:,38,99) = -TPK%K099(:)*PCONC(:,38)*PCONC(:,15) - -!PTERMS(HO2,K100) = -K100*<OLN>*<HO2> - PTERMS(:,15,100) = -TPK%K100(:)*PCONC(:,39)*PCONC(:,15) - -!PTERMS(ONIT,K100) = +K100*<OLN>*<HO2> - PTERMS(:,26,100) = +TPK%K100(:)*PCONC(:,39)*PCONC(:,15) - -!PTERMS(OLN,K100) = -K100*<OLN>*<HO2> - PTERMS(:,39,100) = -TPK%K100(:)*PCONC(:,39)*PCONC(:,15) - -!PTERMS(HO2,K101) = +0.66*K101*<MO2>*<MO2> - PTERMS(:,15,101) = +0.66*TPK%K101(:)*PCONC(:,31)*PCONC(:,31) - -!PTERMS(HCHO,K101) = +1.33*K101*<MO2>*<MO2> - PTERMS(:,22,101) = +1.33*TPK%K101(:)*PCONC(:,31)*PCONC(:,31) - -!PTERMS(MO2,K101) = -K101*<MO2>*<MO2> - PTERMS(:,31,101) = -TPK%K101(:)*PCONC(:,31)*PCONC(:,31) - -!PTERMS(HO2,K102) = +0.98383*K102*<ALKAP>*<MO2> - PTERMS(:,15,102) = +0.98383*TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(HCHO,K102) = +0.80556*K102*<ALKAP>*<MO2> - PTERMS(:,22,102) = +0.80556*TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(ALD,K102) = +0.56070*K102*<ALKAP>*<MO2> - PTERMS(:,23,102) = +0.56070*TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(KET,K102) = +0.09673*K102*<ALKAP>*<MO2> - PTERMS(:,24,102) = +0.09673*TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(CARBO,K102) = +0.07976*K102*<ALKAP>*<MO2> - PTERMS(:,25,102) = +0.07976*TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(MO2,K102) = -K102*<ALKAP>*<MO2> - PTERMS(:,31,102) = -TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(ALKAP,K102) = -K102*<ALKAP>*<MO2> - PTERMS(:,32,102) = -TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(XO2,K102) = +0.13370*K102*<ALKAP>*<MO2> - PTERMS(:,40,102) = +0.13370*TPK%K102(:)*PCONC(:,32)*PCONC(:,31) - -!PTERMS(HO2,K103) = +K103*<ALKEP>*<MO2> - PTERMS(:,15,103) = +TPK%K103(:)*PCONC(:,33)*PCONC(:,31) - -!PTERMS(HCHO,K103) = +1.42894*K103*<ALKEP>*<MO2> - PTERMS(:,22,103) = +1.42894*TPK%K103(:)*PCONC(:,33)*PCONC(:,31) - -!PTERMS(ALD,K103) = +0.46413*K103*<ALKEP>*<MO2> - PTERMS(:,23,103) = +0.46413*TPK%K103(:)*PCONC(:,33)*PCONC(:,31) - -!PTERMS(KET,K103) = +0.03814*K103*<ALKEP>*<MO2> - PTERMS(:,24,103) = +0.03814*TPK%K103(:)*PCONC(:,33)*PCONC(:,31) - -!PTERMS(MO2,K103) = -K103*<ALKEP>*<MO2> - PTERMS(:,31,103) = -TPK%K103(:)*PCONC(:,33)*PCONC(:,31) - -!PTERMS(ALKEP,K103) = -K103*<ALKEP>*<MO2> - PTERMS(:,33,103) = -TPK%K103(:)*PCONC(:,33)*PCONC(:,31) - -!PTERMS(HO2,K104) = +1.00000*K104*<BIOP>*<MO2> - PTERMS(:,15,104) = +1.00000*TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(ALKE,K104) = +0.48074*K104*<BIOP>*<MO2> - PTERMS(:,19,104) = +0.48074*TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(HCHO,K104) = +1.09000*K104*<BIOP>*<MO2> - PTERMS(:,22,104) = +1.09000*TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(ALD,K104) = +0.00000*K104*<BIOP>*<MO2> - PTERMS(:,23,104) = +0.00000*TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(KET,K104) = +0.00000*K104*<BIOP>*<MO2> - PTERMS(:,24,104) = +0.00000*TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(CARBO,K104) = +0.56064*K104*<BIOP>*<MO2> - PTERMS(:,25,104) = +0.56064*TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(MO2,K104) = -K104*<BIOP>*<MO2> - PTERMS(:,31,104) = -TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(BIOP,K104) = -K104*<BIOP>*<MO2> - PTERMS(:,34,104) = -TPK%K104(:)*PCONC(:,34)*PCONC(:,31) - -!PTERMS(HO2,K105) = +1.02767*K105*<AROP>*<MO2> - PTERMS(:,15,105) = +1.02767*TPK%K105(:)*PCONC(:,37)*PCONC(:,31) - -!PTERMS(HCHO,K105) = +K105*<AROP>*<MO2> - PTERMS(:,22,105) = +TPK%K105(:)*PCONC(:,37)*PCONC(:,31) - -!PTERMS(CARBO,K105) = +1.99461*K105*<AROP>*<MO2> - PTERMS(:,25,105) = +1.99461*TPK%K105(:)*PCONC(:,37)*PCONC(:,31) - -!PTERMS(MO2,K105) = -K105*<AROP>*<MO2> - PTERMS(:,31,105) = -TPK%K105(:)*PCONC(:,37)*PCONC(:,31) - -!PTERMS(AROP,K105) = -K105*<AROP>*<MO2> - PTERMS(:,37,105) = -TPK%K105(:)*PCONC(:,37)*PCONC(:,31) - -!PTERMS(HO2,K106) = +0.82998*K106*<CARBOP>*<MO2> - PTERMS(:,15,106) = +0.82998*TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(HCHO,K106) = +0.95723*K106*<CARBOP>*<MO2> - PTERMS(:,22,106) = +0.95723*TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(ALD,K106) = +0.08295*K106*<CARBOP>*<MO2> - PTERMS(:,23,106) = +0.08295*TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(CARBO,K106) = +0.15387*K106*<CARBOP>*<MO2> - PTERMS(:,25,106) = +0.15387*TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(ORA2,K106) = +0.13684*K106*<CARBOP>*<MO2> - PTERMS(:,30,106) = +0.13684*TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(MO2,K106) = -K106*<CARBOP>*<MO2> - PTERMS(:,31,106) = -TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(CARBOP,K106) = -K106*<CARBOP>*<MO2> - PTERMS(:,38,106) = -TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(XO2,K106) = +0.02212*K106*<CARBOP>*<MO2> - PTERMS(:,40,106) = +0.02212*TPK%K106(:)*PCONC(:,38)*PCONC(:,31) - -!PTERMS(NO2,K107) = +0.32440*K107*<OLN>*<MO2> - PTERMS(:,4,107) = +0.32440*TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(HO2,K107) = +0.67560*K107*<OLN>*<MO2> - PTERMS(:,15,107) = +0.67560*TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(HCHO,K107) = +0.88625*K107*<OLN>*<MO2> - PTERMS(:,22,107) = +0.88625*TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(ALD,K107) = +0.41524*K107*<OLN>*<MO2> - PTERMS(:,23,107) = +0.41524*TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(KET,K107) = +0.09667*K107*<OLN>*<MO2> - PTERMS(:,24,107) = +0.09667*TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(ONIT,K107) = +0.67560*K107*<OLN>*<MO2> - PTERMS(:,26,107) = +0.67560*TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(MO2,K107) = -K107*<OLN>*<MO2> - PTERMS(:,31,107) = -TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(OLN,K107) = -K107*<OLN>*<MO2> - PTERMS(:,39,107) = -TPK%K107(:)*PCONC(:,39)*PCONC(:,31) - -!PTERMS(HO2,K108) = +0.48079*K108*<ALKAP>*<CARBOP> - PTERMS(:,15,108) = +0.48079*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(HCHO,K108) = +0.07600*K108*<ALKAP>*<CARBOP> - PTERMS(:,22,108) = +0.07600*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(ALD,K108) = +0.71461*K108*<ALKAP>*<CARBOP> - PTERMS(:,23,108) = +0.71461*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(KET,K108) = +0.18819*K108*<ALKAP>*<CARBOP> - PTERMS(:,24,108) = +0.18819*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(CARBO,K108) = +0.06954*K108*<ALKAP>*<CARBOP> - PTERMS(:,25,108) = +0.06954*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(ORA2,K108) = +0.49810*K108*<ALKAP>*<CARBOP> - PTERMS(:,30,108) = +0.49810*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(MO2,K108) = +0.51480*K108*<ALKAP>*<CARBOP> - PTERMS(:,31,108) = +0.51480*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(ALKAP,K108) = -K108*<ALKAP>*<CARBOP> - PTERMS(:,32,108) = -TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(CARBOP,K108) = -K108*<ALKAP>*<CARBOP> - PTERMS(:,38,108) = -TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(XO2,K108) = +0.11306*K108*<ALKAP>*<CARBOP> - PTERMS(:,40,108) = +0.11306*TPK%K108(:)*PCONC(:,32)*PCONC(:,38) - -!PTERMS(HO2,K109) = +0.50078*K109*<ALKEP>*<CARBOP> - PTERMS(:,15,109) = +0.50078*TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(HCHO,K109) = +0.68192*K109*<ALKEP>*<CARBOP> - PTERMS(:,22,109) = +0.68192*TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(ALD,K109) = +0.68374*K109*<ALKEP>*<CARBOP> - PTERMS(:,23,109) = +0.68374*TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(KET,K109) = +0.06579*K109*<ALKEP>*<CARBOP> - PTERMS(:,24,109) = +0.06579*TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(ORA2,K109) = +0.49922*K109*<ALKEP>*<CARBOP> - PTERMS(:,30,109) = +0.49922*TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(MO2,K109) = +0.50078*K109*<ALKEP>*<CARBOP> - PTERMS(:,31,109) = +0.50078*TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(ALKEP,K109) = -K109*<ALKEP>*<CARBOP> - PTERMS(:,33,109) = -TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(CARBOP,K109) = -K109*<ALKEP>*<CARBOP> - PTERMS(:,38,109) = -TPK%K109(:)*PCONC(:,33)*PCONC(:,38) - -!PTERMS(HO2,K110) = +0.50600*K110*<BIOP>*<CARBOP> - PTERMS(:,15,110) = +0.50600*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(ALKE,K110) = +0.24463*K110*<BIOP>*<CARBOP> - PTERMS(:,19,110) = +0.24463*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(HCHO,K110) = +0.34000*K110*<BIOP>*<CARBOP> - PTERMS(:,22,110) = +0.34000*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(ALD,K110) = +0.00000*K110*<BIOP>*<CARBOP> - PTERMS(:,23,110) = +0.00000*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(KET,K110) = +0.00000*K110*<BIOP>*<CARBOP> - PTERMS(:,24,110) = +0.00000*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(CARBO,K110) = +0.78591*K110*<BIOP>*<CARBOP> - PTERMS(:,25,110) = +0.78591*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(ORA2,K110) = +0.49400*K110*<BIOP>*<CARBOP> - PTERMS(:,30,110) = +0.49400*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(MO2,K110) = +0.50600*K110*<BIOP>*<CARBOP> - PTERMS(:,31,110) = +0.50600*TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(BIOP,K110) = -K110*<BIOP>*<CARBOP> - PTERMS(:,34,110) = -TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(CARBOP,K110) = -K110*<BIOP>*<CARBOP> - PTERMS(:,38,110) = -TPK%K110(:)*PCONC(:,34)*PCONC(:,38) - -!PTERMS(HO2,K111) = +K111*<AROP>*<CARBOP> - PTERMS(:,15,111) = +TPK%K111(:)*PCONC(:,37)*PCONC(:,38) - -!PTERMS(CARBO,K111) = +1.99455*K111*<AROP>*<CARBOP> - PTERMS(:,25,111) = +1.99455*TPK%K111(:)*PCONC(:,37)*PCONC(:,38) - -!PTERMS(MO2,K111) = +K111*<AROP>*<CARBOP> - PTERMS(:,31,111) = +TPK%K111(:)*PCONC(:,37)*PCONC(:,38) - -!PTERMS(AROP,K111) = -K111*<AROP>*<CARBOP> - PTERMS(:,37,111) = -TPK%K111(:)*PCONC(:,37)*PCONC(:,38) - -!PTERMS(CARBOP,K111) = -K111*<AROP>*<CARBOP> - PTERMS(:,38,111) = -TPK%K111(:)*PCONC(:,37)*PCONC(:,38) - -!PTERMS(HO2,K112) = +0.07566*K112*<CARBOP>*<CARBOP> - PTERMS(:,15,112) = +0.07566*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(HCHO,K112) = +0.03432*K112*<CARBOP>*<CARBOP> - PTERMS(:,22,112) = +0.03432*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(ALD,K112) = +0.06969*K112*<CARBOP>*<CARBOP> - PTERMS(:,23,112) = +0.06969*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(KET,K112) = +0.02190*K112*<CARBOP>*<CARBOP> - PTERMS(:,24,112) = +0.02190*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(CARBO,K112) = +0.10777*K112*<CARBOP>*<CARBOP> - PTERMS(:,25,112) = +0.10777*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(ORA2,K112) = +0.09955*K112*<CARBOP>*<CARBOP> - PTERMS(:,30,112) = +0.09955*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(MO2,K112) = +1.66702*K112*<CARBOP>*<CARBOP> - PTERMS(:,31,112) = +1.66702*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(CARBOP,K112) = -K112*<CARBOP>*<CARBOP> - PTERMS(:,38,112) = -TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(XO2,K112) = +0.01593*K112*<CARBOP>*<CARBOP> - PTERMS(:,40,112) = +0.01593*TPK%K112(:)*PCONC(:,38)*PCONC(:,38) - -!PTERMS(NO2,K113) = +0.00000*K113*<OLN>*<CARBOP> - PTERMS(:,4,113) = +0.00000*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(HO2,K113) = +0.17599*K113*<OLN>*<CARBOP> - PTERMS(:,15,113) = +0.17599*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(HCHO,K113) = +0.13414*K113*<OLN>*<CARBOP> - PTERMS(:,22,113) = +0.13414*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(ALD,K113) = +0.42122*K113*<OLN>*<CARBOP> - PTERMS(:,23,113) = +0.42122*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(KET,K113) = +0.10822*K113*<OLN>*<CARBOP> - PTERMS(:,24,113) = +0.10822*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(ONIT,K113) = +0.66562*K113*<OLN>*<CARBOP> - PTERMS(:,26,113) = +0.66562*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(ORA2,K113) = +0.48963*K113*<OLN>*<CARBOP> - PTERMS(:,30,113) = +0.48963*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(MO2,K113) = +0.51037*K113*<OLN>*<CARBOP> - PTERMS(:,31,113) = +0.51037*TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(CARBOP,K113) = -K113*<OLN>*<CARBOP> - PTERMS(:,38,113) = -TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(OLN,K113) = -K113*<OLN>*<CARBOP> - PTERMS(:,39,113) = -TPK%K113(:)*PCONC(:,39)*PCONC(:,38) - -!PTERMS(HO2,K114) = +K114*<OLN>*<OLN> - PTERMS(:,15,114) = +TPK%K114(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(ONIT,K114) = +2.00*K114*<OLN>*<OLN> - PTERMS(:,26,114) = +2.00*TPK%K114(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(OLN,K114) = -K114*<OLN>*<OLN> - PTERMS(:,39,114) = -TPK%K114(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(NO2,K115) = +0.00000*K115*<OLN>*<OLN> - PTERMS(:,4,115) = +0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(HO2,K115) = +0.00000*K115*<OLN>*<OLN> - PTERMS(:,15,115) = +0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(HCHO,K115) = +0.00000*K115*<OLN>*<OLN> - PTERMS(:,22,115) = +0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(ALD,K115) = +0.00000*K115*<OLN>*<OLN> - PTERMS(:,23,115) = +0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(KET,K115) = +0.00000*K115*<OLN>*<OLN> - PTERMS(:,24,115) = +0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(ONIT,K115) = +0.00000*K115*<OLN>*<OLN> - PTERMS(:,26,115) = +0.00000*TPK%K115(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(OLN,K115) = -K115*<OLN>*<OLN> - PTERMS(:,39,115) = -TPK%K115(:)*PCONC(:,39)*PCONC(:,39) - -!PTERMS(NO2,K116) = +K116*<MO2>*<NO3> - PTERMS(:,4,116) = +TPK%K116(:)*PCONC(:,31)*PCONC(:,5) - -!PTERMS(NO3,K116) = -K116*<MO2>*<NO3> - PTERMS(:,5,116) = -TPK%K116(:)*PCONC(:,31)*PCONC(:,5) - -!PTERMS(HO2,K116) = +K116*<MO2>*<NO3> - PTERMS(:,15,116) = +TPK%K116(:)*PCONC(:,31)*PCONC(:,5) - -!PTERMS(HCHO,K116) = +K116*<MO2>*<NO3> - PTERMS(:,22,116) = +TPK%K116(:)*PCONC(:,31)*PCONC(:,5) - -!PTERMS(MO2,K116) = -K116*<MO2>*<NO3> - PTERMS(:,31,116) = -TPK%K116(:)*PCONC(:,31)*PCONC(:,5) - -!PTERMS(NO2,K117) = +K117*<ALKAP>*<NO3> - PTERMS(:,4,117) = +TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(NO3,K117) = -K117*<ALKAP>*<NO3> - PTERMS(:,5,117) = -TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(HO2,K117) = +0.81290*K117*<ALKAP>*<NO3> - PTERMS(:,15,117) = +0.81290*TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(HCHO,K117) = +0.03142*K117*<ALKAP>*<NO3> - PTERMS(:,22,117) = +0.03142*TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(ALD,K117) = +0.33743*K117*<ALKAP>*<NO3> - PTERMS(:,23,117) = +0.33743*TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(KET,K117) = +0.62978*K117*<ALKAP>*<NO3> - PTERMS(:,24,117) = +0.62978*TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(CARBO,K117) = +0.03531*K117*<ALKAP>*<NO3> - PTERMS(:,25,117) = +0.03531*TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(MO2,K117) = +0.09731*K117*<ALKAP>*<NO3> - PTERMS(:,31,117) = +0.09731*TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(ALKAP,K117) = -K117*<ALKAP>*<NO3> - PTERMS(:,32,117) = -TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(XO2,K117) = +0.16271*K117*<ALKAP>*<NO3> - PTERMS(:,40,117) = +0.16271*TPK%K117(:)*PCONC(:,32)*PCONC(:,5) - -!PTERMS(NO2,K118) = +K118*<ALKEP>*<NO3> - PTERMS(:,4,118) = +TPK%K118(:)*PCONC(:,33)*PCONC(:,5) - -!PTERMS(NO3,K118) = -K118*<ALKEP>*<NO3> - PTERMS(:,5,118) = -TPK%K118(:)*PCONC(:,33)*PCONC(:,5) - -!PTERMS(HO2,K118) = +K118*<ALKEP>*<NO3> - PTERMS(:,15,118) = +TPK%K118(:)*PCONC(:,33)*PCONC(:,5) - -!PTERMS(HCHO,K118) = +1.40909*K118*<ALKEP>*<NO3> - PTERMS(:,22,118) = +1.40909*TPK%K118(:)*PCONC(:,33)*PCONC(:,5) - -!PTERMS(ALD,K118) = +0.43039*K118*<ALKEP>*<NO3> - PTERMS(:,23,118) = +0.43039*TPK%K118(:)*PCONC(:,33)*PCONC(:,5) - -!PTERMS(KET,K118) = +0.02051*K118*<ALKEP>*<NO3> - PTERMS(:,24,118) = +0.02051*TPK%K118(:)*PCONC(:,33)*PCONC(:,5) - -!PTERMS(ALKEP,K118) = -K118*<ALKEP>*<NO3> - PTERMS(:,33,118) = -TPK%K118(:)*PCONC(:,33)*PCONC(:,5) - -!PTERMS(NO2,K119) = +K119*<BIOP>*<NO3> - PTERMS(:,4,119) = +TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(NO3,K119) = -K119*<BIOP>*<NO3> - PTERMS(:,5,119) = -TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(HO2,K119) = +K119*<BIOP>*<NO3> - PTERMS(:,15,119) = +TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(ALKE,K119) = +0.42729*K119*<BIOP>*<NO3> - PTERMS(:,19,119) = +0.42729*TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(HCHO,K119) = +0.68600*K119*<BIOP>*<NO3> - PTERMS(:,22,119) = +0.68600*TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(ALD,K119) = +0.00000*K119*<BIOP>*<NO3> - PTERMS(:,23,119) = +0.00000*TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(KET,K119) = +0.00000*K119*<BIOP>*<NO3> - PTERMS(:,24,119) = +0.00000*TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(CARBO,K119) = +0.61160*K119*<BIOP>*<NO3> - PTERMS(:,25,119) = +0.61160*TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(BIOP,K119) = -K119*<BIOP>*<NO3> - PTERMS(:,34,119) = -TPK%K119(:)*PCONC(:,34)*PCONC(:,5) - -!PTERMS(NO2,K120) = +K120*<AROP>*<NO3> - PTERMS(:,4,120) = +TPK%K120(:)*PCONC(:,37)*PCONC(:,5) - -!PTERMS(NO3,K120) = -K120*<AROP>*<NO3> - PTERMS(:,5,120) = -TPK%K120(:)*PCONC(:,37)*PCONC(:,5) - -!PTERMS(HO2,K120) = +K120*<AROP>*<NO3> - PTERMS(:,15,120) = +TPK%K120(:)*PCONC(:,37)*PCONC(:,5) - -!PTERMS(CARBO,K120) = +2.81904*K120*<AROP>*<NO3> - PTERMS(:,25,120) = +2.81904*TPK%K120(:)*PCONC(:,37)*PCONC(:,5) - -!PTERMS(AROP,K120) = -K120*<AROP>*<NO3> - PTERMS(:,37,120) = -TPK%K120(:)*PCONC(:,37)*PCONC(:,5) - -!PTERMS(NO2,K121) = +K121*<CARBOP>*<NO3> - PTERMS(:,4,121) = +TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(NO3,K121) = -K121*<CARBOP>*<NO3> - PTERMS(:,5,121) = -TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(HO2,K121) = +0.04915*K121*<CARBOP>*<NO3> - PTERMS(:,15,121) = +0.04915*TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(HCHO,K121) = +0.03175*K121*<CARBOP>*<NO3> - PTERMS(:,22,121) = +0.03175*TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(ALD,K121) = +0.02936*K121*<CARBOP>*<NO3> - PTERMS(:,23,121) = +0.02936*TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(CARBO,K121) = +0.03455*K121*<CARBOP>*<NO3> - PTERMS(:,25,121) = +0.03455*TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(MO2,K121) = +0.91910*K121*<CARBOP>*<NO3> - PTERMS(:,31,121) = +0.91910*TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(CARBOP,K121) = -K121*<CARBOP>*<NO3> - PTERMS(:,38,121) = -TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(XO2,K121) = +0.01021*K121*<CARBOP>*<NO3> - PTERMS(:,40,121) = +0.01021*TPK%K121(:)*PCONC(:,38)*PCONC(:,5) - -!PTERMS(NO2,K122) = +1.74072*K122*<OLN>*<NO3> - PTERMS(:,4,122) = +1.74072*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(NO3,K122) = -K122*<OLN>*<NO3> - PTERMS(:,5,122) = -TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(HO2,K122) = +0.25928*K122*<OLN>*<NO3> - PTERMS(:,15,122) = +0.25928*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(HCHO,K122) = +0.20740*K122*<OLN>*<NO3> - PTERMS(:,22,122) = +0.20740*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(ALD,K122) = +0.91850*K122*<OLN>*<NO3> - PTERMS(:,23,122) = +0.91850*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(KET,K122) = +0.34740*K122*<OLN>*<NO3> - PTERMS(:,24,122) = +0.34740*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(ONIT,K122) = +0.25928*K122*<OLN>*<NO3> - PTERMS(:,26,122) = +0.25928*TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(OLN,K122) = -K122*<OLN>*<NO3> - PTERMS(:,39,122) = -TPK%K122(:)*PCONC(:,39)*PCONC(:,5) - -!PTERMS(HO2,K123) = -K123*<XO2>*<HO2> - PTERMS(:,15,123) = -TPK%K123(:)*PCONC(:,40)*PCONC(:,15) - -!PTERMS(OP2,K123) = +1.00524*K123*<XO2>*<HO2> - PTERMS(:,29,123) = +1.00524*TPK%K123(:)*PCONC(:,40)*PCONC(:,15) - -!PTERMS(XO2,K123) = -K123*<XO2>*<HO2> - PTERMS(:,40,123) = -TPK%K123(:)*PCONC(:,40)*PCONC(:,15) - -!PTERMS(HO2,K124) = +K124*<XO2>*<MO2> - PTERMS(:,15,124) = +TPK%K124(:)*PCONC(:,40)*PCONC(:,31) - -!PTERMS(HCHO,K124) = +K124*<XO2>*<MO2> - PTERMS(:,22,124) = +TPK%K124(:)*PCONC(:,40)*PCONC(:,31) - -!PTERMS(MO2,K124) = -K124*<XO2>*<MO2> - PTERMS(:,31,124) = -TPK%K124(:)*PCONC(:,40)*PCONC(:,31) - -!PTERMS(XO2,K124) = -K124*<XO2>*<MO2> - PTERMS(:,40,124) = -TPK%K124(:)*PCONC(:,40)*PCONC(:,31) - -!PTERMS(MO2,K125) = +K125*<XO2>*<CARBOP> - PTERMS(:,31,125) = +TPK%K125(:)*PCONC(:,40)*PCONC(:,38) - -!PTERMS(CARBOP,K125) = -K125*<XO2>*<CARBOP> - PTERMS(:,38,125) = -TPK%K125(:)*PCONC(:,40)*PCONC(:,38) - -!PTERMS(XO2,K125) = -K125*<XO2>*<CARBOP> - PTERMS(:,40,125) = -TPK%K125(:)*PCONC(:,40)*PCONC(:,38) - -!PTERMS(XO2,K126) = -K126*<XO2>*<XO2> - PTERMS(:,40,126) = -TPK%K126(:)*PCONC(:,40)*PCONC(:,40) - -!PTERMS(NO,K127) = -K127*<XO2>*<NO> - PTERMS(:,3,127) = -TPK%K127(:)*PCONC(:,40)*PCONC(:,3) - -!PTERMS(NO2,K127) = +K127*<XO2>*<NO> - PTERMS(:,4,127) = +TPK%K127(:)*PCONC(:,40)*PCONC(:,3) - -!PTERMS(XO2,K127) = -K127*<XO2>*<NO> - PTERMS(:,40,127) = -TPK%K127(:)*PCONC(:,40)*PCONC(:,3) - -!PTERMS(NO2,K128) = +K128*<XO2>*<NO3> - PTERMS(:,4,128) = +TPK%K128(:)*PCONC(:,40)*PCONC(:,5) - -!PTERMS(NO3,K128) = -K128*<XO2>*<NO3> - PTERMS(:,5,128) = -TPK%K128(:)*PCONC(:,40)*PCONC(:,5) - -!PTERMS(XO2,K128) = -K128*<XO2>*<NO3> - PTERMS(:,40,128) = -TPK%K128(:)*PCONC(:,40)*PCONC(:,5) - -IF (LHOOK) CALL DR_HOOK('CH_TERMS',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE CH_TERMS diff --git a/src/arome/chem/internals/ch_update_jvalues.F90 b/src/arome/chem/internals/ch_update_jvalues.F90 deleted file mode 100644 index 166894799b399b6435579b9c045ba0521a347fb2..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_update_jvalues.F90 +++ /dev/null @@ -1,256 +0,0 @@ -! ######spl - SUBROUTINE CH_UPDATE_JVALUES(KLUOUT, PZENITH, PRT, & - PALB_UV, PZS, PZZ, PLAT0, PLON0, & - KLON, KLAT, KLEV, KRR, & - KDAY, KMONTH, KYEAR, PTIME, & - OCH_TUV_ONLINE, HCH_TUV_CLOUDS, & - PALBNEW, PDOBNEW, PRHODREF, PJVALUES, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ##################################################### -!! -!!*** *CH_UPDATE_JVALUES* updates photolysis rates -!! -!! PURPOSE -!! ------- -!! Update photolysis rates in MODD_CH_JVALUES_n for later extraction -!! by CH_JVALUES -!! -!!** METHOD -!! ------ -!! It converts some input information into the format expected by the -!! FORTRAN90 subroutine tuvmain, which is then called in order to -!! calculate the photolysis rates. -!! -!! -!! REFERENCE -!! --------- -!! MesoNH documentation -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 05/03/97 -!! 05/03/05 P. Tulet (CNRM/GMEI) Update for Arome -!! -!!------------------------------------------------------------------------------ -!! -!! EXTERNAL -!! -------- -USE MODI_CH_INTERP_JVALUES -USE MODI_CH_JVALUES_CLOUDS -USE MODE_MODELN_HANDLER -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CST -USE MODD_PARAMETERS -USE MODD_CH_INIT_JVALUES, ONLY : JPJVMAX -USE MODD_CONF -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE - -INTEGER, INTENT(IN) :: KLON !NPROMA under CPG -INTEGER, INTENT(IN) :: KLAT !NPROMA under CPG -INTEGER, INTENT(IN) :: KLEV !Number of vertical levels -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -REAL, INTENT(IN) :: PLAT0, PLON0 -REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALB_UV, PZS -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PRHODREF -REAL, DIMENSION(KLON,KLAT,KLEV,KRR), INTENT(IN) :: PRT -INTEGER, INTENT(IN) :: KDAY, KMONTH, KYEAR ! current date -REAL, INTENT(IN) :: PTIME ! current time (s) -INTEGER, INTENT(IN) :: KLUOUT -LOGICAL, INTENT(IN) :: OCH_TUV_ONLINE ! online/lookup table -CHARACTER*4, INTENT(IN) :: HCH_TUV_CLOUDS ! clouds and radiation -REAL, INTENT(IN) :: PALBNEW ! surface albedo -REAL, INTENT(IN) :: PDOBNEW ! ozone column dobson -REAL,DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES ! Tuv coefficients -INTEGER, INTENT(IN) :: KVERB ! verbosity level -INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim -!! -!! LOCAL VARIABLES -!! --------------- -INTEGER :: JVLEVEL ! loop counter -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSZA -LOGICAL, SAVE :: GSFIRSTCALL = .TRUE. ! flag for initialization on first call -INTEGER :: IDATE ! date in format yymmdd -INTEGER :: JJ ! loop counter -! -REAL,DIMENSION(:,:), ALLOCATABLE :: ZJOUT1D ! dummy parameter -!REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZJOUT3D ! dummy parameter -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZFCLD ! cloud correction -CHARACTER*40, DIMENSION(JPJVMAX) :: YJLABELOUT ! names of J-reacts. -!! -REAL, DIMENSION(:), ALLOCATABLE :: ZAZ -REAL, DIMENSION(:,:,:), ALLOCATABLE :: ZAZ3D, ZLWC3D -INTEGER :: IIU,IJU,IKU,IKB,IKE, JPV -REAL :: ZALBNEW, ZDOBNEW -REAL, DIMENSION(:), ALLOCATABLE :: ZLWC -INTEGER :: IMI -! -!------------------------------------------------------------------------------ -!! -!! EXECUTABLE STATEMENTS -!! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_UPDATE_JVALUES',0,ZHOOK_HANDLE) -IF (CPROGRAM == "MOD0D") THEN - -IIU=1 -IJU=1 -IKB=1 -IKE=1 -IKU=1 -JPV=0 - -ELSE - -IIU=NIU -IJU=NJU -IKU=SIZE(PZZ,3) -IKB=1+JPVEXT -IKE=IKU-JPVEXT -JPV=JPVEXT - -END IF -! -IF (.NOT.ALLOCATED(ZSZA)) ALLOCATE(ZSZA(IIU,IJU)) - -IF (OCH_TUV_ONLINE) THEN -! - IF ((.NOT.L1D).OR.(CPROGRAM .EQ. "AROME")) THEN - WRITE(KLUOUT,*)"ERROR in CH_UPDATE_JVALUES: " - WRITE(KLUOUT,*)"you want to use ON-LINE calculation of photolysis rates " - WRITE(KLUOUT,*)"but you are not runnning in 1D " - WRITE(KLUOUT,*)"Program is STOPPED now " - STOP - ENDIF - -!* 1. TUV 3D ON LINE -! ------------------- - IDATE = 10000*MOD(KYEAR,100) + 100*KMONTH + KDAY -! - ZALBNEW = PALBNEW - ZDOBNEW = PDOBNEW -! - IF (.NOT.ALLOCATED(ZAZ)) THEN - ALLOCATE(ZAZ(IKE-IKB+1)) - ENDIF - IF (.NOT.ALLOCATED(ZLWC)) THEN - ALLOCATE(ZLWC(IKE-IKB+1)) - ENDIF - ZAZ(1:IKE-IKB+1) = PZZ(1+JPV,1+JPV,1:IKE-IKB+1) -! - IF (HCH_TUV_CLOUDS .EQ. "NONE") THEN - ZLWC(1:IKE-IKB+1) = 0.0 - ELSE - ZLWC(1:IKE-IKB+1) = PRT(1+JPV,1+JPV,1:IKE-IKB+1,2) * PRHODREF(1+JPV,1+JPV,1:IKE-IKB+1) - END IF -! - JVLEVEL = IKE-IKB+1 -! - ALLOCATE(ZJOUT1D(JVLEVEL,JPJVMAX)) -! - ZSZA(:,:) = PZENITH(:,:) * 180. / XPI - - CALL TUVMAIN(ZSZA, IDATE, ZALBNEW, ZDOBNEW, & - JVLEVEL, ZAZ, ZLWC, & - JPJVMAX, ZJOUT1D, YJLABELOUT ) -! - PJVALUES(:,:,:,:) = SPREAD(SPREAD(ZJOUT1D(1:JVLEVEL,1:JPJVMAX),1,IIU),2,IJU) - IF (KVERB >= 6) THEN - WRITE(KLUOUT,*)'PJVALUES',SIZE(PJVALUES,1),SIZE(PJVALUES,2),SIZE(PJVALUES,3),SIZE(PJVALUES,4) - WRITE(KLUOUT,*)'MAX',MAXVAL(PJVALUES), MAXLOC(PJVALUES) - WRITE(KLUOUT,*)'MIN',MINVAL(PJVALUES), MINLOC(PJVALUES) - ENDIF -! - IF ((GSFIRSTCALL).AND.(KVERB >= 6)) THEN -! - WRITE(KLUOUT,*) "CH_UPDATE_JVALUES information on first call" - WRITE(KLUOUT,*) "-------------------------------------------" - WRITE(KLUOUT,*) "You are using ON LINE computation of photolysis rates " - WRITE(KLUOUT,*) "with CH_TUV_CLOUDS ",HCH_TUV_CLOUDS - WRITE(KLUOUT,*) "-------------------------------------------" - WRITE(KLUOUT,*) "J-Values at the bottom, at the center of the domain: Z = " , ZAZ(1) - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, YJLABELOUT(JJ), PJVALUES(IIU/2+1,IJU/2+1,1,JJ) - ENDDO - WRITE(KLUOUT,*) "J-Values at the top, at the center of the domain: Z = ", ZAZ(JVLEVEL) - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, YJLABELOUT(JJ), PJVALUES(IIU/2+1,IJU/2+1,JVLEVEL,JJ) - ENDDO - WRITE(KLUOUT,*) "-------------------------------------------" -! - ENDIF - IF (ALLOCATED(ZAZ)) THEN - DEALLOCATE(ZAZ) - ENDIF - IF (ALLOCATED(ZLWC)) THEN - DEALLOCATE(ZLWC) - ENDIF -! - -ELSE -!* 2. TUV 3D OFF LINE -! ------------------- -! -! - CALL CH_INTERP_JVALUES(PJVALUES,PZZ, PZS, PALB_UV, PZENITH,& - KLON, KLAT, KLEV, & - NIB,NIE,NJB,NJE,NIU,NJU,KVERB, KLUOUT) - IF (KVERB >= 6) THEN - WRITE(KLUOUT,*) "-------------------------------------------" - WRITE(KLUOUT,*) "J-Values at the bottom, at the center of the domain" - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, PJVALUES(IIU/2+1,IJU/2+1,IKB,JJ) - ENDDO - WRITE(KLUOUT,*) "J-Values at the top, at the center of the domain" - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, PJVALUES(IIU/2+1,IJU/2+1,IKE-IKB+1,JJ) - ENDDO - WRITE(KLUOUT,*) "-------------------------------------------" - ENDIF -! - IF (HCH_TUV_CLOUDS .EQ. "CHAN") THEN -! - IF (.NOT.ALLOCATED(ZAZ3D)) ALLOCATE(ZAZ3D(1:IIU,1:IJU,1:IKU)) - IF (.NOT.ALLOCATED(ZLWC3D)) ALLOCATE(ZLWC3D(1:IIU,1:IJU,1:IKU)) - IF (.NOT.ALLOCATED(ZFCLD)) ALLOCATE(ZFCLD(1:IIU,1:IJU,1:IKU,JPJVMAX)) -! - ZAZ3D(:,:,:) = PZZ(:,:,:) - IF (SIZE(PRT,4) == 2 ) THEN - ZLWC3D(:,:,:) = PRT(:,:,:,2) * PRHODREF(:,:,:) - ELSE - ZLWC3D(:,:,:) = 0. - END IF -! - ZFCLD(:,:,:,:) = 1. -! - CALL CH_JVALUES_CLOUDS(PZENITH, JPJVMAX, IKU, ZAZ3D, ZLWC3D, ZFCLD) -! - PJVALUES(:,:,:,:) = PJVALUES(:,:,:,:) * ZFCLD(:,:,:,:) - IF (KVERB >= 6) WRITE(KLUOUT,*)" J VALUES CLOUD CORR MAX/MIN", MAXVAL(ZFCLD), MINVAL(ZFCLD) -! - ENDIF -! - IF (ALLOCATED(ZAZ3D)) THEN - DEALLOCATE(ZAZ3D) - ENDIF - IF (ALLOCATED(ZLWC3D)) THEN - DEALLOCATE(ZLWC3D) - ENDIF -! -END IF -GSFIRSTCALL = .FALSE. -! -IF (LHOOK) CALL DR_HOOK('CH_UPDATE_JVALUES',1,ZHOOK_HANDLE) -END SUBROUTINE CH_UPDATE_JVALUES diff --git a/src/arome/chem/internals/ch_update_jvalues_n.F90 b/src/arome/chem/internals/ch_update_jvalues_n.F90 deleted file mode 100644 index 492c5f39adc9703c0ef7062a298dae3b0bb882df..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_update_jvalues_n.F90 +++ /dev/null @@ -1,252 +0,0 @@ -! ######spl - SUBROUTINE CH_UPDATE_JVALUES_n(KLUOUT, PZENITH, PRT, & - PALB_UV, PZS, PZZ, PLAT0, PLON0, & - KLON, KLAT, KLEV, KRR, & - KDAY, KMONTH, KYEAR, PTIME, & - OCH_TUV_ONLINE, HCH_TUV_CLOUDS, & - PALBNEW, PDOBNEW, PRHODREF, PJVALUES, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################################### -!! -!!*** *CH_UPDATE_JVALUES_n* updates photolysis rates -!! -!! PURPOSE -!! ------- -!! Update photolysis rates in MODD_CH_JVALUES_n for later extraction -!! by CH_JVALUES -!! -!!** METHOD -!! ------ -!! It converts some input information into the format expected by the -!! FORTRAN90 subroutine tuvmain, which is then called in order to -!! calculate the photolysis rates. -!! -!! -!! REFERENCE -!! --------- -!! MesoNH documentation -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 05/03/97 -!! 05/03/05 P. Tulet (CNRM/GMEI) Update for Arome -!! -!!------------------------------------------------------------------------------ -!! -!! EXTERNAL -!! -------- -USE MODI_CH_INTERP_JVALUES_n -USE MODI_CH_JVALUES_CLOUDS_n -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CST -USE MODD_PARAMETERS -USE MODD_CH_INIT_JVALUES, ONLY : JPJVMAX -USE MODD_CONF -!! -!! EXPLICIT ARGUMENTS -!! ------------------ -IMPLICIT NONE - -INTEGER, INTENT(IN) :: KLON !NPROMA under CPG -INTEGER, INTENT(IN) :: KLAT !NPROMA under CPG -INTEGER, INTENT(IN) :: KLEV !Number of vertical levels -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -REAL, INTENT(IN) :: PLAT0, PLON0 -REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALB_UV, PZS -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PRHODREF -REAL, DIMENSION(KLON,KLAT,KLEV,KRR), INTENT(IN) :: PRT -INTEGER, INTENT(IN) :: KDAY, KMONTH, KYEAR ! current date -REAL, INTENT(IN) :: PTIME ! current time (s) -INTEGER, INTENT(IN) :: KLUOUT -LOGICAL, INTENT(IN) :: OCH_TUV_ONLINE ! online/lookup table -CHARACTER*4, INTENT(IN) :: HCH_TUV_CLOUDS ! clouds and radiation -REAL, INTENT(IN) :: PALBNEW ! surface albedo -REAL, INTENT(IN) :: PDOBNEW ! ozone column dobson -REAL,DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES ! Tuv coefficients -INTEGER, INTENT(IN) :: KVERB ! verbosity level -INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim -!! -!! LOCAL VARIABLES -!! --------------- -INTEGER :: JVLEVEL ! loop counter -REAL, DIMENSION(:,:), ALLOCATABLE :: ZSZA -LOGICAL, SAVE :: GSFIRSTCALL = .TRUE. ! flag for initialization on first call -INTEGER :: IDATE ! date in format yymmdd -INTEGER :: JJ ! loop counter -! -REAL,DIMENSION(:,:), ALLOCATABLE :: ZJOUT1D ! dummy parameter -!REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZJOUT3D ! dummy parameter -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZFCLD ! cloud correction -CHARACTER*40, DIMENSION(JPJVMAX) :: YJLABELOUT ! names of J-reacts. -!! -REAL, DIMENSION(:), ALLOCATABLE :: ZAZ -REAL, DIMENSION(:,:,:), ALLOCATABLE :: ZAZ3D, ZLWC3D -INTEGER :: IIU,IJU,IKU,IKB,IKE, JPV -REAL :: ZALBNEW, ZDOBNEW -REAL, DIMENSION(:), ALLOCATABLE :: ZLWC - - -! -!------------------------------------------------------------------------------ -!! -!! EXECUTABLE STATEMENTS -!! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_UPDATE_JVALUES_N',0,ZHOOK_HANDLE) -IF (CPROGRAM == "MOD0D") THEN - -IIU=1 -IJU=1 -IKB=1 -IKE=1 -IKU=1 -JPV=0 - -ELSE - -IIU=NIU -IJU=NJU -IKU=SIZE(PZZ,3) -IKB=1+JPVEXT -IKE=IKU-JPVEXT -JPV=JPVEXT - -END IF -! -IF (.NOT.ALLOCATED(ZSZA)) ALLOCATE(ZSZA(IIU,IJU)) -! -IF (OCH_TUV_ONLINE) THEN -! - IF ((.NOT.L1D).OR.(CPROGRAM .EQ. "AROME")) THEN - WRITE(KLUOUT,*)"ERROR in CH_UPDATE_JVALUES_n: " - WRITE(KLUOUT,*)"you want to use ON-LINE calculation of photolysis rates " - WRITE(KLUOUT,*)"but you are not runnning in 1D " - WRITE(KLUOUT,*)"Program is STOPPED now " - STOP - ENDIF - -!* 1. TUV 3D ON LINE -! ------------------- - IDATE = 10000*MOD(KYEAR,100) + 100*KMONTH + KDAY -! - ZALBNEW = PALBNEW - ZDOBNEW = PDOBNEW -! - IF (.NOT.ALLOCATED(ZAZ)) THEN - ALLOCATE(ZAZ(IKE-IKB+1)) - ENDIF - IF (.NOT.ALLOCATED(ZLWC)) THEN - ALLOCATE(ZLWC(IKE-IKB+1)) - ENDIF - ZAZ(1:IKE-IKB+1) = PZZ(1+JPV,1+JPV,1:IKE-IKB+1) -! - IF (HCH_TUV_CLOUDS .EQ. "NONE") THEN - ZLWC(1:IKE-IKB+1) = 0.0 - ELSE - ZLWC(1:IKE-IKB+1) = PRT(1+JPV,1+JPV,1:IKE-IKB+1,2) * PRHODREF(1+JPV,1+JPV,1:IKE-IKB+1) - END IF -! - JVLEVEL = IKE-IKB+1 -! - ALLOCATE(ZJOUT1D(JVLEVEL,JPJVMAX)) -! - ZSZA(:,:) = PZENITH(:,:) * 180. / XPI - - CALL TUVMAIN(ZSZA, IDATE, ZALBNEW, ZDOBNEW, & - JVLEVEL, ZAZ, ZLWC, & - JPJVMAX, ZJOUT1D, YJLABELOUT ) -! - PJVALUES(:,:,:,:) = SPREAD(SPREAD(ZJOUT1D(1:JVLEVEL,1:JPJVMAX),1,IIU),2,IJU) - IF (KVERB >= 6) THEN - WRITE(KLUOUT,*)'PJVALUES',SIZE(PJVALUES,1),SIZE(PJVALUES,2),SIZE(PJVALUES,3),SIZE(PJVALUES,4) - WRITE(KLUOUT,*)'MAX',MAXVAL(PJVALUES), MAXLOC(PJVALUES) - WRITE(KLUOUT,*)'MIN',MINVAL(PJVALUES), MINLOC(PJVALUES) - ENDIF -! - IF ((GSFIRSTCALL).AND.(KVERB >= 6)) THEN -! -WRITE(KLUOUT,*) "CH_UPDATE_JVALUES_n information on first call" -WRITE(KLUOUT,*) "-------------------------------------------" -WRITE(KLUOUT,*) "You are using ON LINE computation of photolysis rates " -WRITE(KLUOUT,*) "with CH_TUV_CLOUDS ",HCH_TUV_CLOUDS -WRITE(KLUOUT,*) "-------------------------------------------" -WRITE(KLUOUT,*) "J-Values at the bottom, at the center of the domain: Z = " , ZAZ(1) - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, YJLABELOUT(JJ), PJVALUES(IIU/2+1,IJU/2+1,1,JJ) - ENDDO - WRITE(KLUOUT,*) "J-Values at the top, at the center of the domain: Z = ", ZAZ(JVLEVEL) - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, YJLABELOUT(JJ), PJVALUES(IIU/2+1,IJU/2+1,JVLEVEL,JJ) - ENDDO - WRITE(KLUOUT,*) "-------------------------------------------" -! - ENDIF - IF (ALLOCATED(ZAZ)) THEN - DEALLOCATE(ZAZ) - ENDIF - IF (ALLOCATED(ZLWC)) THEN - DEALLOCATE(ZLWC) - ENDIF -! - -ELSE -!* 2. TUV 3D OFF LINE -! ------------------- -! -! - CALL CH_INTERP_JVALUES_n(PJVALUES,PZZ, PZS, PALB_UV, PZENITH,& - KLON, KLAT, KLEV, & - NIB,NIE,NJB,NJE,NIU,NJU,KVERB, KLUOUT) - IF (KVERB >= 6) THEN - WRITE(KLUOUT,*) "-------------------------------------------" - WRITE(KLUOUT,*) "J-Values at the bottom, at the center of the domain" - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, PJVALUES(IIU/2+1,IJU/2+1,IKB,JJ) - ENDDO - WRITE(KLUOUT,*) "J-Values at the top, at the center of the domain" - DO JJ = 1, JPJVMAX - WRITE(KLUOUT,*) JJ, PJVALUES(IIU/2+1,IJU/2+1,IKE-IKB+1,JJ) - ENDDO - WRITE(KLUOUT,*) "-------------------------------------------" - ENDIF -! - IF (HCH_TUV_CLOUDS .EQ. "CHAN") THEN -! - IF (.NOT.ALLOCATED(ZAZ3D)) ALLOCATE(ZAZ3D(1:IIU,1:IJU,1:IKU)) - IF (.NOT.ALLOCATED(ZLWC3D)) ALLOCATE(ZLWC3D(1:IIU,1:IJU,1:IKU)) - IF (.NOT.ALLOCATED(ZFCLD)) ALLOCATE(ZFCLD(1:IIU,1:IJU,1:IKU,JPJVMAX)) -! - ZAZ3D(:,:,:) = PZZ(:,:,:) - ZLWC3D(:,:,:) = PRT(:,:,:,2) * PRHODREF(:,:,:) -! - ZFCLD(:,:,:,:) = 1. -! - CALL CH_JVALUES_CLOUDS_n(PZENITH, JPJVMAX, IKU, ZAZ3D, ZLWC3D, ZFCLD) -! - PJVALUES(:,:,:,:) = PJVALUES(:,:,:,:) * ZFCLD(:,:,:,:) - IF (KVERB >= 6) WRITE(KLUOUT,*)" J VALUES CLOUD CORR MAX/MIN", MAXVAL(ZFCLD), MINVAL(ZFCLD) -! - ENDIF -! - IF (ALLOCATED(ZAZ3D)) THEN - DEALLOCATE(ZAZ3D) - ENDIF - IF (ALLOCATED(ZLWC3D)) THEN - DEALLOCATE(ZLWC3D) - ENDIF -! -END IF -GSFIRSTCALL = .FALSE. -! -IF (LHOOK) CALL DR_HOOK('CH_UPDATE_JVALUES_N',1,ZHOOK_HANDLE) -END SUBROUTINE CH_UPDATE_JVALUES_n diff --git a/src/arome/chem/internals/ch_update_meteo.F90 b/src/arome/chem/internals/ch_update_meteo.F90 deleted file mode 100644 index 16e5369e02de2856551305c876ce87a3078c56c9..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_update_meteo.F90 +++ /dev/null @@ -1,78 +0,0 @@ -! ######spl - SUBROUTINE CH_UPDATE_METEO(TPM,PTIME) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ##################################### -!! -!!*** *CH_UPDATE_METEO* -!! -!! PURPOSE -!! ------- -!! update a set of meteo variables -!! -!!** METHOD -!! ------ -!! interpolate NMETEOVARS variables in time -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/04/95 -!! 27/07/96 (K. Suhre) restructured -!! 20/04/99 (K. Suhre) meteo variables are now interpolated in time -!! 01/12/03 (D. Gazen) change Chemical scheme interface!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_M9, ONLY: NMETEOVARS, METEOTRANSTYPE -USE MODD_CH_METEO, ONLY: NMETEORECS, XMETEOTIME, XMETEODATA, NMETEORECACT -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -! -!* 0.1 declaration of arguments -! -TYPE(METEOTRANSTYPE), INTENT(INOUT) :: TPM ! the meteo variables -REAL, INTENT(IN) :: PTIME ! current simulation time -! -!* 0.2 declaration of local variables -! ---------------- -REAL :: ZALPHA ! interpolation weight -! -!------------------------------------------------------------------------------ -! -!* EXECUTABLE STATEMENTS -! --------------------- -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_UPDATE_METEO',0,ZHOOK_HANDLE) -IF (PTIME .LE. XMETEOTIME(1)) THEN -! -! take first record - TPM%XMETEOVAR(:) = XMETEODATA(:,1) -! -ELSE IF (PTIME .GE. XMETEOTIME(NMETEORECS)) THEN -! -! take last record - TPM%XMETEOVAR(1:NMETEOVARS) = XMETEODATA(1:NMETEOVARS,NMETEORECS) -! -ELSE -! -! interpolate meteo variables in time - IF (PTIME .GE. XMETEOTIME(NMETEORECACT+1)) NMETEORECACT = NMETEORECACT+1 -! - ZALPHA = (PTIME - XMETEOTIME(NMETEORECACT)) & - / (XMETEOTIME(NMETEORECACT+1) - XMETEOTIME(NMETEORECACT)) -! - TPM%XMETEOVAR(1:NMETEOVARS) = ZALPHA * XMETEODATA(1:NMETEOVARS,NMETEORECACT+1) & - + (1.-ZALPHA) * XMETEODATA(1:NMETEOVARS,NMETEORECACT) -! -END IF -! -IF (LHOOK) CALL DR_HOOK('CH_UPDATE_METEO',1,ZHOOK_HANDLE) -END SUBROUTINE CH_UPDATE_METEO diff --git a/src/arome/chem/internals/ch_write_chem.F90 b/src/arome/chem/internals/ch_write_chem.F90 deleted file mode 100644 index 8589c4176ffd2255be38b742176f4dd1c4f5d69e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ch_write_chem.F90 +++ /dev/null @@ -1,189 +0,0 @@ -! ######spl - SUBROUTINE CH_WRITE_CHEM(PCONC, PAERO, PRHODREF, HFILE) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################# -!! -!!*** *CH_WRITE_CHEM* -!! -!! PURPOSE -!! ------- -!! write a set of values to a file -!! -!!** METHOD -!! ------ -!! NEQ values will be written to a file, -!! the format of the file will be as follows: -!! line 1: 'name1' value1 -!! ... -!! line NEQ: 'nameNEQ' valueNEQ -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 21/04/95 -!! 01/12/03 (D. Gazen) change Chemical scheme interface -!! -!! EXTERNAL -!! -------- -!! none -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_MODEL0D, ONLY: NFILEIO -USE MODD_CH_M9, ONLY: NEQ, CNAMES -USE MODD_CH_AEROSOL -!! -!! EXPLICIT ARGUMENTS -!! ---------------- -IMPLICIT NONE -!REAL, DIMENSION(NEQ), INTENT(IN) :: PCONC ! PCONC: concentration vector -REAL, DIMENSION(:), INTENT(INOUT) :: PCONC ! PCONC: concentration vector -REAL, DIMENSION(:), INTENT(INOUT) :: PAERO ! PCONC: concentration vector -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! air density -CHARACTER(LEN=*), INTENT(IN) :: HFILE ! HFILE: name of the file for write -! -!! DECLARATION OF LOCAL VARIABLES -!! ------------------------------ -INTEGER :: JI, NAERO -REAL :: ZMD -REAL, DIMENSION(NSP+NCARB+NSOA) :: ZMI ! aerosol molecular mass in g/mol - -! -!* EXECUTABLE STATEMENTS -! --------------------- -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_WRITE_CHEM',0,ZHOOK_HANDLE) -IF (LORILAM) THEN -NAERO=SIZE(PAERO) -ELSE -NAERO=0 -END IF -! -! open file -PRINT *, 'CH_WRITE_CHEM: opening file ', HFILE -OPEN(UNIT = NFILEIO, & - FILE = HFILE, & - FORM = 'FORMATTED', & - STATUS = 'UNKNOWN' ) -! -DO JI = 1, NEQ - WRITE(NFILEIO,'(3A,E20.8)') "'", CNAMES(JI), "' ", PCONC(JI)*1.E9 ! convert ppp to ppb -ENDDO -IF (LORILAM) THEN -!Conversion ppp to microgram/m3 -ZMD = 28.9644E-3 -! Constants initialization -ZMI(:) = 250. -ZMI(JP_AER_SO4) = 98. -ZMI(JP_AER_NO3) = 63. -ZMI(JP_AER_NH3) = 17. -ZMI(JP_AER_H2O) = 18. -IF (NSOA == 10) THEN -ZMI(JP_AER_SOA1) = 88. -ZMI(JP_AER_SOA2) = 180. -ZMI(JP_AER_SOA3) = 1.5374857E+02 -ZMI(JP_AER_SOA4) = 1.9586780E+02 -ZMI(JP_AER_SOA5) = 195. -ZMI(JP_AER_SOA6) = 195. -ZMI(JP_AER_SOA7) = 165. -ZMI(JP_AER_SOA8) = 195. -ZMI(JP_AER_SOA9) = 270. -ZMI(JP_AER_SOA10) = 210. -END IF - -! mineral phase - PAERO(JP_CH_SO4i) = PAERO(JP_CH_SO4i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SO4)) - PAERO(JP_CH_SO4j) = PAERO(JP_CH_SO4j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SO4)) - - PAERO(JP_CH_NO3i) = PAERO(JP_CH_NO3i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_NO3)) - PAERO(JP_CH_NO3j) = PAERO(JP_CH_NO3j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_NO3)) - - PAERO(JP_CH_NH3i) = PAERO(JP_CH_NH3i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_NH3)) - PAERO(JP_CH_NH3j) = PAERO(JP_CH_NH3j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_NH3)) - -! water - PAERO(JP_CH_H2Oi) = PAERO(JP_CH_H2Oi)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_H2O)) - PAERO(JP_CH_H2Oj) = PAERO(JP_CH_H2Oj)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_H2O)) - -! primary organic carbon - PAERO(JP_CH_OCi) = PAERO(JP_CH_OCi)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_OC)) - PAERO(JP_CH_OCj) = PAERO(JP_CH_OCj)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_OC)) - -! primary black carbon - PAERO(JP_CH_BCi) = PAERO(JP_CH_BCi)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_BC)) - PAERO(JP_CH_BCj) = PAERO(JP_CH_BCj)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_BC)) -! -IF (NSOA .EQ. 10) THEN - PAERO(JP_CH_SOA1i) = PAERO(JP_CH_SOA1i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA1)) - PAERO(JP_CH_SOA1j) = PAERO(JP_CH_SOA1j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA1)) - PAERO(JP_CH_SOA2i) = PAERO(JP_CH_SOA2i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA2)) - PAERO(JP_CH_SOA2j) = PAERO(JP_CH_SOA2j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA2)) - PAERO(JP_CH_SOA3i) = PAERO(JP_CH_SOA3i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA3)) - PAERO(JP_CH_SOA3j) = PAERO(JP_CH_SOA3j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA3)) - PAERO(JP_CH_SOA4i) = PAERO(JP_CH_SOA4i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA4)) - PAERO(JP_CH_SOA4j) = PAERO(JP_CH_SOA4j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA4)) - PAERO(JP_CH_SOA5i) = PAERO(JP_CH_SOA5i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA5)) - PAERO(JP_CH_SOA5j) = PAERO(JP_CH_SOA5j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA5)) - PAERO(JP_CH_SOA6i) = PAERO(JP_CH_SOA6i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA6)) - PAERO(JP_CH_SOA6j) = PAERO(JP_CH_SOA6j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA6)) - PAERO(JP_CH_SOA7i) = PAERO(JP_CH_SOA7i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA7)) - PAERO(JP_CH_SOA7j) = PAERO(JP_CH_SOA7j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA7)) - PAERO(JP_CH_SOA8i) = PAERO(JP_CH_SOA8i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA8)) - PAERO(JP_CH_SOA8j) = PAERO(JP_CH_SOA8j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA8)) - PAERO(JP_CH_SOA9i) = PAERO(JP_CH_SOA9i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA9)) - PAERO(JP_CH_SOA9j) = PAERO(JP_CH_SOA9j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA9)) - PAERO(JP_CH_SOA10i) = PAERO(JP_CH_SOA10i)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA10)) - PAERO(JP_CH_SOA10j) = PAERO(JP_CH_SOA10j)/ZMD*1.E6 * & - (PRHODREF(1) * ZMI(JP_AER_SOA10)) -END IF -END IF - -DO JI = 1, NAERO - WRITE(NFILEIO,'(3A,E20.8)') "'", CAERONAMES(JI), "' ", PAERO(JI) -ENDDO - -! -! close file -CLOSE(NFILEIO) -! -IF (LHOOK) CALL DR_HOOK('CH_WRITE_CHEM',1,ZHOOK_HANDLE) -END SUBROUTINE CH_WRITE_CHEM diff --git a/src/arome/chem/internals/data_kmcf198.F b/src/arome/chem/internals/data_kmcf198.F deleted file mode 100644 index b094996a2af3013e796a9689dfdd4beb2ef281f5..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/data_kmcf198.F +++ /dev/null @@ -1,2205 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/data_kmcf198.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:29 $ -!----------------------------------------------------------------- - BLOCK DATA KMCF198 -! - IMPLICIT NONE -! -! *** Common block definition -! - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M -! - COMMON /KMC198/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! -! *** NaCl -! - INTEGER :: I - DATA (BNC01M(I),I=1,100)/ & - &-0.49640E-01,-0.10303E+00,-0.12698E+00,-0.14245E+00,-0.15358E+00, & - &-0.16202E+00,-0.16860E+00,-0.17383E+00,-0.17802E+00,-0.18139E+00, & - &-0.18410E+00,-0.18626E+00,-0.18796E+00,-0.18927E+00,-0.19024E+00, & - &-0.19093E+00,-0.19135E+00,-0.19156E+00,-0.19156E+00,-0.19139E+00, & - &-0.19106E+00,-0.19059E+00,-0.18999E+00,-0.18928E+00,-0.18846E+00, & - &-0.18756E+00,-0.18657E+00,-0.18550E+00,-0.18436E+00,-0.18316E+00, & - &-0.18191E+00,-0.18060E+00,-0.17925E+00,-0.17786E+00,-0.17643E+00, & - &-0.17496E+00,-0.17347E+00,-0.17194E+00,-0.17040E+00,-0.16883E+00, & - &-0.16724E+00,-0.16563E+00,-0.16401E+00,-0.16238E+00,-0.16073E+00, & - &-0.15908E+00,-0.15741E+00,-0.15574E+00,-0.15406E+00,-0.15237E+00, & - &-0.15068E+00,-0.14899E+00,-0.14729E+00,-0.14558E+00,-0.14388E+00, & - &-0.14217E+00,-0.14046E+00,-0.13874E+00,-0.13702E+00,-0.13530E+00, & - &-0.13357E+00,-0.13184E+00,-0.13011E+00,-0.12837E+00,-0.12663E+00, & - &-0.12488E+00,-0.12312E+00,-0.12136E+00,-0.11959E+00,-0.11781E+00, & - &-0.11603E+00,-0.11423E+00,-0.11243E+00,-0.11061E+00,-0.10878E+00, & - &-0.10694E+00,-0.10509E+00,-0.10322E+00,-0.10134E+00,-0.99450E-01, & - &-0.97542E-01,-0.95618E-01,-0.93679E-01,-0.91723E-01,-0.89752E-01, & - &-0.87764E-01,-0.85759E-01,-0.83737E-01,-0.81699E-01,-0.79643E-01, & - &-0.77570E-01,-0.75481E-01,-0.73375E-01,-0.71252E-01,-0.69113E-01, & - &-0.66957E-01,-0.64786E-01,-0.62600E-01,-0.60399E-01,-0.58183E-01/ - - DATA (BNC01M(I),I=101,200)/ & - &-0.55953E-01,-0.53709E-01,-0.51453E-01,-0.49184E-01,-0.46903E-01, & - &-0.44610E-01,-0.42307E-01,-0.39994E-01,-0.37670E-01,-0.35338E-01, & - &-0.32997E-01,-0.30649E-01,-0.28293E-01,-0.25931E-01,-0.23562E-01, & - &-0.21188E-01,-0.18808E-01,-0.16424E-01,-0.14036E-01,-0.11644E-01, & - &-0.92495E-02,-0.68520E-02,-0.44521E-02,-0.20502E-02, 0.35305E-03, & - & 0.27576E-02, 0.51630E-02, 0.75689E-02, 0.99750E-02, 0.12381E-01, & - & 0.14787E-01, 0.17192E-01, 0.19597E-01, 0.22000E-01, 0.24402E-01, & - & 0.26803E-01, 0.29203E-01, 0.31600E-01, 0.33996E-01, 0.36390E-01, & - & 0.38782E-01, 0.41172E-01, 0.43559E-01, 0.45944E-01, 0.48326E-01, & - & 0.50706E-01, 0.53083E-01, 0.55458E-01, 0.57830E-01, 0.60198E-01, & - & 0.62564E-01, 0.64927E-01, 0.67287E-01, 0.69644E-01, 0.71998E-01, & - & 0.74349E-01, 0.76696E-01, 0.79041E-01, 0.81382E-01, 0.83719E-01, & - & 0.86054E-01, 0.88385E-01, 0.90713E-01, 0.93037E-01, 0.95358E-01, & - & 0.97676E-01, 0.99990E-01, 0.10230E+00, 0.10461E+00, 0.10691E+00, & - & 0.10921E+00, 0.11151E+00, 0.11380E+00, 0.11609E+00, 0.11837E+00, & - & 0.12066E+00, 0.12293E+00, 0.12521E+00, 0.12748E+00, 0.12975E+00, & - & 0.13201E+00, 0.13427E+00, 0.13653E+00, 0.13878E+00, 0.14103E+00, & - & 0.14327E+00, 0.14551E+00, 0.14775E+00, 0.14998E+00, 0.15221E+00, & - & 0.15444E+00, 0.15666E+00, 0.15888E+00, 0.16109E+00, 0.16330E+00, & - & 0.16551E+00, 0.16771E+00, 0.16991E+00, 0.17211E+00, 0.17430E+00/ - - DATA (BNC01M(I),I=201,300)/ & - & 0.17649E+00, 0.17867E+00, 0.18085E+00, 0.18302E+00, 0.18520E+00, & - & 0.18736E+00, 0.18953E+00, 0.19169E+00, 0.19384E+00, 0.19600E+00, & - & 0.19814E+00, 0.20029E+00, 0.20243E+00, 0.20457E+00, 0.20670E+00, & - & 0.20883E+00, 0.21095E+00, 0.21307E+00, 0.21519E+00, 0.21730E+00, & - & 0.21941E+00, 0.22151E+00, 0.22362E+00, 0.22571E+00, 0.22781E+00, & - & 0.22990E+00, 0.23198E+00, 0.23406E+00, 0.23614E+00, 0.23821E+00, & - & 0.24028E+00, 0.24235E+00, 0.24441E+00, 0.24647E+00, 0.24852E+00, & - & 0.25057E+00, 0.25262E+00, 0.25466E+00, 0.25670E+00, 0.25873E+00, & - & 0.26076E+00, 0.26279E+00, 0.26481E+00, 0.26683E+00, 0.26885E+00, & - & 0.27086E+00, 0.27286E+00, 0.27487E+00, 0.27687E+00, 0.27886E+00, & - & 0.28085E+00, 0.28284E+00, 0.28483E+00, 0.28681E+00, 0.28878E+00, & - & 0.29075E+00, 0.29272E+00, 0.29469E+00, 0.29665E+00, 0.29861E+00, & - & 0.30056E+00, 0.30251E+00, 0.30445E+00, 0.30640E+00, 0.30833E+00, & - & 0.31027E+00, 0.31220E+00, 0.31412E+00, 0.31605E+00, 0.31797E+00, & - & 0.31988E+00, 0.32179E+00, 0.32370E+00, 0.32561E+00, 0.32751E+00, & - & 0.32940E+00, 0.33129E+00, 0.33318E+00, 0.33507E+00, 0.33695E+00, & - & 0.33883E+00, 0.34070E+00, 0.34257E+00, 0.34444E+00, 0.34630E+00, & - & 0.34816E+00, 0.35002E+00, 0.35187E+00, 0.35372E+00, 0.35556E+00, & - & 0.35741E+00, 0.35924E+00, 0.36108E+00, 0.36291E+00, 0.36473E+00, & - & 0.36656E+00, 0.36838E+00, 0.37019E+00, 0.37200E+00, 0.37381E+00/ - - DATA (BNC01M(I),I=301,400)/ & - & 0.37562E+00, 0.37742E+00, 0.37922E+00, 0.38101E+00, 0.38280E+00, & - & 0.38459E+00, 0.38637E+00, 0.38815E+00, 0.38993E+00, 0.39170E+00, & - & 0.39347E+00, 0.39524E+00, 0.39700E+00, 0.39876E+00, 0.40052E+00, & - & 0.40227E+00, 0.40402E+00, 0.40576E+00, 0.40751E+00, 0.40924E+00, & - & 0.41098E+00, 0.41271E+00, 0.41444E+00, 0.41616E+00, 0.41788E+00, & - & 0.41960E+00, 0.42132E+00, 0.42303E+00, 0.42474E+00, 0.42644E+00, & - & 0.42814E+00, 0.42984E+00, 0.43153E+00, 0.43322E+00, 0.43491E+00, & - & 0.43659E+00, 0.43828E+00, 0.43995E+00, 0.44163E+00, 0.44330E+00, & - & 0.44497E+00, 0.44663E+00, 0.44829E+00, 0.44995E+00, 0.45160E+00, & - & 0.45325E+00, 0.45490E+00, 0.45655E+00, 0.45819E+00, 0.45983E+00, & - & 0.46146E+00, 0.46309E+00, 0.46472E+00, 0.46635E+00, 0.46797E+00, & - & 0.46959E+00, 0.47120E+00, 0.47282E+00, 0.47442E+00, 0.47603E+00, & - & 0.47763E+00, 0.47923E+00, 0.48083E+00, 0.48242E+00, 0.48401E+00, & - & 0.48560E+00, 0.48719E+00, 0.48877E+00, 0.49035E+00, 0.49192E+00, & - & 0.49349E+00, 0.49506E+00, 0.49663E+00, 0.49819E+00, 0.49975E+00, & - & 0.50130E+00, 0.50286E+00, 0.50441E+00, 0.50596E+00, 0.50750E+00, & - & 0.50904E+00, 0.51058E+00, 0.51212E+00, 0.51365E+00, 0.51518E+00, & - & 0.51670E+00, 0.51823E+00, 0.51975E+00, 0.52126E+00, 0.52278E+00, & - & 0.52429E+00, 0.52580E+00, 0.52730E+00, 0.52881E+00, 0.53031E+00, & - & 0.53180E+00, 0.53330E+00, 0.53479E+00, 0.53628E+00, 0.53776E+00/ - - DATA (BNC01M(I),I=401,500)/ & - & 0.53924E+00, 0.54072E+00, 0.54220E+00, 0.54367E+00, 0.54514E+00, & - & 0.54661E+00, 0.54808E+00, 0.54954E+00, 0.55100E+00, 0.55246E+00, & - & 0.55391E+00, 0.55536E+00, 0.55681E+00, 0.55825E+00, 0.55970E+00, & - & 0.56114E+00, 0.56257E+00, 0.56401E+00, 0.56544E+00, 0.56687E+00, & - & 0.56829E+00, 0.56972E+00, 0.57114E+00, 0.57256E+00, 0.57397E+00, & - & 0.57538E+00, 0.57679E+00, 0.57820E+00, 0.57960E+00, 0.58101E+00, & - & 0.58240E+00, 0.58380E+00, 0.58519E+00, 0.58659E+00, 0.58797E+00, & - & 0.58936E+00, 0.59074E+00, 0.59212E+00, 0.59350E+00, 0.59487E+00, & - & 0.59625E+00, 0.59762E+00, 0.59898E+00, 0.60035E+00, 0.60171E+00, & - & 0.60307E+00, 0.60442E+00, 0.60578E+00, 0.60713E+00, 0.60848E+00, & - & 0.60982E+00, 0.61117E+00, 0.61251E+00, 0.61385E+00, 0.61518E+00, & - & 0.61652E+00, 0.61785E+00, 0.61918E+00, 0.62050E+00, 0.62183E+00, & - & 0.62315E+00, 0.62447E+00, 0.62578E+00, 0.62709E+00, 0.62841E+00, & - & 0.62971E+00, 0.63102E+00, 0.63232E+00, 0.63362E+00, 0.63492E+00, & - & 0.63622E+00, 0.63751E+00, 0.63880E+00, 0.64009E+00, 0.64138E+00, & - & 0.64266E+00, 0.64394E+00, 0.64522E+00, 0.64650E+00, 0.64777E+00, & - & 0.64905E+00, 0.65032E+00, 0.65158E+00, 0.65285E+00, 0.65411E+00, & - & 0.65537E+00, 0.65663E+00, 0.65788E+00, 0.65913E+00, 0.66039E+00, & - & 0.66163E+00, 0.66288E+00, 0.66412E+00, 0.66536E+00, 0.66660E+00, & - & 0.66784E+00, 0.66907E+00, 0.67031E+00, 0.67153E+00, 0.67276E+00/ - - DATA (BNC01M(I),I=501,600)/ & - & 0.67399E+00, 0.67521E+00, 0.67643E+00, 0.67765E+00, 0.67886E+00, & - & 0.68008E+00, 0.68129E+00, 0.68250E+00, 0.68371E+00, 0.68491E+00, & - & 0.68611E+00, 0.68731E+00, 0.68851E+00, 0.68971E+00, 0.69090E+00, & - & 0.69209E+00, 0.69328E+00, 0.69447E+00, 0.69565E+00, 0.69683E+00, & - & 0.69801E+00, 0.69919E+00, 0.70037E+00, 0.70154E+00, 0.70271E+00, & - & 0.70388E+00, 0.70505E+00, 0.70621E+00, 0.70738E+00, 0.70854E+00, & - & 0.70970E+00, 0.71085E+00, 0.71201E+00, 0.71316E+00, 0.71431E+00, & - & 0.71546E+00, 0.71660E+00, 0.71775E+00, 0.71889E+00, 0.72003E+00, & - & 0.72117E+00, 0.72230E+00, 0.72343E+00, 0.72456E+00, 0.72569E+00, & - & 0.72682E+00, 0.72795E+00, 0.72907E+00, 0.73019E+00, 0.73131E+00, & - & 0.73242E+00, 0.73354E+00, 0.73465E+00, 0.73576E+00, 0.73687E+00, & - & 0.73798E+00, 0.73908E+00, 0.74019E+00, 0.74129E+00, 0.74238E+00, & - & 0.74348E+00, 0.74457E+00, 0.74567E+00, 0.74676E+00, 0.74785E+00, & - & 0.74893E+00, 0.75002E+00, 0.75110E+00, 0.75218E+00, 0.75326E+00, & - & 0.75434E+00, 0.75541E+00, 0.75648E+00, 0.75755E+00, 0.75862E+00, & - & 0.75969E+00, 0.76075E+00, 0.76182E+00, 0.76288E+00, 0.76394E+00, & - & 0.76500E+00, 0.76605E+00, 0.76710E+00, 0.76816E+00, 0.76921E+00, & - & 0.77025E+00, 0.77130E+00, 0.77234E+00, 0.77339E+00, 0.77443E+00, & - & 0.77546E+00, 0.77650E+00, 0.77754E+00, 0.77857E+00, 0.77960E+00, & - & 0.78063E+00, 0.78165E+00, 0.78268E+00, 0.78370E+00, 0.78473E+00/ - - DATA (BNC01M(I),I=601,700)/ & - & 0.79565E+00, 0.80557E+00, 0.81531E+00, 0.82489E+00, 0.83429E+00, & - & 0.84353E+00, 0.85261E+00, 0.86153E+00, 0.87029E+00, 0.87890E+00, & - & 0.88737E+00, 0.89568E+00, 0.90385E+00, 0.91188E+00, 0.91978E+00, & - & 0.92754E+00, 0.93516E+00, 0.94265E+00, 0.95002E+00, 0.95726E+00, & - & 0.96438E+00, 0.97138E+00, 0.97825E+00, 0.98501E+00, 0.99166E+00, & - & 0.99819E+00, 0.10046E+01, 0.10109E+01, 0.10171E+01, 0.10232E+01, & - & 0.10292E+01, 0.10351E+01, 0.10409E+01, 0.10466E+01, 0.10522E+01, & - & 0.10577E+01, 0.10632E+01, 0.10685E+01, 0.10737E+01, 0.10788E+01, & - & 0.10839E+01, 0.10889E+01, 0.10938E+01, 0.10986E+01, 0.11033E+01, & - & 0.11079E+01, 0.11125E+01, 0.11169E+01, 0.11213E+01, 0.11257E+01, & - & 0.11299E+01, 0.11341E+01, 0.11382E+01, 0.11422E+01, 0.11462E+01, & - & 0.11501E+01, 0.11539E+01, 0.11577E+01, 0.11613E+01, 0.11650E+01, & - & 0.11685E+01, 0.11720E+01, 0.11754E+01, 0.11788E+01, 0.11821E+01, & - & 0.11853E+01, 0.11885E+01, 0.11917E+01, 0.11947E+01, 0.11977E+01, & - & 0.12007E+01, 0.12036E+01, 0.12064E+01, 0.12092E+01, 0.12119E+01, & - & 0.12146E+01, 0.12172E+01, 0.12198E+01, 0.12223E+01, 0.12248E+01, & - & 0.12272E+01, 0.12296E+01, 0.12319E+01, 0.12342E+01, 0.12364E+01, & - & 0.12386E+01, 0.12407E+01, 0.12428E+01, 0.12449E+01, 0.12469E+01, & - & 0.12488E+01, 0.12507E+01, 0.12526E+01, 0.12544E+01, 0.12562E+01, & - & 0.12579E+01, 0.12596E+01, 0.12613E+01, 0.12629E+01, 0.12645E+01/ - - DATA (BNC01M(I),I=701,741)/ & - & 0.12660E+01, 0.12675E+01, 0.12690E+01, 0.12704E+01, 0.12718E+01, & - & 0.12731E+01, 0.12744E+01, 0.12757E+01, 0.12769E+01, 0.12781E+01, & - & 0.12793E+01, 0.12804E+01, 0.12815E+01, 0.12825E+01, 0.12836E+01, & - & 0.12846E+01, 0.12855E+01, 0.12864E+01, 0.12873E+01, 0.12882E+01, & - & 0.12890E+01, 0.12898E+01, 0.12906E+01, 0.12913E+01, 0.12920E+01, & - & 0.12927E+01, 0.12933E+01, 0.12939E+01, 0.12945E+01, 0.12951E+01, & - & 0.12956E+01, 0.12961E+01, 0.12966E+01, 0.12970E+01, 0.12974E+01, & - & 0.12978E+01, 0.12981E+01, 0.12985E+01, 0.12988E+01, 0.12991E+01, & - & 0.12993E+01 & - & / -! -! *** Na2SO4 -! - DATA (BNC02M(I),I=1,100)/ & - &-0.10289E+00,-0.22546E+00,-0.28765E+00,-0.33213E+00,-0.36741E+00, & - &-0.39691E+00,-0.42240E+00,-0.44495E+00,-0.46522E+00,-0.48367E+00, & - &-0.50064E+00,-0.51637E+00,-0.53106E+00,-0.54484E+00,-0.55785E+00, & - &-0.57017E+00,-0.58189E+00,-0.59306E+00,-0.60376E+00,-0.61401E+00, & - &-0.62387E+00,-0.63337E+00,-0.64254E+00,-0.65140E+00,-0.65998E+00, & - &-0.66830E+00,-0.67639E+00,-0.68424E+00,-0.69189E+00,-0.69934E+00, & - &-0.70661E+00,-0.71370E+00,-0.72063E+00,-0.72740E+00,-0.73403E+00, & - &-0.74052E+00,-0.74688E+00,-0.75312E+00,-0.75923E+00,-0.76524E+00, & - &-0.77113E+00,-0.77693E+00,-0.78262E+00,-0.78822E+00,-0.79373E+00, & - &-0.79915E+00,-0.80450E+00,-0.80976E+00,-0.81494E+00,-0.82005E+00, & - &-0.82509E+00,-0.83006E+00,-0.83497E+00,-0.83981E+00,-0.84459E+00, & - &-0.84931E+00,-0.85398E+00,-0.85859E+00,-0.86315E+00,-0.86766E+00, & - &-0.87211E+00,-0.87652E+00,-0.88089E+00,-0.88521E+00,-0.88948E+00, & - &-0.89372E+00,-0.89791E+00,-0.90207E+00,-0.90619E+00,-0.91027E+00, & - &-0.91432E+00,-0.91833E+00,-0.92231E+00,-0.92626E+00,-0.93018E+00, & - &-0.93406E+00,-0.93792E+00,-0.94175E+00,-0.94556E+00,-0.94933E+00, & - &-0.95308E+00,-0.95681E+00,-0.96051E+00,-0.96419E+00,-0.96785E+00, & - &-0.97149E+00,-0.97510E+00,-0.97869E+00,-0.98226E+00,-0.98582E+00, & - &-0.98935E+00,-0.99286E+00,-0.99636E+00,-0.99984E+00,-0.10033E+01, & - &-0.10067E+01,-0.10102E+01,-0.10136E+01,-0.10170E+01,-0.10203E+01/ - - DATA (BNC02M(I),I=101,200)/ & - &-0.10237E+01,-0.10271E+01,-0.10304E+01,-0.10337E+01,-0.10370E+01, & - &-0.10403E+01,-0.10436E+01,-0.10468E+01,-0.10501E+01,-0.10533E+01, & - &-0.10565E+01,-0.10597E+01,-0.10629E+01,-0.10661E+01,-0.10692E+01, & - &-0.10724E+01,-0.10755E+01,-0.10787E+01,-0.10818E+01,-0.10849E+01, & - &-0.10880E+01,-0.10911E+01,-0.10941E+01,-0.10972E+01,-0.11002E+01, & - &-0.11033E+01,-0.11063E+01,-0.11093E+01,-0.11123E+01,-0.11153E+01, & - &-0.11182E+01,-0.11212E+01,-0.11242E+01,-0.11271E+01,-0.11301E+01, & - &-0.11330E+01,-0.11359E+01,-0.11388E+01,-0.11417E+01,-0.11446E+01, & - &-0.11475E+01,-0.11503E+01,-0.11532E+01,-0.11560E+01,-0.11589E+01, & - &-0.11617E+01,-0.11645E+01,-0.11673E+01,-0.11701E+01,-0.11729E+01, & - &-0.11757E+01,-0.11785E+01,-0.11813E+01,-0.11840E+01,-0.11868E+01, & - &-0.11895E+01,-0.11923E+01,-0.11950E+01,-0.11977E+01,-0.12004E+01, & - &-0.12032E+01,-0.12059E+01,-0.12085E+01,-0.12112E+01,-0.12139E+01, & - &-0.12166E+01,-0.12192E+01,-0.12219E+01,-0.12246E+01,-0.12272E+01, & - &-0.12298E+01,-0.12325E+01,-0.12351E+01,-0.12377E+01,-0.12403E+01, & - &-0.12429E+01,-0.12455E+01,-0.12481E+01,-0.12507E+01,-0.12533E+01, & - &-0.12558E+01,-0.12584E+01,-0.12610E+01,-0.12635E+01,-0.12661E+01, & - &-0.12686E+01,-0.12712E+01,-0.12737E+01,-0.12762E+01,-0.12787E+01, & - &-0.12813E+01,-0.12838E+01,-0.12863E+01,-0.12888E+01,-0.12913E+01, & - &-0.12937E+01,-0.12962E+01,-0.12987E+01,-0.13012E+01,-0.13036E+01/ - - DATA (BNC02M(I),I=201,300)/ & - &-0.13061E+01,-0.13086E+01,-0.13110E+01,-0.13135E+01,-0.13159E+01, & - &-0.13183E+01,-0.13208E+01,-0.13232E+01,-0.13256E+01,-0.13280E+01, & - &-0.13305E+01,-0.13329E+01,-0.13353E+01,-0.13377E+01,-0.13401E+01, & - &-0.13425E+01,-0.13449E+01,-0.13472E+01,-0.13496E+01,-0.13520E+01, & - &-0.13544E+01,-0.13567E+01,-0.13591E+01,-0.13614E+01,-0.13638E+01, & - &-0.13661E+01,-0.13685E+01,-0.13708E+01,-0.13732E+01,-0.13755E+01, & - &-0.13778E+01,-0.13802E+01,-0.13825E+01,-0.13848E+01,-0.13871E+01, & - &-0.13894E+01,-0.13917E+01,-0.13940E+01,-0.13963E+01,-0.13986E+01, & - &-0.14009E+01,-0.14032E+01,-0.14055E+01,-0.14078E+01,-0.14100E+01, & - &-0.14123E+01,-0.14146E+01,-0.14168E+01,-0.14191E+01,-0.14214E+01, & - &-0.14236E+01,-0.14259E+01,-0.14281E+01,-0.14304E+01,-0.14326E+01, & - &-0.14349E+01,-0.14371E+01,-0.14393E+01,-0.14415E+01,-0.14438E+01, & - &-0.14460E+01,-0.14482E+01,-0.14504E+01,-0.14526E+01,-0.14549E+01, & - &-0.14571E+01,-0.14593E+01,-0.14615E+01,-0.14637E+01,-0.14659E+01, & - &-0.14681E+01,-0.14702E+01,-0.14724E+01,-0.14746E+01,-0.14768E+01, & - &-0.14790E+01,-0.14812E+01,-0.14833E+01,-0.14855E+01,-0.14877E+01, & - &-0.14898E+01,-0.14920E+01,-0.14941E+01,-0.14963E+01,-0.14985E+01, & - &-0.15006E+01,-0.15028E+01,-0.15049E+01,-0.15070E+01,-0.15092E+01, & - &-0.15113E+01,-0.15134E+01,-0.15156E+01,-0.15177E+01,-0.15198E+01, & - &-0.15220E+01,-0.15241E+01,-0.15262E+01,-0.15283E+01,-0.15304E+01/ - - DATA (BNC02M(I),I=301,400)/ & - &-0.15325E+01,-0.15347E+01,-0.15368E+01,-0.15389E+01,-0.15410E+01, & - &-0.15431E+01,-0.15452E+01,-0.15473E+01,-0.15493E+01,-0.15514E+01, & - &-0.15535E+01,-0.15556E+01,-0.15577E+01,-0.15598E+01,-0.15618E+01, & - &-0.15639E+01,-0.15660E+01,-0.15681E+01,-0.15701E+01,-0.15722E+01, & - &-0.15743E+01,-0.15763E+01,-0.15784E+01,-0.15805E+01,-0.15825E+01, & - &-0.15846E+01,-0.15866E+01,-0.15887E+01,-0.15907E+01,-0.15928E+01, & - &-0.15948E+01,-0.15968E+01,-0.15989E+01,-0.16009E+01,-0.16030E+01, & - &-0.16050E+01,-0.16070E+01,-0.16090E+01,-0.16111E+01,-0.16131E+01, & - &-0.16151E+01,-0.16171E+01,-0.16192E+01,-0.16212E+01,-0.16232E+01, & - &-0.16252E+01,-0.16272E+01,-0.16292E+01,-0.16312E+01,-0.16332E+01, & - &-0.16352E+01,-0.16372E+01,-0.16392E+01,-0.16412E+01,-0.16432E+01, & - &-0.16452E+01,-0.16472E+01,-0.16492E+01,-0.16512E+01,-0.16532E+01, & - &-0.16552E+01,-0.16572E+01,-0.16591E+01,-0.16611E+01,-0.16631E+01, & - &-0.16651E+01,-0.16671E+01,-0.16690E+01,-0.16710E+01,-0.16730E+01, & - &-0.16749E+01,-0.16769E+01,-0.16789E+01,-0.16808E+01,-0.16828E+01, & - &-0.16847E+01,-0.16867E+01,-0.16887E+01,-0.16906E+01,-0.16926E+01, & - &-0.16945E+01,-0.16965E+01,-0.16984E+01,-0.17004E+01,-0.17023E+01, & - &-0.17042E+01,-0.17062E+01,-0.17081E+01,-0.17101E+01,-0.17120E+01, & - &-0.17139E+01,-0.17159E+01,-0.17178E+01,-0.17197E+01,-0.17217E+01, & - &-0.17236E+01,-0.17255E+01,-0.17274E+01,-0.17294E+01,-0.17313E+01/ - - DATA (BNC02M(I),I=401,500)/ & - &-0.17332E+01,-0.17351E+01,-0.17370E+01,-0.17390E+01,-0.17409E+01, & - &-0.17428E+01,-0.17447E+01,-0.17466E+01,-0.17485E+01,-0.17504E+01, & - &-0.17523E+01,-0.17542E+01,-0.17561E+01,-0.17580E+01,-0.17599E+01, & - &-0.17618E+01,-0.17637E+01,-0.17656E+01,-0.17675E+01,-0.17694E+01, & - &-0.17713E+01,-0.17732E+01,-0.17751E+01,-0.17770E+01,-0.17788E+01, & - &-0.17807E+01,-0.17826E+01,-0.17845E+01,-0.17864E+01,-0.17883E+01, & - &-0.17901E+01,-0.17920E+01,-0.17939E+01,-0.17958E+01,-0.17976E+01, & - &-0.17995E+01,-0.18014E+01,-0.18032E+01,-0.18051E+01,-0.18070E+01, & - &-0.18088E+01,-0.18107E+01,-0.18126E+01,-0.18144E+01,-0.18163E+01, & - &-0.18181E+01,-0.18200E+01,-0.18218E+01,-0.18237E+01,-0.18256E+01, & - &-0.18274E+01,-0.18293E+01,-0.18311E+01,-0.18330E+01,-0.18348E+01, & - &-0.18367E+01,-0.18385E+01,-0.18403E+01,-0.18422E+01,-0.18440E+01, & - &-0.18459E+01,-0.18477E+01,-0.18495E+01,-0.18514E+01,-0.18532E+01, & - &-0.18550E+01,-0.18569E+01,-0.18587E+01,-0.18605E+01,-0.18624E+01, & - &-0.18642E+01,-0.18660E+01,-0.18679E+01,-0.18697E+01,-0.18715E+01, & - &-0.18733E+01,-0.18751E+01,-0.18770E+01,-0.18788E+01,-0.18806E+01, & - &-0.18824E+01,-0.18842E+01,-0.18861E+01,-0.18879E+01,-0.18897E+01, & - &-0.18915E+01,-0.18933E+01,-0.18951E+01,-0.18969E+01,-0.18987E+01, & - &-0.19005E+01,-0.19023E+01,-0.19041E+01,-0.19060E+01,-0.19078E+01, & - &-0.19096E+01,-0.19114E+01,-0.19132E+01,-0.19150E+01,-0.19167E+01/ - - DATA (BNC02M(I),I=501,600)/ & - &-0.19185E+01,-0.19203E+01,-0.19221E+01,-0.19239E+01,-0.19257E+01, & - &-0.19275E+01,-0.19293E+01,-0.19311E+01,-0.19329E+01,-0.19347E+01, & - &-0.19365E+01,-0.19382E+01,-0.19400E+01,-0.19418E+01,-0.19436E+01, & - &-0.19454E+01,-0.19472E+01,-0.19489E+01,-0.19507E+01,-0.19525E+01, & - &-0.19543E+01,-0.19560E+01,-0.19578E+01,-0.19596E+01,-0.19614E+01, & - &-0.19631E+01,-0.19649E+01,-0.19667E+01,-0.19684E+01,-0.19702E+01, & - &-0.19720E+01,-0.19737E+01,-0.19755E+01,-0.19773E+01,-0.19790E+01, & - &-0.19808E+01,-0.19826E+01,-0.19843E+01,-0.19861E+01,-0.19878E+01, & - &-0.19896E+01,-0.19914E+01,-0.19931E+01,-0.19949E+01,-0.19966E+01, & - &-0.19984E+01,-0.20001E+01,-0.20019E+01,-0.20036E+01,-0.20054E+01, & - &-0.20071E+01,-0.20089E+01,-0.20106E+01,-0.20124E+01,-0.20141E+01, & - &-0.20159E+01,-0.20176E+01,-0.20193E+01,-0.20211E+01,-0.20228E+01, & - &-0.20246E+01,-0.20263E+01,-0.20281E+01,-0.20298E+01,-0.20315E+01, & - &-0.20333E+01,-0.20350E+01,-0.20367E+01,-0.20385E+01,-0.20402E+01, & - &-0.20419E+01,-0.20437E+01,-0.20454E+01,-0.20471E+01,-0.20489E+01, & - &-0.20506E+01,-0.20523E+01,-0.20540E+01,-0.20558E+01,-0.20575E+01, & - &-0.20592E+01,-0.20609E+01,-0.20627E+01,-0.20644E+01,-0.20661E+01, & - &-0.20678E+01,-0.20695E+01,-0.20713E+01,-0.20730E+01,-0.20747E+01, & - &-0.20764E+01,-0.20781E+01,-0.20798E+01,-0.20816E+01,-0.20833E+01, & - &-0.20850E+01,-0.20867E+01,-0.20884E+01,-0.20901E+01,-0.20918E+01/ - - DATA (BNC02M(I),I=601,700)/ & - &-0.21103E+01,-0.21272E+01,-0.21441E+01,-0.21610E+01,-0.21778E+01, & - &-0.21945E+01,-0.22111E+01,-0.22277E+01,-0.22442E+01,-0.22607E+01, & - &-0.22771E+01,-0.22934E+01,-0.23097E+01,-0.23260E+01,-0.23422E+01, & - &-0.23583E+01,-0.23744E+01,-0.23904E+01,-0.24064E+01,-0.24224E+01, & - &-0.24383E+01,-0.24541E+01,-0.24699E+01,-0.24857E+01,-0.25014E+01, & - &-0.25171E+01,-0.25327E+01,-0.25483E+01,-0.25639E+01,-0.25794E+01, & - &-0.25949E+01,-0.26104E+01,-0.26258E+01,-0.26412E+01,-0.26565E+01, & - &-0.26718E+01,-0.26871E+01,-0.27023E+01,-0.27175E+01,-0.27327E+01, & - &-0.27479E+01,-0.27630E+01,-0.27781E+01,-0.27931E+01,-0.28082E+01, & - &-0.28232E+01,-0.28381E+01,-0.28531E+01,-0.28680E+01,-0.28829E+01, & - &-0.28977E+01,-0.29125E+01,-0.29274E+01,-0.29421E+01,-0.29569E+01, & - &-0.29716E+01,-0.29863E+01,-0.30010E+01,-0.30157E+01,-0.30303E+01, & - &-0.30449E+01,-0.30595E+01,-0.30740E+01,-0.30886E+01,-0.31031E+01, & - &-0.31176E+01,-0.31321E+01,-0.31465E+01,-0.31610E+01,-0.31754E+01, & - &-0.31898E+01,-0.32042E+01,-0.32185E+01,-0.32328E+01,-0.32472E+01, & - &-0.32614E+01,-0.32757E+01,-0.32900E+01,-0.33042E+01,-0.33184E+01, & - &-0.33326E+01,-0.33468E+01,-0.33610E+01,-0.33751E+01,-0.33893E+01, & - &-0.34034E+01,-0.34175E+01,-0.34316E+01,-0.34456E+01,-0.34597E+01, & - &-0.34737E+01,-0.34877E+01,-0.35017E+01,-0.35157E+01,-0.35297E+01, & - &-0.35436E+01,-0.35576E+01,-0.35715E+01,-0.35854E+01,-0.35993E+01/ - - DATA (BNC02M(I),I=701,741)/ & - &-0.36132E+01,-0.36270E+01,-0.36409E+01,-0.36547E+01,-0.36685E+01, & - &-0.36823E+01,-0.36961E+01,-0.37099E+01,-0.37237E+01,-0.37374E+01, & - &-0.37512E+01,-0.37649E+01,-0.37786E+01,-0.37923E+01,-0.38060E+01, & - &-0.38197E+01,-0.38333E+01,-0.38470E+01,-0.38606E+01,-0.38743E+01, & - &-0.38879E+01,-0.39015E+01,-0.39151E+01,-0.39286E+01,-0.39422E+01, & - &-0.39558E+01,-0.39693E+01,-0.39828E+01,-0.39964E+01,-0.40099E+01, & - &-0.40234E+01,-0.40369E+01,-0.40503E+01,-0.40638E+01,-0.40773E+01, & - &-0.40907E+01,-0.41041E+01,-0.41176E+01,-0.41310E+01,-0.41444E+01, & - &-0.41578E+01 & - & / -! -! *** NaNO3 -! - DATA (BNC03M(I),I=1,100)/ & - &-0.51619E-01,-0.11367E+00,-0.14547E+00,-0.16839E+00,-0.18667E+00, & - &-0.20205E+00,-0.21542E+00,-0.22729E+00,-0.23802E+00,-0.24783E+00, & - &-0.25689E+00,-0.26532E+00,-0.27322E+00,-0.28066E+00,-0.28771E+00, & - &-0.29440E+00,-0.30079E+00,-0.30691E+00,-0.31277E+00,-0.31841E+00, & - &-0.32385E+00,-0.32910E+00,-0.33418E+00,-0.33911E+00,-0.34388E+00, & - &-0.34853E+00,-0.35304E+00,-0.35744E+00,-0.36173E+00,-0.36592E+00, & - &-0.37001E+00,-0.37401E+00,-0.37792E+00,-0.38175E+00,-0.38550E+00, & - &-0.38918E+00,-0.39279E+00,-0.39633E+00,-0.39981E+00,-0.40323E+00, & - &-0.40658E+00,-0.40989E+00,-0.41313E+00,-0.41633E+00,-0.41948E+00, & - &-0.42258E+00,-0.42563E+00,-0.42864E+00,-0.43161E+00,-0.43454E+00, & - &-0.43743E+00,-0.44028E+00,-0.44309E+00,-0.44587E+00,-0.44861E+00, & - &-0.45133E+00,-0.45401E+00,-0.45666E+00,-0.45928E+00,-0.46187E+00, & - &-0.46443E+00,-0.46697E+00,-0.46948E+00,-0.47197E+00,-0.47443E+00, & - &-0.47688E+00,-0.47929E+00,-0.48169E+00,-0.48407E+00,-0.48643E+00, & - &-0.48877E+00,-0.49109E+00,-0.49339E+00,-0.49567E+00,-0.49794E+00, & - &-0.50020E+00,-0.50243E+00,-0.50466E+00,-0.50687E+00,-0.50906E+00, & - &-0.51124E+00,-0.51341E+00,-0.51557E+00,-0.51771E+00,-0.51985E+00, & - &-0.52197E+00,-0.52408E+00,-0.52618E+00,-0.52827E+00,-0.53035E+00, & - &-0.53242E+00,-0.53448E+00,-0.53654E+00,-0.53858E+00,-0.54062E+00, & - &-0.54264E+00,-0.54466E+00,-0.54667E+00,-0.54867E+00,-0.55066E+00/ - - DATA (BNC03M(I),I=101,200)/ & - &-0.55265E+00,-0.55463E+00,-0.55660E+00,-0.55856E+00,-0.56051E+00, & - &-0.56246E+00,-0.56440E+00,-0.56633E+00,-0.56826E+00,-0.57018E+00, & - &-0.57209E+00,-0.57399E+00,-0.57589E+00,-0.57778E+00,-0.57966E+00, & - &-0.58154E+00,-0.58341E+00,-0.58527E+00,-0.58713E+00,-0.58898E+00, & - &-0.59082E+00,-0.59265E+00,-0.59448E+00,-0.59631E+00,-0.59812E+00, & - &-0.59993E+00,-0.60174E+00,-0.60353E+00,-0.60532E+00,-0.60711E+00, & - &-0.60888E+00,-0.61066E+00,-0.61242E+00,-0.61418E+00,-0.61593E+00, & - &-0.61768E+00,-0.61942E+00,-0.62116E+00,-0.62289E+00,-0.62461E+00, & - &-0.62633E+00,-0.62805E+00,-0.62975E+00,-0.63146E+00,-0.63315E+00, & - &-0.63484E+00,-0.63653E+00,-0.63821E+00,-0.63988E+00,-0.64155E+00, & - &-0.64322E+00,-0.64488E+00,-0.64653E+00,-0.64818E+00,-0.64983E+00, & - &-0.65147E+00,-0.65310E+00,-0.65473E+00,-0.65636E+00,-0.65798E+00, & - &-0.65960E+00,-0.66121E+00,-0.66282E+00,-0.66442E+00,-0.66602E+00, & - &-0.66761E+00,-0.66920E+00,-0.67079E+00,-0.67237E+00,-0.67395E+00, & - &-0.67552E+00,-0.67709E+00,-0.67865E+00,-0.68021E+00,-0.68177E+00, & - &-0.68332E+00,-0.68487E+00,-0.68641E+00,-0.68795E+00,-0.68949E+00, & - &-0.69102E+00,-0.69255E+00,-0.69408E+00,-0.69560E+00,-0.69712E+00, & - &-0.69863E+00,-0.70014E+00,-0.70165E+00,-0.70316E+00,-0.70466E+00, & - &-0.70615E+00,-0.70765E+00,-0.70914E+00,-0.71062E+00,-0.71211E+00, & - &-0.71358E+00,-0.71506E+00,-0.71653E+00,-0.71800E+00,-0.71947E+00/ - - DATA (BNC03M(I),I=201,300)/ & - &-0.72093E+00,-0.72239E+00,-0.72385E+00,-0.72531E+00,-0.72676E+00, & - &-0.72820E+00,-0.72965E+00,-0.73109E+00,-0.73253E+00,-0.73397E+00, & - &-0.73540E+00,-0.73683E+00,-0.73825E+00,-0.73968E+00,-0.74110E+00, & - &-0.74252E+00,-0.74393E+00,-0.74535E+00,-0.74676E+00,-0.74816E+00, & - &-0.74957E+00,-0.75097E+00,-0.75237E+00,-0.75376E+00,-0.75516E+00, & - &-0.75655E+00,-0.75794E+00,-0.75932E+00,-0.76071E+00,-0.76209E+00, & - &-0.76346E+00,-0.76484E+00,-0.76621E+00,-0.76758E+00,-0.76895E+00, & - &-0.77032E+00,-0.77168E+00,-0.77304E+00,-0.77440E+00,-0.77575E+00, & - &-0.77711E+00,-0.77846E+00,-0.77981E+00,-0.78115E+00,-0.78250E+00, & - &-0.78384E+00,-0.78518E+00,-0.78652E+00,-0.78785E+00,-0.78918E+00, & - &-0.79051E+00,-0.79184E+00,-0.79317E+00,-0.79449E+00,-0.79581E+00, & - &-0.79713E+00,-0.79845E+00,-0.79977E+00,-0.80108E+00,-0.80239E+00, & - &-0.80370E+00,-0.80500E+00,-0.80631E+00,-0.80761E+00,-0.80891E+00, & - &-0.81021E+00,-0.81151E+00,-0.81280E+00,-0.81410E+00,-0.81539E+00, & - &-0.81667E+00,-0.81796E+00,-0.81925E+00,-0.82053E+00,-0.82181E+00, & - &-0.82309E+00,-0.82437E+00,-0.82564E+00,-0.82691E+00,-0.82819E+00, & - &-0.82946E+00,-0.83072E+00,-0.83199E+00,-0.83325E+00,-0.83452E+00, & - &-0.83578E+00,-0.83703E+00,-0.83829E+00,-0.83955E+00,-0.84080E+00, & - &-0.84205E+00,-0.84330E+00,-0.84455E+00,-0.84580E+00,-0.84704E+00, & - &-0.84828E+00,-0.84952E+00,-0.85076E+00,-0.85200E+00,-0.85324E+00/ - - DATA (BNC03M(I),I=301,400)/ & - &-0.85447E+00,-0.85571E+00,-0.85694E+00,-0.85817E+00,-0.85939E+00, & - &-0.86062E+00,-0.86185E+00,-0.86307E+00,-0.86429E+00,-0.86551E+00, & - &-0.86673E+00,-0.86795E+00,-0.86916E+00,-0.87038E+00,-0.87159E+00, & - &-0.87280E+00,-0.87401E+00,-0.87522E+00,-0.87642E+00,-0.87763E+00, & - &-0.87883E+00,-0.88003E+00,-0.88123E+00,-0.88243E+00,-0.88363E+00, & - &-0.88482E+00,-0.88602E+00,-0.88721E+00,-0.88840E+00,-0.88959E+00, & - &-0.89078E+00,-0.89197E+00,-0.89315E+00,-0.89434E+00,-0.89552E+00, & - &-0.89670E+00,-0.89788E+00,-0.89906E+00,-0.90024E+00,-0.90142E+00, & - &-0.90259E+00,-0.90376E+00,-0.90494E+00,-0.90611E+00,-0.90728E+00, & - &-0.90845E+00,-0.90961E+00,-0.91078E+00,-0.91194E+00,-0.91310E+00, & - &-0.91427E+00,-0.91543E+00,-0.91659E+00,-0.91774E+00,-0.91890E+00, & - &-0.92006E+00,-0.92121E+00,-0.92236E+00,-0.92351E+00,-0.92466E+00, & - &-0.92581E+00,-0.92696E+00,-0.92811E+00,-0.92925E+00,-0.93040E+00, & - &-0.93154E+00,-0.93268E+00,-0.93382E+00,-0.93496E+00,-0.93610E+00, & - &-0.93724E+00,-0.93837E+00,-0.93951E+00,-0.94064E+00,-0.94177E+00, & - &-0.94290E+00,-0.94404E+00,-0.94516E+00,-0.94629E+00,-0.94742E+00, & - &-0.94854E+00,-0.94967E+00,-0.95079E+00,-0.95191E+00,-0.95303E+00, & - &-0.95416E+00,-0.95527E+00,-0.95639E+00,-0.95751E+00,-0.95862E+00, & - &-0.95974E+00,-0.96085E+00,-0.96196E+00,-0.96308E+00,-0.96419E+00, & - &-0.96530E+00,-0.96640E+00,-0.96751E+00,-0.96862E+00,-0.96972E+00/ - - DATA (BNC03M(I),I=401,500)/ & - &-0.97083E+00,-0.97193E+00,-0.97303E+00,-0.97413E+00,-0.97523E+00, & - &-0.97633E+00,-0.97743E+00,-0.97852E+00,-0.97962E+00,-0.98072E+00, & - &-0.98181E+00,-0.98290E+00,-0.98399E+00,-0.98508E+00,-0.98617E+00, & - &-0.98726E+00,-0.98835E+00,-0.98944E+00,-0.99052E+00,-0.99161E+00, & - &-0.99269E+00,-0.99378E+00,-0.99486E+00,-0.99594E+00,-0.99702E+00, & - &-0.99810E+00,-0.99918E+00,-0.10003E+01,-0.10013E+01,-0.10024E+01, & - &-0.10035E+01,-0.10046E+01,-0.10056E+01,-0.10067E+01,-0.10078E+01, & - &-0.10088E+01,-0.10099E+01,-0.10110E+01,-0.10120E+01,-0.10131E+01, & - &-0.10142E+01,-0.10152E+01,-0.10163E+01,-0.10174E+01,-0.10184E+01, & - &-0.10195E+01,-0.10206E+01,-0.10216E+01,-0.10227E+01,-0.10237E+01, & - &-0.10248E+01,-0.10258E+01,-0.10269E+01,-0.10280E+01,-0.10290E+01, & - &-0.10301E+01,-0.10311E+01,-0.10322E+01,-0.10332E+01,-0.10343E+01, & - &-0.10353E+01,-0.10364E+01,-0.10374E+01,-0.10385E+01,-0.10395E+01, & - &-0.10405E+01,-0.10416E+01,-0.10426E+01,-0.10437E+01,-0.10447E+01, & - &-0.10458E+01,-0.10468E+01,-0.10478E+01,-0.10489E+01,-0.10499E+01, & - &-0.10509E+01,-0.10520E+01,-0.10530E+01,-0.10541E+01,-0.10551E+01, & - &-0.10561E+01,-0.10572E+01,-0.10582E+01,-0.10592E+01,-0.10602E+01, & - &-0.10613E+01,-0.10623E+01,-0.10633E+01,-0.10644E+01,-0.10654E+01, & - &-0.10664E+01,-0.10674E+01,-0.10685E+01,-0.10695E+01,-0.10705E+01, & - &-0.10715E+01,-0.10725E+01,-0.10736E+01,-0.10746E+01,-0.10756E+01/ - - DATA (BNC03M(I),I=501,600)/ & - &-0.10766E+01,-0.10776E+01,-0.10787E+01,-0.10797E+01,-0.10807E+01, & - &-0.10817E+01,-0.10827E+01,-0.10837E+01,-0.10847E+01,-0.10857E+01, & - &-0.10868E+01,-0.10878E+01,-0.10888E+01,-0.10898E+01,-0.10908E+01, & - &-0.10918E+01,-0.10928E+01,-0.10938E+01,-0.10948E+01,-0.10958E+01, & - &-0.10968E+01,-0.10978E+01,-0.10988E+01,-0.10998E+01,-0.11008E+01, & - &-0.11018E+01,-0.11028E+01,-0.11038E+01,-0.11048E+01,-0.11058E+01, & - &-0.11068E+01,-0.11078E+01,-0.11088E+01,-0.11098E+01,-0.11108E+01, & - &-0.11118E+01,-0.11128E+01,-0.11138E+01,-0.11148E+01,-0.11158E+01, & - &-0.11168E+01,-0.11178E+01,-0.11188E+01,-0.11197E+01,-0.11207E+01, & - &-0.11217E+01,-0.11227E+01,-0.11237E+01,-0.11247E+01,-0.11257E+01, & - &-0.11267E+01,-0.11276E+01,-0.11286E+01,-0.11296E+01,-0.11306E+01, & - &-0.11316E+01,-0.11326E+01,-0.11335E+01,-0.11345E+01,-0.11355E+01, & - &-0.11365E+01,-0.11374E+01,-0.11384E+01,-0.11394E+01,-0.11404E+01, & - &-0.11414E+01,-0.11423E+01,-0.11433E+01,-0.11443E+01,-0.11453E+01, & - &-0.11462E+01,-0.11472E+01,-0.11482E+01,-0.11491E+01,-0.11501E+01, & - &-0.11511E+01,-0.11521E+01,-0.11530E+01,-0.11540E+01,-0.11550E+01, & - &-0.11559E+01,-0.11569E+01,-0.11579E+01,-0.11588E+01,-0.11598E+01, & - &-0.11608E+01,-0.11617E+01,-0.11627E+01,-0.11636E+01,-0.11646E+01, & - &-0.11656E+01,-0.11665E+01,-0.11675E+01,-0.11685E+01,-0.11694E+01, & - &-0.11704E+01,-0.11713E+01,-0.11723E+01,-0.11732E+01,-0.11742E+01/ - - DATA (BNC03M(I),I=601,700)/ & - &-0.11845E+01,-0.11940E+01,-0.12034E+01,-0.12128E+01,-0.12222E+01, & - &-0.12315E+01,-0.12407E+01,-0.12499E+01,-0.12591E+01,-0.12682E+01, & - &-0.12773E+01,-0.12863E+01,-0.12953E+01,-0.13043E+01,-0.13132E+01, & - &-0.13221E+01,-0.13310E+01,-0.13398E+01,-0.13486E+01,-0.13573E+01, & - &-0.13660E+01,-0.13747E+01,-0.13834E+01,-0.13920E+01,-0.14006E+01, & - &-0.14092E+01,-0.14177E+01,-0.14262E+01,-0.14347E+01,-0.14432E+01, & - &-0.14516E+01,-0.14600E+01,-0.14684E+01,-0.14768E+01,-0.14851E+01, & - &-0.14934E+01,-0.15017E+01,-0.15099E+01,-0.15182E+01,-0.15264E+01, & - &-0.15346E+01,-0.15427E+01,-0.15509E+01,-0.15590E+01,-0.15671E+01, & - &-0.15752E+01,-0.15833E+01,-0.15913E+01,-0.15993E+01,-0.16073E+01, & - &-0.16153E+01,-0.16233E+01,-0.16313E+01,-0.16392E+01,-0.16471E+01, & - &-0.16550E+01,-0.16629E+01,-0.16707E+01,-0.16786E+01,-0.16864E+01, & - &-0.16942E+01,-0.17020E+01,-0.17098E+01,-0.17176E+01,-0.17253E+01, & - &-0.17331E+01,-0.17408E+01,-0.17485E+01,-0.17562E+01,-0.17639E+01, & - &-0.17715E+01,-0.17792E+01,-0.17868E+01,-0.17944E+01,-0.18021E+01, & - &-0.18096E+01,-0.18172E+01,-0.18248E+01,-0.18324E+01,-0.18399E+01, & - &-0.18474E+01,-0.18550E+01,-0.18625E+01,-0.18700E+01,-0.18774E+01, & - &-0.18849E+01,-0.18924E+01,-0.18998E+01,-0.19073E+01,-0.19147E+01, & - &-0.19221E+01,-0.19295E+01,-0.19369E+01,-0.19443E+01,-0.19516E+01, & - &-0.19590E+01,-0.19664E+01,-0.19737E+01,-0.19810E+01,-0.19883E+01/ - - DATA (BNC03M(I),I=701,741)/ & - &-0.19957E+01,-0.20030E+01,-0.20102E+01,-0.20175E+01,-0.20248E+01, & - &-0.20321E+01,-0.20393E+01,-0.20466E+01,-0.20538E+01,-0.20610E+01, & - &-0.20682E+01,-0.20754E+01,-0.20826E+01,-0.20898E+01,-0.20970E+01, & - &-0.21042E+01,-0.21113E+01,-0.21185E+01,-0.21256E+01,-0.21328E+01, & - &-0.21399E+01,-0.21470E+01,-0.21542E+01,-0.21613E+01,-0.21684E+01, & - &-0.21754E+01,-0.21825E+01,-0.21896E+01,-0.21967E+01,-0.22037E+01, & - &-0.22108E+01,-0.22178E+01,-0.22249E+01,-0.22319E+01,-0.22389E+01, & - &-0.22459E+01,-0.22530E+01,-0.22600E+01,-0.22670E+01,-0.22739E+01, & - &-0.22809E+01 & - & / -! -! *** (NH4)2SO4 -! - DATA (BNC04M(I),I=1,100)/ & - &-0.10300E+00,-0.22602E+00,-0.28863E+00,-0.33351E+00,-0.36917E+00, & - &-0.39905E+00,-0.42491E+00,-0.44782E+00,-0.46843E+00,-0.48723E+00, & - &-0.50454E+00,-0.52061E+00,-0.53563E+00,-0.54974E+00,-0.56307E+00, & - &-0.57571E+00,-0.58774E+00,-0.59923E+00,-0.61023E+00,-0.62079E+00, & - &-0.63096E+00,-0.64075E+00,-0.65021E+00,-0.65937E+00,-0.66824E+00, & - &-0.67685E+00,-0.68522E+00,-0.69335E+00,-0.70128E+00,-0.70900E+00, & - &-0.71654E+00,-0.72390E+00,-0.73110E+00,-0.73814E+00,-0.74503E+00, & - &-0.75178E+00,-0.75839E+00,-0.76488E+00,-0.77125E+00,-0.77750E+00, & - &-0.78364E+00,-0.78967E+00,-0.79561E+00,-0.80144E+00,-0.80719E+00, & - &-0.81284E+00,-0.81841E+00,-0.82390E+00,-0.82931E+00,-0.83464E+00, & - &-0.83990E+00,-0.84509E+00,-0.85021E+00,-0.85527E+00,-0.86026E+00, & - &-0.86519E+00,-0.87007E+00,-0.87488E+00,-0.87964E+00,-0.88435E+00, & - &-0.88901E+00,-0.89362E+00,-0.89818E+00,-0.90270E+00,-0.90717E+00, & - &-0.91160E+00,-0.91599E+00,-0.92033E+00,-0.92464E+00,-0.92891E+00, & - &-0.93315E+00,-0.93735E+00,-0.94152E+00,-0.94565E+00,-0.94975E+00, & - &-0.95383E+00,-0.95787E+00,-0.96188E+00,-0.96587E+00,-0.96983E+00, & - &-0.97377E+00,-0.97768E+00,-0.98156E+00,-0.98543E+00,-0.98927E+00, & - &-0.99308E+00,-0.99688E+00,-0.10007E+01,-0.10044E+01,-0.10081E+01, & - &-0.10119E+01,-0.10156E+01,-0.10192E+01,-0.10229E+01,-0.10265E+01, & - &-0.10302E+01,-0.10338E+01,-0.10374E+01,-0.10409E+01,-0.10445E+01/ - - DATA (BNC04M(I),I=101,200)/ & - &-0.10480E+01,-0.10516E+01,-0.10551E+01,-0.10586E+01,-0.10621E+01, & - &-0.10655E+01,-0.10690E+01,-0.10724E+01,-0.10759E+01,-0.10793E+01, & - &-0.10827E+01,-0.10861E+01,-0.10894E+01,-0.10928E+01,-0.10961E+01, & - &-0.10995E+01,-0.11028E+01,-0.11061E+01,-0.11094E+01,-0.11127E+01, & - &-0.11159E+01,-0.11192E+01,-0.11224E+01,-0.11257E+01,-0.11289E+01, & - &-0.11321E+01,-0.11353E+01,-0.11385E+01,-0.11417E+01,-0.11448E+01, & - &-0.11480E+01,-0.11511E+01,-0.11543E+01,-0.11574E+01,-0.11605E+01, & - &-0.11636E+01,-0.11667E+01,-0.11697E+01,-0.11728E+01,-0.11759E+01, & - &-0.11789E+01,-0.11819E+01,-0.11850E+01,-0.11880E+01,-0.11910E+01, & - &-0.11940E+01,-0.11970E+01,-0.12000E+01,-0.12029E+01,-0.12059E+01, & - &-0.12088E+01,-0.12118E+01,-0.12147E+01,-0.12176E+01,-0.12206E+01, & - &-0.12235E+01,-0.12264E+01,-0.12293E+01,-0.12321E+01,-0.12350E+01, & - &-0.12379E+01,-0.12407E+01,-0.12436E+01,-0.12464E+01,-0.12493E+01, & - &-0.12521E+01,-0.12549E+01,-0.12577E+01,-0.12605E+01,-0.12633E+01, & - &-0.12661E+01,-0.12689E+01,-0.12717E+01,-0.12745E+01,-0.12772E+01, & - &-0.12800E+01,-0.12827E+01,-0.12855E+01,-0.12882E+01,-0.12909E+01, & - &-0.12936E+01,-0.12964E+01,-0.12991E+01,-0.13018E+01,-0.13045E+01, & - &-0.13072E+01,-0.13098E+01,-0.13125E+01,-0.13152E+01,-0.13179E+01, & - &-0.13205E+01,-0.13232E+01,-0.13258E+01,-0.13285E+01,-0.13311E+01, & - &-0.13337E+01,-0.13364E+01,-0.13390E+01,-0.13416E+01,-0.13442E+01/ - - DATA (BNC04M(I),I=201,300)/ & - &-0.13468E+01,-0.13494E+01,-0.13520E+01,-0.13546E+01,-0.13572E+01, & - &-0.13597E+01,-0.13623E+01,-0.13649E+01,-0.13674E+01,-0.13700E+01, & - &-0.13726E+01,-0.13751E+01,-0.13776E+01,-0.13802E+01,-0.13827E+01, & - &-0.13852E+01,-0.13878E+01,-0.13903E+01,-0.13928E+01,-0.13953E+01, & - &-0.13978E+01,-0.14003E+01,-0.14028E+01,-0.14053E+01,-0.14078E+01, & - &-0.14102E+01,-0.14127E+01,-0.14152E+01,-0.14177E+01,-0.14201E+01, & - &-0.14226E+01,-0.14250E+01,-0.14275E+01,-0.14299E+01,-0.14324E+01, & - &-0.14348E+01,-0.14373E+01,-0.14397E+01,-0.14421E+01,-0.14445E+01, & - &-0.14469E+01,-0.14494E+01,-0.14518E+01,-0.14542E+01,-0.14566E+01, & - &-0.14590E+01,-0.14614E+01,-0.14638E+01,-0.14662E+01,-0.14685E+01, & - &-0.14709E+01,-0.14733E+01,-0.14757E+01,-0.14780E+01,-0.14804E+01, & - &-0.14828E+01,-0.14851E+01,-0.14875E+01,-0.14898E+01,-0.14922E+01, & - &-0.14945E+01,-0.14969E+01,-0.14992E+01,-0.15015E+01,-0.15039E+01, & - &-0.15062E+01,-0.15085E+01,-0.15108E+01,-0.15131E+01,-0.15155E+01, & - &-0.15178E+01,-0.15201E+01,-0.15224E+01,-0.15247E+01,-0.15270E+01, & - &-0.15293E+01,-0.15316E+01,-0.15338E+01,-0.15361E+01,-0.15384E+01, & - &-0.15407E+01,-0.15430E+01,-0.15452E+01,-0.15475E+01,-0.15498E+01, & - &-0.15520E+01,-0.15543E+01,-0.15566E+01,-0.15588E+01,-0.15611E+01, & - &-0.15633E+01,-0.15656E+01,-0.15678E+01,-0.15700E+01,-0.15723E+01, & - &-0.15745E+01,-0.15767E+01,-0.15790E+01,-0.15812E+01,-0.15834E+01/ - - DATA (BNC04M(I),I=301,400)/ & - &-0.15857E+01,-0.15879E+01,-0.15901E+01,-0.15923E+01,-0.15945E+01, & - &-0.15967E+01,-0.15989E+01,-0.16011E+01,-0.16033E+01,-0.16055E+01, & - &-0.16077E+01,-0.16099E+01,-0.16121E+01,-0.16143E+01,-0.16165E+01, & - &-0.16187E+01,-0.16208E+01,-0.16230E+01,-0.16252E+01,-0.16274E+01, & - &-0.16295E+01,-0.16317E+01,-0.16339E+01,-0.16360E+01,-0.16382E+01, & - &-0.16403E+01,-0.16425E+01,-0.16446E+01,-0.16468E+01,-0.16489E+01, & - &-0.16511E+01,-0.16532E+01,-0.16554E+01,-0.16575E+01,-0.16597E+01, & - &-0.16618E+01,-0.16639E+01,-0.16661E+01,-0.16682E+01,-0.16703E+01, & - &-0.16724E+01,-0.16746E+01,-0.16767E+01,-0.16788E+01,-0.16809E+01, & - &-0.16830E+01,-0.16851E+01,-0.16872E+01,-0.16893E+01,-0.16914E+01, & - &-0.16935E+01,-0.16956E+01,-0.16977E+01,-0.16998E+01,-0.17019E+01, & - &-0.17040E+01,-0.17061E+01,-0.17082E+01,-0.17103E+01,-0.17124E+01, & - &-0.17145E+01,-0.17165E+01,-0.17186E+01,-0.17207E+01,-0.17228E+01, & - &-0.17248E+01,-0.17269E+01,-0.17290E+01,-0.17310E+01,-0.17331E+01, & - &-0.17352E+01,-0.17372E+01,-0.17393E+01,-0.17413E+01,-0.17434E+01, & - &-0.17455E+01,-0.17475E+01,-0.17496E+01,-0.17516E+01,-0.17536E+01, & - &-0.17557E+01,-0.17577E+01,-0.17598E+01,-0.17618E+01,-0.17638E+01, & - &-0.17659E+01,-0.17679E+01,-0.17699E+01,-0.17720E+01,-0.17740E+01, & - &-0.17760E+01,-0.17781E+01,-0.17801E+01,-0.17821E+01,-0.17841E+01, & - &-0.17861E+01,-0.17881E+01,-0.17902E+01,-0.17922E+01,-0.17942E+01/ - - DATA (BNC04M(I),I=401,500)/ & - &-0.17962E+01,-0.17982E+01,-0.18002E+01,-0.18022E+01,-0.18042E+01, & - &-0.18062E+01,-0.18082E+01,-0.18102E+01,-0.18122E+01,-0.18142E+01, & - &-0.18162E+01,-0.18182E+01,-0.18202E+01,-0.18222E+01,-0.18241E+01, & - &-0.18261E+01,-0.18281E+01,-0.18301E+01,-0.18321E+01,-0.18341E+01, & - &-0.18360E+01,-0.18380E+01,-0.18400E+01,-0.18420E+01,-0.18439E+01, & - &-0.18459E+01,-0.18479E+01,-0.18498E+01,-0.18518E+01,-0.18538E+01, & - &-0.18557E+01,-0.18577E+01,-0.18596E+01,-0.18616E+01,-0.18636E+01, & - &-0.18655E+01,-0.18675E+01,-0.18694E+01,-0.18714E+01,-0.18733E+01, & - &-0.18753E+01,-0.18772E+01,-0.18792E+01,-0.18811E+01,-0.18830E+01, & - &-0.18850E+01,-0.18869E+01,-0.18889E+01,-0.18908E+01,-0.18927E+01, & - &-0.18947E+01,-0.18966E+01,-0.18985E+01,-0.19005E+01,-0.19024E+01, & - &-0.19043E+01,-0.19062E+01,-0.19082E+01,-0.19101E+01,-0.19120E+01, & - &-0.19139E+01,-0.19158E+01,-0.19178E+01,-0.19197E+01,-0.19216E+01, & - &-0.19235E+01,-0.19254E+01,-0.19273E+01,-0.19292E+01,-0.19311E+01, & - &-0.19331E+01,-0.19350E+01,-0.19369E+01,-0.19388E+01,-0.19407E+01, & - &-0.19426E+01,-0.19445E+01,-0.19464E+01,-0.19483E+01,-0.19502E+01, & - &-0.19521E+01,-0.19539E+01,-0.19558E+01,-0.19577E+01,-0.19596E+01, & - &-0.19615E+01,-0.19634E+01,-0.19653E+01,-0.19672E+01,-0.19691E+01, & - &-0.19709E+01,-0.19728E+01,-0.19747E+01,-0.19766E+01,-0.19785E+01, & - &-0.19803E+01,-0.19822E+01,-0.19841E+01,-0.19860E+01,-0.19878E+01/ - - DATA (BNC04M(I),I=501,600)/ & - &-0.19897E+01,-0.19916E+01,-0.19934E+01,-0.19953E+01,-0.19972E+01, & - &-0.19990E+01,-0.20009E+01,-0.20028E+01,-0.20046E+01,-0.20065E+01, & - &-0.20084E+01,-0.20102E+01,-0.20121E+01,-0.20139E+01,-0.20158E+01, & - &-0.20176E+01,-0.20195E+01,-0.20213E+01,-0.20232E+01,-0.20250E+01, & - &-0.20269E+01,-0.20287E+01,-0.20306E+01,-0.20324E+01,-0.20343E+01, & - &-0.20361E+01,-0.20380E+01,-0.20398E+01,-0.20416E+01,-0.20435E+01, & - &-0.20453E+01,-0.20472E+01,-0.20490E+01,-0.20508E+01,-0.20527E+01, & - &-0.20545E+01,-0.20563E+01,-0.20582E+01,-0.20600E+01,-0.20618E+01, & - &-0.20637E+01,-0.20655E+01,-0.20673E+01,-0.20691E+01,-0.20710E+01, & - &-0.20728E+01,-0.20746E+01,-0.20764E+01,-0.20782E+01,-0.20801E+01, & - &-0.20819E+01,-0.20837E+01,-0.20855E+01,-0.20873E+01,-0.20891E+01, & - &-0.20910E+01,-0.20928E+01,-0.20946E+01,-0.20964E+01,-0.20982E+01, & - &-0.21000E+01,-0.21018E+01,-0.21036E+01,-0.21054E+01,-0.21072E+01, & - &-0.21090E+01,-0.21109E+01,-0.21127E+01,-0.21145E+01,-0.21163E+01, & - &-0.21181E+01,-0.21199E+01,-0.21217E+01,-0.21234E+01,-0.21252E+01, & - &-0.21270E+01,-0.21288E+01,-0.21306E+01,-0.21324E+01,-0.21342E+01, & - &-0.21360E+01,-0.21378E+01,-0.21396E+01,-0.21414E+01,-0.21432E+01, & - &-0.21449E+01,-0.21467E+01,-0.21485E+01,-0.21503E+01,-0.21521E+01, & - &-0.21539E+01,-0.21556E+01,-0.21574E+01,-0.21592E+01,-0.21610E+01, & - &-0.21628E+01,-0.21645E+01,-0.21663E+01,-0.21681E+01,-0.21699E+01/ - - DATA (BNC04M(I),I=601,700)/ & - &-0.21890E+01,-0.22066E+01,-0.22241E+01,-0.22416E+01,-0.22589E+01, & - &-0.22762E+01,-0.22935E+01,-0.23106E+01,-0.23277E+01,-0.23448E+01, & - &-0.23617E+01,-0.23786E+01,-0.23955E+01,-0.24122E+01,-0.24290E+01, & - &-0.24456E+01,-0.24622E+01,-0.24788E+01,-0.24953E+01,-0.25117E+01, & - &-0.25281E+01,-0.25445E+01,-0.25608E+01,-0.25770E+01,-0.25932E+01, & - &-0.26094E+01,-0.26255E+01,-0.26415E+01,-0.26575E+01,-0.26735E+01, & - &-0.26894E+01,-0.27053E+01,-0.27212E+01,-0.27370E+01,-0.27528E+01, & - &-0.27685E+01,-0.27842E+01,-0.27998E+01,-0.28155E+01,-0.28310E+01, & - &-0.28466E+01,-0.28621E+01,-0.28776E+01,-0.28930E+01,-0.29084E+01, & - &-0.29238E+01,-0.29392E+01,-0.29545E+01,-0.29698E+01,-0.29850E+01, & - &-0.30002E+01,-0.30154E+01,-0.30306E+01,-0.30457E+01,-0.30608E+01, & - &-0.30759E+01,-0.30910E+01,-0.31060E+01,-0.31210E+01,-0.31360E+01, & - &-0.31509E+01,-0.31658E+01,-0.31807E+01,-0.31956E+01,-0.32104E+01, & - &-0.32252E+01,-0.32400E+01,-0.32548E+01,-0.32696E+01,-0.32843E+01, & - &-0.32990E+01,-0.33137E+01,-0.33283E+01,-0.33430E+01,-0.33576E+01, & - &-0.33722E+01,-0.33867E+01,-0.34013E+01,-0.34158E+01,-0.34303E+01, & - &-0.34448E+01,-0.34593E+01,-0.34737E+01,-0.34882E+01,-0.35026E+01, & - &-0.35170E+01,-0.35313E+01,-0.35457E+01,-0.35600E+01,-0.35743E+01, & - &-0.35886E+01,-0.36029E+01,-0.36172E+01,-0.36314E+01,-0.36456E+01, & - &-0.36599E+01,-0.36741E+01,-0.36882E+01,-0.37024E+01,-0.37165E+01/ - - DATA (BNC04M(I),I=701,741)/ & - &-0.37307E+01,-0.37448E+01,-0.37589E+01,-0.37730E+01,-0.37870E+01, & - &-0.38011E+01,-0.38151E+01,-0.38291E+01,-0.38431E+01,-0.38571E+01, & - &-0.38711E+01,-0.38850E+01,-0.38990E+01,-0.39129E+01,-0.39268E+01, & - &-0.39407E+01,-0.39546E+01,-0.39685E+01,-0.39824E+01,-0.39962E+01, & - &-0.40100E+01,-0.40239E+01,-0.40377E+01,-0.40515E+01,-0.40653E+01, & - &-0.40790E+01,-0.40928E+01,-0.41065E+01,-0.41203E+01,-0.41340E+01, & - &-0.41477E+01,-0.41614E+01,-0.41751E+01,-0.41887E+01,-0.42024E+01, & - &-0.42160E+01,-0.42297E+01,-0.42433E+01,-0.42569E+01,-0.42705E+01, & - &-0.42841E+01 & - & / -! -! *** NH4NO3 -! - DATA (BNC05M(I),I=1,100)/ & - &-0.52307E-01,-0.11745E+00,-0.15210E+00,-0.17773E+00,-0.19864E+00, & - &-0.21658E+00,-0.23244E+00,-0.24676E+00,-0.25988E+00,-0.27205E+00, & - &-0.28343E+00,-0.29415E+00,-0.30431E+00,-0.31398E+00,-0.32322E+00, & - &-0.33209E+00,-0.34063E+00,-0.34886E+00,-0.35683E+00,-0.36454E+00, & - &-0.37203E+00,-0.37931E+00,-0.38640E+00,-0.39330E+00,-0.40004E+00, & - &-0.40662E+00,-0.41306E+00,-0.41936E+00,-0.42552E+00,-0.43157E+00, & - &-0.43749E+00,-0.44330E+00,-0.44901E+00,-0.45461E+00,-0.46012E+00, & - &-0.46553E+00,-0.47085E+00,-0.47609E+00,-0.48124E+00,-0.48631E+00, & - &-0.49130E+00,-0.49622E+00,-0.50107E+00,-0.50584E+00,-0.51055E+00, & - &-0.51519E+00,-0.51977E+00,-0.52429E+00,-0.52875E+00,-0.53315E+00, & - &-0.53750E+00,-0.54179E+00,-0.54603E+00,-0.55022E+00,-0.55436E+00, & - &-0.55846E+00,-0.56250E+00,-0.56651E+00,-0.57047E+00,-0.57439E+00, & - &-0.57828E+00,-0.58212E+00,-0.58593E+00,-0.58970E+00,-0.59344E+00, & - &-0.59715E+00,-0.60083E+00,-0.60448E+00,-0.60810E+00,-0.61169E+00, & - &-0.61526E+00,-0.61880E+00,-0.62232E+00,-0.62582E+00,-0.62930E+00, & - &-0.63275E+00,-0.63619E+00,-0.63960E+00,-0.64300E+00,-0.64639E+00, & - &-0.64976E+00,-0.65311E+00,-0.65645E+00,-0.65977E+00,-0.66308E+00, & - &-0.66638E+00,-0.66966E+00,-0.67294E+00,-0.67620E+00,-0.67945E+00, & - &-0.68269E+00,-0.68592E+00,-0.68914E+00,-0.69236E+00,-0.69556E+00, & - &-0.69875E+00,-0.70193E+00,-0.70511E+00,-0.70827E+00,-0.71143E+00/ - - DATA (BNC05M(I),I=101,200)/ & - &-0.71457E+00,-0.71771E+00,-0.72084E+00,-0.72396E+00,-0.72707E+00, & - &-0.73017E+00,-0.73326E+00,-0.73635E+00,-0.73942E+00,-0.74248E+00, & - &-0.74554E+00,-0.74859E+00,-0.75162E+00,-0.75465E+00,-0.75766E+00, & - &-0.76067E+00,-0.76367E+00,-0.76665E+00,-0.76963E+00,-0.77260E+00, & - &-0.77555E+00,-0.77850E+00,-0.78143E+00,-0.78436E+00,-0.78727E+00, & - &-0.79018E+00,-0.79307E+00,-0.79596E+00,-0.79883E+00,-0.80169E+00, & - &-0.80455E+00,-0.80739E+00,-0.81022E+00,-0.81304E+00,-0.81586E+00, & - &-0.81866E+00,-0.82145E+00,-0.82423E+00,-0.82700E+00,-0.82976E+00, & - &-0.83252E+00,-0.83526E+00,-0.83799E+00,-0.84071E+00,-0.84343E+00, & - &-0.84613E+00,-0.84882E+00,-0.85151E+00,-0.85418E+00,-0.85685E+00, & - &-0.85950E+00,-0.86215E+00,-0.86479E+00,-0.86742E+00,-0.87004E+00, & - &-0.87265E+00,-0.87525E+00,-0.87785E+00,-0.88043E+00,-0.88301E+00, & - &-0.88558E+00,-0.88814E+00,-0.89069E+00,-0.89323E+00,-0.89577E+00, & - &-0.89829E+00,-0.90081E+00,-0.90332E+00,-0.90583E+00,-0.90832E+00, & - &-0.91081E+00,-0.91329E+00,-0.91576E+00,-0.91822E+00,-0.92068E+00, & - &-0.92313E+00,-0.92557E+00,-0.92800E+00,-0.93043E+00,-0.93284E+00, & - &-0.93526E+00,-0.93766E+00,-0.94006E+00,-0.94245E+00,-0.94483E+00, & - &-0.94721E+00,-0.94958E+00,-0.95194E+00,-0.95429E+00,-0.95664E+00, & - &-0.95898E+00,-0.96132E+00,-0.96365E+00,-0.96597E+00,-0.96828E+00, & - &-0.97059E+00,-0.97290E+00,-0.97519E+00,-0.97748E+00,-0.97976E+00/ - - DATA (BNC05M(I),I=201,300)/ & - &-0.98204E+00,-0.98431E+00,-0.98657E+00,-0.98883E+00,-0.99108E+00, & - &-0.99333E+00,-0.99557E+00,-0.99780E+00,-0.10000E+01,-0.10023E+01, & - &-0.10045E+01,-0.10067E+01,-0.10089E+01,-0.10111E+01,-0.10133E+01, & - &-0.10155E+01,-0.10176E+01,-0.10198E+01,-0.10220E+01,-0.10242E+01, & - &-0.10263E+01,-0.10285E+01,-0.10306E+01,-0.10328E+01,-0.10349E+01, & - &-0.10370E+01,-0.10392E+01,-0.10413E+01,-0.10434E+01,-0.10455E+01, & - &-0.10476E+01,-0.10497E+01,-0.10518E+01,-0.10539E+01,-0.10560E+01, & - &-0.10581E+01,-0.10601E+01,-0.10622E+01,-0.10643E+01,-0.10663E+01, & - &-0.10684E+01,-0.10704E+01,-0.10725E+01,-0.10745E+01,-0.10766E+01, & - &-0.10786E+01,-0.10806E+01,-0.10826E+01,-0.10847E+01,-0.10867E+01, & - &-0.10887E+01,-0.10907E+01,-0.10927E+01,-0.10947E+01,-0.10967E+01, & - &-0.10987E+01,-0.11006E+01,-0.11026E+01,-0.11046E+01,-0.11066E+01, & - &-0.11085E+01,-0.11105E+01,-0.11124E+01,-0.11144E+01,-0.11163E+01, & - &-0.11183E+01,-0.11202E+01,-0.11221E+01,-0.11241E+01,-0.11260E+01, & - &-0.11279E+01,-0.11298E+01,-0.11317E+01,-0.11337E+01,-0.11356E+01, & - &-0.11375E+01,-0.11394E+01,-0.11413E+01,-0.11431E+01,-0.11450E+01, & - &-0.11469E+01,-0.11488E+01,-0.11507E+01,-0.11525E+01,-0.11544E+01, & - &-0.11563E+01,-0.11581E+01,-0.11600E+01,-0.11618E+01,-0.11637E+01, & - &-0.11655E+01,-0.11673E+01,-0.11692E+01,-0.11710E+01,-0.11728E+01, & - &-0.11747E+01,-0.11765E+01,-0.11783E+01,-0.11801E+01,-0.11819E+01/ - - DATA (BNC05M(I),I=301,400)/ & - &-0.11837E+01,-0.11855E+01,-0.11873E+01,-0.11891E+01,-0.11909E+01, & - &-0.11927E+01,-0.11945E+01,-0.11963E+01,-0.11981E+01,-0.11998E+01, & - &-0.12016E+01,-0.12034E+01,-0.12051E+01,-0.12069E+01,-0.12087E+01, & - &-0.12104E+01,-0.12122E+01,-0.12139E+01,-0.12157E+01,-0.12174E+01, & - &-0.12192E+01,-0.12209E+01,-0.12226E+01,-0.12244E+01,-0.12261E+01, & - &-0.12278E+01,-0.12295E+01,-0.12312E+01,-0.12330E+01,-0.12347E+01, & - &-0.12364E+01,-0.12381E+01,-0.12398E+01,-0.12415E+01,-0.12432E+01, & - &-0.12449E+01,-0.12466E+01,-0.12482E+01,-0.12499E+01,-0.12516E+01, & - &-0.12533E+01,-0.12550E+01,-0.12566E+01,-0.12583E+01,-0.12600E+01, & - &-0.12616E+01,-0.12633E+01,-0.12650E+01,-0.12666E+01,-0.12683E+01, & - &-0.12699E+01,-0.12716E+01,-0.12732E+01,-0.12748E+01,-0.12765E+01, & - &-0.12781E+01,-0.12798E+01,-0.12814E+01,-0.12830E+01,-0.12846E+01, & - &-0.12863E+01,-0.12879E+01,-0.12895E+01,-0.12911E+01,-0.12927E+01, & - &-0.12943E+01,-0.12959E+01,-0.12975E+01,-0.12991E+01,-0.13007E+01, & - &-0.13023E+01,-0.13039E+01,-0.13055E+01,-0.13071E+01,-0.13087E+01, & - &-0.13103E+01,-0.13119E+01,-0.13134E+01,-0.13150E+01,-0.13166E+01, & - &-0.13182E+01,-0.13197E+01,-0.13213E+01,-0.13229E+01,-0.13244E+01, & - &-0.13260E+01,-0.13275E+01,-0.13291E+01,-0.13306E+01,-0.13322E+01, & - &-0.13337E+01,-0.13353E+01,-0.13368E+01,-0.13384E+01,-0.13399E+01, & - &-0.13414E+01,-0.13430E+01,-0.13445E+01,-0.13460E+01,-0.13476E+01/ - - DATA (BNC05M(I),I=401,500)/ & - &-0.13491E+01,-0.13506E+01,-0.13521E+01,-0.13536E+01,-0.13552E+01, & - &-0.13567E+01,-0.13582E+01,-0.13597E+01,-0.13612E+01,-0.13627E+01, & - &-0.13642E+01,-0.13657E+01,-0.13672E+01,-0.13687E+01,-0.13702E+01, & - &-0.13717E+01,-0.13732E+01,-0.13747E+01,-0.13761E+01,-0.13776E+01, & - &-0.13791E+01,-0.13806E+01,-0.13821E+01,-0.13835E+01,-0.13850E+01, & - &-0.13865E+01,-0.13879E+01,-0.13894E+01,-0.13909E+01,-0.13923E+01, & - &-0.13938E+01,-0.13953E+01,-0.13967E+01,-0.13982E+01,-0.13996E+01, & - &-0.14011E+01,-0.14025E+01,-0.14040E+01,-0.14054E+01,-0.14068E+01, & - &-0.14083E+01,-0.14097E+01,-0.14112E+01,-0.14126E+01,-0.14140E+01, & - &-0.14155E+01,-0.14169E+01,-0.14183E+01,-0.14197E+01,-0.14212E+01, & - &-0.14226E+01,-0.14240E+01,-0.14254E+01,-0.14268E+01,-0.14283E+01, & - &-0.14297E+01,-0.14311E+01,-0.14325E+01,-0.14339E+01,-0.14353E+01, & - &-0.14367E+01,-0.14381E+01,-0.14395E+01,-0.14409E+01,-0.14423E+01, & - &-0.14437E+01,-0.14451E+01,-0.14465E+01,-0.14479E+01,-0.14492E+01, & - &-0.14506E+01,-0.14520E+01,-0.14534E+01,-0.14548E+01,-0.14562E+01, & - &-0.14575E+01,-0.14589E+01,-0.14603E+01,-0.14616E+01,-0.14630E+01, & - &-0.14644E+01,-0.14658E+01,-0.14671E+01,-0.14685E+01,-0.14698E+01, & - &-0.14712E+01,-0.14726E+01,-0.14739E+01,-0.14753E+01,-0.14766E+01, & - &-0.14780E+01,-0.14793E+01,-0.14807E+01,-0.14820E+01,-0.14834E+01, & - &-0.14847E+01,-0.14861E+01,-0.14874E+01,-0.14887E+01,-0.14901E+01/ - - DATA (BNC05M(I),I=501,600)/ & - &-0.14914E+01,-0.14927E+01,-0.14941E+01,-0.14954E+01,-0.14967E+01, & - &-0.14981E+01,-0.14994E+01,-0.15007E+01,-0.15020E+01,-0.15034E+01, & - &-0.15047E+01,-0.15060E+01,-0.15073E+01,-0.15086E+01,-0.15099E+01, & - &-0.15113E+01,-0.15126E+01,-0.15139E+01,-0.15152E+01,-0.15165E+01, & - &-0.15178E+01,-0.15191E+01,-0.15204E+01,-0.15217E+01,-0.15230E+01, & - &-0.15243E+01,-0.15256E+01,-0.15269E+01,-0.15282E+01,-0.15295E+01, & - &-0.15308E+01,-0.15321E+01,-0.15334E+01,-0.15346E+01,-0.15359E+01, & - &-0.15372E+01,-0.15385E+01,-0.15398E+01,-0.15411E+01,-0.15423E+01, & - &-0.15436E+01,-0.15449E+01,-0.15462E+01,-0.15474E+01,-0.15487E+01, & - &-0.15500E+01,-0.15512E+01,-0.15525E+01,-0.15538E+01,-0.15550E+01, & - &-0.15563E+01,-0.15576E+01,-0.15588E+01,-0.15601E+01,-0.15613E+01, & - &-0.15626E+01,-0.15639E+01,-0.15651E+01,-0.15664E+01,-0.15676E+01, & - &-0.15689E+01,-0.15701E+01,-0.15714E+01,-0.15726E+01,-0.15739E+01, & - &-0.15751E+01,-0.15764E+01,-0.15776E+01,-0.15788E+01,-0.15801E+01, & - &-0.15813E+01,-0.15825E+01,-0.15838E+01,-0.15850E+01,-0.15862E+01, & - &-0.15875E+01,-0.15887E+01,-0.15899E+01,-0.15912E+01,-0.15924E+01, & - &-0.15936E+01,-0.15948E+01,-0.15961E+01,-0.15973E+01,-0.15985E+01, & - &-0.15997E+01,-0.16010E+01,-0.16022E+01,-0.16034E+01,-0.16046E+01, & - &-0.16058E+01,-0.16070E+01,-0.16082E+01,-0.16094E+01,-0.16107E+01, & - &-0.16119E+01,-0.16131E+01,-0.16143E+01,-0.16155E+01,-0.16167E+01/ - - DATA (BNC05M(I),I=601,700)/ & - &-0.16296E+01,-0.16415E+01,-0.16532E+01,-0.16649E+01,-0.16764E+01, & - &-0.16878E+01,-0.16992E+01,-0.17104E+01,-0.17216E+01,-0.17327E+01, & - &-0.17437E+01,-0.17546E+01,-0.17654E+01,-0.17761E+01,-0.17868E+01, & - &-0.17974E+01,-0.18079E+01,-0.18184E+01,-0.18287E+01,-0.18391E+01, & - &-0.18493E+01,-0.18595E+01,-0.18696E+01,-0.18796E+01,-0.18896E+01, & - &-0.18996E+01,-0.19094E+01,-0.19193E+01,-0.19290E+01,-0.19387E+01, & - &-0.19484E+01,-0.19580E+01,-0.19675E+01,-0.19770E+01,-0.19865E+01, & - &-0.19959E+01,-0.20053E+01,-0.20146E+01,-0.20238E+01,-0.20331E+01, & - &-0.20423E+01,-0.20514E+01,-0.20605E+01,-0.20695E+01,-0.20786E+01, & - &-0.20875E+01,-0.20965E+01,-0.21054E+01,-0.21143E+01,-0.21231E+01, & - &-0.21319E+01,-0.21407E+01,-0.21494E+01,-0.21581E+01,-0.21667E+01, & - &-0.21754E+01,-0.21840E+01,-0.21925E+01,-0.22011E+01,-0.22096E+01, & - &-0.22180E+01,-0.22265E+01,-0.22349E+01,-0.22433E+01,-0.22517E+01, & - &-0.22600E+01,-0.22683E+01,-0.22766E+01,-0.22848E+01,-0.22931E+01, & - &-0.23013E+01,-0.23095E+01,-0.23176E+01,-0.23257E+01,-0.23338E+01, & - &-0.23419E+01,-0.23500E+01,-0.23580E+01,-0.23661E+01,-0.23741E+01, & - &-0.23820E+01,-0.23900E+01,-0.23979E+01,-0.24058E+01,-0.24137E+01, & - &-0.24216E+01,-0.24294E+01,-0.24373E+01,-0.24451E+01,-0.24529E+01, & - &-0.24607E+01,-0.24684E+01,-0.24762E+01,-0.24839E+01,-0.24916E+01, & - &-0.24993E+01,-0.25070E+01,-0.25146E+01,-0.25223E+01,-0.25299E+01/ - - DATA (BNC05M(I),I=701,741)/ & - &-0.25375E+01,-0.25451E+01,-0.25526E+01,-0.25602E+01,-0.25677E+01, & - &-0.25753E+01,-0.25828E+01,-0.25903E+01,-0.25978E+01,-0.26052E+01, & - &-0.26127E+01,-0.26201E+01,-0.26276E+01,-0.26350E+01,-0.26424E+01, & - &-0.26498E+01,-0.26571E+01,-0.26645E+01,-0.26718E+01,-0.26792E+01, & - &-0.26865E+01,-0.26938E+01,-0.27011E+01,-0.27084E+01,-0.27157E+01, & - &-0.27229E+01,-0.27302E+01,-0.27374E+01,-0.27446E+01,-0.27519E+01, & - &-0.27591E+01,-0.27663E+01,-0.27734E+01,-0.27806E+01,-0.27878E+01, & - &-0.27949E+01,-0.28021E+01,-0.28092E+01,-0.28163E+01,-0.28234E+01, & - &-0.28305E+01 & - & / -! -! *** NH4Cl -! - DATA (BNC06M(I),I=1,100)/ & - &-0.50630E-01,-0.10830E+00,-0.13610E+00,-0.15521E+00,-0.16983E+00, & - &-0.18165E+00,-0.19155E+00,-0.20002E+00,-0.20740E+00,-0.21392E+00, & - &-0.21974E+00,-0.22498E+00,-0.22973E+00,-0.23406E+00,-0.23803E+00, & - &-0.24168E+00,-0.24506E+00,-0.24819E+00,-0.25111E+00,-0.25383E+00, & - &-0.25638E+00,-0.25876E+00,-0.26101E+00,-0.26312E+00,-0.26512E+00, & - &-0.26700E+00,-0.26879E+00,-0.27049E+00,-0.27210E+00,-0.27363E+00, & - &-0.27509E+00,-0.27649E+00,-0.27782E+00,-0.27910E+00,-0.28032E+00, & - &-0.28149E+00,-0.28262E+00,-0.28371E+00,-0.28475E+00,-0.28576E+00, & - &-0.28673E+00,-0.28767E+00,-0.28858E+00,-0.28946E+00,-0.29032E+00, & - &-0.29115E+00,-0.29195E+00,-0.29273E+00,-0.29350E+00,-0.29424E+00, & - &-0.29496E+00,-0.29566E+00,-0.29635E+00,-0.29702E+00,-0.29767E+00, & - &-0.29831E+00,-0.29894E+00,-0.29955E+00,-0.30014E+00,-0.30073E+00, & - &-0.30130E+00,-0.30185E+00,-0.30240E+00,-0.30293E+00,-0.30345E+00, & - &-0.30396E+00,-0.30445E+00,-0.30494E+00,-0.30541E+00,-0.30587E+00, & - &-0.30632E+00,-0.30675E+00,-0.30718E+00,-0.30759E+00,-0.30799E+00, & - &-0.30838E+00,-0.30876E+00,-0.30912E+00,-0.30948E+00,-0.30982E+00, & - &-0.31015E+00,-0.31046E+00,-0.31077E+00,-0.31106E+00,-0.31134E+00, & - &-0.31161E+00,-0.31187E+00,-0.31212E+00,-0.31235E+00,-0.31257E+00, & - &-0.31279E+00,-0.31299E+00,-0.31318E+00,-0.31336E+00,-0.31352E+00, & - &-0.31368E+00,-0.31383E+00,-0.31397E+00,-0.31410E+00,-0.31422E+00/ - - DATA (BNC06M(I),I=101,200)/ & - &-0.31433E+00,-0.31443E+00,-0.31452E+00,-0.31461E+00,-0.31469E+00, & - &-0.31475E+00,-0.31482E+00,-0.31487E+00,-0.31492E+00,-0.31496E+00, & - &-0.31499E+00,-0.31502E+00,-0.31505E+00,-0.31506E+00,-0.31508E+00, & - &-0.31508E+00,-0.31509E+00,-0.31509E+00,-0.31508E+00,-0.31507E+00, & - &-0.31506E+00,-0.31504E+00,-0.31502E+00,-0.31500E+00,-0.31497E+00, & - &-0.31494E+00,-0.31491E+00,-0.31487E+00,-0.31483E+00,-0.31479E+00, & - &-0.31475E+00,-0.31471E+00,-0.31466E+00,-0.31461E+00,-0.31456E+00, & - &-0.31451E+00,-0.31446E+00,-0.31441E+00,-0.31435E+00,-0.31430E+00, & - &-0.31424E+00,-0.31418E+00,-0.31412E+00,-0.31406E+00,-0.31400E+00, & - &-0.31393E+00,-0.31387E+00,-0.31381E+00,-0.31374E+00,-0.31367E+00, & - &-0.31361E+00,-0.31354E+00,-0.31347E+00,-0.31340E+00,-0.31334E+00, & - &-0.31327E+00,-0.31320E+00,-0.31313E+00,-0.31305E+00,-0.31298E+00, & - &-0.31291E+00,-0.31284E+00,-0.31277E+00,-0.31270E+00,-0.31262E+00, & - &-0.31255E+00,-0.31248E+00,-0.31240E+00,-0.31233E+00,-0.31226E+00, & - &-0.31218E+00,-0.31211E+00,-0.31204E+00,-0.31196E+00,-0.31189E+00, & - &-0.31182E+00,-0.31174E+00,-0.31167E+00,-0.31159E+00,-0.31152E+00, & - &-0.31145E+00,-0.31137E+00,-0.31130E+00,-0.31123E+00,-0.31115E+00, & - &-0.31108E+00,-0.31101E+00,-0.31094E+00,-0.31086E+00,-0.31079E+00, & - &-0.31072E+00,-0.31065E+00,-0.31058E+00,-0.31050E+00,-0.31043E+00, & - &-0.31036E+00,-0.31029E+00,-0.31022E+00,-0.31015E+00,-0.31008E+00/ - - DATA (BNC06M(I),I=201,300)/ & - &-0.31001E+00,-0.30994E+00,-0.30988E+00,-0.30981E+00,-0.30974E+00, & - &-0.30967E+00,-0.30960E+00,-0.30954E+00,-0.30947E+00,-0.30941E+00, & - &-0.30934E+00,-0.30928E+00,-0.30921E+00,-0.30915E+00,-0.30908E+00, & - &-0.30902E+00,-0.30896E+00,-0.30889E+00,-0.30883E+00,-0.30877E+00, & - &-0.30871E+00,-0.30865E+00,-0.30859E+00,-0.30853E+00,-0.30847E+00, & - &-0.30841E+00,-0.30835E+00,-0.30830E+00,-0.30824E+00,-0.30818E+00, & - &-0.30813E+00,-0.30807E+00,-0.30802E+00,-0.30796E+00,-0.30791E+00, & - &-0.30786E+00,-0.30780E+00,-0.30775E+00,-0.30770E+00,-0.30765E+00, & - &-0.30760E+00,-0.30755E+00,-0.30750E+00,-0.30745E+00,-0.30740E+00, & - &-0.30736E+00,-0.30731E+00,-0.30726E+00,-0.30722E+00,-0.30717E+00, & - &-0.30713E+00,-0.30708E+00,-0.30704E+00,-0.30700E+00,-0.30696E+00, & - &-0.30692E+00,-0.30687E+00,-0.30683E+00,-0.30680E+00,-0.30676E+00, & - &-0.30672E+00,-0.30668E+00,-0.30664E+00,-0.30661E+00,-0.30657E+00, & - &-0.30654E+00,-0.30650E+00,-0.30647E+00,-0.30644E+00,-0.30640E+00, & - &-0.30637E+00,-0.30634E+00,-0.30631E+00,-0.30628E+00,-0.30625E+00, & - &-0.30622E+00,-0.30620E+00,-0.30617E+00,-0.30614E+00,-0.30612E+00, & - &-0.30609E+00,-0.30607E+00,-0.30604E+00,-0.30602E+00,-0.30600E+00, & - &-0.30598E+00,-0.30595E+00,-0.30593E+00,-0.30591E+00,-0.30590E+00, & - &-0.30588E+00,-0.30586E+00,-0.30584E+00,-0.30583E+00,-0.30581E+00, & - &-0.30579E+00,-0.30578E+00,-0.30577E+00,-0.30575E+00,-0.30574E+00/ - - DATA (BNC06M(I),I=301,400)/ & - &-0.30573E+00,-0.30572E+00,-0.30571E+00,-0.30570E+00,-0.30569E+00, & - &-0.30568E+00,-0.30567E+00,-0.30567E+00,-0.30566E+00,-0.30565E+00, & - &-0.30565E+00,-0.30564E+00,-0.30564E+00,-0.30564E+00,-0.30563E+00, & - &-0.30563E+00,-0.30563E+00,-0.30563E+00,-0.30563E+00,-0.30563E+00, & - &-0.30564E+00,-0.30564E+00,-0.30564E+00,-0.30564E+00,-0.30565E+00, & - &-0.30565E+00,-0.30566E+00,-0.30567E+00,-0.30567E+00,-0.30568E+00, & - &-0.30569E+00,-0.30570E+00,-0.30571E+00,-0.30572E+00,-0.30573E+00, & - &-0.30574E+00,-0.30575E+00,-0.30577E+00,-0.30578E+00,-0.30580E+00, & - &-0.30581E+00,-0.30583E+00,-0.30584E+00,-0.30586E+00,-0.30588E+00, & - &-0.30590E+00,-0.30592E+00,-0.30594E+00,-0.30596E+00,-0.30598E+00, & - &-0.30600E+00,-0.30602E+00,-0.30605E+00,-0.30607E+00,-0.30609E+00, & - &-0.30612E+00,-0.30614E+00,-0.30617E+00,-0.30620E+00,-0.30623E+00, & - &-0.30625E+00,-0.30628E+00,-0.30631E+00,-0.30634E+00,-0.30637E+00, & - &-0.30641E+00,-0.30644E+00,-0.30647E+00,-0.30650E+00,-0.30654E+00, & - &-0.30657E+00,-0.30661E+00,-0.30665E+00,-0.30668E+00,-0.30672E+00, & - &-0.30676E+00,-0.30680E+00,-0.30684E+00,-0.30688E+00,-0.30692E+00, & - &-0.30696E+00,-0.30700E+00,-0.30704E+00,-0.30709E+00,-0.30713E+00, & - &-0.30717E+00,-0.30722E+00,-0.30726E+00,-0.30731E+00,-0.30736E+00, & - &-0.30741E+00,-0.30745E+00,-0.30750E+00,-0.30755E+00,-0.30760E+00, & - &-0.30765E+00,-0.30770E+00,-0.30776E+00,-0.30781E+00,-0.30786E+00/ - - DATA (BNC06M(I),I=401,500)/ & - &-0.30792E+00,-0.30797E+00,-0.30803E+00,-0.30808E+00,-0.30814E+00, & - &-0.30820E+00,-0.30825E+00,-0.30831E+00,-0.30837E+00,-0.30843E+00, & - &-0.30849E+00,-0.30855E+00,-0.30861E+00,-0.30867E+00,-0.30874E+00, & - &-0.30880E+00,-0.30886E+00,-0.30893E+00,-0.30899E+00,-0.30906E+00, & - &-0.30912E+00,-0.30919E+00,-0.30926E+00,-0.30932E+00,-0.30939E+00, & - &-0.30946E+00,-0.30953E+00,-0.30960E+00,-0.30967E+00,-0.30974E+00, & - &-0.30982E+00,-0.30989E+00,-0.30996E+00,-0.31004E+00,-0.31011E+00, & - &-0.31019E+00,-0.31026E+00,-0.31034E+00,-0.31041E+00,-0.31049E+00, & - &-0.31057E+00,-0.31065E+00,-0.31073E+00,-0.31081E+00,-0.31089E+00, & - &-0.31097E+00,-0.31105E+00,-0.31113E+00,-0.31121E+00,-0.31130E+00, & - &-0.31138E+00,-0.31146E+00,-0.31155E+00,-0.31163E+00,-0.31172E+00, & - &-0.31181E+00,-0.31189E+00,-0.31198E+00,-0.31207E+00,-0.31216E+00, & - &-0.31225E+00,-0.31234E+00,-0.31243E+00,-0.31252E+00,-0.31261E+00, & - &-0.31270E+00,-0.31279E+00,-0.31289E+00,-0.31298E+00,-0.31308E+00, & - &-0.31317E+00,-0.31327E+00,-0.31336E+00,-0.31346E+00,-0.31356E+00, & - &-0.31365E+00,-0.31375E+00,-0.31385E+00,-0.31395E+00,-0.31405E+00, & - &-0.31415E+00,-0.31425E+00,-0.31435E+00,-0.31445E+00,-0.31456E+00, & - &-0.31466E+00,-0.31476E+00,-0.31487E+00,-0.31497E+00,-0.31508E+00, & - &-0.31518E+00,-0.31529E+00,-0.31539E+00,-0.31550E+00,-0.31561E+00, & - &-0.31572E+00,-0.31583E+00,-0.31594E+00,-0.31605E+00,-0.31616E+00/ - - DATA (BNC06M(I),I=501,600)/ & - &-0.31627E+00,-0.31638E+00,-0.31649E+00,-0.31660E+00,-0.31672E+00, & - &-0.31683E+00,-0.31694E+00,-0.31706E+00,-0.31717E+00,-0.31729E+00, & - &-0.31740E+00,-0.31752E+00,-0.31764E+00,-0.31776E+00,-0.31787E+00, & - &-0.31799E+00,-0.31811E+00,-0.31823E+00,-0.31835E+00,-0.31847E+00, & - &-0.31859E+00,-0.31871E+00,-0.31884E+00,-0.31896E+00,-0.31908E+00, & - &-0.31921E+00,-0.31933E+00,-0.31945E+00,-0.31958E+00,-0.31971E+00, & - &-0.31983E+00,-0.31996E+00,-0.32009E+00,-0.32021E+00,-0.32034E+00, & - &-0.32047E+00,-0.32060E+00,-0.32073E+00,-0.32086E+00,-0.32099E+00, & - &-0.32112E+00,-0.32125E+00,-0.32138E+00,-0.32151E+00,-0.32165E+00, & - &-0.32178E+00,-0.32191E+00,-0.32205E+00,-0.32218E+00,-0.32232E+00, & - &-0.32246E+00,-0.32259E+00,-0.32273E+00,-0.32287E+00,-0.32300E+00, & - &-0.32314E+00,-0.32328E+00,-0.32342E+00,-0.32356E+00,-0.32370E+00, & - &-0.32384E+00,-0.32398E+00,-0.32412E+00,-0.32426E+00,-0.32440E+00, & - &-0.32455E+00,-0.32469E+00,-0.32483E+00,-0.32498E+00,-0.32512E+00, & - &-0.32527E+00,-0.32541E+00,-0.32556E+00,-0.32571E+00,-0.32585E+00, & - &-0.32600E+00,-0.32615E+00,-0.32630E+00,-0.32644E+00,-0.32659E+00, & - &-0.32674E+00,-0.32689E+00,-0.32704E+00,-0.32719E+00,-0.32735E+00, & - &-0.32750E+00,-0.32765E+00,-0.32780E+00,-0.32796E+00,-0.32811E+00, & - &-0.32826E+00,-0.32842E+00,-0.32857E+00,-0.32873E+00,-0.32888E+00, & - &-0.32904E+00,-0.32920E+00,-0.32935E+00,-0.32951E+00,-0.32967E+00/ - - DATA (BNC06M(I),I=601,700)/ & - &-0.33140E+00,-0.33305E+00,-0.33474E+00,-0.33647E+00,-0.33824E+00, & - &-0.34005E+00,-0.34190E+00,-0.34379E+00,-0.34571E+00,-0.34767E+00, & - &-0.34966E+00,-0.35169E+00,-0.35376E+00,-0.35586E+00,-0.35799E+00, & - &-0.36016E+00,-0.36235E+00,-0.36458E+00,-0.36684E+00,-0.36913E+00, & - &-0.37146E+00,-0.37381E+00,-0.37619E+00,-0.37859E+00,-0.38103E+00, & - &-0.38349E+00,-0.38598E+00,-0.38850E+00,-0.39105E+00,-0.39361E+00, & - &-0.39621E+00,-0.39883E+00,-0.40147E+00,-0.40414E+00,-0.40684E+00, & - &-0.40955E+00,-0.41229E+00,-0.41506E+00,-0.41784E+00,-0.42065E+00, & - &-0.42348E+00,-0.42633E+00,-0.42920E+00,-0.43209E+00,-0.43500E+00, & - &-0.43793E+00,-0.44089E+00,-0.44386E+00,-0.44685E+00,-0.44986E+00, & - &-0.45289E+00,-0.45594E+00,-0.45901E+00,-0.46209E+00,-0.46519E+00, & - &-0.46831E+00,-0.47145E+00,-0.47460E+00,-0.47777E+00,-0.48096E+00, & - &-0.48416E+00,-0.48738E+00,-0.49062E+00,-0.49387E+00,-0.49713E+00, & - &-0.50042E+00,-0.50371E+00,-0.50702E+00,-0.51035E+00,-0.51369E+00, & - &-0.51705E+00,-0.52042E+00,-0.52380E+00,-0.52720E+00,-0.53061E+00, & - &-0.53403E+00,-0.53747E+00,-0.54092E+00,-0.54438E+00,-0.54786E+00, & - &-0.55135E+00,-0.55485E+00,-0.55836E+00,-0.56189E+00,-0.56543E+00, & - &-0.56898E+00,-0.57254E+00,-0.57611E+00,-0.57970E+00,-0.58329E+00, & - &-0.58690E+00,-0.59052E+00,-0.59415E+00,-0.59779E+00,-0.60144E+00, & - &-0.60510E+00,-0.60877E+00,-0.61245E+00,-0.61614E+00,-0.61985E+00/ - - DATA (BNC06M(I),I=701,741)/ & - &-0.62356E+00,-0.62728E+00,-0.63101E+00,-0.63475E+00,-0.63851E+00, & - &-0.64227E+00,-0.64604E+00,-0.64982E+00,-0.65360E+00,-0.65740E+00, & - &-0.66121E+00,-0.66502E+00,-0.66885E+00,-0.67268E+00,-0.67652E+00, & - &-0.68037E+00,-0.68423E+00,-0.68809E+00,-0.69197E+00,-0.69585E+00, & - &-0.69974E+00,-0.70364E+00,-0.70755E+00,-0.71146E+00,-0.71539E+00, & - &-0.71932E+00,-0.72325E+00,-0.72720E+00,-0.73115E+00,-0.73511E+00, & - &-0.73908E+00,-0.74305E+00,-0.74703E+00,-0.75102E+00,-0.75502E+00, & - &-0.75902E+00,-0.76303E+00,-0.76705E+00,-0.77107E+00,-0.77510E+00, & - &-0.77914E+00 & - & / -! -! *** (2H,SO4) -! - DATA (BNC07M(I),I=1,100)/ & - &-0.10274E+00,-0.22462E+00,-0.28619E+00,-0.33008E+00,-0.36478E+00, & - &-0.39372E+00,-0.41868E+00,-0.44069E+00,-0.46044E+00,-0.47838E+00, & - &-0.49484E+00,-0.51007E+00,-0.52427E+00,-0.53757E+00,-0.55009E+00, & - &-0.56194E+00,-0.57319E+00,-0.58390E+00,-0.59414E+00,-0.60394E+00, & - &-0.61335E+00,-0.62240E+00,-0.63113E+00,-0.63956E+00,-0.64771E+00, & - &-0.65561E+00,-0.66327E+00,-0.67070E+00,-0.67794E+00,-0.68498E+00, & - &-0.69184E+00,-0.69853E+00,-0.70506E+00,-0.71145E+00,-0.71769E+00, & - &-0.72379E+00,-0.72977E+00,-0.73563E+00,-0.74138E+00,-0.74701E+00, & - &-0.75254E+00,-0.75798E+00,-0.76331E+00,-0.76856E+00,-0.77372E+00, & - &-0.77880E+00,-0.78380E+00,-0.78872E+00,-0.79357E+00,-0.79835E+00, & - &-0.80306E+00,-0.80771E+00,-0.81229E+00,-0.81682E+00,-0.82128E+00, & - &-0.82569E+00,-0.83005E+00,-0.83435E+00,-0.83860E+00,-0.84281E+00, & - &-0.84697E+00,-0.85108E+00,-0.85515E+00,-0.85917E+00,-0.86316E+00, & - &-0.86710E+00,-0.87101E+00,-0.87488E+00,-0.87871E+00,-0.88251E+00, & - &-0.88628E+00,-0.89001E+00,-0.89371E+00,-0.89738E+00,-0.90102E+00, & - &-0.90463E+00,-0.90821E+00,-0.91176E+00,-0.91529E+00,-0.91879E+00, & - &-0.92227E+00,-0.92572E+00,-0.92915E+00,-0.93256E+00,-0.93594E+00, & - &-0.93930E+00,-0.94264E+00,-0.94596E+00,-0.94926E+00,-0.95253E+00, & - &-0.95579E+00,-0.95903E+00,-0.96225E+00,-0.96546E+00,-0.96864E+00, & - &-0.97181E+00,-0.97496E+00,-0.97810E+00,-0.98121E+00,-0.98432E+00/ - - DATA (BNC07M(I),I=101,200)/ & - &-0.98740E+00,-0.99047E+00,-0.99353E+00,-0.99657E+00,-0.99960E+00, & - &-0.10026E+01,-0.10056E+01,-0.10086E+01,-0.10116E+01,-0.10145E+01, & - &-0.10175E+01,-0.10204E+01,-0.10233E+01,-0.10262E+01,-0.10291E+01, & - &-0.10320E+01,-0.10349E+01,-0.10377E+01,-0.10406E+01,-0.10434E+01, & - &-0.10462E+01,-0.10490E+01,-0.10518E+01,-0.10546E+01,-0.10574E+01, & - &-0.10601E+01,-0.10629E+01,-0.10656E+01,-0.10684E+01,-0.10711E+01, & - &-0.10738E+01,-0.10765E+01,-0.10792E+01,-0.10819E+01,-0.10846E+01, & - &-0.10872E+01,-0.10899E+01,-0.10926E+01,-0.10952E+01,-0.10978E+01, & - &-0.11004E+01,-0.11031E+01,-0.11057E+01,-0.11083E+01,-0.11108E+01, & - &-0.11134E+01,-0.11160E+01,-0.11186E+01,-0.11211E+01,-0.11237E+01, & - &-0.11262E+01,-0.11287E+01,-0.11313E+01,-0.11338E+01,-0.11363E+01, & - &-0.11388E+01,-0.11413E+01,-0.11438E+01,-0.11463E+01,-0.11487E+01, & - &-0.11512E+01,-0.11537E+01,-0.11561E+01,-0.11586E+01,-0.11610E+01, & - &-0.11634E+01,-0.11659E+01,-0.11683E+01,-0.11707E+01,-0.11731E+01, & - &-0.11755E+01,-0.11779E+01,-0.11803E+01,-0.11827E+01,-0.11851E+01, & - &-0.11874E+01,-0.11898E+01,-0.11922E+01,-0.11945E+01,-0.11969E+01, & - &-0.11992E+01,-0.12016E+01,-0.12039E+01,-0.12062E+01,-0.12086E+01, & - &-0.12109E+01,-0.12132E+01,-0.12155E+01,-0.12178E+01,-0.12201E+01, & - &-0.12224E+01,-0.12247E+01,-0.12270E+01,-0.12293E+01,-0.12315E+01, & - &-0.12338E+01,-0.12361E+01,-0.12383E+01,-0.12406E+01,-0.12428E+01/ - - DATA (BNC07M(I),I=201,300)/ & - &-0.12451E+01,-0.12473E+01,-0.12496E+01,-0.12518E+01,-0.12540E+01, & - &-0.12563E+01,-0.12585E+01,-0.12607E+01,-0.12629E+01,-0.12651E+01, & - &-0.12673E+01,-0.12695E+01,-0.12717E+01,-0.12739E+01,-0.12761E+01, & - &-0.12783E+01,-0.12805E+01,-0.12827E+01,-0.12848E+01,-0.12870E+01, & - &-0.12892E+01,-0.12913E+01,-0.12935E+01,-0.12956E+01,-0.12978E+01, & - &-0.12999E+01,-0.13021E+01,-0.13042E+01,-0.13064E+01,-0.13085E+01, & - &-0.13106E+01,-0.13128E+01,-0.13149E+01,-0.13170E+01,-0.13191E+01, & - &-0.13212E+01,-0.13233E+01,-0.13254E+01,-0.13275E+01,-0.13296E+01, & - &-0.13317E+01,-0.13338E+01,-0.13359E+01,-0.13380E+01,-0.13401E+01, & - &-0.13422E+01,-0.13443E+01,-0.13463E+01,-0.13484E+01,-0.13505E+01, & - &-0.13526E+01,-0.13546E+01,-0.13567E+01,-0.13587E+01,-0.13608E+01, & - &-0.13628E+01,-0.13649E+01,-0.13669E+01,-0.13690E+01,-0.13710E+01, & - &-0.13731E+01,-0.13751E+01,-0.13771E+01,-0.13792E+01,-0.13812E+01, & - &-0.13832E+01,-0.13852E+01,-0.13873E+01,-0.13893E+01,-0.13913E+01, & - &-0.13933E+01,-0.13953E+01,-0.13973E+01,-0.13993E+01,-0.14013E+01, & - &-0.14033E+01,-0.14053E+01,-0.14073E+01,-0.14093E+01,-0.14113E+01, & - &-0.14133E+01,-0.14153E+01,-0.14173E+01,-0.14192E+01,-0.14212E+01, & - &-0.14232E+01,-0.14252E+01,-0.14271E+01,-0.14291E+01,-0.14311E+01, & - &-0.14330E+01,-0.14350E+01,-0.14370E+01,-0.14389E+01,-0.14409E+01, & - &-0.14428E+01,-0.14448E+01,-0.14467E+01,-0.14487E+01,-0.14506E+01/ - - DATA (BNC07M(I),I=301,400)/ & - &-0.14526E+01,-0.14545E+01,-0.14564E+01,-0.14584E+01,-0.14603E+01, & - &-0.14622E+01,-0.14642E+01,-0.14661E+01,-0.14680E+01,-0.14700E+01, & - &-0.14719E+01,-0.14738E+01,-0.14757E+01,-0.14776E+01,-0.14795E+01, & - &-0.14815E+01,-0.14834E+01,-0.14853E+01,-0.14872E+01,-0.14891E+01, & - &-0.14910E+01,-0.14929E+01,-0.14948E+01,-0.14967E+01,-0.14986E+01, & - &-0.15005E+01,-0.15024E+01,-0.15043E+01,-0.15062E+01,-0.15080E+01, & - &-0.15099E+01,-0.15118E+01,-0.15137E+01,-0.15156E+01,-0.15174E+01, & - &-0.15193E+01,-0.15212E+01,-0.15231E+01,-0.15249E+01,-0.15268E+01, & - &-0.15287E+01,-0.15305E+01,-0.15324E+01,-0.15343E+01,-0.15361E+01, & - &-0.15380E+01,-0.15399E+01,-0.15417E+01,-0.15436E+01,-0.15454E+01, & - &-0.15473E+01,-0.15491E+01,-0.15510E+01,-0.15528E+01,-0.15547E+01, & - &-0.15565E+01,-0.15583E+01,-0.15602E+01,-0.15620E+01,-0.15639E+01, & - &-0.15657E+01,-0.15675E+01,-0.15694E+01,-0.15712E+01,-0.15730E+01, & - &-0.15749E+01,-0.15767E+01,-0.15785E+01,-0.15803E+01,-0.15822E+01, & - &-0.15840E+01,-0.15858E+01,-0.15876E+01,-0.15894E+01,-0.15913E+01, & - &-0.15931E+01,-0.15949E+01,-0.15967E+01,-0.15985E+01,-0.16003E+01, & - &-0.16021E+01,-0.16039E+01,-0.16057E+01,-0.16075E+01,-0.16093E+01, & - &-0.16111E+01,-0.16129E+01,-0.16147E+01,-0.16165E+01,-0.16183E+01, & - &-0.16201E+01,-0.16219E+01,-0.16237E+01,-0.16255E+01,-0.16273E+01, & - &-0.16291E+01,-0.16309E+01,-0.16326E+01,-0.16344E+01,-0.16362E+01/ - - DATA (BNC07M(I),I=401,500)/ & - &-0.16380E+01,-0.16398E+01,-0.16415E+01,-0.16433E+01,-0.16451E+01, & - &-0.16469E+01,-0.16486E+01,-0.16504E+01,-0.16522E+01,-0.16540E+01, & - &-0.16557E+01,-0.16575E+01,-0.16593E+01,-0.16610E+01,-0.16628E+01, & - &-0.16646E+01,-0.16663E+01,-0.16681E+01,-0.16698E+01,-0.16716E+01, & - &-0.16734E+01,-0.16751E+01,-0.16769E+01,-0.16786E+01,-0.16804E+01, & - &-0.16821E+01,-0.16839E+01,-0.16856E+01,-0.16874E+01,-0.16891E+01, & - &-0.16909E+01,-0.16926E+01,-0.16944E+01,-0.16961E+01,-0.16978E+01, & - &-0.16996E+01,-0.17013E+01,-0.17031E+01,-0.17048E+01,-0.17065E+01, & - &-0.17083E+01,-0.17100E+01,-0.17117E+01,-0.17135E+01,-0.17152E+01, & - &-0.17169E+01,-0.17187E+01,-0.17204E+01,-0.17221E+01,-0.17238E+01, & - &-0.17256E+01,-0.17273E+01,-0.17290E+01,-0.17307E+01,-0.17325E+01, & - &-0.17342E+01,-0.17359E+01,-0.17376E+01,-0.17393E+01,-0.17411E+01, & - &-0.17428E+01,-0.17445E+01,-0.17462E+01,-0.17479E+01,-0.17496E+01, & - &-0.17513E+01,-0.17530E+01,-0.17547E+01,-0.17565E+01,-0.17582E+01, & - &-0.17599E+01,-0.17616E+01,-0.17633E+01,-0.17650E+01,-0.17667E+01, & - &-0.17684E+01,-0.17701E+01,-0.17718E+01,-0.17735E+01,-0.17752E+01, & - &-0.17769E+01,-0.17786E+01,-0.17803E+01,-0.17820E+01,-0.17836E+01, & - &-0.17853E+01,-0.17870E+01,-0.17887E+01,-0.17904E+01,-0.17921E+01, & - &-0.17938E+01,-0.17955E+01,-0.17972E+01,-0.17988E+01,-0.18005E+01, & - &-0.18022E+01,-0.18039E+01,-0.18056E+01,-0.18073E+01,-0.18089E+01/ - - DATA (BNC07M(I),I=501,600)/ & - &-0.18106E+01,-0.18123E+01,-0.18140E+01,-0.18157E+01,-0.18173E+01, & - &-0.18190E+01,-0.18207E+01,-0.18223E+01,-0.18240E+01,-0.18257E+01, & - &-0.18274E+01,-0.18290E+01,-0.18307E+01,-0.18324E+01,-0.18340E+01, & - &-0.18357E+01,-0.18374E+01,-0.18390E+01,-0.18407E+01,-0.18424E+01, & - &-0.18440E+01,-0.18457E+01,-0.18474E+01,-0.18490E+01,-0.18507E+01, & - &-0.18523E+01,-0.18540E+01,-0.18556E+01,-0.18573E+01,-0.18590E+01, & - &-0.18606E+01,-0.18623E+01,-0.18639E+01,-0.18656E+01,-0.18672E+01, & - &-0.18689E+01,-0.18705E+01,-0.18722E+01,-0.18738E+01,-0.18755E+01, & - &-0.18771E+01,-0.18788E+01,-0.18804E+01,-0.18821E+01,-0.18837E+01, & - &-0.18854E+01,-0.18870E+01,-0.18886E+01,-0.18903E+01,-0.18919E+01, & - &-0.18936E+01,-0.18952E+01,-0.18968E+01,-0.18985E+01,-0.19001E+01, & - &-0.19018E+01,-0.19034E+01,-0.19050E+01,-0.19067E+01,-0.19083E+01, & - &-0.19099E+01,-0.19116E+01,-0.19132E+01,-0.19148E+01,-0.19165E+01, & - &-0.19181E+01,-0.19197E+01,-0.19214E+01,-0.19230E+01,-0.19246E+01, & - &-0.19262E+01,-0.19279E+01,-0.19295E+01,-0.19311E+01,-0.19327E+01, & - &-0.19344E+01,-0.19360E+01,-0.19376E+01,-0.19392E+01,-0.19408E+01, & - &-0.19425E+01,-0.19441E+01,-0.19457E+01,-0.19473E+01,-0.19489E+01, & - &-0.19506E+01,-0.19522E+01,-0.19538E+01,-0.19554E+01,-0.19570E+01, & - &-0.19586E+01,-0.19602E+01,-0.19619E+01,-0.19635E+01,-0.19651E+01, & - &-0.19667E+01,-0.19683E+01,-0.19699E+01,-0.19715E+01,-0.19731E+01/ - - DATA (BNC07M(I),I=601,700)/ & - &-0.19905E+01,-0.20065E+01,-0.20224E+01,-0.20383E+01,-0.20541E+01, & - &-0.20698E+01,-0.20856E+01,-0.21012E+01,-0.21168E+01,-0.21324E+01, & - &-0.21479E+01,-0.21634E+01,-0.21788E+01,-0.21942E+01,-0.22096E+01, & - &-0.22249E+01,-0.22401E+01,-0.22554E+01,-0.22705E+01,-0.22857E+01, & - &-0.23008E+01,-0.23159E+01,-0.23309E+01,-0.23459E+01,-0.23609E+01, & - &-0.23758E+01,-0.23907E+01,-0.24056E+01,-0.24204E+01,-0.24352E+01, & - &-0.24500E+01,-0.24647E+01,-0.24795E+01,-0.24941E+01,-0.25088E+01, & - &-0.25234E+01,-0.25380E+01,-0.25526E+01,-0.25672E+01,-0.25817E+01, & - &-0.25962E+01,-0.26107E+01,-0.26251E+01,-0.26395E+01,-0.26539E+01, & - &-0.26683E+01,-0.26827E+01,-0.26970E+01,-0.27113E+01,-0.27256E+01, & - &-0.27399E+01,-0.27541E+01,-0.27683E+01,-0.27825E+01,-0.27967E+01, & - &-0.28109E+01,-0.28250E+01,-0.28391E+01,-0.28532E+01,-0.28673E+01, & - &-0.28814E+01,-0.28954E+01,-0.29094E+01,-0.29235E+01,-0.29374E+01, & - &-0.29514E+01,-0.29654E+01,-0.29793E+01,-0.29932E+01,-0.30071E+01, & - &-0.30210E+01,-0.30349E+01,-0.30487E+01,-0.30626E+01,-0.30764E+01, & - &-0.30902E+01,-0.31040E+01,-0.31178E+01,-0.31315E+01,-0.31453E+01, & - &-0.31590E+01,-0.31727E+01,-0.31864E+01,-0.32001E+01,-0.32138E+01, & - &-0.32274E+01,-0.32411E+01,-0.32547E+01,-0.32683E+01,-0.32819E+01, & - &-0.32955E+01,-0.33091E+01,-0.33226E+01,-0.33362E+01,-0.33497E+01, & - &-0.33632E+01,-0.33767E+01,-0.33902E+01,-0.34037E+01,-0.34172E+01/ - - DATA (BNC07M(I),I=701,741)/ & - &-0.34307E+01,-0.34441E+01,-0.34576E+01,-0.34710E+01,-0.34844E+01, & - &-0.34978E+01,-0.35112E+01,-0.35246E+01,-0.35380E+01,-0.35513E+01, & - &-0.35647E+01,-0.35780E+01,-0.35913E+01,-0.36046E+01,-0.36179E+01, & - &-0.36312E+01,-0.36445E+01,-0.36578E+01,-0.36711E+01,-0.36843E+01, & - &-0.36976E+01,-0.37108E+01,-0.37240E+01,-0.37372E+01,-0.37504E+01, & - &-0.37636E+01,-0.37768E+01,-0.37900E+01,-0.38032E+01,-0.38163E+01, & - &-0.38295E+01,-0.38426E+01,-0.38557E+01,-0.38689E+01,-0.38820E+01, & - &-0.38951E+01,-0.39082E+01,-0.39213E+01,-0.39343E+01,-0.39474E+01, & - &-0.39605E+01 & - & / -! -! *** (H,HSO4) -! - DATA (BNC08M(I),I=1,100)/ & - &-0.47406E-01,-0.92542E-01,-0.10989E+00,-0.11949E+00,-0.12516E+00, & - &-0.12837E+00,-0.12988E+00,-0.13012E+00,-0.12936E+00,-0.12778E+00, & - &-0.12553E+00,-0.12268E+00,-0.11932E+00,-0.11550E+00,-0.11127E+00, & - &-0.10666E+00,-0.10171E+00,-0.96432E-01,-0.90858E-01,-0.85004E-01, & - &-0.78885E-01,-0.72517E-01,-0.65912E-01,-0.59082E-01,-0.52037E-01, & - &-0.44788E-01,-0.37343E-01,-0.29710E-01,-0.21898E-01,-0.13914E-01, & - &-0.57643E-02, 0.25435E-02, 0.11003E-01, 0.19609E-01, 0.28355E-01, & - & 0.37235E-01, 0.46244E-01, 0.55377E-01, 0.64628E-01, 0.73993E-01, & - & 0.83468E-01, 0.93047E-01, 0.10273E+00, 0.11250E+00, 0.12237E+00, & - & 0.13232E+00, 0.14236E+00, 0.15248E+00, 0.16268E+00, 0.17295E+00, & - & 0.18330E+00, 0.19371E+00, 0.20419E+00, 0.21473E+00, 0.22534E+00, & - & 0.23600E+00, 0.24672E+00, 0.25750E+00, 0.26834E+00, 0.27922E+00, & - & 0.29016E+00, 0.30116E+00, 0.31220E+00, 0.32330E+00, 0.33445E+00, & - & 0.34564E+00, 0.35689E+00, 0.36820E+00, 0.37955E+00, 0.39095E+00, & - & 0.40241E+00, 0.41392E+00, 0.42549E+00, 0.43711E+00, 0.44879E+00, & - & 0.46052E+00, 0.47232E+00, 0.48417E+00, 0.49608E+00, 0.50805E+00, & - & 0.52009E+00, 0.53219E+00, 0.54435E+00, 0.55657E+00, 0.56886E+00, & - & 0.58121E+00, 0.59362E+00, 0.60610E+00, 0.61865E+00, 0.63125E+00, & - & 0.64392E+00, 0.65665E+00, 0.66945E+00, 0.68230E+00, 0.69522E+00, & - & 0.70819E+00, 0.72121E+00, 0.73429E+00, 0.74743E+00, 0.76061E+00/ - - DATA (BNC08M(I),I=101,200)/ & - & 0.77385E+00, 0.78713E+00, 0.80045E+00, 0.81382E+00, 0.82722E+00, & - & 0.84066E+00, 0.85414E+00, 0.86765E+00, 0.88119E+00, 0.89476E+00, & - & 0.90835E+00, 0.92196E+00, 0.93559E+00, 0.94924E+00, 0.96290E+00, & - & 0.97658E+00, 0.99027E+00, 0.10040E+01, 0.10177E+01, 0.10314E+01, & - & 0.10451E+01, 0.10588E+01, 0.10725E+01, 0.10862E+01, 0.10999E+01, & - & 0.11136E+01, 0.11273E+01, 0.11409E+01, 0.11546E+01, 0.11682E+01, & - & 0.11819E+01, 0.11955E+01, 0.12091E+01, 0.12227E+01, 0.12363E+01, & - & 0.12498E+01, 0.12633E+01, 0.12769E+01, 0.12904E+01, 0.13038E+01, & - & 0.13173E+01, 0.13307E+01, 0.13441E+01, 0.13575E+01, 0.13709E+01, & - & 0.13842E+01, 0.13976E+01, 0.14108E+01, 0.14241E+01, 0.14374E+01, & - & 0.14506E+01, 0.14638E+01, 0.14769E+01, 0.14901E+01, 0.15032E+01, & - & 0.15163E+01, 0.15294E+01, 0.15424E+01, 0.15554E+01, 0.15684E+01, & - & 0.15814E+01, 0.15943E+01, 0.16072E+01, 0.16201E+01, 0.16329E+01, & - & 0.16458E+01, 0.16586E+01, 0.16713E+01, 0.16841E+01, 0.16968E+01, & - & 0.17095E+01, 0.17221E+01, 0.17348E+01, 0.17474E+01, 0.17599E+01, & - & 0.17725E+01, 0.17850E+01, 0.17975E+01, 0.18100E+01, 0.18224E+01, & - & 0.18348E+01, 0.18472E+01, 0.18596E+01, 0.18719E+01, 0.18842E+01, & - & 0.18965E+01, 0.19087E+01, 0.19210E+01, 0.19332E+01, 0.19453E+01, & - & 0.19575E+01, 0.19696E+01, 0.19817E+01, 0.19937E+01, 0.20057E+01, & - & 0.20177E+01, 0.20297E+01, 0.20417E+01, 0.20536E+01, 0.20655E+01/ - - DATA (BNC08M(I),I=201,300)/ & - & 0.20773E+01, 0.20892E+01, 0.21010E+01, 0.21128E+01, 0.21245E+01, & - & 0.21363E+01, 0.21480E+01, 0.21597E+01, 0.21713E+01, 0.21829E+01, & - & 0.21945E+01, 0.22061E+01, 0.22177E+01, 0.22292E+01, 0.22407E+01, & - & 0.22521E+01, 0.22636E+01, 0.22750E+01, 0.22864E+01, 0.22978E+01, & - & 0.23091E+01, 0.23204E+01, 0.23317E+01, 0.23430E+01, 0.23542E+01, & - & 0.23654E+01, 0.23766E+01, 0.23878E+01, 0.23989E+01, 0.24100E+01, & - & 0.24211E+01, 0.24322E+01, 0.24432E+01, 0.24542E+01, 0.24652E+01, & - & 0.24762E+01, 0.24871E+01, 0.24980E+01, 0.25089E+01, 0.25198E+01, & - & 0.25306E+01, 0.25414E+01, 0.25522E+01, 0.25630E+01, 0.25737E+01, & - & 0.25845E+01, 0.25952E+01, 0.26058E+01, 0.26165E+01, 0.26271E+01, & - & 0.26377E+01, 0.26483E+01, 0.26589E+01, 0.26694E+01, 0.26799E+01, & - & 0.26904E+01, 0.27009E+01, 0.27113E+01, 0.27217E+01, 0.27321E+01, & - & 0.27425E+01, 0.27528E+01, 0.27632E+01, 0.27735E+01, 0.27838E+01, & - & 0.27940E+01, 0.28043E+01, 0.28145E+01, 0.28247E+01, 0.28348E+01, & - & 0.28450E+01, 0.28551E+01, 0.28652E+01, 0.28753E+01, 0.28854E+01, & - & 0.28954E+01, 0.29055E+01, 0.29155E+01, 0.29254E+01, 0.29354E+01, & - & 0.29453E+01, 0.29552E+01, 0.29651E+01, 0.29750E+01, 0.29849E+01, & - & 0.29947E+01, 0.30045E+01, 0.30143E+01, 0.30241E+01, 0.30338E+01, & - & 0.30436E+01, 0.30533E+01, 0.30630E+01, 0.30726E+01, 0.30823E+01, & - & 0.30919E+01, 0.31015E+01, 0.31111E+01, 0.31207E+01, 0.31302E+01/ - - DATA (BNC08M(I),I=301,400)/ & - & 0.31398E+01, 0.31493E+01, 0.31588E+01, 0.31682E+01, 0.31777E+01, & - & 0.31871E+01, 0.31966E+01, 0.32059E+01, 0.32153E+01, 0.32247E+01, & - & 0.32340E+01, 0.32433E+01, 0.32526E+01, 0.32619E+01, 0.32712E+01, & - & 0.32804E+01, 0.32897E+01, 0.32989E+01, 0.33081E+01, 0.33172E+01, & - & 0.33264E+01, 0.33355E+01, 0.33446E+01, 0.33537E+01, 0.33628E+01, & - & 0.33719E+01, 0.33809E+01, 0.33899E+01, 0.33989E+01, 0.34079E+01, & - & 0.34169E+01, 0.34259E+01, 0.34348E+01, 0.34437E+01, 0.34526E+01, & - & 0.34615E+01, 0.34704E+01, 0.34792E+01, 0.34881E+01, 0.34969E+01, & - & 0.35057E+01, 0.35145E+01, 0.35232E+01, 0.35320E+01, 0.35407E+01, & - & 0.35494E+01, 0.35581E+01, 0.35668E+01, 0.35755E+01, 0.35841E+01, & - & 0.35928E+01, 0.36014E+01, 0.36100E+01, 0.36186E+01, 0.36271E+01, & - & 0.36357E+01, 0.36442E+01, 0.36527E+01, 0.36612E+01, 0.36697E+01, & - & 0.36782E+01, 0.36866E+01, 0.36951E+01, 0.37035E+01, 0.37119E+01, & - & 0.37203E+01, 0.37287E+01, 0.37370E+01, 0.37454E+01, 0.37537E+01, & - & 0.37620E+01, 0.37703E+01, 0.37786E+01, 0.37869E+01, 0.37951E+01, & - & 0.38034E+01, 0.38116E+01, 0.38198E+01, 0.38280E+01, 0.38362E+01, & - & 0.38443E+01, 0.38525E+01, 0.38606E+01, 0.38687E+01, 0.38768E+01, & - & 0.38849E+01, 0.38930E+01, 0.39011E+01, 0.39091E+01, 0.39171E+01, & - & 0.39252E+01, 0.39332E+01, 0.39411E+01, 0.39491E+01, 0.39571E+01, & - & 0.39650E+01, 0.39730E+01, 0.39809E+01, 0.39888E+01, 0.39967E+01/ - - DATA (BNC08M(I),I=401,500)/ & - & 0.40045E+01, 0.40124E+01, 0.40202E+01, 0.40281E+01, 0.40359E+01, & - & 0.40437E+01, 0.40515E+01, 0.40593E+01, 0.40670E+01, 0.40748E+01, & - & 0.40825E+01, 0.40903E+01, 0.40980E+01, 0.41057E+01, 0.41133E+01, & - & 0.41210E+01, 0.41287E+01, 0.41363E+01, 0.41440E+01, 0.41516E+01, & - & 0.41592E+01, 0.41668E+01, 0.41743E+01, 0.41819E+01, 0.41895E+01, & - & 0.41970E+01, 0.42045E+01, 0.42120E+01, 0.42195E+01, 0.42270E+01, & - & 0.42345E+01, 0.42420E+01, 0.42494E+01, 0.42569E+01, 0.42643E+01, & - & 0.42717E+01, 0.42791E+01, 0.42865E+01, 0.42939E+01, 0.43012E+01, & - & 0.43086E+01, 0.43159E+01, 0.43232E+01, 0.43306E+01, 0.43379E+01, & - & 0.43452E+01, 0.43524E+01, 0.43597E+01, 0.43670E+01, 0.43742E+01, & - & 0.43814E+01, 0.43886E+01, 0.43959E+01, 0.44030E+01, 0.44102E+01, & - & 0.44174E+01, 0.44246E+01, 0.44317E+01, 0.44388E+01, 0.44460E+01, & - & 0.44531E+01, 0.44602E+01, 0.44673E+01, 0.44743E+01, 0.44814E+01, & - & 0.44885E+01, 0.44955E+01, 0.45025E+01, 0.45096E+01, 0.45166E+01, & - & 0.45236E+01, 0.45306E+01, 0.45375E+01, 0.45445E+01, 0.45515E+01, & - & 0.45584E+01, 0.45653E+01, 0.45723E+01, 0.45792E+01, 0.45861E+01, & - & 0.45930E+01, 0.45998E+01, 0.46067E+01, 0.46135E+01, 0.46204E+01, & - & 0.46272E+01, 0.46341E+01, 0.46409E+01, 0.46477E+01, 0.46545E+01, & - & 0.46612E+01, 0.46680E+01, 0.46748E+01, 0.46815E+01, 0.46883E+01, & - & 0.46950E+01, 0.47017E+01, 0.47084E+01, 0.47151E+01, 0.47218E+01/ - - DATA (BNC08M(I),I=501,600)/ & - & 0.47285E+01, 0.47351E+01, 0.47418E+01, 0.47484E+01, 0.47551E+01, & - & 0.47617E+01, 0.47683E+01, 0.47749E+01, 0.47815E+01, 0.47881E+01, & - & 0.47947E+01, 0.48012E+01, 0.48078E+01, 0.48143E+01, 0.48209E+01, & - & 0.48274E+01, 0.48339E+01, 0.48404E+01, 0.48469E+01, 0.48534E+01, & - & 0.48598E+01, 0.48663E+01, 0.48728E+01, 0.48792E+01, 0.48857E+01, & - & 0.48921E+01, 0.48985E+01, 0.49049E+01, 0.49113E+01, 0.49177E+01, & - & 0.49241E+01, 0.49304E+01, 0.49368E+01, 0.49431E+01, 0.49495E+01, & - & 0.49558E+01, 0.49621E+01, 0.49685E+01, 0.49748E+01, 0.49811E+01, & - & 0.49873E+01, 0.49936E+01, 0.49999E+01, 0.50061E+01, 0.50124E+01, & - & 0.50186E+01, 0.50249E+01, 0.50311E+01, 0.50373E+01, 0.50435E+01, & - & 0.50497E+01, 0.50559E+01, 0.50621E+01, 0.50682E+01, 0.50744E+01, & - & 0.50805E+01, 0.50867E+01, 0.50928E+01, 0.50989E+01, 0.51050E+01, & - & 0.51111E+01, 0.51172E+01, 0.51233E+01, 0.51294E+01, 0.51355E+01, & - & 0.51415E+01, 0.51476E+01, 0.51536E+01, 0.51597E+01, 0.51657E+01, & - & 0.51717E+01, 0.51777E+01, 0.51837E+01, 0.51897E+01, 0.51957E+01, & - & 0.52017E+01, 0.52076E+01, 0.52136E+01, 0.52196E+01, 0.52255E+01, & - & 0.52314E+01, 0.52374E+01, 0.52433E+01, 0.52492E+01, 0.52551E+01, & - & 0.52610E+01, 0.52669E+01, 0.52727E+01, 0.52786E+01, 0.52845E+01, & - & 0.52903E+01, 0.52962E+01, 0.53020E+01, 0.53078E+01, 0.53137E+01, & - & 0.53195E+01, 0.53253E+01, 0.53311E+01, 0.53369E+01, 0.53426E+01/ - - DATA (BNC08M(I),I=601,700)/ & - & 0.54046E+01, 0.54611E+01, 0.55169E+01, 0.55719E+01, 0.56263E+01, & - & 0.56799E+01, 0.57328E+01, 0.57851E+01, 0.58367E+01, 0.58877E+01, & - & 0.59380E+01, 0.59878E+01, 0.60369E+01, 0.60855E+01, 0.61334E+01, & - & 0.61809E+01, 0.62277E+01, 0.62740E+01, 0.63198E+01, 0.63651E+01, & - & 0.64099E+01, 0.64542E+01, 0.64979E+01, 0.65413E+01, 0.65841E+01, & - & 0.66265E+01, 0.66684E+01, 0.67099E+01, 0.67509E+01, 0.67916E+01, & - & 0.68318E+01, 0.68715E+01, 0.69109E+01, 0.69499E+01, 0.69885E+01, & - & 0.70267E+01, 0.70646E+01, 0.71020E+01, 0.71391E+01, 0.71759E+01, & - & 0.72123E+01, 0.72483E+01, 0.72840E+01, 0.73194E+01, 0.73544E+01, & - & 0.73891E+01, 0.74235E+01, 0.74576E+01, 0.74914E+01, 0.75248E+01, & - & 0.75580E+01, 0.75909E+01, 0.76234E+01, 0.76557E+01, 0.76877E+01, & - & 0.77195E+01, 0.77509E+01, 0.77821E+01, 0.78130E+01, 0.78437E+01, & - & 0.78741E+01, 0.79042E+01, 0.79341E+01, 0.79637E+01, 0.79931E+01, & - & 0.80223E+01, 0.80512E+01, 0.80799E+01, 0.81083E+01, 0.81365E+01, & - & 0.81645E+01, 0.81923E+01, 0.82199E+01, 0.82472E+01, 0.82743E+01, & - & 0.83012E+01, 0.83279E+01, 0.83544E+01, 0.83807E+01, 0.84068E+01, & - & 0.84327E+01, 0.84584E+01, 0.84839E+01, 0.85093E+01, 0.85344E+01, & - & 0.85593E+01, 0.85841E+01, 0.86087E+01, 0.86331E+01, 0.86573E+01, & - & 0.86813E+01, 0.87052E+01, 0.87289E+01, 0.87524E+01, 0.87758E+01, & - & 0.87990E+01, 0.88220E+01, 0.88449E+01, 0.88676E+01, 0.88902E+01/ - - DATA (BNC08M(I),I=701,741)/ & - & 0.89126E+01, 0.89348E+01, 0.89569E+01, 0.89789E+01, 0.90006E+01, & - & 0.90223E+01, 0.90438E+01, 0.90651E+01, 0.90863E+01, 0.91074E+01, & - & 0.91283E+01, 0.91491E+01, 0.91698E+01, 0.91903E+01, 0.92107E+01, & - & 0.92309E+01, 0.92510E+01, 0.92710E+01, 0.92909E+01, 0.93106E+01, & - & 0.93302E+01, 0.93497E+01, 0.93690E+01, 0.93883E+01, 0.94074E+01, & - & 0.94264E+01, 0.94452E+01, 0.94640E+01, 0.94826E+01, 0.95011E+01, & - & 0.95195E+01, 0.95378E+01, 0.95560E+01, 0.95741E+01, 0.95920E+01, & - & 0.96099E+01, 0.96276E+01, 0.96452E+01, 0.96628E+01, 0.96802E+01, & - & 0.96975E+01 & - & / -! -! *** NH4HSO4 -! - DATA (BNC09M(I),I=1,100)/ & - &-0.50187E-01,-0.10669E+00,-0.13390E+00,-0.15267E+00,-0.16708E+00, & - &-0.17876E+00,-0.18855E+00,-0.19694E+00,-0.20423E+00,-0.21065E+00, & - &-0.21635E+00,-0.22143E+00,-0.22598E+00,-0.23007E+00,-0.23375E+00, & - &-0.23707E+00,-0.24005E+00,-0.24274E+00,-0.24514E+00,-0.24730E+00, & - &-0.24921E+00,-0.25090E+00,-0.25238E+00,-0.25366E+00,-0.25476E+00, & - &-0.25568E+00,-0.25644E+00,-0.25703E+00,-0.25747E+00,-0.25776E+00, & - &-0.25791E+00,-0.25793E+00,-0.25781E+00,-0.25758E+00,-0.25722E+00, & - &-0.25674E+00,-0.25615E+00,-0.25546E+00,-0.25466E+00,-0.25376E+00, & - &-0.25276E+00,-0.25167E+00,-0.25049E+00,-0.24922E+00,-0.24787E+00, & - &-0.24644E+00,-0.24492E+00,-0.24333E+00,-0.24167E+00,-0.23994E+00, & - &-0.23813E+00,-0.23626E+00,-0.23433E+00,-0.23233E+00,-0.23027E+00, & - &-0.22816E+00,-0.22599E+00,-0.22376E+00,-0.22148E+00,-0.21915E+00, & - &-0.21677E+00,-0.21434E+00,-0.21186E+00,-0.20934E+00,-0.20677E+00, & - &-0.20415E+00,-0.20150E+00,-0.19880E+00,-0.19606E+00,-0.19328E+00, & - &-0.19046E+00,-0.18760E+00,-0.18470E+00,-0.18176E+00,-0.17878E+00, & - &-0.17577E+00,-0.17272E+00,-0.16963E+00,-0.16651E+00,-0.16334E+00, & - &-0.16015E+00,-0.15692E+00,-0.15365E+00,-0.15035E+00,-0.14701E+00, & - &-0.14364E+00,-0.14024E+00,-0.13681E+00,-0.13334E+00,-0.12984E+00, & - &-0.12631E+00,-0.12274E+00,-0.11915E+00,-0.11553E+00,-0.11188E+00, & - &-0.10820E+00,-0.10450E+00,-0.10077E+00,-0.97011E-01,-0.93232E-01/ - - DATA (BNC09M(I),I=101,200)/ & - &-0.89429E-01,-0.85605E-01,-0.81759E-01,-0.77893E-01,-0.74009E-01, & - &-0.70107E-01,-0.66188E-01,-0.62254E-01,-0.58306E-01,-0.54343E-01, & - &-0.50369E-01,-0.46384E-01,-0.42388E-01,-0.38383E-01,-0.34370E-01, & - &-0.30350E-01,-0.26323E-01,-0.22291E-01,-0.18255E-01,-0.14216E-01, & - &-0.10173E-01,-0.61287E-02,-0.20831E-02, 0.19630E-02, 0.60090E-02, & - & 0.10054E-01, 0.14098E-01, 0.18140E-01, 0.22179E-01, 0.26215E-01, & - & 0.30247E-01, 0.34276E-01, 0.38300E-01, 0.42319E-01, 0.46333E-01, & - & 0.50341E-01, 0.54344E-01, 0.58340E-01, 0.62330E-01, 0.66313E-01, & - & 0.70289E-01, 0.74258E-01, 0.78219E-01, 0.82173E-01, 0.86120E-01, & - & 0.90058E-01, 0.93988E-01, 0.97910E-01, 0.10182E+00, 0.10573E+00, & - & 0.10962E+00, 0.11351E+00, 0.11739E+00, 0.12126E+00, 0.12512E+00, & - & 0.12897E+00, 0.13282E+00, 0.13665E+00, 0.14048E+00, 0.14429E+00, & - & 0.14810E+00, 0.15189E+00, 0.15568E+00, 0.15946E+00, 0.16323E+00, & - & 0.16698E+00, 0.17073E+00, 0.17447E+00, 0.17820E+00, 0.18192E+00, & - & 0.18563E+00, 0.18934E+00, 0.19303E+00, 0.19671E+00, 0.20038E+00, & - & 0.20404E+00, 0.20770E+00, 0.21134E+00, 0.21497E+00, 0.21860E+00, & - & 0.22221E+00, 0.22582E+00, 0.22941E+00, 0.23300E+00, 0.23658E+00, & - & 0.24014E+00, 0.24370E+00, 0.24725E+00, 0.25078E+00, 0.25431E+00, & - & 0.25783E+00, 0.26134E+00, 0.26484E+00, 0.26833E+00, 0.27181E+00, & - & 0.27528E+00, 0.27875E+00, 0.28220E+00, 0.28564E+00, 0.28908E+00/ - - DATA (BNC09M(I),I=201,300)/ & - & 0.29250E+00, 0.29592E+00, 0.29932E+00, 0.30272E+00, 0.30611E+00, & - & 0.30949E+00, 0.31286E+00, 0.31622E+00, 0.31957E+00, 0.32291E+00, & - & 0.32625E+00, 0.32957E+00, 0.33289E+00, 0.33620E+00, 0.33949E+00, & - & 0.34278E+00, 0.34606E+00, 0.34934E+00, 0.35260E+00, 0.35585E+00, & - & 0.35910E+00, 0.36234E+00, 0.36557E+00, 0.36879E+00, 0.37200E+00, & - & 0.37520E+00, 0.37839E+00, 0.38158E+00, 0.38476E+00, 0.38793E+00, & - & 0.39109E+00, 0.39424E+00, 0.39738E+00, 0.40052E+00, 0.40365E+00, & - & 0.40677E+00, 0.40988E+00, 0.41298E+00, 0.41608E+00, 0.41916E+00, & - & 0.42224E+00, 0.42531E+00, 0.42838E+00, 0.43143E+00, 0.43448E+00, & - & 0.43752E+00, 0.44055E+00, 0.44357E+00, 0.44659E+00, 0.44960E+00, & - & 0.45260E+00, 0.45559E+00, 0.45857E+00, 0.46155E+00, 0.46452E+00, & - & 0.46748E+00, 0.47044E+00, 0.47339E+00, 0.47633E+00, 0.47926E+00, & - & 0.48218E+00, 0.48510E+00, 0.48801E+00, 0.49092E+00, 0.49381E+00, & - & 0.49670E+00, 0.49958E+00, 0.50246E+00, 0.50532E+00, 0.50818E+00, & - & 0.51104E+00, 0.51388E+00, 0.51672E+00, 0.51955E+00, 0.52238E+00, & - & 0.52519E+00, 0.52800E+00, 0.53081E+00, 0.53361E+00, 0.53640E+00, & - & 0.53918E+00, 0.54196E+00, 0.54473E+00, 0.54749E+00, 0.55025E+00, & - & 0.55300E+00, 0.55574E+00, 0.55848E+00, 0.56121E+00, 0.56393E+00, & - & 0.56665E+00, 0.56936E+00, 0.57206E+00, 0.57476E+00, 0.57745E+00, & - & 0.58013E+00, 0.58281E+00, 0.58548E+00, 0.58815E+00, 0.59081E+00/ - - DATA (BNC09M(I),I=301,400)/ & - & 0.59346E+00, 0.59611E+00, 0.59875E+00, 0.60138E+00, 0.60401E+00, & - & 0.60663E+00, 0.60925E+00, 0.61186E+00, 0.61446E+00, 0.61706E+00, & - & 0.61965E+00, 0.62223E+00, 0.62481E+00, 0.62739E+00, 0.62996E+00, & - & 0.63252E+00, 0.63507E+00, 0.63762E+00, 0.64017E+00, 0.64270E+00, & - & 0.64524E+00, 0.64776E+00, 0.65028E+00, 0.65280E+00, 0.65531E+00, & - & 0.65781E+00, 0.66031E+00, 0.66280E+00, 0.66529E+00, 0.66777E+00, & - & 0.67024E+00, 0.67271E+00, 0.67518E+00, 0.67764E+00, 0.68009E+00, & - & 0.68254E+00, 0.68498E+00, 0.68742E+00, 0.68985E+00, 0.69227E+00, & - & 0.69470E+00, 0.69711E+00, 0.69952E+00, 0.70192E+00, 0.70432E+00, & - & 0.70672E+00, 0.70911E+00, 0.71149E+00, 0.71387E+00, 0.71624E+00, & - & 0.71861E+00, 0.72097E+00, 0.72333E+00, 0.72568E+00, 0.72803E+00, & - & 0.73037E+00, 0.73271E+00, 0.73504E+00, 0.73737E+00, 0.73969E+00, & - & 0.74201E+00, 0.74432E+00, 0.74662E+00, 0.74893E+00, 0.75122E+00, & - & 0.75352E+00, 0.75580E+00, 0.75809E+00, 0.76036E+00, 0.76263E+00, & - & 0.76490E+00, 0.76717E+00, 0.76942E+00, 0.77168E+00, 0.77393E+00, & - & 0.77617E+00, 0.77841E+00, 0.78064E+00, 0.78287E+00, 0.78510E+00, & - & 0.78732E+00, 0.78953E+00, 0.79174E+00, 0.79395E+00, 0.79615E+00, & - & 0.79835E+00, 0.80054E+00, 0.80273E+00, 0.80491E+00, 0.80709E+00, & - & 0.80927E+00, 0.81144E+00, 0.81360E+00, 0.81576E+00, 0.81792E+00, & - & 0.82007E+00, 0.82222E+00, 0.82436E+00, 0.82650E+00, 0.82864E+00/ - - DATA (BNC09M(I),I=401,500)/ & - & 0.83077E+00, 0.83289E+00, 0.83501E+00, 0.83713E+00, 0.83924E+00, & - & 0.84135E+00, 0.84346E+00, 0.84556E+00, 0.84765E+00, 0.84974E+00, & - & 0.85183E+00, 0.85391E+00, 0.85599E+00, 0.85807E+00, 0.86014E+00, & - & 0.86220E+00, 0.86427E+00, 0.86632E+00, 0.86838E+00, 0.87043E+00, & - & 0.87247E+00, 0.87451E+00, 0.87655E+00, 0.87859E+00, 0.88061E+00, & - & 0.88264E+00, 0.88466E+00, 0.88668E+00, 0.88869E+00, 0.89070E+00, & - & 0.89271E+00, 0.89471E+00, 0.89671E+00, 0.89870E+00, 0.90069E+00, & - & 0.90268E+00, 0.90466E+00, 0.90664E+00, 0.90861E+00, 0.91058E+00, & - & 0.91255E+00, 0.91451E+00, 0.91647E+00, 0.91842E+00, 0.92037E+00, & - & 0.92232E+00, 0.92426E+00, 0.92620E+00, 0.92814E+00, 0.93007E+00, & - & 0.93200E+00, 0.93393E+00, 0.93585E+00, 0.93777E+00, 0.93968E+00, & - & 0.94159E+00, 0.94350E+00, 0.94540E+00, 0.94730E+00, 0.94919E+00, & - & 0.95108E+00, 0.95297E+00, 0.95486E+00, 0.95674E+00, 0.95862E+00, & - & 0.96049E+00, 0.96236E+00, 0.96423E+00, 0.96609E+00, 0.96795E+00, & - & 0.96981E+00, 0.97166E+00, 0.97351E+00, 0.97536E+00, 0.97720E+00, & - & 0.97904E+00, 0.98087E+00, 0.98270E+00, 0.98453E+00, 0.98636E+00, & - & 0.98818E+00, 0.99000E+00, 0.99181E+00, 0.99362E+00, 0.99543E+00, & - & 0.99724E+00, 0.99904E+00, 0.10008E+01, 0.10026E+01, 0.10044E+01, & - & 0.10062E+01, 0.10080E+01, 0.10098E+01, 0.10116E+01, 0.10133E+01, & - & 0.10151E+01, 0.10169E+01, 0.10186E+01, 0.10204E+01, 0.10222E+01/ - - DATA (BNC09M(I),I=501,600)/ & - & 0.10239E+01, 0.10257E+01, 0.10274E+01, 0.10292E+01, 0.10309E+01, & - & 0.10326E+01, 0.10344E+01, 0.10361E+01, 0.10378E+01, 0.10396E+01, & - & 0.10413E+01, 0.10430E+01, 0.10447E+01, 0.10464E+01, 0.10482E+01, & - & 0.10499E+01, 0.10516E+01, 0.10533E+01, 0.10550E+01, 0.10567E+01, & - & 0.10584E+01, 0.10600E+01, 0.10617E+01, 0.10634E+01, 0.10651E+01, & - & 0.10668E+01, 0.10684E+01, 0.10701E+01, 0.10718E+01, 0.10735E+01, & - & 0.10751E+01, 0.10768E+01, 0.10784E+01, 0.10801E+01, 0.10817E+01, & - & 0.10834E+01, 0.10850E+01, 0.10867E+01, 0.10883E+01, 0.10899E+01, & - & 0.10916E+01, 0.10932E+01, 0.10948E+01, 0.10965E+01, 0.10981E+01, & - & 0.10997E+01, 0.11013E+01, 0.11029E+01, 0.11045E+01, 0.11062E+01, & - & 0.11078E+01, 0.11094E+01, 0.11110E+01, 0.11126E+01, 0.11142E+01, & - & 0.11157E+01, 0.11173E+01, 0.11189E+01, 0.11205E+01, 0.11221E+01, & - & 0.11237E+01, 0.11252E+01, 0.11268E+01, 0.11284E+01, 0.11299E+01, & - & 0.11315E+01, 0.11331E+01, 0.11346E+01, 0.11362E+01, 0.11377E+01, & - & 0.11393E+01, 0.11408E+01, 0.11424E+01, 0.11439E+01, 0.11454E+01, & - & 0.11470E+01, 0.11485E+01, 0.11501E+01, 0.11516E+01, 0.11531E+01, & - & 0.11546E+01, 0.11562E+01, 0.11577E+01, 0.11592E+01, 0.11607E+01, & - & 0.11622E+01, 0.11637E+01, 0.11652E+01, 0.11667E+01, 0.11682E+01, & - & 0.11697E+01, 0.11712E+01, 0.11727E+01, 0.11742E+01, 0.11757E+01, & - & 0.11772E+01, 0.11787E+01, 0.11801E+01, 0.11816E+01, 0.11831E+01/ - - DATA (BNC09M(I),I=601,700)/ & - & 0.11989E+01, 0.12132E+01, 0.12273E+01, 0.12412E+01, 0.12549E+01, & - & 0.12683E+01, 0.12816E+01, 0.12946E+01, 0.13074E+01, 0.13200E+01, & - & 0.13324E+01, 0.13446E+01, 0.13566E+01, 0.13685E+01, 0.13801E+01, & - & 0.13916E+01, 0.14029E+01, 0.14141E+01, 0.14250E+01, 0.14358E+01, & - & 0.14465E+01, 0.14570E+01, 0.14673E+01, 0.14775E+01, 0.14875E+01, & - & 0.14974E+01, 0.15072E+01, 0.15168E+01, 0.15262E+01, 0.15356E+01, & - & 0.15448E+01, 0.15538E+01, 0.15628E+01, 0.15716E+01, 0.15803E+01, & - & 0.15888E+01, 0.15973E+01, 0.16056E+01, 0.16138E+01, 0.16219E+01, & - & 0.16299E+01, 0.16378E+01, 0.16455E+01, 0.16532E+01, 0.16608E+01, & - & 0.16682E+01, 0.16756E+01, 0.16828E+01, 0.16900E+01, 0.16970E+01, & - & 0.17040E+01, 0.17108E+01, 0.17176E+01, 0.17243E+01, 0.17308E+01, & - & 0.17373E+01, 0.17438E+01, 0.17501E+01, 0.17563E+01, 0.17625E+01, & - & 0.17685E+01, 0.17745E+01, 0.17804E+01, 0.17863E+01, 0.17920E+01, & - & 0.17977E+01, 0.18033E+01, 0.18088E+01, 0.18142E+01, 0.18196E+01, & - & 0.18249E+01, 0.18302E+01, 0.18353E+01, 0.18404E+01, 0.18454E+01, & - & 0.18504E+01, 0.18553E+01, 0.18601E+01, 0.18649E+01, 0.18695E+01, & - & 0.18742E+01, 0.18787E+01, 0.18832E+01, 0.18877E+01, 0.18921E+01, & - & 0.18964E+01, 0.19007E+01, 0.19049E+01, 0.19090E+01, 0.19131E+01, & - & 0.19171E+01, 0.19211E+01, 0.19250E+01, 0.19289E+01, 0.19327E+01, & - & 0.19365E+01, 0.19402E+01, 0.19439E+01, 0.19475E+01, 0.19510E+01/ - - DATA (BNC09M(I),I=701,741)/ & - & 0.19545E+01, 0.19580E+01, 0.19614E+01, 0.19647E+01, 0.19681E+01, & - & 0.19713E+01, 0.19745E+01, 0.19777E+01, 0.19808E+01, 0.19839E+01, & - & 0.19869E+01, 0.19899E+01, 0.19929E+01, 0.19958E+01, 0.19986E+01, & - & 0.20014E+01, 0.20042E+01, 0.20069E+01, 0.20096E+01, 0.20123E+01, & - & 0.20149E+01, 0.20175E+01, 0.20200E+01, 0.20225E+01, 0.20249E+01, & - & 0.20273E+01, 0.20297E+01, 0.20320E+01, 0.20343E+01, 0.20366E+01, & - & 0.20388E+01, 0.20410E+01, 0.20432E+01, 0.20453E+01, 0.20473E+01, & - & 0.20494E+01, 0.20514E+01, 0.20534E+01, 0.20553E+01, 0.20572E+01, & - & 0.20591E+01 & - & / -! -! *** (H,NO3) -! - DATA (BNC10M(I),I=1,100)/ & - &-0.49409E-01,-0.10182E+00,-0.12490E+00,-0.13957E+00,-0.14992E+00, & - &-0.15759E+00,-0.16343E+00,-0.16794E+00,-0.17141E+00,-0.17407E+00, & - &-0.17608E+00,-0.17754E+00,-0.17855E+00,-0.17917E+00,-0.17946E+00, & - &-0.17946E+00,-0.17921E+00,-0.17873E+00,-0.17806E+00,-0.17722E+00, & - &-0.17621E+00,-0.17507E+00,-0.17380E+00,-0.17242E+00,-0.17094E+00, & - &-0.16937E+00,-0.16771E+00,-0.16598E+00,-0.16418E+00,-0.16232E+00, & - &-0.16041E+00,-0.15845E+00,-0.15644E+00,-0.15439E+00,-0.15230E+00, & - &-0.15019E+00,-0.14804E+00,-0.14587E+00,-0.14368E+00,-0.14146E+00, & - &-0.13923E+00,-0.13699E+00,-0.13473E+00,-0.13245E+00,-0.13017E+00, & - &-0.12788E+00,-0.12559E+00,-0.12329E+00,-0.12098E+00,-0.11867E+00, & - &-0.11635E+00,-0.11404E+00,-0.11172E+00,-0.10939E+00,-0.10707E+00, & - &-0.10475E+00,-0.10242E+00,-0.10009E+00,-0.97766E-01,-0.95435E-01, & - &-0.93102E-01,-0.90766E-01,-0.88427E-01,-0.86084E-01,-0.83737E-01, & - &-0.81385E-01,-0.79027E-01,-0.76663E-01,-0.74291E-01,-0.71912E-01, & - &-0.69524E-01,-0.67126E-01,-0.64718E-01,-0.62299E-01,-0.59868E-01, & - &-0.57424E-01,-0.54967E-01,-0.52495E-01,-0.50009E-01,-0.47506E-01, & - &-0.44988E-01,-0.42453E-01,-0.39901E-01,-0.37331E-01,-0.34744E-01, & - &-0.32138E-01,-0.29513E-01,-0.26869E-01,-0.24207E-01,-0.21526E-01, & - &-0.18825E-01,-0.16106E-01,-0.13368E-01,-0.10611E-01,-0.78361E-02, & - &-0.50430E-02,-0.22323E-02, 0.59576E-03, 0.34406E-02, 0.63019E-02/ - - DATA (BNC10M(I),I=101,200)/ & - & 0.91788E-02, 0.12071E-01, 0.14978E-01, 0.17899E-01, 0.20833E-01, & - & 0.23781E-01, 0.26740E-01, 0.29711E-01, 0.32692E-01, 0.35683E-01, & - & 0.38684E-01, 0.41694E-01, 0.44711E-01, 0.47736E-01, 0.50768E-01, & - & 0.53805E-01, 0.56848E-01, 0.59896E-01, 0.62949E-01, 0.66005E-01, & - & 0.69064E-01, 0.72126E-01, 0.75190E-01, 0.78257E-01, 0.81324E-01, & - & 0.84392E-01, 0.87461E-01, 0.90530E-01, 0.93599E-01, 0.96668E-01, & - & 0.99735E-01, 0.10280E+00, 0.10587E+00, 0.10893E+00, 0.11199E+00, & - & 0.11505E+00, 0.11811E+00, 0.12117E+00, 0.12422E+00, 0.12727E+00, & - & 0.13031E+00, 0.13336E+00, 0.13640E+00, 0.13944E+00, 0.14247E+00, & - & 0.14550E+00, 0.14853E+00, 0.15155E+00, 0.15457E+00, 0.15759E+00, & - & 0.16060E+00, 0.16361E+00, 0.16662E+00, 0.16962E+00, 0.17262E+00, & - & 0.17561E+00, 0.17860E+00, 0.18158E+00, 0.18456E+00, 0.18754E+00, & - & 0.19051E+00, 0.19348E+00, 0.19644E+00, 0.19940E+00, 0.20235E+00, & - & 0.20530E+00, 0.20825E+00, 0.21119E+00, 0.21413E+00, 0.21706E+00, & - & 0.21998E+00, 0.22291E+00, 0.22583E+00, 0.22874E+00, 0.23165E+00, & - & 0.23455E+00, 0.23745E+00, 0.24035E+00, 0.24324E+00, 0.24612E+00, & - & 0.24900E+00, 0.25188E+00, 0.25475E+00, 0.25762E+00, 0.26048E+00, & - & 0.26334E+00, 0.26619E+00, 0.26903E+00, 0.27188E+00, 0.27471E+00, & - & 0.27755E+00, 0.28037E+00, 0.28320E+00, 0.28602E+00, 0.28883E+00, & - & 0.29164E+00, 0.29444E+00, 0.29724E+00, 0.30003E+00, 0.30282E+00/ - - DATA (BNC10M(I),I=201,300)/ & - & 0.30560E+00, 0.30838E+00, 0.31116E+00, 0.31393E+00, 0.31669E+00, & - & 0.31945E+00, 0.32220E+00, 0.32495E+00, 0.32769E+00, 0.33043E+00, & - & 0.33317E+00, 0.33590E+00, 0.33862E+00, 0.34134E+00, 0.34405E+00, & - & 0.34676E+00, 0.34947E+00, 0.35217E+00, 0.35486E+00, 0.35755E+00, & - & 0.36024E+00, 0.36291E+00, 0.36559E+00, 0.36826E+00, 0.37092E+00, & - & 0.37358E+00, 0.37624E+00, 0.37889E+00, 0.38153E+00, 0.38417E+00, & - & 0.38681E+00, 0.38944E+00, 0.39206E+00, 0.39468E+00, 0.39730E+00, & - & 0.39991E+00, 0.40251E+00, 0.40511E+00, 0.40771E+00, 0.41030E+00, & - & 0.41288E+00, 0.41546E+00, 0.41804E+00, 0.42061E+00, 0.42317E+00, & - & 0.42574E+00, 0.42829E+00, 0.43084E+00, 0.43339E+00, 0.43593E+00, & - & 0.43847E+00, 0.44100E+00, 0.44353E+00, 0.44605E+00, 0.44856E+00, & - & 0.45108E+00, 0.45358E+00, 0.45609E+00, 0.45858E+00, 0.46108E+00, & - & 0.46357E+00, 0.46605E+00, 0.46853E+00, 0.47100E+00, 0.47347E+00, & - & 0.47594E+00, 0.47840E+00, 0.48085E+00, 0.48330E+00, 0.48575E+00, & - & 0.48819E+00, 0.49062E+00, 0.49305E+00, 0.49548E+00, 0.49790E+00, & - & 0.50032E+00, 0.50273E+00, 0.50514E+00, 0.50754E+00, 0.50994E+00, & - & 0.51233E+00, 0.51472E+00, 0.51711E+00, 0.51949E+00, 0.52186E+00, & - & 0.52423E+00, 0.52660E+00, 0.52896E+00, 0.53132E+00, 0.53367E+00, & - & 0.53602E+00, 0.53836E+00, 0.54070E+00, 0.54303E+00, 0.54536E+00, & - & 0.54769E+00, 0.55001E+00, 0.55232E+00, 0.55464E+00, 0.55694E+00/ - - DATA (BNC10M(I),I=301,400)/ & - & 0.55925E+00, 0.56154E+00, 0.56384E+00, 0.56613E+00, 0.56841E+00, & - & 0.57069E+00, 0.57297E+00, 0.57524E+00, 0.57751E+00, 0.57977E+00, & - & 0.58203E+00, 0.58428E+00, 0.58653E+00, 0.58878E+00, 0.59102E+00, & - & 0.59325E+00, 0.59549E+00, 0.59771E+00, 0.59994E+00, 0.60216E+00, & - & 0.60437E+00, 0.60658E+00, 0.60879E+00, 0.61099E+00, 0.61319E+00, & - & 0.61538E+00, 0.61757E+00, 0.61976E+00, 0.62194E+00, 0.62411E+00, & - & 0.62629E+00, 0.62845E+00, 0.63062E+00, 0.63278E+00, 0.63493E+00, & - & 0.63709E+00, 0.63923E+00, 0.64138E+00, 0.64351E+00, 0.64565E+00, & - & 0.64778E+00, 0.64991E+00, 0.65203E+00, 0.65415E+00, 0.65626E+00, & - & 0.65837E+00, 0.66048E+00, 0.66258E+00, 0.66468E+00, 0.66678E+00, & - & 0.66887E+00, 0.67095E+00, 0.67304E+00, 0.67511E+00, 0.67719E+00, & - & 0.67926E+00, 0.68132E+00, 0.68339E+00, 0.68545E+00, 0.68750E+00, & - & 0.68955E+00, 0.69160E+00, 0.69364E+00, 0.69568E+00, 0.69771E+00, & - & 0.69975E+00, 0.70177E+00, 0.70380E+00, 0.70582E+00, 0.70783E+00, & - & 0.70984E+00, 0.71185E+00, 0.71386E+00, 0.71586E+00, 0.71785E+00, & - & 0.71985E+00, 0.72184E+00, 0.72382E+00, 0.72580E+00, 0.72778E+00, & - & 0.72975E+00, 0.73172E+00, 0.73369E+00, 0.73565E+00, 0.73761E+00, & - & 0.73957E+00, 0.74152E+00, 0.74347E+00, 0.74541E+00, 0.74735E+00, & - & 0.74929E+00, 0.75122E+00, 0.75315E+00, 0.75508E+00, 0.75700E+00, & - & 0.75892E+00, 0.76084E+00, 0.76275E+00, 0.76466E+00, 0.76656E+00/ - - DATA (BNC10M(I),I=401,500)/ & - & 0.76846E+00, 0.77036E+00, 0.77225E+00, 0.77414E+00, 0.77603E+00, & - & 0.77791E+00, 0.77979E+00, 0.78167E+00, 0.78354E+00, 0.78541E+00, & - & 0.78728E+00, 0.78914E+00, 0.79100E+00, 0.79285E+00, 0.79471E+00, & - & 0.79656E+00, 0.79840E+00, 0.80024E+00, 0.80208E+00, 0.80391E+00, & - & 0.80575E+00, 0.80757E+00, 0.80940E+00, 0.81122E+00, 0.81304E+00, & - & 0.81485E+00, 0.81666E+00, 0.81847E+00, 0.82028E+00, 0.82208E+00, & - & 0.82387E+00, 0.82567E+00, 0.82746E+00, 0.82925E+00, 0.83103E+00, & - & 0.83281E+00, 0.83459E+00, 0.83637E+00, 0.83814E+00, 0.83991E+00, & - & 0.84167E+00, 0.84343E+00, 0.84519E+00, 0.84695E+00, 0.84870E+00, & - & 0.85045E+00, 0.85219E+00, 0.85394E+00, 0.85568E+00, 0.85741E+00, & - & 0.85914E+00, 0.86087E+00, 0.86260E+00, 0.86432E+00, 0.86604E+00, & - & 0.86776E+00, 0.86948E+00, 0.87119E+00, 0.87290E+00, 0.87460E+00, & - & 0.87630E+00, 0.87800E+00, 0.87970E+00, 0.88139E+00, 0.88308E+00, & - & 0.88476E+00, 0.88645E+00, 0.88813E+00, 0.88980E+00, 0.89148E+00, & - & 0.89315E+00, 0.89482E+00, 0.89648E+00, 0.89815E+00, 0.89980E+00, & - & 0.90146E+00, 0.90311E+00, 0.90476E+00, 0.90641E+00, 0.90806E+00, & - & 0.90970E+00, 0.91134E+00, 0.91297E+00, 0.91460E+00, 0.91623E+00, & - & 0.91786E+00, 0.91948E+00, 0.92110E+00, 0.92272E+00, 0.92434E+00, & - & 0.92595E+00, 0.92756E+00, 0.92917E+00, 0.93077E+00, 0.93237E+00, & - & 0.93397E+00, 0.93556E+00, 0.93716E+00, 0.93875E+00, 0.94033E+00/ - - DATA (BNC10M(I),I=501,600)/ & - & 0.94192E+00, 0.94350E+00, 0.94508E+00, 0.94665E+00, 0.94822E+00, & - & 0.94979E+00, 0.95136E+00, 0.95292E+00, 0.95449E+00, 0.95604E+00, & - & 0.95760E+00, 0.95915E+00, 0.96070E+00, 0.96225E+00, 0.96380E+00, & - & 0.96534E+00, 0.96688E+00, 0.96842E+00, 0.96995E+00, 0.97148E+00, & - & 0.97301E+00, 0.97454E+00, 0.97606E+00, 0.97758E+00, 0.97910E+00, & - & 0.98062E+00, 0.98213E+00, 0.98364E+00, 0.98515E+00, 0.98665E+00, & - & 0.98815E+00, 0.98965E+00, 0.99115E+00, 0.99265E+00, 0.99414E+00, & - & 0.99563E+00, 0.99711E+00, 0.99860E+00, 0.10001E+01, 0.10016E+01, & - & 0.10030E+01, 0.10045E+01, 0.10060E+01, 0.10074E+01, 0.10089E+01, & - & 0.10104E+01, 0.10118E+01, 0.10133E+01, 0.10148E+01, 0.10162E+01, & - & 0.10177E+01, 0.10191E+01, 0.10206E+01, 0.10220E+01, 0.10234E+01, & - & 0.10249E+01, 0.10263E+01, 0.10277E+01, 0.10292E+01, 0.10306E+01, & - & 0.10320E+01, 0.10335E+01, 0.10349E+01, 0.10363E+01, 0.10377E+01, & - & 0.10391E+01, 0.10405E+01, 0.10420E+01, 0.10434E+01, 0.10448E+01, & - & 0.10462E+01, 0.10476E+01, 0.10490E+01, 0.10504E+01, 0.10518E+01, & - & 0.10531E+01, 0.10545E+01, 0.10559E+01, 0.10573E+01, 0.10587E+01, & - & 0.10601E+01, 0.10614E+01, 0.10628E+01, 0.10642E+01, 0.10655E+01, & - & 0.10669E+01, 0.10683E+01, 0.10696E+01, 0.10710E+01, 0.10724E+01, & - & 0.10737E+01, 0.10751E+01, 0.10764E+01, 0.10778E+01, 0.10791E+01, & - & 0.10805E+01, 0.10818E+01, 0.10831E+01, 0.10845E+01, 0.10858E+01/ - - DATA (BNC10M(I),I=601,700)/ & - & 0.11001E+01, 0.11131E+01, 0.11259E+01, 0.11384E+01, 0.11508E+01, & - & 0.11629E+01, 0.11749E+01, 0.11867E+01, 0.11983E+01, 0.12097E+01, & - & 0.12209E+01, 0.12319E+01, 0.12428E+01, 0.12535E+01, 0.12640E+01, & - & 0.12744E+01, 0.12846E+01, 0.12946E+01, 0.13045E+01, 0.13142E+01, & - & 0.13238E+01, 0.13333E+01, 0.13426E+01, 0.13517E+01, 0.13607E+01, & - & 0.13696E+01, 0.13784E+01, 0.13870E+01, 0.13955E+01, 0.14038E+01, & - & 0.14121E+01, 0.14202E+01, 0.14282E+01, 0.14361E+01, 0.14438E+01, & - & 0.14515E+01, 0.14590E+01, 0.14664E+01, 0.14738E+01, 0.14810E+01, & - & 0.14881E+01, 0.14951E+01, 0.15020E+01, 0.15088E+01, 0.15155E+01, & - & 0.15221E+01, 0.15286E+01, 0.15350E+01, 0.15413E+01, 0.15475E+01, & - & 0.15536E+01, 0.15597E+01, 0.15656E+01, 0.15715E+01, 0.15773E+01, & - & 0.15830E+01, 0.15886E+01, 0.15942E+01, 0.15996E+01, 0.16050E+01, & - & 0.16103E+01, 0.16155E+01, 0.16207E+01, 0.16258E+01, 0.16308E+01, & - & 0.16357E+01, 0.16406E+01, 0.16453E+01, 0.16501E+01, 0.16547E+01, & - & 0.16593E+01, 0.16638E+01, 0.16682E+01, 0.16726E+01, 0.16769E+01, & - & 0.16812E+01, 0.16854E+01, 0.16895E+01, 0.16936E+01, 0.16976E+01, & - & 0.17015E+01, 0.17054E+01, 0.17092E+01, 0.17130E+01, 0.17167E+01, & - & 0.17204E+01, 0.17240E+01, 0.17275E+01, 0.17310E+01, 0.17345E+01, & - & 0.17379E+01, 0.17412E+01, 0.17445E+01, 0.17477E+01, 0.17509E+01, & - & 0.17540E+01, 0.17571E+01, 0.17601E+01, 0.17631E+01, 0.17660E+01/ - - DATA (BNC10M(I),I=701,741)/ & - & 0.17689E+01, 0.17718E+01, 0.17746E+01, 0.17773E+01, 0.17800E+01, & - & 0.17827E+01, 0.17853E+01, 0.17879E+01, 0.17904E+01, 0.17929E+01, & - & 0.17953E+01, 0.17977E+01, 0.18001E+01, 0.18024E+01, 0.18047E+01, & - & 0.18069E+01, 0.18091E+01, 0.18113E+01, 0.18134E+01, 0.18155E+01, & - & 0.18175E+01, 0.18195E+01, 0.18215E+01, 0.18234E+01, 0.18253E+01, & - & 0.18271E+01, 0.18290E+01, 0.18307E+01, 0.18325E+01, 0.18342E+01, & - & 0.18359E+01, 0.18375E+01, 0.18391E+01, 0.18407E+01, 0.18423E+01, & - & 0.18438E+01, 0.18453E+01, 0.18467E+01, 0.18481E+01, 0.18495E+01, & - & 0.18509E+01 & - & / -! -! *** (H,Cl) -! - DATA (BNC11M(I),I=1,100)/ & - &-0.47849E-01,-0.94150E-01,-0.11209E+00,-0.12203E+00,-0.12791E+00, & - &-0.13126E+00,-0.13288E+00,-0.13320E+00,-0.13253E+00,-0.13106E+00, & - &-0.12892E+00,-0.12624E+00,-0.12307E+00,-0.11949E+00,-0.11555E+00, & - &-0.11128E+00,-0.10671E+00,-0.10189E+00,-0.96822E-01,-0.91537E-01, & - &-0.86052E-01,-0.80381E-01,-0.74539E-01,-0.68539E-01,-0.62391E-01, & - &-0.56107E-01,-0.49696E-01,-0.43167E-01,-0.36526E-01,-0.29783E-01, & - &-0.22944E-01,-0.16015E-01,-0.90018E-02,-0.19110E-02, 0.52525E-02, & - & 0.12484E-01, 0.19778E-01, 0.27131E-01, 0.34538E-01, 0.41996E-01, & - & 0.49501E-01, 0.57049E-01, 0.64637E-01, 0.72262E-01, 0.79922E-01, & - & 0.87613E-01, 0.95334E-01, 0.10308E+00, 0.11085E+00, 0.11865E+00, & - & 0.12647E+00, 0.13431E+00, 0.14217E+00, 0.15004E+00, 0.15794E+00, & - & 0.16585E+00, 0.17377E+00, 0.18172E+00, 0.18967E+00, 0.19765E+00, & - & 0.20564E+00, 0.21364E+00, 0.22167E+00, 0.22971E+00, 0.23776E+00, & - & 0.24584E+00, 0.25394E+00, 0.26206E+00, 0.27020E+00, 0.27836E+00, & - & 0.28655E+00, 0.29476E+00, 0.30301E+00, 0.31128E+00, 0.31958E+00, & - & 0.32791E+00, 0.33628E+00, 0.34468E+00, 0.35311E+00, 0.36158E+00, & - & 0.37009E+00, 0.37864E+00, 0.38723E+00, 0.39586E+00, 0.40453E+00, & - & 0.41324E+00, 0.42200E+00, 0.43079E+00, 0.43963E+00, 0.44852E+00, & - & 0.45744E+00, 0.46641E+00, 0.47542E+00, 0.48448E+00, 0.49357E+00, & - & 0.50270E+00, 0.51188E+00, 0.52109E+00, 0.53034E+00, 0.53963E+00/ - - DATA (BNC11M(I),I=101,200)/ & - & 0.54895E+00, 0.55830E+00, 0.56769E+00, 0.57710E+00, 0.58655E+00, & - & 0.59602E+00, 0.60551E+00, 0.61503E+00, 0.62458E+00, 0.63414E+00, & - & 0.64372E+00, 0.65332E+00, 0.66293E+00, 0.67256E+00, 0.68220E+00, & - & 0.69184E+00, 0.70150E+00, 0.71117E+00, 0.72084E+00, 0.73051E+00, & - & 0.74019E+00, 0.74987E+00, 0.75955E+00, 0.76923E+00, 0.77890E+00, & - & 0.78858E+00, 0.79825E+00, 0.80791E+00, 0.81757E+00, 0.82722E+00, & - & 0.83687E+00, 0.84651E+00, 0.85613E+00, 0.86575E+00, 0.87536E+00, & - & 0.88496E+00, 0.89454E+00, 0.90412E+00, 0.91368E+00, 0.92323E+00, & - & 0.93277E+00, 0.94229E+00, 0.95180E+00, 0.96129E+00, 0.97078E+00, & - & 0.98024E+00, 0.98969E+00, 0.99913E+00, 0.10086E+01, 0.10180E+01, & - & 0.10273E+01, 0.10367E+01, 0.10461E+01, 0.10554E+01, 0.10647E+01, & - & 0.10741E+01, 0.10833E+01, 0.10926E+01, 0.11019E+01, 0.11111E+01, & - & 0.11203E+01, 0.11296E+01, 0.11387E+01, 0.11479E+01, 0.11571E+01, & - & 0.11662E+01, 0.11753E+01, 0.11844E+01, 0.11935E+01, 0.12026E+01, & - & 0.12116E+01, 0.12207E+01, 0.12297E+01, 0.12387E+01, 0.12477E+01, & - & 0.12566E+01, 0.12656E+01, 0.12745E+01, 0.12834E+01, 0.12923E+01, & - & 0.13012E+01, 0.13100E+01, 0.13189E+01, 0.13277E+01, 0.13365E+01, & - & 0.13453E+01, 0.13540E+01, 0.13628E+01, 0.13715E+01, 0.13802E+01, & - & 0.13889E+01, 0.13976E+01, 0.14062E+01, 0.14149E+01, 0.14235E+01, & - & 0.14321E+01, 0.14407E+01, 0.14492E+01, 0.14578E+01, 0.14663E+01/ - - DATA (BNC11M(I),I=201,300)/ & - & 0.14748E+01, 0.14833E+01, 0.14918E+01, 0.15003E+01, 0.15087E+01, & - & 0.15171E+01, 0.15255E+01, 0.15339E+01, 0.15423E+01, 0.15506E+01, & - & 0.15589E+01, 0.15673E+01, 0.15756E+01, 0.15838E+01, 0.15921E+01, & - & 0.16003E+01, 0.16086E+01, 0.16168E+01, 0.16250E+01, 0.16331E+01, & - & 0.16413E+01, 0.16494E+01, 0.16576E+01, 0.16657E+01, 0.16737E+01, & - & 0.16818E+01, 0.16899E+01, 0.16979E+01, 0.17059E+01, 0.17139E+01, & - & 0.17219E+01, 0.17299E+01, 0.17378E+01, 0.17457E+01, 0.17536E+01, & - & 0.17615E+01, 0.17694E+01, 0.17773E+01, 0.17851E+01, 0.17930E+01, & - & 0.18008E+01, 0.18086E+01, 0.18164E+01, 0.18241E+01, 0.18319E+01, & - & 0.18396E+01, 0.18473E+01, 0.18550E+01, 0.18627E+01, 0.18703E+01, & - & 0.18780E+01, 0.18856E+01, 0.18932E+01, 0.19008E+01, 0.19084E+01, & - & 0.19160E+01, 0.19235E+01, 0.19311E+01, 0.19386E+01, 0.19461E+01, & - & 0.19536E+01, 0.19611E+01, 0.19685E+01, 0.19759E+01, 0.19834E+01, & - & 0.19908E+01, 0.19982E+01, 0.20055E+01, 0.20129E+01, 0.20203E+01, & - & 0.20276E+01, 0.20349E+01, 0.20422E+01, 0.20495E+01, 0.20568E+01, & - & 0.20640E+01, 0.20713E+01, 0.20785E+01, 0.20857E+01, 0.20929E+01, & - & 0.21001E+01, 0.21072E+01, 0.21144E+01, 0.21215E+01, 0.21286E+01, & - & 0.21357E+01, 0.21428E+01, 0.21499E+01, 0.21570E+01, 0.21640E+01, & - & 0.21710E+01, 0.21781E+01, 0.21851E+01, 0.21921E+01, 0.21990E+01, & - & 0.22060E+01, 0.22129E+01, 0.22199E+01, 0.22268E+01, 0.22337E+01/ - - DATA (BNC11M(I),I=301,400)/ & - & 0.22406E+01, 0.22475E+01, 0.22543E+01, 0.22612E+01, 0.22680E+01, & - & 0.22748E+01, 0.22816E+01, 0.22884E+01, 0.22952E+01, 0.23020E+01, & - & 0.23087E+01, 0.23155E+01, 0.23222E+01, 0.23289E+01, 0.23356E+01, & - & 0.23423E+01, 0.23490E+01, 0.23556E+01, 0.23623E+01, 0.23689E+01, & - & 0.23755E+01, 0.23821E+01, 0.23887E+01, 0.23953E+01, 0.24019E+01, & - & 0.24084E+01, 0.24149E+01, 0.24215E+01, 0.24280E+01, 0.24345E+01, & - & 0.24410E+01, 0.24475E+01, 0.24539E+01, 0.24604E+01, 0.24668E+01, & - & 0.24732E+01, 0.24796E+01, 0.24860E+01, 0.24924E+01, 0.24988E+01, & - & 0.25052E+01, 0.25115E+01, 0.25179E+01, 0.25242E+01, 0.25305E+01, & - & 0.25368E+01, 0.25431E+01, 0.25494E+01, 0.25557E+01, 0.25619E+01, & - & 0.25681E+01, 0.25744E+01, 0.25806E+01, 0.25868E+01, 0.25930E+01, & - & 0.25992E+01, 0.26054E+01, 0.26115E+01, 0.26177E+01, 0.26238E+01, & - & 0.26299E+01, 0.26360E+01, 0.26421E+01, 0.26482E+01, 0.26543E+01, & - & 0.26604E+01, 0.26664E+01, 0.26725E+01, 0.26785E+01, 0.26845E+01, & - & 0.26906E+01, 0.26966E+01, 0.27025E+01, 0.27085E+01, 0.27145E+01, & - & 0.27204E+01, 0.27264E+01, 0.27323E+01, 0.27382E+01, 0.27442E+01, & - & 0.27501E+01, 0.27560E+01, 0.27618E+01, 0.27677E+01, 0.27736E+01, & - & 0.27794E+01, 0.27852E+01, 0.27911E+01, 0.27969E+01, 0.28027E+01, & - & 0.28085E+01, 0.28143E+01, 0.28200E+01, 0.28258E+01, 0.28316E+01, & - & 0.28373E+01, 0.28430E+01, 0.28488E+01, 0.28545E+01, 0.28602E+01/ - - DATA (BNC11M(I),I=401,500)/ & - & 0.28659E+01, 0.28715E+01, 0.28772E+01, 0.28829E+01, 0.28885E+01, & - & 0.28942E+01, 0.28998E+01, 0.29054E+01, 0.29110E+01, 0.29166E+01, & - & 0.29222E+01, 0.29278E+01, 0.29334E+01, 0.29389E+01, 0.29445E+01, & - & 0.29500E+01, 0.29555E+01, 0.29611E+01, 0.29666E+01, 0.29721E+01, & - & 0.29776E+01, 0.29831E+01, 0.29885E+01, 0.29940E+01, 0.29995E+01, & - & 0.30049E+01, 0.30103E+01, 0.30158E+01, 0.30212E+01, 0.30266E+01, & - & 0.30320E+01, 0.30374E+01, 0.30428E+01, 0.30481E+01, 0.30535E+01, & - & 0.30588E+01, 0.30642E+01, 0.30695E+01, 0.30748E+01, 0.30802E+01, & - & 0.30855E+01, 0.30908E+01, 0.30961E+01, 0.31013E+01, 0.31066E+01, & - & 0.31119E+01, 0.31171E+01, 0.31224E+01, 0.31276E+01, 0.31328E+01, & - & 0.31380E+01, 0.31433E+01, 0.31485E+01, 0.31536E+01, 0.31588E+01, & - & 0.31640E+01, 0.31692E+01, 0.31743E+01, 0.31795E+01, 0.31846E+01, & - & 0.31897E+01, 0.31949E+01, 0.32000E+01, 0.32051E+01, 0.32102E+01, & - & 0.32153E+01, 0.32204E+01, 0.32254E+01, 0.32305E+01, 0.32356E+01, & - & 0.32406E+01, 0.32456E+01, 0.32507E+01, 0.32557E+01, 0.32607E+01, & - & 0.32657E+01, 0.32707E+01, 0.32757E+01, 0.32807E+01, 0.32857E+01, & - & 0.32906E+01, 0.32956E+01, 0.33005E+01, 0.33055E+01, 0.33104E+01, & - & 0.33153E+01, 0.33202E+01, 0.33252E+01, 0.33301E+01, 0.33350E+01, & - & 0.33398E+01, 0.33447E+01, 0.33496E+01, 0.33545E+01, 0.33593E+01, & - & 0.33642E+01, 0.33690E+01, 0.33738E+01, 0.33787E+01, 0.33835E+01/ - - DATA (BNC11M(I),I=501,600)/ & - & 0.33883E+01, 0.33931E+01, 0.33979E+01, 0.34027E+01, 0.34074E+01, & - & 0.34122E+01, 0.34170E+01, 0.34217E+01, 0.34265E+01, 0.34312E+01, & - & 0.34360E+01, 0.34407E+01, 0.34454E+01, 0.34501E+01, 0.34548E+01, & - & 0.34595E+01, 0.34642E+01, 0.34689E+01, 0.34736E+01, 0.34782E+01, & - & 0.34829E+01, 0.34876E+01, 0.34922E+01, 0.34968E+01, 0.35015E+01, & - & 0.35061E+01, 0.35107E+01, 0.35153E+01, 0.35199E+01, 0.35245E+01, & - & 0.35291E+01, 0.35337E+01, 0.35383E+01, 0.35428E+01, 0.35474E+01, & - & 0.35520E+01, 0.35565E+01, 0.35611E+01, 0.35656E+01, 0.35701E+01, & - & 0.35746E+01, 0.35792E+01, 0.35837E+01, 0.35882E+01, 0.35927E+01, & - & 0.35971E+01, 0.36016E+01, 0.36061E+01, 0.36106E+01, 0.36150E+01, & - & 0.36195E+01, 0.36239E+01, 0.36284E+01, 0.36328E+01, 0.36372E+01, & - & 0.36416E+01, 0.36461E+01, 0.36505E+01, 0.36549E+01, 0.36593E+01, & - & 0.36636E+01, 0.36680E+01, 0.36724E+01, 0.36768E+01, 0.36811E+01, & - & 0.36855E+01, 0.36898E+01, 0.36942E+01, 0.36985E+01, 0.37028E+01, & - & 0.37072E+01, 0.37115E+01, 0.37158E+01, 0.37201E+01, 0.37244E+01, & - & 0.37287E+01, 0.37330E+01, 0.37373E+01, 0.37415E+01, 0.37458E+01, & - & 0.37501E+01, 0.37543E+01, 0.37586E+01, 0.37628E+01, 0.37670E+01, & - & 0.37713E+01, 0.37755E+01, 0.37797E+01, 0.37839E+01, 0.37881E+01, & - & 0.37923E+01, 0.37965E+01, 0.38007E+01, 0.38049E+01, 0.38091E+01, & - & 0.38133E+01, 0.38174E+01, 0.38216E+01, 0.38257E+01, 0.38299E+01/ - - DATA (BNC11M(I),I=601,700)/ & - & 0.38743E+01, 0.39148E+01, 0.39548E+01, 0.39942E+01, 0.40331E+01, & - & 0.40715E+01, 0.41094E+01, 0.41467E+01, 0.41836E+01, 0.42200E+01, & - & 0.42560E+01, 0.42915E+01, 0.43265E+01, 0.43611E+01, 0.43953E+01, & - & 0.44291E+01, 0.44624E+01, 0.44954E+01, 0.45280E+01, 0.45601E+01, & - & 0.45919E+01, 0.46234E+01, 0.46544E+01, 0.46852E+01, 0.47155E+01, & - & 0.47456E+01, 0.47752E+01, 0.48046E+01, 0.48336E+01, 0.48624E+01, & - & 0.48908E+01, 0.49189E+01, 0.49467E+01, 0.49742E+01, 0.50014E+01, & - & 0.50283E+01, 0.50550E+01, 0.50814E+01, 0.51075E+01, 0.51333E+01, & - & 0.51589E+01, 0.51842E+01, 0.52093E+01, 0.52341E+01, 0.52587E+01, & - & 0.52830E+01, 0.53071E+01, 0.53309E+01, 0.53546E+01, 0.53780E+01, & - & 0.54011E+01, 0.54241E+01, 0.54468E+01, 0.54694E+01, 0.54917E+01, & - & 0.55138E+01, 0.55357E+01, 0.55574E+01, 0.55789E+01, 0.56002E+01, & - & 0.56214E+01, 0.56423E+01, 0.56630E+01, 0.56836E+01, 0.57040E+01, & - & 0.57242E+01, 0.57442E+01, 0.57640E+01, 0.57837E+01, 0.58032E+01, & - & 0.58226E+01, 0.58417E+01, 0.58608E+01, 0.58796E+01, 0.58983E+01, & - & 0.59168E+01, 0.59352E+01, 0.59534E+01, 0.59715E+01, 0.59894E+01, & - & 0.60072E+01, 0.60248E+01, 0.60423E+01, 0.60597E+01, 0.60769E+01, & - & 0.60940E+01, 0.61109E+01, 0.61277E+01, 0.61444E+01, 0.61609E+01, & - & 0.61773E+01, 0.61936E+01, 0.62097E+01, 0.62257E+01, 0.62416E+01, & - & 0.62574E+01, 0.62731E+01, 0.62886E+01, 0.63040E+01, 0.63193E+01/ - - DATA (BNC11M(I),I=701,741)/ & - & 0.63345E+01, 0.63496E+01, 0.63645E+01, 0.63794E+01, 0.63941E+01, & - & 0.64087E+01, 0.64232E+01, 0.64376E+01, 0.64519E+01, 0.64661E+01, & - & 0.64802E+01, 0.64942E+01, 0.65081E+01, 0.65218E+01, 0.65355E+01, & - & 0.65491E+01, 0.65626E+01, 0.65760E+01, 0.65893E+01, 0.66025E+01, & - & 0.66156E+01, 0.66286E+01, 0.66415E+01, 0.66543E+01, 0.66671E+01, & - & 0.66797E+01, 0.66923E+01, 0.67047E+01, 0.67171E+01, 0.67294E+01, & - & 0.67416E+01, 0.67538E+01, 0.67658E+01, 0.67778E+01, 0.67897E+01, & - & 0.68015E+01, 0.68132E+01, 0.68248E+01, 0.68364E+01, 0.68479E+01, & - & 0.68593E+01 & - & / -! -! *** NaHSO4 -! - DATA (BNC12M(I),I=1,100)/ & - &-0.49197E-01,-0.10142E+00,-0.12478E+00,-0.13991E+00,-0.15083E+00, & - &-0.15912E+00,-0.16560E+00,-0.17074E+00,-0.17485E+00,-0.17812E+00, & - &-0.18070E+00,-0.18270E+00,-0.18421E+00,-0.18528E+00,-0.18597E+00, & - &-0.18631E+00,-0.18635E+00,-0.18610E+00,-0.18560E+00,-0.18485E+00, & - &-0.18389E+00,-0.18272E+00,-0.18136E+00,-0.17982E+00,-0.17811E+00, & - &-0.17624E+00,-0.17421E+00,-0.17204E+00,-0.16973E+00,-0.16730E+00, & - &-0.16473E+00,-0.16205E+00,-0.15925E+00,-0.15634E+00,-0.15333E+00, & - &-0.15021E+00,-0.14700E+00,-0.14370E+00,-0.14031E+00,-0.13683E+00, & - &-0.13327E+00,-0.12964E+00,-0.12592E+00,-0.12214E+00,-0.11829E+00, & - &-0.11437E+00,-0.11038E+00,-0.10634E+00,-0.10223E+00,-0.98072E-01, & - &-0.93855E-01,-0.89586E-01,-0.85265E-01,-0.80895E-01,-0.76477E-01, & - &-0.72014E-01,-0.67505E-01,-0.62952E-01,-0.58357E-01,-0.53721E-01, & - &-0.49044E-01,-0.44327E-01,-0.39571E-01,-0.34777E-01,-0.29944E-01, & - &-0.25074E-01,-0.20167E-01,-0.15222E-01,-0.10240E-01,-0.52212E-02, & - &-0.16537E-03, 0.49275E-02, 0.10057E-01, 0.15225E-01, 0.20429E-01, & - & 0.25672E-01, 0.30952E-01, 0.36270E-01, 0.41626E-01, 0.47021E-01, & - & 0.52455E-01, 0.57927E-01, 0.63438E-01, 0.68988E-01, 0.74576E-01, & - & 0.80203E-01, 0.85868E-01, 0.91572E-01, 0.97314E-01, 0.10309E+00, & - & 0.10891E+00, 0.11476E+00, 0.12065E+00, 0.12657E+00, 0.13253E+00, & - & 0.13852E+00, 0.14455E+00, 0.15060E+00, 0.15669E+00, 0.16280E+00/ - - DATA (BNC12M(I),I=101,200)/ & - & 0.16895E+00, 0.17512E+00, 0.18131E+00, 0.18753E+00, 0.19377E+00, & - & 0.20004E+00, 0.20632E+00, 0.21262E+00, 0.21894E+00, 0.22528E+00, & - & 0.23163E+00, 0.23799E+00, 0.24437E+00, 0.25075E+00, 0.25715E+00, & - & 0.26355E+00, 0.26996E+00, 0.27637E+00, 0.28279E+00, 0.28921E+00, & - & 0.29563E+00, 0.30206E+00, 0.30848E+00, 0.31491E+00, 0.32133E+00, & - & 0.32775E+00, 0.33417E+00, 0.34058E+00, 0.34699E+00, 0.35339E+00, & - & 0.35979E+00, 0.36618E+00, 0.37256E+00, 0.37893E+00, 0.38530E+00, & - & 0.39166E+00, 0.39801E+00, 0.40435E+00, 0.41068E+00, 0.41700E+00, & - & 0.42331E+00, 0.42961E+00, 0.43590E+00, 0.44218E+00, 0.44844E+00, & - & 0.45470E+00, 0.46094E+00, 0.46717E+00, 0.47339E+00, 0.47960E+00, & - & 0.48580E+00, 0.49198E+00, 0.49815E+00, 0.50431E+00, 0.51046E+00, & - & 0.51659E+00, 0.52271E+00, 0.52882E+00, 0.53491E+00, 0.54099E+00, & - & 0.54706E+00, 0.55312E+00, 0.55916E+00, 0.56519E+00, 0.57121E+00, & - & 0.57721E+00, 0.58320E+00, 0.58918E+00, 0.59514E+00, 0.60109E+00, & - & 0.60703E+00, 0.61295E+00, 0.61886E+00, 0.62476E+00, 0.63065E+00, & - & 0.63652E+00, 0.64237E+00, 0.64822E+00, 0.65405E+00, 0.65987E+00, & - & 0.66567E+00, 0.67146E+00, 0.67724E+00, 0.68301E+00, 0.68876E+00, & - & 0.69450E+00, 0.70022E+00, 0.70593E+00, 0.71163E+00, 0.71732E+00, & - & 0.72299E+00, 0.72865E+00, 0.73430E+00, 0.73993E+00, 0.74555E+00, & - & 0.75116E+00, 0.75675E+00, 0.76233E+00, 0.76790E+00, 0.77346E+00/ - - DATA (BNC12M(I),I=201,300)/ & - & 0.77900E+00, 0.78453E+00, 0.79005E+00, 0.79555E+00, 0.80105E+00, & - & 0.80653E+00, 0.81199E+00, 0.81745E+00, 0.82289E+00, 0.82832E+00, & - & 0.83373E+00, 0.83914E+00, 0.84453E+00, 0.84991E+00, 0.85528E+00, & - & 0.86063E+00, 0.86597E+00, 0.87130E+00, 0.87662E+00, 0.88193E+00, & - & 0.88722E+00, 0.89250E+00, 0.89777E+00, 0.90303E+00, 0.90827E+00, & - & 0.91351E+00, 0.91873E+00, 0.92394E+00, 0.92914E+00, 0.93432E+00, & - & 0.93950E+00, 0.94466E+00, 0.94981E+00, 0.95495E+00, 0.96008E+00, & - & 0.96519E+00, 0.97030E+00, 0.97539E+00, 0.98047E+00, 0.98554E+00, & - & 0.99060E+00, 0.99565E+00, 0.10007E+01, 0.10057E+01, 0.10107E+01, & - & 0.10157E+01, 0.10207E+01, 0.10257E+01, 0.10307E+01, 0.10356E+01, & - & 0.10406E+01, 0.10455E+01, 0.10504E+01, 0.10554E+01, 0.10603E+01, & - & 0.10652E+01, 0.10700E+01, 0.10749E+01, 0.10798E+01, 0.10846E+01, & - & 0.10895E+01, 0.10943E+01, 0.10991E+01, 0.11039E+01, 0.11087E+01, & - & 0.11135E+01, 0.11183E+01, 0.11230E+01, 0.11278E+01, 0.11326E+01, & - & 0.11373E+01, 0.11420E+01, 0.11467E+01, 0.11514E+01, 0.11561E+01, & - & 0.11608E+01, 0.11655E+01, 0.11702E+01, 0.11748E+01, 0.11795E+01, & - & 0.11841E+01, 0.11887E+01, 0.11933E+01, 0.11980E+01, 0.12025E+01, & - & 0.12071E+01, 0.12117E+01, 0.12163E+01, 0.12208E+01, 0.12254E+01, & - & 0.12299E+01, 0.12345E+01, 0.12390E+01, 0.12435E+01, 0.12480E+01, & - & 0.12525E+01, 0.12570E+01, 0.12614E+01, 0.12659E+01, 0.12704E+01/ - - DATA (BNC12M(I),I=301,400)/ & - & 0.12748E+01, 0.12792E+01, 0.12837E+01, 0.12881E+01, 0.12925E+01, & - & 0.12969E+01, 0.13013E+01, 0.13057E+01, 0.13101E+01, 0.13144E+01, & - & 0.13188E+01, 0.13231E+01, 0.13275E+01, 0.13318E+01, 0.13361E+01, & - & 0.13404E+01, 0.13447E+01, 0.13490E+01, 0.13533E+01, 0.13576E+01, & - & 0.13619E+01, 0.13661E+01, 0.13704E+01, 0.13746E+01, 0.13788E+01, & - & 0.13831E+01, 0.13873E+01, 0.13915E+01, 0.13957E+01, 0.13999E+01, & - & 0.14041E+01, 0.14083E+01, 0.14124E+01, 0.14166E+01, 0.14207E+01, & - & 0.14249E+01, 0.14290E+01, 0.14331E+01, 0.14373E+01, 0.14414E+01, & - & 0.14455E+01, 0.14496E+01, 0.14537E+01, 0.14577E+01, 0.14618E+01, & - & 0.14659E+01, 0.14699E+01, 0.14740E+01, 0.14780E+01, 0.14820E+01, & - & 0.14861E+01, 0.14901E+01, 0.14941E+01, 0.14981E+01, 0.15021E+01, & - & 0.15061E+01, 0.15101E+01, 0.15140E+01, 0.15180E+01, 0.15219E+01, & - & 0.15259E+01, 0.15298E+01, 0.15338E+01, 0.15377E+01, 0.15416E+01, & - & 0.15455E+01, 0.15494E+01, 0.15533E+01, 0.15572E+01, 0.15611E+01, & - & 0.15650E+01, 0.15688E+01, 0.15727E+01, 0.15765E+01, 0.15804E+01, & - & 0.15842E+01, 0.15881E+01, 0.15919E+01, 0.15957E+01, 0.15995E+01, & - & 0.16033E+01, 0.16071E+01, 0.16109E+01, 0.16147E+01, 0.16185E+01, & - & 0.16222E+01, 0.16260E+01, 0.16297E+01, 0.16335E+01, 0.16372E+01, & - & 0.16410E+01, 0.16447E+01, 0.16484E+01, 0.16521E+01, 0.16558E+01, & - & 0.16595E+01, 0.16632E+01, 0.16669E+01, 0.16706E+01, 0.16743E+01/ - - DATA (BNC12M(I),I=401,500)/ & - & 0.16779E+01, 0.16816E+01, 0.16852E+01, 0.16889E+01, 0.16925E+01, & - & 0.16962E+01, 0.16998E+01, 0.17034E+01, 0.17070E+01, 0.17106E+01, & - & 0.17142E+01, 0.17178E+01, 0.17214E+01, 0.17250E+01, 0.17286E+01, & - & 0.17321E+01, 0.17357E+01, 0.17393E+01, 0.17428E+01, 0.17464E+01, & - & 0.17499E+01, 0.17534E+01, 0.17569E+01, 0.17605E+01, 0.17640E+01, & - & 0.17675E+01, 0.17710E+01, 0.17745E+01, 0.17780E+01, 0.17815E+01, & - & 0.17849E+01, 0.17884E+01, 0.17919E+01, 0.17953E+01, 0.17988E+01, & - & 0.18022E+01, 0.18057E+01, 0.18091E+01, 0.18125E+01, 0.18159E+01, & - & 0.18194E+01, 0.18228E+01, 0.18262E+01, 0.18296E+01, 0.18330E+01, & - & 0.18364E+01, 0.18397E+01, 0.18431E+01, 0.18465E+01, 0.18498E+01, & - & 0.18532E+01, 0.18566E+01, 0.18599E+01, 0.18632E+01, 0.18666E+01, & - & 0.18699E+01, 0.18732E+01, 0.18766E+01, 0.18799E+01, 0.18832E+01, & - & 0.18865E+01, 0.18898E+01, 0.18931E+01, 0.18964E+01, 0.18996E+01, & - & 0.19029E+01, 0.19062E+01, 0.19094E+01, 0.19127E+01, 0.19160E+01, & - & 0.19192E+01, 0.19224E+01, 0.19257E+01, 0.19289E+01, 0.19321E+01, & - & 0.19354E+01, 0.19386E+01, 0.19418E+01, 0.19450E+01, 0.19482E+01, & - & 0.19514E+01, 0.19546E+01, 0.19577E+01, 0.19609E+01, 0.19641E+01, & - & 0.19673E+01, 0.19704E+01, 0.19736E+01, 0.19767E+01, 0.19799E+01, & - & 0.19830E+01, 0.19862E+01, 0.19893E+01, 0.19924E+01, 0.19955E+01, & - & 0.19987E+01, 0.20018E+01, 0.20049E+01, 0.20080E+01, 0.20111E+01/ - - DATA (BNC12M(I),I=501,600)/ & - & 0.20142E+01, 0.20173E+01, 0.20203E+01, 0.20234E+01, 0.20265E+01, & - & 0.20295E+01, 0.20326E+01, 0.20357E+01, 0.20387E+01, 0.20418E+01, & - & 0.20448E+01, 0.20478E+01, 0.20509E+01, 0.20539E+01, 0.20569E+01, & - & 0.20599E+01, 0.20630E+01, 0.20660E+01, 0.20690E+01, 0.20720E+01, & - & 0.20750E+01, 0.20780E+01, 0.20809E+01, 0.20839E+01, 0.20869E+01, & - & 0.20899E+01, 0.20928E+01, 0.20958E+01, 0.20987E+01, 0.21017E+01, & - & 0.21046E+01, 0.21076E+01, 0.21105E+01, 0.21135E+01, 0.21164E+01, & - & 0.21193E+01, 0.21222E+01, 0.21251E+01, 0.21281E+01, 0.21310E+01, & - & 0.21339E+01, 0.21368E+01, 0.21397E+01, 0.21425E+01, 0.21454E+01, & - & 0.21483E+01, 0.21512E+01, 0.21541E+01, 0.21569E+01, 0.21598E+01, & - & 0.21626E+01, 0.21655E+01, 0.21683E+01, 0.21712E+01, 0.21740E+01, & - & 0.21769E+01, 0.21797E+01, 0.21825E+01, 0.21853E+01, 0.21882E+01, & - & 0.21910E+01, 0.21938E+01, 0.21966E+01, 0.21994E+01, 0.22022E+01, & - & 0.22050E+01, 0.22078E+01, 0.22106E+01, 0.22133E+01, 0.22161E+01, & - & 0.22189E+01, 0.22216E+01, 0.22244E+01, 0.22272E+01, 0.22299E+01, & - & 0.22327E+01, 0.22354E+01, 0.22382E+01, 0.22409E+01, 0.22436E+01, & - & 0.22464E+01, 0.22491E+01, 0.22518E+01, 0.22545E+01, 0.22572E+01, & - & 0.22600E+01, 0.22627E+01, 0.22654E+01, 0.22681E+01, 0.22708E+01, & - & 0.22734E+01, 0.22761E+01, 0.22788E+01, 0.22815E+01, 0.22842E+01, & - & 0.22868E+01, 0.22895E+01, 0.22922E+01, 0.22948E+01, 0.22975E+01/ - - DATA (BNC12M(I),I=601,700)/ & - & 0.23259E+01, 0.23518E+01, 0.23774E+01, 0.24026E+01, 0.24274E+01, & - & 0.24519E+01, 0.24761E+01, 0.24999E+01, 0.25234E+01, 0.25466E+01, & - & 0.25694E+01, 0.25920E+01, 0.26142E+01, 0.26362E+01, 0.26579E+01, & - & 0.26793E+01, 0.27004E+01, 0.27213E+01, 0.27419E+01, 0.27622E+01, & - & 0.27823E+01, 0.28022E+01, 0.28218E+01, 0.28411E+01, 0.28602E+01, & - & 0.28791E+01, 0.28978E+01, 0.29162E+01, 0.29344E+01, 0.29524E+01, & - & 0.29702E+01, 0.29878E+01, 0.30052E+01, 0.30224E+01, 0.30393E+01, & - & 0.30561E+01, 0.30727E+01, 0.30891E+01, 0.31054E+01, 0.31214E+01, & - & 0.31373E+01, 0.31530E+01, 0.31685E+01, 0.31838E+01, 0.31990E+01, & - & 0.32140E+01, 0.32289E+01, 0.32436E+01, 0.32581E+01, 0.32725E+01, & - & 0.32868E+01, 0.33008E+01, 0.33148E+01, 0.33286E+01, 0.33422E+01, & - & 0.33557E+01, 0.33691E+01, 0.33823E+01, 0.33954E+01, 0.34084E+01, & - & 0.34212E+01, 0.34339E+01, 0.34465E+01, 0.34589E+01, 0.34712E+01, & - & 0.34834E+01, 0.34955E+01, 0.35075E+01, 0.35193E+01, 0.35310E+01, & - & 0.35426E+01, 0.35541E+01, 0.35655E+01, 0.35768E+01, 0.35880E+01, & - & 0.35990E+01, 0.36100E+01, 0.36208E+01, 0.36316E+01, 0.36422E+01, & - & 0.36527E+01, 0.36632E+01, 0.36735E+01, 0.36838E+01, 0.36939E+01, & - & 0.37040E+01, 0.37139E+01, 0.37238E+01, 0.37336E+01, 0.37432E+01, & - & 0.37528E+01, 0.37623E+01, 0.37718E+01, 0.37811E+01, 0.37903E+01, & - & 0.37995E+01, 0.38086E+01, 0.38176E+01, 0.38265E+01, 0.38353E+01/ - - DATA (BNC12M(I),I=701,741)/ & - & 0.38441E+01, 0.38528E+01, 0.38614E+01, 0.38699E+01, 0.38783E+01, & - & 0.38867E+01, 0.38950E+01, 0.39032E+01, 0.39113E+01, 0.39194E+01, & - & 0.39274E+01, 0.39353E+01, 0.39432E+01, 0.39510E+01, 0.39587E+01, & - & 0.39664E+01, 0.39740E+01, 0.39815E+01, 0.39889E+01, 0.39963E+01, & - & 0.40037E+01, 0.40109E+01, 0.40181E+01, 0.40253E+01, 0.40323E+01, & - & 0.40393E+01, 0.40463E+01, 0.40532E+01, 0.40600E+01, 0.40668E+01, & - & 0.40735E+01, 0.40802E+01, 0.40867E+01, 0.40933E+01, 0.40998E+01, & - & 0.41062E+01, 0.41126E+01, 0.41189E+01, 0.41252E+01, 0.41314E+01, & - & 0.41375E+01 & - & / -! -! *** (NH4)3H(SO4)2 -! - DATA (BNC13M(I),I=1,100)/ & - &-0.81873E-01,-0.17829E+00,-0.22674E+00,-0.26117E+00,-0.28833E+00, & - &-0.31093E+00,-0.33037E+00,-0.34746E+00,-0.36275E+00,-0.37660E+00, & - &-0.38926E+00,-0.40094E+00,-0.41177E+00,-0.42187E+00,-0.43134E+00, & - &-0.44025E+00,-0.44867E+00,-0.45663E+00,-0.46420E+00,-0.47139E+00, & - &-0.47826E+00,-0.48481E+00,-0.49108E+00,-0.49709E+00,-0.50285E+00, & - &-0.50838E+00,-0.51370E+00,-0.51882E+00,-0.52375E+00,-0.52851E+00, & - &-0.53309E+00,-0.53751E+00,-0.54179E+00,-0.54591E+00,-0.54990E+00, & - &-0.55376E+00,-0.55750E+00,-0.56111E+00,-0.56461E+00,-0.56800E+00, & - &-0.57129E+00,-0.57447E+00,-0.57756E+00,-0.58056E+00,-0.58346E+00, & - &-0.58628E+00,-0.58902E+00,-0.59167E+00,-0.59425E+00,-0.59676E+00, & - &-0.59919E+00,-0.60156E+00,-0.60386E+00,-0.60609E+00,-0.60827E+00, & - &-0.61038E+00,-0.61243E+00,-0.61443E+00,-0.61638E+00,-0.61827E+00, & - &-0.62011E+00,-0.62191E+00,-0.62365E+00,-0.62535E+00,-0.62701E+00, & - &-0.62862E+00,-0.63019E+00,-0.63172E+00,-0.63321E+00,-0.63466E+00, & - &-0.63607E+00,-0.63745E+00,-0.63879E+00,-0.64009E+00,-0.64136E+00, & - &-0.64260E+00,-0.64381E+00,-0.64498E+00,-0.64613E+00,-0.64724E+00, & - &-0.64832E+00,-0.64937E+00,-0.65040E+00,-0.65140E+00,-0.65237E+00, & - &-0.65331E+00,-0.65422E+00,-0.65512E+00,-0.65598E+00,-0.65682E+00, & - &-0.65764E+00,-0.65843E+00,-0.65920E+00,-0.65995E+00,-0.66068E+00, & - &-0.66138E+00,-0.66206E+00,-0.66273E+00,-0.66337E+00,-0.66399E+00/ - - DATA (BNC13M(I),I=101,200)/ & - &-0.66460E+00,-0.66519E+00,-0.66576E+00,-0.66631E+00,-0.66685E+00, & - &-0.66737E+00,-0.66787E+00,-0.66836E+00,-0.66884E+00,-0.66930E+00, & - &-0.66975E+00,-0.67019E+00,-0.67062E+00,-0.67103E+00,-0.67143E+00, & - &-0.67182E+00,-0.67220E+00,-0.67258E+00,-0.67294E+00,-0.67329E+00, & - &-0.67364E+00,-0.67397E+00,-0.67430E+00,-0.67462E+00,-0.67494E+00, & - &-0.67524E+00,-0.67555E+00,-0.67584E+00,-0.67613E+00,-0.67641E+00, & - &-0.67669E+00,-0.67696E+00,-0.67723E+00,-0.67750E+00,-0.67775E+00, & - &-0.67801E+00,-0.67826E+00,-0.67851E+00,-0.67875E+00,-0.67899E+00, & - &-0.67923E+00,-0.67946E+00,-0.67969E+00,-0.67992E+00,-0.68015E+00, & - &-0.68037E+00,-0.68059E+00,-0.68081E+00,-0.68103E+00,-0.68124E+00, & - &-0.68145E+00,-0.68166E+00,-0.68187E+00,-0.68208E+00,-0.68228E+00, & - &-0.68249E+00,-0.68269E+00,-0.68289E+00,-0.68309E+00,-0.68329E+00, & - &-0.68349E+00,-0.68368E+00,-0.68388E+00,-0.68408E+00,-0.68427E+00, & - &-0.68446E+00,-0.68465E+00,-0.68485E+00,-0.68504E+00,-0.68523E+00, & - &-0.68542E+00,-0.68561E+00,-0.68580E+00,-0.68599E+00,-0.68618E+00, & - &-0.68636E+00,-0.68655E+00,-0.68674E+00,-0.68693E+00,-0.68712E+00, & - &-0.68730E+00,-0.68749E+00,-0.68768E+00,-0.68787E+00,-0.68805E+00, & - &-0.68824E+00,-0.68843E+00,-0.68862E+00,-0.68880E+00,-0.68899E+00, & - &-0.68918E+00,-0.68937E+00,-0.68956E+00,-0.68975E+00,-0.68994E+00, & - &-0.69013E+00,-0.69032E+00,-0.69051E+00,-0.69070E+00,-0.69089E+00/ - - DATA (BNC13M(I),I=201,300)/ & - &-0.69108E+00,-0.69128E+00,-0.69147E+00,-0.69166E+00,-0.69186E+00, & - &-0.69205E+00,-0.69225E+00,-0.69244E+00,-0.69264E+00,-0.69283E+00, & - &-0.69303E+00,-0.69323E+00,-0.69343E+00,-0.69363E+00,-0.69383E+00, & - &-0.69403E+00,-0.69423E+00,-0.69443E+00,-0.69463E+00,-0.69484E+00, & - &-0.69504E+00,-0.69524E+00,-0.69545E+00,-0.69566E+00,-0.69586E+00, & - &-0.69607E+00,-0.69628E+00,-0.69649E+00,-0.69670E+00,-0.69691E+00, & - &-0.69712E+00,-0.69733E+00,-0.69754E+00,-0.69776E+00,-0.69797E+00, & - &-0.69818E+00,-0.69840E+00,-0.69862E+00,-0.69883E+00,-0.69905E+00, & - &-0.69927E+00,-0.69949E+00,-0.69971E+00,-0.69993E+00,-0.70016E+00, & - &-0.70038E+00,-0.70060E+00,-0.70083E+00,-0.70106E+00,-0.70128E+00, & - &-0.70151E+00,-0.70174E+00,-0.70197E+00,-0.70220E+00,-0.70243E+00, & - &-0.70266E+00,-0.70289E+00,-0.70313E+00,-0.70336E+00,-0.70360E+00, & - &-0.70383E+00,-0.70407E+00,-0.70431E+00,-0.70455E+00,-0.70479E+00, & - &-0.70503E+00,-0.70527E+00,-0.70551E+00,-0.70575E+00,-0.70600E+00, & - &-0.70624E+00,-0.70649E+00,-0.70674E+00,-0.70698E+00,-0.70723E+00, & - &-0.70748E+00,-0.70773E+00,-0.70798E+00,-0.70824E+00,-0.70849E+00, & - &-0.70874E+00,-0.70900E+00,-0.70925E+00,-0.70951E+00,-0.70977E+00, & - &-0.71002E+00,-0.71028E+00,-0.71054E+00,-0.71080E+00,-0.71107E+00, & - &-0.71133E+00,-0.71159E+00,-0.71186E+00,-0.71212E+00,-0.71239E+00, & - &-0.71266E+00,-0.71292E+00,-0.71319E+00,-0.71346E+00,-0.71373E+00/ - - DATA (BNC13M(I),I=301,400)/ & - &-0.71401E+00,-0.71428E+00,-0.71455E+00,-0.71483E+00,-0.71510E+00, & - &-0.71538E+00,-0.71565E+00,-0.71593E+00,-0.71621E+00,-0.71649E+00, & - &-0.71677E+00,-0.71705E+00,-0.71733E+00,-0.71762E+00,-0.71790E+00, & - &-0.71818E+00,-0.71847E+00,-0.71876E+00,-0.71904E+00,-0.71933E+00, & - &-0.71962E+00,-0.71991E+00,-0.72020E+00,-0.72049E+00,-0.72079E+00, & - &-0.72108E+00,-0.72137E+00,-0.72167E+00,-0.72196E+00,-0.72226E+00, & - &-0.72256E+00,-0.72286E+00,-0.72316E+00,-0.72346E+00,-0.72376E+00, & - &-0.72406E+00,-0.72436E+00,-0.72466E+00,-0.72497E+00,-0.72527E+00, & - &-0.72558E+00,-0.72589E+00,-0.72619E+00,-0.72650E+00,-0.72681E+00, & - &-0.72712E+00,-0.72743E+00,-0.72774E+00,-0.72806E+00,-0.72837E+00, & - &-0.72868E+00,-0.72900E+00,-0.72932E+00,-0.72963E+00,-0.72995E+00, & - &-0.73027E+00,-0.73059E+00,-0.73091E+00,-0.73123E+00,-0.73155E+00, & - &-0.73187E+00,-0.73220E+00,-0.73252E+00,-0.73284E+00,-0.73317E+00, & - &-0.73350E+00,-0.73382E+00,-0.73415E+00,-0.73448E+00,-0.73481E+00, & - &-0.73514E+00,-0.73547E+00,-0.73580E+00,-0.73614E+00,-0.73647E+00, & - &-0.73680E+00,-0.73714E+00,-0.73747E+00,-0.73781E+00,-0.73815E+00, & - &-0.73849E+00,-0.73882E+00,-0.73916E+00,-0.73951E+00,-0.73985E+00, & - &-0.74019E+00,-0.74053E+00,-0.74087E+00,-0.74122E+00,-0.74156E+00, & - &-0.74191E+00,-0.74226E+00,-0.74260E+00,-0.74295E+00,-0.74330E+00, & - &-0.74365E+00,-0.74400E+00,-0.74435E+00,-0.74470E+00,-0.74506E+00/ - - DATA (BNC13M(I),I=401,500)/ & - &-0.74541E+00,-0.74576E+00,-0.74612E+00,-0.74647E+00,-0.74683E+00, & - &-0.74719E+00,-0.74755E+00,-0.74790E+00,-0.74826E+00,-0.74862E+00, & - &-0.74898E+00,-0.74935E+00,-0.74971E+00,-0.75007E+00,-0.75043E+00, & - &-0.75080E+00,-0.75116E+00,-0.75153E+00,-0.75190E+00,-0.75226E+00, & - &-0.75263E+00,-0.75300E+00,-0.75337E+00,-0.75374E+00,-0.75411E+00, & - &-0.75448E+00,-0.75485E+00,-0.75523E+00,-0.75560E+00,-0.75597E+00, & - &-0.75635E+00,-0.75673E+00,-0.75710E+00,-0.75748E+00,-0.75786E+00, & - &-0.75824E+00,-0.75861E+00,-0.75899E+00,-0.75937E+00,-0.75976E+00, & - &-0.76014E+00,-0.76052E+00,-0.76090E+00,-0.76129E+00,-0.76167E+00, & - &-0.76206E+00,-0.76244E+00,-0.76283E+00,-0.76322E+00,-0.76361E+00, & - &-0.76399E+00,-0.76438E+00,-0.76477E+00,-0.76517E+00,-0.76556E+00, & - &-0.76595E+00,-0.76634E+00,-0.76673E+00,-0.76713E+00,-0.76752E+00, & - &-0.76792E+00,-0.76831E+00,-0.76871E+00,-0.76911E+00,-0.76951E+00, & - &-0.76991E+00,-0.77030E+00,-0.77070E+00,-0.77111E+00,-0.77151E+00, & - &-0.77191E+00,-0.77231E+00,-0.77271E+00,-0.77312E+00,-0.77352E+00, & - &-0.77393E+00,-0.77433E+00,-0.77474E+00,-0.77515E+00,-0.77555E+00, & - &-0.77596E+00,-0.77637E+00,-0.77678E+00,-0.77719E+00,-0.77760E+00, & - &-0.77801E+00,-0.77842E+00,-0.77884E+00,-0.77925E+00,-0.77966E+00, & - &-0.78008E+00,-0.78049E+00,-0.78091E+00,-0.78133E+00,-0.78174E+00, & - &-0.78216E+00,-0.78258E+00,-0.78300E+00,-0.78342E+00,-0.78384E+00/ - - DATA (BNC13M(I),I=501,600)/ & - &-0.78426E+00,-0.78468E+00,-0.78510E+00,-0.78552E+00,-0.78594E+00, & - &-0.78637E+00,-0.78679E+00,-0.78722E+00,-0.78764E+00,-0.78807E+00, & - &-0.78849E+00,-0.78892E+00,-0.78935E+00,-0.78978E+00,-0.79021E+00, & - &-0.79064E+00,-0.79107E+00,-0.79150E+00,-0.79193E+00,-0.79236E+00, & - &-0.79279E+00,-0.79323E+00,-0.79366E+00,-0.79409E+00,-0.79453E+00, & - &-0.79496E+00,-0.79540E+00,-0.79583E+00,-0.79627E+00,-0.79671E+00, & - &-0.79715E+00,-0.79759E+00,-0.79803E+00,-0.79846E+00,-0.79891E+00, & - &-0.79935E+00,-0.79979E+00,-0.80023E+00,-0.80067E+00,-0.80112E+00, & - &-0.80156E+00,-0.80200E+00,-0.80245E+00,-0.80289E+00,-0.80334E+00, & - &-0.80379E+00,-0.80423E+00,-0.80468E+00,-0.80513E+00,-0.80558E+00, & - &-0.80603E+00,-0.80648E+00,-0.80693E+00,-0.80738E+00,-0.80783E+00, & - &-0.80828E+00,-0.80873E+00,-0.80919E+00,-0.80964E+00,-0.81009E+00, & - &-0.81055E+00,-0.81100E+00,-0.81146E+00,-0.81191E+00,-0.81237E+00, & - &-0.81283E+00,-0.81329E+00,-0.81374E+00,-0.81420E+00,-0.81466E+00, & - &-0.81512E+00,-0.81558E+00,-0.81604E+00,-0.81650E+00,-0.81697E+00, & - &-0.81743E+00,-0.81789E+00,-0.81836E+00,-0.81882E+00,-0.81928E+00, & - &-0.81975E+00,-0.82021E+00,-0.82068E+00,-0.82115E+00,-0.82161E+00, & - &-0.82208E+00,-0.82255E+00,-0.82302E+00,-0.82349E+00,-0.82396E+00, & - &-0.82443E+00,-0.82490E+00,-0.82537E+00,-0.82584E+00,-0.82631E+00, & - &-0.82678E+00,-0.82726E+00,-0.82773E+00,-0.82820E+00,-0.82868E+00/ - - DATA (BNC13M(I),I=601,700)/ & - &-0.83384E+00,-0.83866E+00,-0.84353E+00,-0.84845E+00,-0.85341E+00, & - &-0.85841E+00,-0.86346E+00,-0.86856E+00,-0.87369E+00,-0.87886E+00, & - &-0.88408E+00,-0.88933E+00,-0.89463E+00,-0.89996E+00,-0.90532E+00, & - &-0.91073E+00,-0.91617E+00,-0.92164E+00,-0.92715E+00,-0.93270E+00, & - &-0.93828E+00,-0.94389E+00,-0.94953E+00,-0.95520E+00,-0.96091E+00, & - &-0.96664E+00,-0.97241E+00,-0.97820E+00,-0.98402E+00,-0.98987E+00, & - &-0.99575E+00,-0.10017E+01,-0.10076E+01,-0.10136E+01,-0.10195E+01, & - &-0.10256E+01,-0.10316E+01,-0.10377E+01,-0.10437E+01,-0.10499E+01, & - &-0.10560E+01,-0.10621E+01,-0.10683E+01,-0.10745E+01,-0.10808E+01, & - &-0.10870E+01,-0.10933E+01,-0.10996E+01,-0.11059E+01,-0.11122E+01, & - &-0.11186E+01,-0.11249E+01,-0.11313E+01,-0.11377E+01,-0.11442E+01, & - &-0.11506E+01,-0.11571E+01,-0.11636E+01,-0.11701E+01,-0.11766E+01, & - &-0.11831E+01,-0.11897E+01,-0.11963E+01,-0.12028E+01,-0.12095E+01, & - &-0.12161E+01,-0.12227E+01,-0.12294E+01,-0.12360E+01,-0.12427E+01, & - &-0.12494E+01,-0.12561E+01,-0.12629E+01,-0.12696E+01,-0.12764E+01, & - &-0.12831E+01,-0.12899E+01,-0.12967E+01,-0.13035E+01,-0.13104E+01, & - &-0.13172E+01,-0.13241E+01,-0.13309E+01,-0.13378E+01,-0.13447E+01, & - &-0.13516E+01,-0.13585E+01,-0.13655E+01,-0.13724E+01,-0.13794E+01, & - &-0.13863E+01,-0.13933E+01,-0.14003E+01,-0.14073E+01,-0.14143E+01, & - &-0.14213E+01,-0.14284E+01,-0.14354E+01,-0.14424E+01,-0.14495E+01/ - - DATA (BNC13M(I),I=701,741)/ & - &-0.14566E+01,-0.14637E+01,-0.14708E+01,-0.14779E+01,-0.14850E+01, & - &-0.14921E+01,-0.14992E+01,-0.15064E+01,-0.15135E+01,-0.15207E+01, & - &-0.15279E+01,-0.15351E+01,-0.15422E+01,-0.15494E+01,-0.15567E+01, & - &-0.15639E+01,-0.15711E+01,-0.15783E+01,-0.15856E+01,-0.15928E+01, & - &-0.16001E+01,-0.16073E+01,-0.16146E+01,-0.16219E+01,-0.16292E+01, & - &-0.16365E+01,-0.16438E+01,-0.16511E+01,-0.16584E+01,-0.16657E+01, & - &-0.16731E+01,-0.16804E+01,-0.16878E+01,-0.16951E+01,-0.17025E+01, & - &-0.17099E+01,-0.17172E+01,-0.17246E+01,-0.17320E+01,-0.17394E+01, & - &-0.17468E+01 & - & / - ENDBLOCKDATA KMCF198 diff --git a/src/arome/chem/internals/data_kmcf223a.F b/src/arome/chem/internals/data_kmcf223a.F deleted file mode 100644 index f53aae7e9011ec6a2edc4e1d6039087ee7ecb6f0..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/data_kmcf223a.F +++ /dev/null @@ -1,2218 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/data_kmcf223a.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:30 $ -!----------------------------------------------------------------- - -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA KMCF223A -! *** CONTAINS THE DATA FOR KUSSIK-MEISNER BINARY COEFFICIENT ARRAYS -! NEEDED IN SUBROUTINE KM -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA KMCF223 -! - IMPLICIT NONE -! -! *** Common block definition -! - INTEGER :: I - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M -! - COMMON /KMC223/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! -! *** NaCl -! - DATA (BNC01M(I),I=1,100)/ & - &-0.48562E-01,-0.10092E+00,-0.12448E+00,-0.13974E+00,-0.15075E+00, & - &-0.15911E+00,-0.16566E+00,-0.17088E+00,-0.17509E+00,-0.17849E+00, & - &-0.18124E+00,-0.18345E+00,-0.18522E+00,-0.18659E+00,-0.18764E+00, & - &-0.18840E+00,-0.18891E+00,-0.18920E+00,-0.18930E+00,-0.18922E+00, & - &-0.18898E+00,-0.18861E+00,-0.18811E+00,-0.18750E+00,-0.18678E+00, & - &-0.18598E+00,-0.18509E+00,-0.18412E+00,-0.18309E+00,-0.18199E+00, & - &-0.18084E+00,-0.17964E+00,-0.17839E+00,-0.17709E+00,-0.17576E+00, & - &-0.17440E+00,-0.17300E+00,-0.17158E+00,-0.17013E+00,-0.16865E+00, & - &-0.16716E+00,-0.16565E+00,-0.16412E+00,-0.16258E+00,-0.16102E+00, & - &-0.15946E+00,-0.15788E+00,-0.15629E+00,-0.15470E+00,-0.15310E+00, & - &-0.15149E+00,-0.14988E+00,-0.14826E+00,-0.14664E+00,-0.14501E+00, & - &-0.14338E+00,-0.14174E+00,-0.14010E+00,-0.13846E+00,-0.13681E+00, & - &-0.13516E+00,-0.13350E+00,-0.13184E+00,-0.13017E+00,-0.12850E+00, & - &-0.12682E+00,-0.12514E+00,-0.12344E+00,-0.12174E+00,-0.12003E+00, & - &-0.11832E+00,-0.11659E+00,-0.11485E+00,-0.11311E+00,-0.11135E+00, & - &-0.10958E+00,-0.10780E+00,-0.10600E+00,-0.10420E+00,-0.10237E+00, & - &-0.10054E+00,-0.98688E-01,-0.96823E-01,-0.94943E-01,-0.93048E-01, & - &-0.91136E-01,-0.89209E-01,-0.87266E-01,-0.85307E-01,-0.83332E-01, & - &-0.81341E-01,-0.79334E-01,-0.77312E-01,-0.75274E-01,-0.73220E-01, & - &-0.71151E-01,-0.69068E-01,-0.66970E-01,-0.64858E-01,-0.62732E-01/ - - DATA (BNC01M(I),I=101,200)/ & - &-0.60593E-01,-0.58441E-01,-0.56277E-01,-0.54101E-01,-0.51914E-01, & - &-0.49716E-01,-0.47508E-01,-0.45291E-01,-0.43064E-01,-0.40828E-01, & - &-0.38585E-01,-0.36334E-01,-0.34076E-01,-0.31812E-01,-0.29542E-01, & - &-0.27266E-01,-0.24986E-01,-0.22701E-01,-0.20412E-01,-0.18120E-01, & - &-0.15825E-01,-0.13526E-01,-0.11226E-01,-0.89235E-02,-0.66195E-02, & - &-0.43141E-02,-0.20079E-02, 0.29912E-03, 0.26064E-02, 0.49139E-02, & - & 0.72212E-02, 0.95283E-02, 0.11835E-01, 0.14140E-01, 0.16445E-01, & - & 0.18749E-01, 0.21052E-01, 0.23353E-01, 0.25652E-01, 0.27950E-01, & - & 0.30246E-01, 0.32540E-01, 0.34833E-01, 0.37123E-01, 0.39411E-01, & - & 0.41697E-01, 0.43980E-01, 0.46261E-01, 0.48540E-01, 0.50816E-01, & - & 0.53090E-01, 0.55361E-01, 0.57630E-01, 0.59895E-01, 0.62158E-01, & - & 0.64419E-01, 0.66676E-01, 0.68931E-01, 0.71182E-01, 0.73431E-01, & - & 0.75677E-01, 0.77920E-01, 0.80160E-01, 0.82397E-01, 0.84631E-01, & - & 0.86861E-01, 0.89089E-01, 0.91314E-01, 0.93535E-01, 0.95754E-01, & - & 0.97969E-01, 0.10018E+00, 0.10239E+00, 0.10459E+00, 0.10680E+00, & - & 0.10900E+00, 0.11119E+00, 0.11338E+00, 0.11557E+00, 0.11776E+00, & - & 0.11994E+00, 0.12212E+00, 0.12430E+00, 0.12647E+00, 0.12864E+00, & - & 0.13080E+00, 0.13297E+00, 0.13512E+00, 0.13728E+00, 0.13943E+00, & - & 0.14158E+00, 0.14373E+00, 0.14587E+00, 0.14801E+00, 0.15014E+00, & - & 0.15227E+00, 0.15440E+00, 0.15652E+00, 0.15864E+00, 0.16076E+00/ - - DATA (BNC01M(I),I=201,300)/ & - & 0.16288E+00, 0.16499E+00, 0.16709E+00, 0.16920E+00, 0.17129E+00, & - & 0.17339E+00, 0.17548E+00, 0.17757E+00, 0.17966E+00, 0.18174E+00, & - & 0.18382E+00, 0.18589E+00, 0.18796E+00, 0.19003E+00, 0.19210E+00, & - & 0.19416E+00, 0.19621E+00, 0.19827E+00, 0.20032E+00, 0.20236E+00, & - & 0.20441E+00, 0.20644E+00, 0.20848E+00, 0.21051E+00, 0.21254E+00, & - & 0.21457E+00, 0.21659E+00, 0.21860E+00, 0.22062E+00, 0.22263E+00, & - & 0.22464E+00, 0.22664E+00, 0.22864E+00, 0.23064E+00, 0.23263E+00, & - & 0.23462E+00, 0.23660E+00, 0.23859E+00, 0.24056E+00, 0.24254E+00, & - & 0.24451E+00, 0.24648E+00, 0.24844E+00, 0.25040E+00, 0.25236E+00, & - & 0.25431E+00, 0.25627E+00, 0.25821E+00, 0.26015E+00, 0.26209E+00, & - & 0.26403E+00, 0.26596E+00, 0.26789E+00, 0.26982E+00, 0.27174E+00, & - & 0.27366E+00, 0.27557E+00, 0.27748E+00, 0.27939E+00, 0.28130E+00, & - & 0.28320E+00, 0.28510E+00, 0.28699E+00, 0.28888E+00, 0.29077E+00, & - & 0.29265E+00, 0.29453E+00, 0.29641E+00, 0.29828E+00, 0.30015E+00, & - & 0.30202E+00, 0.30388E+00, 0.30574E+00, 0.30760E+00, 0.30945E+00, & - & 0.31130E+00, 0.31314E+00, 0.31499E+00, 0.31683E+00, 0.31866E+00, & - & 0.32049E+00, 0.32232E+00, 0.32415E+00, 0.32597E+00, 0.32779E+00, & - & 0.32961E+00, 0.33142E+00, 0.33323E+00, 0.33503E+00, 0.33683E+00, & - & 0.33863E+00, 0.34043E+00, 0.34222E+00, 0.34401E+00, 0.34579E+00, & - & 0.34758E+00, 0.34936E+00, 0.35113E+00, 0.35290E+00, 0.35467E+00/ - - DATA (BNC01M(I),I=301,400)/ & - & 0.35644E+00, 0.35820E+00, 0.35996E+00, 0.36172E+00, 0.36347E+00, & - & 0.36522E+00, 0.36696E+00, 0.36871E+00, 0.37045E+00, 0.37218E+00, & - & 0.37392E+00, 0.37565E+00, 0.37737E+00, 0.37910E+00, 0.38082E+00, & - & 0.38254E+00, 0.38425E+00, 0.38596E+00, 0.38767E+00, 0.38937E+00, & - & 0.39108E+00, 0.39277E+00, 0.39447E+00, 0.39616E+00, 0.39785E+00, & - & 0.39954E+00, 0.40122E+00, 0.40290E+00, 0.40458E+00, 0.40625E+00, & - & 0.40792E+00, 0.40959E+00, 0.41125E+00, 0.41291E+00, 0.41457E+00, & - & 0.41623E+00, 0.41788E+00, 0.41953E+00, 0.42117E+00, 0.42281E+00, & - & 0.42445E+00, 0.42609E+00, 0.42773E+00, 0.42936E+00, 0.43098E+00, & - & 0.43261E+00, 0.43423E+00, 0.43585E+00, 0.43747E+00, 0.43908E+00, & - & 0.44069E+00, 0.44230E+00, 0.44390E+00, 0.44550E+00, 0.44710E+00, & - & 0.44869E+00, 0.45029E+00, 0.45188E+00, 0.45346E+00, 0.45505E+00, & - & 0.45663E+00, 0.45820E+00, 0.45978E+00, 0.46135E+00, 0.46292E+00, & - & 0.46449E+00, 0.46605E+00, 0.46761E+00, 0.46917E+00, 0.47072E+00, & - & 0.47228E+00, 0.47383E+00, 0.47537E+00, 0.47692E+00, 0.47846E+00, & - & 0.47999E+00, 0.48153E+00, 0.48306E+00, 0.48459E+00, 0.48612E+00, & - & 0.48764E+00, 0.48916E+00, 0.49068E+00, 0.49220E+00, 0.49371E+00, & - & 0.49522E+00, 0.49673E+00, 0.49824E+00, 0.49974E+00, 0.50124E+00, & - & 0.50273E+00, 0.50423E+00, 0.50572E+00, 0.50721E+00, 0.50869E+00, & - & 0.51018E+00, 0.51166E+00, 0.51314E+00, 0.51461E+00, 0.51608E+00/ - - DATA (BNC01M(I),I=401,500)/ & - & 0.51755E+00, 0.51902E+00, 0.52049E+00, 0.52195E+00, 0.52341E+00, & - & 0.52487E+00, 0.52632E+00, 0.52777E+00, 0.52922E+00, 0.53067E+00, & - & 0.53211E+00, 0.53355E+00, 0.53499E+00, 0.53643E+00, 0.53786E+00, & - & 0.53929E+00, 0.54072E+00, 0.54215E+00, 0.54357E+00, 0.54499E+00, & - & 0.54641E+00, 0.54782E+00, 0.54924E+00, 0.55065E+00, 0.55206E+00, & - & 0.55346E+00, 0.55487E+00, 0.55627E+00, 0.55767E+00, 0.55906E+00, & - & 0.56046E+00, 0.56185E+00, 0.56323E+00, 0.56462E+00, 0.56600E+00, & - & 0.56739E+00, 0.56876E+00, 0.57014E+00, 0.57151E+00, 0.57289E+00, & - & 0.57425E+00, 0.57562E+00, 0.57699E+00, 0.57835E+00, 0.57971E+00, & - & 0.58106E+00, 0.58242E+00, 0.58377E+00, 0.58512E+00, 0.58647E+00, & - & 0.58781E+00, 0.58916E+00, 0.59050E+00, 0.59183E+00, 0.59317E+00, & - & 0.59450E+00, 0.59583E+00, 0.59716E+00, 0.59849E+00, 0.59981E+00, & - & 0.60114E+00, 0.60245E+00, 0.60377E+00, 0.60509E+00, 0.60640E+00, & - & 0.60771E+00, 0.60902E+00, 0.61032E+00, 0.61163E+00, 0.61293E+00, & - & 0.61423E+00, 0.61552E+00, 0.61682E+00, 0.61811E+00, 0.61940E+00, & - & 0.62069E+00, 0.62198E+00, 0.62326E+00, 0.62454E+00, 0.62582E+00, & - & 0.62710E+00, 0.62837E+00, 0.62964E+00, 0.63091E+00, 0.63218E+00, & - & 0.63345E+00, 0.63471E+00, 0.63597E+00, 0.63723E+00, 0.63849E+00, & - & 0.63974E+00, 0.64100E+00, 0.64225E+00, 0.64350E+00, 0.64474E+00, & - & 0.64599E+00, 0.64723E+00, 0.64847E+00, 0.64971E+00, 0.65094E+00/ - - DATA (BNC01M(I),I=501,600)/ & - & 0.65218E+00, 0.65341E+00, 0.65464E+00, 0.65586E+00, 0.65709E+00, & - & 0.65831E+00, 0.65953E+00, 0.66075E+00, 0.66197E+00, 0.66318E+00, & - & 0.66440E+00, 0.66561E+00, 0.66682E+00, 0.66802E+00, 0.66923E+00, & - & 0.67043E+00, 0.67163E+00, 0.67283E+00, 0.67403E+00, 0.67522E+00, & - & 0.67641E+00, 0.67760E+00, 0.67879E+00, 0.67998E+00, 0.68116E+00, & - & 0.68235E+00, 0.68353E+00, 0.68471E+00, 0.68588E+00, 0.68706E+00, & - & 0.68823E+00, 0.68940E+00, 0.69057E+00, 0.69174E+00, 0.69290E+00, & - & 0.69406E+00, 0.69523E+00, 0.69638E+00, 0.69754E+00, 0.69870E+00, & - & 0.69985E+00, 0.70100E+00, 0.70215E+00, 0.70330E+00, 0.70444E+00, & - & 0.70559E+00, 0.70673E+00, 0.70787E+00, 0.70901E+00, 0.71014E+00, & - & 0.71128E+00, 0.71241E+00, 0.71354E+00, 0.71467E+00, 0.71579E+00, & - & 0.71692E+00, 0.71804E+00, 0.71916E+00, 0.72028E+00, 0.72140E+00, & - & 0.72252E+00, 0.72363E+00, 0.72474E+00, 0.72585E+00, 0.72696E+00, & - & 0.72807E+00, 0.72917E+00, 0.73027E+00, 0.73137E+00, 0.73247E+00, & - & 0.73357E+00, 0.73467E+00, 0.73576E+00, 0.73685E+00, 0.73794E+00, & - & 0.73903E+00, 0.74012E+00, 0.74120E+00, 0.74228E+00, 0.74337E+00, & - & 0.74444E+00, 0.74552E+00, 0.74660E+00, 0.74767E+00, 0.74875E+00, & - & 0.74982E+00, 0.75088E+00, 0.75195E+00, 0.75302E+00, 0.75408E+00, & - & 0.75514E+00, 0.75620E+00, 0.75726E+00, 0.75832E+00, 0.75937E+00, & - & 0.76043E+00, 0.76148E+00, 0.76253E+00, 0.76358E+00, 0.76462E+00/ - - DATA (BNC01M(I),I=601,700)/ & - & 0.77583E+00, 0.78602E+00, 0.79605E+00, 0.80593E+00, 0.81565E+00, & - & 0.82522E+00, 0.83463E+00, 0.84391E+00, 0.85304E+00, 0.86203E+00, & - & 0.87088E+00, 0.87959E+00, 0.88818E+00, 0.89663E+00, 0.90496E+00, & - & 0.91316E+00, 0.92124E+00, 0.92920E+00, 0.93704E+00, 0.94477E+00, & - & 0.95238E+00, 0.95988E+00, 0.96727E+00, 0.97455E+00, 0.98173E+00, & - & 0.98880E+00, 0.99577E+00, 0.10026E+01, 0.10094E+01, 0.10161E+01, & - & 0.10227E+01, 0.10292E+01, 0.10355E+01, 0.10418E+01, 0.10481E+01, & - & 0.10542E+01, 0.10602E+01, 0.10662E+01, 0.10721E+01, 0.10778E+01, & - & 0.10835E+01, 0.10892E+01, 0.10947E+01, 0.11002E+01, 0.11056E+01, & - & 0.11109E+01, 0.11162E+01, 0.11213E+01, 0.11264E+01, 0.11315E+01, & - & 0.11364E+01, 0.11413E+01, 0.11462E+01, 0.11509E+01, 0.11556E+01, & - & 0.11603E+01, 0.11648E+01, 0.11693E+01, 0.11738E+01, 0.11782E+01, & - & 0.11825E+01, 0.11867E+01, 0.11909E+01, 0.11951E+01, 0.11992E+01, & - & 0.12032E+01, 0.12072E+01, 0.12111E+01, 0.12150E+01, 0.12188E+01, & - & 0.12226E+01, 0.12263E+01, 0.12299E+01, 0.12335E+01, 0.12371E+01, & - & 0.12406E+01, 0.12441E+01, 0.12475E+01, 0.12508E+01, 0.12542E+01, & - & 0.12574E+01, 0.12607E+01, 0.12638E+01, 0.12670E+01, 0.12701E+01, & - & 0.12731E+01, 0.12761E+01, 0.12791E+01, 0.12820E+01, 0.12849E+01, & - & 0.12877E+01, 0.12905E+01, 0.12933E+01, 0.12960E+01, 0.12987E+01, & - & 0.13013E+01, 0.13039E+01, 0.13065E+01, 0.13090E+01, 0.13115E+01/ - - DATA (BNC01M(I),I=701,741)/ & - & 0.13139E+01, 0.13163E+01, 0.13187E+01, 0.13211E+01, 0.13234E+01, & - & 0.13256E+01, 0.13279E+01, 0.13301E+01, 0.13323E+01, 0.13344E+01, & - & 0.13365E+01, 0.13386E+01, 0.13406E+01, 0.13426E+01, 0.13446E+01, & - & 0.13465E+01, 0.13485E+01, 0.13503E+01, 0.13522E+01, 0.13540E+01, & - & 0.13558E+01, 0.13576E+01, 0.13593E+01, 0.13610E+01, 0.13627E+01, & - & 0.13643E+01, 0.13660E+01, 0.13675E+01, 0.13691E+01, 0.13706E+01, & - & 0.13722E+01, 0.13736E+01, 0.13751E+01, 0.13765E+01, 0.13779E+01, & - & 0.13793E+01, 0.13807E+01, 0.13820E+01, 0.13833E+01, 0.13846E+01, & - & 0.13858E+01 & - & / -! -! *** Na2SO4 -! - DATA (BNC02M(I),I=1,100)/ & - &-0.10044E+00,-0.21963E+00,-0.27984E+00,-0.32277E+00,-0.35672E+00, & - &-0.38502E+00,-0.40943E+00,-0.43096E+00,-0.45026E+00,-0.46780E+00, & - &-0.48389E+00,-0.49877E+00,-0.51264E+00,-0.52563E+00,-0.53787E+00, & - &-0.54943E+00,-0.56041E+00,-0.57086E+00,-0.58084E+00,-0.59040E+00, & - &-0.59957E+00,-0.60840E+00,-0.61689E+00,-0.62510E+00,-0.63303E+00, & - &-0.64071E+00,-0.64816E+00,-0.65538E+00,-0.66241E+00,-0.66924E+00, & - &-0.67590E+00,-0.68239E+00,-0.68872E+00,-0.69490E+00,-0.70094E+00, & - &-0.70684E+00,-0.71262E+00,-0.71828E+00,-0.72382E+00,-0.72926E+00, & - &-0.73459E+00,-0.73982E+00,-0.74495E+00,-0.75000E+00,-0.75496E+00, & - &-0.75983E+00,-0.76463E+00,-0.76935E+00,-0.77399E+00,-0.77856E+00, & - &-0.78307E+00,-0.78751E+00,-0.79188E+00,-0.79620E+00,-0.80045E+00, & - &-0.80465E+00,-0.80880E+00,-0.81289E+00,-0.81693E+00,-0.82093E+00, & - &-0.82487E+00,-0.82877E+00,-0.83263E+00,-0.83644E+00,-0.84021E+00, & - &-0.84394E+00,-0.84763E+00,-0.85129E+00,-0.85491E+00,-0.85849E+00, & - &-0.86204E+00,-0.86556E+00,-0.86905E+00,-0.87250E+00,-0.87593E+00, & - &-0.87932E+00,-0.88269E+00,-0.88604E+00,-0.88935E+00,-0.89264E+00, & - &-0.89591E+00,-0.89915E+00,-0.90237E+00,-0.90557E+00,-0.90875E+00, & - &-0.91190E+00,-0.91503E+00,-0.91815E+00,-0.92124E+00,-0.92432E+00, & - &-0.92737E+00,-0.93041E+00,-0.93343E+00,-0.93644E+00,-0.93942E+00, & - &-0.94239E+00,-0.94534E+00,-0.94828E+00,-0.95120E+00,-0.95411E+00/ - - DATA (BNC02M(I),I=101,200)/ & - &-0.95700E+00,-0.95988E+00,-0.96274E+00,-0.96559E+00,-0.96842E+00, & - &-0.97124E+00,-0.97405E+00,-0.97684E+00,-0.97962E+00,-0.98239E+00, & - &-0.98514E+00,-0.98788E+00,-0.99061E+00,-0.99333E+00,-0.99603E+00, & - &-0.99872E+00,-0.10014E+01,-0.10041E+01,-0.10067E+01,-0.10094E+01, & - &-0.10120E+01,-0.10146E+01,-0.10172E+01,-0.10198E+01,-0.10224E+01, & - &-0.10250E+01,-0.10276E+01,-0.10301E+01,-0.10327E+01,-0.10352E+01, & - &-0.10377E+01,-0.10402E+01,-0.10427E+01,-0.10452E+01,-0.10477E+01, & - &-0.10502E+01,-0.10527E+01,-0.10551E+01,-0.10576E+01,-0.10600E+01, & - &-0.10624E+01,-0.10649E+01,-0.10673E+01,-0.10697E+01,-0.10721E+01, & - &-0.10745E+01,-0.10768E+01,-0.10792E+01,-0.10816E+01,-0.10839E+01, & - &-0.10863E+01,-0.10886E+01,-0.10909E+01,-0.10933E+01,-0.10956E+01, & - &-0.10979E+01,-0.11002E+01,-0.11025E+01,-0.11048E+01,-0.11070E+01, & - &-0.11093E+01,-0.11116E+01,-0.11138E+01,-0.11161E+01,-0.11183E+01, & - &-0.11206E+01,-0.11228E+01,-0.11250E+01,-0.11272E+01,-0.11294E+01, & - &-0.11316E+01,-0.11338E+01,-0.11360E+01,-0.11382E+01,-0.11404E+01, & - &-0.11426E+01,-0.11447E+01,-0.11469E+01,-0.11490E+01,-0.11512E+01, & - &-0.11533E+01,-0.11555E+01,-0.11576E+01,-0.11597E+01,-0.11618E+01, & - &-0.11640E+01,-0.11661E+01,-0.11682E+01,-0.11703E+01,-0.11724E+01, & - &-0.11745E+01,-0.11765E+01,-0.11786E+01,-0.11807E+01,-0.11828E+01, & - &-0.11848E+01,-0.11869E+01,-0.11889E+01,-0.11910E+01,-0.11930E+01/ - - DATA (BNC02M(I),I=201,300)/ & - &-0.11951E+01,-0.11971E+01,-0.11991E+01,-0.12012E+01,-0.12032E+01, & - &-0.12052E+01,-0.12072E+01,-0.12092E+01,-0.12112E+01,-0.12132E+01, & - &-0.12152E+01,-0.12172E+01,-0.12192E+01,-0.12212E+01,-0.12232E+01, & - &-0.12251E+01,-0.12271E+01,-0.12291E+01,-0.12310E+01,-0.12330E+01, & - &-0.12349E+01,-0.12369E+01,-0.12388E+01,-0.12408E+01,-0.12427E+01, & - &-0.12446E+01,-0.12466E+01,-0.12485E+01,-0.12504E+01,-0.12523E+01, & - &-0.12543E+01,-0.12562E+01,-0.12581E+01,-0.12600E+01,-0.12619E+01, & - &-0.12638E+01,-0.12657E+01,-0.12676E+01,-0.12694E+01,-0.12713E+01, & - &-0.12732E+01,-0.12751E+01,-0.12770E+01,-0.12788E+01,-0.12807E+01, & - &-0.12826E+01,-0.12844E+01,-0.12863E+01,-0.12881E+01,-0.12900E+01, & - &-0.12918E+01,-0.12937E+01,-0.12955E+01,-0.12973E+01,-0.12992E+01, & - &-0.13010E+01,-0.13028E+01,-0.13047E+01,-0.13065E+01,-0.13083E+01, & - &-0.13101E+01,-0.13119E+01,-0.13138E+01,-0.13156E+01,-0.13174E+01, & - &-0.13192E+01,-0.13210E+01,-0.13228E+01,-0.13246E+01,-0.13263E+01, & - &-0.13281E+01,-0.13299E+01,-0.13317E+01,-0.13335E+01,-0.13353E+01, & - &-0.13370E+01,-0.13388E+01,-0.13406E+01,-0.13423E+01,-0.13441E+01, & - &-0.13459E+01,-0.13476E+01,-0.13494E+01,-0.13511E+01,-0.13529E+01, & - &-0.13546E+01,-0.13564E+01,-0.13581E+01,-0.13599E+01,-0.13616E+01, & - &-0.13633E+01,-0.13651E+01,-0.13668E+01,-0.13685E+01,-0.13703E+01, & - &-0.13720E+01,-0.13737E+01,-0.13754E+01,-0.13772E+01,-0.13789E+01/ - - DATA (BNC02M(I),I=301,400)/ & - &-0.13806E+01,-0.13823E+01,-0.13840E+01,-0.13857E+01,-0.13874E+01, & - &-0.13891E+01,-0.13908E+01,-0.13925E+01,-0.13942E+01,-0.13959E+01, & - &-0.13976E+01,-0.13993E+01,-0.14010E+01,-0.14027E+01,-0.14043E+01, & - &-0.14060E+01,-0.14077E+01,-0.14094E+01,-0.14111E+01,-0.14127E+01, & - &-0.14144E+01,-0.14161E+01,-0.14177E+01,-0.14194E+01,-0.14211E+01, & - &-0.14227E+01,-0.14244E+01,-0.14260E+01,-0.14277E+01,-0.14293E+01, & - &-0.14310E+01,-0.14326E+01,-0.14343E+01,-0.14359E+01,-0.14376E+01, & - &-0.14392E+01,-0.14409E+01,-0.14425E+01,-0.14441E+01,-0.14458E+01, & - &-0.14474E+01,-0.14490E+01,-0.14506E+01,-0.14523E+01,-0.14539E+01, & - &-0.14555E+01,-0.14571E+01,-0.14588E+01,-0.14604E+01,-0.14620E+01, & - &-0.14636E+01,-0.14652E+01,-0.14668E+01,-0.14684E+01,-0.14700E+01, & - &-0.14717E+01,-0.14733E+01,-0.14749E+01,-0.14765E+01,-0.14781E+01, & - &-0.14797E+01,-0.14813E+01,-0.14828E+01,-0.14844E+01,-0.14860E+01, & - &-0.14876E+01,-0.14892E+01,-0.14908E+01,-0.14924E+01,-0.14940E+01, & - &-0.14955E+01,-0.14971E+01,-0.14987E+01,-0.15003E+01,-0.15018E+01, & - &-0.15034E+01,-0.15050E+01,-0.15066E+01,-0.15081E+01,-0.15097E+01, & - &-0.15113E+01,-0.15128E+01,-0.15144E+01,-0.15160E+01,-0.15175E+01, & - &-0.15191E+01,-0.15206E+01,-0.15222E+01,-0.15237E+01,-0.15253E+01, & - &-0.15268E+01,-0.15284E+01,-0.15299E+01,-0.15315E+01,-0.15330E+01, & - &-0.15346E+01,-0.15361E+01,-0.15377E+01,-0.15392E+01,-0.15407E+01/ - - DATA (BNC02M(I),I=401,500)/ & - &-0.15423E+01,-0.15438E+01,-0.15453E+01,-0.15469E+01,-0.15484E+01, & - &-0.15499E+01,-0.15515E+01,-0.15530E+01,-0.15545E+01,-0.15561E+01, & - &-0.15576E+01,-0.15591E+01,-0.15606E+01,-0.15621E+01,-0.15637E+01, & - &-0.15652E+01,-0.15667E+01,-0.15682E+01,-0.15697E+01,-0.15712E+01, & - &-0.15727E+01,-0.15743E+01,-0.15758E+01,-0.15773E+01,-0.15788E+01, & - &-0.15803E+01,-0.15818E+01,-0.15833E+01,-0.15848E+01,-0.15863E+01, & - &-0.15878E+01,-0.15893E+01,-0.15908E+01,-0.15923E+01,-0.15938E+01, & - &-0.15953E+01,-0.15968E+01,-0.15982E+01,-0.15997E+01,-0.16012E+01, & - &-0.16027E+01,-0.16042E+01,-0.16057E+01,-0.16072E+01,-0.16086E+01, & - &-0.16101E+01,-0.16116E+01,-0.16131E+01,-0.16146E+01,-0.16160E+01, & - &-0.16175E+01,-0.16190E+01,-0.16205E+01,-0.16219E+01,-0.16234E+01, & - &-0.16249E+01,-0.16263E+01,-0.16278E+01,-0.16293E+01,-0.16307E+01, & - &-0.16322E+01,-0.16337E+01,-0.16351E+01,-0.16366E+01,-0.16381E+01, & - &-0.16395E+01,-0.16410E+01,-0.16424E+01,-0.16439E+01,-0.16453E+01, & - &-0.16468E+01,-0.16482E+01,-0.16497E+01,-0.16512E+01,-0.16526E+01, & - &-0.16541E+01,-0.16555E+01,-0.16569E+01,-0.16584E+01,-0.16598E+01, & - &-0.16613E+01,-0.16627E+01,-0.16642E+01,-0.16656E+01,-0.16670E+01, & - &-0.16685E+01,-0.16699E+01,-0.16714E+01,-0.16728E+01,-0.16742E+01, & - &-0.16757E+01,-0.16771E+01,-0.16785E+01,-0.16800E+01,-0.16814E+01, & - &-0.16828E+01,-0.16843E+01,-0.16857E+01,-0.16871E+01,-0.16885E+01/ - - DATA (BNC02M(I),I=501,600)/ & - &-0.16900E+01,-0.16914E+01,-0.16928E+01,-0.16942E+01,-0.16957E+01, & - &-0.16971E+01,-0.16985E+01,-0.16999E+01,-0.17013E+01,-0.17027E+01, & - &-0.17042E+01,-0.17056E+01,-0.17070E+01,-0.17084E+01,-0.17098E+01, & - &-0.17112E+01,-0.17126E+01,-0.17140E+01,-0.17155E+01,-0.17169E+01, & - &-0.17183E+01,-0.17197E+01,-0.17211E+01,-0.17225E+01,-0.17239E+01, & - &-0.17253E+01,-0.17267E+01,-0.17281E+01,-0.17295E+01,-0.17309E+01, & - &-0.17323E+01,-0.17337E+01,-0.17351E+01,-0.17365E+01,-0.17379E+01, & - &-0.17393E+01,-0.17407E+01,-0.17421E+01,-0.17435E+01,-0.17448E+01, & - &-0.17462E+01,-0.17476E+01,-0.17490E+01,-0.17504E+01,-0.17518E+01, & - &-0.17532E+01,-0.17546E+01,-0.17559E+01,-0.17573E+01,-0.17587E+01, & - &-0.17601E+01,-0.17615E+01,-0.17629E+01,-0.17642E+01,-0.17656E+01, & - &-0.17670E+01,-0.17684E+01,-0.17698E+01,-0.17711E+01,-0.17725E+01, & - &-0.17739E+01,-0.17753E+01,-0.17766E+01,-0.17780E+01,-0.17794E+01, & - &-0.17807E+01,-0.17821E+01,-0.17835E+01,-0.17848E+01,-0.17862E+01, & - &-0.17876E+01,-0.17889E+01,-0.17903E+01,-0.17917E+01,-0.17930E+01, & - &-0.17944E+01,-0.17958E+01,-0.17971E+01,-0.17985E+01,-0.17999E+01, & - &-0.18012E+01,-0.18026E+01,-0.18039E+01,-0.18053E+01,-0.18067E+01, & - &-0.18080E+01,-0.18094E+01,-0.18107E+01,-0.18121E+01,-0.18134E+01, & - &-0.18148E+01,-0.18161E+01,-0.18175E+01,-0.18188E+01,-0.18202E+01, & - &-0.18215E+01,-0.18229E+01,-0.18242E+01,-0.18256E+01,-0.18269E+01/ - - DATA (BNC02M(I),I=601,700)/ & - &-0.18414E+01,-0.18548E+01,-0.18681E+01,-0.18813E+01,-0.18945E+01, & - &-0.19076E+01,-0.19207E+01,-0.19337E+01,-0.19467E+01,-0.19596E+01, & - &-0.19724E+01,-0.19852E+01,-0.19980E+01,-0.20107E+01,-0.20233E+01, & - &-0.20359E+01,-0.20485E+01,-0.20610E+01,-0.20735E+01,-0.20859E+01, & - &-0.20983E+01,-0.21107E+01,-0.21230E+01,-0.21353E+01,-0.21475E+01, & - &-0.21598E+01,-0.21719E+01,-0.21841E+01,-0.21962E+01,-0.22082E+01, & - &-0.22203E+01,-0.22323E+01,-0.22442E+01,-0.22562E+01,-0.22681E+01, & - &-0.22800E+01,-0.22918E+01,-0.23036E+01,-0.23154E+01,-0.23272E+01, & - &-0.23389E+01,-0.23506E+01,-0.23623E+01,-0.23740E+01,-0.23856E+01, & - &-0.23972E+01,-0.24088E+01,-0.24204E+01,-0.24319E+01,-0.24434E+01, & - &-0.24549E+01,-0.24663E+01,-0.24778E+01,-0.24892E+01,-0.25006E+01, & - &-0.25119E+01,-0.25233E+01,-0.25346E+01,-0.25459E+01,-0.25572E+01, & - &-0.25685E+01,-0.25797E+01,-0.25910E+01,-0.26022E+01,-0.26134E+01, & - &-0.26245E+01,-0.26357E+01,-0.26468E+01,-0.26579E+01,-0.26690E+01, & - &-0.26801E+01,-0.26912E+01,-0.27022E+01,-0.27132E+01,-0.27242E+01, & - &-0.27352E+01,-0.27462E+01,-0.27572E+01,-0.27681E+01,-0.27790E+01, & - &-0.27900E+01,-0.28009E+01,-0.28117E+01,-0.28226E+01,-0.28335E+01, & - &-0.28443E+01,-0.28551E+01,-0.28659E+01,-0.28767E+01,-0.28875E+01, & - &-0.28983E+01,-0.29090E+01,-0.29198E+01,-0.29305E+01,-0.29412E+01, & - &-0.29519E+01,-0.29626E+01,-0.29733E+01,-0.29839E+01,-0.29946E+01/ - - DATA (BNC02M(I),I=701,741)/ & - &-0.30052E+01,-0.30158E+01,-0.30264E+01,-0.30370E+01,-0.30476E+01, & - &-0.30582E+01,-0.30688E+01,-0.30793E+01,-0.30899E+01,-0.31004E+01, & - &-0.31109E+01,-0.31214E+01,-0.31319E+01,-0.31424E+01,-0.31529E+01, & - &-0.31633E+01,-0.31738E+01,-0.31842E+01,-0.31946E+01,-0.32051E+01, & - &-0.32155E+01,-0.32259E+01,-0.32363E+01,-0.32466E+01,-0.32570E+01, & - &-0.32674E+01,-0.32777E+01,-0.32881E+01,-0.32984E+01,-0.33087E+01, & - &-0.33190E+01,-0.33293E+01,-0.33396E+01,-0.33499E+01,-0.33602E+01, & - &-0.33705E+01,-0.33807E+01,-0.33910E+01,-0.34012E+01,-0.34114E+01, & - &-0.34217E+01 & - & / -! -! *** NaNO3 -! - DATA (BNC03M(I),I=1,100)/ & - &-0.50377E-01,-0.11068E+00,-0.14143E+00,-0.16351E+00,-0.18108E+00, & - &-0.19581E+00,-0.20858E+00,-0.21990E+00,-0.23009E+00,-0.23939E+00, & - &-0.24796E+00,-0.25592E+00,-0.26337E+00,-0.27037E+00,-0.27698E+00, & - &-0.28326E+00,-0.28923E+00,-0.29494E+00,-0.30041E+00,-0.30566E+00, & - &-0.31071E+00,-0.31558E+00,-0.32029E+00,-0.32484E+00,-0.32925E+00, & - &-0.33353E+00,-0.33769E+00,-0.34174E+00,-0.34568E+00,-0.34952E+00, & - &-0.35327E+00,-0.35692E+00,-0.36050E+00,-0.36399E+00,-0.36741E+00, & - &-0.37076E+00,-0.37405E+00,-0.37726E+00,-0.38042E+00,-0.38352E+00, & - &-0.38656E+00,-0.38955E+00,-0.39248E+00,-0.39537E+00,-0.39821E+00, & - &-0.40100E+00,-0.40375E+00,-0.40646E+00,-0.40912E+00,-0.41175E+00, & - &-0.41434E+00,-0.41690E+00,-0.41942E+00,-0.42190E+00,-0.42435E+00, & - &-0.42677E+00,-0.42917E+00,-0.43153E+00,-0.43386E+00,-0.43617E+00, & - &-0.43845E+00,-0.44070E+00,-0.44293E+00,-0.44514E+00,-0.44732E+00, & - &-0.44949E+00,-0.45163E+00,-0.45375E+00,-0.45585E+00,-0.45793E+00, & - &-0.45999E+00,-0.46204E+00,-0.46407E+00,-0.46608E+00,-0.46808E+00, & - &-0.47006E+00,-0.47203E+00,-0.47398E+00,-0.47592E+00,-0.47785E+00, & - &-0.47976E+00,-0.48167E+00,-0.48356E+00,-0.48543E+00,-0.48730E+00, & - &-0.48916E+00,-0.49100E+00,-0.49284E+00,-0.49467E+00,-0.49648E+00, & - &-0.49829E+00,-0.50009E+00,-0.50188E+00,-0.50366E+00,-0.50543E+00, & - &-0.50719E+00,-0.50895E+00,-0.51070E+00,-0.51244E+00,-0.51417E+00/ - - DATA (BNC03M(I),I=101,200)/ & - &-0.51590E+00,-0.51761E+00,-0.51932E+00,-0.52103E+00,-0.52272E+00, & - &-0.52441E+00,-0.52609E+00,-0.52777E+00,-0.52944E+00,-0.53110E+00, & - &-0.53275E+00,-0.53440E+00,-0.53604E+00,-0.53767E+00,-0.53930E+00, & - &-0.54092E+00,-0.54254E+00,-0.54414E+00,-0.54575E+00,-0.54734E+00, & - &-0.54893E+00,-0.55051E+00,-0.55209E+00,-0.55366E+00,-0.55522E+00, & - &-0.55678E+00,-0.55833E+00,-0.55988E+00,-0.56142E+00,-0.56295E+00, & - &-0.56448E+00,-0.56600E+00,-0.56752E+00,-0.56903E+00,-0.57053E+00, & - &-0.57203E+00,-0.57352E+00,-0.57501E+00,-0.57649E+00,-0.57797E+00, & - &-0.57944E+00,-0.58091E+00,-0.58237E+00,-0.58383E+00,-0.58528E+00, & - &-0.58672E+00,-0.58816E+00,-0.58960E+00,-0.59103E+00,-0.59246E+00, & - &-0.59388E+00,-0.59529E+00,-0.59671E+00,-0.59811E+00,-0.59952E+00, & - &-0.60091E+00,-0.60231E+00,-0.60370E+00,-0.60508E+00,-0.60646E+00, & - &-0.60784E+00,-0.60921E+00,-0.61058E+00,-0.61194E+00,-0.61330E+00, & - &-0.61465E+00,-0.61600E+00,-0.61735E+00,-0.61869E+00,-0.62003E+00, & - &-0.62137E+00,-0.62270E+00,-0.62402E+00,-0.62535E+00,-0.62667E+00, & - &-0.62798E+00,-0.62930E+00,-0.63060E+00,-0.63191E+00,-0.63321E+00, & - &-0.63451E+00,-0.63580E+00,-0.63709E+00,-0.63838E+00,-0.63966E+00, & - &-0.64094E+00,-0.64222E+00,-0.64349E+00,-0.64476E+00,-0.64603E+00, & - &-0.64730E+00,-0.64856E+00,-0.64981E+00,-0.65107E+00,-0.65232E+00, & - &-0.65357E+00,-0.65481E+00,-0.65605E+00,-0.65729E+00,-0.65853E+00/ - - DATA (BNC03M(I),I=201,300)/ & - &-0.65976E+00,-0.66099E+00,-0.66222E+00,-0.66344E+00,-0.66466E+00, & - &-0.66588E+00,-0.66710E+00,-0.66831E+00,-0.66952E+00,-0.67072E+00, & - &-0.67193E+00,-0.67313E+00,-0.67433E+00,-0.67552E+00,-0.67672E+00, & - &-0.67791E+00,-0.67910E+00,-0.68028E+00,-0.68147E+00,-0.68265E+00, & - &-0.68382E+00,-0.68500E+00,-0.68617E+00,-0.68734E+00,-0.68851E+00, & - &-0.68967E+00,-0.69084E+00,-0.69200E+00,-0.69316E+00,-0.69431E+00, & - &-0.69546E+00,-0.69662E+00,-0.69776E+00,-0.69891E+00,-0.70005E+00, & - &-0.70120E+00,-0.70234E+00,-0.70347E+00,-0.70461E+00,-0.70574E+00, & - &-0.70687E+00,-0.70800E+00,-0.70912E+00,-0.71025E+00,-0.71137E+00, & - &-0.71249E+00,-0.71361E+00,-0.71472E+00,-0.71584E+00,-0.71695E+00, & - &-0.71806E+00,-0.71916E+00,-0.72027E+00,-0.72137E+00,-0.72247E+00, & - &-0.72357E+00,-0.72467E+00,-0.72576E+00,-0.72686E+00,-0.72795E+00, & - &-0.72904E+00,-0.73012E+00,-0.73121E+00,-0.73229E+00,-0.73337E+00, & - &-0.73445E+00,-0.73553E+00,-0.73661E+00,-0.73768E+00,-0.73875E+00, & - &-0.73983E+00,-0.74089E+00,-0.74196E+00,-0.74303E+00,-0.74409E+00, & - &-0.74515E+00,-0.74621E+00,-0.74727E+00,-0.74832E+00,-0.74938E+00, & - &-0.75043E+00,-0.75148E+00,-0.75253E+00,-0.75358E+00,-0.75463E+00, & - &-0.75567E+00,-0.75671E+00,-0.75776E+00,-0.75880E+00,-0.75983E+00, & - &-0.76087E+00,-0.76190E+00,-0.76294E+00,-0.76397E+00,-0.76500E+00, & - &-0.76603E+00,-0.76705E+00,-0.76808E+00,-0.76910E+00,-0.77012E+00/ - - DATA (BNC03M(I),I=301,400)/ & - &-0.77115E+00,-0.77216E+00,-0.77318E+00,-0.77420E+00,-0.77521E+00, & - &-0.77623E+00,-0.77724E+00,-0.77825E+00,-0.77926E+00,-0.78026E+00, & - &-0.78127E+00,-0.78227E+00,-0.78328E+00,-0.78428E+00,-0.78528E+00, & - &-0.78628E+00,-0.78727E+00,-0.78827E+00,-0.78926E+00,-0.79026E+00, & - &-0.79125E+00,-0.79224E+00,-0.79323E+00,-0.79422E+00,-0.79520E+00, & - &-0.79619E+00,-0.79717E+00,-0.79815E+00,-0.79913E+00,-0.80011E+00, & - &-0.80109E+00,-0.80207E+00,-0.80304E+00,-0.80402E+00,-0.80499E+00, & - &-0.80596E+00,-0.80694E+00,-0.80790E+00,-0.80887E+00,-0.80984E+00, & - &-0.81081E+00,-0.81177E+00,-0.81273E+00,-0.81369E+00,-0.81466E+00, & - &-0.81562E+00,-0.81657E+00,-0.81753E+00,-0.81849E+00,-0.81944E+00, & - &-0.82039E+00,-0.82135E+00,-0.82230E+00,-0.82325E+00,-0.82420E+00, & - &-0.82514E+00,-0.82609E+00,-0.82704E+00,-0.82798E+00,-0.82892E+00, & - &-0.82987E+00,-0.83081E+00,-0.83175E+00,-0.83269E+00,-0.83362E+00, & - &-0.83456E+00,-0.83549E+00,-0.83643E+00,-0.83736E+00,-0.83829E+00, & - &-0.83923E+00,-0.84016E+00,-0.84108E+00,-0.84201E+00,-0.84294E+00, & - &-0.84386E+00,-0.84479E+00,-0.84571E+00,-0.84663E+00,-0.84756E+00, & - &-0.84848E+00,-0.84940E+00,-0.85031E+00,-0.85123E+00,-0.85215E+00, & - &-0.85306E+00,-0.85398E+00,-0.85489E+00,-0.85580E+00,-0.85672E+00, & - &-0.85763E+00,-0.85853E+00,-0.85944E+00,-0.86035E+00,-0.86126E+00, & - &-0.86216E+00,-0.86307E+00,-0.86397E+00,-0.86487E+00,-0.86578E+00/ - - DATA (BNC03M(I),I=401,500)/ & - &-0.86668E+00,-0.86758E+00,-0.86847E+00,-0.86937E+00,-0.87027E+00, & - &-0.87117E+00,-0.87206E+00,-0.87295E+00,-0.87385E+00,-0.87474E+00, & - &-0.87563E+00,-0.87652E+00,-0.87741E+00,-0.87830E+00,-0.87919E+00, & - &-0.88008E+00,-0.88096E+00,-0.88185E+00,-0.88273E+00,-0.88361E+00, & - &-0.88450E+00,-0.88538E+00,-0.88626E+00,-0.88714E+00,-0.88802E+00, & - &-0.88890E+00,-0.88977E+00,-0.89065E+00,-0.89153E+00,-0.89240E+00, & - &-0.89328E+00,-0.89415E+00,-0.89502E+00,-0.89589E+00,-0.89676E+00, & - &-0.89763E+00,-0.89850E+00,-0.89937E+00,-0.90024E+00,-0.90110E+00, & - &-0.90197E+00,-0.90283E+00,-0.90370E+00,-0.90456E+00,-0.90542E+00, & - &-0.90629E+00,-0.90715E+00,-0.90801E+00,-0.90887E+00,-0.90973E+00, & - &-0.91058E+00,-0.91144E+00,-0.91230E+00,-0.91315E+00,-0.91401E+00, & - &-0.91486E+00,-0.91572E+00,-0.91657E+00,-0.91742E+00,-0.91827E+00, & - &-0.91912E+00,-0.91997E+00,-0.92082E+00,-0.92167E+00,-0.92251E+00, & - &-0.92336E+00,-0.92421E+00,-0.92505E+00,-0.92590E+00,-0.92674E+00, & - &-0.92758E+00,-0.92842E+00,-0.92927E+00,-0.93011E+00,-0.93095E+00, & - &-0.93179E+00,-0.93262E+00,-0.93346E+00,-0.93430E+00,-0.93514E+00, & - &-0.93597E+00,-0.93681E+00,-0.93764E+00,-0.93848E+00,-0.93931E+00, & - &-0.94014E+00,-0.94097E+00,-0.94180E+00,-0.94263E+00,-0.94346E+00, & - &-0.94429E+00,-0.94512E+00,-0.94595E+00,-0.94678E+00,-0.94760E+00, & - &-0.94843E+00,-0.94925E+00,-0.95008E+00,-0.95090E+00,-0.95172E+00/ - - DATA (BNC03M(I),I=501,600)/ & - &-0.95255E+00,-0.95337E+00,-0.95419E+00,-0.95501E+00,-0.95583E+00, & - &-0.95665E+00,-0.95747E+00,-0.95828E+00,-0.95910E+00,-0.95992E+00, & - &-0.96073E+00,-0.96155E+00,-0.96236E+00,-0.96318E+00,-0.96399E+00, & - &-0.96480E+00,-0.96562E+00,-0.96643E+00,-0.96724E+00,-0.96805E+00, & - &-0.96886E+00,-0.96967E+00,-0.97048E+00,-0.97128E+00,-0.97209E+00, & - &-0.97290E+00,-0.97371E+00,-0.97451E+00,-0.97532E+00,-0.97612E+00, & - &-0.97692E+00,-0.97773E+00,-0.97853E+00,-0.97933E+00,-0.98013E+00, & - &-0.98093E+00,-0.98173E+00,-0.98253E+00,-0.98333E+00,-0.98413E+00, & - &-0.98493E+00,-0.98573E+00,-0.98652E+00,-0.98732E+00,-0.98812E+00, & - &-0.98891E+00,-0.98971E+00,-0.99050E+00,-0.99129E+00,-0.99209E+00, & - &-0.99288E+00,-0.99367E+00,-0.99446E+00,-0.99525E+00,-0.99604E+00, & - &-0.99683E+00,-0.99762E+00,-0.99841E+00,-0.99920E+00,-0.99999E+00, & - &-0.10008E+01,-0.10016E+01,-0.10023E+01,-0.10031E+01,-0.10039E+01, & - &-0.10047E+01,-0.10055E+01,-0.10063E+01,-0.10070E+01,-0.10078E+01, & - &-0.10086E+01,-0.10094E+01,-0.10102E+01,-0.10110E+01,-0.10117E+01, & - &-0.10125E+01,-0.10133E+01,-0.10141E+01,-0.10148E+01,-0.10156E+01, & - &-0.10164E+01,-0.10172E+01,-0.10180E+01,-0.10187E+01,-0.10195E+01, & - &-0.10203E+01,-0.10210E+01,-0.10218E+01,-0.10226E+01,-0.10234E+01, & - &-0.10241E+01,-0.10249E+01,-0.10257E+01,-0.10264E+01,-0.10272E+01, & - &-0.10280E+01,-0.10288E+01,-0.10295E+01,-0.10303E+01,-0.10311E+01/ - - DATA (BNC03M(I),I=601,700)/ & - &-0.10393E+01,-0.10469E+01,-0.10545E+01,-0.10620E+01,-0.10694E+01, & - &-0.10769E+01,-0.10842E+01,-0.10916E+01,-0.10989E+01,-0.11062E+01, & - &-0.11134E+01,-0.11206E+01,-0.11277E+01,-0.11349E+01,-0.11420E+01, & - &-0.11490E+01,-0.11560E+01,-0.11630E+01,-0.11700E+01,-0.11769E+01, & - &-0.11838E+01,-0.11907E+01,-0.11976E+01,-0.12044E+01,-0.12112E+01, & - &-0.12180E+01,-0.12247E+01,-0.12314E+01,-0.12381E+01,-0.12448E+01, & - &-0.12514E+01,-0.12581E+01,-0.12647E+01,-0.12713E+01,-0.12778E+01, & - &-0.12843E+01,-0.12909E+01,-0.12974E+01,-0.13038E+01,-0.13103E+01, & - &-0.13167E+01,-0.13231E+01,-0.13295E+01,-0.13359E+01,-0.13423E+01, & - &-0.13486E+01,-0.13549E+01,-0.13612E+01,-0.13675E+01,-0.13738E+01, & - &-0.13800E+01,-0.13863E+01,-0.13925E+01,-0.13987E+01,-0.14049E+01, & - &-0.14111E+01,-0.14172E+01,-0.14234E+01,-0.14295E+01,-0.14356E+01, & - &-0.14417E+01,-0.14478E+01,-0.14539E+01,-0.14599E+01,-0.14660E+01, & - &-0.14720E+01,-0.14780E+01,-0.14840E+01,-0.14900E+01,-0.14960E+01, & - &-0.15020E+01,-0.15079E+01,-0.15139E+01,-0.15198E+01,-0.15257E+01, & - &-0.15316E+01,-0.15375E+01,-0.15434E+01,-0.15493E+01,-0.15551E+01, & - &-0.15610E+01,-0.15668E+01,-0.15727E+01,-0.15785E+01,-0.15843E+01, & - &-0.15901E+01,-0.15959E+01,-0.16017E+01,-0.16074E+01,-0.16132E+01, & - &-0.16189E+01,-0.16247E+01,-0.16304E+01,-0.16361E+01,-0.16418E+01, & - &-0.16475E+01,-0.16532E+01,-0.16589E+01,-0.16646E+01,-0.16703E+01/ - - DATA (BNC03M(I),I=701,741)/ & - &-0.16759E+01,-0.16816E+01,-0.16872E+01,-0.16928E+01,-0.16985E+01, & - &-0.17041E+01,-0.17097E+01,-0.17153E+01,-0.17209E+01,-0.17265E+01, & - &-0.17320E+01,-0.17376E+01,-0.17432E+01,-0.17487E+01,-0.17543E+01, & - &-0.17598E+01,-0.17653E+01,-0.17709E+01,-0.17764E+01,-0.17819E+01, & - &-0.17874E+01,-0.17929E+01,-0.17984E+01,-0.18039E+01,-0.18093E+01, & - &-0.18148E+01,-0.18203E+01,-0.18257E+01,-0.18312E+01,-0.18366E+01, & - &-0.18420E+01,-0.18475E+01,-0.18529E+01,-0.18583E+01,-0.18637E+01, & - &-0.18691E+01,-0.18745E+01,-0.18799E+01,-0.18853E+01,-0.18907E+01, & - &-0.18960E+01 & - & / -! -! *** (NH4)2SO4 -! - DATA (BNC04M(I),I=1,100)/ & - &-0.10053E+00,-0.22014E+00,-0.28074E+00,-0.32404E+00,-0.35833E+00, & - &-0.38699E+00,-0.41173E+00,-0.43358E+00,-0.45321E+00,-0.47106E+00, & - &-0.48747E+00,-0.50266E+00,-0.51683E+00,-0.53012E+00,-0.54265E+00, & - &-0.55451E+00,-0.56578E+00,-0.57652E+00,-0.58678E+00,-0.59662E+00, & - &-0.60607E+00,-0.61516E+00,-0.62393E+00,-0.63241E+00,-0.64060E+00, & - &-0.64855E+00,-0.65625E+00,-0.66374E+00,-0.67102E+00,-0.67810E+00, & - &-0.68501E+00,-0.69174E+00,-0.69832E+00,-0.70474E+00,-0.71102E+00, & - &-0.71716E+00,-0.72317E+00,-0.72906E+00,-0.73483E+00,-0.74049E+00, & - &-0.74605E+00,-0.75150E+00,-0.75686E+00,-0.76212E+00,-0.76729E+00, & - &-0.77238E+00,-0.77738E+00,-0.78231E+00,-0.78716E+00,-0.79194E+00, & - &-0.79664E+00,-0.80128E+00,-0.80586E+00,-0.81037E+00,-0.81482E+00, & - &-0.81921E+00,-0.82355E+00,-0.82783E+00,-0.83205E+00,-0.83623E+00, & - &-0.84036E+00,-0.84444E+00,-0.84848E+00,-0.85247E+00,-0.85642E+00, & - &-0.86033E+00,-0.86420E+00,-0.86803E+00,-0.87182E+00,-0.87558E+00, & - &-0.87930E+00,-0.88299E+00,-0.88665E+00,-0.89028E+00,-0.89387E+00, & - &-0.89744E+00,-0.90098E+00,-0.90449E+00,-0.90798E+00,-0.91144E+00, & - &-0.91487E+00,-0.91828E+00,-0.92167E+00,-0.92503E+00,-0.92838E+00, & - &-0.93170E+00,-0.93500E+00,-0.93828E+00,-0.94154E+00,-0.94479E+00, & - &-0.94801E+00,-0.95122E+00,-0.95440E+00,-0.95757E+00,-0.96073E+00, & - &-0.96387E+00,-0.96699E+00,-0.97009E+00,-0.97318E+00,-0.97626E+00/ - - DATA (BNC04M(I),I=101,200)/ & - &-0.97931E+00,-0.98236E+00,-0.98539E+00,-0.98840E+00,-0.99141E+00, & - &-0.99439E+00,-0.99737E+00,-0.10003E+01,-0.10033E+01,-0.10062E+01, & - &-0.10091E+01,-0.10120E+01,-0.10149E+01,-0.10178E+01,-0.10207E+01, & - &-0.10235E+01,-0.10264E+01,-0.10292E+01,-0.10320E+01,-0.10348E+01, & - &-0.10376E+01,-0.10404E+01,-0.10432E+01,-0.10460E+01,-0.10487E+01, & - &-0.10515E+01,-0.10542E+01,-0.10569E+01,-0.10596E+01,-0.10623E+01, & - &-0.10650E+01,-0.10677E+01,-0.10703E+01,-0.10730E+01,-0.10756E+01, & - &-0.10783E+01,-0.10809E+01,-0.10835E+01,-0.10861E+01,-0.10887E+01, & - &-0.10913E+01,-0.10938E+01,-0.10964E+01,-0.10990E+01,-0.11015E+01, & - &-0.11041E+01,-0.11066E+01,-0.11091E+01,-0.11116E+01,-0.11141E+01, & - &-0.11166E+01,-0.11191E+01,-0.11216E+01,-0.11241E+01,-0.11265E+01, & - &-0.11290E+01,-0.11314E+01,-0.11339E+01,-0.11363E+01,-0.11387E+01, & - &-0.11411E+01,-0.11435E+01,-0.11459E+01,-0.11483E+01,-0.11507E+01, & - &-0.11531E+01,-0.11555E+01,-0.11578E+01,-0.11602E+01,-0.11625E+01, & - &-0.11649E+01,-0.11672E+01,-0.11696E+01,-0.11719E+01,-0.11742E+01, & - &-0.11765E+01,-0.11788E+01,-0.11811E+01,-0.11834E+01,-0.11857E+01, & - &-0.11880E+01,-0.11903E+01,-0.11925E+01,-0.11948E+01,-0.11970E+01, & - &-0.11993E+01,-0.12015E+01,-0.12038E+01,-0.12060E+01,-0.12082E+01, & - &-0.12105E+01,-0.12127E+01,-0.12149E+01,-0.12171E+01,-0.12193E+01, & - &-0.12215E+01,-0.12237E+01,-0.12259E+01,-0.12280E+01,-0.12302E+01/ - - DATA (BNC04M(I),I=201,300)/ & - &-0.12324E+01,-0.12345E+01,-0.12367E+01,-0.12389E+01,-0.12410E+01, & - &-0.12432E+01,-0.12453E+01,-0.12474E+01,-0.12496E+01,-0.12517E+01, & - &-0.12538E+01,-0.12559E+01,-0.12580E+01,-0.12601E+01,-0.12622E+01, & - &-0.12643E+01,-0.12664E+01,-0.12685E+01,-0.12706E+01,-0.12727E+01, & - &-0.12748E+01,-0.12768E+01,-0.12789E+01,-0.12810E+01,-0.12830E+01, & - &-0.12851E+01,-0.12871E+01,-0.12892E+01,-0.12912E+01,-0.12932E+01, & - &-0.12953E+01,-0.12973E+01,-0.12993E+01,-0.13014E+01,-0.13034E+01, & - &-0.13054E+01,-0.13074E+01,-0.13094E+01,-0.13114E+01,-0.13134E+01, & - &-0.13154E+01,-0.13174E+01,-0.13194E+01,-0.13214E+01,-0.13234E+01, & - &-0.13253E+01,-0.13273E+01,-0.13293E+01,-0.13313E+01,-0.13332E+01, & - &-0.13352E+01,-0.13371E+01,-0.13391E+01,-0.13410E+01,-0.13430E+01, & - &-0.13449E+01,-0.13469E+01,-0.13488E+01,-0.13507E+01,-0.13527E+01, & - &-0.13546E+01,-0.13565E+01,-0.13584E+01,-0.13604E+01,-0.13623E+01, & - &-0.13642E+01,-0.13661E+01,-0.13680E+01,-0.13699E+01,-0.13718E+01, & - &-0.13737E+01,-0.13756E+01,-0.13775E+01,-0.13794E+01,-0.13813E+01, & - &-0.13831E+01,-0.13850E+01,-0.13869E+01,-0.13888E+01,-0.13906E+01, & - &-0.13925E+01,-0.13944E+01,-0.13962E+01,-0.13981E+01,-0.13999E+01, & - &-0.14018E+01,-0.14036E+01,-0.14055E+01,-0.14073E+01,-0.14092E+01, & - &-0.14110E+01,-0.14129E+01,-0.14147E+01,-0.14165E+01,-0.14183E+01, & - &-0.14202E+01,-0.14220E+01,-0.14238E+01,-0.14256E+01,-0.14275E+01/ - - DATA (BNC04M(I),I=301,400)/ & - &-0.14293E+01,-0.14311E+01,-0.14329E+01,-0.14347E+01,-0.14365E+01, & - &-0.14383E+01,-0.14401E+01,-0.14419E+01,-0.14437E+01,-0.14455E+01, & - &-0.14473E+01,-0.14491E+01,-0.14508E+01,-0.14526E+01,-0.14544E+01, & - &-0.14562E+01,-0.14580E+01,-0.14597E+01,-0.14615E+01,-0.14633E+01, & - &-0.14650E+01,-0.14668E+01,-0.14686E+01,-0.14703E+01,-0.14721E+01, & - &-0.14738E+01,-0.14756E+01,-0.14773E+01,-0.14791E+01,-0.14808E+01, & - &-0.14826E+01,-0.14843E+01,-0.14861E+01,-0.14878E+01,-0.14895E+01, & - &-0.14913E+01,-0.14930E+01,-0.14947E+01,-0.14965E+01,-0.14982E+01, & - &-0.14999E+01,-0.15016E+01,-0.15034E+01,-0.15051E+01,-0.15068E+01, & - &-0.15085E+01,-0.15102E+01,-0.15119E+01,-0.15136E+01,-0.15153E+01, & - &-0.15171E+01,-0.15188E+01,-0.15205E+01,-0.15222E+01,-0.15239E+01, & - &-0.15255E+01,-0.15272E+01,-0.15289E+01,-0.15306E+01,-0.15323E+01, & - &-0.15340E+01,-0.15357E+01,-0.15374E+01,-0.15390E+01,-0.15407E+01, & - &-0.15424E+01,-0.15441E+01,-0.15457E+01,-0.15474E+01,-0.15491E+01, & - &-0.15508E+01,-0.15524E+01,-0.15541E+01,-0.15557E+01,-0.15574E+01, & - &-0.15591E+01,-0.15607E+01,-0.15624E+01,-0.15640E+01,-0.15657E+01, & - &-0.15673E+01,-0.15690E+01,-0.15706E+01,-0.15723E+01,-0.15739E+01, & - &-0.15756E+01,-0.15772E+01,-0.15788E+01,-0.15805E+01,-0.15821E+01, & - &-0.15838E+01,-0.15854E+01,-0.15870E+01,-0.15887E+01,-0.15903E+01, & - &-0.15919E+01,-0.15935E+01,-0.15952E+01,-0.15968E+01,-0.15984E+01/ - - DATA (BNC04M(I),I=401,500)/ & - &-0.16000E+01,-0.16016E+01,-0.16032E+01,-0.16049E+01,-0.16065E+01, & - &-0.16081E+01,-0.16097E+01,-0.16113E+01,-0.16129E+01,-0.16145E+01, & - &-0.16161E+01,-0.16177E+01,-0.16193E+01,-0.16209E+01,-0.16225E+01, & - &-0.16241E+01,-0.16257E+01,-0.16273E+01,-0.16289E+01,-0.16305E+01, & - &-0.16321E+01,-0.16337E+01,-0.16353E+01,-0.16368E+01,-0.16384E+01, & - &-0.16400E+01,-0.16416E+01,-0.16432E+01,-0.16448E+01,-0.16463E+01, & - &-0.16479E+01,-0.16495E+01,-0.16511E+01,-0.16526E+01,-0.16542E+01, & - &-0.16558E+01,-0.16573E+01,-0.16589E+01,-0.16605E+01,-0.16620E+01, & - &-0.16636E+01,-0.16652E+01,-0.16667E+01,-0.16683E+01,-0.16698E+01, & - &-0.16714E+01,-0.16729E+01,-0.16745E+01,-0.16761E+01,-0.16776E+01, & - &-0.16792E+01,-0.16807E+01,-0.16823E+01,-0.16838E+01,-0.16853E+01, & - &-0.16869E+01,-0.16884E+01,-0.16900E+01,-0.16915E+01,-0.16931E+01, & - &-0.16946E+01,-0.16961E+01,-0.16977E+01,-0.16992E+01,-0.17007E+01, & - &-0.17023E+01,-0.17038E+01,-0.17053E+01,-0.17069E+01,-0.17084E+01, & - &-0.17099E+01,-0.17114E+01,-0.17130E+01,-0.17145E+01,-0.17160E+01, & - &-0.17175E+01,-0.17190E+01,-0.17206E+01,-0.17221E+01,-0.17236E+01, & - &-0.17251E+01,-0.17266E+01,-0.17281E+01,-0.17297E+01,-0.17312E+01, & - &-0.17327E+01,-0.17342E+01,-0.17357E+01,-0.17372E+01,-0.17387E+01, & - &-0.17402E+01,-0.17417E+01,-0.17432E+01,-0.17447E+01,-0.17462E+01, & - &-0.17477E+01,-0.17492E+01,-0.17507E+01,-0.17522E+01,-0.17537E+01/ - - DATA (BNC04M(I),I=501,600)/ & - &-0.17552E+01,-0.17567E+01,-0.17582E+01,-0.17597E+01,-0.17612E+01, & - &-0.17626E+01,-0.17641E+01,-0.17656E+01,-0.17671E+01,-0.17686E+01, & - &-0.17701E+01,-0.17715E+01,-0.17730E+01,-0.17745E+01,-0.17760E+01, & - &-0.17775E+01,-0.17789E+01,-0.17804E+01,-0.17819E+01,-0.17834E+01, & - &-0.17848E+01,-0.17863E+01,-0.17878E+01,-0.17893E+01,-0.17907E+01, & - &-0.17922E+01,-0.17937E+01,-0.17951E+01,-0.17966E+01,-0.17981E+01, & - &-0.17995E+01,-0.18010E+01,-0.18025E+01,-0.18039E+01,-0.18054E+01, & - &-0.18068E+01,-0.18083E+01,-0.18098E+01,-0.18112E+01,-0.18127E+01, & - &-0.18141E+01,-0.18156E+01,-0.18170E+01,-0.18185E+01,-0.18199E+01, & - &-0.18214E+01,-0.18228E+01,-0.18243E+01,-0.18257E+01,-0.18272E+01, & - &-0.18286E+01,-0.18301E+01,-0.18315E+01,-0.18330E+01,-0.18344E+01, & - &-0.18358E+01,-0.18373E+01,-0.18387E+01,-0.18402E+01,-0.18416E+01, & - &-0.18430E+01,-0.18445E+01,-0.18459E+01,-0.18473E+01,-0.18488E+01, & - &-0.18502E+01,-0.18516E+01,-0.18531E+01,-0.18545E+01,-0.18559E+01, & - &-0.18574E+01,-0.18588E+01,-0.18602E+01,-0.18616E+01,-0.18631E+01, & - &-0.18645E+01,-0.18659E+01,-0.18673E+01,-0.18688E+01,-0.18702E+01, & - &-0.18716E+01,-0.18730E+01,-0.18744E+01,-0.18759E+01,-0.18773E+01, & - &-0.18787E+01,-0.18801E+01,-0.18815E+01,-0.18829E+01,-0.18844E+01, & - &-0.18858E+01,-0.18872E+01,-0.18886E+01,-0.18900E+01,-0.18914E+01, & - &-0.18928E+01,-0.18942E+01,-0.18956E+01,-0.18970E+01,-0.18984E+01/ - - DATA (BNC04M(I),I=601,700)/ & - &-0.19136E+01,-0.19275E+01,-0.19414E+01,-0.19552E+01,-0.19689E+01, & - &-0.19826E+01,-0.19962E+01,-0.20097E+01,-0.20232E+01,-0.20366E+01, & - &-0.20500E+01,-0.20633E+01,-0.20766E+01,-0.20897E+01,-0.21029E+01, & - &-0.21160E+01,-0.21290E+01,-0.21420E+01,-0.21550E+01,-0.21679E+01, & - &-0.21807E+01,-0.21935E+01,-0.22063E+01,-0.22190E+01,-0.22317E+01, & - &-0.22443E+01,-0.22569E+01,-0.22695E+01,-0.22820E+01,-0.22945E+01, & - &-0.23069E+01,-0.23193E+01,-0.23317E+01,-0.23440E+01,-0.23563E+01, & - &-0.23686E+01,-0.23808E+01,-0.23930E+01,-0.24052E+01,-0.24173E+01, & - &-0.24294E+01,-0.24415E+01,-0.24535E+01,-0.24655E+01,-0.24775E+01, & - &-0.24895E+01,-0.25014E+01,-0.25133E+01,-0.25252E+01,-0.25370E+01, & - &-0.25488E+01,-0.25606E+01,-0.25724E+01,-0.25841E+01,-0.25959E+01, & - &-0.26076E+01,-0.26192E+01,-0.26309E+01,-0.26425E+01,-0.26541E+01, & - &-0.26657E+01,-0.26772E+01,-0.26887E+01,-0.27002E+01,-0.27117E+01, & - &-0.27232E+01,-0.27346E+01,-0.27461E+01,-0.27575E+01,-0.27688E+01, & - &-0.27802E+01,-0.27915E+01,-0.28029E+01,-0.28142E+01,-0.28255E+01, & - &-0.28367E+01,-0.28480E+01,-0.28592E+01,-0.28704E+01,-0.28816E+01, & - &-0.28928E+01,-0.29039E+01,-0.29151E+01,-0.29262E+01,-0.29373E+01, & - &-0.29484E+01,-0.29595E+01,-0.29705E+01,-0.29816E+01,-0.29926E+01, & - &-0.30036E+01,-0.30146E+01,-0.30256E+01,-0.30366E+01,-0.30475E+01, & - &-0.30585E+01,-0.30694E+01,-0.30803E+01,-0.30912E+01,-0.31021E+01/ - - DATA (BNC04M(I),I=701,741)/ & - &-0.31129E+01,-0.31238E+01,-0.31346E+01,-0.31454E+01,-0.31562E+01, & - &-0.31670E+01,-0.31778E+01,-0.31886E+01,-0.31993E+01,-0.32101E+01, & - &-0.32208E+01,-0.32315E+01,-0.32423E+01,-0.32529E+01,-0.32636E+01, & - &-0.32743E+01,-0.32850E+01,-0.32956E+01,-0.33062E+01,-0.33169E+01, & - &-0.33275E+01,-0.33381E+01,-0.33487E+01,-0.33592E+01,-0.33698E+01, & - &-0.33804E+01,-0.33909E+01,-0.34015E+01,-0.34120E+01,-0.34225E+01, & - &-0.34330E+01,-0.34435E+01,-0.34540E+01,-0.34644E+01,-0.34749E+01, & - &-0.34854E+01,-0.34958E+01,-0.35062E+01,-0.35166E+01,-0.35271E+01, & - &-0.35375E+01 & - & / -! -! *** NH4NO3 -! - DATA (BNC05M(I),I=1,100)/ & - &-0.51007E-01,-0.11414E+00,-0.14751E+00,-0.17208E+00,-0.19205E+00, & - &-0.20913E+00,-0.22418E+00,-0.23774E+00,-0.25013E+00,-0.26159E+00, & - &-0.27229E+00,-0.28235E+00,-0.29187E+00,-0.30091E+00,-0.30954E+00, & - &-0.31781E+00,-0.32575E+00,-0.33340E+00,-0.34079E+00,-0.34794E+00, & - &-0.35487E+00,-0.36160E+00,-0.36815E+00,-0.37452E+00,-0.38073E+00, & - &-0.38679E+00,-0.39271E+00,-0.39849E+00,-0.40415E+00,-0.40969E+00, & - &-0.41512E+00,-0.42044E+00,-0.42566E+00,-0.43078E+00,-0.43581E+00, & - &-0.44075E+00,-0.44560E+00,-0.45037E+00,-0.45506E+00,-0.45968E+00, & - &-0.46422E+00,-0.46869E+00,-0.47309E+00,-0.47742E+00,-0.48169E+00, & - &-0.48590E+00,-0.49005E+00,-0.49414E+00,-0.49817E+00,-0.50215E+00, & - &-0.50607E+00,-0.50995E+00,-0.51378E+00,-0.51755E+00,-0.52129E+00, & - &-0.52498E+00,-0.52862E+00,-0.53223E+00,-0.53579E+00,-0.53931E+00, & - &-0.54280E+00,-0.54626E+00,-0.54968E+00,-0.55306E+00,-0.55642E+00, & - &-0.55974E+00,-0.56303E+00,-0.56630E+00,-0.56954E+00,-0.57276E+00, & - &-0.57595E+00,-0.57911E+00,-0.58226E+00,-0.58538E+00,-0.58849E+00, & - &-0.59157E+00,-0.59464E+00,-0.59769E+00,-0.60072E+00,-0.60373E+00, & - &-0.60673E+00,-0.60972E+00,-0.61269E+00,-0.61565E+00,-0.61860E+00, & - &-0.62153E+00,-0.62445E+00,-0.62737E+00,-0.63027E+00,-0.63316E+00, & - &-0.63604E+00,-0.63891E+00,-0.64177E+00,-0.64462E+00,-0.64746E+00, & - &-0.65029E+00,-0.65312E+00,-0.65593E+00,-0.65874E+00,-0.66154E+00/ - - DATA (BNC05M(I),I=101,200)/ & - &-0.66433E+00,-0.66711E+00,-0.66988E+00,-0.67265E+00,-0.67540E+00, & - &-0.67815E+00,-0.68089E+00,-0.68361E+00,-0.68633E+00,-0.68905E+00, & - &-0.69175E+00,-0.69444E+00,-0.69713E+00,-0.69980E+00,-0.70247E+00, & - &-0.70513E+00,-0.70777E+00,-0.71041E+00,-0.71304E+00,-0.71566E+00, & - &-0.71827E+00,-0.72087E+00,-0.72346E+00,-0.72604E+00,-0.72861E+00, & - &-0.73117E+00,-0.73372E+00,-0.73627E+00,-0.73880E+00,-0.74132E+00, & - &-0.74383E+00,-0.74634E+00,-0.74883E+00,-0.75132E+00,-0.75379E+00, & - &-0.75626E+00,-0.75871E+00,-0.76116E+00,-0.76360E+00,-0.76603E+00, & - &-0.76844E+00,-0.77085E+00,-0.77325E+00,-0.77565E+00,-0.77803E+00, & - &-0.78040E+00,-0.78277E+00,-0.78512E+00,-0.78747E+00,-0.78981E+00, & - &-0.79214E+00,-0.79446E+00,-0.79677E+00,-0.79908E+00,-0.80138E+00, & - &-0.80366E+00,-0.80594E+00,-0.80822E+00,-0.81048E+00,-0.81274E+00, & - &-0.81498E+00,-0.81723E+00,-0.81946E+00,-0.82168E+00,-0.82390E+00, & - &-0.82611E+00,-0.82831E+00,-0.83051E+00,-0.83269E+00,-0.83487E+00, & - &-0.83705E+00,-0.83921E+00,-0.84137E+00,-0.84352E+00,-0.84567E+00, & - &-0.84780E+00,-0.84993E+00,-0.85206E+00,-0.85417E+00,-0.85628E+00, & - &-0.85839E+00,-0.86048E+00,-0.86257E+00,-0.86466E+00,-0.86673E+00, & - &-0.86880E+00,-0.87087E+00,-0.87292E+00,-0.87497E+00,-0.87702E+00, & - &-0.87906E+00,-0.88109E+00,-0.88312E+00,-0.88514E+00,-0.88715E+00, & - &-0.88916E+00,-0.89116E+00,-0.89315E+00,-0.89514E+00,-0.89713E+00/ - - DATA (BNC05M(I),I=201,300)/ & - &-0.89911E+00,-0.90108E+00,-0.90305E+00,-0.90501E+00,-0.90696E+00, & - &-0.90891E+00,-0.91086E+00,-0.91280E+00,-0.91473E+00,-0.91666E+00, & - &-0.91858E+00,-0.92050E+00,-0.92241E+00,-0.92431E+00,-0.92621E+00, & - &-0.92811E+00,-0.93000E+00,-0.93188E+00,-0.93376E+00,-0.93564E+00, & - &-0.93751E+00,-0.93937E+00,-0.94123E+00,-0.94309E+00,-0.94494E+00, & - &-0.94678E+00,-0.94862E+00,-0.95046E+00,-0.95229E+00,-0.95411E+00, & - &-0.95593E+00,-0.95775E+00,-0.95956E+00,-0.96136E+00,-0.96317E+00, & - &-0.96496E+00,-0.96676E+00,-0.96854E+00,-0.97033E+00,-0.97210E+00, & - &-0.97388E+00,-0.97565E+00,-0.97741E+00,-0.97917E+00,-0.98093E+00, & - &-0.98268E+00,-0.98443E+00,-0.98617E+00,-0.98791E+00,-0.98965E+00, & - &-0.99138E+00,-0.99310E+00,-0.99483E+00,-0.99654E+00,-0.99826E+00, & - &-0.99997E+00,-0.10017E+01,-0.10034E+01,-0.10051E+01,-0.10068E+01, & - &-0.10085E+01,-0.10101E+01,-0.10118E+01,-0.10135E+01,-0.10152E+01, & - &-0.10168E+01,-0.10185E+01,-0.10202E+01,-0.10218E+01,-0.10235E+01, & - &-0.10251E+01,-0.10268E+01,-0.10284E+01,-0.10301E+01,-0.10317E+01, & - &-0.10333E+01,-0.10350E+01,-0.10366E+01,-0.10382E+01,-0.10398E+01, & - &-0.10414E+01,-0.10430E+01,-0.10446E+01,-0.10462E+01,-0.10478E+01, & - &-0.10494E+01,-0.10510E+01,-0.10526E+01,-0.10542E+01,-0.10558E+01, & - &-0.10574E+01,-0.10589E+01,-0.10605E+01,-0.10621E+01,-0.10636E+01, & - &-0.10652E+01,-0.10668E+01,-0.10683E+01,-0.10699E+01,-0.10714E+01/ - - DATA (BNC05M(I),I=301,400)/ & - &-0.10730E+01,-0.10745E+01,-0.10760E+01,-0.10776E+01,-0.10791E+01, & - &-0.10806E+01,-0.10822E+01,-0.10837E+01,-0.10852E+01,-0.10867E+01, & - &-0.10882E+01,-0.10898E+01,-0.10913E+01,-0.10928E+01,-0.10943E+01, & - &-0.10958E+01,-0.10973E+01,-0.10988E+01,-0.11002E+01,-0.11017E+01, & - &-0.11032E+01,-0.11047E+01,-0.11062E+01,-0.11076E+01,-0.11091E+01, & - &-0.11106E+01,-0.11121E+01,-0.11135E+01,-0.11150E+01,-0.11164E+01, & - &-0.11179E+01,-0.11193E+01,-0.11208E+01,-0.11222E+01,-0.11237E+01, & - &-0.11251E+01,-0.11266E+01,-0.11280E+01,-0.11294E+01,-0.11309E+01, & - &-0.11323E+01,-0.11337E+01,-0.11351E+01,-0.11365E+01,-0.11380E+01, & - &-0.11394E+01,-0.11408E+01,-0.11422E+01,-0.11436E+01,-0.11450E+01, & - &-0.11464E+01,-0.11478E+01,-0.11492E+01,-0.11506E+01,-0.11520E+01, & - &-0.11534E+01,-0.11548E+01,-0.11561E+01,-0.11575E+01,-0.11589E+01, & - &-0.11603E+01,-0.11617E+01,-0.11630E+01,-0.11644E+01,-0.11658E+01, & - &-0.11671E+01,-0.11685E+01,-0.11698E+01,-0.11712E+01,-0.11726E+01, & - &-0.11739E+01,-0.11753E+01,-0.11766E+01,-0.11779E+01,-0.11793E+01, & - &-0.11806E+01,-0.11820E+01,-0.11833E+01,-0.11846E+01,-0.11860E+01, & - &-0.11873E+01,-0.11886E+01,-0.11899E+01,-0.11913E+01,-0.11926E+01, & - &-0.11939E+01,-0.11952E+01,-0.11965E+01,-0.11978E+01,-0.11992E+01, & - &-0.12005E+01,-0.12018E+01,-0.12031E+01,-0.12044E+01,-0.12057E+01, & - &-0.12070E+01,-0.12083E+01,-0.12096E+01,-0.12108E+01,-0.12121E+01/ - - DATA (BNC05M(I),I=401,500)/ & - &-0.12134E+01,-0.12147E+01,-0.12160E+01,-0.12173E+01,-0.12185E+01, & - &-0.12198E+01,-0.12211E+01,-0.12224E+01,-0.12236E+01,-0.12249E+01, & - &-0.12262E+01,-0.12274E+01,-0.12287E+01,-0.12299E+01,-0.12312E+01, & - &-0.12325E+01,-0.12337E+01,-0.12350E+01,-0.12362E+01,-0.12375E+01, & - &-0.12387E+01,-0.12400E+01,-0.12412E+01,-0.12424E+01,-0.12437E+01, & - &-0.12449E+01,-0.12461E+01,-0.12474E+01,-0.12486E+01,-0.12498E+01, & - &-0.12511E+01,-0.12523E+01,-0.12535E+01,-0.12547E+01,-0.12560E+01, & - &-0.12572E+01,-0.12584E+01,-0.12596E+01,-0.12608E+01,-0.12620E+01, & - &-0.12632E+01,-0.12644E+01,-0.12656E+01,-0.12669E+01,-0.12681E+01, & - &-0.12693E+01,-0.12705E+01,-0.12717E+01,-0.12728E+01,-0.12740E+01, & - &-0.12752E+01,-0.12764E+01,-0.12776E+01,-0.12788E+01,-0.12800E+01, & - &-0.12812E+01,-0.12823E+01,-0.12835E+01,-0.12847E+01,-0.12859E+01, & - &-0.12871E+01,-0.12882E+01,-0.12894E+01,-0.12906E+01,-0.12917E+01, & - &-0.12929E+01,-0.12941E+01,-0.12952E+01,-0.12964E+01,-0.12976E+01, & - &-0.12987E+01,-0.12999E+01,-0.13010E+01,-0.13022E+01,-0.13033E+01, & - &-0.13045E+01,-0.13056E+01,-0.13068E+01,-0.13079E+01,-0.13091E+01, & - &-0.13102E+01,-0.13114E+01,-0.13125E+01,-0.13136E+01,-0.13148E+01, & - &-0.13159E+01,-0.13170E+01,-0.13182E+01,-0.13193E+01,-0.13204E+01, & - &-0.13216E+01,-0.13227E+01,-0.13238E+01,-0.13249E+01,-0.13261E+01, & - &-0.13272E+01,-0.13283E+01,-0.13294E+01,-0.13305E+01,-0.13317E+01/ - - DATA (BNC05M(I),I=501,600)/ & - &-0.13328E+01,-0.13339E+01,-0.13350E+01,-0.13361E+01,-0.13372E+01, & - &-0.13383E+01,-0.13394E+01,-0.13405E+01,-0.13416E+01,-0.13427E+01, & - &-0.13438E+01,-0.13449E+01,-0.13460E+01,-0.13471E+01,-0.13482E+01, & - &-0.13493E+01,-0.13504E+01,-0.13515E+01,-0.13526E+01,-0.13537E+01, & - &-0.13547E+01,-0.13558E+01,-0.13569E+01,-0.13580E+01,-0.13591E+01, & - &-0.13602E+01,-0.13612E+01,-0.13623E+01,-0.13634E+01,-0.13645E+01, & - &-0.13655E+01,-0.13666E+01,-0.13677E+01,-0.13687E+01,-0.13698E+01, & - &-0.13709E+01,-0.13719E+01,-0.13730E+01,-0.13741E+01,-0.13751E+01, & - &-0.13762E+01,-0.13773E+01,-0.13783E+01,-0.13794E+01,-0.13804E+01, & - &-0.13815E+01,-0.13825E+01,-0.13836E+01,-0.13846E+01,-0.13857E+01, & - &-0.13867E+01,-0.13878E+01,-0.13888E+01,-0.13899E+01,-0.13909E+01, & - &-0.13920E+01,-0.13930E+01,-0.13940E+01,-0.13951E+01,-0.13961E+01, & - &-0.13971E+01,-0.13982E+01,-0.13992E+01,-0.14002E+01,-0.14013E+01, & - &-0.14023E+01,-0.14033E+01,-0.14044E+01,-0.14054E+01,-0.14064E+01, & - &-0.14074E+01,-0.14085E+01,-0.14095E+01,-0.14105E+01,-0.14115E+01, & - &-0.14125E+01,-0.14136E+01,-0.14146E+01,-0.14156E+01,-0.14166E+01, & - &-0.14176E+01,-0.14186E+01,-0.14196E+01,-0.14207E+01,-0.14217E+01, & - &-0.14227E+01,-0.14237E+01,-0.14247E+01,-0.14257E+01,-0.14267E+01, & - &-0.14277E+01,-0.14287E+01,-0.14297E+01,-0.14307E+01,-0.14317E+01, & - &-0.14327E+01,-0.14337E+01,-0.14347E+01,-0.14357E+01,-0.14367E+01/ - - DATA (BNC05M(I),I=601,700)/ & - &-0.14473E+01,-0.14571E+01,-0.14668E+01,-0.14763E+01,-0.14858E+01, & - &-0.14952E+01,-0.15045E+01,-0.15137E+01,-0.15229E+01,-0.15319E+01, & - &-0.15409E+01,-0.15498E+01,-0.15586E+01,-0.15674E+01,-0.15761E+01, & - &-0.15847E+01,-0.15933E+01,-0.16017E+01,-0.16102E+01,-0.16185E+01, & - &-0.16268E+01,-0.16351E+01,-0.16433E+01,-0.16514E+01,-0.16595E+01, & - &-0.16675E+01,-0.16754E+01,-0.16834E+01,-0.16912E+01,-0.16990E+01, & - &-0.17068E+01,-0.17145E+01,-0.17222E+01,-0.17298E+01,-0.17374E+01, & - &-0.17450E+01,-0.17525E+01,-0.17599E+01,-0.17674E+01,-0.17747E+01, & - &-0.17821E+01,-0.17894E+01,-0.17967E+01,-0.18039E+01,-0.18111E+01, & - &-0.18182E+01,-0.18254E+01,-0.18325E+01,-0.18395E+01,-0.18466E+01, & - &-0.18535E+01,-0.18605E+01,-0.18674E+01,-0.18743E+01,-0.18812E+01, & - &-0.18881E+01,-0.18949E+01,-0.19017E+01,-0.19084E+01,-0.19152E+01, & - &-0.19219E+01,-0.19285E+01,-0.19352E+01,-0.19418E+01,-0.19484E+01, & - &-0.19550E+01,-0.19616E+01,-0.19681E+01,-0.19746E+01,-0.19811E+01, & - &-0.19876E+01,-0.19940E+01,-0.20004E+01,-0.20068E+01,-0.20132E+01, & - &-0.20196E+01,-0.20259E+01,-0.20322E+01,-0.20385E+01,-0.20448E+01, & - &-0.20510E+01,-0.20573E+01,-0.20635E+01,-0.20697E+01,-0.20759E+01, & - &-0.20821E+01,-0.20882E+01,-0.20943E+01,-0.21005E+01,-0.21066E+01, & - &-0.21126E+01,-0.21187E+01,-0.21247E+01,-0.21308E+01,-0.21368E+01, & - &-0.21428E+01,-0.21488E+01,-0.21548E+01,-0.21607E+01,-0.21667E+01/ - - DATA (BNC05M(I),I=701,741)/ & - &-0.21726E+01,-0.21785E+01,-0.21844E+01,-0.21903E+01,-0.21962E+01, & - &-0.22020E+01,-0.22079E+01,-0.22137E+01,-0.22195E+01,-0.22253E+01, & - &-0.22311E+01,-0.22369E+01,-0.22427E+01,-0.22484E+01,-0.22542E+01, & - &-0.22599E+01,-0.22656E+01,-0.22714E+01,-0.22771E+01,-0.22827E+01, & - &-0.22884E+01,-0.22941E+01,-0.22997E+01,-0.23054E+01,-0.23110E+01, & - &-0.23167E+01,-0.23223E+01,-0.23279E+01,-0.23335E+01,-0.23390E+01, & - &-0.23446E+01,-0.23502E+01,-0.23557E+01,-0.23613E+01,-0.23668E+01, & - &-0.23723E+01,-0.23779E+01,-0.23834E+01,-0.23889E+01,-0.23944E+01, & - &-0.23998E+01 & - & / -! -! *** NH4Cl -! - DATA (BNC06M(I),I=1,100)/ & - &-0.49470E-01,-0.10575E+00,-0.13284E+00,-0.15144E+00,-0.16564E+00, & - &-0.17711E+00,-0.18670E+00,-0.19489E+00,-0.20203E+00,-0.20831E+00, & - &-0.21392E+00,-0.21895E+00,-0.22351E+00,-0.22765E+00,-0.23144E+00, & - &-0.23493E+00,-0.23814E+00,-0.24112E+00,-0.24388E+00,-0.24646E+00, & - &-0.24886E+00,-0.25110E+00,-0.25321E+00,-0.25519E+00,-0.25705E+00, & - &-0.25880E+00,-0.26046E+00,-0.26203E+00,-0.26351E+00,-0.26492E+00, & - &-0.26626E+00,-0.26753E+00,-0.26874E+00,-0.26989E+00,-0.27100E+00, & - &-0.27205E+00,-0.27306E+00,-0.27402E+00,-0.27495E+00,-0.27584E+00, & - &-0.27669E+00,-0.27752E+00,-0.27831E+00,-0.27907E+00,-0.27981E+00, & - &-0.28052E+00,-0.28121E+00,-0.28187E+00,-0.28252E+00,-0.28314E+00, & - &-0.28375E+00,-0.28433E+00,-0.28490E+00,-0.28545E+00,-0.28599E+00, & - &-0.28651E+00,-0.28702E+00,-0.28751E+00,-0.28799E+00,-0.28845E+00, & - &-0.28891E+00,-0.28935E+00,-0.28977E+00,-0.29019E+00,-0.29059E+00, & - &-0.29098E+00,-0.29136E+00,-0.29172E+00,-0.29208E+00,-0.29242E+00, & - &-0.29275E+00,-0.29307E+00,-0.29338E+00,-0.29367E+00,-0.29396E+00, & - &-0.29423E+00,-0.29449E+00,-0.29474E+00,-0.29498E+00,-0.29521E+00, & - &-0.29543E+00,-0.29563E+00,-0.29582E+00,-0.29600E+00,-0.29617E+00, & - &-0.29633E+00,-0.29648E+00,-0.29661E+00,-0.29674E+00,-0.29685E+00, & - &-0.29696E+00,-0.29705E+00,-0.29713E+00,-0.29720E+00,-0.29726E+00, & - &-0.29732E+00,-0.29736E+00,-0.29739E+00,-0.29742E+00,-0.29743E+00/ - - DATA (BNC06M(I),I=101,200)/ & - &-0.29744E+00,-0.29744E+00,-0.29743E+00,-0.29741E+00,-0.29738E+00, & - &-0.29735E+00,-0.29731E+00,-0.29726E+00,-0.29721E+00,-0.29715E+00, & - &-0.29708E+00,-0.29701E+00,-0.29693E+00,-0.29685E+00,-0.29676E+00, & - &-0.29667E+00,-0.29658E+00,-0.29647E+00,-0.29637E+00,-0.29626E+00, & - &-0.29615E+00,-0.29603E+00,-0.29591E+00,-0.29579E+00,-0.29566E+00, & - &-0.29554E+00,-0.29540E+00,-0.29527E+00,-0.29513E+00,-0.29500E+00, & - &-0.29486E+00,-0.29471E+00,-0.29457E+00,-0.29442E+00,-0.29427E+00, & - &-0.29413E+00,-0.29397E+00,-0.29382E+00,-0.29367E+00,-0.29351E+00, & - &-0.29336E+00,-0.29320E+00,-0.29304E+00,-0.29288E+00,-0.29272E+00, & - &-0.29256E+00,-0.29239E+00,-0.29223E+00,-0.29207E+00,-0.29190E+00, & - &-0.29173E+00,-0.29157E+00,-0.29140E+00,-0.29123E+00,-0.29106E+00, & - &-0.29089E+00,-0.29072E+00,-0.29055E+00,-0.29038E+00,-0.29021E+00, & - &-0.29004E+00,-0.28987E+00,-0.28970E+00,-0.28953E+00,-0.28935E+00, & - &-0.28918E+00,-0.28901E+00,-0.28883E+00,-0.28866E+00,-0.28848E+00, & - &-0.28831E+00,-0.28814E+00,-0.28796E+00,-0.28779E+00,-0.28761E+00, & - &-0.28744E+00,-0.28726E+00,-0.28709E+00,-0.28691E+00,-0.28674E+00, & - &-0.28656E+00,-0.28639E+00,-0.28621E+00,-0.28604E+00,-0.28586E+00, & - &-0.28569E+00,-0.28551E+00,-0.28534E+00,-0.28516E+00,-0.28499E+00, & - &-0.28481E+00,-0.28464E+00,-0.28447E+00,-0.28429E+00,-0.28412E+00, & - &-0.28395E+00,-0.28377E+00,-0.28360E+00,-0.28343E+00,-0.28325E+00/ - - DATA (BNC06M(I),I=201,300)/ & - &-0.28308E+00,-0.28291E+00,-0.28274E+00,-0.28257E+00,-0.28240E+00, & - &-0.28223E+00,-0.28205E+00,-0.28188E+00,-0.28171E+00,-0.28155E+00, & - &-0.28138E+00,-0.28121E+00,-0.28104E+00,-0.28087E+00,-0.28070E+00, & - &-0.28053E+00,-0.28037E+00,-0.28020E+00,-0.28003E+00,-0.27987E+00, & - &-0.27970E+00,-0.27954E+00,-0.27937E+00,-0.27921E+00,-0.27905E+00, & - &-0.27888E+00,-0.27872E+00,-0.27856E+00,-0.27839E+00,-0.27823E+00, & - &-0.27807E+00,-0.27791E+00,-0.27775E+00,-0.27759E+00,-0.27743E+00, & - &-0.27727E+00,-0.27712E+00,-0.27696E+00,-0.27680E+00,-0.27664E+00, & - &-0.27649E+00,-0.27633E+00,-0.27618E+00,-0.27602E+00,-0.27587E+00, & - &-0.27571E+00,-0.27556E+00,-0.27541E+00,-0.27526E+00,-0.27510E+00, & - &-0.27495E+00,-0.27480E+00,-0.27465E+00,-0.27450E+00,-0.27435E+00, & - &-0.27421E+00,-0.27406E+00,-0.27391E+00,-0.27376E+00,-0.27362E+00, & - &-0.27347E+00,-0.27333E+00,-0.27318E+00,-0.27304E+00,-0.27290E+00, & - &-0.27275E+00,-0.27261E+00,-0.27247E+00,-0.27233E+00,-0.27219E+00, & - &-0.27205E+00,-0.27191E+00,-0.27177E+00,-0.27163E+00,-0.27149E+00, & - &-0.27136E+00,-0.27122E+00,-0.27109E+00,-0.27095E+00,-0.27082E+00, & - &-0.27068E+00,-0.27055E+00,-0.27042E+00,-0.27028E+00,-0.27015E+00, & - &-0.27002E+00,-0.26989E+00,-0.26976E+00,-0.26963E+00,-0.26950E+00, & - &-0.26938E+00,-0.26925E+00,-0.26912E+00,-0.26900E+00,-0.26887E+00, & - &-0.26875E+00,-0.26862E+00,-0.26850E+00,-0.26837E+00,-0.26825E+00/ - - DATA (BNC06M(I),I=301,400)/ & - &-0.26813E+00,-0.26801E+00,-0.26789E+00,-0.26777E+00,-0.26765E+00, & - &-0.26753E+00,-0.26741E+00,-0.26729E+00,-0.26718E+00,-0.26706E+00, & - &-0.26694E+00,-0.26683E+00,-0.26672E+00,-0.26660E+00,-0.26649E+00, & - &-0.26638E+00,-0.26626E+00,-0.26615E+00,-0.26604E+00,-0.26593E+00, & - &-0.26582E+00,-0.26571E+00,-0.26560E+00,-0.26550E+00,-0.26539E+00, & - &-0.26528E+00,-0.26518E+00,-0.26507E+00,-0.26497E+00,-0.26486E+00, & - &-0.26476E+00,-0.26466E+00,-0.26455E+00,-0.26445E+00,-0.26435E+00, & - &-0.26425E+00,-0.26415E+00,-0.26405E+00,-0.26395E+00,-0.26385E+00, & - &-0.26376E+00,-0.26366E+00,-0.26356E+00,-0.26347E+00,-0.26337E+00, & - &-0.26328E+00,-0.26319E+00,-0.26309E+00,-0.26300E+00,-0.26291E+00, & - &-0.26282E+00,-0.26273E+00,-0.26264E+00,-0.26255E+00,-0.26246E+00, & - &-0.26237E+00,-0.26228E+00,-0.26219E+00,-0.26211E+00,-0.26202E+00, & - &-0.26194E+00,-0.26185E+00,-0.26177E+00,-0.26168E+00,-0.26160E+00, & - &-0.26152E+00,-0.26144E+00,-0.26136E+00,-0.26128E+00,-0.26120E+00, & - &-0.26112E+00,-0.26104E+00,-0.26096E+00,-0.26088E+00,-0.26081E+00, & - &-0.26073E+00,-0.26065E+00,-0.26058E+00,-0.26050E+00,-0.26043E+00, & - &-0.26036E+00,-0.26028E+00,-0.26021E+00,-0.26014E+00,-0.26007E+00, & - &-0.26000E+00,-0.25993E+00,-0.25986E+00,-0.25979E+00,-0.25972E+00, & - &-0.25965E+00,-0.25959E+00,-0.25952E+00,-0.25945E+00,-0.25939E+00, & - &-0.25932E+00,-0.25926E+00,-0.25920E+00,-0.25913E+00,-0.25907E+00/ - - DATA (BNC06M(I),I=401,500)/ & - &-0.25901E+00,-0.25895E+00,-0.25889E+00,-0.25883E+00,-0.25877E+00, & - &-0.25871E+00,-0.25865E+00,-0.25859E+00,-0.25853E+00,-0.25848E+00, & - &-0.25842E+00,-0.25837E+00,-0.25831E+00,-0.25826E+00,-0.25820E+00, & - &-0.25815E+00,-0.25810E+00,-0.25804E+00,-0.25799E+00,-0.25794E+00, & - &-0.25789E+00,-0.25784E+00,-0.25779E+00,-0.25774E+00,-0.25769E+00, & - &-0.25765E+00,-0.25760E+00,-0.25755E+00,-0.25751E+00,-0.25746E+00, & - &-0.25741E+00,-0.25737E+00,-0.25733E+00,-0.25728E+00,-0.25724E+00, & - &-0.25720E+00,-0.25715E+00,-0.25711E+00,-0.25707E+00,-0.25703E+00, & - &-0.25699E+00,-0.25695E+00,-0.25692E+00,-0.25688E+00,-0.25684E+00, & - &-0.25680E+00,-0.25677E+00,-0.25673E+00,-0.25669E+00,-0.25666E+00, & - &-0.25662E+00,-0.25659E+00,-0.25656E+00,-0.25652E+00,-0.25649E+00, & - &-0.25646E+00,-0.25643E+00,-0.25640E+00,-0.25637E+00,-0.25634E+00, & - &-0.25631E+00,-0.25628E+00,-0.25625E+00,-0.25623E+00,-0.25620E+00, & - &-0.25617E+00,-0.25615E+00,-0.25612E+00,-0.25609E+00,-0.25607E+00, & - &-0.25605E+00,-0.25602E+00,-0.25600E+00,-0.25598E+00,-0.25596E+00, & - &-0.25593E+00,-0.25591E+00,-0.25589E+00,-0.25587E+00,-0.25585E+00, & - &-0.25583E+00,-0.25582E+00,-0.25580E+00,-0.25578E+00,-0.25576E+00, & - &-0.25575E+00,-0.25573E+00,-0.25571E+00,-0.25570E+00,-0.25569E+00, & - &-0.25567E+00,-0.25566E+00,-0.25564E+00,-0.25563E+00,-0.25562E+00, & - &-0.25561E+00,-0.25560E+00,-0.25559E+00,-0.25558E+00,-0.25557E+00/ - - DATA (BNC06M(I),I=501,600)/ & - &-0.25556E+00,-0.25555E+00,-0.25554E+00,-0.25553E+00,-0.25553E+00, & - &-0.25552E+00,-0.25551E+00,-0.25551E+00,-0.25550E+00,-0.25550E+00, & - &-0.25549E+00,-0.25549E+00,-0.25549E+00,-0.25548E+00,-0.25548E+00, & - &-0.25548E+00,-0.25548E+00,-0.25548E+00,-0.25547E+00,-0.25547E+00, & - &-0.25547E+00,-0.25548E+00,-0.25548E+00,-0.25548E+00,-0.25548E+00, & - &-0.25548E+00,-0.25549E+00,-0.25549E+00,-0.25549E+00,-0.25550E+00, & - &-0.25550E+00,-0.25551E+00,-0.25551E+00,-0.25552E+00,-0.25553E+00, & - &-0.25553E+00,-0.25554E+00,-0.25555E+00,-0.25556E+00,-0.25557E+00, & - &-0.25558E+00,-0.25559E+00,-0.25560E+00,-0.25561E+00,-0.25562E+00, & - &-0.25563E+00,-0.25564E+00,-0.25566E+00,-0.25567E+00,-0.25568E+00, & - &-0.25570E+00,-0.25571E+00,-0.25573E+00,-0.25574E+00,-0.25576E+00, & - &-0.25577E+00,-0.25579E+00,-0.25581E+00,-0.25582E+00,-0.25584E+00, & - &-0.25586E+00,-0.25588E+00,-0.25590E+00,-0.25592E+00,-0.25594E+00, & - &-0.25596E+00,-0.25598E+00,-0.25600E+00,-0.25602E+00,-0.25604E+00, & - &-0.25607E+00,-0.25609E+00,-0.25611E+00,-0.25614E+00,-0.25616E+00, & - &-0.25619E+00,-0.25621E+00,-0.25624E+00,-0.25626E+00,-0.25629E+00, & - &-0.25632E+00,-0.25634E+00,-0.25637E+00,-0.25640E+00,-0.25643E+00, & - &-0.25646E+00,-0.25649E+00,-0.25651E+00,-0.25654E+00,-0.25658E+00, & - &-0.25661E+00,-0.25664E+00,-0.25667E+00,-0.25670E+00,-0.25673E+00, & - &-0.25677E+00,-0.25680E+00,-0.25683E+00,-0.25687E+00,-0.25690E+00/ - - DATA (BNC06M(I),I=601,700)/ & - &-0.25730E+00,-0.25771E+00,-0.25816E+00,-0.25865E+00,-0.25917E+00, & - &-0.25973E+00,-0.26033E+00,-0.26096E+00,-0.26163E+00,-0.26233E+00, & - &-0.26307E+00,-0.26383E+00,-0.26463E+00,-0.26547E+00,-0.26633E+00, & - &-0.26722E+00,-0.26815E+00,-0.26910E+00,-0.27009E+00,-0.27110E+00, & - &-0.27214E+00,-0.27320E+00,-0.27430E+00,-0.27542E+00,-0.27657E+00, & - &-0.27774E+00,-0.27894E+00,-0.28017E+00,-0.28142E+00,-0.28269E+00, & - &-0.28399E+00,-0.28531E+00,-0.28666E+00,-0.28803E+00,-0.28942E+00, & - &-0.29083E+00,-0.29226E+00,-0.29372E+00,-0.29520E+00,-0.29669E+00, & - &-0.29821E+00,-0.29975E+00,-0.30131E+00,-0.30289E+00,-0.30449E+00, & - &-0.30610E+00,-0.30774E+00,-0.30939E+00,-0.31107E+00,-0.31276E+00, & - &-0.31447E+00,-0.31619E+00,-0.31794E+00,-0.31970E+00,-0.32147E+00, & - &-0.32327E+00,-0.32508E+00,-0.32690E+00,-0.32875E+00,-0.33060E+00, & - &-0.33248E+00,-0.33437E+00,-0.33627E+00,-0.33819E+00,-0.34012E+00, & - &-0.34207E+00,-0.34403E+00,-0.34601E+00,-0.34800E+00,-0.35001E+00, & - &-0.35203E+00,-0.35406E+00,-0.35610E+00,-0.35816E+00,-0.36023E+00, & - &-0.36232E+00,-0.36441E+00,-0.36652E+00,-0.36864E+00,-0.37078E+00, & - &-0.37292E+00,-0.37508E+00,-0.37725E+00,-0.37943E+00,-0.38162E+00, & - &-0.38383E+00,-0.38604E+00,-0.38827E+00,-0.39051E+00,-0.39275E+00, & - &-0.39501E+00,-0.39728E+00,-0.39956E+00,-0.40185E+00,-0.40415E+00, & - &-0.40646E+00,-0.40879E+00,-0.41112E+00,-0.41346E+00,-0.41581E+00/ - - DATA (BNC06M(I),I=701,741)/ & - &-0.41817E+00,-0.42054E+00,-0.42292E+00,-0.42530E+00,-0.42770E+00, & - &-0.43011E+00,-0.43252E+00,-0.43495E+00,-0.43738E+00,-0.43982E+00, & - &-0.44227E+00,-0.44473E+00,-0.44720E+00,-0.44967E+00,-0.45216E+00, & - &-0.45465E+00,-0.45715E+00,-0.45966E+00,-0.46218E+00,-0.46470E+00, & - &-0.46723E+00,-0.46977E+00,-0.47232E+00,-0.47487E+00,-0.47744E+00, & - &-0.48001E+00,-0.48258E+00,-0.48517E+00,-0.48776E+00,-0.49036E+00, & - &-0.49296E+00,-0.49558E+00,-0.49820E+00,-0.50082E+00,-0.50346E+00, & - &-0.50610E+00,-0.50874E+00,-0.51140E+00,-0.51406E+00,-0.51672E+00, & - &-0.51940E+00 & - & / -! -! *** (2H,SO4) -! - DATA (BNC07M(I),I=1,100)/ & - &-0.10030E+00,-0.21886E+00,-0.27851E+00,-0.32089E+00,-0.35431E+00, & - &-0.38211E+00,-0.40602E+00,-0.42706E+00,-0.44588E+00,-0.46295E+00, & - &-0.47857E+00,-0.49300E+00,-0.50642E+00,-0.51897E+00,-0.53076E+00, & - &-0.54189E+00,-0.55244E+00,-0.56247E+00,-0.57203E+00,-0.58117E+00, & - &-0.58993E+00,-0.59834E+00,-0.60644E+00,-0.61425E+00,-0.62178E+00, & - &-0.62907E+00,-0.63613E+00,-0.64298E+00,-0.64962E+00,-0.65608E+00, & - &-0.66236E+00,-0.66848E+00,-0.67445E+00,-0.68027E+00,-0.68595E+00, & - &-0.69151E+00,-0.69694E+00,-0.70225E+00,-0.70745E+00,-0.71255E+00, & - &-0.71755E+00,-0.72245E+00,-0.72726E+00,-0.73198E+00,-0.73662E+00, & - &-0.74117E+00,-0.74566E+00,-0.75006E+00,-0.75440E+00,-0.75867E+00, & - &-0.76287E+00,-0.76702E+00,-0.77110E+00,-0.77512E+00,-0.77909E+00, & - &-0.78300E+00,-0.78686E+00,-0.79067E+00,-0.79443E+00,-0.79815E+00, & - &-0.80182E+00,-0.80545E+00,-0.80903E+00,-0.81257E+00,-0.81608E+00, & - &-0.81954E+00,-0.82297E+00,-0.82637E+00,-0.82972E+00,-0.83305E+00, & - &-0.83634E+00,-0.83960E+00,-0.84283E+00,-0.84603E+00,-0.84920E+00, & - &-0.85234E+00,-0.85546E+00,-0.85855E+00,-0.86161E+00,-0.86465E+00, & - &-0.86767E+00,-0.87066E+00,-0.87362E+00,-0.87657E+00,-0.87949E+00, & - &-0.88240E+00,-0.88528E+00,-0.88814E+00,-0.89099E+00,-0.89381E+00, & - &-0.89661E+00,-0.89940E+00,-0.90217E+00,-0.90492E+00,-0.90766E+00, & - &-0.91037E+00,-0.91308E+00,-0.91576E+00,-0.91843E+00,-0.92109E+00/ - - DATA (BNC07M(I),I=101,200)/ & - &-0.92372E+00,-0.92635E+00,-0.92896E+00,-0.93155E+00,-0.93414E+00, & - &-0.93670E+00,-0.93926E+00,-0.94180E+00,-0.94433E+00,-0.94684E+00, & - &-0.94935E+00,-0.95184E+00,-0.95431E+00,-0.95678E+00,-0.95923E+00, & - &-0.96168E+00,-0.96411E+00,-0.96653E+00,-0.96893E+00,-0.97133E+00, & - &-0.97372E+00,-0.97609E+00,-0.97845E+00,-0.98081E+00,-0.98315E+00, & - &-0.98549E+00,-0.98781E+00,-0.99012E+00,-0.99243E+00,-0.99472E+00, & - &-0.99700E+00,-0.99928E+00,-0.10015E+01,-0.10038E+01,-0.10060E+01, & - &-0.10083E+01,-0.10105E+01,-0.10127E+01,-0.10150E+01,-0.10172E+01, & - &-0.10194E+01,-0.10215E+01,-0.10237E+01,-0.10259E+01,-0.10281E+01, & - &-0.10302E+01,-0.10324E+01,-0.10345E+01,-0.10366E+01,-0.10388E+01, & - &-0.10409E+01,-0.10430E+01,-0.10451E+01,-0.10472E+01,-0.10493E+01, & - &-0.10514E+01,-0.10534E+01,-0.10555E+01,-0.10576E+01,-0.10596E+01, & - &-0.10617E+01,-0.10637E+01,-0.10658E+01,-0.10678E+01,-0.10698E+01, & - &-0.10718E+01,-0.10738E+01,-0.10759E+01,-0.10779E+01,-0.10798E+01, & - &-0.10818E+01,-0.10838E+01,-0.10858E+01,-0.10878E+01,-0.10897E+01, & - &-0.10917E+01,-0.10937E+01,-0.10956E+01,-0.10976E+01,-0.10995E+01, & - &-0.11014E+01,-0.11034E+01,-0.11053E+01,-0.11072E+01,-0.11091E+01, & - &-0.11110E+01,-0.11129E+01,-0.11148E+01,-0.11167E+01,-0.11186E+01, & - &-0.11205E+01,-0.11224E+01,-0.11243E+01,-0.11261E+01,-0.11280E+01, & - &-0.11299E+01,-0.11317E+01,-0.11336E+01,-0.11354E+01,-0.11373E+01/ - - DATA (BNC07M(I),I=201,300)/ & - &-0.11391E+01,-0.11410E+01,-0.11428E+01,-0.11446E+01,-0.11465E+01, & - &-0.11483E+01,-0.11501E+01,-0.11519E+01,-0.11537E+01,-0.11555E+01, & - &-0.11573E+01,-0.11591E+01,-0.11609E+01,-0.11627E+01,-0.11645E+01, & - &-0.11663E+01,-0.11681E+01,-0.11699E+01,-0.11716E+01,-0.11734E+01, & - &-0.11752E+01,-0.11769E+01,-0.11787E+01,-0.11804E+01,-0.11822E+01, & - &-0.11840E+01,-0.11857E+01,-0.11874E+01,-0.11892E+01,-0.11909E+01, & - &-0.11926E+01,-0.11944E+01,-0.11961E+01,-0.11978E+01,-0.11996E+01, & - &-0.12013E+01,-0.12030E+01,-0.12047E+01,-0.12064E+01,-0.12081E+01, & - &-0.12098E+01,-0.12115E+01,-0.12132E+01,-0.12149E+01,-0.12166E+01, & - &-0.12183E+01,-0.12200E+01,-0.12216E+01,-0.12233E+01,-0.12250E+01, & - &-0.12267E+01,-0.12283E+01,-0.12300E+01,-0.12317E+01,-0.12333E+01, & - &-0.12350E+01,-0.12367E+01,-0.12383E+01,-0.12400E+01,-0.12416E+01, & - &-0.12433E+01,-0.12449E+01,-0.12466E+01,-0.12482E+01,-0.12498E+01, & - &-0.12515E+01,-0.12531E+01,-0.12547E+01,-0.12564E+01,-0.12580E+01, & - &-0.12596E+01,-0.12612E+01,-0.12628E+01,-0.12645E+01,-0.12661E+01, & - &-0.12677E+01,-0.12693E+01,-0.12709E+01,-0.12725E+01,-0.12741E+01, & - &-0.12757E+01,-0.12773E+01,-0.12789E+01,-0.12805E+01,-0.12821E+01, & - &-0.12837E+01,-0.12853E+01,-0.12869E+01,-0.12884E+01,-0.12900E+01, & - &-0.12916E+01,-0.12932E+01,-0.12947E+01,-0.12963E+01,-0.12979E+01, & - &-0.12995E+01,-0.13010E+01,-0.13026E+01,-0.13042E+01,-0.13057E+01/ - - DATA (BNC07M(I),I=301,400)/ & - &-0.13073E+01,-0.13088E+01,-0.13104E+01,-0.13119E+01,-0.13135E+01, & - &-0.13150E+01,-0.13166E+01,-0.13181E+01,-0.13197E+01,-0.13212E+01, & - &-0.13228E+01,-0.13243E+01,-0.13258E+01,-0.13274E+01,-0.13289E+01, & - &-0.13304E+01,-0.13320E+01,-0.13335E+01,-0.13350E+01,-0.13365E+01, & - &-0.13381E+01,-0.13396E+01,-0.13411E+01,-0.13426E+01,-0.13441E+01, & - &-0.13456E+01,-0.13472E+01,-0.13487E+01,-0.13502E+01,-0.13517E+01, & - &-0.13532E+01,-0.13547E+01,-0.13562E+01,-0.13577E+01,-0.13592E+01, & - &-0.13607E+01,-0.13622E+01,-0.13637E+01,-0.13652E+01,-0.13667E+01, & - &-0.13682E+01,-0.13696E+01,-0.13711E+01,-0.13726E+01,-0.13741E+01, & - &-0.13756E+01,-0.13771E+01,-0.13785E+01,-0.13800E+01,-0.13815E+01, & - &-0.13830E+01,-0.13844E+01,-0.13859E+01,-0.13874E+01,-0.13888E+01, & - &-0.13903E+01,-0.13918E+01,-0.13932E+01,-0.13947E+01,-0.13962E+01, & - &-0.13976E+01,-0.13991E+01,-0.14005E+01,-0.14020E+01,-0.14035E+01, & - &-0.14049E+01,-0.14064E+01,-0.14078E+01,-0.14093E+01,-0.14107E+01, & - &-0.14122E+01,-0.14136E+01,-0.14151E+01,-0.14165E+01,-0.14179E+01, & - &-0.14194E+01,-0.14208E+01,-0.14223E+01,-0.14237E+01,-0.14251E+01, & - &-0.14266E+01,-0.14280E+01,-0.14294E+01,-0.14309E+01,-0.14323E+01, & - &-0.14337E+01,-0.14351E+01,-0.14366E+01,-0.14380E+01,-0.14394E+01, & - &-0.14408E+01,-0.14423E+01,-0.14437E+01,-0.14451E+01,-0.14465E+01, & - &-0.14479E+01,-0.14493E+01,-0.14508E+01,-0.14522E+01,-0.14536E+01/ - - DATA (BNC07M(I),I=401,500)/ & - &-0.14550E+01,-0.14564E+01,-0.14578E+01,-0.14592E+01,-0.14606E+01, & - &-0.14620E+01,-0.14634E+01,-0.14648E+01,-0.14662E+01,-0.14676E+01, & - &-0.14690E+01,-0.14704E+01,-0.14718E+01,-0.14732E+01,-0.14746E+01, & - &-0.14760E+01,-0.14774E+01,-0.14788E+01,-0.14802E+01,-0.14816E+01, & - &-0.14830E+01,-0.14844E+01,-0.14857E+01,-0.14871E+01,-0.14885E+01, & - &-0.14899E+01,-0.14913E+01,-0.14927E+01,-0.14940E+01,-0.14954E+01, & - &-0.14968E+01,-0.14982E+01,-0.14995E+01,-0.15009E+01,-0.15023E+01, & - &-0.15037E+01,-0.15050E+01,-0.15064E+01,-0.15078E+01,-0.15092E+01, & - &-0.15105E+01,-0.15119E+01,-0.15133E+01,-0.15146E+01,-0.15160E+01, & - &-0.15174E+01,-0.15187E+01,-0.15201E+01,-0.15214E+01,-0.15228E+01, & - &-0.15242E+01,-0.15255E+01,-0.15269E+01,-0.15282E+01,-0.15296E+01, & - &-0.15309E+01,-0.15323E+01,-0.15336E+01,-0.15350E+01,-0.15364E+01, & - &-0.15377E+01,-0.15391E+01,-0.15404E+01,-0.15417E+01,-0.15431E+01, & - &-0.15444E+01,-0.15458E+01,-0.15471E+01,-0.15485E+01,-0.15498E+01, & - &-0.15512E+01,-0.15525E+01,-0.15538E+01,-0.15552E+01,-0.15565E+01, & - &-0.15579E+01,-0.15592E+01,-0.15605E+01,-0.15619E+01,-0.15632E+01, & - &-0.15645E+01,-0.15659E+01,-0.15672E+01,-0.15685E+01,-0.15699E+01, & - &-0.15712E+01,-0.15725E+01,-0.15738E+01,-0.15752E+01,-0.15765E+01, & - &-0.15778E+01,-0.15791E+01,-0.15805E+01,-0.15818E+01,-0.15831E+01, & - &-0.15844E+01,-0.15858E+01,-0.15871E+01,-0.15884E+01,-0.15897E+01/ - - DATA (BNC07M(I),I=501,600)/ & - &-0.15910E+01,-0.15923E+01,-0.15937E+01,-0.15950E+01,-0.15963E+01, & - &-0.15976E+01,-0.15989E+01,-0.16002E+01,-0.16015E+01,-0.16029E+01, & - &-0.16042E+01,-0.16055E+01,-0.16068E+01,-0.16081E+01,-0.16094E+01, & - &-0.16107E+01,-0.16120E+01,-0.16133E+01,-0.16146E+01,-0.16159E+01, & - &-0.16172E+01,-0.16185E+01,-0.16198E+01,-0.16211E+01,-0.16224E+01, & - &-0.16237E+01,-0.16250E+01,-0.16263E+01,-0.16276E+01,-0.16289E+01, & - &-0.16302E+01,-0.16315E+01,-0.16328E+01,-0.16341E+01,-0.16354E+01, & - &-0.16367E+01,-0.16380E+01,-0.16393E+01,-0.16406E+01,-0.16418E+01, & - &-0.16431E+01,-0.16444E+01,-0.16457E+01,-0.16470E+01,-0.16483E+01, & - &-0.16496E+01,-0.16509E+01,-0.16521E+01,-0.16534E+01,-0.16547E+01, & - &-0.16560E+01,-0.16573E+01,-0.16586E+01,-0.16598E+01,-0.16611E+01, & - &-0.16624E+01,-0.16637E+01,-0.16650E+01,-0.16662E+01,-0.16675E+01, & - &-0.16688E+01,-0.16701E+01,-0.16713E+01,-0.16726E+01,-0.16739E+01, & - &-0.16752E+01,-0.16764E+01,-0.16777E+01,-0.16790E+01,-0.16803E+01, & - &-0.16815E+01,-0.16828E+01,-0.16841E+01,-0.16853E+01,-0.16866E+01, & - &-0.16879E+01,-0.16891E+01,-0.16904E+01,-0.16917E+01,-0.16929E+01, & - &-0.16942E+01,-0.16955E+01,-0.16967E+01,-0.16980E+01,-0.16992E+01, & - &-0.17005E+01,-0.17018E+01,-0.17030E+01,-0.17043E+01,-0.17056E+01, & - &-0.17068E+01,-0.17081E+01,-0.17093E+01,-0.17106E+01,-0.17118E+01, & - &-0.17131E+01,-0.17144E+01,-0.17156E+01,-0.17169E+01,-0.17181E+01/ - - DATA (BNC07M(I),I=601,700)/ & - &-0.17316E+01,-0.17441E+01,-0.17565E+01,-0.17688E+01,-0.17811E+01, & - &-0.17934E+01,-0.18056E+01,-0.18178E+01,-0.18299E+01,-0.18420E+01, & - &-0.18540E+01,-0.18660E+01,-0.18780E+01,-0.18899E+01,-0.19018E+01, & - &-0.19136E+01,-0.19254E+01,-0.19372E+01,-0.19489E+01,-0.19607E+01, & - &-0.19723E+01,-0.19840E+01,-0.19956E+01,-0.20072E+01,-0.20187E+01, & - &-0.20302E+01,-0.20417E+01,-0.20532E+01,-0.20646E+01,-0.20760E+01, & - &-0.20874E+01,-0.20988E+01,-0.21101E+01,-0.21214E+01,-0.21327E+01, & - &-0.21440E+01,-0.21552E+01,-0.21664E+01,-0.21776E+01,-0.21888E+01, & - &-0.21999E+01,-0.22110E+01,-0.22221E+01,-0.22332E+01,-0.22443E+01, & - &-0.22553E+01,-0.22663E+01,-0.22773E+01,-0.22883E+01,-0.22992E+01, & - &-0.23102E+01,-0.23211E+01,-0.23320E+01,-0.23429E+01,-0.23537E+01, & - &-0.23646E+01,-0.23754E+01,-0.23862E+01,-0.23970E+01,-0.24078E+01, & - &-0.24186E+01,-0.24293E+01,-0.24401E+01,-0.24508E+01,-0.24615E+01, & - &-0.24722E+01,-0.24828E+01,-0.24935E+01,-0.25041E+01,-0.25148E+01, & - &-0.25254E+01,-0.25360E+01,-0.25466E+01,-0.25571E+01,-0.25677E+01, & - &-0.25782E+01,-0.25888E+01,-0.25993E+01,-0.26098E+01,-0.26203E+01, & - &-0.26308E+01,-0.26412E+01,-0.26517E+01,-0.26621E+01,-0.26726E+01, & - &-0.26830E+01,-0.26934E+01,-0.27038E+01,-0.27142E+01,-0.27245E+01, & - &-0.27349E+01,-0.27453E+01,-0.27556E+01,-0.27659E+01,-0.27762E+01, & - &-0.27866E+01,-0.27968E+01,-0.28071E+01,-0.28174E+01,-0.28277E+01/ - - DATA (BNC07M(I),I=701,741)/ & - &-0.28379E+01,-0.28482E+01,-0.28584E+01,-0.28686E+01,-0.28788E+01, & - &-0.28891E+01,-0.28992E+01,-0.29094E+01,-0.29196E+01,-0.29298E+01, & - &-0.29399E+01,-0.29501E+01,-0.29602E+01,-0.29704E+01,-0.29805E+01, & - &-0.29906E+01,-0.30007E+01,-0.30108E+01,-0.30209E+01,-0.30310E+01, & - &-0.30410E+01,-0.30511E+01,-0.30612E+01,-0.30712E+01,-0.30812E+01, & - &-0.30913E+01,-0.31013E+01,-0.31113E+01,-0.31213E+01,-0.31313E+01, & - &-0.31413E+01,-0.31513E+01,-0.31613E+01,-0.31712E+01,-0.31812E+01, & - &-0.31911E+01,-0.32011E+01,-0.32110E+01,-0.32210E+01,-0.32309E+01, & - &-0.32408E+01 & - & / -! -! *** (H,HSO4) -! - DATA (BNC08M(I),I=1,100)/ & - &-0.46515E-01,-0.91308E-01,-0.10881E+00,-0.11870E+00,-0.12469E+00, & - &-0.12827E+00,-0.13017E+00,-0.13082E+00,-0.13049E+00,-0.12935E+00, & - &-0.12755E+00,-0.12518E+00,-0.12230E+00,-0.11897E+00,-0.11525E+00, & - &-0.11116E+00,-0.10674E+00,-0.10201E+00,-0.96987E-01,-0.91699E-01, & - &-0.86157E-01,-0.80377E-01,-0.74371E-01,-0.68150E-01,-0.61725E-01, & - &-0.55105E-01,-0.48299E-01,-0.41316E-01,-0.34162E-01,-0.26845E-01, & - &-0.19373E-01,-0.11750E-01,-0.39845E-02, 0.39191E-02, 0.11955E-01, & - & 0.20117E-01, 0.28401E-01, 0.36802E-01, 0.45314E-01, 0.53933E-01, & - & 0.62655E-01, 0.71475E-01, 0.80389E-01, 0.89394E-01, 0.98485E-01, & - & 0.10766E+00, 0.11691E+00, 0.12624E+00, 0.13564E+00, 0.14512E+00, & - & 0.15465E+00, 0.16426E+00, 0.17392E+00, 0.18365E+00, 0.19344E+00, & - & 0.20328E+00, 0.21317E+00, 0.22312E+00, 0.23312E+00, 0.24317E+00, & - & 0.25327E+00, 0.26342E+00, 0.27361E+00, 0.28386E+00, 0.29415E+00, & - & 0.30449E+00, 0.31488E+00, 0.32532E+00, 0.33580E+00, 0.34633E+00, & - & 0.35692E+00, 0.36755E+00, 0.37823E+00, 0.38897E+00, 0.39976E+00, & - & 0.41060E+00, 0.42149E+00, 0.43244E+00, 0.44344E+00, 0.45450E+00, & - & 0.46562E+00, 0.47680E+00, 0.48803E+00, 0.49932E+00, 0.51068E+00, & - & 0.52209E+00, 0.53356E+00, 0.54509E+00, 0.55667E+00, 0.56832E+00, & - & 0.58003E+00, 0.59179E+00, 0.60361E+00, 0.61548E+00, 0.62741E+00, & - & 0.63940E+00, 0.65143E+00, 0.66352E+00, 0.67565E+00, 0.68783E+00/ - - DATA (BNC08M(I),I=101,200)/ & - & 0.70006E+00, 0.71232E+00, 0.72463E+00, 0.73698E+00, 0.74937E+00, & - & 0.76178E+00, 0.77424E+00, 0.78672E+00, 0.79922E+00, 0.81176E+00, & - & 0.82431E+00, 0.83689E+00, 0.84948E+00, 0.86209E+00, 0.87472E+00, & - & 0.88735E+00, 0.90000E+00, 0.91265E+00, 0.92531E+00, 0.93797E+00, & - & 0.95064E+00, 0.96330E+00, 0.97596E+00, 0.98862E+00, 0.10013E+01, & - & 0.10139E+01, 0.10266E+01, 0.10392E+01, 0.10518E+01, 0.10644E+01, & - & 0.10770E+01, 0.10896E+01, 0.11022E+01, 0.11148E+01, 0.11273E+01, & - & 0.11398E+01, 0.11524E+01, 0.11648E+01, 0.11773E+01, 0.11898E+01, & - & 0.12022E+01, 0.12146E+01, 0.12270E+01, 0.12394E+01, 0.12518E+01, & - & 0.12641E+01, 0.12764E+01, 0.12887E+01, 0.13010E+01, 0.13132E+01, & - & 0.13254E+01, 0.13376E+01, 0.13498E+01, 0.13620E+01, 0.13741E+01, & - & 0.13862E+01, 0.13983E+01, 0.14103E+01, 0.14224E+01, 0.14344E+01, & - & 0.14464E+01, 0.14583E+01, 0.14703E+01, 0.14822E+01, 0.14941E+01, & - & 0.15059E+01, 0.15178E+01, 0.15296E+01, 0.15414E+01, 0.15531E+01, & - & 0.15649E+01, 0.15766E+01, 0.15883E+01, 0.15999E+01, 0.16116E+01, & - & 0.16232E+01, 0.16348E+01, 0.16463E+01, 0.16579E+01, 0.16694E+01, & - & 0.16809E+01, 0.16923E+01, 0.17038E+01, 0.17152E+01, 0.17266E+01, & - & 0.17379E+01, 0.17493E+01, 0.17606E+01, 0.17719E+01, 0.17831E+01, & - & 0.17943E+01, 0.18056E+01, 0.18167E+01, 0.18279E+01, 0.18390E+01, & - & 0.18501E+01, 0.18612E+01, 0.18723E+01, 0.18833E+01, 0.18943E+01/ - - DATA (BNC08M(I),I=201,300)/ & - & 0.19053E+01, 0.19163E+01, 0.19272E+01, 0.19381E+01, 0.19490E+01, & - & 0.19599E+01, 0.19707E+01, 0.19815E+01, 0.19923E+01, 0.20031E+01, & - & 0.20138E+01, 0.20246E+01, 0.20353E+01, 0.20459E+01, 0.20566E+01, & - & 0.20672E+01, 0.20778E+01, 0.20884E+01, 0.20989E+01, 0.21095E+01, & - & 0.21200E+01, 0.21304E+01, 0.21409E+01, 0.21513E+01, 0.21617E+01, & - & 0.21721E+01, 0.21825E+01, 0.21928E+01, 0.22032E+01, 0.22134E+01, & - & 0.22237E+01, 0.22340E+01, 0.22442E+01, 0.22544E+01, 0.22646E+01, & - & 0.22747E+01, 0.22849E+01, 0.22950E+01, 0.23051E+01, 0.23152E+01, & - & 0.23252E+01, 0.23352E+01, 0.23452E+01, 0.23552E+01, 0.23652E+01, & - & 0.23751E+01, 0.23850E+01, 0.23949E+01, 0.24048E+01, 0.24147E+01, & - & 0.24245E+01, 0.24343E+01, 0.24441E+01, 0.24539E+01, 0.24636E+01, & - & 0.24733E+01, 0.24830E+01, 0.24927E+01, 0.25024E+01, 0.25120E+01, & - & 0.25216E+01, 0.25312E+01, 0.25408E+01, 0.25504E+01, 0.25599E+01, & - & 0.25694E+01, 0.25789E+01, 0.25884E+01, 0.25979E+01, 0.26073E+01, & - & 0.26167E+01, 0.26261E+01, 0.26355E+01, 0.26448E+01, 0.26542E+01, & - & 0.26635E+01, 0.26728E+01, 0.26821E+01, 0.26913E+01, 0.27006E+01, & - & 0.27098E+01, 0.27190E+01, 0.27282E+01, 0.27373E+01, 0.27465E+01, & - & 0.27556E+01, 0.27647E+01, 0.27738E+01, 0.27829E+01, 0.27919E+01, & - & 0.28009E+01, 0.28100E+01, 0.28190E+01, 0.28279E+01, 0.28369E+01, & - & 0.28458E+01, 0.28547E+01, 0.28636E+01, 0.28725E+01, 0.28814E+01/ - - DATA (BNC08M(I),I=301,400)/ & - & 0.28902E+01, 0.28991E+01, 0.29079E+01, 0.29167E+01, 0.29255E+01, & - & 0.29342E+01, 0.29430E+01, 0.29517E+01, 0.29604E+01, 0.29691E+01, & - & 0.29778E+01, 0.29864E+01, 0.29950E+01, 0.30037E+01, 0.30123E+01, & - & 0.30209E+01, 0.30294E+01, 0.30380E+01, 0.30465E+01, 0.30550E+01, & - & 0.30635E+01, 0.30720E+01, 0.30805E+01, 0.30889E+01, 0.30974E+01, & - & 0.31058E+01, 0.31142E+01, 0.31226E+01, 0.31309E+01, 0.31393E+01, & - & 0.31476E+01, 0.31559E+01, 0.31643E+01, 0.31725E+01, 0.31808E+01, & - & 0.31891E+01, 0.31973E+01, 0.32055E+01, 0.32137E+01, 0.32219E+01, & - & 0.32301E+01, 0.32383E+01, 0.32464E+01, 0.32546E+01, 0.32627E+01, & - & 0.32708E+01, 0.32789E+01, 0.32869E+01, 0.32950E+01, 0.33030E+01, & - & 0.33110E+01, 0.33191E+01, 0.33270E+01, 0.33350E+01, 0.33430E+01, & - & 0.33509E+01, 0.33589E+01, 0.33668E+01, 0.33747E+01, 0.33826E+01, & - & 0.33905E+01, 0.33983E+01, 0.34062E+01, 0.34140E+01, 0.34218E+01, & - & 0.34296E+01, 0.34374E+01, 0.34452E+01, 0.34530E+01, 0.34607E+01, & - & 0.34684E+01, 0.34762E+01, 0.34839E+01, 0.34915E+01, 0.34992E+01, & - & 0.35069E+01, 0.35145E+01, 0.35222E+01, 0.35298E+01, 0.35374E+01, & - & 0.35450E+01, 0.35526E+01, 0.35601E+01, 0.35677E+01, 0.35752E+01, & - & 0.35828E+01, 0.35903E+01, 0.35978E+01, 0.36053E+01, 0.36127E+01, & - & 0.36202E+01, 0.36276E+01, 0.36351E+01, 0.36425E+01, 0.36499E+01, & - & 0.36573E+01, 0.36647E+01, 0.36720E+01, 0.36794E+01, 0.36867E+01/ - - DATA (BNC08M(I),I=401,500)/ & - & 0.36941E+01, 0.37014E+01, 0.37087E+01, 0.37160E+01, 0.37233E+01, & - & 0.37305E+01, 0.37378E+01, 0.37450E+01, 0.37523E+01, 0.37595E+01, & - & 0.37667E+01, 0.37739E+01, 0.37811E+01, 0.37882E+01, 0.37954E+01, & - & 0.38025E+01, 0.38096E+01, 0.38168E+01, 0.38239E+01, 0.38310E+01, & - & 0.38380E+01, 0.38451E+01, 0.38522E+01, 0.38592E+01, 0.38663E+01, & - & 0.38733E+01, 0.38803E+01, 0.38873E+01, 0.38943E+01, 0.39013E+01, & - & 0.39082E+01, 0.39152E+01, 0.39221E+01, 0.39290E+01, 0.39360E+01, & - & 0.39429E+01, 0.39498E+01, 0.39566E+01, 0.39635E+01, 0.39704E+01, & - & 0.39772E+01, 0.39841E+01, 0.39909E+01, 0.39977E+01, 0.40045E+01, & - & 0.40113E+01, 0.40181E+01, 0.40249E+01, 0.40316E+01, 0.40384E+01, & - & 0.40451E+01, 0.40518E+01, 0.40586E+01, 0.40653E+01, 0.40720E+01, & - & 0.40786E+01, 0.40853E+01, 0.40920E+01, 0.40986E+01, 0.41053E+01, & - & 0.41119E+01, 0.41185E+01, 0.41251E+01, 0.41317E+01, 0.41383E+01, & - & 0.41449E+01, 0.41515E+01, 0.41580E+01, 0.41646E+01, 0.41711E+01, & - & 0.41776E+01, 0.41842E+01, 0.41907E+01, 0.41972E+01, 0.42036E+01, & - & 0.42101E+01, 0.42166E+01, 0.42230E+01, 0.42295E+01, 0.42359E+01, & - & 0.42423E+01, 0.42488E+01, 0.42552E+01, 0.42616E+01, 0.42679E+01, & - & 0.42743E+01, 0.42807E+01, 0.42870E+01, 0.42934E+01, 0.42997E+01, & - & 0.43060E+01, 0.43124E+01, 0.43187E+01, 0.43250E+01, 0.43313E+01, & - & 0.43375E+01, 0.43438E+01, 0.43501E+01, 0.43563E+01, 0.43625E+01/ - - DATA (BNC08M(I),I=501,600)/ & - & 0.43688E+01, 0.43750E+01, 0.43812E+01, 0.43874E+01, 0.43936E+01, & - & 0.43998E+01, 0.44060E+01, 0.44121E+01, 0.44183E+01, 0.44244E+01, & - & 0.44306E+01, 0.44367E+01, 0.44428E+01, 0.44489E+01, 0.44550E+01, & - & 0.44611E+01, 0.44672E+01, 0.44733E+01, 0.44793E+01, 0.44854E+01, & - & 0.44914E+01, 0.44975E+01, 0.45035E+01, 0.45095E+01, 0.45155E+01, & - & 0.45215E+01, 0.45275E+01, 0.45335E+01, 0.45395E+01, 0.45454E+01, & - & 0.45514E+01, 0.45574E+01, 0.45633E+01, 0.45692E+01, 0.45752E+01, & - & 0.45811E+01, 0.45870E+01, 0.45929E+01, 0.45988E+01, 0.46046E+01, & - & 0.46105E+01, 0.46164E+01, 0.46222E+01, 0.46281E+01, 0.46339E+01, & - & 0.46397E+01, 0.46456E+01, 0.46514E+01, 0.46572E+01, 0.46630E+01, & - & 0.46688E+01, 0.46745E+01, 0.46803E+01, 0.46861E+01, 0.46918E+01, & - & 0.46976E+01, 0.47033E+01, 0.47091E+01, 0.47148E+01, 0.47205E+01, & - & 0.47262E+01, 0.47319E+01, 0.47376E+01, 0.47433E+01, 0.47490E+01, & - & 0.47546E+01, 0.47603E+01, 0.47659E+01, 0.47716E+01, 0.47772E+01, & - & 0.47828E+01, 0.47885E+01, 0.47941E+01, 0.47997E+01, 0.48053E+01, & - & 0.48109E+01, 0.48164E+01, 0.48220E+01, 0.48276E+01, 0.48331E+01, & - & 0.48387E+01, 0.48442E+01, 0.48498E+01, 0.48553E+01, 0.48608E+01, & - & 0.48663E+01, 0.48718E+01, 0.48773E+01, 0.48828E+01, 0.48883E+01, & - & 0.48938E+01, 0.48992E+01, 0.49047E+01, 0.49101E+01, 0.49156E+01, & - & 0.49210E+01, 0.49265E+01, 0.49319E+01, 0.49373E+01, 0.49427E+01/ - - DATA (BNC08M(I),I=601,700)/ & - & 0.50007E+01, 0.50536E+01, 0.51058E+01, 0.51574E+01, 0.52083E+01, & - & 0.52585E+01, 0.53082E+01, 0.53572E+01, 0.54056E+01, 0.54534E+01, & - & 0.55007E+01, 0.55473E+01, 0.55935E+01, 0.56391E+01, 0.56841E+01, & - & 0.57287E+01, 0.57727E+01, 0.58163E+01, 0.58594E+01, 0.59020E+01, & - & 0.59441E+01, 0.59858E+01, 0.60270E+01, 0.60678E+01, 0.61081E+01, & - & 0.61481E+01, 0.61876E+01, 0.62267E+01, 0.62654E+01, 0.63037E+01, & - & 0.63416E+01, 0.63792E+01, 0.64164E+01, 0.64532E+01, 0.64897E+01, & - & 0.65258E+01, 0.65615E+01, 0.65969E+01, 0.66320E+01, 0.66668E+01, & - & 0.67012E+01, 0.67353E+01, 0.67691E+01, 0.68026E+01, 0.68358E+01, & - & 0.68687E+01, 0.69013E+01, 0.69336E+01, 0.69656E+01, 0.69974E+01, & - & 0.70288E+01, 0.70600E+01, 0.70910E+01, 0.71216E+01, 0.71520E+01, & - & 0.71822E+01, 0.72121E+01, 0.72417E+01, 0.72711E+01, 0.73003E+01, & - & 0.73292E+01, 0.73579E+01, 0.73864E+01, 0.74146E+01, 0.74426E+01, & - & 0.74704E+01, 0.74980E+01, 0.75253E+01, 0.75524E+01, 0.75794E+01, & - & 0.76061E+01, 0.76326E+01, 0.76589E+01, 0.76850E+01, 0.77110E+01, & - & 0.77367E+01, 0.77622E+01, 0.77876E+01, 0.78127E+01, 0.78377E+01, & - & 0.78625E+01, 0.78871E+01, 0.79115E+01, 0.79358E+01, 0.79599E+01, & - & 0.79838E+01, 0.80075E+01, 0.80311E+01, 0.80545E+01, 0.80778E+01, & - & 0.81009E+01, 0.81238E+01, 0.81466E+01, 0.81692E+01, 0.81916E+01, & - & 0.82140E+01, 0.82361E+01, 0.82581E+01, 0.82800E+01, 0.83017E+01/ - - DATA (BNC08M(I),I=701,741)/ & - & 0.83233E+01, 0.83447E+01, 0.83660E+01, 0.83872E+01, 0.84082E+01, & - & 0.84291E+01, 0.84498E+01, 0.84704E+01, 0.84909E+01, 0.85113E+01, & - & 0.85315E+01, 0.85516E+01, 0.85715E+01, 0.85914E+01, 0.86111E+01, & - & 0.86307E+01, 0.86502E+01, 0.86695E+01, 0.86888E+01, 0.87079E+01, & - & 0.87269E+01, 0.87458E+01, 0.87645E+01, 0.87832E+01, 0.88018E+01, & - & 0.88202E+01, 0.88385E+01, 0.88567E+01, 0.88749E+01, 0.88929E+01, & - & 0.89108E+01, 0.89286E+01, 0.89463E+01, 0.89638E+01, 0.89813E+01, & - & 0.89987E+01, 0.90160E+01, 0.90332E+01, 0.90503E+01, 0.90673E+01, & - & 0.90842E+01 & - & / -! -! *** NH4HSO4 -! - DATA (BNC09M(I),I=1,100)/ & - &-0.49064E-01,-0.10428E+00,-0.13083E+00,-0.14911E+00,-0.16312E+00, & - &-0.17446E+00,-0.18395E+00,-0.19207E+00,-0.19912E+00,-0.20532E+00, & - &-0.21080E+00,-0.21569E+00,-0.22007E+00,-0.22399E+00,-0.22752E+00, & - &-0.23070E+00,-0.23356E+00,-0.23612E+00,-0.23842E+00,-0.24047E+00, & - &-0.24229E+00,-0.24389E+00,-0.24530E+00,-0.24652E+00,-0.24756E+00, & - &-0.24843E+00,-0.24914E+00,-0.24969E+00,-0.25010E+00,-0.25037E+00, & - &-0.25051E+00,-0.25052E+00,-0.25040E+00,-0.25017E+00,-0.24982E+00, & - &-0.24936E+00,-0.24880E+00,-0.24813E+00,-0.24737E+00,-0.24651E+00, & - &-0.24556E+00,-0.24452E+00,-0.24339E+00,-0.24219E+00,-0.24090E+00, & - &-0.23954E+00,-0.23810E+00,-0.23659E+00,-0.23501E+00,-0.23337E+00, & - &-0.23166E+00,-0.22988E+00,-0.22805E+00,-0.22616E+00,-0.22421E+00, & - &-0.22220E+00,-0.22015E+00,-0.21804E+00,-0.21588E+00,-0.21368E+00, & - &-0.21142E+00,-0.20912E+00,-0.20678E+00,-0.20439E+00,-0.20196E+00, & - &-0.19949E+00,-0.19698E+00,-0.19443E+00,-0.19184E+00,-0.18921E+00, & - &-0.18654E+00,-0.18384E+00,-0.18110E+00,-0.17833E+00,-0.17552E+00, & - &-0.17267E+00,-0.16979E+00,-0.16688E+00,-0.16393E+00,-0.16094E+00, & - &-0.15793E+00,-0.15488E+00,-0.15180E+00,-0.14868E+00,-0.14554E+00, & - &-0.14236E+00,-0.13915E+00,-0.13591E+00,-0.13264E+00,-0.12934E+00, & - &-0.12602E+00,-0.12266E+00,-0.11927E+00,-0.11586E+00,-0.11242E+00, & - &-0.10896E+00,-0.10547E+00,-0.10196E+00,-0.98419E-01,-0.94860E-01/ - - DATA (BNC09M(I),I=101,200)/ & - &-0.91280E-01,-0.87679E-01,-0.84058E-01,-0.80419E-01,-0.76762E-01, & - &-0.73089E-01,-0.69400E-01,-0.65696E-01,-0.61979E-01,-0.58250E-01, & - &-0.54509E-01,-0.50757E-01,-0.46996E-01,-0.43227E-01,-0.39449E-01, & - &-0.35665E-01,-0.31875E-01,-0.28080E-01,-0.24280E-01,-0.20477E-01, & - &-0.16671E-01,-0.12863E-01,-0.90543E-02,-0.52447E-02,-0.14349E-02, & - & 0.23745E-02, 0.61825E-02, 0.99888E-02, 0.13793E-01, 0.17595E-01, & - & 0.21393E-01, 0.25188E-01, 0.28979E-01, 0.32766E-01, 0.36548E-01, & - & 0.40325E-01, 0.44097E-01, 0.47864E-01, 0.51625E-01, 0.55379E-01, & - & 0.59128E-01, 0.62870E-01, 0.66605E-01, 0.70333E-01, 0.74055E-01, & - & 0.77769E-01, 0.81476E-01, 0.85176E-01, 0.88868E-01, 0.92552E-01, & - & 0.96229E-01, 0.99897E-01, 0.10356E+00, 0.10721E+00, 0.11086E+00, & - & 0.11449E+00, 0.11812E+00, 0.12174E+00, 0.12535E+00, 0.12895E+00, & - & 0.13255E+00, 0.13614E+00, 0.13971E+00, 0.14328E+00, 0.14684E+00, & - & 0.15039E+00, 0.15394E+00, 0.15747E+00, 0.16100E+00, 0.16452E+00, & - & 0.16802E+00, 0.17152E+00, 0.17501E+00, 0.17850E+00, 0.18197E+00, & - & 0.18544E+00, 0.18889E+00, 0.19234E+00, 0.19578E+00, 0.19921E+00, & - & 0.20263E+00, 0.20604E+00, 0.20944E+00, 0.21284E+00, 0.21622E+00, & - & 0.21960E+00, 0.22297E+00, 0.22633E+00, 0.22968E+00, 0.23302E+00, & - & 0.23636E+00, 0.23968E+00, 0.24300E+00, 0.24631E+00, 0.24961E+00, & - & 0.25290E+00, 0.25618E+00, 0.25945E+00, 0.26272E+00, 0.26597E+00/ - - DATA (BNC09M(I),I=201,300)/ & - & 0.26922E+00, 0.27246E+00, 0.27569E+00, 0.27892E+00, 0.28213E+00, & - & 0.28534E+00, 0.28854E+00, 0.29173E+00, 0.29491E+00, 0.29808E+00, & - & 0.30125E+00, 0.30440E+00, 0.30755E+00, 0.31069E+00, 0.31383E+00, & - & 0.31695E+00, 0.32007E+00, 0.32318E+00, 0.32628E+00, 0.32937E+00, & - & 0.33245E+00, 0.33553E+00, 0.33860E+00, 0.34166E+00, 0.34472E+00, & - & 0.34776E+00, 0.35080E+00, 0.35383E+00, 0.35685E+00, 0.35987E+00, & - & 0.36287E+00, 0.36587E+00, 0.36887E+00, 0.37185E+00, 0.37483E+00, & - & 0.37780E+00, 0.38076E+00, 0.38371E+00, 0.38666E+00, 0.38960E+00, & - & 0.39253E+00, 0.39546E+00, 0.39838E+00, 0.40129E+00, 0.40419E+00, & - & 0.40709E+00, 0.40998E+00, 0.41286E+00, 0.41573E+00, 0.41860E+00, & - & 0.42146E+00, 0.42432E+00, 0.42716E+00, 0.43000E+00, 0.43283E+00, & - & 0.43566E+00, 0.43848E+00, 0.44129E+00, 0.44410E+00, 0.44690E+00, & - & 0.44969E+00, 0.45247E+00, 0.45525E+00, 0.45802E+00, 0.46079E+00, & - & 0.46355E+00, 0.46630E+00, 0.46904E+00, 0.47178E+00, 0.47452E+00, & - & 0.47724E+00, 0.47996E+00, 0.48267E+00, 0.48538E+00, 0.48808E+00, & - & 0.49077E+00, 0.49346E+00, 0.49614E+00, 0.49882E+00, 0.50149E+00, & - & 0.50415E+00, 0.50681E+00, 0.50946E+00, 0.51210E+00, 0.51474E+00, & - & 0.51737E+00, 0.51999E+00, 0.52261E+00, 0.52523E+00, 0.52783E+00, & - & 0.53044E+00, 0.53303E+00, 0.53562E+00, 0.53820E+00, 0.54078E+00, & - & 0.54335E+00, 0.54592E+00, 0.54848E+00, 0.55104E+00, 0.55358E+00/ - - DATA (BNC09M(I),I=301,400)/ & - & 0.55613E+00, 0.55866E+00, 0.56120E+00, 0.56372E+00, 0.56624E+00, & - & 0.56876E+00, 0.57126E+00, 0.57377E+00, 0.57627E+00, 0.57876E+00, & - & 0.58124E+00, 0.58373E+00, 0.58620E+00, 0.58867E+00, 0.59114E+00, & - & 0.59360E+00, 0.59605E+00, 0.59850E+00, 0.60094E+00, 0.60338E+00, & - & 0.60581E+00, 0.60824E+00, 0.61066E+00, 0.61308E+00, 0.61549E+00, & - & 0.61789E+00, 0.62030E+00, 0.62269E+00, 0.62508E+00, 0.62747E+00, & - & 0.62985E+00, 0.63222E+00, 0.63459E+00, 0.63696E+00, 0.63932E+00, & - & 0.64167E+00, 0.64402E+00, 0.64637E+00, 0.64871E+00, 0.65104E+00, & - & 0.65337E+00, 0.65570E+00, 0.65802E+00, 0.66033E+00, 0.66265E+00, & - & 0.66495E+00, 0.66725E+00, 0.66955E+00, 0.67184E+00, 0.67413E+00, & - & 0.67641E+00, 0.67868E+00, 0.68096E+00, 0.68322E+00, 0.68549E+00, & - & 0.68775E+00, 0.69000E+00, 0.69225E+00, 0.69449E+00, 0.69673E+00, & - & 0.69897E+00, 0.70120E+00, 0.70342E+00, 0.70565E+00, 0.70786E+00, & - & 0.71008E+00, 0.71228E+00, 0.71449E+00, 0.71669E+00, 0.71888E+00, & - & 0.72107E+00, 0.72326E+00, 0.72544E+00, 0.72761E+00, 0.72979E+00, & - & 0.73195E+00, 0.73412E+00, 0.73628E+00, 0.73843E+00, 0.74058E+00, & - & 0.74273E+00, 0.74487E+00, 0.74701E+00, 0.74914E+00, 0.75127E+00, & - & 0.75340E+00, 0.75552E+00, 0.75764E+00, 0.75975E+00, 0.76186E+00, & - & 0.76396E+00, 0.76606E+00, 0.76816E+00, 0.77025E+00, 0.77234E+00, & - & 0.77442E+00, 0.77650E+00, 0.77858E+00, 0.78065E+00, 0.78272E+00/ - - DATA (BNC09M(I),I=401,500)/ & - & 0.78478E+00, 0.78684E+00, 0.78890E+00, 0.79095E+00, 0.79300E+00, & - & 0.79504E+00, 0.79708E+00, 0.79912E+00, 0.80115E+00, 0.80318E+00, & - & 0.80520E+00, 0.80723E+00, 0.80924E+00, 0.81126E+00, 0.81326E+00, & - & 0.81527E+00, 0.81727E+00, 0.81927E+00, 0.82126E+00, 0.82325E+00, & - & 0.82524E+00, 0.82722E+00, 0.82920E+00, 0.83118E+00, 0.83315E+00, & - & 0.83512E+00, 0.83708E+00, 0.83904E+00, 0.84100E+00, 0.84295E+00, & - & 0.84490E+00, 0.84684E+00, 0.84879E+00, 0.85073E+00, 0.85266E+00, & - & 0.85459E+00, 0.85652E+00, 0.85844E+00, 0.86037E+00, 0.86228E+00, & - & 0.86420E+00, 0.86611E+00, 0.86801E+00, 0.86992E+00, 0.87182E+00, & - & 0.87371E+00, 0.87560E+00, 0.87749E+00, 0.87938E+00, 0.88126E+00, & - & 0.88314E+00, 0.88502E+00, 0.88689E+00, 0.88876E+00, 0.89062E+00, & - & 0.89249E+00, 0.89434E+00, 0.89620E+00, 0.89805E+00, 0.89990E+00, & - & 0.90174E+00, 0.90359E+00, 0.90543E+00, 0.90726E+00, 0.90909E+00, & - & 0.91092E+00, 0.91275E+00, 0.91457E+00, 0.91639E+00, 0.91820E+00, & - & 0.92002E+00, 0.92183E+00, 0.92363E+00, 0.92544E+00, 0.92724E+00, & - & 0.92903E+00, 0.93083E+00, 0.93262E+00, 0.93440E+00, 0.93619E+00, & - & 0.93797E+00, 0.93975E+00, 0.94152E+00, 0.94329E+00, 0.94506E+00, & - & 0.94682E+00, 0.94859E+00, 0.95035E+00, 0.95210E+00, 0.95386E+00, & - & 0.95561E+00, 0.95735E+00, 0.95910E+00, 0.96084E+00, 0.96258E+00, & - & 0.96431E+00, 0.96604E+00, 0.96777E+00, 0.96950E+00, 0.97122E+00/ - - DATA (BNC09M(I),I=501,600)/ & - & 0.97294E+00, 0.97466E+00, 0.97637E+00, 0.97808E+00, 0.97979E+00, & - & 0.98150E+00, 0.98320E+00, 0.98490E+00, 0.98659E+00, 0.98829E+00, & - & 0.98998E+00, 0.99167E+00, 0.99335E+00, 0.99503E+00, 0.99671E+00, & - & 0.99839E+00, 0.10001E+01, 0.10017E+01, 0.10034E+01, 0.10051E+01, & - & 0.10067E+01, 0.10084E+01, 0.10100E+01, 0.10117E+01, 0.10134E+01, & - & 0.10150E+01, 0.10166E+01, 0.10183E+01, 0.10199E+01, 0.10216E+01, & - & 0.10232E+01, 0.10248E+01, 0.10265E+01, 0.10281E+01, 0.10297E+01, & - & 0.10313E+01, 0.10330E+01, 0.10346E+01, 0.10362E+01, 0.10378E+01, & - & 0.10394E+01, 0.10410E+01, 0.10426E+01, 0.10442E+01, 0.10458E+01, & - & 0.10474E+01, 0.10490E+01, 0.10506E+01, 0.10522E+01, 0.10538E+01, & - & 0.10553E+01, 0.10569E+01, 0.10585E+01, 0.10601E+01, 0.10616E+01, & - & 0.10632E+01, 0.10648E+01, 0.10663E+01, 0.10679E+01, 0.10695E+01, & - & 0.10710E+01, 0.10726E+01, 0.10741E+01, 0.10757E+01, 0.10772E+01, & - & 0.10788E+01, 0.10803E+01, 0.10818E+01, 0.10834E+01, 0.10849E+01, & - & 0.10864E+01, 0.10880E+01, 0.10895E+01, 0.10910E+01, 0.10925E+01, & - & 0.10941E+01, 0.10956E+01, 0.10971E+01, 0.10986E+01, 0.11001E+01, & - & 0.11016E+01, 0.11031E+01, 0.11046E+01, 0.11061E+01, 0.11076E+01, & - & 0.11091E+01, 0.11106E+01, 0.11121E+01, 0.11136E+01, 0.11151E+01, & - & 0.11165E+01, 0.11180E+01, 0.11195E+01, 0.11210E+01, 0.11225E+01, & - & 0.11239E+01, 0.11254E+01, 0.11269E+01, 0.11283E+01, 0.11298E+01/ - - DATA (BNC09M(I),I=601,700)/ & - & 0.11454E+01, 0.11597E+01, 0.11737E+01, 0.11876E+01, 0.12012E+01, & - & 0.12146E+01, 0.12278E+01, 0.12409E+01, 0.12537E+01, 0.12663E+01, & - & 0.12788E+01, 0.12911E+01, 0.13032E+01, 0.13152E+01, 0.13270E+01, & - & 0.13386E+01, 0.13500E+01, 0.13613E+01, 0.13725E+01, 0.13835E+01, & - & 0.13943E+01, 0.14050E+01, 0.14156E+01, 0.14260E+01, 0.14363E+01, & - & 0.14464E+01, 0.14564E+01, 0.14663E+01, 0.14761E+01, 0.14857E+01, & - & 0.14952E+01, 0.15046E+01, 0.15139E+01, 0.15231E+01, 0.15321E+01, & - & 0.15410E+01, 0.15499E+01, 0.15586E+01, 0.15672E+01, 0.15757E+01, & - & 0.15841E+01, 0.15923E+01, 0.16005E+01, 0.16086E+01, 0.16166E+01, & - & 0.16245E+01, 0.16323E+01, 0.16400E+01, 0.16477E+01, 0.16552E+01, & - & 0.16626E+01, 0.16700E+01, 0.16773E+01, 0.16845E+01, 0.16916E+01, & - & 0.16986E+01, 0.17055E+01, 0.17124E+01, 0.17192E+01, 0.17259E+01, & - & 0.17325E+01, 0.17390E+01, 0.17455E+01, 0.17519E+01, 0.17583E+01, & - & 0.17645E+01, 0.17707E+01, 0.17768E+01, 0.17829E+01, 0.17889E+01, & - & 0.17948E+01, 0.18006E+01, 0.18064E+01, 0.18121E+01, 0.18178E+01, & - & 0.18234E+01, 0.18289E+01, 0.18344E+01, 0.18398E+01, 0.18452E+01, & - & 0.18505E+01, 0.18557E+01, 0.18609E+01, 0.18660E+01, 0.18711E+01, & - & 0.18761E+01, 0.18811E+01, 0.18860E+01, 0.18908E+01, 0.18956E+01, & - & 0.19004E+01, 0.19050E+01, 0.19097E+01, 0.19143E+01, 0.19188E+01, & - & 0.19233E+01, 0.19278E+01, 0.19322E+01, 0.19365E+01, 0.19408E+01/ - - DATA (BNC09M(I),I=701,741)/ & - & 0.19451E+01, 0.19493E+01, 0.19535E+01, 0.19576E+01, 0.19616E+01, & - & 0.19657E+01, 0.19697E+01, 0.19736E+01, 0.19775E+01, 0.19814E+01, & - & 0.19852E+01, 0.19890E+01, 0.19927E+01, 0.19964E+01, 0.20001E+01, & - & 0.20037E+01, 0.20073E+01, 0.20108E+01, 0.20143E+01, 0.20178E+01, & - & 0.20212E+01, 0.20246E+01, 0.20279E+01, 0.20312E+01, 0.20345E+01, & - & 0.20378E+01, 0.20410E+01, 0.20441E+01, 0.20473E+01, 0.20504E+01, & - & 0.20534E+01, 0.20565E+01, 0.20595E+01, 0.20624E+01, 0.20654E+01, & - & 0.20683E+01, 0.20711E+01, 0.20740E+01, 0.20768E+01, 0.20796E+01, & - & 0.20823E+01 & - & / -! -! *** (H,NO3) -! - DATA (BNC10M(I),I=1,100)/ & - &-0.48350E-01,-0.99817E-01,-0.12258E+00,-0.13710E+00,-0.14739E+00, & - &-0.15506E+00,-0.16093E+00,-0.16548E+00,-0.16903E+00,-0.17178E+00, & - &-0.17389E+00,-0.17547E+00,-0.17659E+00,-0.17734E+00,-0.17776E+00, & - &-0.17790E+00,-0.17778E+00,-0.17745E+00,-0.17692E+00,-0.17623E+00, & - &-0.17537E+00,-0.17438E+00,-0.17327E+00,-0.17205E+00,-0.17072E+00, & - &-0.16930E+00,-0.16780E+00,-0.16623E+00,-0.16459E+00,-0.16289E+00, & - &-0.16113E+00,-0.15932E+00,-0.15747E+00,-0.15558E+00,-0.15365E+00, & - &-0.15169E+00,-0.14969E+00,-0.14768E+00,-0.14563E+00,-0.14357E+00, & - &-0.14149E+00,-0.13939E+00,-0.13727E+00,-0.13515E+00,-0.13301E+00, & - &-0.13086E+00,-0.12871E+00,-0.12655E+00,-0.12438E+00,-0.12220E+00, & - &-0.12002E+00,-0.11784E+00,-0.11565E+00,-0.11346E+00,-0.11127E+00, & - &-0.10908E+00,-0.10688E+00,-0.10468E+00,-0.10248E+00,-0.10027E+00, & - &-0.98060E-01,-0.95847E-01,-0.93631E-01,-0.91410E-01,-0.89183E-01, & - &-0.86952E-01,-0.84714E-01,-0.82470E-01,-0.80218E-01,-0.77958E-01, & - &-0.75689E-01,-0.73411E-01,-0.71123E-01,-0.68823E-01,-0.66512E-01, & - &-0.64189E-01,-0.61853E-01,-0.59502E-01,-0.57138E-01,-0.54759E-01, & - &-0.52364E-01,-0.49954E-01,-0.47527E-01,-0.45084E-01,-0.42623E-01, & - &-0.40146E-01,-0.37650E-01,-0.35137E-01,-0.32607E-01,-0.30058E-01, & - &-0.27492E-01,-0.24907E-01,-0.22306E-01,-0.19686E-01,-0.17050E-01, & - &-0.14396E-01,-0.11726E-01,-0.90402E-02,-0.63382E-02,-0.36209E-02/ - - DATA (BNC10M(I),I=101,200)/ & - &-0.88885E-03, 0.18576E-02, 0.46179E-02, 0.73912E-02, 0.10177E-01, & - & 0.12975E-01, 0.15785E-01, 0.18605E-01, 0.21435E-01, 0.24275E-01, & - & 0.27123E-01, 0.29980E-01, 0.32844E-01, 0.35716E-01, 0.38593E-01, & - & 0.41477E-01, 0.44366E-01, 0.47259E-01, 0.50157E-01, 0.53058E-01, & - & 0.55963E-01, 0.58870E-01, 0.61780E-01, 0.64691E-01, 0.67604E-01, & - & 0.70518E-01, 0.73432E-01, 0.76347E-01, 0.79262E-01, 0.82177E-01, & - & 0.85091E-01, 0.88004E-01, 0.90916E-01, 0.93827E-01, 0.96736E-01, & - & 0.99644E-01, 0.10255E+00, 0.10545E+00, 0.10836E+00, 0.11125E+00, & - & 0.11415E+00, 0.11705E+00, 0.11994E+00, 0.12283E+00, 0.12571E+00, & - & 0.12859E+00, 0.13147E+00, 0.13435E+00, 0.13722E+00, 0.14009E+00, & - & 0.14296E+00, 0.14582E+00, 0.14868E+00, 0.15154E+00, 0.15439E+00, & - & 0.15724E+00, 0.16008E+00, 0.16293E+00, 0.16576E+00, 0.16860E+00, & - & 0.17143E+00, 0.17425E+00, 0.17708E+00, 0.17989E+00, 0.18271E+00, & - & 0.18552E+00, 0.18833E+00, 0.19113E+00, 0.19393E+00, 0.19672E+00, & - & 0.19951E+00, 0.20230E+00, 0.20508E+00, 0.20786E+00, 0.21063E+00, & - & 0.21340E+00, 0.21617E+00, 0.21893E+00, 0.22168E+00, 0.22444E+00, & - & 0.22718E+00, 0.22993E+00, 0.23267E+00, 0.23540E+00, 0.23813E+00, & - & 0.24086E+00, 0.24358E+00, 0.24630E+00, 0.24901E+00, 0.25172E+00, & - & 0.25443E+00, 0.25713E+00, 0.25983E+00, 0.26252E+00, 0.26520E+00, & - & 0.26789E+00, 0.27056E+00, 0.27324E+00, 0.27591E+00, 0.27857E+00/ - - DATA (BNC10M(I),I=201,300)/ & - & 0.28123E+00, 0.28389E+00, 0.28654E+00, 0.28919E+00, 0.29183E+00, & - & 0.29447E+00, 0.29710E+00, 0.29973E+00, 0.30235E+00, 0.30497E+00, & - & 0.30759E+00, 0.31020E+00, 0.31281E+00, 0.31541E+00, 0.31801E+00, & - & 0.32060E+00, 0.32319E+00, 0.32577E+00, 0.32835E+00, 0.33093E+00, & - & 0.33350E+00, 0.33606E+00, 0.33862E+00, 0.34118E+00, 0.34373E+00, & - & 0.34628E+00, 0.34882E+00, 0.35136E+00, 0.35390E+00, 0.35642E+00, & - & 0.35895E+00, 0.36147E+00, 0.36399E+00, 0.36650E+00, 0.36901E+00, & - & 0.37151E+00, 0.37401E+00, 0.37650E+00, 0.37899E+00, 0.38147E+00, & - & 0.38395E+00, 0.38643E+00, 0.38890E+00, 0.39137E+00, 0.39383E+00, & - & 0.39629E+00, 0.39874E+00, 0.40119E+00, 0.40363E+00, 0.40607E+00, & - & 0.40851E+00, 0.41094E+00, 0.41337E+00, 0.41579E+00, 0.41821E+00, & - & 0.42062E+00, 0.42303E+00, 0.42543E+00, 0.42783E+00, 0.43023E+00, & - & 0.43262E+00, 0.43501E+00, 0.43739E+00, 0.43977E+00, 0.44214E+00, & - & 0.44451E+00, 0.44688E+00, 0.44924E+00, 0.45160E+00, 0.45395E+00, & - & 0.45630E+00, 0.45864E+00, 0.46098E+00, 0.46332E+00, 0.46565E+00, & - & 0.46797E+00, 0.47029E+00, 0.47261E+00, 0.47493E+00, 0.47724E+00, & - & 0.47954E+00, 0.48184E+00, 0.48414E+00, 0.48643E+00, 0.48872E+00, & - & 0.49100E+00, 0.49328E+00, 0.49556E+00, 0.49783E+00, 0.50010E+00, & - & 0.50236E+00, 0.50462E+00, 0.50687E+00, 0.50912E+00, 0.51137E+00, & - & 0.51361E+00, 0.51585E+00, 0.51809E+00, 0.52032E+00, 0.52254E+00/ - - DATA (BNC10M(I),I=301,400)/ & - & 0.52476E+00, 0.52698E+00, 0.52919E+00, 0.53140E+00, 0.53361E+00, & - & 0.53581E+00, 0.53801E+00, 0.54020E+00, 0.54239E+00, 0.54458E+00, & - & 0.54676E+00, 0.54894E+00, 0.55111E+00, 0.55328E+00, 0.55544E+00, & - & 0.55760E+00, 0.55976E+00, 0.56191E+00, 0.56406E+00, 0.56621E+00, & - & 0.56835E+00, 0.57049E+00, 0.57262E+00, 0.57475E+00, 0.57688E+00, & - & 0.57900E+00, 0.58112E+00, 0.58323E+00, 0.58534E+00, 0.58745E+00, & - & 0.58955E+00, 0.59165E+00, 0.59375E+00, 0.59584E+00, 0.59792E+00, & - & 0.60001E+00, 0.60209E+00, 0.60416E+00, 0.60624E+00, 0.60830E+00, & - & 0.61037E+00, 0.61243E+00, 0.61449E+00, 0.61654E+00, 0.61859E+00, & - & 0.62064E+00, 0.62268E+00, 0.62472E+00, 0.62675E+00, 0.62878E+00, & - & 0.63081E+00, 0.63283E+00, 0.63485E+00, 0.63687E+00, 0.63888E+00, & - & 0.64089E+00, 0.64290E+00, 0.64490E+00, 0.64690E+00, 0.64889E+00, & - & 0.65088E+00, 0.65287E+00, 0.65486E+00, 0.65684E+00, 0.65881E+00, & - & 0.66079E+00, 0.66276E+00, 0.66472E+00, 0.66668E+00, 0.66864E+00, & - & 0.67060E+00, 0.67255E+00, 0.67450E+00, 0.67644E+00, 0.67839E+00, & - & 0.68032E+00, 0.68226E+00, 0.68419E+00, 0.68612E+00, 0.68804E+00, & - & 0.68996E+00, 0.69188E+00, 0.69379E+00, 0.69571E+00, 0.69761E+00, & - & 0.69952E+00, 0.70142E+00, 0.70331E+00, 0.70521E+00, 0.70710E+00, & - & 0.70898E+00, 0.71087E+00, 0.71275E+00, 0.71463E+00, 0.71650E+00, & - & 0.71837E+00, 0.72024E+00, 0.72210E+00, 0.72396E+00, 0.72582E+00/ - - DATA (BNC10M(I),I=401,500)/ & - & 0.72767E+00, 0.72952E+00, 0.73137E+00, 0.73321E+00, 0.73505E+00, & - & 0.73689E+00, 0.73873E+00, 0.74056E+00, 0.74239E+00, 0.74421E+00, & - & 0.74603E+00, 0.74785E+00, 0.74967E+00, 0.75148E+00, 0.75329E+00, & - & 0.75509E+00, 0.75689E+00, 0.75869E+00, 0.76049E+00, 0.76228E+00, & - & 0.76407E+00, 0.76586E+00, 0.76764E+00, 0.76942E+00, 0.77120E+00, & - & 0.77298E+00, 0.77475E+00, 0.77652E+00, 0.77828E+00, 0.78004E+00, & - & 0.78180E+00, 0.78356E+00, 0.78531E+00, 0.78706E+00, 0.78881E+00, & - & 0.79055E+00, 0.79229E+00, 0.79403E+00, 0.79577E+00, 0.79750E+00, & - & 0.79923E+00, 0.80095E+00, 0.80268E+00, 0.80440E+00, 0.80611E+00, & - & 0.80783E+00, 0.80954E+00, 0.81125E+00, 0.81295E+00, 0.81466E+00, & - & 0.81636E+00, 0.81805E+00, 0.81975E+00, 0.82144E+00, 0.82313E+00, & - & 0.82481E+00, 0.82649E+00, 0.82817E+00, 0.82985E+00, 0.83152E+00, & - & 0.83319E+00, 0.83486E+00, 0.83653E+00, 0.83819E+00, 0.83985E+00, & - & 0.84151E+00, 0.84316E+00, 0.84481E+00, 0.84646E+00, 0.84810E+00, & - & 0.84975E+00, 0.85139E+00, 0.85303E+00, 0.85466E+00, 0.85629E+00, & - & 0.85792E+00, 0.85955E+00, 0.86117E+00, 0.86279E+00, 0.86441E+00, & - & 0.86603E+00, 0.86764E+00, 0.86925E+00, 0.87086E+00, 0.87246E+00, & - & 0.87406E+00, 0.87566E+00, 0.87726E+00, 0.87885E+00, 0.88044E+00, & - & 0.88203E+00, 0.88362E+00, 0.88520E+00, 0.88678E+00, 0.88836E+00, & - & 0.88994E+00, 0.89151E+00, 0.89308E+00, 0.89465E+00, 0.89621E+00/ - - DATA (BNC10M(I),I=501,600)/ & - & 0.89778E+00, 0.89934E+00, 0.90089E+00, 0.90245E+00, 0.90400E+00, & - & 0.90555E+00, 0.90710E+00, 0.90864E+00, 0.91019E+00, 0.91173E+00, & - & 0.91326E+00, 0.91480E+00, 0.91633E+00, 0.91786E+00, 0.91939E+00, & - & 0.92091E+00, 0.92243E+00, 0.92395E+00, 0.92547E+00, 0.92698E+00, & - & 0.92850E+00, 0.93001E+00, 0.93151E+00, 0.93302E+00, 0.93452E+00, & - & 0.93602E+00, 0.93752E+00, 0.93901E+00, 0.94051E+00, 0.94200E+00, & - & 0.94348E+00, 0.94497E+00, 0.94645E+00, 0.94793E+00, 0.94941E+00, & - & 0.95089E+00, 0.95236E+00, 0.95383E+00, 0.95530E+00, 0.95677E+00, & - & 0.95823E+00, 0.95969E+00, 0.96115E+00, 0.96261E+00, 0.96406E+00, & - & 0.96552E+00, 0.96697E+00, 0.96841E+00, 0.96986E+00, 0.97130E+00, & - & 0.97274E+00, 0.97418E+00, 0.97562E+00, 0.97705E+00, 0.97848E+00, & - & 0.97991E+00, 0.98134E+00, 0.98276E+00, 0.98419E+00, 0.98561E+00, & - & 0.98702E+00, 0.98844E+00, 0.98985E+00, 0.99126E+00, 0.99267E+00, & - & 0.99408E+00, 0.99548E+00, 0.99689E+00, 0.99829E+00, 0.99969E+00, & - & 0.10011E+01, 0.10025E+01, 0.10039E+01, 0.10053E+01, 0.10066E+01, & - & 0.10080E+01, 0.10094E+01, 0.10108E+01, 0.10122E+01, 0.10135E+01, & - & 0.10149E+01, 0.10163E+01, 0.10177E+01, 0.10190E+01, 0.10204E+01, & - & 0.10218E+01, 0.10231E+01, 0.10245E+01, 0.10258E+01, 0.10272E+01, & - & 0.10285E+01, 0.10299E+01, 0.10312E+01, 0.10326E+01, 0.10339E+01, & - & 0.10353E+01, 0.10366E+01, 0.10380E+01, 0.10393E+01, 0.10406E+01/ - - DATA (BNC10M(I),I=601,700)/ & - & 0.10549E+01, 0.10679E+01, 0.10807E+01, 0.10933E+01, 0.11058E+01, & - & 0.11180E+01, 0.11301E+01, 0.11420E+01, 0.11537E+01, 0.11652E+01, & - & 0.11766E+01, 0.11878E+01, 0.11989E+01, 0.12098E+01, 0.12205E+01, & - & 0.12311E+01, 0.12415E+01, 0.12518E+01, 0.12620E+01, 0.12720E+01, & - & 0.12819E+01, 0.12916E+01, 0.13012E+01, 0.13107E+01, 0.13201E+01, & - & 0.13293E+01, 0.13384E+01, 0.13474E+01, 0.13562E+01, 0.13650E+01, & - & 0.13736E+01, 0.13821E+01, 0.13905E+01, 0.13988E+01, 0.14070E+01, & - & 0.14151E+01, 0.14231E+01, 0.14310E+01, 0.14388E+01, 0.14464E+01, & - & 0.14540E+01, 0.14615E+01, 0.14689E+01, 0.14762E+01, 0.14834E+01, & - & 0.14906E+01, 0.14976E+01, 0.15045E+01, 0.15114E+01, 0.15182E+01, & - & 0.15249E+01, 0.15315E+01, 0.15380E+01, 0.15444E+01, 0.15508E+01, & - & 0.15571E+01, 0.15633E+01, 0.15695E+01, 0.15755E+01, 0.15815E+01, & - & 0.15875E+01, 0.15933E+01, 0.15991E+01, 0.16048E+01, 0.16105E+01, & - & 0.16160E+01, 0.16215E+01, 0.16270E+01, 0.16324E+01, 0.16377E+01, & - & 0.16429E+01, 0.16481E+01, 0.16533E+01, 0.16583E+01, 0.16634E+01, & - & 0.16683E+01, 0.16732E+01, 0.16780E+01, 0.16828E+01, 0.16875E+01, & - & 0.16922E+01, 0.16968E+01, 0.17014E+01, 0.17059E+01, 0.17104E+01, & - & 0.17148E+01, 0.17191E+01, 0.17234E+01, 0.17277E+01, 0.17319E+01, & - & 0.17360E+01, 0.17401E+01, 0.17442E+01, 0.17482E+01, 0.17521E+01, & - & 0.17560E+01, 0.17599E+01, 0.17637E+01, 0.17675E+01, 0.17712E+01/ - - DATA (BNC10M(I),I=701,741)/ & - & 0.17749E+01, 0.17786E+01, 0.17822E+01, 0.17858E+01, 0.17893E+01, & - & 0.17927E+01, 0.17962E+01, 0.17996E+01, 0.18029E+01, 0.18063E+01, & - & 0.18095E+01, 0.18128E+01, 0.18160E+01, 0.18191E+01, 0.18223E+01, & - & 0.18253E+01, 0.18284E+01, 0.18314E+01, 0.18344E+01, 0.18373E+01, & - & 0.18402E+01, 0.18431E+01, 0.18459E+01, 0.18487E+01, 0.18515E+01, & - & 0.18542E+01, 0.18569E+01, 0.18596E+01, 0.18623E+01, 0.18649E+01, & - & 0.18674E+01, 0.18700E+01, 0.18725E+01, 0.18749E+01, 0.18774E+01, & - & 0.18798E+01, 0.18822E+01, 0.18845E+01, 0.18869E+01, 0.18892E+01, & - & 0.18914E+01 & - & / -! -! *** (H,Cl) -! - DATA (BNC11M(I),I=1,100)/ & - &-0.46921E-01,-0.92783E-01,-0.11083E+00,-0.12102E+00,-0.12722E+00, & - &-0.13092E+00,-0.13292E+00,-0.13364E+00,-0.13339E+00,-0.13235E+00, & - &-0.13067E+00,-0.12843E+00,-0.12574E+00,-0.12263E+00,-0.11917E+00, & - &-0.11539E+00,-0.11133E+00,-0.10701E+00,-0.10245E+00,-0.97688E-01, & - &-0.92727E-01,-0.87586E-01,-0.82279E-01,-0.76818E-01,-0.71216E-01, & - &-0.65481E-01,-0.59623E-01,-0.53651E-01,-0.47571E-01,-0.41393E-01, & - &-0.35121E-01,-0.28762E-01,-0.22322E-01,-0.15807E-01,-0.92221E-02, & - &-0.25712E-02, 0.41408E-02, 0.10910E-01, 0.17731E-01, 0.24602E-01, & - & 0.31518E-01, 0.38477E-01, 0.45474E-01, 0.52508E-01, 0.59576E-01, & - & 0.66675E-01, 0.73803E-01, 0.80957E-01, 0.88137E-01, 0.95339E-01, & - & 0.10256E+00, 0.10981E+00, 0.11707E+00, 0.12435E+00, 0.13165E+00, & - & 0.13897E+00, 0.14630E+00, 0.15365E+00, 0.16101E+00, 0.16839E+00, & - & 0.17578E+00, 0.18319E+00, 0.19062E+00, 0.19806E+00, 0.20553E+00, & - & 0.21300E+00, 0.22050E+00, 0.22802E+00, 0.23556E+00, 0.24313E+00, & - & 0.25071E+00, 0.25832E+00, 0.26596E+00, 0.27362E+00, 0.28131E+00, & - & 0.28903E+00, 0.29679E+00, 0.30457E+00, 0.31239E+00, 0.32024E+00, & - & 0.32813E+00, 0.33605E+00, 0.34401E+00, 0.35201E+00, 0.36004E+00, & - & 0.36812E+00, 0.37623E+00, 0.38439E+00, 0.39258E+00, 0.40081E+00, & - & 0.40909E+00, 0.41740E+00, 0.42575E+00, 0.43414E+00, 0.44257E+00, & - & 0.45104E+00, 0.45954E+00, 0.46808E+00, 0.47665E+00, 0.48526E+00/ - - DATA (BNC11M(I),I=101,200)/ & - & 0.49390E+00, 0.50257E+00, 0.51127E+00, 0.51999E+00, 0.52875E+00, & - & 0.53752E+00, 0.54633E+00, 0.55515E+00, 0.56400E+00, 0.57286E+00, & - & 0.58174E+00, 0.59064E+00, 0.59955E+00, 0.60847E+00, 0.61740E+00, & - & 0.62635E+00, 0.63530E+00, 0.64426E+00, 0.65322E+00, 0.66219E+00, & - & 0.67116E+00, 0.68013E+00, 0.68911E+00, 0.69808E+00, 0.70705E+00, & - & 0.71602E+00, 0.72499E+00, 0.73395E+00, 0.74290E+00, 0.75185E+00, & - & 0.76080E+00, 0.76973E+00, 0.77866E+00, 0.78758E+00, 0.79649E+00, & - & 0.80539E+00, 0.81428E+00, 0.82316E+00, 0.83203E+00, 0.84089E+00, & - & 0.84973E+00, 0.85857E+00, 0.86739E+00, 0.87619E+00, 0.88499E+00, & - & 0.89377E+00, 0.90254E+00, 0.91129E+00, 0.92003E+00, 0.92876E+00, & - & 0.93747E+00, 0.94617E+00, 0.95486E+00, 0.96352E+00, 0.97218E+00, & - & 0.98082E+00, 0.98944E+00, 0.99805E+00, 0.10066E+01, 0.10152E+01, & - & 0.10238E+01, 0.10323E+01, 0.10409E+01, 0.10494E+01, 0.10579E+01, & - & 0.10664E+01, 0.10748E+01, 0.10833E+01, 0.10917E+01, 0.11001E+01, & - & 0.11085E+01, 0.11169E+01, 0.11253E+01, 0.11337E+01, 0.11420E+01, & - & 0.11503E+01, 0.11586E+01, 0.11669E+01, 0.11752E+01, 0.11834E+01, & - & 0.11917E+01, 0.11999E+01, 0.12081E+01, 0.12163E+01, 0.12245E+01, & - & 0.12326E+01, 0.12408E+01, 0.12489E+01, 0.12570E+01, 0.12651E+01, & - & 0.12732E+01, 0.12812E+01, 0.12893E+01, 0.12973E+01, 0.13053E+01, & - & 0.13133E+01, 0.13213E+01, 0.13292E+01, 0.13372E+01, 0.13451E+01/ - - DATA (BNC11M(I),I=201,300)/ & - & 0.13530E+01, 0.13609E+01, 0.13688E+01, 0.13767E+01, 0.13845E+01, & - & 0.13923E+01, 0.14001E+01, 0.14079E+01, 0.14157E+01, 0.14235E+01, & - & 0.14312E+01, 0.14390E+01, 0.14467E+01, 0.14544E+01, 0.14620E+01, & - & 0.14697E+01, 0.14774E+01, 0.14850E+01, 0.14926E+01, 0.15002E+01, & - & 0.15078E+01, 0.15154E+01, 0.15229E+01, 0.15305E+01, 0.15380E+01, & - & 0.15455E+01, 0.15530E+01, 0.15604E+01, 0.15679E+01, 0.15753E+01, & - & 0.15828E+01, 0.15902E+01, 0.15976E+01, 0.16050E+01, 0.16123E+01, & - & 0.16197E+01, 0.16270E+01, 0.16343E+01, 0.16416E+01, 0.16489E+01, & - & 0.16562E+01, 0.16634E+01, 0.16707E+01, 0.16779E+01, 0.16851E+01, & - & 0.16923E+01, 0.16995E+01, 0.17067E+01, 0.17138E+01, 0.17210E+01, & - & 0.17281E+01, 0.17352E+01, 0.17423E+01, 0.17493E+01, 0.17564E+01, & - & 0.17635E+01, 0.17705E+01, 0.17775E+01, 0.17845E+01, 0.17915E+01, & - & 0.17985E+01, 0.18054E+01, 0.18124E+01, 0.18193E+01, 0.18262E+01, & - & 0.18331E+01, 0.18400E+01, 0.18469E+01, 0.18537E+01, 0.18606E+01, & - & 0.18674E+01, 0.18742E+01, 0.18810E+01, 0.18878E+01, 0.18946E+01, & - & 0.19014E+01, 0.19081E+01, 0.19148E+01, 0.19216E+01, 0.19283E+01, & - & 0.19350E+01, 0.19416E+01, 0.19483E+01, 0.19550E+01, 0.19616E+01, & - & 0.19682E+01, 0.19748E+01, 0.19814E+01, 0.19880E+01, 0.19946E+01, & - & 0.20011E+01, 0.20077E+01, 0.20142E+01, 0.20207E+01, 0.20272E+01, & - & 0.20337E+01, 0.20402E+01, 0.20467E+01, 0.20531E+01, 0.20596E+01/ - - DATA (BNC11M(I),I=301,400)/ & - & 0.20660E+01, 0.20724E+01, 0.20788E+01, 0.20852E+01, 0.20916E+01, & - & 0.20979E+01, 0.21043E+01, 0.21106E+01, 0.21169E+01, 0.21233E+01, & - & 0.21296E+01, 0.21358E+01, 0.21421E+01, 0.21484E+01, 0.21546E+01, & - & 0.21609E+01, 0.21671E+01, 0.21733E+01, 0.21795E+01, 0.21857E+01, & - & 0.21919E+01, 0.21981E+01, 0.22042E+01, 0.22104E+01, 0.22165E+01, & - & 0.22226E+01, 0.22287E+01, 0.22348E+01, 0.22409E+01, 0.22470E+01, & - & 0.22530E+01, 0.22591E+01, 0.22651E+01, 0.22711E+01, 0.22771E+01, & - & 0.22831E+01, 0.22891E+01, 0.22951E+01, 0.23011E+01, 0.23070E+01, & - & 0.23130E+01, 0.23189E+01, 0.23248E+01, 0.23308E+01, 0.23367E+01, & - & 0.23425E+01, 0.23484E+01, 0.23543E+01, 0.23601E+01, 0.23660E+01, & - & 0.23718E+01, 0.23776E+01, 0.23835E+01, 0.23893E+01, 0.23950E+01, & - & 0.24008E+01, 0.24066E+01, 0.24124E+01, 0.24181E+01, 0.24238E+01, & - & 0.24296E+01, 0.24353E+01, 0.24410E+01, 0.24467E+01, 0.24524E+01, & - & 0.24580E+01, 0.24637E+01, 0.24694E+01, 0.24750E+01, 0.24806E+01, & - & 0.24862E+01, 0.24919E+01, 0.24975E+01, 0.25031E+01, 0.25086E+01, & - & 0.25142E+01, 0.25198E+01, 0.25253E+01, 0.25309E+01, 0.25364E+01, & - & 0.25419E+01, 0.25474E+01, 0.25529E+01, 0.25584E+01, 0.25639E+01, & - & 0.25694E+01, 0.25748E+01, 0.25803E+01, 0.25857E+01, 0.25912E+01, & - & 0.25966E+01, 0.26020E+01, 0.26074E+01, 0.26128E+01, 0.26182E+01, & - & 0.26235E+01, 0.26289E+01, 0.26343E+01, 0.26396E+01, 0.26450E+01/ - - DATA (BNC11M(I),I=401,500)/ & - & 0.26503E+01, 0.26556E+01, 0.26609E+01, 0.26662E+01, 0.26715E+01, & - & 0.26768E+01, 0.26821E+01, 0.26873E+01, 0.26926E+01, 0.26978E+01, & - & 0.27031E+01, 0.27083E+01, 0.27135E+01, 0.27187E+01, 0.27239E+01, & - & 0.27291E+01, 0.27343E+01, 0.27395E+01, 0.27446E+01, 0.27498E+01, & - & 0.27549E+01, 0.27601E+01, 0.27652E+01, 0.27703E+01, 0.27754E+01, & - & 0.27805E+01, 0.27856E+01, 0.27907E+01, 0.27958E+01, 0.28008E+01, & - & 0.28059E+01, 0.28110E+01, 0.28160E+01, 0.28210E+01, 0.28261E+01, & - & 0.28311E+01, 0.28361E+01, 0.28411E+01, 0.28461E+01, 0.28511E+01, & - & 0.28560E+01, 0.28610E+01, 0.28660E+01, 0.28709E+01, 0.28759E+01, & - & 0.28808E+01, 0.28857E+01, 0.28906E+01, 0.28956E+01, 0.29005E+01, & - & 0.29053E+01, 0.29102E+01, 0.29151E+01, 0.29200E+01, 0.29248E+01, & - & 0.29297E+01, 0.29345E+01, 0.29394E+01, 0.29442E+01, 0.29490E+01, & - & 0.29539E+01, 0.29587E+01, 0.29635E+01, 0.29683E+01, 0.29730E+01, & - & 0.29778E+01, 0.29826E+01, 0.29873E+01, 0.29921E+01, 0.29968E+01, & - & 0.30016E+01, 0.30063E+01, 0.30110E+01, 0.30157E+01, 0.30205E+01, & - & 0.30252E+01, 0.30298E+01, 0.30345E+01, 0.30392E+01, 0.30439E+01, & - & 0.30485E+01, 0.30532E+01, 0.30578E+01, 0.30625E+01, 0.30671E+01, & - & 0.30717E+01, 0.30764E+01, 0.30810E+01, 0.30856E+01, 0.30902E+01, & - & 0.30948E+01, 0.30994E+01, 0.31039E+01, 0.31085E+01, 0.31131E+01, & - & 0.31176E+01, 0.31222E+01, 0.31267E+01, 0.31312E+01, 0.31358E+01/ - - DATA (BNC11M(I),I=501,600)/ & - & 0.31403E+01, 0.31448E+01, 0.31493E+01, 0.31538E+01, 0.31583E+01, & - & 0.31628E+01, 0.31672E+01, 0.31717E+01, 0.31762E+01, 0.31806E+01, & - & 0.31851E+01, 0.31895E+01, 0.31940E+01, 0.31984E+01, 0.32028E+01, & - & 0.32072E+01, 0.32117E+01, 0.32161E+01, 0.32205E+01, 0.32248E+01, & - & 0.32292E+01, 0.32336E+01, 0.32380E+01, 0.32423E+01, 0.32467E+01, & - & 0.32510E+01, 0.32554E+01, 0.32597E+01, 0.32641E+01, 0.32684E+01, & - & 0.32727E+01, 0.32770E+01, 0.32813E+01, 0.32856E+01, 0.32899E+01, & - & 0.32942E+01, 0.32985E+01, 0.33028E+01, 0.33070E+01, 0.33113E+01, & - & 0.33155E+01, 0.33198E+01, 0.33240E+01, 0.33283E+01, 0.33325E+01, & - & 0.33367E+01, 0.33409E+01, 0.33451E+01, 0.33493E+01, 0.33535E+01, & - & 0.33577E+01, 0.33619E+01, 0.33661E+01, 0.33703E+01, 0.33744E+01, & - & 0.33786E+01, 0.33828E+01, 0.33869E+01, 0.33911E+01, 0.33952E+01, & - & 0.33993E+01, 0.34035E+01, 0.34076E+01, 0.34117E+01, 0.34158E+01, & - & 0.34199E+01, 0.34240E+01, 0.34281E+01, 0.34322E+01, 0.34363E+01, & - & 0.34403E+01, 0.34444E+01, 0.34485E+01, 0.34525E+01, 0.34566E+01, & - & 0.34606E+01, 0.34647E+01, 0.34687E+01, 0.34727E+01, 0.34767E+01, & - & 0.34808E+01, 0.34848E+01, 0.34888E+01, 0.34928E+01, 0.34968E+01, & - & 0.35008E+01, 0.35047E+01, 0.35087E+01, 0.35127E+01, 0.35167E+01, & - & 0.35206E+01, 0.35246E+01, 0.35285E+01, 0.35325E+01, 0.35364E+01, & - & 0.35403E+01, 0.35443E+01, 0.35482E+01, 0.35521E+01, 0.35560E+01/ - - DATA (BNC11M(I),I=601,700)/ & - & 0.35979E+01, 0.36362E+01, 0.36739E+01, 0.37112E+01, 0.37479E+01, & - & 0.37842E+01, 0.38200E+01, 0.38554E+01, 0.38903E+01, 0.39247E+01, & - & 0.39588E+01, 0.39924E+01, 0.40256E+01, 0.40584E+01, 0.40909E+01, & - & 0.41229E+01, 0.41546E+01, 0.41859E+01, 0.42168E+01, 0.42474E+01, & - & 0.42776E+01, 0.43075E+01, 0.43371E+01, 0.43664E+01, 0.43953E+01, & - & 0.44239E+01, 0.44522E+01, 0.44802E+01, 0.45079E+01, 0.45353E+01, & - & 0.45624E+01, 0.45893E+01, 0.46158E+01, 0.46421E+01, 0.46681E+01, & - & 0.46939E+01, 0.47194E+01, 0.47447E+01, 0.47697E+01, 0.47944E+01, & - & 0.48190E+01, 0.48432E+01, 0.48673E+01, 0.48911E+01, 0.49147E+01, & - & 0.49381E+01, 0.49612E+01, 0.49842E+01, 0.50069E+01, 0.50294E+01, & - & 0.50517E+01, 0.50738E+01, 0.50958E+01, 0.51175E+01, 0.51390E+01, & - & 0.51603E+01, 0.51815E+01, 0.52024E+01, 0.52232E+01, 0.52438E+01, & - & 0.52643E+01, 0.52845E+01, 0.53046E+01, 0.53245E+01, 0.53442E+01, & - & 0.53638E+01, 0.53832E+01, 0.54025E+01, 0.54216E+01, 0.54405E+01, & - & 0.54593E+01, 0.54779E+01, 0.54964E+01, 0.55147E+01, 0.55329E+01, & - & 0.55510E+01, 0.55689E+01, 0.55866E+01, 0.56043E+01, 0.56217E+01, & - & 0.56391E+01, 0.56563E+01, 0.56734E+01, 0.56903E+01, 0.57072E+01, & - & 0.57239E+01, 0.57404E+01, 0.57569E+01, 0.57732E+01, 0.57894E+01, & - & 0.58055E+01, 0.58215E+01, 0.58373E+01, 0.58530E+01, 0.58687E+01, & - & 0.58842E+01, 0.58996E+01, 0.59148E+01, 0.59300E+01, 0.59451E+01/ - - DATA (BNC11M(I),I=701,741)/ & - & 0.59600E+01, 0.59749E+01, 0.59896E+01, 0.60043E+01, 0.60188E+01, & - & 0.60333E+01, 0.60476E+01, 0.60619E+01, 0.60760E+01, 0.60901E+01, & - & 0.61040E+01, 0.61179E+01, 0.61316E+01, 0.61453E+01, 0.61589E+01, & - & 0.61724E+01, 0.61858E+01, 0.61991E+01, 0.62123E+01, 0.62254E+01, & - & 0.62385E+01, 0.62514E+01, 0.62643E+01, 0.62771E+01, 0.62898E+01, & - & 0.63024E+01, 0.63150E+01, 0.63274E+01, 0.63398E+01, 0.63521E+01, & - & 0.63644E+01, 0.63765E+01, 0.63886E+01, 0.64006E+01, 0.64125E+01, & - & 0.64243E+01, 0.64361E+01, 0.64478E+01, 0.64594E+01, 0.64710E+01, & - & 0.64825E+01 & - & / -! -! *** NaHSO4 -! - DATA (BNC12M(I),I=1,100)/ & - &-0.48156E-01,-0.99449E-01,-0.12247E+00,-0.13741E+00,-0.14823E+00, & - &-0.15646E+00,-0.16292E+00,-0.16806E+00,-0.17218E+00,-0.17549E+00, & - &-0.17813E+00,-0.18020E+00,-0.18178E+00,-0.18294E+00,-0.18372E+00, & - &-0.18417E+00,-0.18432E+00,-0.18420E+00,-0.18383E+00,-0.18323E+00, & - &-0.18241E+00,-0.18140E+00,-0.18020E+00,-0.17883E+00,-0.17729E+00, & - &-0.17560E+00,-0.17376E+00,-0.17179E+00,-0.16968E+00,-0.16745E+00, & - &-0.16509E+00,-0.16262E+00,-0.16005E+00,-0.15737E+00,-0.15459E+00, & - &-0.15171E+00,-0.14874E+00,-0.14568E+00,-0.14254E+00,-0.13932E+00, & - &-0.13602E+00,-0.13265E+00,-0.12921E+00,-0.12569E+00,-0.12212E+00, & - &-0.11847E+00,-0.11477E+00,-0.11101E+00,-0.10719E+00,-0.10332E+00, & - &-0.99401E-01,-0.95428E-01,-0.91408E-01,-0.87340E-01,-0.83227E-01, & - &-0.79071E-01,-0.74872E-01,-0.70632E-01,-0.66351E-01,-0.62032E-01, & - &-0.57674E-01,-0.53279E-01,-0.48846E-01,-0.44378E-01,-0.39874E-01, & - &-0.35334E-01,-0.30759E-01,-0.26149E-01,-0.21504E-01,-0.16825E-01, & - &-0.12111E-01,-0.73619E-02,-0.25784E-02, 0.22401E-02, 0.70935E-02, & - & 0.11982E-01, 0.16906E-01, 0.21866E-01, 0.26861E-01, 0.31892E-01, & - & 0.36958E-01, 0.42061E-01, 0.47200E-01, 0.52375E-01, 0.57586E-01, & - & 0.62833E-01, 0.68116E-01, 0.73434E-01, 0.78787E-01, 0.84176E-01, & - & 0.89598E-01, 0.95055E-01, 0.10054E+00, 0.10607E+00, 0.11162E+00, & - & 0.11721E+00, 0.12282E+00, 0.12847E+00, 0.13414E+00, 0.13984E+00/ - - DATA (BNC12M(I),I=101,200)/ & - & 0.14556E+00, 0.15132E+00, 0.15709E+00, 0.16289E+00, 0.16871E+00, & - & 0.17454E+00, 0.18040E+00, 0.18627E+00, 0.19216E+00, 0.19807E+00, & - & 0.20399E+00, 0.20992E+00, 0.21586E+00, 0.22181E+00, 0.22777E+00, & - & 0.23374E+00, 0.23971E+00, 0.24569E+00, 0.25168E+00, 0.25766E+00, & - & 0.26365E+00, 0.26964E+00, 0.27563E+00, 0.28162E+00, 0.28761E+00, & - & 0.29360E+00, 0.29958E+00, 0.30556E+00, 0.31153E+00, 0.31750E+00, & - & 0.32347E+00, 0.32943E+00, 0.33538E+00, 0.34133E+00, 0.34727E+00, & - & 0.35320E+00, 0.35912E+00, 0.36504E+00, 0.37094E+00, 0.37684E+00, & - & 0.38273E+00, 0.38861E+00, 0.39448E+00, 0.40034E+00, 0.40618E+00, & - & 0.41202E+00, 0.41785E+00, 0.42367E+00, 0.42947E+00, 0.43527E+00, & - & 0.44105E+00, 0.44683E+00, 0.45259E+00, 0.45834E+00, 0.46408E+00, & - & 0.46981E+00, 0.47552E+00, 0.48123E+00, 0.48692E+00, 0.49260E+00, & - & 0.49827E+00, 0.50393E+00, 0.50957E+00, 0.51520E+00, 0.52083E+00, & - & 0.52644E+00, 0.53203E+00, 0.53762E+00, 0.54319E+00, 0.54875E+00, & - & 0.55430E+00, 0.55984E+00, 0.56537E+00, 0.57088E+00, 0.57638E+00, & - & 0.58187E+00, 0.58734E+00, 0.59281E+00, 0.59826E+00, 0.60370E+00, & - & 0.60913E+00, 0.61455E+00, 0.61995E+00, 0.62534E+00, 0.63072E+00, & - & 0.63609E+00, 0.64145E+00, 0.64679E+00, 0.65212E+00, 0.65744E+00, & - & 0.66275E+00, 0.66805E+00, 0.67333E+00, 0.67860E+00, 0.68387E+00, & - & 0.68911E+00, 0.69435E+00, 0.69958E+00, 0.70479E+00, 0.70999E+00/ - - DATA (BNC12M(I),I=201,300)/ & - & 0.71518E+00, 0.72036E+00, 0.72553E+00, 0.73068E+00, 0.73582E+00, & - & 0.74096E+00, 0.74608E+00, 0.75118E+00, 0.75628E+00, 0.76137E+00, & - & 0.76644E+00, 0.77150E+00, 0.77656E+00, 0.78160E+00, 0.78663E+00, & - & 0.79164E+00, 0.79665E+00, 0.80164E+00, 0.80663E+00, 0.81160E+00, & - & 0.81656E+00, 0.82152E+00, 0.82646E+00, 0.83138E+00, 0.83630E+00, & - & 0.84121E+00, 0.84611E+00, 0.85099E+00, 0.85587E+00, 0.86073E+00, & - & 0.86558E+00, 0.87042E+00, 0.87526E+00, 0.88008E+00, 0.88489E+00, & - & 0.88969E+00, 0.89448E+00, 0.89926E+00, 0.90403E+00, 0.90878E+00, & - & 0.91353E+00, 0.91827E+00, 0.92300E+00, 0.92771E+00, 0.93242E+00, & - & 0.93711E+00, 0.94180E+00, 0.94648E+00, 0.95114E+00, 0.95580E+00, & - & 0.96044E+00, 0.96508E+00, 0.96971E+00, 0.97432E+00, 0.97893E+00, & - & 0.98352E+00, 0.98811E+00, 0.99269E+00, 0.99725E+00, 0.10018E+01, & - & 0.10064E+01, 0.10109E+01, 0.10154E+01, 0.10199E+01, 0.10245E+01, & - & 0.10290E+01, 0.10334E+01, 0.10379E+01, 0.10424E+01, 0.10469E+01, & - & 0.10513E+01, 0.10558E+01, 0.10602E+01, 0.10646E+01, 0.10690E+01, & - & 0.10734E+01, 0.10778E+01, 0.10822E+01, 0.10866E+01, 0.10910E+01, & - & 0.10953E+01, 0.10997E+01, 0.11040E+01, 0.11084E+01, 0.11127E+01, & - & 0.11170E+01, 0.11213E+01, 0.11256E+01, 0.11299E+01, 0.11342E+01, & - & 0.11384E+01, 0.11427E+01, 0.11470E+01, 0.11512E+01, 0.11554E+01, & - & 0.11597E+01, 0.11639E+01, 0.11681E+01, 0.11723E+01, 0.11765E+01/ - - DATA (BNC12M(I),I=301,400)/ & - & 0.11807E+01, 0.11849E+01, 0.11890E+01, 0.11932E+01, 0.11974E+01, & - & 0.12015E+01, 0.12056E+01, 0.12098E+01, 0.12139E+01, 0.12180E+01, & - & 0.12221E+01, 0.12262E+01, 0.12303E+01, 0.12344E+01, 0.12384E+01, & - & 0.12425E+01, 0.12466E+01, 0.12506E+01, 0.12547E+01, 0.12587E+01, & - & 0.12627E+01, 0.12667E+01, 0.12707E+01, 0.12747E+01, 0.12787E+01, & - & 0.12827E+01, 0.12867E+01, 0.12907E+01, 0.12946E+01, 0.12986E+01, & - & 0.13025E+01, 0.13065E+01, 0.13104E+01, 0.13143E+01, 0.13182E+01, & - & 0.13221E+01, 0.13261E+01, 0.13299E+01, 0.13338E+01, 0.13377E+01, & - & 0.13416E+01, 0.13455E+01, 0.13493E+01, 0.13532E+01, 0.13570E+01, & - & 0.13608E+01, 0.13647E+01, 0.13685E+01, 0.13723E+01, 0.13761E+01, & - & 0.13799E+01, 0.13837E+01, 0.13875E+01, 0.13913E+01, 0.13950E+01, & - & 0.13988E+01, 0.14026E+01, 0.14063E+01, 0.14101E+01, 0.14138E+01, & - & 0.14175E+01, 0.14213E+01, 0.14250E+01, 0.14287E+01, 0.14324E+01, & - & 0.14361E+01, 0.14398E+01, 0.14435E+01, 0.14471E+01, 0.14508E+01, & - & 0.14545E+01, 0.14581E+01, 0.14618E+01, 0.14654E+01, 0.14690E+01, & - & 0.14727E+01, 0.14763E+01, 0.14799E+01, 0.14835E+01, 0.14871E+01, & - & 0.14907E+01, 0.14943E+01, 0.14979E+01, 0.15015E+01, 0.15051E+01, & - & 0.15086E+01, 0.15122E+01, 0.15157E+01, 0.15193E+01, 0.15228E+01, & - & 0.15264E+01, 0.15299E+01, 0.15334E+01, 0.15369E+01, 0.15404E+01, & - & 0.15439E+01, 0.15474E+01, 0.15509E+01, 0.15544E+01, 0.15579E+01/ - - DATA (BNC12M(I),I=401,500)/ & - & 0.15613E+01, 0.15648E+01, 0.15683E+01, 0.15717E+01, 0.15752E+01, & - & 0.15786E+01, 0.15821E+01, 0.15855E+01, 0.15889E+01, 0.15923E+01, & - & 0.15957E+01, 0.15991E+01, 0.16025E+01, 0.16059E+01, 0.16093E+01, & - & 0.16127E+01, 0.16161E+01, 0.16195E+01, 0.16228E+01, 0.16262E+01, & - & 0.16295E+01, 0.16329E+01, 0.16362E+01, 0.16396E+01, 0.16429E+01, & - & 0.16462E+01, 0.16495E+01, 0.16529E+01, 0.16562E+01, 0.16595E+01, & - & 0.16628E+01, 0.16661E+01, 0.16693E+01, 0.16726E+01, 0.16759E+01, & - & 0.16792E+01, 0.16824E+01, 0.16857E+01, 0.16890E+01, 0.16922E+01, & - & 0.16954E+01, 0.16987E+01, 0.17019E+01, 0.17051E+01, 0.17084E+01, & - & 0.17116E+01, 0.17148E+01, 0.17180E+01, 0.17212E+01, 0.17244E+01, & - & 0.17276E+01, 0.17308E+01, 0.17339E+01, 0.17371E+01, 0.17403E+01, & - & 0.17434E+01, 0.17466E+01, 0.17498E+01, 0.17529E+01, 0.17561E+01, & - & 0.17592E+01, 0.17623E+01, 0.17655E+01, 0.17686E+01, 0.17717E+01, & - & 0.17748E+01, 0.17779E+01, 0.17810E+01, 0.17841E+01, 0.17872E+01, & - & 0.17903E+01, 0.17934E+01, 0.17965E+01, 0.17995E+01, 0.18026E+01, & - & 0.18057E+01, 0.18087E+01, 0.18118E+01, 0.18148E+01, 0.18179E+01, & - & 0.18209E+01, 0.18239E+01, 0.18270E+01, 0.18300E+01, 0.18330E+01, & - & 0.18360E+01, 0.18390E+01, 0.18420E+01, 0.18450E+01, 0.18480E+01, & - & 0.18510E+01, 0.18540E+01, 0.18570E+01, 0.18600E+01, 0.18629E+01, & - & 0.18659E+01, 0.18689E+01, 0.18718E+01, 0.18748E+01, 0.18777E+01/ - - DATA (BNC12M(I),I=501,600)/ & - & 0.18807E+01, 0.18836E+01, 0.18865E+01, 0.18895E+01, 0.18924E+01, & - & 0.18953E+01, 0.18982E+01, 0.19012E+01, 0.19041E+01, 0.19070E+01, & - & 0.19099E+01, 0.19128E+01, 0.19157E+01, 0.19185E+01, 0.19214E+01, & - & 0.19243E+01, 0.19272E+01, 0.19300E+01, 0.19329E+01, 0.19358E+01, & - & 0.19386E+01, 0.19415E+01, 0.19443E+01, 0.19472E+01, 0.19500E+01, & - & 0.19528E+01, 0.19557E+01, 0.19585E+01, 0.19613E+01, 0.19641E+01, & - & 0.19669E+01, 0.19697E+01, 0.19725E+01, 0.19753E+01, 0.19781E+01, & - & 0.19809E+01, 0.19837E+01, 0.19865E+01, 0.19893E+01, 0.19921E+01, & - & 0.19948E+01, 0.19976E+01, 0.20004E+01, 0.20031E+01, 0.20059E+01, & - & 0.20086E+01, 0.20114E+01, 0.20141E+01, 0.20168E+01, 0.20196E+01, & - & 0.20223E+01, 0.20250E+01, 0.20278E+01, 0.20305E+01, 0.20332E+01, & - & 0.20359E+01, 0.20386E+01, 0.20413E+01, 0.20440E+01, 0.20467E+01, & - & 0.20494E+01, 0.20521E+01, 0.20548E+01, 0.20574E+01, 0.20601E+01, & - & 0.20628E+01, 0.20654E+01, 0.20681E+01, 0.20708E+01, 0.20734E+01, & - & 0.20761E+01, 0.20787E+01, 0.20814E+01, 0.20840E+01, 0.20866E+01, & - & 0.20893E+01, 0.20919E+01, 0.20945E+01, 0.20971E+01, 0.20998E+01, & - & 0.21024E+01, 0.21050E+01, 0.21076E+01, 0.21102E+01, 0.21128E+01, & - & 0.21154E+01, 0.21180E+01, 0.21206E+01, 0.21231E+01, 0.21257E+01, & - & 0.21283E+01, 0.21309E+01, 0.21334E+01, 0.21360E+01, 0.21386E+01, & - & 0.21411E+01, 0.21437E+01, 0.21462E+01, 0.21488E+01, 0.21513E+01/ - - DATA (BNC12M(I),I=601,700)/ & - & 0.21786E+01, 0.22034E+01, 0.22280E+01, 0.22522E+01, 0.22760E+01, & - & 0.22996E+01, 0.23228E+01, 0.23457E+01, 0.23684E+01, 0.23907E+01, & - & 0.24128E+01, 0.24345E+01, 0.24560E+01, 0.24773E+01, 0.24982E+01, & - & 0.25190E+01, 0.25394E+01, 0.25596E+01, 0.25796E+01, 0.25993E+01, & - & 0.26188E+01, 0.26381E+01, 0.26571E+01, 0.26760E+01, 0.26946E+01, & - & 0.27130E+01, 0.27312E+01, 0.27491E+01, 0.27669E+01, 0.27845E+01, & - & 0.28019E+01, 0.28191E+01, 0.28361E+01, 0.28529E+01, 0.28696E+01, & - & 0.28860E+01, 0.29023E+01, 0.29185E+01, 0.29344E+01, 0.29502E+01, & - & 0.29658E+01, 0.29813E+01, 0.29966E+01, 0.30117E+01, 0.30267E+01, & - & 0.30415E+01, 0.30562E+01, 0.30708E+01, 0.30852E+01, 0.30994E+01, & - & 0.31136E+01, 0.31275E+01, 0.31414E+01, 0.31551E+01, 0.31687E+01, & - & 0.31821E+01, 0.31954E+01, 0.32086E+01, 0.32217E+01, 0.32346E+01, & - & 0.32474E+01, 0.32601E+01, 0.32727E+01, 0.32852E+01, 0.32976E+01, & - & 0.33098E+01, 0.33219E+01, 0.33339E+01, 0.33459E+01, 0.33577E+01, & - & 0.33694E+01, 0.33810E+01, 0.33924E+01, 0.34038E+01, 0.34151E+01, & - & 0.34263E+01, 0.34374E+01, 0.34484E+01, 0.34593E+01, 0.34701E+01, & - & 0.34808E+01, 0.34914E+01, 0.35020E+01, 0.35124E+01, 0.35228E+01, & - & 0.35330E+01, 0.35432E+01, 0.35533E+01, 0.35633E+01, 0.35732E+01, & - & 0.35831E+01, 0.35928E+01, 0.36025E+01, 0.36121E+01, 0.36216E+01, & - & 0.36311E+01, 0.36405E+01, 0.36497E+01, 0.36590E+01, 0.36681E+01/ - - DATA (BNC12M(I),I=701,741)/ & - & 0.36772E+01, 0.36862E+01, 0.36951E+01, 0.37039E+01, 0.37127E+01, & - & 0.37214E+01, 0.37301E+01, 0.37386E+01, 0.37472E+01, 0.37556E+01, & - & 0.37640E+01, 0.37723E+01, 0.37805E+01, 0.37887E+01, 0.37968E+01, & - & 0.38049E+01, 0.38129E+01, 0.38208E+01, 0.38287E+01, 0.38365E+01, & - & 0.38442E+01, 0.38519E+01, 0.38595E+01, 0.38671E+01, 0.38746E+01, & - & 0.38821E+01, 0.38895E+01, 0.38968E+01, 0.39041E+01, 0.39114E+01, & - & 0.39186E+01, 0.39257E+01, 0.39328E+01, 0.39398E+01, 0.39468E+01, & - & 0.39537E+01, 0.39606E+01, 0.39674E+01, 0.39742E+01, 0.39809E+01, & - & 0.39875E+01 & - & / -! -! *** (NH4)3H(SO4)2 -! - DATA (BNC13M(I),I=1,100)/ & - &-0.79945E-01,-0.17380E+00,-0.22078E+00,-0.25407E+00,-0.28025E+00, & - &-0.30198E+00,-0.32062E+00,-0.33698E+00,-0.35158E+00,-0.36476E+00, & - &-0.37680E+00,-0.38787E+00,-0.39813E+00,-0.40767E+00,-0.41660E+00, & - &-0.42499E+00,-0.43289E+00,-0.44036E+00,-0.44744E+00,-0.45416E+00, & - &-0.46056E+00,-0.46665E+00,-0.47248E+00,-0.47805E+00,-0.48338E+00, & - &-0.48850E+00,-0.49341E+00,-0.49812E+00,-0.50265E+00,-0.50701E+00, & - &-0.51121E+00,-0.51525E+00,-0.51915E+00,-0.52291E+00,-0.52654E+00, & - &-0.53004E+00,-0.53342E+00,-0.53669E+00,-0.53985E+00,-0.54290E+00, & - &-0.54585E+00,-0.54871E+00,-0.55147E+00,-0.55415E+00,-0.55674E+00, & - &-0.55924E+00,-0.56167E+00,-0.56402E+00,-0.56630E+00,-0.56851E+00, & - &-0.57065E+00,-0.57272E+00,-0.57473E+00,-0.57668E+00,-0.57857E+00, & - &-0.58041E+00,-0.58219E+00,-0.58391E+00,-0.58559E+00,-0.58721E+00, & - &-0.58879E+00,-0.59031E+00,-0.59180E+00,-0.59324E+00,-0.59464E+00, & - &-0.59599E+00,-0.59731E+00,-0.59859E+00,-0.59983E+00,-0.60103E+00, & - &-0.60220E+00,-0.60333E+00,-0.60443E+00,-0.60550E+00,-0.60653E+00, & - &-0.60753E+00,-0.60850E+00,-0.60945E+00,-0.61036E+00,-0.61124E+00, & - &-0.61209E+00,-0.61292E+00,-0.61372E+00,-0.61449E+00,-0.61524E+00, & - &-0.61596E+00,-0.61666E+00,-0.61733E+00,-0.61798E+00,-0.61861E+00, & - &-0.61921E+00,-0.61979E+00,-0.62035E+00,-0.62089E+00,-0.62141E+00, & - &-0.62190E+00,-0.62238E+00,-0.62284E+00,-0.62328E+00,-0.62370E+00/ - - DATA (BNC13M(I),I=101,200)/ & - &-0.62410E+00,-0.62449E+00,-0.62486E+00,-0.62521E+00,-0.62555E+00, & - &-0.62587E+00,-0.62618E+00,-0.62648E+00,-0.62676E+00,-0.62702E+00, & - &-0.62728E+00,-0.62752E+00,-0.62776E+00,-0.62798E+00,-0.62819E+00, & - &-0.62839E+00,-0.62858E+00,-0.62876E+00,-0.62893E+00,-0.62910E+00, & - &-0.62925E+00,-0.62940E+00,-0.62954E+00,-0.62967E+00,-0.62980E+00, & - &-0.62992E+00,-0.63003E+00,-0.63014E+00,-0.63024E+00,-0.63034E+00, & - &-0.63043E+00,-0.63052E+00,-0.63060E+00,-0.63068E+00,-0.63075E+00, & - &-0.63082E+00,-0.63089E+00,-0.63095E+00,-0.63101E+00,-0.63106E+00, & - &-0.63111E+00,-0.63116E+00,-0.63121E+00,-0.63125E+00,-0.63129E+00, & - &-0.63133E+00,-0.63136E+00,-0.63140E+00,-0.63143E+00,-0.63146E+00, & - &-0.63148E+00,-0.63151E+00,-0.63153E+00,-0.63155E+00,-0.63157E+00, & - &-0.63159E+00,-0.63161E+00,-0.63162E+00,-0.63164E+00,-0.63165E+00, & - &-0.63166E+00,-0.63167E+00,-0.63168E+00,-0.63169E+00,-0.63170E+00, & - &-0.63170E+00,-0.63171E+00,-0.63171E+00,-0.63172E+00,-0.63172E+00, & - &-0.63173E+00,-0.63173E+00,-0.63173E+00,-0.63173E+00,-0.63173E+00, & - &-0.63174E+00,-0.63174E+00,-0.63174E+00,-0.63174E+00,-0.63174E+00, & - &-0.63174E+00,-0.63174E+00,-0.63174E+00,-0.63174E+00,-0.63174E+00, & - &-0.63173E+00,-0.63173E+00,-0.63173E+00,-0.63173E+00,-0.63173E+00, & - &-0.63173E+00,-0.63173E+00,-0.63173E+00,-0.63173E+00,-0.63173E+00, & - &-0.63173E+00,-0.63173E+00,-0.63174E+00,-0.63174E+00,-0.63174E+00/ - - DATA (BNC13M(I),I=201,300)/ & - &-0.63174E+00,-0.63174E+00,-0.63175E+00,-0.63175E+00,-0.63175E+00, & - &-0.63176E+00,-0.63176E+00,-0.63176E+00,-0.63177E+00,-0.63178E+00, & - &-0.63178E+00,-0.63179E+00,-0.63180E+00,-0.63180E+00,-0.63181E+00, & - &-0.63182E+00,-0.63183E+00,-0.63184E+00,-0.63185E+00,-0.63186E+00, & - &-0.63187E+00,-0.63188E+00,-0.63190E+00,-0.63191E+00,-0.63192E+00, & - &-0.63194E+00,-0.63195E+00,-0.63197E+00,-0.63199E+00,-0.63200E+00, & - &-0.63202E+00,-0.63204E+00,-0.63206E+00,-0.63208E+00,-0.63210E+00, & - &-0.63212E+00,-0.63214E+00,-0.63216E+00,-0.63219E+00,-0.63221E+00, & - &-0.63223E+00,-0.63226E+00,-0.63229E+00,-0.63231E+00,-0.63234E+00, & - &-0.63237E+00,-0.63240E+00,-0.63243E+00,-0.63246E+00,-0.63249E+00, & - &-0.63252E+00,-0.63255E+00,-0.63259E+00,-0.63262E+00,-0.63266E+00, & - &-0.63269E+00,-0.63273E+00,-0.63277E+00,-0.63280E+00,-0.63284E+00, & - &-0.63288E+00,-0.63292E+00,-0.63296E+00,-0.63301E+00,-0.63305E+00, & - &-0.63309E+00,-0.63314E+00,-0.63318E+00,-0.63323E+00,-0.63327E+00, & - &-0.63332E+00,-0.63337E+00,-0.63342E+00,-0.63347E+00,-0.63352E+00, & - &-0.63357E+00,-0.63362E+00,-0.63367E+00,-0.63373E+00,-0.63378E+00, & - &-0.63384E+00,-0.63389E+00,-0.63395E+00,-0.63401E+00,-0.63407E+00, & - &-0.63413E+00,-0.63419E+00,-0.63425E+00,-0.63431E+00,-0.63437E+00, & - &-0.63443E+00,-0.63450E+00,-0.63456E+00,-0.63463E+00,-0.63470E+00, & - &-0.63476E+00,-0.63483E+00,-0.63490E+00,-0.63497E+00,-0.63504E+00/ - - DATA (BNC13M(I),I=301,400)/ & - &-0.63511E+00,-0.63518E+00,-0.63526E+00,-0.63533E+00,-0.63540E+00, & - &-0.63548E+00,-0.63556E+00,-0.63563E+00,-0.63571E+00,-0.63579E+00, & - &-0.63587E+00,-0.63595E+00,-0.63603E+00,-0.63611E+00,-0.63619E+00, & - &-0.63627E+00,-0.63636E+00,-0.63644E+00,-0.63653E+00,-0.63661E+00, & - &-0.63670E+00,-0.63679E+00,-0.63688E+00,-0.63697E+00,-0.63706E+00, & - &-0.63715E+00,-0.63724E+00,-0.63733E+00,-0.63743E+00,-0.63752E+00, & - &-0.63761E+00,-0.63771E+00,-0.63781E+00,-0.63790E+00,-0.63800E+00, & - &-0.63810E+00,-0.63820E+00,-0.63830E+00,-0.63840E+00,-0.63850E+00, & - &-0.63860E+00,-0.63871E+00,-0.63881E+00,-0.63892E+00,-0.63902E+00, & - &-0.63913E+00,-0.63923E+00,-0.63934E+00,-0.63945E+00,-0.63956E+00, & - &-0.63967E+00,-0.63978E+00,-0.63989E+00,-0.64000E+00,-0.64012E+00, & - &-0.64023E+00,-0.64034E+00,-0.64046E+00,-0.64058E+00,-0.64069E+00, & - &-0.64081E+00,-0.64093E+00,-0.64105E+00,-0.64117E+00,-0.64129E+00, & - &-0.64141E+00,-0.64153E+00,-0.64165E+00,-0.64177E+00,-0.64190E+00, & - &-0.64202E+00,-0.64215E+00,-0.64228E+00,-0.64240E+00,-0.64253E+00, & - &-0.64266E+00,-0.64279E+00,-0.64292E+00,-0.64305E+00,-0.64318E+00, & - &-0.64331E+00,-0.64344E+00,-0.64358E+00,-0.64371E+00,-0.64385E+00, & - &-0.64398E+00,-0.64412E+00,-0.64425E+00,-0.64439E+00,-0.64453E+00, & - &-0.64467E+00,-0.64481E+00,-0.64495E+00,-0.64509E+00,-0.64523E+00, & - &-0.64537E+00,-0.64552E+00,-0.64566E+00,-0.64581E+00,-0.64595E+00/ - - DATA (BNC13M(I),I=401,500)/ & - &-0.64610E+00,-0.64624E+00,-0.64639E+00,-0.64654E+00,-0.64669E+00, & - &-0.64684E+00,-0.64699E+00,-0.64714E+00,-0.64729E+00,-0.64744E+00, & - &-0.64759E+00,-0.64775E+00,-0.64790E+00,-0.64805E+00,-0.64821E+00, & - &-0.64837E+00,-0.64852E+00,-0.64868E+00,-0.64884E+00,-0.64900E+00, & - &-0.64916E+00,-0.64932E+00,-0.64948E+00,-0.64964E+00,-0.64980E+00, & - &-0.64996E+00,-0.65013E+00,-0.65029E+00,-0.65045E+00,-0.65062E+00, & - &-0.65079E+00,-0.65095E+00,-0.65112E+00,-0.65129E+00,-0.65146E+00, & - &-0.65163E+00,-0.65180E+00,-0.65197E+00,-0.65214E+00,-0.65231E+00, & - &-0.65248E+00,-0.65265E+00,-0.65283E+00,-0.65300E+00,-0.65318E+00, & - &-0.65335E+00,-0.65353E+00,-0.65370E+00,-0.65388E+00,-0.65406E+00, & - &-0.65424E+00,-0.65442E+00,-0.65460E+00,-0.65478E+00,-0.65496E+00, & - &-0.65514E+00,-0.65532E+00,-0.65551E+00,-0.65569E+00,-0.65587E+00, & - &-0.65606E+00,-0.65624E+00,-0.65643E+00,-0.65662E+00,-0.65680E+00, & - &-0.65699E+00,-0.65718E+00,-0.65737E+00,-0.65756E+00,-0.65775E+00, & - &-0.65794E+00,-0.65813E+00,-0.65832E+00,-0.65852E+00,-0.65871E+00, & - &-0.65890E+00,-0.65910E+00,-0.65929E+00,-0.65949E+00,-0.65968E+00, & - &-0.65988E+00,-0.66008E+00,-0.66028E+00,-0.66047E+00,-0.66067E+00, & - &-0.66087E+00,-0.66107E+00,-0.66127E+00,-0.66147E+00,-0.66168E+00, & - &-0.66188E+00,-0.66208E+00,-0.66229E+00,-0.66249E+00,-0.66269E+00, & - &-0.66290E+00,-0.66311E+00,-0.66331E+00,-0.66352E+00,-0.66373E+00/ - - DATA (BNC13M(I),I=501,600)/ & - &-0.66394E+00,-0.66414E+00,-0.66435E+00,-0.66456E+00,-0.66477E+00, & - &-0.66499E+00,-0.66520E+00,-0.66541E+00,-0.66562E+00,-0.66583E+00, & - &-0.66605E+00,-0.66626E+00,-0.66648E+00,-0.66669E+00,-0.66691E+00, & - &-0.66713E+00,-0.66734E+00,-0.66756E+00,-0.66778E+00,-0.66800E+00, & - &-0.66822E+00,-0.66844E+00,-0.66866E+00,-0.66888E+00,-0.66910E+00, & - &-0.66932E+00,-0.66954E+00,-0.66977E+00,-0.66999E+00,-0.67021E+00, & - &-0.67044E+00,-0.67066E+00,-0.67089E+00,-0.67111E+00,-0.67134E+00, & - &-0.67157E+00,-0.67180E+00,-0.67202E+00,-0.67225E+00,-0.67248E+00, & - &-0.67271E+00,-0.67294E+00,-0.67317E+00,-0.67340E+00,-0.67364E+00, & - &-0.67387E+00,-0.67410E+00,-0.67434E+00,-0.67457E+00,-0.67480E+00, & - &-0.67504E+00,-0.67527E+00,-0.67551E+00,-0.67575E+00,-0.67598E+00, & - &-0.67622E+00,-0.67646E+00,-0.67670E+00,-0.67694E+00,-0.67718E+00, & - &-0.67742E+00,-0.67766E+00,-0.67790E+00,-0.67814E+00,-0.67838E+00, & - &-0.67862E+00,-0.67887E+00,-0.67911E+00,-0.67935E+00,-0.67960E+00, & - &-0.67984E+00,-0.68009E+00,-0.68033E+00,-0.68058E+00,-0.68083E+00, & - &-0.68107E+00,-0.68132E+00,-0.68157E+00,-0.68182E+00,-0.68207E+00, & - &-0.68232E+00,-0.68257E+00,-0.68282E+00,-0.68307E+00,-0.68332E+00, & - &-0.68357E+00,-0.68383E+00,-0.68408E+00,-0.68433E+00,-0.68459E+00, & - &-0.68484E+00,-0.68510E+00,-0.68535E+00,-0.68561E+00,-0.68586E+00, & - &-0.68612E+00,-0.68638E+00,-0.68664E+00,-0.68689E+00,-0.68715E+00/ - - DATA (BNC13M(I),I=601,700)/ & - &-0.68998E+00,-0.69264E+00,-0.69534E+00,-0.69809E+00,-0.70088E+00, & - &-0.70371E+00,-0.70659E+00,-0.70950E+00,-0.71245E+00,-0.71544E+00, & - &-0.71847E+00,-0.72154E+00,-0.72464E+00,-0.72778E+00,-0.73095E+00, & - &-0.73416E+00,-0.73741E+00,-0.74068E+00,-0.74399E+00,-0.74733E+00, & - &-0.75070E+00,-0.75411E+00,-0.75754E+00,-0.76101E+00,-0.76450E+00, & - &-0.76802E+00,-0.77157E+00,-0.77515E+00,-0.77876E+00,-0.78239E+00, & - &-0.78605E+00,-0.78974E+00,-0.79345E+00,-0.79719E+00,-0.80095E+00, & - &-0.80474E+00,-0.80855E+00,-0.81239E+00,-0.81625E+00,-0.82013E+00, & - &-0.82403E+00,-0.82796E+00,-0.83191E+00,-0.83588E+00,-0.83987E+00, & - &-0.84388E+00,-0.84792E+00,-0.85197E+00,-0.85604E+00,-0.86014E+00, & - &-0.86425E+00,-0.86838E+00,-0.87253E+00,-0.87670E+00,-0.88089E+00, & - &-0.88510E+00,-0.88932E+00,-0.89357E+00,-0.89782E+00,-0.90210E+00, & - &-0.90639E+00,-0.91070E+00,-0.91503E+00,-0.91937E+00,-0.92373E+00, & - &-0.92811E+00,-0.93250E+00,-0.93690E+00,-0.94132E+00,-0.94576E+00, & - &-0.95021E+00,-0.95467E+00,-0.95915E+00,-0.96364E+00,-0.96815E+00, & - &-0.97267E+00,-0.97721E+00,-0.98176E+00,-0.98632E+00,-0.99089E+00, & - &-0.99548E+00,-0.10001E+01,-0.10047E+01,-0.10093E+01,-0.10140E+01, & - &-0.10186E+01,-0.10233E+01,-0.10279E+01,-0.10326E+01,-0.10373E+01, & - &-0.10420E+01,-0.10468E+01,-0.10515E+01,-0.10562E+01,-0.10610E+01, & - &-0.10657E+01,-0.10705E+01,-0.10753E+01,-0.10801E+01,-0.10849E+01/ - - DATA (BNC13M(I),I=701,741)/ & - &-0.10897E+01,-0.10945E+01,-0.10994E+01,-0.11042E+01,-0.11091E+01, & - &-0.11139E+01,-0.11188E+01,-0.11237E+01,-0.11286E+01,-0.11335E+01, & - &-0.11384E+01,-0.11433E+01,-0.11483E+01,-0.11532E+01,-0.11582E+01, & - &-0.11631E+01,-0.11681E+01,-0.11730E+01,-0.11780E+01,-0.11830E+01, & - &-0.11880E+01,-0.11930E+01,-0.11980E+01,-0.12031E+01,-0.12081E+01, & - &-0.12131E+01,-0.12182E+01,-0.12232E+01,-0.12283E+01,-0.12333E+01, & - &-0.12384E+01,-0.12435E+01,-0.12486E+01,-0.12537E+01,-0.12588E+01, & - &-0.12639E+01,-0.12690E+01,-0.12741E+01,-0.12793E+01,-0.12844E+01, & - &-0.12896E+01 & - & / - ENDBLOCKDATA KMCF223 diff --git a/src/arome/chem/internals/data_kmcf248a.F b/src/arome/chem/internals/data_kmcf248a.F deleted file mode 100644 index 82425a269865b7d4d95914fb6346f9166149b6bf..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/data_kmcf248a.F +++ /dev/null @@ -1,2219 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/data_kmcf248a.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:30 $ -!----------------------------------------------------------------- - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA KMCF248A -! *** CONTAINS THE DATA FOR KUSSIK-MEISNER BINARY COEFFICIENT ARRAYS -! NEEDED IN SUBROUTINE KM -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA KMCF248 -! - IMPLICIT NONE -! -! *** Common block definition -! - INTEGER :: I - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M -! - COMMON /KMC248/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! -! *** NaCl -! - DATA (BNC01M(I),I=1,100)/ & - &-0.47484E-01,-0.98816E-01,-0.12198E+00,-0.13703E+00,-0.14791E+00, & - &-0.15621E+00,-0.16272E+00,-0.16794E+00,-0.17216E+00,-0.17559E+00, & - &-0.17838E+00,-0.18065E+00,-0.18247E+00,-0.18392E+00,-0.18504E+00, & - &-0.18588E+00,-0.18647E+00,-0.18685E+00,-0.18703E+00,-0.18705E+00, & - &-0.18691E+00,-0.18663E+00,-0.18623E+00,-0.18571E+00,-0.18510E+00, & - &-0.18440E+00,-0.18361E+00,-0.18275E+00,-0.18181E+00,-0.18082E+00, & - &-0.17977E+00,-0.17867E+00,-0.17752E+00,-0.17633E+00,-0.17510E+00, & - &-0.17383E+00,-0.17253E+00,-0.17121E+00,-0.16985E+00,-0.16848E+00, & - &-0.16708E+00,-0.16566E+00,-0.16423E+00,-0.16278E+00,-0.16131E+00, & - &-0.15984E+00,-0.15835E+00,-0.15685E+00,-0.15534E+00,-0.15383E+00, & - &-0.15230E+00,-0.15077E+00,-0.14924E+00,-0.14769E+00,-0.14614E+00, & - &-0.14459E+00,-0.14303E+00,-0.14147E+00,-0.13990E+00,-0.13832E+00, & - &-0.13674E+00,-0.13516E+00,-0.13357E+00,-0.13197E+00,-0.13037E+00, & - &-0.12876E+00,-0.12715E+00,-0.12553E+00,-0.12389E+00,-0.12226E+00, & - &-0.12061E+00,-0.11895E+00,-0.11728E+00,-0.11561E+00,-0.11392E+00, & - &-0.11222E+00,-0.11051E+00,-0.10878E+00,-0.10705E+00,-0.10530E+00, & - &-0.10354E+00,-0.10176E+00,-0.99968E-01,-0.98163E-01,-0.96343E-01, & - &-0.94509E-01,-0.92660E-01,-0.90795E-01,-0.88916E-01,-0.87022E-01, & - &-0.85112E-01,-0.83188E-01,-0.81249E-01,-0.79295E-01,-0.77327E-01, & - &-0.75345E-01,-0.73349E-01,-0.71339E-01,-0.69317E-01,-0.67281E-01/ - - DATA (BNC01M(I),I=101,200)/ & - &-0.65233E-01,-0.63173E-01,-0.61101E-01,-0.59019E-01,-0.56926E-01, & - &-0.54823E-01,-0.52710E-01,-0.50588E-01,-0.48457E-01,-0.46319E-01, & - &-0.44173E-01,-0.42019E-01,-0.39859E-01,-0.37694E-01,-0.35522E-01, & - &-0.33345E-01,-0.31164E-01,-0.28978E-01,-0.26789E-01,-0.24596E-01, & - &-0.22400E-01,-0.20201E-01,-0.18000E-01,-0.15797E-01,-0.13592E-01, & - &-0.11386E-01,-0.91787E-02,-0.69707E-02,-0.47622E-02,-0.25533E-02, & - &-0.34438E-03, 0.18645E-02, 0.40730E-02, 0.62810E-02, 0.84884E-02, & - & 0.10695E-01, 0.12900E-01, 0.15105E-01, 0.17308E-01, 0.19510E-01, & - & 0.21710E-01, 0.23909E-01, 0.26107E-01, 0.28302E-01, 0.30496E-01, & - & 0.32687E-01, 0.34877E-01, 0.37065E-01, 0.39251E-01, 0.41434E-01, & - & 0.43616E-01, 0.45795E-01, 0.47972E-01, 0.50147E-01, 0.52319E-01, & - & 0.54489E-01, 0.56656E-01, 0.58821E-01, 0.60983E-01, 0.63143E-01, & - & 0.65300E-01, 0.67455E-01, 0.69607E-01, 0.71757E-01, 0.73903E-01, & - & 0.76047E-01, 0.78189E-01, 0.80327E-01, 0.82463E-01, 0.84596E-01, & - & 0.86727E-01, 0.88854E-01, 0.90979E-01, 0.93101E-01, 0.95220E-01, & - & 0.97336E-01, 0.99449E-01, 0.10156E+00, 0.10367E+00, 0.10577E+00, & - & 0.10787E+00, 0.10997E+00, 0.11207E+00, 0.11416E+00, 0.11625E+00, & - & 0.11833E+00, 0.12042E+00, 0.12250E+00, 0.12458E+00, 0.12665E+00, & - & 0.12872E+00, 0.13079E+00, 0.13286E+00, 0.13492E+00, 0.13698E+00, & - & 0.13903E+00, 0.14108E+00, 0.14313E+00, 0.14518E+00, 0.14722E+00/ - - DATA (BNC01M(I),I=201,300)/ & - & 0.14926E+00, 0.15130E+00, 0.15334E+00, 0.15537E+00, 0.15739E+00, & - & 0.15942E+00, 0.16144E+00, 0.16346E+00, 0.16547E+00, 0.16748E+00, & - & 0.16949E+00, 0.17150E+00, 0.17350E+00, 0.17550E+00, 0.17749E+00, & - & 0.17949E+00, 0.18148E+00, 0.18346E+00, 0.18545E+00, 0.18743E+00, & - & 0.18940E+00, 0.19138E+00, 0.19335E+00, 0.19531E+00, 0.19728E+00, & - & 0.19924E+00, 0.20119E+00, 0.20315E+00, 0.20510E+00, 0.20705E+00, & - & 0.20899E+00, 0.21093E+00, 0.21287E+00, 0.21480E+00, 0.21674E+00, & - & 0.21866E+00, 0.22059E+00, 0.22251E+00, 0.22443E+00, 0.22635E+00, & - & 0.22826E+00, 0.23017E+00, 0.23207E+00, 0.23398E+00, 0.23588E+00, & - & 0.23777E+00, 0.23967E+00, 0.24156E+00, 0.24344E+00, 0.24533E+00, & - & 0.24721E+00, 0.24908E+00, 0.25096E+00, 0.25283E+00, 0.25470E+00, & - & 0.25656E+00, 0.25842E+00, 0.26028E+00, 0.26214E+00, 0.26399E+00, & - & 0.26584E+00, 0.26768E+00, 0.26953E+00, 0.27137E+00, 0.27320E+00, & - & 0.27504E+00, 0.27687E+00, 0.27869E+00, 0.28052E+00, 0.28234E+00, & - & 0.28415E+00, 0.28597E+00, 0.28778E+00, 0.28959E+00, 0.29139E+00, & - & 0.29320E+00, 0.29499E+00, 0.29679E+00, 0.29858E+00, 0.30037E+00, & - & 0.30216E+00, 0.30394E+00, 0.30572E+00, 0.30750E+00, 0.30928E+00, & - & 0.31105E+00, 0.31282E+00, 0.31458E+00, 0.31634E+00, 0.31810E+00, & - & 0.31986E+00, 0.32161E+00, 0.32336E+00, 0.32511E+00, 0.32686E+00, & - & 0.32860E+00, 0.33033E+00, 0.33207E+00, 0.33380E+00, 0.33553E+00/ - - DATA (BNC01M(I),I=301,400)/ & - & 0.33726E+00, 0.33898E+00, 0.34070E+00, 0.34242E+00, 0.34413E+00, & - & 0.34585E+00, 0.34755E+00, 0.34926E+00, 0.35096E+00, 0.35266E+00, & - & 0.35436E+00, 0.35605E+00, 0.35775E+00, 0.35943E+00, 0.36112E+00, & - & 0.36280E+00, 0.36448E+00, 0.36616E+00, 0.36783E+00, 0.36950E+00, & - & 0.37117E+00, 0.37284E+00, 0.37450E+00, 0.37616E+00, 0.37782E+00, & - & 0.37947E+00, 0.38112E+00, 0.38277E+00, 0.38442E+00, 0.38606E+00, & - & 0.38770E+00, 0.38934E+00, 0.39097E+00, 0.39260E+00, 0.39423E+00, & - & 0.39586E+00, 0.39748E+00, 0.39910E+00, 0.40072E+00, 0.40233E+00, & - & 0.40394E+00, 0.40555E+00, 0.40716E+00, 0.40876E+00, 0.41037E+00, & - & 0.41196E+00, 0.41356E+00, 0.41515E+00, 0.41674E+00, 0.41833E+00, & - & 0.41992E+00, 0.42150E+00, 0.42308E+00, 0.42466E+00, 0.42623E+00, & - & 0.42780E+00, 0.42937E+00, 0.43094E+00, 0.43250E+00, 0.43406E+00, & - & 0.43562E+00, 0.43718E+00, 0.43873E+00, 0.44028E+00, 0.44183E+00, & - & 0.44337E+00, 0.44492E+00, 0.44646E+00, 0.44799E+00, 0.44953E+00, & - & 0.45106E+00, 0.45259E+00, 0.45412E+00, 0.45564E+00, 0.45717E+00, & - & 0.45868E+00, 0.46020E+00, 0.46172E+00, 0.46323E+00, 0.46474E+00, & - & 0.46625E+00, 0.46775E+00, 0.46925E+00, 0.47075E+00, 0.47225E+00, & - & 0.47374E+00, 0.47523E+00, 0.47672E+00, 0.47821E+00, 0.47970E+00, & - & 0.48118E+00, 0.48266E+00, 0.48414E+00, 0.48561E+00, 0.48708E+00, & - & 0.48855E+00, 0.49002E+00, 0.49148E+00, 0.49295E+00, 0.49441E+00/ - - DATA (BNC01M(I),I=401,500)/ & - & 0.49587E+00, 0.49732E+00, 0.49877E+00, 0.50022E+00, 0.50167E+00, & - & 0.50312E+00, 0.50456E+00, 0.50600E+00, 0.50744E+00, 0.50888E+00, & - & 0.51031E+00, 0.51174E+00, 0.51317E+00, 0.51460E+00, 0.51602E+00, & - & 0.51745E+00, 0.51887E+00, 0.52028E+00, 0.52170E+00, 0.52311E+00, & - & 0.52452E+00, 0.52593E+00, 0.52734E+00, 0.52874E+00, 0.53014E+00, & - & 0.53154E+00, 0.53294E+00, 0.53433E+00, 0.53573E+00, 0.53712E+00, & - & 0.53851E+00, 0.53989E+00, 0.54127E+00, 0.54266E+00, 0.54403E+00, & - & 0.54541E+00, 0.54679E+00, 0.54816E+00, 0.54953E+00, 0.55090E+00, & - & 0.55226E+00, 0.55363E+00, 0.55499E+00, 0.55635E+00, 0.55770E+00, & - & 0.55906E+00, 0.56041E+00, 0.56176E+00, 0.56311E+00, 0.56446E+00, & - & 0.56580E+00, 0.56714E+00, 0.56848E+00, 0.56982E+00, 0.57115E+00, & - & 0.57249E+00, 0.57382E+00, 0.57515E+00, 0.57648E+00, 0.57780E+00, & - & 0.57912E+00, 0.58044E+00, 0.58176E+00, 0.58308E+00, 0.58439E+00, & - & 0.58571E+00, 0.58702E+00, 0.58832E+00, 0.58963E+00, 0.59093E+00, & - & 0.59224E+00, 0.59354E+00, 0.59483E+00, 0.59613E+00, 0.59742E+00, & - & 0.59872E+00, 0.60001E+00, 0.60129E+00, 0.60258E+00, 0.60386E+00, & - & 0.60514E+00, 0.60642E+00, 0.60770E+00, 0.60898E+00, 0.61025E+00, & - & 0.61152E+00, 0.61279E+00, 0.61406E+00, 0.61533E+00, 0.61659E+00, & - & 0.61785E+00, 0.61911E+00, 0.62037E+00, 0.62163E+00, 0.62288E+00, & - & 0.62413E+00, 0.62538E+00, 0.62663E+00, 0.62788E+00, 0.62912E+00/ - - DATA (BNC01M(I),I=501,600)/ & - & 0.63036E+00, 0.63160E+00, 0.63284E+00, 0.63408E+00, 0.63531E+00, & - & 0.63655E+00, 0.63778E+00, 0.63901E+00, 0.64023E+00, 0.64146E+00, & - & 0.64268E+00, 0.64390E+00, 0.64512E+00, 0.64634E+00, 0.64756E+00, & - & 0.64877E+00, 0.64998E+00, 0.65120E+00, 0.65240E+00, 0.65361E+00, & - & 0.65482E+00, 0.65602E+00, 0.65722E+00, 0.65842E+00, 0.65962E+00, & - & 0.66081E+00, 0.66201E+00, 0.66320E+00, 0.66439E+00, 0.66558E+00, & - & 0.66676E+00, 0.66795E+00, 0.66913E+00, 0.67031E+00, 0.67149E+00, & - & 0.67267E+00, 0.67385E+00, 0.67502E+00, 0.67619E+00, 0.67736E+00, & - & 0.67853E+00, 0.67970E+00, 0.68087E+00, 0.68203E+00, 0.68319E+00, & - & 0.68435E+00, 0.68551E+00, 0.68667E+00, 0.68782E+00, 0.68898E+00, & - & 0.69013E+00, 0.69128E+00, 0.69243E+00, 0.69357E+00, 0.69472E+00, & - & 0.69586E+00, 0.69700E+00, 0.69814E+00, 0.69928E+00, 0.70042E+00, & - & 0.70155E+00, 0.70268E+00, 0.70381E+00, 0.70494E+00, 0.70607E+00, & - & 0.70720E+00, 0.70832E+00, 0.70945E+00, 0.71057E+00, 0.71169E+00, & - & 0.71280E+00, 0.71392E+00, 0.71504E+00, 0.71615E+00, 0.71726E+00, & - & 0.71837E+00, 0.71948E+00, 0.72058E+00, 0.72169E+00, 0.72279E+00, & - & 0.72389E+00, 0.72499E+00, 0.72609E+00, 0.72719E+00, 0.72828E+00, & - & 0.72938E+00, 0.73047E+00, 0.73156E+00, 0.73265E+00, 0.73374E+00, & - & 0.73482E+00, 0.73591E+00, 0.73699E+00, 0.73807E+00, 0.73915E+00, & - & 0.74023E+00, 0.74130E+00, 0.74238E+00, 0.74345E+00, 0.74452E+00/ - - DATA (BNC01M(I),I=601,700)/ & - & 0.75600E+00, 0.76647E+00, 0.77680E+00, 0.78697E+00, 0.79701E+00, & - & 0.80690E+00, 0.81666E+00, 0.82629E+00, 0.83578E+00, 0.84515E+00, & - & 0.85439E+00, 0.86351E+00, 0.87250E+00, 0.88138E+00, 0.89014E+00, & - & 0.89879E+00, 0.90732E+00, 0.91574E+00, 0.92406E+00, 0.93227E+00, & - & 0.94038E+00, 0.94838E+00, 0.95628E+00, 0.96409E+00, 0.97180E+00, & - & 0.97941E+00, 0.98693E+00, 0.99435E+00, 0.10017E+01, 0.10089E+01, & - & 0.10161E+01, 0.10232E+01, 0.10302E+01, 0.10371E+01, 0.10439E+01, & - & 0.10506E+01, 0.10573E+01, 0.10639E+01, 0.10704E+01, 0.10768E+01, & - & 0.10832E+01, 0.10895E+01, 0.10957E+01, 0.11018E+01, 0.11079E+01, & - & 0.11139E+01, 0.11199E+01, 0.11257E+01, 0.11315E+01, 0.11373E+01, & - & 0.11430E+01, 0.11486E+01, 0.11541E+01, 0.11596E+01, 0.11651E+01, & - & 0.11704E+01, 0.11757E+01, 0.11810E+01, 0.11862E+01, 0.11913E+01, & - & 0.11964E+01, 0.12015E+01, 0.12064E+01, 0.12114E+01, 0.12162E+01, & - & 0.12211E+01, 0.12258E+01, 0.12306E+01, 0.12352E+01, 0.12399E+01, & - & 0.12444E+01, 0.12490E+01, 0.12534E+01, 0.12579E+01, 0.12623E+01, & - & 0.12666E+01, 0.12709E+01, 0.12751E+01, 0.12794E+01, 0.12835E+01, & - & 0.12876E+01, 0.12917E+01, 0.12958E+01, 0.12998E+01, 0.13037E+01, & - & 0.13076E+01, 0.13115E+01, 0.13153E+01, 0.13191E+01, 0.13229E+01, & - & 0.13266E+01, 0.13303E+01, 0.13340E+01, 0.13376E+01, 0.13411E+01, & - & 0.13447E+01, 0.13482E+01, 0.13517E+01, 0.13551E+01, 0.13585E+01/ - - DATA (BNC01M(I),I=701,741)/ & - & 0.13619E+01, 0.13652E+01, 0.13685E+01, 0.13718E+01, 0.13750E+01, & - & 0.13782E+01, 0.13814E+01, 0.13845E+01, 0.13876E+01, 0.13907E+01, & - & 0.13937E+01, 0.13967E+01, 0.13997E+01, 0.14027E+01, 0.14056E+01, & - & 0.14085E+01, 0.14114E+01, 0.14142E+01, 0.14170E+01, 0.14198E+01, & - & 0.14226E+01, 0.14253E+01, 0.14280E+01, 0.14307E+01, 0.14333E+01, & - & 0.14360E+01, 0.14386E+01, 0.14411E+01, 0.14437E+01, 0.14462E+01, & - & 0.14487E+01, 0.14512E+01, 0.14536E+01, 0.14561E+01, 0.14585E+01, & - & 0.14608E+01, 0.14632E+01, 0.14655E+01, 0.14678E+01, 0.14701E+01, & - & 0.14724E+01 & - & / -! -! *** Na2SO4 -! - DATA (BNC02M(I),I=1,100)/ & - &-0.97981E-01,-0.21379E+00,-0.27204E+00,-0.31341E+00,-0.34603E+00, & - &-0.37314E+00,-0.39646E+00,-0.41696E+00,-0.43531E+00,-0.45193E+00, & - &-0.46714E+00,-0.48118E+00,-0.49423E+00,-0.50643E+00,-0.51788E+00, & - &-0.52870E+00,-0.53893E+00,-0.54866E+00,-0.55793E+00,-0.56679E+00, & - &-0.57528E+00,-0.58342E+00,-0.59125E+00,-0.59880E+00,-0.60608E+00, & - &-0.61312E+00,-0.61993E+00,-0.62653E+00,-0.63293E+00,-0.63915E+00, & - &-0.64519E+00,-0.65108E+00,-0.65681E+00,-0.66239E+00,-0.66784E+00, & - &-0.67316E+00,-0.67836E+00,-0.68344E+00,-0.68841E+00,-0.69328E+00, & - &-0.69804E+00,-0.70271E+00,-0.70729E+00,-0.71178E+00,-0.71618E+00, & - &-0.72051E+00,-0.72476E+00,-0.72893E+00,-0.73304E+00,-0.73707E+00, & - &-0.74104E+00,-0.74495E+00,-0.74880E+00,-0.75259E+00,-0.75632E+00, & - &-0.75999E+00,-0.76362E+00,-0.76719E+00,-0.77072E+00,-0.77420E+00, & - &-0.77763E+00,-0.78102E+00,-0.78436E+00,-0.78767E+00,-0.79094E+00, & - &-0.79416E+00,-0.79735E+00,-0.80051E+00,-0.80363E+00,-0.80671E+00, & - &-0.80977E+00,-0.81279E+00,-0.81578E+00,-0.81875E+00,-0.82168E+00, & - &-0.82459E+00,-0.82747E+00,-0.83032E+00,-0.83315E+00,-0.83596E+00, & - &-0.83874E+00,-0.84150E+00,-0.84423E+00,-0.84695E+00,-0.84964E+00, & - &-0.85232E+00,-0.85497E+00,-0.85760E+00,-0.86022E+00,-0.86282E+00, & - &-0.86540E+00,-0.86796E+00,-0.87051E+00,-0.87303E+00,-0.87555E+00, & - &-0.87804E+00,-0.88052E+00,-0.88299E+00,-0.88544E+00,-0.88788E+00/ - - DATA (BNC02M(I),I=101,200)/ & - &-0.89030E+00,-0.89271E+00,-0.89510E+00,-0.89748E+00,-0.89985E+00, & - &-0.90220E+00,-0.90454E+00,-0.90687E+00,-0.90918E+00,-0.91148E+00, & - &-0.91377E+00,-0.91605E+00,-0.91832E+00,-0.92057E+00,-0.92281E+00, & - &-0.92504E+00,-0.92726E+00,-0.92947E+00,-0.93167E+00,-0.93385E+00, & - &-0.93603E+00,-0.93819E+00,-0.94034E+00,-0.94249E+00,-0.94462E+00, & - &-0.94674E+00,-0.94886E+00,-0.95096E+00,-0.95305E+00,-0.95513E+00, & - &-0.95721E+00,-0.95927E+00,-0.96132E+00,-0.96337E+00,-0.96540E+00, & - &-0.96743E+00,-0.96945E+00,-0.97146E+00,-0.97346E+00,-0.97545E+00, & - &-0.97743E+00,-0.97941E+00,-0.98137E+00,-0.98333E+00,-0.98528E+00, & - &-0.98722E+00,-0.98915E+00,-0.99108E+00,-0.99300E+00,-0.99491E+00, & - &-0.99681E+00,-0.99871E+00,-0.10006E+01,-0.10025E+01,-0.10044E+01, & - &-0.10062E+01,-0.10081E+01,-0.10099E+01,-0.10118E+01,-0.10136E+01, & - &-0.10155E+01,-0.10173E+01,-0.10191E+01,-0.10209E+01,-0.10227E+01, & - &-0.10245E+01,-0.10263E+01,-0.10281E+01,-0.10299E+01,-0.10317E+01, & - &-0.10334E+01,-0.10352E+01,-0.10369E+01,-0.10387E+01,-0.10404E+01, & - &-0.10422E+01,-0.10439E+01,-0.10457E+01,-0.10474E+01,-0.10491E+01, & - &-0.10508E+01,-0.10525E+01,-0.10542E+01,-0.10559E+01,-0.10576E+01, & - &-0.10593E+01,-0.10610E+01,-0.10627E+01,-0.10643E+01,-0.10660E+01, & - &-0.10677E+01,-0.10693E+01,-0.10710E+01,-0.10726E+01,-0.10743E+01, & - &-0.10759E+01,-0.10775E+01,-0.10792E+01,-0.10808E+01,-0.10824E+01/ - - DATA (BNC02M(I),I=201,300)/ & - &-0.10840E+01,-0.10857E+01,-0.10873E+01,-0.10889E+01,-0.10905E+01, & - &-0.10921E+01,-0.10937E+01,-0.10952E+01,-0.10968E+01,-0.10984E+01, & - &-0.11000E+01,-0.11015E+01,-0.11031E+01,-0.11047E+01,-0.11062E+01, & - &-0.11078E+01,-0.11093E+01,-0.11109E+01,-0.11124E+01,-0.11140E+01, & - &-0.11155E+01,-0.11170E+01,-0.11186E+01,-0.11201E+01,-0.11216E+01, & - &-0.11231E+01,-0.11247E+01,-0.11262E+01,-0.11277E+01,-0.11292E+01, & - &-0.11307E+01,-0.11322E+01,-0.11337E+01,-0.11352E+01,-0.11366E+01, & - &-0.11381E+01,-0.11396E+01,-0.11411E+01,-0.11426E+01,-0.11440E+01, & - &-0.11455E+01,-0.11470E+01,-0.11484E+01,-0.11499E+01,-0.11514E+01, & - &-0.11528E+01,-0.11543E+01,-0.11557E+01,-0.11571E+01,-0.11586E+01, & - &-0.11600E+01,-0.11615E+01,-0.11629E+01,-0.11643E+01,-0.11658E+01, & - &-0.11672E+01,-0.11686E+01,-0.11700E+01,-0.11714E+01,-0.11728E+01, & - &-0.11743E+01,-0.11757E+01,-0.11771E+01,-0.11785E+01,-0.11799E+01, & - &-0.11813E+01,-0.11827E+01,-0.11841E+01,-0.11854E+01,-0.11868E+01, & - &-0.11882E+01,-0.11896E+01,-0.11910E+01,-0.11923E+01,-0.11937E+01, & - &-0.11951E+01,-0.11965E+01,-0.11978E+01,-0.11992E+01,-0.12006E+01, & - &-0.12019E+01,-0.12033E+01,-0.12046E+01,-0.12060E+01,-0.12073E+01, & - &-0.12087E+01,-0.12100E+01,-0.12114E+01,-0.12127E+01,-0.12140E+01, & - &-0.12154E+01,-0.12167E+01,-0.12181E+01,-0.12194E+01,-0.12207E+01, & - &-0.12220E+01,-0.12234E+01,-0.12247E+01,-0.12260E+01,-0.12273E+01/ - - DATA (BNC02M(I),I=301,400)/ & - &-0.12286E+01,-0.12299E+01,-0.12313E+01,-0.12326E+01,-0.12339E+01, & - &-0.12352E+01,-0.12365E+01,-0.12378E+01,-0.12391E+01,-0.12404E+01, & - &-0.12417E+01,-0.12430E+01,-0.12443E+01,-0.12455E+01,-0.12468E+01, & - &-0.12481E+01,-0.12494E+01,-0.12507E+01,-0.12520E+01,-0.12532E+01, & - &-0.12545E+01,-0.12558E+01,-0.12571E+01,-0.12583E+01,-0.12596E+01, & - &-0.12609E+01,-0.12621E+01,-0.12634E+01,-0.12647E+01,-0.12659E+01, & - &-0.12672E+01,-0.12684E+01,-0.12697E+01,-0.12709E+01,-0.12722E+01, & - &-0.12734E+01,-0.12747E+01,-0.12759E+01,-0.12772E+01,-0.12784E+01, & - &-0.12797E+01,-0.12809E+01,-0.12821E+01,-0.12834E+01,-0.12846E+01, & - &-0.12858E+01,-0.12871E+01,-0.12883E+01,-0.12895E+01,-0.12907E+01, & - &-0.12920E+01,-0.12932E+01,-0.12944E+01,-0.12956E+01,-0.12969E+01, & - &-0.12981E+01,-0.12993E+01,-0.13005E+01,-0.13017E+01,-0.13029E+01, & - &-0.13041E+01,-0.13053E+01,-0.13065E+01,-0.13078E+01,-0.13090E+01, & - &-0.13102E+01,-0.13114E+01,-0.13126E+01,-0.13138E+01,-0.13149E+01, & - &-0.13161E+01,-0.13173E+01,-0.13185E+01,-0.13197E+01,-0.13209E+01, & - &-0.13221E+01,-0.13233E+01,-0.13245E+01,-0.13256E+01,-0.13268E+01, & - &-0.13280E+01,-0.13292E+01,-0.13304E+01,-0.13315E+01,-0.13327E+01, & - &-0.13339E+01,-0.13351E+01,-0.13362E+01,-0.13374E+01,-0.13386E+01, & - &-0.13397E+01,-0.13409E+01,-0.13421E+01,-0.13432E+01,-0.13444E+01, & - &-0.13456E+01,-0.13467E+01,-0.13479E+01,-0.13490E+01,-0.13502E+01/ - - DATA (BNC02M(I),I=401,500)/ & - &-0.13513E+01,-0.13525E+01,-0.13537E+01,-0.13548E+01,-0.13560E+01, & - &-0.13571E+01,-0.13582E+01,-0.13594E+01,-0.13605E+01,-0.13617E+01, & - &-0.13628E+01,-0.13640E+01,-0.13651E+01,-0.13662E+01,-0.13674E+01, & - &-0.13685E+01,-0.13697E+01,-0.13708E+01,-0.13719E+01,-0.13731E+01, & - &-0.13742E+01,-0.13753E+01,-0.13764E+01,-0.13776E+01,-0.13787E+01, & - &-0.13798E+01,-0.13810E+01,-0.13821E+01,-0.13832E+01,-0.13843E+01, & - &-0.13854E+01,-0.13866E+01,-0.13877E+01,-0.13888E+01,-0.13899E+01, & - &-0.13910E+01,-0.13921E+01,-0.13932E+01,-0.13944E+01,-0.13955E+01, & - &-0.13966E+01,-0.13977E+01,-0.13988E+01,-0.13999E+01,-0.14010E+01, & - &-0.14021E+01,-0.14032E+01,-0.14043E+01,-0.14054E+01,-0.14065E+01, & - &-0.14076E+01,-0.14087E+01,-0.14098E+01,-0.14109E+01,-0.14120E+01, & - &-0.14131E+01,-0.14142E+01,-0.14153E+01,-0.14164E+01,-0.14175E+01, & - &-0.14186E+01,-0.14196E+01,-0.14207E+01,-0.14218E+01,-0.14229E+01, & - &-0.14240E+01,-0.14251E+01,-0.14261E+01,-0.14272E+01,-0.14283E+01, & - &-0.14294E+01,-0.14305E+01,-0.14315E+01,-0.14326E+01,-0.14337E+01, & - &-0.14348E+01,-0.14359E+01,-0.14369E+01,-0.14380E+01,-0.14391E+01, & - &-0.14401E+01,-0.14412E+01,-0.14423E+01,-0.14433E+01,-0.14444E+01, & - &-0.14455E+01,-0.14465E+01,-0.14476E+01,-0.14487E+01,-0.14497E+01, & - &-0.14508E+01,-0.14519E+01,-0.14529E+01,-0.14540E+01,-0.14550E+01, & - &-0.14561E+01,-0.14572E+01,-0.14582E+01,-0.14593E+01,-0.14603E+01/ - - DATA (BNC02M(I),I=501,600)/ & - &-0.14614E+01,-0.14624E+01,-0.14635E+01,-0.14645E+01,-0.14656E+01, & - &-0.14666E+01,-0.14677E+01,-0.14687E+01,-0.14698E+01,-0.14708E+01, & - &-0.14719E+01,-0.14729E+01,-0.14740E+01,-0.14750E+01,-0.14760E+01, & - &-0.14771E+01,-0.14781E+01,-0.14792E+01,-0.14802E+01,-0.14812E+01, & - &-0.14823E+01,-0.14833E+01,-0.14843E+01,-0.14854E+01,-0.14864E+01, & - &-0.14875E+01,-0.14885E+01,-0.14895E+01,-0.14905E+01,-0.14916E+01, & - &-0.14926E+01,-0.14936E+01,-0.14947E+01,-0.14957E+01,-0.14967E+01, & - &-0.14978E+01,-0.14988E+01,-0.14998E+01,-0.15008E+01,-0.15018E+01, & - &-0.15029E+01,-0.15039E+01,-0.15049E+01,-0.15059E+01,-0.15070E+01, & - &-0.15080E+01,-0.15090E+01,-0.15100E+01,-0.15110E+01,-0.15120E+01, & - &-0.15131E+01,-0.15141E+01,-0.15151E+01,-0.15161E+01,-0.15171E+01, & - &-0.15181E+01,-0.15191E+01,-0.15202E+01,-0.15212E+01,-0.15222E+01, & - &-0.15232E+01,-0.15242E+01,-0.15252E+01,-0.15262E+01,-0.15272E+01, & - &-0.15282E+01,-0.15292E+01,-0.15302E+01,-0.15312E+01,-0.15322E+01, & - &-0.15332E+01,-0.15342E+01,-0.15352E+01,-0.15362E+01,-0.15372E+01, & - &-0.15382E+01,-0.15392E+01,-0.15402E+01,-0.15412E+01,-0.15422E+01, & - &-0.15432E+01,-0.15442E+01,-0.15452E+01,-0.15462E+01,-0.15472E+01, & - &-0.15482E+01,-0.15492E+01,-0.15502E+01,-0.15512E+01,-0.15522E+01, & - &-0.15531E+01,-0.15541E+01,-0.15551E+01,-0.15561E+01,-0.15571E+01, & - &-0.15581E+01,-0.15591E+01,-0.15601E+01,-0.15610E+01,-0.15620E+01/ - - DATA (BNC02M(I),I=601,700)/ & - &-0.15726E+01,-0.15824E+01,-0.15921E+01,-0.16017E+01,-0.16113E+01, & - &-0.16208E+01,-0.16303E+01,-0.16397E+01,-0.16491E+01,-0.16584E+01, & - &-0.16677E+01,-0.16770E+01,-0.16862E+01,-0.16954E+01,-0.17045E+01, & - &-0.17136E+01,-0.17226E+01,-0.17316E+01,-0.17406E+01,-0.17495E+01, & - &-0.17584E+01,-0.17673E+01,-0.17761E+01,-0.17849E+01,-0.17937E+01, & - &-0.18024E+01,-0.18111E+01,-0.18198E+01,-0.18284E+01,-0.18370E+01, & - &-0.18456E+01,-0.18542E+01,-0.18627E+01,-0.18712E+01,-0.18797E+01, & - &-0.18881E+01,-0.18966E+01,-0.19050E+01,-0.19133E+01,-0.19217E+01, & - &-0.19300E+01,-0.19383E+01,-0.19466E+01,-0.19548E+01,-0.19631E+01, & - &-0.19713E+01,-0.19795E+01,-0.19876E+01,-0.19958E+01,-0.20039E+01, & - &-0.20120E+01,-0.20201E+01,-0.20282E+01,-0.20362E+01,-0.20443E+01, & - &-0.20523E+01,-0.20603E+01,-0.20682E+01,-0.20762E+01,-0.20841E+01, & - &-0.20921E+01,-0.21000E+01,-0.21079E+01,-0.21157E+01,-0.21236E+01, & - &-0.21314E+01,-0.21393E+01,-0.21471E+01,-0.21549E+01,-0.21626E+01, & - &-0.21704E+01,-0.21782E+01,-0.21859E+01,-0.21936E+01,-0.22013E+01, & - &-0.22090E+01,-0.22167E+01,-0.22244E+01,-0.22320E+01,-0.22396E+01, & - &-0.22473E+01,-0.22549E+01,-0.22625E+01,-0.22701E+01,-0.22776E+01, & - &-0.22852E+01,-0.22928E+01,-0.23003E+01,-0.23078E+01,-0.23153E+01, & - &-0.23228E+01,-0.23303E+01,-0.23378E+01,-0.23453E+01,-0.23527E+01, & - &-0.23602E+01,-0.23676E+01,-0.23750E+01,-0.23825E+01,-0.23899E+01/ - - DATA (BNC02M(I),I=701,741)/ & - &-0.23973E+01,-0.24046E+01,-0.24120E+01,-0.24194E+01,-0.24267E+01, & - &-0.24341E+01,-0.24414E+01,-0.24487E+01,-0.24560E+01,-0.24633E+01, & - &-0.24706E+01,-0.24779E+01,-0.24852E+01,-0.24925E+01,-0.24997E+01, & - &-0.25070E+01,-0.25142E+01,-0.25214E+01,-0.25287E+01,-0.25359E+01, & - &-0.25431E+01,-0.25503E+01,-0.25575E+01,-0.25647E+01,-0.25718E+01, & - &-0.25790E+01,-0.25862E+01,-0.25933E+01,-0.26004E+01,-0.26076E+01, & - &-0.26147E+01,-0.26218E+01,-0.26289E+01,-0.26360E+01,-0.26431E+01, & - &-0.26502E+01,-0.26573E+01,-0.26644E+01,-0.26714E+01,-0.26785E+01, & - &-0.26856E+01 & - & / -! -! *** NaNO3 -! - DATA (BNC03M(I),I=1,100)/ & - &-0.49134E-01,-0.10768E+00,-0.13739E+00,-0.15864E+00,-0.17549E+00, & - &-0.18957E+00,-0.20174E+00,-0.21250E+00,-0.22216E+00,-0.23096E+00, & - &-0.23904E+00,-0.24653E+00,-0.25352E+00,-0.26008E+00,-0.26626E+00, & - &-0.27211E+00,-0.27767E+00,-0.28298E+00,-0.28804E+00,-0.29290E+00, & - &-0.29757E+00,-0.30206E+00,-0.30639E+00,-0.31057E+00,-0.31462E+00, & - &-0.31854E+00,-0.32234E+00,-0.32603E+00,-0.32962E+00,-0.33312E+00, & - &-0.33652E+00,-0.33984E+00,-0.34308E+00,-0.34624E+00,-0.34933E+00, & - &-0.35235E+00,-0.35530E+00,-0.35820E+00,-0.36103E+00,-0.36381E+00, & - &-0.36653E+00,-0.36921E+00,-0.37183E+00,-0.37441E+00,-0.37694E+00, & - &-0.37942E+00,-0.38187E+00,-0.38427E+00,-0.38664E+00,-0.38897E+00, & - &-0.39126E+00,-0.39352E+00,-0.39574E+00,-0.39793E+00,-0.40009E+00, & - &-0.40222E+00,-0.40432E+00,-0.40640E+00,-0.40844E+00,-0.41047E+00, & - &-0.41246E+00,-0.41443E+00,-0.41638E+00,-0.41831E+00,-0.42021E+00, & - &-0.42209E+00,-0.42396E+00,-0.42580E+00,-0.42763E+00,-0.42943E+00, & - &-0.43122E+00,-0.43300E+00,-0.43475E+00,-0.43649E+00,-0.43822E+00, & - &-0.43993E+00,-0.44163E+00,-0.44331E+00,-0.44498E+00,-0.44664E+00, & - &-0.44829E+00,-0.44992E+00,-0.45154E+00,-0.45315E+00,-0.45476E+00, & - &-0.45635E+00,-0.45793E+00,-0.45950E+00,-0.46106E+00,-0.46261E+00, & - &-0.46416E+00,-0.46569E+00,-0.46722E+00,-0.46874E+00,-0.47025E+00, & - &-0.47175E+00,-0.47324E+00,-0.47473E+00,-0.47621E+00,-0.47768E+00/ - - DATA (BNC03M(I),I=101,200)/ & - &-0.47915E+00,-0.48060E+00,-0.48205E+00,-0.48350E+00,-0.48493E+00, & - &-0.48636E+00,-0.48779E+00,-0.48920E+00,-0.49061E+00,-0.49202E+00, & - &-0.49342E+00,-0.49481E+00,-0.49619E+00,-0.49757E+00,-0.49894E+00, & - &-0.50031E+00,-0.50166E+00,-0.50302E+00,-0.50436E+00,-0.50571E+00, & - &-0.50704E+00,-0.50837E+00,-0.50969E+00,-0.51101E+00,-0.51232E+00, & - &-0.51363E+00,-0.51493E+00,-0.51622E+00,-0.51751E+00,-0.51879E+00, & - &-0.52007E+00,-0.52134E+00,-0.52261E+00,-0.52387E+00,-0.52513E+00, & - &-0.52638E+00,-0.52762E+00,-0.52886E+00,-0.53010E+00,-0.53133E+00, & - &-0.53255E+00,-0.53377E+00,-0.53499E+00,-0.53620E+00,-0.53740E+00, & - &-0.53860E+00,-0.53980E+00,-0.54099E+00,-0.54218E+00,-0.54336E+00, & - &-0.54454E+00,-0.54571E+00,-0.54688E+00,-0.54804E+00,-0.54920E+00, & - &-0.55036E+00,-0.55151E+00,-0.55266E+00,-0.55380E+00,-0.55494E+00, & - &-0.55608E+00,-0.55721E+00,-0.55833E+00,-0.55946E+00,-0.56058E+00, & - &-0.56169E+00,-0.56280E+00,-0.56391E+00,-0.56502E+00,-0.56612E+00, & - &-0.56721E+00,-0.56831E+00,-0.56940E+00,-0.57048E+00,-0.57157E+00, & - &-0.57265E+00,-0.57372E+00,-0.57479E+00,-0.57586E+00,-0.57693E+00, & - &-0.57799E+00,-0.57905E+00,-0.58011E+00,-0.58116E+00,-0.58221E+00, & - &-0.58325E+00,-0.58430E+00,-0.58534E+00,-0.58637E+00,-0.58741E+00, & - &-0.58844E+00,-0.58947E+00,-0.59049E+00,-0.59151E+00,-0.59253E+00, & - &-0.59355E+00,-0.59456E+00,-0.59557E+00,-0.59658E+00,-0.59758E+00/ - - DATA (BNC03M(I),I=201,300)/ & - &-0.59859E+00,-0.59959E+00,-0.60058E+00,-0.60158E+00,-0.60257E+00, & - &-0.60356E+00,-0.60454E+00,-0.60553E+00,-0.60651E+00,-0.60748E+00, & - &-0.60846E+00,-0.60943E+00,-0.61040E+00,-0.61137E+00,-0.61234E+00, & - &-0.61330E+00,-0.61426E+00,-0.61522E+00,-0.61617E+00,-0.61713E+00, & - &-0.61808E+00,-0.61903E+00,-0.61997E+00,-0.62092E+00,-0.62186E+00, & - &-0.62280E+00,-0.62374E+00,-0.62467E+00,-0.62561E+00,-0.62654E+00, & - &-0.62746E+00,-0.62839E+00,-0.62932E+00,-0.63024E+00,-0.63116E+00, & - &-0.63208E+00,-0.63299E+00,-0.63390E+00,-0.63482E+00,-0.63573E+00, & - &-0.63663E+00,-0.63754E+00,-0.63844E+00,-0.63934E+00,-0.64024E+00, & - &-0.64114E+00,-0.64204E+00,-0.64293E+00,-0.64382E+00,-0.64471E+00, & - &-0.64560E+00,-0.64649E+00,-0.64737E+00,-0.64825E+00,-0.64913E+00, & - &-0.65001E+00,-0.65089E+00,-0.65176E+00,-0.65264E+00,-0.65351E+00, & - &-0.65438E+00,-0.65524E+00,-0.65611E+00,-0.65697E+00,-0.65784E+00, & - &-0.65870E+00,-0.65956E+00,-0.66041E+00,-0.66127E+00,-0.66212E+00, & - &-0.66298E+00,-0.66383E+00,-0.66468E+00,-0.66552E+00,-0.66637E+00, & - &-0.66721E+00,-0.66806E+00,-0.66890E+00,-0.66974E+00,-0.67057E+00, & - &-0.67141E+00,-0.67224E+00,-0.67308E+00,-0.67391E+00,-0.67474E+00, & - &-0.67557E+00,-0.67639E+00,-0.67722E+00,-0.67804E+00,-0.67887E+00, & - &-0.67969E+00,-0.68051E+00,-0.68133E+00,-0.68214E+00,-0.68296E+00, & - &-0.68377E+00,-0.68458E+00,-0.68539E+00,-0.68620E+00,-0.68701E+00/ - - DATA (BNC03M(I),I=301,400)/ & - &-0.68782E+00,-0.68862E+00,-0.68943E+00,-0.69023E+00,-0.69103E+00, & - &-0.69183E+00,-0.69263E+00,-0.69343E+00,-0.69422E+00,-0.69502E+00, & - &-0.69581E+00,-0.69660E+00,-0.69739E+00,-0.69818E+00,-0.69897E+00, & - &-0.69976E+00,-0.70054E+00,-0.70132E+00,-0.70211E+00,-0.70289E+00, & - &-0.70367E+00,-0.70445E+00,-0.70523E+00,-0.70600E+00,-0.70678E+00, & - &-0.70755E+00,-0.70832E+00,-0.70910E+00,-0.70987E+00,-0.71064E+00, & - &-0.71140E+00,-0.71217E+00,-0.71294E+00,-0.71370E+00,-0.71446E+00, & - &-0.71523E+00,-0.71599E+00,-0.71675E+00,-0.71751E+00,-0.71826E+00, & - &-0.71902E+00,-0.71977E+00,-0.72053E+00,-0.72128E+00,-0.72203E+00, & - &-0.72279E+00,-0.72353E+00,-0.72428E+00,-0.72503E+00,-0.72578E+00, & - &-0.72652E+00,-0.72727E+00,-0.72801E+00,-0.72875E+00,-0.72949E+00, & - &-0.73023E+00,-0.73097E+00,-0.73171E+00,-0.73245E+00,-0.73318E+00, & - &-0.73392E+00,-0.73465E+00,-0.73539E+00,-0.73612E+00,-0.73685E+00, & - &-0.73758E+00,-0.73831E+00,-0.73904E+00,-0.73976E+00,-0.74049E+00, & - &-0.74121E+00,-0.74194E+00,-0.74266E+00,-0.74338E+00,-0.74410E+00, & - &-0.74482E+00,-0.74554E+00,-0.74626E+00,-0.74698E+00,-0.74769E+00, & - &-0.74841E+00,-0.74912E+00,-0.74984E+00,-0.75055E+00,-0.75126E+00, & - &-0.75197E+00,-0.75268E+00,-0.75339E+00,-0.75410E+00,-0.75481E+00, & - &-0.75551E+00,-0.75622E+00,-0.75692E+00,-0.75763E+00,-0.75833E+00, & - &-0.75903E+00,-0.75973E+00,-0.76043E+00,-0.76113E+00,-0.76183E+00/ - - DATA (BNC03M(I),I=401,500)/ & - &-0.76253E+00,-0.76322E+00,-0.76392E+00,-0.76461E+00,-0.76531E+00, & - &-0.76600E+00,-0.76669E+00,-0.76738E+00,-0.76808E+00,-0.76877E+00, & - &-0.76945E+00,-0.77014E+00,-0.77083E+00,-0.77152E+00,-0.77220E+00, & - &-0.77289E+00,-0.77357E+00,-0.77425E+00,-0.77494E+00,-0.77562E+00, & - &-0.77630E+00,-0.77698E+00,-0.77766E+00,-0.77834E+00,-0.77902E+00, & - &-0.77969E+00,-0.78037E+00,-0.78105E+00,-0.78172E+00,-0.78239E+00, & - &-0.78307E+00,-0.78374E+00,-0.78441E+00,-0.78508E+00,-0.78575E+00, & - &-0.78642E+00,-0.78709E+00,-0.78776E+00,-0.78843E+00,-0.78909E+00, & - &-0.78976E+00,-0.79042E+00,-0.79109E+00,-0.79175E+00,-0.79242E+00, & - &-0.79308E+00,-0.79374E+00,-0.79440E+00,-0.79506E+00,-0.79572E+00, & - &-0.79638E+00,-0.79704E+00,-0.79769E+00,-0.79835E+00,-0.79901E+00, & - &-0.79966E+00,-0.80032E+00,-0.80097E+00,-0.80162E+00,-0.80228E+00, & - &-0.80293E+00,-0.80358E+00,-0.80423E+00,-0.80488E+00,-0.80553E+00, & - &-0.80618E+00,-0.80682E+00,-0.80747E+00,-0.80812E+00,-0.80876E+00, & - &-0.80941E+00,-0.81005E+00,-0.81070E+00,-0.81134E+00,-0.81198E+00, & - &-0.81263E+00,-0.81327E+00,-0.81391E+00,-0.81455E+00,-0.81519E+00, & - &-0.81583E+00,-0.81646E+00,-0.81710E+00,-0.81774E+00,-0.81837E+00, & - &-0.81901E+00,-0.81965E+00,-0.82028E+00,-0.82091E+00,-0.82155E+00, & - &-0.82218E+00,-0.82281E+00,-0.82344E+00,-0.82407E+00,-0.82470E+00, & - &-0.82533E+00,-0.82596E+00,-0.82659E+00,-0.82722E+00,-0.82785E+00/ - - DATA (BNC03M(I),I=501,600)/ & - &-0.82847E+00,-0.82910E+00,-0.82973E+00,-0.83035E+00,-0.83097E+00, & - &-0.83160E+00,-0.83222E+00,-0.83284E+00,-0.83347E+00,-0.83409E+00, & - &-0.83471E+00,-0.83533E+00,-0.83595E+00,-0.83657E+00,-0.83719E+00, & - &-0.83781E+00,-0.83842E+00,-0.83904E+00,-0.83966E+00,-0.84027E+00, & - &-0.84089E+00,-0.84150E+00,-0.84212E+00,-0.84273E+00,-0.84334E+00, & - &-0.84396E+00,-0.84457E+00,-0.84518E+00,-0.84579E+00,-0.84640E+00, & - &-0.84701E+00,-0.84762E+00,-0.84823E+00,-0.84884E+00,-0.84945E+00, & - &-0.85005E+00,-0.85066E+00,-0.85127E+00,-0.85187E+00,-0.85248E+00, & - &-0.85308E+00,-0.85369E+00,-0.85429E+00,-0.85489E+00,-0.85550E+00, & - &-0.85610E+00,-0.85670E+00,-0.85730E+00,-0.85790E+00,-0.85850E+00, & - &-0.85910E+00,-0.85970E+00,-0.86030E+00,-0.86090E+00,-0.86150E+00, & - &-0.86210E+00,-0.86269E+00,-0.86329E+00,-0.86388E+00,-0.86448E+00, & - &-0.86507E+00,-0.86567E+00,-0.86626E+00,-0.86686E+00,-0.86745E+00, & - &-0.86804E+00,-0.86863E+00,-0.86923E+00,-0.86982E+00,-0.87041E+00, & - &-0.87100E+00,-0.87159E+00,-0.87218E+00,-0.87277E+00,-0.87335E+00, & - &-0.87394E+00,-0.87453E+00,-0.87512E+00,-0.87570E+00,-0.87629E+00, & - &-0.87687E+00,-0.87746E+00,-0.87804E+00,-0.87863E+00,-0.87921E+00, & - &-0.87980E+00,-0.88038E+00,-0.88096E+00,-0.88154E+00,-0.88212E+00, & - &-0.88271E+00,-0.88329E+00,-0.88387E+00,-0.88445E+00,-0.88503E+00, & - &-0.88560E+00,-0.88618E+00,-0.88676E+00,-0.88734E+00,-0.88792E+00/ - - DATA (BNC03M(I),I=601,700)/ & - &-0.89413E+00,-0.89983E+00,-0.90549E+00,-0.91112E+00,-0.91671E+00, & - &-0.92226E+00,-0.92777E+00,-0.93325E+00,-0.93869E+00,-0.94410E+00, & - &-0.94948E+00,-0.95483E+00,-0.96015E+00,-0.96543E+00,-0.97069E+00, & - &-0.97592E+00,-0.98112E+00,-0.98629E+00,-0.99143E+00,-0.99655E+00, & - &-0.10016E+01,-0.10067E+01,-0.10118E+01,-0.10168E+01,-0.10218E+01, & - &-0.10267E+01,-0.10317E+01,-0.10366E+01,-0.10415E+01,-0.10464E+01, & - &-0.10513E+01,-0.10561E+01,-0.10609E+01,-0.10658E+01,-0.10705E+01, & - &-0.10753E+01,-0.10801E+01,-0.10848E+01,-0.10895E+01,-0.10942E+01, & - &-0.10989E+01,-0.11035E+01,-0.11082E+01,-0.11128E+01,-0.11174E+01, & - &-0.11220E+01,-0.11266E+01,-0.11311E+01,-0.11357E+01,-0.11402E+01, & - &-0.11447E+01,-0.11493E+01,-0.11537E+01,-0.11582E+01,-0.11627E+01, & - &-0.11671E+01,-0.11716E+01,-0.11760E+01,-0.11804E+01,-0.11848E+01, & - &-0.11892E+01,-0.11936E+01,-0.11979E+01,-0.12023E+01,-0.12066E+01, & - &-0.12109E+01,-0.12153E+01,-0.12196E+01,-0.12239E+01,-0.12281E+01, & - &-0.12324E+01,-0.12367E+01,-0.12409E+01,-0.12452E+01,-0.12494E+01, & - &-0.12536E+01,-0.12578E+01,-0.12620E+01,-0.12662E+01,-0.12704E+01, & - &-0.12746E+01,-0.12787E+01,-0.12829E+01,-0.12870E+01,-0.12912E+01, & - &-0.12953E+01,-0.12994E+01,-0.13035E+01,-0.13076E+01,-0.13117E+01, & - &-0.13158E+01,-0.13199E+01,-0.13239E+01,-0.13280E+01,-0.13320E+01, & - &-0.13361E+01,-0.13401E+01,-0.13441E+01,-0.13482E+01,-0.13522E+01/ - - DATA (BNC03M(I),I=701,741)/ & - &-0.13562E+01,-0.13602E+01,-0.13642E+01,-0.13682E+01,-0.13721E+01, & - &-0.13761E+01,-0.13801E+01,-0.13840E+01,-0.13880E+01,-0.13919E+01, & - &-0.13959E+01,-0.13998E+01,-0.14037E+01,-0.14076E+01,-0.14115E+01, & - &-0.14154E+01,-0.14193E+01,-0.14232E+01,-0.14271E+01,-0.14310E+01, & - &-0.14349E+01,-0.14387E+01,-0.14426E+01,-0.14464E+01,-0.14503E+01, & - &-0.14541E+01,-0.14580E+01,-0.14618E+01,-0.14656E+01,-0.14695E+01, & - &-0.14733E+01,-0.14771E+01,-0.14809E+01,-0.14847E+01,-0.14885E+01, & - &-0.14923E+01,-0.14961E+01,-0.14998E+01,-0.15036E+01,-0.15074E+01, & - &-0.15112E+01 & - & / -! -! *** (NH4)2SO4 -! - DATA (BNC04M(I),I=1,100)/ & - &-0.98067E-01,-0.21426E+00,-0.27286E+00,-0.31457E+00,-0.34750E+00, & - &-0.37493E+00,-0.39855E+00,-0.41935E+00,-0.43799E+00,-0.45490E+00, & - &-0.47039E+00,-0.48471E+00,-0.49804E+00,-0.51051E+00,-0.52223E+00, & - &-0.53331E+00,-0.54381E+00,-0.55380E+00,-0.56333E+00,-0.57244E+00, & - &-0.58118E+00,-0.58957E+00,-0.59765E+00,-0.60544E+00,-0.61296E+00, & - &-0.62024E+00,-0.62729E+00,-0.63412E+00,-0.64075E+00,-0.64720E+00, & - &-0.65347E+00,-0.65958E+00,-0.66553E+00,-0.67134E+00,-0.67700E+00, & - &-0.68254E+00,-0.68795E+00,-0.69324E+00,-0.69842E+00,-0.70349E+00, & - &-0.70846E+00,-0.71333E+00,-0.71811E+00,-0.72280E+00,-0.72740E+00, & - &-0.73192E+00,-0.73636E+00,-0.74072E+00,-0.74501E+00,-0.74923E+00, & - &-0.75339E+00,-0.75748E+00,-0.76150E+00,-0.76547E+00,-0.76938E+00, & - &-0.77323E+00,-0.77702E+00,-0.78077E+00,-0.78446E+00,-0.78811E+00, & - &-0.79171E+00,-0.79527E+00,-0.79878E+00,-0.80225E+00,-0.80567E+00, & - &-0.80906E+00,-0.81241E+00,-0.81573E+00,-0.81900E+00,-0.82225E+00, & - &-0.82546E+00,-0.82864E+00,-0.83179E+00,-0.83491E+00,-0.83799E+00, & - &-0.84106E+00,-0.84409E+00,-0.84710E+00,-0.85008E+00,-0.85304E+00, & - &-0.85597E+00,-0.85889E+00,-0.86178E+00,-0.86464E+00,-0.86749E+00, & - &-0.87032E+00,-0.87312E+00,-0.87591E+00,-0.87868E+00,-0.88143E+00, & - &-0.88416E+00,-0.88687E+00,-0.88957E+00,-0.89225E+00,-0.89492E+00, & - &-0.89757E+00,-0.90020E+00,-0.90282E+00,-0.90542E+00,-0.90801E+00/ - - DATA (BNC04M(I),I=101,200)/ & - &-0.91058E+00,-0.91314E+00,-0.91569E+00,-0.91822E+00,-0.92074E+00, & - &-0.92325E+00,-0.92574E+00,-0.92822E+00,-0.93068E+00,-0.93314E+00, & - &-0.93558E+00,-0.93801E+00,-0.94043E+00,-0.94283E+00,-0.94522E+00, & - &-0.94760E+00,-0.94997E+00,-0.95233E+00,-0.95468E+00,-0.95701E+00, & - &-0.95934E+00,-0.96165E+00,-0.96395E+00,-0.96624E+00,-0.96852E+00, & - &-0.97079E+00,-0.97305E+00,-0.97530E+00,-0.97754E+00,-0.97977E+00, & - &-0.98199E+00,-0.98419E+00,-0.98639E+00,-0.98858E+00,-0.99076E+00, & - &-0.99293E+00,-0.99509E+00,-0.99724E+00,-0.99938E+00,-0.10015E+01, & - &-0.10036E+01,-0.10058E+01,-0.10079E+01,-0.10100E+01,-0.10120E+01, & - &-0.10141E+01,-0.10162E+01,-0.10183E+01,-0.10203E+01,-0.10224E+01, & - &-0.10244E+01,-0.10264E+01,-0.10285E+01,-0.10305E+01,-0.10325E+01, & - &-0.10345E+01,-0.10365E+01,-0.10385E+01,-0.10405E+01,-0.10424E+01, & - &-0.10444E+01,-0.10463E+01,-0.10483E+01,-0.10502E+01,-0.10522E+01, & - &-0.10541E+01,-0.10560E+01,-0.10580E+01,-0.10599E+01,-0.10618E+01, & - &-0.10637E+01,-0.10656E+01,-0.10674E+01,-0.10693E+01,-0.10712E+01, & - &-0.10731E+01,-0.10749E+01,-0.10768E+01,-0.10786E+01,-0.10805E+01, & - &-0.10823E+01,-0.10841E+01,-0.10860E+01,-0.10878E+01,-0.10896E+01, & - &-0.10914E+01,-0.10932E+01,-0.10950E+01,-0.10968E+01,-0.10986E+01, & - &-0.11004E+01,-0.11022E+01,-0.11039E+01,-0.11057E+01,-0.11075E+01, & - &-0.11092E+01,-0.11110E+01,-0.11127E+01,-0.11145E+01,-0.11162E+01/ - - DATA (BNC04M(I),I=201,300)/ & - &-0.11180E+01,-0.11197E+01,-0.11214E+01,-0.11231E+01,-0.11248E+01, & - &-0.11266E+01,-0.11283E+01,-0.11300E+01,-0.11317E+01,-0.11334E+01, & - &-0.11350E+01,-0.11367E+01,-0.11384E+01,-0.11401E+01,-0.11418E+01, & - &-0.11434E+01,-0.11451E+01,-0.11468E+01,-0.11484E+01,-0.11501E+01, & - &-0.11517E+01,-0.11534E+01,-0.11550E+01,-0.11566E+01,-0.11583E+01, & - &-0.11599E+01,-0.11615E+01,-0.11631E+01,-0.11648E+01,-0.11664E+01, & - &-0.11680E+01,-0.11696E+01,-0.11712E+01,-0.11728E+01,-0.11744E+01, & - &-0.11760E+01,-0.11776E+01,-0.11791E+01,-0.11807E+01,-0.11823E+01, & - &-0.11839E+01,-0.11854E+01,-0.11870E+01,-0.11886E+01,-0.11901E+01, & - &-0.11917E+01,-0.11933E+01,-0.11948E+01,-0.11964E+01,-0.11979E+01, & - &-0.11994E+01,-0.12010E+01,-0.12025E+01,-0.12040E+01,-0.12056E+01, & - &-0.12071E+01,-0.12086E+01,-0.12101E+01,-0.12117E+01,-0.12132E+01, & - &-0.12147E+01,-0.12162E+01,-0.12177E+01,-0.12192E+01,-0.12207E+01, & - &-0.12222E+01,-0.12237E+01,-0.12252E+01,-0.12267E+01,-0.12281E+01, & - &-0.12296E+01,-0.12311E+01,-0.12326E+01,-0.12341E+01,-0.12355E+01, & - &-0.12370E+01,-0.12385E+01,-0.12399E+01,-0.12414E+01,-0.12428E+01, & - &-0.12443E+01,-0.12458E+01,-0.12472E+01,-0.12487E+01,-0.12501E+01, & - &-0.12515E+01,-0.12530E+01,-0.12544E+01,-0.12559E+01,-0.12573E+01, & - &-0.12587E+01,-0.12601E+01,-0.12616E+01,-0.12630E+01,-0.12644E+01, & - &-0.12658E+01,-0.12672E+01,-0.12687E+01,-0.12701E+01,-0.12715E+01/ - - DATA (BNC04M(I),I=301,400)/ & - &-0.12729E+01,-0.12743E+01,-0.12757E+01,-0.12771E+01,-0.12785E+01, & - &-0.12799E+01,-0.12813E+01,-0.12827E+01,-0.12841E+01,-0.12854E+01, & - &-0.12868E+01,-0.12882E+01,-0.12896E+01,-0.12910E+01,-0.12923E+01, & - &-0.12937E+01,-0.12951E+01,-0.12965E+01,-0.12978E+01,-0.12992E+01, & - &-0.13006E+01,-0.13019E+01,-0.13033E+01,-0.13046E+01,-0.13060E+01, & - &-0.13073E+01,-0.13087E+01,-0.13100E+01,-0.13114E+01,-0.13127E+01, & - &-0.13141E+01,-0.13154E+01,-0.13168E+01,-0.13181E+01,-0.13194E+01, & - &-0.13208E+01,-0.13221E+01,-0.13234E+01,-0.13248E+01,-0.13261E+01, & - &-0.13274E+01,-0.13287E+01,-0.13301E+01,-0.13314E+01,-0.13327E+01, & - &-0.13340E+01,-0.13353E+01,-0.13366E+01,-0.13379E+01,-0.13393E+01, & - &-0.13406E+01,-0.13419E+01,-0.13432E+01,-0.13445E+01,-0.13458E+01, & - &-0.13471E+01,-0.13484E+01,-0.13497E+01,-0.13510E+01,-0.13522E+01, & - &-0.13535E+01,-0.13548E+01,-0.13561E+01,-0.13574E+01,-0.13587E+01, & - &-0.13600E+01,-0.13612E+01,-0.13625E+01,-0.13638E+01,-0.13651E+01, & - &-0.13663E+01,-0.13676E+01,-0.13689E+01,-0.13701E+01,-0.13714E+01, & - &-0.13727E+01,-0.13739E+01,-0.13752E+01,-0.13765E+01,-0.13777E+01, & - &-0.13790E+01,-0.13802E+01,-0.13815E+01,-0.13828E+01,-0.13840E+01, & - &-0.13853E+01,-0.13865E+01,-0.13878E+01,-0.13890E+01,-0.13902E+01, & - &-0.13915E+01,-0.13927E+01,-0.13940E+01,-0.13952E+01,-0.13964E+01, & - &-0.13977E+01,-0.13989E+01,-0.14001E+01,-0.14014E+01,-0.14026E+01/ - - DATA (BNC04M(I),I=401,500)/ & - &-0.14038E+01,-0.14051E+01,-0.14063E+01,-0.14075E+01,-0.14087E+01, & - &-0.14100E+01,-0.14112E+01,-0.14124E+01,-0.14136E+01,-0.14148E+01, & - &-0.14161E+01,-0.14173E+01,-0.14185E+01,-0.14197E+01,-0.14209E+01, & - &-0.14221E+01,-0.14233E+01,-0.14245E+01,-0.14257E+01,-0.14269E+01, & - &-0.14281E+01,-0.14293E+01,-0.14305E+01,-0.14317E+01,-0.14329E+01, & - &-0.14341E+01,-0.14353E+01,-0.14365E+01,-0.14377E+01,-0.14389E+01, & - &-0.14401E+01,-0.14413E+01,-0.14425E+01,-0.14437E+01,-0.14448E+01, & - &-0.14460E+01,-0.14472E+01,-0.14484E+01,-0.14496E+01,-0.14508E+01, & - &-0.14519E+01,-0.14531E+01,-0.14543E+01,-0.14555E+01,-0.14566E+01, & - &-0.14578E+01,-0.14590E+01,-0.14602E+01,-0.14613E+01,-0.14625E+01, & - &-0.14637E+01,-0.14648E+01,-0.14660E+01,-0.14672E+01,-0.14683E+01, & - &-0.14695E+01,-0.14706E+01,-0.14718E+01,-0.14730E+01,-0.14741E+01, & - &-0.14753E+01,-0.14764E+01,-0.14776E+01,-0.14787E+01,-0.14799E+01, & - &-0.14810E+01,-0.14822E+01,-0.14833E+01,-0.14845E+01,-0.14856E+01, & - &-0.14868E+01,-0.14879E+01,-0.14891E+01,-0.14902E+01,-0.14913E+01, & - &-0.14925E+01,-0.14936E+01,-0.14948E+01,-0.14959E+01,-0.14970E+01, & - &-0.14982E+01,-0.14993E+01,-0.15004E+01,-0.15016E+01,-0.15027E+01, & - &-0.15038E+01,-0.15050E+01,-0.15061E+01,-0.15072E+01,-0.15083E+01, & - &-0.15095E+01,-0.15106E+01,-0.15117E+01,-0.15128E+01,-0.15140E+01, & - &-0.15151E+01,-0.15162E+01,-0.15173E+01,-0.15184E+01,-0.15196E+01/ - - DATA (BNC04M(I),I=501,600)/ & - &-0.15207E+01,-0.15218E+01,-0.15229E+01,-0.15240E+01,-0.15251E+01, & - &-0.15262E+01,-0.15273E+01,-0.15285E+01,-0.15296E+01,-0.15307E+01, & - &-0.15318E+01,-0.15329E+01,-0.15340E+01,-0.15351E+01,-0.15362E+01, & - &-0.15373E+01,-0.15384E+01,-0.15395E+01,-0.15406E+01,-0.15417E+01, & - &-0.15428E+01,-0.15439E+01,-0.15450E+01,-0.15461E+01,-0.15472E+01, & - &-0.15483E+01,-0.15494E+01,-0.15505E+01,-0.15516E+01,-0.15526E+01, & - &-0.15537E+01,-0.15548E+01,-0.15559E+01,-0.15570E+01,-0.15581E+01, & - &-0.15592E+01,-0.15603E+01,-0.15613E+01,-0.15624E+01,-0.15635E+01, & - &-0.15646E+01,-0.15657E+01,-0.15667E+01,-0.15678E+01,-0.15689E+01, & - &-0.15700E+01,-0.15711E+01,-0.15721E+01,-0.15732E+01,-0.15743E+01, & - &-0.15754E+01,-0.15764E+01,-0.15775E+01,-0.15786E+01,-0.15796E+01, & - &-0.15807E+01,-0.15818E+01,-0.15828E+01,-0.15839E+01,-0.15850E+01, & - &-0.15860E+01,-0.15871E+01,-0.15882E+01,-0.15892E+01,-0.15903E+01, & - &-0.15914E+01,-0.15924E+01,-0.15935E+01,-0.15945E+01,-0.15956E+01, & - &-0.15967E+01,-0.15977E+01,-0.15988E+01,-0.15998E+01,-0.16009E+01, & - &-0.16019E+01,-0.16030E+01,-0.16041E+01,-0.16051E+01,-0.16062E+01, & - &-0.16072E+01,-0.16083E+01,-0.16093E+01,-0.16104E+01,-0.16114E+01, & - &-0.16124E+01,-0.16135E+01,-0.16145E+01,-0.16156E+01,-0.16166E+01, & - &-0.16177E+01,-0.16187E+01,-0.16198E+01,-0.16208E+01,-0.16218E+01, & - &-0.16229E+01,-0.16239E+01,-0.16250E+01,-0.16260E+01,-0.16270E+01/ - - DATA (BNC04M(I),I=601,700)/ & - &-0.16382E+01,-0.16485E+01,-0.16587E+01,-0.16688E+01,-0.16789E+01, & - &-0.16890E+01,-0.16989E+01,-0.17088E+01,-0.17187E+01,-0.17285E+01, & - &-0.17383E+01,-0.17480E+01,-0.17576E+01,-0.17673E+01,-0.17768E+01, & - &-0.17863E+01,-0.17958E+01,-0.18053E+01,-0.18146E+01,-0.18240E+01, & - &-0.18333E+01,-0.18426E+01,-0.18518E+01,-0.18610E+01,-0.18702E+01, & - &-0.18793E+01,-0.18884E+01,-0.18974E+01,-0.19065E+01,-0.19154E+01, & - &-0.19244E+01,-0.19333E+01,-0.19422E+01,-0.19511E+01,-0.19599E+01, & - &-0.19687E+01,-0.19775E+01,-0.19862E+01,-0.19949E+01,-0.20036E+01, & - &-0.20123E+01,-0.20209E+01,-0.20295E+01,-0.20381E+01,-0.20466E+01, & - &-0.20552E+01,-0.20637E+01,-0.20722E+01,-0.20806E+01,-0.20890E+01, & - &-0.20975E+01,-0.21058E+01,-0.21142E+01,-0.21226E+01,-0.21309E+01, & - &-0.21392E+01,-0.21475E+01,-0.21557E+01,-0.21640E+01,-0.21722E+01, & - &-0.21804E+01,-0.21886E+01,-0.21968E+01,-0.22049E+01,-0.22130E+01, & - &-0.22211E+01,-0.22292E+01,-0.22373E+01,-0.22454E+01,-0.22534E+01, & - &-0.22614E+01,-0.22694E+01,-0.22774E+01,-0.22854E+01,-0.22933E+01, & - &-0.23013E+01,-0.23092E+01,-0.23171E+01,-0.23250E+01,-0.23329E+01, & - &-0.23408E+01,-0.23486E+01,-0.23564E+01,-0.23643E+01,-0.23721E+01, & - &-0.23799E+01,-0.23876E+01,-0.23954E+01,-0.24032E+01,-0.24109E+01, & - &-0.24186E+01,-0.24263E+01,-0.24340E+01,-0.24417E+01,-0.24494E+01, & - &-0.24570E+01,-0.24647E+01,-0.24723E+01,-0.24800E+01,-0.24876E+01/ - - DATA (BNC04M(I),I=701,741)/ & - &-0.24952E+01,-0.25028E+01,-0.25103E+01,-0.25179E+01,-0.25255E+01, & - &-0.25330E+01,-0.25405E+01,-0.25481E+01,-0.25556E+01,-0.25631E+01, & - &-0.25706E+01,-0.25780E+01,-0.25855E+01,-0.25930E+01,-0.26004E+01, & - &-0.26079E+01,-0.26153E+01,-0.26227E+01,-0.26301E+01,-0.26375E+01, & - &-0.26449E+01,-0.26523E+01,-0.26597E+01,-0.26670E+01,-0.26744E+01, & - &-0.26817E+01,-0.26891E+01,-0.26964E+01,-0.27037E+01,-0.27110E+01, & - &-0.27183E+01,-0.27256E+01,-0.27329E+01,-0.27401E+01,-0.27474E+01, & - &-0.27547E+01,-0.27619E+01,-0.27692E+01,-0.27764E+01,-0.27836E+01, & - &-0.27908E+01 & - & / -! -! *** NH4NO3 -! - DATA (BNC05M(I),I=1,100)/ & - &-0.49707E-01,-0.11083E+00,-0.14292E+00,-0.16643E+00,-0.18546E+00, & - &-0.20168E+00,-0.21592E+00,-0.22872E+00,-0.24038E+00,-0.25114E+00, & - &-0.26116E+00,-0.27056E+00,-0.27943E+00,-0.28784E+00,-0.29586E+00, & - &-0.30352E+00,-0.31087E+00,-0.31794E+00,-0.32476E+00,-0.33134E+00, & - &-0.33772E+00,-0.34390E+00,-0.34990E+00,-0.35574E+00,-0.36142E+00, & - &-0.36695E+00,-0.37235E+00,-0.37763E+00,-0.38278E+00,-0.38782E+00, & - &-0.39275E+00,-0.39758E+00,-0.40232E+00,-0.40696E+00,-0.41151E+00, & - &-0.41597E+00,-0.42035E+00,-0.42466E+00,-0.42889E+00,-0.43305E+00, & - &-0.43713E+00,-0.44115E+00,-0.44511E+00,-0.44900E+00,-0.45283E+00, & - &-0.45660E+00,-0.46032E+00,-0.46398E+00,-0.46759E+00,-0.47114E+00, & - &-0.47465E+00,-0.47811E+00,-0.48152E+00,-0.48489E+00,-0.48821E+00, & - &-0.49150E+00,-0.49474E+00,-0.49794E+00,-0.50111E+00,-0.50424E+00, & - &-0.50733E+00,-0.51039E+00,-0.51342E+00,-0.51642E+00,-0.51939E+00, & - &-0.52233E+00,-0.52524E+00,-0.52812E+00,-0.53098E+00,-0.53382E+00, & - &-0.53663E+00,-0.53943E+00,-0.54220E+00,-0.54495E+00,-0.54768E+00, & - &-0.55039E+00,-0.55309E+00,-0.55577E+00,-0.55843E+00,-0.56108E+00, & - &-0.56371E+00,-0.56633E+00,-0.56894E+00,-0.57153E+00,-0.57412E+00, & - &-0.57669E+00,-0.57925E+00,-0.58180E+00,-0.58433E+00,-0.58686E+00, & - &-0.58938E+00,-0.59189E+00,-0.59439E+00,-0.59688E+00,-0.59936E+00, & - &-0.60184E+00,-0.60430E+00,-0.60676E+00,-0.60921E+00,-0.61165E+00/ - - DATA (BNC05M(I),I=101,200)/ & - &-0.61408E+00,-0.61651E+00,-0.61892E+00,-0.62133E+00,-0.62373E+00, & - &-0.62612E+00,-0.62851E+00,-0.63088E+00,-0.63325E+00,-0.63561E+00, & - &-0.63796E+00,-0.64030E+00,-0.64263E+00,-0.64496E+00,-0.64727E+00, & - &-0.64958E+00,-0.65188E+00,-0.65417E+00,-0.65645E+00,-0.65872E+00, & - &-0.66098E+00,-0.66324E+00,-0.66548E+00,-0.66772E+00,-0.66995E+00, & - &-0.67217E+00,-0.67438E+00,-0.67658E+00,-0.67877E+00,-0.68095E+00, & - &-0.68312E+00,-0.68529E+00,-0.68744E+00,-0.68959E+00,-0.69173E+00, & - &-0.69386E+00,-0.69598E+00,-0.69809E+00,-0.70019E+00,-0.70229E+00, & - &-0.70437E+00,-0.70645E+00,-0.70852E+00,-0.71058E+00,-0.71263E+00, & - &-0.71468E+00,-0.71671E+00,-0.71874E+00,-0.72076E+00,-0.72277E+00, & - &-0.72477E+00,-0.72677E+00,-0.72876E+00,-0.73074E+00,-0.73271E+00, & - &-0.73468E+00,-0.73664E+00,-0.73859E+00,-0.74053E+00,-0.74246E+00, & - &-0.74439E+00,-0.74631E+00,-0.74823E+00,-0.75013E+00,-0.75203E+00, & - &-0.75393E+00,-0.75581E+00,-0.75769E+00,-0.75956E+00,-0.76143E+00, & - &-0.76329E+00,-0.76514E+00,-0.76698E+00,-0.76882E+00,-0.77066E+00, & - &-0.77248E+00,-0.77430E+00,-0.77611E+00,-0.77792E+00,-0.77972E+00, & - &-0.78152E+00,-0.78331E+00,-0.78509E+00,-0.78686E+00,-0.78863E+00, & - &-0.79040E+00,-0.79216E+00,-0.79391E+00,-0.79566E+00,-0.79740E+00, & - &-0.79913E+00,-0.80086E+00,-0.80258E+00,-0.80430E+00,-0.80601E+00, & - &-0.80772E+00,-0.80942E+00,-0.81112E+00,-0.81281E+00,-0.81449E+00/ - - DATA (BNC05M(I),I=201,300)/ & - &-0.81617E+00,-0.81785E+00,-0.81952E+00,-0.82118E+00,-0.82284E+00, & - &-0.82449E+00,-0.82614E+00,-0.82779E+00,-0.82942E+00,-0.83106E+00, & - &-0.83269E+00,-0.83431E+00,-0.83593E+00,-0.83754E+00,-0.83915E+00, & - &-0.84075E+00,-0.84235E+00,-0.84395E+00,-0.84554E+00,-0.84712E+00, & - &-0.84870E+00,-0.85028E+00,-0.85185E+00,-0.85341E+00,-0.85498E+00, & - &-0.85653E+00,-0.85809E+00,-0.85963E+00,-0.86118E+00,-0.86272E+00, & - &-0.86425E+00,-0.86578E+00,-0.86731E+00,-0.86883E+00,-0.87035E+00, & - &-0.87186E+00,-0.87337E+00,-0.87488E+00,-0.87638E+00,-0.87788E+00, & - &-0.87937E+00,-0.88086E+00,-0.88234E+00,-0.88382E+00,-0.88530E+00, & - &-0.88677E+00,-0.88824E+00,-0.88970E+00,-0.89116E+00,-0.89262E+00, & - &-0.89407E+00,-0.89552E+00,-0.89697E+00,-0.89841E+00,-0.89985E+00, & - &-0.90128E+00,-0.90271E+00,-0.90414E+00,-0.90556E+00,-0.90698E+00, & - &-0.90839E+00,-0.90980E+00,-0.91121E+00,-0.91261E+00,-0.91402E+00, & - &-0.91541E+00,-0.91681E+00,-0.91820E+00,-0.91958E+00,-0.92096E+00, & - &-0.92234E+00,-0.92372E+00,-0.92509E+00,-0.92646E+00,-0.92783E+00, & - &-0.92919E+00,-0.93055E+00,-0.93190E+00,-0.93326E+00,-0.93461E+00, & - &-0.93595E+00,-0.93729E+00,-0.93863E+00,-0.93997E+00,-0.94130E+00, & - &-0.94263E+00,-0.94396E+00,-0.94528E+00,-0.94660E+00,-0.94792E+00, & - &-0.94923E+00,-0.95054E+00,-0.95185E+00,-0.95316E+00,-0.95446E+00, & - &-0.95576E+00,-0.95705E+00,-0.95834E+00,-0.95963E+00,-0.96092E+00/ - - DATA (BNC05M(I),I=301,400)/ & - &-0.96220E+00,-0.96348E+00,-0.96476E+00,-0.96604E+00,-0.96731E+00, & - &-0.96858E+00,-0.96984E+00,-0.97110E+00,-0.97237E+00,-0.97362E+00, & - &-0.97488E+00,-0.97613E+00,-0.97738E+00,-0.97862E+00,-0.97987E+00, & - &-0.98111E+00,-0.98235E+00,-0.98358E+00,-0.98481E+00,-0.98604E+00, & - &-0.98727E+00,-0.98850E+00,-0.98972E+00,-0.99094E+00,-0.99215E+00, & - &-0.99337E+00,-0.99458E+00,-0.99579E+00,-0.99699E+00,-0.99820E+00, & - &-0.99940E+00,-0.10006E+01,-0.10018E+01,-0.10030E+01,-0.10042E+01, & - &-0.10054E+01,-0.10066E+01,-0.10077E+01,-0.10089E+01,-0.10101E+01, & - &-0.10113E+01,-0.10124E+01,-0.10136E+01,-0.10148E+01,-0.10159E+01, & - &-0.10171E+01,-0.10183E+01,-0.10194E+01,-0.10206E+01,-0.10217E+01, & - &-0.10229E+01,-0.10240E+01,-0.10252E+01,-0.10263E+01,-0.10275E+01, & - &-0.10286E+01,-0.10298E+01,-0.10309E+01,-0.10320E+01,-0.10332E+01, & - &-0.10343E+01,-0.10354E+01,-0.10365E+01,-0.10377E+01,-0.10388E+01, & - &-0.10399E+01,-0.10410E+01,-0.10421E+01,-0.10433E+01,-0.10444E+01, & - &-0.10455E+01,-0.10466E+01,-0.10477E+01,-0.10488E+01,-0.10499E+01, & - &-0.10510E+01,-0.10521E+01,-0.10532E+01,-0.10543E+01,-0.10553E+01, & - &-0.10564E+01,-0.10575E+01,-0.10586E+01,-0.10597E+01,-0.10608E+01, & - &-0.10618E+01,-0.10629E+01,-0.10640E+01,-0.10650E+01,-0.10661E+01, & - &-0.10672E+01,-0.10682E+01,-0.10693E+01,-0.10704E+01,-0.10714E+01, & - &-0.10725E+01,-0.10735E+01,-0.10746E+01,-0.10756E+01,-0.10767E+01/ - - DATA (BNC05M(I),I=401,500)/ & - &-0.10777E+01,-0.10788E+01,-0.10798E+01,-0.10809E+01,-0.10819E+01, & - &-0.10830E+01,-0.10840E+01,-0.10850E+01,-0.10861E+01,-0.10871E+01, & - &-0.10881E+01,-0.10891E+01,-0.10902E+01,-0.10912E+01,-0.10922E+01, & - &-0.10932E+01,-0.10943E+01,-0.10953E+01,-0.10963E+01,-0.10973E+01, & - &-0.10983E+01,-0.10993E+01,-0.11003E+01,-0.11013E+01,-0.11023E+01, & - &-0.11033E+01,-0.11043E+01,-0.11053E+01,-0.11063E+01,-0.11073E+01, & - &-0.11083E+01,-0.11093E+01,-0.11103E+01,-0.11113E+01,-0.11123E+01, & - &-0.11133E+01,-0.11143E+01,-0.11152E+01,-0.11162E+01,-0.11172E+01, & - &-0.11182E+01,-0.11192E+01,-0.11201E+01,-0.11211E+01,-0.11221E+01, & - &-0.11230E+01,-0.11240E+01,-0.11250E+01,-0.11260E+01,-0.11269E+01, & - &-0.11279E+01,-0.11288E+01,-0.11298E+01,-0.11308E+01,-0.11317E+01, & - &-0.11327E+01,-0.11336E+01,-0.11346E+01,-0.11355E+01,-0.11365E+01, & - &-0.11374E+01,-0.11384E+01,-0.11393E+01,-0.11402E+01,-0.11412E+01, & - &-0.11421E+01,-0.11431E+01,-0.11440E+01,-0.11449E+01,-0.11459E+01, & - &-0.11468E+01,-0.11477E+01,-0.11487E+01,-0.11496E+01,-0.11505E+01, & - &-0.11514E+01,-0.11524E+01,-0.11533E+01,-0.11542E+01,-0.11551E+01, & - &-0.11560E+01,-0.11570E+01,-0.11579E+01,-0.11588E+01,-0.11597E+01, & - &-0.11606E+01,-0.11615E+01,-0.11624E+01,-0.11633E+01,-0.11643E+01, & - &-0.11652E+01,-0.11661E+01,-0.11670E+01,-0.11679E+01,-0.11688E+01, & - &-0.11697E+01,-0.11706E+01,-0.11715E+01,-0.11723E+01,-0.11732E+01/ - - DATA (BNC05M(I),I=501,600)/ & - &-0.11741E+01,-0.11750E+01,-0.11759E+01,-0.11768E+01,-0.11777E+01, & - &-0.11786E+01,-0.11795E+01,-0.11803E+01,-0.11812E+01,-0.11821E+01, & - &-0.11830E+01,-0.11839E+01,-0.11847E+01,-0.11856E+01,-0.11865E+01, & - &-0.11874E+01,-0.11882E+01,-0.11891E+01,-0.11900E+01,-0.11908E+01, & - &-0.11917E+01,-0.11926E+01,-0.11934E+01,-0.11943E+01,-0.11952E+01, & - &-0.11960E+01,-0.11969E+01,-0.11977E+01,-0.11986E+01,-0.11994E+01, & - &-0.12003E+01,-0.12011E+01,-0.12020E+01,-0.12029E+01,-0.12037E+01, & - &-0.12046E+01,-0.12054E+01,-0.12062E+01,-0.12071E+01,-0.12079E+01, & - &-0.12088E+01,-0.12096E+01,-0.12105E+01,-0.12113E+01,-0.12121E+01, & - &-0.12130E+01,-0.12138E+01,-0.12147E+01,-0.12155E+01,-0.12163E+01, & - &-0.12171E+01,-0.12180E+01,-0.12188E+01,-0.12196E+01,-0.12205E+01, & - &-0.12213E+01,-0.12221E+01,-0.12229E+01,-0.12238E+01,-0.12246E+01, & - &-0.12254E+01,-0.12262E+01,-0.12271E+01,-0.12279E+01,-0.12287E+01, & - &-0.12295E+01,-0.12303E+01,-0.12311E+01,-0.12319E+01,-0.12328E+01, & - &-0.12336E+01,-0.12344E+01,-0.12352E+01,-0.12360E+01,-0.12368E+01, & - &-0.12376E+01,-0.12384E+01,-0.12392E+01,-0.12400E+01,-0.12408E+01, & - &-0.12416E+01,-0.12424E+01,-0.12432E+01,-0.12440E+01,-0.12448E+01, & - &-0.12456E+01,-0.12464E+01,-0.12472E+01,-0.12480E+01,-0.12488E+01, & - &-0.12496E+01,-0.12504E+01,-0.12512E+01,-0.12519E+01,-0.12527E+01, & - &-0.12535E+01,-0.12543E+01,-0.12551E+01,-0.12559E+01,-0.12567E+01/ - - DATA (BNC05M(I),I=601,700)/ & - &-0.12650E+01,-0.12727E+01,-0.12803E+01,-0.12878E+01,-0.12952E+01, & - &-0.13026E+01,-0.13098E+01,-0.13170E+01,-0.13241E+01,-0.13312E+01, & - &-0.13381E+01,-0.13450E+01,-0.13519E+01,-0.13586E+01,-0.13654E+01, & - &-0.13720E+01,-0.13786E+01,-0.13851E+01,-0.13916E+01,-0.13980E+01, & - &-0.14044E+01,-0.14107E+01,-0.14169E+01,-0.14231E+01,-0.14293E+01, & - &-0.14354E+01,-0.14415E+01,-0.14475E+01,-0.14534E+01,-0.14594E+01, & - &-0.14652E+01,-0.14711E+01,-0.14769E+01,-0.14827E+01,-0.14884E+01, & - &-0.14941E+01,-0.14997E+01,-0.15053E+01,-0.15109E+01,-0.15164E+01, & - &-0.15219E+01,-0.15274E+01,-0.15328E+01,-0.15382E+01,-0.15436E+01, & - &-0.15490E+01,-0.15543E+01,-0.15595E+01,-0.15648E+01,-0.15700E+01, & - &-0.15752E+01,-0.15804E+01,-0.15855E+01,-0.15906E+01,-0.15957E+01, & - &-0.16008E+01,-0.16058E+01,-0.16108E+01,-0.16158E+01,-0.16208E+01, & - &-0.16257E+01,-0.16306E+01,-0.16355E+01,-0.16404E+01,-0.16452E+01, & - &-0.16500E+01,-0.16548E+01,-0.16596E+01,-0.16644E+01,-0.16691E+01, & - &-0.16739E+01,-0.16786E+01,-0.16832E+01,-0.16879E+01,-0.16926E+01, & - &-0.16972E+01,-0.17018E+01,-0.17064E+01,-0.17110E+01,-0.17155E+01, & - &-0.17201E+01,-0.17246E+01,-0.17291E+01,-0.17336E+01,-0.17381E+01, & - &-0.17425E+01,-0.17470E+01,-0.17514E+01,-0.17558E+01,-0.17602E+01, & - &-0.17646E+01,-0.17690E+01,-0.17733E+01,-0.17777E+01,-0.17820E+01, & - &-0.17863E+01,-0.17906E+01,-0.17949E+01,-0.17992E+01,-0.18035E+01/ - - DATA (BNC05M(I),I=701,741)/ & - &-0.18077E+01,-0.18119E+01,-0.18162E+01,-0.18204E+01,-0.18246E+01, & - &-0.18288E+01,-0.18330E+01,-0.18371E+01,-0.18413E+01,-0.18454E+01, & - &-0.18496E+01,-0.18537E+01,-0.18578E+01,-0.18619E+01,-0.18660E+01, & - &-0.18701E+01,-0.18742E+01,-0.18782E+01,-0.18823E+01,-0.18863E+01, & - &-0.18903E+01,-0.18944E+01,-0.18984E+01,-0.19024E+01,-0.19064E+01, & - &-0.19104E+01,-0.19144E+01,-0.19183E+01,-0.19223E+01,-0.19262E+01, & - &-0.19302E+01,-0.19341E+01,-0.19380E+01,-0.19419E+01,-0.19459E+01, & - &-0.19498E+01,-0.19537E+01,-0.19575E+01,-0.19614E+01,-0.19653E+01, & - &-0.19691E+01 & - & / -! -! *** NH4Cl -! - DATA (BNC06M(I),I=1,100)/ & - &-0.48310E-01,-0.10321E+00,-0.12958E+00,-0.14766E+00,-0.16145E+00, & - &-0.17257E+00,-0.18185E+00,-0.18977E+00,-0.19665E+00,-0.20270E+00, & - &-0.20809E+00,-0.21292E+00,-0.21728E+00,-0.22124E+00,-0.22486E+00, & - &-0.22818E+00,-0.23123E+00,-0.23405E+00,-0.23666E+00,-0.23908E+00, & - &-0.24134E+00,-0.24344E+00,-0.24541E+00,-0.24725E+00,-0.24898E+00, & - &-0.25060E+00,-0.25213E+00,-0.25357E+00,-0.25493E+00,-0.25621E+00, & - &-0.25742E+00,-0.25857E+00,-0.25966E+00,-0.26069E+00,-0.26167E+00, & - &-0.26261E+00,-0.26350E+00,-0.26434E+00,-0.26515E+00,-0.26592E+00, & - &-0.26666E+00,-0.26736E+00,-0.26804E+00,-0.26868E+00,-0.26930E+00, & - &-0.26990E+00,-0.27047E+00,-0.27101E+00,-0.27154E+00,-0.27205E+00, & - &-0.27253E+00,-0.27300E+00,-0.27345E+00,-0.27389E+00,-0.27431E+00, & - &-0.27471E+00,-0.27510E+00,-0.27547E+00,-0.27583E+00,-0.27618E+00, & - &-0.27651E+00,-0.27684E+00,-0.27714E+00,-0.27744E+00,-0.27772E+00, & - &-0.27800E+00,-0.27826E+00,-0.27851E+00,-0.27874E+00,-0.27897E+00, & - &-0.27918E+00,-0.27939E+00,-0.27958E+00,-0.27976E+00,-0.27993E+00, & - &-0.28008E+00,-0.28023E+00,-0.28037E+00,-0.28049E+00,-0.28060E+00, & - &-0.28070E+00,-0.28080E+00,-0.28088E+00,-0.28094E+00,-0.28100E+00, & - &-0.28105E+00,-0.28108E+00,-0.28111E+00,-0.28113E+00,-0.28113E+00, & - &-0.28112E+00,-0.28111E+00,-0.28108E+00,-0.28105E+00,-0.28100E+00, & - &-0.28095E+00,-0.28089E+00,-0.28081E+00,-0.28073E+00,-0.28064E+00/ - - DATA (BNC06M(I),I=101,200)/ & - &-0.28055E+00,-0.28044E+00,-0.28033E+00,-0.28021E+00,-0.28008E+00, & - &-0.27994E+00,-0.27980E+00,-0.27965E+00,-0.27950E+00,-0.27934E+00, & - &-0.27917E+00,-0.27900E+00,-0.27882E+00,-0.27864E+00,-0.27845E+00, & - &-0.27826E+00,-0.27806E+00,-0.27786E+00,-0.27766E+00,-0.27745E+00, & - &-0.27724E+00,-0.27702E+00,-0.27681E+00,-0.27658E+00,-0.27636E+00, & - &-0.27613E+00,-0.27590E+00,-0.27567E+00,-0.27544E+00,-0.27520E+00, & - &-0.27496E+00,-0.27472E+00,-0.27448E+00,-0.27423E+00,-0.27398E+00, & - &-0.27374E+00,-0.27349E+00,-0.27323E+00,-0.27298E+00,-0.27273E+00, & - &-0.27247E+00,-0.27222E+00,-0.27196E+00,-0.27170E+00,-0.27144E+00, & - &-0.27118E+00,-0.27092E+00,-0.27065E+00,-0.27039E+00,-0.27013E+00, & - &-0.26986E+00,-0.26959E+00,-0.26933E+00,-0.26906E+00,-0.26879E+00, & - &-0.26852E+00,-0.26825E+00,-0.26798E+00,-0.26771E+00,-0.26744E+00, & - &-0.26717E+00,-0.26690E+00,-0.26663E+00,-0.26635E+00,-0.26608E+00, & - &-0.26581E+00,-0.26553E+00,-0.26526E+00,-0.26499E+00,-0.26471E+00, & - &-0.26444E+00,-0.26416E+00,-0.26389E+00,-0.26361E+00,-0.26333E+00, & - &-0.26306E+00,-0.26278E+00,-0.26251E+00,-0.26223E+00,-0.26195E+00, & - &-0.26168E+00,-0.26140E+00,-0.26112E+00,-0.26085E+00,-0.26057E+00, & - &-0.26029E+00,-0.26002E+00,-0.25974E+00,-0.25946E+00,-0.25919E+00, & - &-0.25891E+00,-0.25863E+00,-0.25836E+00,-0.25808E+00,-0.25781E+00, & - &-0.25753E+00,-0.25725E+00,-0.25698E+00,-0.25670E+00,-0.25643E+00/ - - DATA (BNC06M(I),I=201,300)/ & - &-0.25615E+00,-0.25588E+00,-0.25560E+00,-0.25533E+00,-0.25505E+00, & - &-0.25478E+00,-0.25450E+00,-0.25423E+00,-0.25396E+00,-0.25368E+00, & - &-0.25341E+00,-0.25314E+00,-0.25287E+00,-0.25259E+00,-0.25232E+00, & - &-0.25205E+00,-0.25178E+00,-0.25151E+00,-0.25124E+00,-0.25097E+00, & - &-0.25070E+00,-0.25043E+00,-0.25016E+00,-0.24989E+00,-0.24962E+00, & - &-0.24935E+00,-0.24908E+00,-0.24882E+00,-0.24855E+00,-0.24828E+00, & - &-0.24802E+00,-0.24775E+00,-0.24749E+00,-0.24722E+00,-0.24696E+00, & - &-0.24669E+00,-0.24643E+00,-0.24616E+00,-0.24590E+00,-0.24564E+00, & - &-0.24538E+00,-0.24511E+00,-0.24485E+00,-0.24459E+00,-0.24433E+00, & - &-0.24407E+00,-0.24381E+00,-0.24355E+00,-0.24329E+00,-0.24304E+00, & - &-0.24278E+00,-0.24252E+00,-0.24226E+00,-0.24201E+00,-0.24175E+00, & - &-0.24150E+00,-0.24124E+00,-0.24099E+00,-0.24073E+00,-0.24048E+00, & - &-0.24023E+00,-0.23997E+00,-0.23972E+00,-0.23947E+00,-0.23922E+00, & - &-0.23897E+00,-0.23872E+00,-0.23847E+00,-0.23822E+00,-0.23797E+00, & - &-0.23772E+00,-0.23748E+00,-0.23723E+00,-0.23698E+00,-0.23674E+00, & - &-0.23649E+00,-0.23625E+00,-0.23600E+00,-0.23576E+00,-0.23552E+00, & - &-0.23527E+00,-0.23503E+00,-0.23479E+00,-0.23455E+00,-0.23431E+00, & - &-0.23407E+00,-0.23383E+00,-0.23359E+00,-0.23335E+00,-0.23311E+00, & - &-0.23288E+00,-0.23264E+00,-0.23240E+00,-0.23217E+00,-0.23193E+00, & - &-0.23170E+00,-0.23146E+00,-0.23123E+00,-0.23100E+00,-0.23076E+00/ - - DATA (BNC06M(I),I=301,400)/ & - &-0.23053E+00,-0.23030E+00,-0.23007E+00,-0.22984E+00,-0.22961E+00, & - &-0.22938E+00,-0.22915E+00,-0.22892E+00,-0.22869E+00,-0.22847E+00, & - &-0.22824E+00,-0.22802E+00,-0.22779E+00,-0.22757E+00,-0.22734E+00, & - &-0.22712E+00,-0.22689E+00,-0.22667E+00,-0.22645E+00,-0.22623E+00, & - &-0.22601E+00,-0.22579E+00,-0.22557E+00,-0.22535E+00,-0.22513E+00, & - &-0.22491E+00,-0.22469E+00,-0.22448E+00,-0.22426E+00,-0.22404E+00, & - &-0.22383E+00,-0.22361E+00,-0.22340E+00,-0.22318E+00,-0.22297E+00, & - &-0.22276E+00,-0.22255E+00,-0.22233E+00,-0.22212E+00,-0.22191E+00, & - &-0.22170E+00,-0.22149E+00,-0.22129E+00,-0.22108E+00,-0.22087E+00, & - &-0.22066E+00,-0.22046E+00,-0.22025E+00,-0.22004E+00,-0.21984E+00, & - &-0.21963E+00,-0.21943E+00,-0.21923E+00,-0.21902E+00,-0.21882E+00, & - &-0.21862E+00,-0.21842E+00,-0.21822E+00,-0.21802E+00,-0.21782E+00, & - &-0.21762E+00,-0.21742E+00,-0.21722E+00,-0.21703E+00,-0.21683E+00, & - &-0.21663E+00,-0.21644E+00,-0.21624E+00,-0.21605E+00,-0.21585E+00, & - &-0.21566E+00,-0.21547E+00,-0.21527E+00,-0.21508E+00,-0.21489E+00, & - &-0.21470E+00,-0.21451E+00,-0.21432E+00,-0.21413E+00,-0.21394E+00, & - &-0.21375E+00,-0.21357E+00,-0.21338E+00,-0.21319E+00,-0.21301E+00, & - &-0.21282E+00,-0.21264E+00,-0.21245E+00,-0.21227E+00,-0.21208E+00, & - &-0.21190E+00,-0.21172E+00,-0.21154E+00,-0.21136E+00,-0.21118E+00, & - &-0.21100E+00,-0.21082E+00,-0.21064E+00,-0.21046E+00,-0.21028E+00/ - - DATA (BNC06M(I),I=401,500)/ & - &-0.21010E+00,-0.20992E+00,-0.20975E+00,-0.20957E+00,-0.20940E+00, & - &-0.20922E+00,-0.20905E+00,-0.20887E+00,-0.20870E+00,-0.20853E+00, & - &-0.20835E+00,-0.20818E+00,-0.20801E+00,-0.20784E+00,-0.20767E+00, & - &-0.20750E+00,-0.20733E+00,-0.20716E+00,-0.20699E+00,-0.20683E+00, & - &-0.20666E+00,-0.20649E+00,-0.20632E+00,-0.20616E+00,-0.20599E+00, & - &-0.20583E+00,-0.20566E+00,-0.20550E+00,-0.20534E+00,-0.20517E+00, & - &-0.20501E+00,-0.20485E+00,-0.20469E+00,-0.20453E+00,-0.20437E+00, & - &-0.20421E+00,-0.20405E+00,-0.20389E+00,-0.20373E+00,-0.20357E+00, & - &-0.20342E+00,-0.20326E+00,-0.20310E+00,-0.20295E+00,-0.20279E+00, & - &-0.20264E+00,-0.20248E+00,-0.20233E+00,-0.20218E+00,-0.20202E+00, & - &-0.20187E+00,-0.20172E+00,-0.20157E+00,-0.20142E+00,-0.20127E+00, & - &-0.20112E+00,-0.20097E+00,-0.20082E+00,-0.20067E+00,-0.20052E+00, & - &-0.20037E+00,-0.20022E+00,-0.20008E+00,-0.19993E+00,-0.19979E+00, & - &-0.19964E+00,-0.19950E+00,-0.19935E+00,-0.19921E+00,-0.19906E+00, & - &-0.19892E+00,-0.19878E+00,-0.19864E+00,-0.19850E+00,-0.19835E+00, & - &-0.19821E+00,-0.19807E+00,-0.19793E+00,-0.19780E+00,-0.19766E+00, & - &-0.19752E+00,-0.19738E+00,-0.19724E+00,-0.19711E+00,-0.19697E+00, & - &-0.19683E+00,-0.19670E+00,-0.19656E+00,-0.19643E+00,-0.19629E+00, & - &-0.19616E+00,-0.19603E+00,-0.19589E+00,-0.19576E+00,-0.19563E+00, & - &-0.19550E+00,-0.19537E+00,-0.19524E+00,-0.19511E+00,-0.19498E+00/ - - DATA (BNC06M(I),I=501,600)/ & - &-0.19485E+00,-0.19472E+00,-0.19459E+00,-0.19446E+00,-0.19434E+00, & - &-0.19421E+00,-0.19408E+00,-0.19396E+00,-0.19383E+00,-0.19371E+00, & - &-0.19358E+00,-0.19346E+00,-0.19333E+00,-0.19321E+00,-0.19309E+00, & - &-0.19296E+00,-0.19284E+00,-0.19272E+00,-0.19260E+00,-0.19248E+00, & - &-0.19236E+00,-0.19224E+00,-0.19212E+00,-0.19200E+00,-0.19188E+00, & - &-0.19176E+00,-0.19164E+00,-0.19153E+00,-0.19141E+00,-0.19129E+00, & - &-0.19118E+00,-0.19106E+00,-0.19094E+00,-0.19083E+00,-0.19071E+00, & - &-0.19060E+00,-0.19049E+00,-0.19037E+00,-0.19026E+00,-0.19015E+00, & - &-0.19004E+00,-0.18992E+00,-0.18981E+00,-0.18970E+00,-0.18959E+00, & - &-0.18948E+00,-0.18937E+00,-0.18926E+00,-0.18916E+00,-0.18905E+00, & - &-0.18894E+00,-0.18883E+00,-0.18872E+00,-0.18862E+00,-0.18851E+00, & - &-0.18841E+00,-0.18830E+00,-0.18819E+00,-0.18809E+00,-0.18799E+00, & - &-0.18788E+00,-0.18778E+00,-0.18768E+00,-0.18757E+00,-0.18747E+00, & - &-0.18737E+00,-0.18727E+00,-0.18717E+00,-0.18707E+00,-0.18697E+00, & - &-0.18687E+00,-0.18677E+00,-0.18667E+00,-0.18657E+00,-0.18647E+00, & - &-0.18637E+00,-0.18627E+00,-0.18618E+00,-0.18608E+00,-0.18598E+00, & - &-0.18589E+00,-0.18579E+00,-0.18570E+00,-0.18560E+00,-0.18551E+00, & - &-0.18541E+00,-0.18532E+00,-0.18523E+00,-0.18513E+00,-0.18504E+00, & - &-0.18495E+00,-0.18486E+00,-0.18477E+00,-0.18468E+00,-0.18458E+00, & - &-0.18449E+00,-0.18440E+00,-0.18431E+00,-0.18423E+00,-0.18414E+00/ - - DATA (BNC06M(I),I=601,700)/ & - &-0.18320E+00,-0.18237E+00,-0.18158E+00,-0.18083E+00,-0.18010E+00, & - &-0.17942E+00,-0.17876E+00,-0.17814E+00,-0.17755E+00,-0.17700E+00, & - &-0.17647E+00,-0.17597E+00,-0.17551E+00,-0.17507E+00,-0.17467E+00, & - &-0.17429E+00,-0.17394E+00,-0.17362E+00,-0.17333E+00,-0.17306E+00, & - &-0.17282E+00,-0.17260E+00,-0.17241E+00,-0.17225E+00,-0.17211E+00, & - &-0.17200E+00,-0.17190E+00,-0.17184E+00,-0.17179E+00,-0.17177E+00, & - &-0.17177E+00,-0.17180E+00,-0.17184E+00,-0.17191E+00,-0.17200E+00, & - &-0.17210E+00,-0.17223E+00,-0.17238E+00,-0.17255E+00,-0.17274E+00, & - &-0.17295E+00,-0.17318E+00,-0.17342E+00,-0.17369E+00,-0.17397E+00, & - &-0.17427E+00,-0.17459E+00,-0.17493E+00,-0.17528E+00,-0.17565E+00, & - &-0.17604E+00,-0.17644E+00,-0.17687E+00,-0.17730E+00,-0.17775E+00, & - &-0.17822E+00,-0.17871E+00,-0.17921E+00,-0.17972E+00,-0.18025E+00, & - &-0.18079E+00,-0.18135E+00,-0.18193E+00,-0.18251E+00,-0.18311E+00, & - &-0.18373E+00,-0.18436E+00,-0.18500E+00,-0.18565E+00,-0.18632E+00, & - &-0.18700E+00,-0.18770E+00,-0.18840E+00,-0.18912E+00,-0.18985E+00, & - &-0.19060E+00,-0.19135E+00,-0.19212E+00,-0.19290E+00,-0.19369E+00, & - &-0.19450E+00,-0.19531E+00,-0.19614E+00,-0.19697E+00,-0.19782E+00, & - &-0.19868E+00,-0.19955E+00,-0.20043E+00,-0.20132E+00,-0.20222E+00, & - &-0.20313E+00,-0.20405E+00,-0.20498E+00,-0.20592E+00,-0.20687E+00, & - &-0.20783E+00,-0.20880E+00,-0.20978E+00,-0.21077E+00,-0.21177E+00/ - - DATA (BNC06M(I),I=701,741)/ & - &-0.21278E+00,-0.21379E+00,-0.21482E+00,-0.21585E+00,-0.21690E+00, & - &-0.21795E+00,-0.21901E+00,-0.22008E+00,-0.22116E+00,-0.22224E+00, & - &-0.22334E+00,-0.22444E+00,-0.22555E+00,-0.22667E+00,-0.22780E+00, & - &-0.22893E+00,-0.23007E+00,-0.23122E+00,-0.23238E+00,-0.23355E+00, & - &-0.23472E+00,-0.23590E+00,-0.23709E+00,-0.23828E+00,-0.23949E+00, & - &-0.24070E+00,-0.24191E+00,-0.24314E+00,-0.24437E+00,-0.24561E+00, & - &-0.24685E+00,-0.24810E+00,-0.24936E+00,-0.25062E+00,-0.25189E+00, & - &-0.25317E+00,-0.25446E+00,-0.25575E+00,-0.25704E+00,-0.25835E+00, & - &-0.25966E+00 & - & / -! -! *** (2H,SO4) -! - DATA (BNC07M(I),I=1,100)/ & - &-0.97854E-01,-0.21310E+00,-0.27082E+00,-0.31170E+00,-0.34384E+00, & - &-0.37049E+00,-0.39335E+00,-0.41342E+00,-0.43132E+00,-0.44752E+00, & - &-0.46231E+00,-0.47593E+00,-0.48857E+00,-0.50036E+00,-0.51142E+00, & - &-0.52184E+00,-0.53169E+00,-0.54103E+00,-0.54992E+00,-0.55840E+00, & - &-0.56651E+00,-0.57428E+00,-0.58175E+00,-0.58893E+00,-0.59585E+00, & - &-0.60254E+00,-0.60899E+00,-0.61525E+00,-0.62130E+00,-0.62718E+00, & - &-0.63289E+00,-0.63844E+00,-0.64384E+00,-0.64910E+00,-0.65422E+00, & - &-0.65922E+00,-0.66410E+00,-0.66887E+00,-0.67353E+00,-0.67809E+00, & - &-0.68255E+00,-0.68692E+00,-0.69120E+00,-0.69539E+00,-0.69951E+00, & - &-0.70355E+00,-0.70751E+00,-0.71141E+00,-0.71523E+00,-0.71899E+00, & - &-0.72269E+00,-0.72632E+00,-0.72990E+00,-0.73342E+00,-0.73689E+00, & - &-0.74031E+00,-0.74367E+00,-0.74699E+00,-0.75026E+00,-0.75349E+00, & - &-0.75667E+00,-0.75981E+00,-0.76291E+00,-0.76597E+00,-0.76900E+00, & - &-0.77198E+00,-0.77493E+00,-0.77785E+00,-0.78073E+00,-0.78358E+00, & - &-0.78640E+00,-0.78919E+00,-0.79195E+00,-0.79468E+00,-0.79738E+00, & - &-0.80006E+00,-0.80271E+00,-0.80533E+00,-0.80793E+00,-0.81051E+00, & - &-0.81306E+00,-0.81559E+00,-0.81810E+00,-0.82058E+00,-0.82305E+00, & - &-0.82550E+00,-0.82792E+00,-0.83033E+00,-0.83271E+00,-0.83508E+00, & - &-0.83744E+00,-0.83977E+00,-0.84209E+00,-0.84439E+00,-0.84667E+00, & - &-0.84894E+00,-0.85119E+00,-0.85343E+00,-0.85565E+00,-0.85785E+00/ - - DATA (BNC07M(I),I=101,200)/ & - &-0.86005E+00,-0.86222E+00,-0.86439E+00,-0.86654E+00,-0.86868E+00, & - &-0.87080E+00,-0.87291E+00,-0.87501E+00,-0.87710E+00,-0.87917E+00, & - &-0.88123E+00,-0.88328E+00,-0.88532E+00,-0.88735E+00,-0.88936E+00, & - &-0.89137E+00,-0.89336E+00,-0.89534E+00,-0.89731E+00,-0.89927E+00, & - &-0.90122E+00,-0.90316E+00,-0.90509E+00,-0.90701E+00,-0.90892E+00, & - &-0.91082E+00,-0.91271E+00,-0.91460E+00,-0.91647E+00,-0.91833E+00, & - &-0.92019E+00,-0.92203E+00,-0.92387E+00,-0.92569E+00,-0.92751E+00, & - &-0.92932E+00,-0.93113E+00,-0.93292E+00,-0.93471E+00,-0.93648E+00, & - &-0.93825E+00,-0.94002E+00,-0.94177E+00,-0.94352E+00,-0.94526E+00, & - &-0.94699E+00,-0.94872E+00,-0.95043E+00,-0.95214E+00,-0.95385E+00, & - &-0.95554E+00,-0.95723E+00,-0.95892E+00,-0.96060E+00,-0.96227E+00, & - &-0.96393E+00,-0.96559E+00,-0.96724E+00,-0.96888E+00,-0.97052E+00, & - &-0.97215E+00,-0.97378E+00,-0.97540E+00,-0.97701E+00,-0.97862E+00, & - &-0.98023E+00,-0.98182E+00,-0.98342E+00,-0.98500E+00,-0.98658E+00, & - &-0.98816E+00,-0.98973E+00,-0.99129E+00,-0.99285E+00,-0.99441E+00, & - &-0.99596E+00,-0.99750E+00,-0.99904E+00,-0.10006E+01,-0.10021E+01, & - &-0.10036E+01,-0.10052E+01,-0.10067E+01,-0.10082E+01,-0.10097E+01, & - &-0.10112E+01,-0.10127E+01,-0.10142E+01,-0.10157E+01,-0.10171E+01, & - &-0.10186E+01,-0.10201E+01,-0.10216E+01,-0.10230E+01,-0.10245E+01, & - &-0.10260E+01,-0.10274E+01,-0.10289E+01,-0.10303E+01,-0.10317E+01/ - - DATA (BNC07M(I),I=201,300)/ & - &-0.10332E+01,-0.10346E+01,-0.10361E+01,-0.10375E+01,-0.10389E+01, & - &-0.10403E+01,-0.10417E+01,-0.10431E+01,-0.10446E+01,-0.10460E+01, & - &-0.10474E+01,-0.10488E+01,-0.10502E+01,-0.10515E+01,-0.10529E+01, & - &-0.10543E+01,-0.10557E+01,-0.10571E+01,-0.10584E+01,-0.10598E+01, & - &-0.10612E+01,-0.10625E+01,-0.10639E+01,-0.10653E+01,-0.10666E+01, & - &-0.10680E+01,-0.10693E+01,-0.10707E+01,-0.10720E+01,-0.10733E+01, & - &-0.10747E+01,-0.10760E+01,-0.10773E+01,-0.10787E+01,-0.10800E+01, & - &-0.10813E+01,-0.10826E+01,-0.10839E+01,-0.10853E+01,-0.10866E+01, & - &-0.10879E+01,-0.10892E+01,-0.10905E+01,-0.10918E+01,-0.10931E+01, & - &-0.10944E+01,-0.10957E+01,-0.10970E+01,-0.10982E+01,-0.10995E+01, & - &-0.11008E+01,-0.11021E+01,-0.11034E+01,-0.11046E+01,-0.11059E+01, & - &-0.11072E+01,-0.11084E+01,-0.11097E+01,-0.11110E+01,-0.11122E+01, & - &-0.11135E+01,-0.11147E+01,-0.11160E+01,-0.11172E+01,-0.11185E+01, & - &-0.11197E+01,-0.11210E+01,-0.11222E+01,-0.11234E+01,-0.11247E+01, & - &-0.11259E+01,-0.11271E+01,-0.11284E+01,-0.11296E+01,-0.11308E+01, & - &-0.11321E+01,-0.11333E+01,-0.11345E+01,-0.11357E+01,-0.11369E+01, & - &-0.11381E+01,-0.11393E+01,-0.11406E+01,-0.11418E+01,-0.11430E+01, & - &-0.11442E+01,-0.11454E+01,-0.11466E+01,-0.11478E+01,-0.11490E+01, & - &-0.11502E+01,-0.11513E+01,-0.11525E+01,-0.11537E+01,-0.11549E+01, & - &-0.11561E+01,-0.11573E+01,-0.11585E+01,-0.11596E+01,-0.11608E+01/ - - DATA (BNC07M(I),I=301,400)/ & - &-0.11620E+01,-0.11632E+01,-0.11643E+01,-0.11655E+01,-0.11667E+01, & - &-0.11678E+01,-0.11690E+01,-0.11702E+01,-0.11713E+01,-0.11725E+01, & - &-0.11736E+01,-0.11748E+01,-0.11759E+01,-0.11771E+01,-0.11782E+01, & - &-0.11794E+01,-0.11805E+01,-0.11817E+01,-0.11828E+01,-0.11840E+01, & - &-0.11851E+01,-0.11863E+01,-0.11874E+01,-0.11885E+01,-0.11897E+01, & - &-0.11908E+01,-0.11919E+01,-0.11931E+01,-0.11942E+01,-0.11953E+01, & - &-0.11964E+01,-0.11976E+01,-0.11987E+01,-0.11998E+01,-0.12009E+01, & - &-0.12021E+01,-0.12032E+01,-0.12043E+01,-0.12054E+01,-0.12065E+01, & - &-0.12076E+01,-0.12087E+01,-0.12098E+01,-0.12109E+01,-0.12121E+01, & - &-0.12132E+01,-0.12143E+01,-0.12154E+01,-0.12165E+01,-0.12176E+01, & - &-0.12187E+01,-0.12198E+01,-0.12209E+01,-0.12219E+01,-0.12230E+01, & - &-0.12241E+01,-0.12252E+01,-0.12263E+01,-0.12274E+01,-0.12285E+01, & - &-0.12296E+01,-0.12306E+01,-0.12317E+01,-0.12328E+01,-0.12339E+01, & - &-0.12350E+01,-0.12360E+01,-0.12371E+01,-0.12382E+01,-0.12393E+01, & - &-0.12403E+01,-0.12414E+01,-0.12425E+01,-0.12436E+01,-0.12446E+01, & - &-0.12457E+01,-0.12468E+01,-0.12478E+01,-0.12489E+01,-0.12499E+01, & - &-0.12510E+01,-0.12521E+01,-0.12531E+01,-0.12542E+01,-0.12552E+01, & - &-0.12563E+01,-0.12574E+01,-0.12584E+01,-0.12595E+01,-0.12605E+01, & - &-0.12616E+01,-0.12626E+01,-0.12637E+01,-0.12647E+01,-0.12657E+01, & - &-0.12668E+01,-0.12678E+01,-0.12689E+01,-0.12699E+01,-0.12710E+01/ - - DATA (BNC07M(I),I=401,500)/ & - &-0.12720E+01,-0.12730E+01,-0.12741E+01,-0.12751E+01,-0.12761E+01, & - &-0.12772E+01,-0.12782E+01,-0.12792E+01,-0.12803E+01,-0.12813E+01, & - &-0.12823E+01,-0.12834E+01,-0.12844E+01,-0.12854E+01,-0.12864E+01, & - &-0.12875E+01,-0.12885E+01,-0.12895E+01,-0.12905E+01,-0.12916E+01, & - &-0.12926E+01,-0.12936E+01,-0.12946E+01,-0.12956E+01,-0.12966E+01, & - &-0.12977E+01,-0.12987E+01,-0.12997E+01,-0.13007E+01,-0.13017E+01, & - &-0.13027E+01,-0.13037E+01,-0.13047E+01,-0.13057E+01,-0.13068E+01, & - &-0.13078E+01,-0.13088E+01,-0.13098E+01,-0.13108E+01,-0.13118E+01, & - &-0.13128E+01,-0.13138E+01,-0.13148E+01,-0.13158E+01,-0.13168E+01, & - &-0.13178E+01,-0.13188E+01,-0.13198E+01,-0.13208E+01,-0.13218E+01, & - &-0.13227E+01,-0.13237E+01,-0.13247E+01,-0.13257E+01,-0.13267E+01, & - &-0.13277E+01,-0.13287E+01,-0.13297E+01,-0.13307E+01,-0.13317E+01, & - &-0.13326E+01,-0.13336E+01,-0.13346E+01,-0.13356E+01,-0.13366E+01, & - &-0.13376E+01,-0.13385E+01,-0.13395E+01,-0.13405E+01,-0.13415E+01, & - &-0.13424E+01,-0.13434E+01,-0.13444E+01,-0.13454E+01,-0.13463E+01, & - &-0.13473E+01,-0.13483E+01,-0.13493E+01,-0.13502E+01,-0.13512E+01, & - &-0.13522E+01,-0.13532E+01,-0.13541E+01,-0.13551E+01,-0.13561E+01, & - &-0.13570E+01,-0.13580E+01,-0.13590E+01,-0.13599E+01,-0.13609E+01, & - &-0.13618E+01,-0.13628E+01,-0.13638E+01,-0.13647E+01,-0.13657E+01, & - &-0.13666E+01,-0.13676E+01,-0.13686E+01,-0.13695E+01,-0.13705E+01/ - - DATA (BNC07M(I),I=501,600)/ & - &-0.13714E+01,-0.13724E+01,-0.13733E+01,-0.13743E+01,-0.13753E+01, & - &-0.13762E+01,-0.13772E+01,-0.13781E+01,-0.13791E+01,-0.13800E+01, & - &-0.13810E+01,-0.13819E+01,-0.13829E+01,-0.13838E+01,-0.13847E+01, & - &-0.13857E+01,-0.13866E+01,-0.13876E+01,-0.13885E+01,-0.13895E+01, & - &-0.13904E+01,-0.13914E+01,-0.13923E+01,-0.13932E+01,-0.13942E+01, & - &-0.13951E+01,-0.13961E+01,-0.13970E+01,-0.13979E+01,-0.13989E+01, & - &-0.13998E+01,-0.14007E+01,-0.14017E+01,-0.14026E+01,-0.14036E+01, & - &-0.14045E+01,-0.14054E+01,-0.14064E+01,-0.14073E+01,-0.14082E+01, & - &-0.14091E+01,-0.14101E+01,-0.14110E+01,-0.14119E+01,-0.14129E+01, & - &-0.14138E+01,-0.14147E+01,-0.14156E+01,-0.14166E+01,-0.14175E+01, & - &-0.14184E+01,-0.14193E+01,-0.14203E+01,-0.14212E+01,-0.14221E+01, & - &-0.14230E+01,-0.14240E+01,-0.14249E+01,-0.14258E+01,-0.14267E+01, & - &-0.14276E+01,-0.14286E+01,-0.14295E+01,-0.14304E+01,-0.14313E+01, & - &-0.14322E+01,-0.14332E+01,-0.14341E+01,-0.14350E+01,-0.14359E+01, & - &-0.14368E+01,-0.14377E+01,-0.14386E+01,-0.14396E+01,-0.14405E+01, & - &-0.14414E+01,-0.14423E+01,-0.14432E+01,-0.14441E+01,-0.14450E+01, & - &-0.14459E+01,-0.14468E+01,-0.14477E+01,-0.14487E+01,-0.14496E+01, & - &-0.14505E+01,-0.14514E+01,-0.14523E+01,-0.14532E+01,-0.14541E+01, & - &-0.14550E+01,-0.14559E+01,-0.14568E+01,-0.14577E+01,-0.14586E+01, & - &-0.14595E+01,-0.14604E+01,-0.14613E+01,-0.14622E+01,-0.14631E+01/ - - DATA (BNC07M(I),I=601,700)/ & - &-0.14728E+01,-0.14817E+01,-0.14906E+01,-0.14994E+01,-0.15082E+01, & - &-0.15170E+01,-0.15257E+01,-0.15343E+01,-0.15430E+01,-0.15515E+01, & - &-0.15601E+01,-0.15686E+01,-0.15771E+01,-0.15856E+01,-0.15940E+01, & - &-0.16024E+01,-0.16107E+01,-0.16191E+01,-0.16274E+01,-0.16356E+01, & - &-0.16439E+01,-0.16521E+01,-0.16603E+01,-0.16684E+01,-0.16766E+01, & - &-0.16847E+01,-0.16928E+01,-0.17008E+01,-0.17089E+01,-0.17169E+01, & - &-0.17249E+01,-0.17328E+01,-0.17408E+01,-0.17487E+01,-0.17566E+01, & - &-0.17645E+01,-0.17723E+01,-0.17802E+01,-0.17880E+01,-0.17958E+01, & - &-0.18036E+01,-0.18114E+01,-0.18191E+01,-0.18268E+01,-0.18346E+01, & - &-0.18423E+01,-0.18499E+01,-0.18576E+01,-0.18652E+01,-0.18729E+01, & - &-0.18805E+01,-0.18881E+01,-0.18957E+01,-0.19032E+01,-0.19108E+01, & - &-0.19183E+01,-0.19258E+01,-0.19334E+01,-0.19409E+01,-0.19483E+01, & - &-0.19558E+01,-0.19633E+01,-0.19707E+01,-0.19781E+01,-0.19855E+01, & - &-0.19929E+01,-0.20003E+01,-0.20077E+01,-0.20151E+01,-0.20224E+01, & - &-0.20298E+01,-0.20371E+01,-0.20444E+01,-0.20517E+01,-0.20590E+01, & - &-0.20663E+01,-0.20736E+01,-0.20808E+01,-0.20881E+01,-0.20953E+01, & - &-0.21026E+01,-0.21098E+01,-0.21170E+01,-0.21242E+01,-0.21314E+01, & - &-0.21386E+01,-0.21457E+01,-0.21529E+01,-0.21601E+01,-0.21672E+01, & - &-0.21743E+01,-0.21815E+01,-0.21886E+01,-0.21957E+01,-0.22028E+01, & - &-0.22099E+01,-0.22169E+01,-0.22240E+01,-0.22311E+01,-0.22381E+01/ - - DATA (BNC07M(I),I=701,741)/ & - &-0.22452E+01,-0.22522E+01,-0.22593E+01,-0.22663E+01,-0.22733E+01, & - &-0.22803E+01,-0.22873E+01,-0.22943E+01,-0.23013E+01,-0.23082E+01, & - &-0.23152E+01,-0.23222E+01,-0.23291E+01,-0.23361E+01,-0.23430E+01, & - &-0.23499E+01,-0.23569E+01,-0.23638E+01,-0.23707E+01,-0.23776E+01, & - &-0.23845E+01,-0.23914E+01,-0.23983E+01,-0.24052E+01,-0.24120E+01, & - &-0.24189E+01,-0.24258E+01,-0.24326E+01,-0.24395E+01,-0.24463E+01, & - &-0.24531E+01,-0.24600E+01,-0.24668E+01,-0.24736E+01,-0.24804E+01, & - &-0.24872E+01,-0.24940E+01,-0.25008E+01,-0.25076E+01,-0.25144E+01, & - &-0.25211E+01 & - & / -! -! *** (H,HSO4) -! - DATA (BNC08M(I),I=1,100)/ & - &-0.45623E-01,-0.90075E-01,-0.10774E+00,-0.11790E+00,-0.12423E+00, & - &-0.12817E+00,-0.13046E+00,-0.13152E+00,-0.13161E+00,-0.13092E+00, & - &-0.12958E+00,-0.12767E+00,-0.12527E+00,-0.12245E+00,-0.11923E+00, & - &-0.11566E+00,-0.11177E+00,-0.10758E+00,-0.10312E+00,-0.98394E-01, & - &-0.93430E-01,-0.88237E-01,-0.82830E-01,-0.77218E-01,-0.71412E-01, & - &-0.65422E-01,-0.59256E-01,-0.52921E-01,-0.46426E-01,-0.39777E-01, & - &-0.32981E-01,-0.26044E-01,-0.18972E-01,-0.11771E-01,-0.44450E-02, & - & 0.29997E-02, 0.10558E-01, 0.18226E-01, 0.25999E-01, 0.33872E-01, & - & 0.41842E-01, 0.49903E-01, 0.58053E-01, 0.66287E-01, 0.74602E-01, & - & 0.82995E-01, 0.91462E-01, 0.10000E+00, 0.10861E+00, 0.11728E+00, & - & 0.12601E+00, 0.13481E+00, 0.14366E+00, 0.15257E+00, 0.16153E+00, & - & 0.17055E+00, 0.17962E+00, 0.18873E+00, 0.19790E+00, 0.20711E+00, & - & 0.21637E+00, 0.22567E+00, 0.23502E+00, 0.24442E+00, 0.25386E+00, & - & 0.26334E+00, 0.27287E+00, 0.28244E+00, 0.29205E+00, 0.30172E+00, & - & 0.31142E+00, 0.32118E+00, 0.33098E+00, 0.34083E+00, 0.35072E+00, & - & 0.36067E+00, 0.37066E+00, 0.38071E+00, 0.39081E+00, 0.40096E+00, & - & 0.41116E+00, 0.42141E+00, 0.43172E+00, 0.44208E+00, 0.45250E+00, & - & 0.46297E+00, 0.47349E+00, 0.48407E+00, 0.49470E+00, 0.50539E+00, & - & 0.51613E+00, 0.52692E+00, 0.53777E+00, 0.54867E+00, 0.55961E+00, & - & 0.57061E+00, 0.58165E+00, 0.59274E+00, 0.60387E+00, 0.61505E+00/ - - DATA (BNC08M(I),I=101,200)/ & - & 0.62627E+00, 0.63752E+00, 0.64882E+00, 0.66015E+00, 0.67151E+00, & - & 0.68291E+00, 0.69433E+00, 0.70578E+00, 0.71726E+00, 0.72876E+00, & - & 0.74028E+00, 0.75182E+00, 0.76338E+00, 0.77495E+00, 0.78653E+00, & - & 0.79813E+00, 0.80973E+00, 0.82134E+00, 0.83296E+00, 0.84458E+00, & - & 0.85620E+00, 0.86782E+00, 0.87945E+00, 0.89107E+00, 0.90268E+00, & - & 0.91429E+00, 0.92589E+00, 0.93749E+00, 0.94908E+00, 0.96066E+00, & - & 0.97222E+00, 0.98378E+00, 0.99532E+00, 0.10069E+01, 0.10184E+01, & - & 0.10299E+01, 0.10414E+01, 0.10528E+01, 0.10643E+01, 0.10757E+01, & - & 0.10871E+01, 0.10985E+01, 0.11099E+01, 0.11213E+01, 0.11326E+01, & - & 0.11440E+01, 0.11553E+01, 0.11666E+01, 0.11778E+01, 0.11891E+01, & - & 0.12003E+01, 0.12115E+01, 0.12227E+01, 0.12338E+01, 0.12450E+01, & - & 0.12561E+01, 0.12672E+01, 0.12783E+01, 0.12893E+01, 0.13004E+01, & - & 0.13114E+01, 0.13224E+01, 0.13333E+01, 0.13443E+01, 0.13552E+01, & - & 0.13661E+01, 0.13770E+01, 0.13878E+01, 0.13987E+01, 0.14095E+01, & - & 0.14203E+01, 0.14310E+01, 0.14418E+01, 0.14525E+01, 0.14632E+01, & - & 0.14739E+01, 0.14845E+01, 0.14951E+01, 0.15058E+01, 0.15163E+01, & - & 0.15269E+01, 0.15374E+01, 0.15479E+01, 0.15584E+01, 0.15689E+01, & - & 0.15794E+01, 0.15898E+01, 0.16002E+01, 0.16105E+01, 0.16209E+01, & - & 0.16312E+01, 0.16415E+01, 0.16518E+01, 0.16621E+01, 0.16723E+01, & - & 0.16826E+01, 0.16928E+01, 0.17029E+01, 0.17131E+01, 0.17232E+01/ - - DATA (BNC08M(I),I=201,300)/ & - & 0.17333E+01, 0.17434E+01, 0.17535E+01, 0.17635E+01, 0.17735E+01, & - & 0.17835E+01, 0.17935E+01, 0.18034E+01, 0.18134E+01, 0.18233E+01, & - & 0.18332E+01, 0.18430E+01, 0.18529E+01, 0.18627E+01, 0.18725E+01, & - & 0.18823E+01, 0.18920E+01, 0.19017E+01, 0.19115E+01, 0.19211E+01, & - & 0.19308E+01, 0.19405E+01, 0.19501E+01, 0.19597E+01, 0.19693E+01, & - & 0.19788E+01, 0.19884E+01, 0.19979E+01, 0.20074E+01, 0.20169E+01, & - & 0.20263E+01, 0.20358E+01, 0.20452E+01, 0.20546E+01, 0.20640E+01, & - & 0.20733E+01, 0.20827E+01, 0.20920E+01, 0.21013E+01, 0.21105E+01, & - & 0.21198E+01, 0.21290E+01, 0.21383E+01, 0.21474E+01, 0.21566E+01, & - & 0.21658E+01, 0.21749E+01, 0.21840E+01, 0.21931E+01, 0.22022E+01, & - & 0.22113E+01, 0.22203E+01, 0.22293E+01, 0.22383E+01, 0.22473E+01, & - & 0.22563E+01, 0.22652E+01, 0.22741E+01, 0.22830E+01, 0.22919E+01, & - & 0.23008E+01, 0.23096E+01, 0.23185E+01, 0.23273E+01, 0.23361E+01, & - & 0.23448E+01, 0.23536E+01, 0.23623E+01, 0.23710E+01, 0.23797E+01, & - & 0.23884E+01, 0.23971E+01, 0.24057E+01, 0.24144E+01, 0.24230E+01, & - & 0.24316E+01, 0.24401E+01, 0.24487E+01, 0.24572E+01, 0.24657E+01, & - & 0.24742E+01, 0.24827E+01, 0.24912E+01, 0.24997E+01, 0.25081E+01, & - & 0.25165E+01, 0.25249E+01, 0.25333E+01, 0.25416E+01, 0.25500E+01, & - & 0.25583E+01, 0.25666E+01, 0.25749E+01, 0.25832E+01, 0.25915E+01, & - & 0.25997E+01, 0.26080E+01, 0.26162E+01, 0.26244E+01, 0.26326E+01/ - - DATA (BNC08M(I),I=301,400)/ & - & 0.26407E+01, 0.26489E+01, 0.26570E+01, 0.26651E+01, 0.26732E+01, & - & 0.26813E+01, 0.26894E+01, 0.26974E+01, 0.27055E+01, 0.27135E+01, & - & 0.27215E+01, 0.27295E+01, 0.27374E+01, 0.27454E+01, 0.27533E+01, & - & 0.27613E+01, 0.27692E+01, 0.27771E+01, 0.27850E+01, 0.27928E+01, & - & 0.28007E+01, 0.28085E+01, 0.28163E+01, 0.28241E+01, 0.28319E+01, & - & 0.28397E+01, 0.28475E+01, 0.28552E+01, 0.28629E+01, 0.28706E+01, & - & 0.28783E+01, 0.28860E+01, 0.28937E+01, 0.29014E+01, 0.29090E+01, & - & 0.29166E+01, 0.29242E+01, 0.29318E+01, 0.29394E+01, 0.29470E+01, & - & 0.29545E+01, 0.29621E+01, 0.29696E+01, 0.29771E+01, 0.29846E+01, & - & 0.29921E+01, 0.29996E+01, 0.30070E+01, 0.30145E+01, 0.30219E+01, & - & 0.30293E+01, 0.30367E+01, 0.30441E+01, 0.30515E+01, 0.30589E+01, & - & 0.30662E+01, 0.30735E+01, 0.30809E+01, 0.30882E+01, 0.30955E+01, & - & 0.31027E+01, 0.31100E+01, 0.31173E+01, 0.31245E+01, 0.31317E+01, & - & 0.31390E+01, 0.31462E+01, 0.31534E+01, 0.31605E+01, 0.31677E+01, & - & 0.31748E+01, 0.31820E+01, 0.31891E+01, 0.31962E+01, 0.32033E+01, & - & 0.32104E+01, 0.32175E+01, 0.32245E+01, 0.32316E+01, 0.32386E+01, & - & 0.32457E+01, 0.32527E+01, 0.32597E+01, 0.32667E+01, 0.32736E+01, & - & 0.32806E+01, 0.32875E+01, 0.32945E+01, 0.33014E+01, 0.33083E+01, & - & 0.33152E+01, 0.33221E+01, 0.33290E+01, 0.33359E+01, 0.33427E+01, & - & 0.33496E+01, 0.33564E+01, 0.33632E+01, 0.33700E+01, 0.33768E+01/ - - DATA (BNC08M(I),I=401,500)/ & - & 0.33836E+01, 0.33904E+01, 0.33971E+01, 0.34039E+01, 0.34106E+01, & - & 0.34174E+01, 0.34241E+01, 0.34308E+01, 0.34375E+01, 0.34442E+01, & - & 0.34508E+01, 0.34575E+01, 0.34641E+01, 0.34708E+01, 0.34774E+01, & - & 0.34840E+01, 0.34906E+01, 0.34972E+01, 0.35038E+01, 0.35104E+01, & - & 0.35169E+01, 0.35235E+01, 0.35300E+01, 0.35365E+01, 0.35431E+01, & - & 0.35496E+01, 0.35561E+01, 0.35625E+01, 0.35690E+01, 0.35755E+01, & - & 0.35819E+01, 0.35884E+01, 0.35948E+01, 0.36012E+01, 0.36076E+01, & - & 0.36140E+01, 0.36204E+01, 0.36268E+01, 0.36332E+01, 0.36395E+01, & - & 0.36459E+01, 0.36522E+01, 0.36585E+01, 0.36649E+01, 0.36712E+01, & - & 0.36775E+01, 0.36838E+01, 0.36900E+01, 0.36963E+01, 0.37026E+01, & - & 0.37088E+01, 0.37150E+01, 0.37213E+01, 0.37275E+01, 0.37337E+01, & - & 0.37399E+01, 0.37461E+01, 0.37523E+01, 0.37584E+01, 0.37646E+01, & - & 0.37707E+01, 0.37769E+01, 0.37830E+01, 0.37891E+01, 0.37952E+01, & - & 0.38013E+01, 0.38074E+01, 0.38135E+01, 0.38196E+01, 0.38256E+01, & - & 0.38317E+01, 0.38377E+01, 0.38438E+01, 0.38498E+01, 0.38558E+01, & - & 0.38618E+01, 0.38678E+01, 0.38738E+01, 0.38798E+01, 0.38858E+01, & - & 0.38917E+01, 0.38977E+01, 0.39036E+01, 0.39096E+01, 0.39155E+01, & - & 0.39214E+01, 0.39273E+01, 0.39332E+01, 0.39391E+01, 0.39450E+01, & - & 0.39509E+01, 0.39567E+01, 0.39626E+01, 0.39684E+01, 0.39743E+01, & - & 0.39801E+01, 0.39859E+01, 0.39917E+01, 0.39975E+01, 0.40033E+01/ - - DATA (BNC08M(I),I=501,600)/ & - & 0.40091E+01, 0.40149E+01, 0.40206E+01, 0.40264E+01, 0.40321E+01, & - & 0.40379E+01, 0.40436E+01, 0.40493E+01, 0.40551E+01, 0.40608E+01, & - & 0.40665E+01, 0.40722E+01, 0.40778E+01, 0.40835E+01, 0.40892E+01, & - & 0.40948E+01, 0.41005E+01, 0.41061E+01, 0.41118E+01, 0.41174E+01, & - & 0.41230E+01, 0.41286E+01, 0.41342E+01, 0.41398E+01, 0.41454E+01, & - & 0.41510E+01, 0.41565E+01, 0.41621E+01, 0.41677E+01, 0.41732E+01, & - & 0.41787E+01, 0.41843E+01, 0.41898E+01, 0.41953E+01, 0.42008E+01, & - & 0.42063E+01, 0.42118E+01, 0.42173E+01, 0.42228E+01, 0.42282E+01, & - & 0.42337E+01, 0.42391E+01, 0.42446E+01, 0.42500E+01, 0.42554E+01, & - & 0.42609E+01, 0.42663E+01, 0.42717E+01, 0.42771E+01, 0.42825E+01, & - & 0.42878E+01, 0.42932E+01, 0.42986E+01, 0.43040E+01, 0.43093E+01, & - & 0.43146E+01, 0.43200E+01, 0.43253E+01, 0.43306E+01, 0.43360E+01, & - & 0.43413E+01, 0.43466E+01, 0.43519E+01, 0.43571E+01, 0.43624E+01, & - & 0.43677E+01, 0.43730E+01, 0.43782E+01, 0.43835E+01, 0.43887E+01, & - & 0.43940E+01, 0.43992E+01, 0.44044E+01, 0.44096E+01, 0.44148E+01, & - & 0.44200E+01, 0.44252E+01, 0.44304E+01, 0.44356E+01, 0.44408E+01, & - & 0.44459E+01, 0.44511E+01, 0.44562E+01, 0.44614E+01, 0.44665E+01, & - & 0.44717E+01, 0.44768E+01, 0.44819E+01, 0.44870E+01, 0.44921E+01, & - & 0.44972E+01, 0.45023E+01, 0.45074E+01, 0.45125E+01, 0.45175E+01, & - & 0.45226E+01, 0.45277E+01, 0.45327E+01, 0.45377E+01, 0.45428E+01/ - - DATA (BNC08M(I),I=601,700)/ & - & 0.45968E+01, 0.46461E+01, 0.46948E+01, 0.47428E+01, 0.47903E+01, & - & 0.48372E+01, 0.48835E+01, 0.49293E+01, 0.49745E+01, 0.50191E+01, & - & 0.50633E+01, 0.51069E+01, 0.51500E+01, 0.51927E+01, 0.52349E+01, & - & 0.52765E+01, 0.53178E+01, 0.53586E+01, 0.53989E+01, 0.54388E+01, & - & 0.54783E+01, 0.55174E+01, 0.55560E+01, 0.55943E+01, 0.56322E+01, & - & 0.56696E+01, 0.57068E+01, 0.57435E+01, 0.57799E+01, 0.58159E+01, & - & 0.58515E+01, 0.58869E+01, 0.59218E+01, 0.59565E+01, 0.59908E+01, & - & 0.60248E+01, 0.60585E+01, 0.60919E+01, 0.61249E+01, 0.61577E+01, & - & 0.61902E+01, 0.62224E+01, 0.62543E+01, 0.62859E+01, 0.63172E+01, & - & 0.63483E+01, 0.63791E+01, 0.64096E+01, 0.64399E+01, 0.64699E+01, & - & 0.64997E+01, 0.65292E+01, 0.65585E+01, 0.65875E+01, 0.66163E+01, & - & 0.66449E+01, 0.66733E+01, 0.67014E+01, 0.67293E+01, 0.67569E+01, & - & 0.67844E+01, 0.68116E+01, 0.68387E+01, 0.68655E+01, 0.68921E+01, & - & 0.69185E+01, 0.69447E+01, 0.69708E+01, 0.69966E+01, 0.70222E+01, & - & 0.70477E+01, 0.70729E+01, 0.70980E+01, 0.71229E+01, 0.71476E+01, & - & 0.71721E+01, 0.71965E+01, 0.72207E+01, 0.72447E+01, 0.72686E+01, & - & 0.72922E+01, 0.73158E+01, 0.73391E+01, 0.73623E+01, 0.73854E+01, & - & 0.74082E+01, 0.74310E+01, 0.74536E+01, 0.74760E+01, 0.74983E+01, & - & 0.75204E+01, 0.75424E+01, 0.75642E+01, 0.75859E+01, 0.76075E+01, & - & 0.76289E+01, 0.76502E+01, 0.76714E+01, 0.76924E+01, 0.77133E+01/ - - DATA (BNC08M(I),I=701,741)/ & - & 0.77340E+01, 0.77546E+01, 0.77751E+01, 0.77955E+01, 0.78157E+01, & - & 0.78358E+01, 0.78558E+01, 0.78757E+01, 0.78955E+01, 0.79151E+01, & - & 0.79346E+01, 0.79540E+01, 0.79733E+01, 0.79925E+01, 0.80115E+01, & - & 0.80305E+01, 0.80493E+01, 0.80680E+01, 0.80867E+01, 0.81052E+01, & - & 0.81236E+01, 0.81419E+01, 0.81601E+01, 0.81782E+01, 0.81961E+01, & - & 0.82140E+01, 0.82318E+01, 0.82495E+01, 0.82671E+01, 0.82846E+01, & - & 0.83020E+01, 0.83193E+01, 0.83365E+01, 0.83536E+01, 0.83706E+01, & - & 0.83876E+01, 0.84044E+01, 0.84212E+01, 0.84378E+01, 0.84544E+01, & - & 0.84709E+01 & - & / -! -! *** NH4HSO4 -! - DATA (BNC09M(I),I=1,100)/ & - &-0.47941E-01,-0.10187E+00,-0.12775E+00,-0.14554E+00,-0.15916E+00, & - &-0.17016E+00,-0.17935E+00,-0.18720E+00,-0.19401E+00,-0.19998E+00, & - &-0.20526E+00,-0.20996E+00,-0.21416E+00,-0.21792E+00,-0.22130E+00, & - &-0.22433E+00,-0.22706E+00,-0.22950E+00,-0.23169E+00,-0.23364E+00, & - &-0.23537E+00,-0.23689E+00,-0.23822E+00,-0.23937E+00,-0.24035E+00, & - &-0.24117E+00,-0.24183E+00,-0.24235E+00,-0.24273E+00,-0.24298E+00, & - &-0.24310E+00,-0.24310E+00,-0.24299E+00,-0.24276E+00,-0.24242E+00, & - &-0.24198E+00,-0.24144E+00,-0.24080E+00,-0.24008E+00,-0.23926E+00, & - &-0.23835E+00,-0.23736E+00,-0.23630E+00,-0.23515E+00,-0.23393E+00, & - &-0.23264E+00,-0.23128E+00,-0.22985E+00,-0.22835E+00,-0.22680E+00, & - &-0.22518E+00,-0.22350E+00,-0.22177E+00,-0.21998E+00,-0.21814E+00, & - &-0.21625E+00,-0.21431E+00,-0.21232E+00,-0.21028E+00,-0.20820E+00, & - &-0.20607E+00,-0.20391E+00,-0.20170E+00,-0.19945E+00,-0.19716E+00, & - &-0.19483E+00,-0.19246E+00,-0.19006E+00,-0.18762E+00,-0.18514E+00, & - &-0.18263E+00,-0.18009E+00,-0.17751E+00,-0.17490E+00,-0.17225E+00, & - &-0.16957E+00,-0.16686E+00,-0.16412E+00,-0.16135E+00,-0.15854E+00, & - &-0.15571E+00,-0.15284E+00,-0.14994E+00,-0.14702E+00,-0.14406E+00, & - &-0.14108E+00,-0.13806E+00,-0.13502E+00,-0.13195E+00,-0.12885E+00, & - &-0.12573E+00,-0.12257E+00,-0.11940E+00,-0.11619E+00,-0.11297E+00, & - &-0.10972E+00,-0.10644E+00,-0.10315E+00,-0.99827E-01,-0.96489E-01/ - - DATA (BNC09M(I),I=101,200)/ & - &-0.93130E-01,-0.89752E-01,-0.86357E-01,-0.82944E-01,-0.79515E-01, & - &-0.76070E-01,-0.72611E-01,-0.69138E-01,-0.65653E-01,-0.62156E-01, & - &-0.58649E-01,-0.55131E-01,-0.51605E-01,-0.48070E-01,-0.44529E-01, & - &-0.40980E-01,-0.37426E-01,-0.33868E-01,-0.30305E-01,-0.26738E-01, & - &-0.23169E-01,-0.19598E-01,-0.16026E-01,-0.12452E-01,-0.88787E-02, & - &-0.53053E-02,-0.17329E-02, 0.18381E-02, 0.54075E-02, 0.89747E-02, & - & 0.12539E-01, 0.16101E-01, 0.19659E-01, 0.23213E-01, 0.26764E-01, & - & 0.30310E-01, 0.33851E-01, 0.37388E-01, 0.40919E-01, 0.44446E-01, & - & 0.47966E-01, 0.51481E-01, 0.54990E-01, 0.58493E-01, 0.61990E-01, & - & 0.65481E-01, 0.68964E-01, 0.72442E-01, 0.75912E-01, 0.79376E-01, & - & 0.82833E-01, 0.86282E-01, 0.89725E-01, 0.93161E-01, 0.96589E-01, & - & 0.10001E+00, 0.10342E+00, 0.10683E+00, 0.11023E+00, 0.11362E+00, & - & 0.11700E+00, 0.12038E+00, 0.12375E+00, 0.12711E+00, 0.13046E+00, & - & 0.13381E+00, 0.13714E+00, 0.14047E+00, 0.14379E+00, 0.14711E+00, & - & 0.15041E+00, 0.15371E+00, 0.15700E+00, 0.16028E+00, 0.16356E+00, & - & 0.16683E+00, 0.17008E+00, 0.17334E+00, 0.17658E+00, 0.17981E+00, & - & 0.18304E+00, 0.18626E+00, 0.18947E+00, 0.19268E+00, 0.19587E+00, & - & 0.19906E+00, 0.20224E+00, 0.20541E+00, 0.20858E+00, 0.21173E+00, & - & 0.21488E+00, 0.21802E+00, 0.22116E+00, 0.22428E+00, 0.22740E+00, & - & 0.23051E+00, 0.23361E+00, 0.23671E+00, 0.23979E+00, 0.24287E+00/ - - DATA (BNC09M(I),I=201,300)/ & - & 0.24594E+00, 0.24901E+00, 0.25206E+00, 0.25511E+00, 0.25815E+00, & - & 0.26119E+00, 0.26422E+00, 0.26723E+00, 0.27025E+00, 0.27325E+00, & - & 0.27625E+00, 0.27924E+00, 0.28222E+00, 0.28519E+00, 0.28816E+00, & - & 0.29112E+00, 0.29407E+00, 0.29702E+00, 0.29996E+00, 0.30289E+00, & - & 0.30581E+00, 0.30873E+00, 0.31164E+00, 0.31454E+00, 0.31743E+00, & - & 0.32032E+00, 0.32320E+00, 0.32608E+00, 0.32895E+00, 0.33181E+00, & - & 0.33466E+00, 0.33751E+00, 0.34035E+00, 0.34318E+00, 0.34601E+00, & - & 0.34883E+00, 0.35164E+00, 0.35445E+00, 0.35725E+00, 0.36004E+00, & - & 0.36282E+00, 0.36560E+00, 0.36838E+00, 0.37114E+00, 0.37390E+00, & - & 0.37666E+00, 0.37940E+00, 0.38214E+00, 0.38488E+00, 0.38760E+00, & - & 0.39033E+00, 0.39304E+00, 0.39575E+00, 0.39845E+00, 0.40115E+00, & - & 0.40384E+00, 0.40652E+00, 0.40920E+00, 0.41187E+00, 0.41453E+00, & - & 0.41719E+00, 0.41985E+00, 0.42249E+00, 0.42513E+00, 0.42777E+00, & - & 0.43040E+00, 0.43302E+00, 0.43563E+00, 0.43825E+00, 0.44085E+00, & - & 0.44345E+00, 0.44604E+00, 0.44863E+00, 0.45121E+00, 0.45379E+00, & - & 0.45636E+00, 0.45892E+00, 0.46148E+00, 0.46403E+00, 0.46658E+00, & - & 0.46912E+00, 0.47165E+00, 0.47419E+00, 0.47671E+00, 0.47923E+00, & - & 0.48174E+00, 0.48425E+00, 0.48675E+00, 0.48925E+00, 0.49174E+00, & - & 0.49423E+00, 0.49671E+00, 0.49918E+00, 0.50165E+00, 0.50412E+00, & - & 0.50658E+00, 0.50903E+00, 0.51148E+00, 0.51392E+00, 0.51636E+00/ - - DATA (BNC09M(I),I=301,400)/ & - & 0.51879E+00, 0.52122E+00, 0.52364E+00, 0.52606E+00, 0.52847E+00, & - & 0.53088E+00, 0.53328E+00, 0.53568E+00, 0.53807E+00, 0.54046E+00, & - & 0.54284E+00, 0.54522E+00, 0.54759E+00, 0.54996E+00, 0.55232E+00, & - & 0.55467E+00, 0.55703E+00, 0.55937E+00, 0.56172E+00, 0.56405E+00, & - & 0.56639E+00, 0.56871E+00, 0.57104E+00, 0.57336E+00, 0.57567E+00, & - & 0.57798E+00, 0.58028E+00, 0.58258E+00, 0.58488E+00, 0.58717E+00, & - & 0.58945E+00, 0.59173E+00, 0.59401E+00, 0.59628E+00, 0.59855E+00, & - & 0.60081E+00, 0.60307E+00, 0.60532E+00, 0.60757E+00, 0.60981E+00, & - & 0.61205E+00, 0.61429E+00, 0.61652E+00, 0.61874E+00, 0.62097E+00, & - & 0.62318E+00, 0.62540E+00, 0.62761E+00, 0.62981E+00, 0.63201E+00, & - & 0.63421E+00, 0.63640E+00, 0.63859E+00, 0.64077E+00, 0.64295E+00, & - & 0.64512E+00, 0.64729E+00, 0.64946E+00, 0.65162E+00, 0.65378E+00, & - & 0.65593E+00, 0.65808E+00, 0.66022E+00, 0.66236E+00, 0.66450E+00, & - & 0.66663E+00, 0.66876E+00, 0.67089E+00, 0.67301E+00, 0.67512E+00, & - & 0.67724E+00, 0.67935E+00, 0.68145E+00, 0.68355E+00, 0.68565E+00, & - & 0.68774E+00, 0.68983E+00, 0.69191E+00, 0.69399E+00, 0.69607E+00, & - & 0.69814E+00, 0.70021E+00, 0.70228E+00, 0.70434E+00, 0.70639E+00, & - & 0.70845E+00, 0.71050E+00, 0.71254E+00, 0.71459E+00, 0.71662E+00, & - & 0.71866E+00, 0.72069E+00, 0.72272E+00, 0.72474E+00, 0.72676E+00, & - & 0.72878E+00, 0.73079E+00, 0.73280E+00, 0.73480E+00, 0.73680E+00/ - - DATA (BNC09M(I),I=401,500)/ & - & 0.73880E+00, 0.74079E+00, 0.74279E+00, 0.74477E+00, 0.74675E+00, & - & 0.74873E+00, 0.75071E+00, 0.75268E+00, 0.75465E+00, 0.75662E+00, & - & 0.75858E+00, 0.76054E+00, 0.76249E+00, 0.76444E+00, 0.76639E+00, & - & 0.76833E+00, 0.77028E+00, 0.77221E+00, 0.77415E+00, 0.77608E+00, & - & 0.77801E+00, 0.77993E+00, 0.78185E+00, 0.78377E+00, 0.78568E+00, & - & 0.78759E+00, 0.78950E+00, 0.79140E+00, 0.79330E+00, 0.79520E+00, & - & 0.79709E+00, 0.79898E+00, 0.80087E+00, 0.80275E+00, 0.80463E+00, & - & 0.80651E+00, 0.80838E+00, 0.81025E+00, 0.81212E+00, 0.81399E+00, & - & 0.81585E+00, 0.81770E+00, 0.81956E+00, 0.82141E+00, 0.82326E+00, & - & 0.82510E+00, 0.82694E+00, 0.82878E+00, 0.83062E+00, 0.83245E+00, & - & 0.83428E+00, 0.83611E+00, 0.83793E+00, 0.83975E+00, 0.84157E+00, & - & 0.84338E+00, 0.84519E+00, 0.84700E+00, 0.84880E+00, 0.85061E+00, & - & 0.85240E+00, 0.85420E+00, 0.85599E+00, 0.85778E+00, 0.85957E+00, & - & 0.86135E+00, 0.86313E+00, 0.86491E+00, 0.86669E+00, 0.86846E+00, & - & 0.87023E+00, 0.87199E+00, 0.87376E+00, 0.87552E+00, 0.87727E+00, & - & 0.87903E+00, 0.88078E+00, 0.88253E+00, 0.88427E+00, 0.88602E+00, & - & 0.88776E+00, 0.88949E+00, 0.89123E+00, 0.89296E+00, 0.89469E+00, & - & 0.89641E+00, 0.89814E+00, 0.89986E+00, 0.90157E+00, 0.90329E+00, & - & 0.90500E+00, 0.90671E+00, 0.90842E+00, 0.91012E+00, 0.91182E+00, & - & 0.91352E+00, 0.91521E+00, 0.91691E+00, 0.91860E+00, 0.92028E+00/ - - DATA (BNC09M(I),I=501,600)/ & - & 0.92197E+00, 0.92365E+00, 0.92533E+00, 0.92700E+00, 0.92868E+00, & - & 0.93035E+00, 0.93202E+00, 0.93368E+00, 0.93535E+00, 0.93701E+00, & - & 0.93867E+00, 0.94032E+00, 0.94197E+00, 0.94362E+00, 0.94527E+00, & - & 0.94692E+00, 0.94856E+00, 0.95020E+00, 0.95184E+00, 0.95347E+00, & - & 0.95510E+00, 0.95673E+00, 0.95836E+00, 0.95998E+00, 0.96160E+00, & - & 0.96322E+00, 0.96484E+00, 0.96646E+00, 0.96807E+00, 0.96968E+00, & - & 0.97128E+00, 0.97289E+00, 0.97449E+00, 0.97609E+00, 0.97769E+00, & - & 0.97928E+00, 0.98087E+00, 0.98246E+00, 0.98405E+00, 0.98563E+00, & - & 0.98722E+00, 0.98880E+00, 0.99037E+00, 0.99195E+00, 0.99352E+00, & - & 0.99509E+00, 0.99666E+00, 0.99822E+00, 0.99979E+00, 0.10013E+01, & - & 0.10029E+01, 0.10045E+01, 0.10060E+01, 0.10076E+01, 0.10091E+01, & - & 0.10107E+01, 0.10122E+01, 0.10137E+01, 0.10153E+01, 0.10168E+01, & - & 0.10184E+01, 0.10199E+01, 0.10214E+01, 0.10230E+01, 0.10245E+01, & - & 0.10260E+01, 0.10275E+01, 0.10290E+01, 0.10306E+01, 0.10321E+01, & - & 0.10336E+01, 0.10351E+01, 0.10366E+01, 0.10381E+01, 0.10396E+01, & - & 0.10411E+01, 0.10426E+01, 0.10441E+01, 0.10456E+01, 0.10471E+01, & - & 0.10486E+01, 0.10501E+01, 0.10516E+01, 0.10530E+01, 0.10545E+01, & - & 0.10560E+01, 0.10575E+01, 0.10590E+01, 0.10604E+01, 0.10619E+01, & - & 0.10634E+01, 0.10648E+01, 0.10663E+01, 0.10678E+01, 0.10692E+01, & - & 0.10707E+01, 0.10721E+01, 0.10736E+01, 0.10750E+01, 0.10765E+01/ - - DATA (BNC09M(I),I=601,700)/ & - & 0.10920E+01, 0.11062E+01, 0.11202E+01, 0.11339E+01, 0.11475E+01, & - & 0.11609E+01, 0.11741E+01, 0.11872E+01, 0.12000E+01, 0.12127E+01, & - & 0.12252E+01, 0.12376E+01, 0.12498E+01, 0.12619E+01, 0.12738E+01, & - & 0.12855E+01, 0.12971E+01, 0.13086E+01, 0.13199E+01, 0.13311E+01, & - & 0.13421E+01, 0.13531E+01, 0.13638E+01, 0.13745E+01, 0.13850E+01, & - & 0.13954E+01, 0.14057E+01, 0.14159E+01, 0.14259E+01, 0.14359E+01, & - & 0.14457E+01, 0.14554E+01, 0.14650E+01, 0.14745E+01, 0.14839E+01, & - & 0.14932E+01, 0.15024E+01, 0.15115E+01, 0.15205E+01, 0.15294E+01, & - & 0.15382E+01, 0.15469E+01, 0.15555E+01, 0.15641E+01, 0.15725E+01, & - & 0.15808E+01, 0.15891E+01, 0.15973E+01, 0.16054E+01, 0.16134E+01, & - & 0.16213E+01, 0.16292E+01, 0.16370E+01, 0.16447E+01, 0.16523E+01, & - & 0.16598E+01, 0.16673E+01, 0.16747E+01, 0.16820E+01, 0.16893E+01, & - & 0.16965E+01, 0.17036E+01, 0.17106E+01, 0.17176E+01, 0.17245E+01, & - & 0.17314E+01, 0.17381E+01, 0.17449E+01, 0.17515E+01, 0.17581E+01, & - & 0.17646E+01, 0.17711E+01, 0.17775E+01, 0.17839E+01, 0.17902E+01, & - & 0.17964E+01, 0.18026E+01, 0.18087E+01, 0.18148E+01, 0.18208E+01, & - & 0.18268E+01, 0.18327E+01, 0.18385E+01, 0.18443E+01, 0.18501E+01, & - & 0.18558E+01, 0.18614E+01, 0.18671E+01, 0.18726E+01, 0.18781E+01, & - & 0.18836E+01, 0.18890E+01, 0.18943E+01, 0.18997E+01, 0.19049E+01, & - & 0.19102E+01, 0.19153E+01, 0.19205E+01, 0.19256E+01, 0.19306E+01/ - - DATA (BNC09M(I),I=701,741)/ & - & 0.19356E+01, 0.19406E+01, 0.19455E+01, 0.19504E+01, 0.19552E+01, & - & 0.19600E+01, 0.19648E+01, 0.19695E+01, 0.19742E+01, 0.19788E+01, & - & 0.19835E+01, 0.19880E+01, 0.19925E+01, 0.19970E+01, 0.20015E+01, & - & 0.20059E+01, 0.20103E+01, 0.20146E+01, 0.20190E+01, 0.20232E+01, & - & 0.20275E+01, 0.20317E+01, 0.20359E+01, 0.20400E+01, 0.20441E+01, & - & 0.20482E+01, 0.20522E+01, 0.20562E+01, 0.20602E+01, 0.20641E+01, & - & 0.20681E+01, 0.20719E+01, 0.20758E+01, 0.20796E+01, 0.20834E+01, & - & 0.20872E+01, 0.20909E+01, 0.20946E+01, 0.20983E+01, 0.21019E+01, & - & 0.21055E+01 & - & / -! -! *** (H,NO3) -! - DATA (BNC10M(I),I=1,100)/ & - &-0.47292E-01,-0.97810E-01,-0.12025E+00,-0.13463E+00,-0.14486E+00, & - &-0.15252E+00,-0.15842E+00,-0.16303E+00,-0.16665E+00,-0.16950E+00, & - &-0.17170E+00,-0.17339E+00,-0.17464E+00,-0.17551E+00,-0.17606E+00, & - &-0.17633E+00,-0.17636E+00,-0.17617E+00,-0.17579E+00,-0.17524E+00, & - &-0.17454E+00,-0.17370E+00,-0.17274E+00,-0.17167E+00,-0.17050E+00, & - &-0.16924E+00,-0.16790E+00,-0.16648E+00,-0.16500E+00,-0.16345E+00, & - &-0.16185E+00,-0.16020E+00,-0.15851E+00,-0.15677E+00,-0.15499E+00, & - &-0.15319E+00,-0.15135E+00,-0.14948E+00,-0.14759E+00,-0.14568E+00, & - &-0.14374E+00,-0.14179E+00,-0.13982E+00,-0.13784E+00,-0.13585E+00, & - &-0.13384E+00,-0.13183E+00,-0.12981E+00,-0.12778E+00,-0.12574E+00, & - &-0.12369E+00,-0.12165E+00,-0.11959E+00,-0.11753E+00,-0.11547E+00, & - &-0.11341E+00,-0.11134E+00,-0.10926E+00,-0.10719E+00,-0.10510E+00, & - &-0.10302E+00,-0.10093E+00,-0.98835E-01,-0.96735E-01,-0.94630E-01, & - &-0.92519E-01,-0.90401E-01,-0.88277E-01,-0.86145E-01,-0.84004E-01, & - &-0.81855E-01,-0.79696E-01,-0.77527E-01,-0.75348E-01,-0.73157E-01, & - &-0.70954E-01,-0.68738E-01,-0.66510E-01,-0.64268E-01,-0.62011E-01, & - &-0.59741E-01,-0.57455E-01,-0.55153E-01,-0.52836E-01,-0.50503E-01, & - &-0.48154E-01,-0.45788E-01,-0.43406E-01,-0.41006E-01,-0.38591E-01, & - &-0.36158E-01,-0.33709E-01,-0.31243E-01,-0.28761E-01,-0.26264E-01, & - &-0.23750E-01,-0.21221E-01,-0.18676E-01,-0.16117E-01,-0.13544E-01/ - - DATA (BNC10M(I),I=101,200)/ & - &-0.10957E-01,-0.83559E-02,-0.57424E-02,-0.31166E-02,-0.47900E-03, & - & 0.21698E-02, 0.48293E-02, 0.74989E-02, 0.10178E-01, 0.12866E-01, & - & 0.15562E-01, 0.18266E-01, 0.20977E-01, 0.23695E-01, 0.26419E-01, & - & 0.29149E-01, 0.31883E-01, 0.34622E-01, 0.37365E-01, 0.40112E-01, & - & 0.42862E-01, 0.45614E-01, 0.48369E-01, 0.51126E-01, 0.53884E-01, & - & 0.56643E-01, 0.59403E-01, 0.62164E-01, 0.64925E-01, 0.67685E-01, & - & 0.70446E-01, 0.73206E-01, 0.75965E-01, 0.78723E-01, 0.81480E-01, & - & 0.84236E-01, 0.86990E-01, 0.89742E-01, 0.92493E-01, 0.95241E-01, & - & 0.97988E-01, 0.10073E+00, 0.10347E+00, 0.10621E+00, 0.10895E+00, & - & 0.11169E+00, 0.11442E+00, 0.11715E+00, 0.11987E+00, 0.12260E+00, & - & 0.12532E+00, 0.12803E+00, 0.13075E+00, 0.13346E+00, 0.13617E+00, & - & 0.13887E+00, 0.14157E+00, 0.14427E+00, 0.14697E+00, 0.14966E+00, & - & 0.15235E+00, 0.15503E+00, 0.15771E+00, 0.16039E+00, 0.16307E+00, & - & 0.16574E+00, 0.16840E+00, 0.17107E+00, 0.17373E+00, 0.17639E+00, & - & 0.17904E+00, 0.18169E+00, 0.18433E+00, 0.18698E+00, 0.18961E+00, & - & 0.19225E+00, 0.19488E+00, 0.19751E+00, 0.20013E+00, 0.20275E+00, & - & 0.20537E+00, 0.20798E+00, 0.21059E+00, 0.21319E+00, 0.21579E+00, & - & 0.21839E+00, 0.22098E+00, 0.22357E+00, 0.22615E+00, 0.22873E+00, & - & 0.23131E+00, 0.23388E+00, 0.23645E+00, 0.23902E+00, 0.24158E+00, & - & 0.24414E+00, 0.24669E+00, 0.24924E+00, 0.25178E+00, 0.25433E+00/ - - DATA (BNC10M(I),I=201,300)/ & - & 0.25686E+00, 0.25940E+00, 0.26192E+00, 0.26445E+00, 0.26697E+00, & - & 0.26949E+00, 0.27200E+00, 0.27451E+00, 0.27701E+00, 0.27952E+00, & - & 0.28201E+00, 0.28450E+00, 0.28699E+00, 0.28948E+00, 0.29196E+00, & - & 0.29444E+00, 0.29691E+00, 0.29938E+00, 0.30184E+00, 0.30430E+00, & - & 0.30676E+00, 0.30921E+00, 0.31166E+00, 0.31410E+00, 0.31654E+00, & - & 0.31898E+00, 0.32141E+00, 0.32384E+00, 0.32626E+00, 0.32868E+00, & - & 0.33109E+00, 0.33351E+00, 0.33591E+00, 0.33832E+00, 0.34071E+00, & - & 0.34311E+00, 0.34550E+00, 0.34789E+00, 0.35027E+00, 0.35265E+00, & - & 0.35502E+00, 0.35740E+00, 0.35976E+00, 0.36213E+00, 0.36448E+00, & - & 0.36684E+00, 0.36919E+00, 0.37154E+00, 0.37388E+00, 0.37622E+00, & - & 0.37855E+00, 0.38088E+00, 0.38321E+00, 0.38553E+00, 0.38785E+00, & - & 0.39016E+00, 0.39247E+00, 0.39478E+00, 0.39708E+00, 0.39938E+00, & - & 0.40168E+00, 0.40397E+00, 0.40626E+00, 0.40854E+00, 0.41082E+00, & - & 0.41309E+00, 0.41536E+00, 0.41763E+00, 0.41989E+00, 0.42215E+00, & - & 0.42441E+00, 0.42666E+00, 0.42891E+00, 0.43115E+00, 0.43339E+00, & - & 0.43563E+00, 0.43786E+00, 0.44009E+00, 0.44231E+00, 0.44453E+00, & - & 0.44675E+00, 0.44896E+00, 0.45117E+00, 0.45337E+00, 0.45558E+00, & - & 0.45777E+00, 0.45997E+00, 0.46216E+00, 0.46434E+00, 0.46652E+00, & - & 0.46870E+00, 0.47088E+00, 0.47305E+00, 0.47522E+00, 0.47738E+00, & - & 0.47954E+00, 0.48169E+00, 0.48385E+00, 0.48600E+00, 0.48814E+00/ - - DATA (BNC10M(I),I=301,400)/ & - & 0.49028E+00, 0.49242E+00, 0.49455E+00, 0.49668E+00, 0.49881E+00, & - & 0.50093E+00, 0.50305E+00, 0.50516E+00, 0.50728E+00, 0.50938E+00, & - & 0.51149E+00, 0.51359E+00, 0.51569E+00, 0.51778E+00, 0.51987E+00, & - & 0.52196E+00, 0.52404E+00, 0.52612E+00, 0.52819E+00, 0.53026E+00, & - & 0.53233E+00, 0.53440E+00, 0.53646E+00, 0.53851E+00, 0.54057E+00, & - & 0.54262E+00, 0.54467E+00, 0.54671E+00, 0.54875E+00, 0.55079E+00, & - & 0.55282E+00, 0.55485E+00, 0.55687E+00, 0.55890E+00, 0.56092E+00, & - & 0.56293E+00, 0.56494E+00, 0.56695E+00, 0.56896E+00, 0.57096E+00, & - & 0.57296E+00, 0.57495E+00, 0.57694E+00, 0.57893E+00, 0.58092E+00, & - & 0.58290E+00, 0.58488E+00, 0.58685E+00, 0.58882E+00, 0.59079E+00, & - & 0.59275E+00, 0.59472E+00, 0.59667E+00, 0.59863E+00, 0.60058E+00, & - & 0.60253E+00, 0.60447E+00, 0.60641E+00, 0.60835E+00, 0.61029E+00, & - & 0.61222E+00, 0.61415E+00, 0.61607E+00, 0.61799E+00, 0.61991E+00, & - & 0.62183E+00, 0.62374E+00, 0.62565E+00, 0.62755E+00, 0.62945E+00, & - & 0.63135E+00, 0.63325E+00, 0.63514E+00, 0.63703E+00, 0.63892E+00, & - & 0.64080E+00, 0.64268E+00, 0.64456E+00, 0.64643E+00, 0.64830E+00, & - & 0.65017E+00, 0.65204E+00, 0.65390E+00, 0.65576E+00, 0.65761E+00, & - & 0.65946E+00, 0.66131E+00, 0.66316E+00, 0.66500E+00, 0.66684E+00, & - & 0.66868E+00, 0.67051E+00, 0.67234E+00, 0.67417E+00, 0.67600E+00, & - & 0.67782E+00, 0.67964E+00, 0.68145E+00, 0.68326E+00, 0.68507E+00/ - - DATA (BNC10M(I),I=401,500)/ & - & 0.68688E+00, 0.68868E+00, 0.69049E+00, 0.69228E+00, 0.69408E+00, & - & 0.69587E+00, 0.69766E+00, 0.69944E+00, 0.70123E+00, 0.70301E+00, & - & 0.70479E+00, 0.70656E+00, 0.70833E+00, 0.71010E+00, 0.71187E+00, & - & 0.71363E+00, 0.71539E+00, 0.71715E+00, 0.71890E+00, 0.72065E+00, & - & 0.72240E+00, 0.72415E+00, 0.72589E+00, 0.72763E+00, 0.72937E+00, & - & 0.73110E+00, 0.73283E+00, 0.73456E+00, 0.73629E+00, 0.73801E+00, & - & 0.73973E+00, 0.74145E+00, 0.74316E+00, 0.74487E+00, 0.74658E+00, & - & 0.74829E+00, 0.75000E+00, 0.75170E+00, 0.75339E+00, 0.75509E+00, & - & 0.75678E+00, 0.75847E+00, 0.76016E+00, 0.76185E+00, 0.76353E+00, & - & 0.76521E+00, 0.76689E+00, 0.76856E+00, 0.77023E+00, 0.77190E+00, & - & 0.77357E+00, 0.77523E+00, 0.77689E+00, 0.77855E+00, 0.78021E+00, & - & 0.78186E+00, 0.78351E+00, 0.78516E+00, 0.78680E+00, 0.78844E+00, & - & 0.79009E+00, 0.79172E+00, 0.79336E+00, 0.79499E+00, 0.79662E+00, & - & 0.79825E+00, 0.79987E+00, 0.80149E+00, 0.80311E+00, 0.80473E+00, & - & 0.80635E+00, 0.80796E+00, 0.80957E+00, 0.81117E+00, 0.81278E+00, & - & 0.81438E+00, 0.81598E+00, 0.81758E+00, 0.81917E+00, 0.82076E+00, & - & 0.82235E+00, 0.82394E+00, 0.82553E+00, 0.82711E+00, 0.82869E+00, & - & 0.83027E+00, 0.83184E+00, 0.83341E+00, 0.83498E+00, 0.83655E+00, & - & 0.83812E+00, 0.83968E+00, 0.84124E+00, 0.84280E+00, 0.84435E+00, & - & 0.84591E+00, 0.84746E+00, 0.84901E+00, 0.85055E+00, 0.85210E+00/ - - DATA (BNC10M(I),I=501,600)/ & - & 0.85364E+00, 0.85518E+00, 0.85671E+00, 0.85825E+00, 0.85978E+00, & - & 0.86131E+00, 0.86284E+00, 0.86436E+00, 0.86589E+00, 0.86741E+00, & - & 0.86892E+00, 0.87044E+00, 0.87195E+00, 0.87346E+00, 0.87497E+00, & - & 0.87648E+00, 0.87799E+00, 0.87949E+00, 0.88099E+00, 0.88249E+00, & - & 0.88398E+00, 0.88547E+00, 0.88696E+00, 0.88845E+00, 0.88994E+00, & - & 0.89142E+00, 0.89291E+00, 0.89439E+00, 0.89586E+00, 0.89734E+00, & - & 0.89881E+00, 0.90028E+00, 0.90175E+00, 0.90322E+00, 0.90468E+00, & - & 0.90615E+00, 0.90761E+00, 0.90906E+00, 0.91052E+00, 0.91197E+00, & - & 0.91343E+00, 0.91488E+00, 0.91632E+00, 0.91777E+00, 0.91921E+00, & - & 0.92065E+00, 0.92209E+00, 0.92353E+00, 0.92496E+00, 0.92639E+00, & - & 0.92782E+00, 0.92925E+00, 0.93068E+00, 0.93210E+00, 0.93352E+00, & - & 0.93494E+00, 0.93636E+00, 0.93778E+00, 0.93919E+00, 0.94060E+00, & - & 0.94201E+00, 0.94342E+00, 0.94483E+00, 0.94623E+00, 0.94763E+00, & - & 0.94903E+00, 0.95043E+00, 0.95182E+00, 0.95322E+00, 0.95461E+00, & - & 0.95600E+00, 0.95738E+00, 0.95877E+00, 0.96015E+00, 0.96153E+00, & - & 0.96291E+00, 0.96429E+00, 0.96566E+00, 0.96704E+00, 0.96841E+00, & - & 0.96978E+00, 0.97115E+00, 0.97251E+00, 0.97388E+00, 0.97524E+00, & - & 0.97660E+00, 0.97795E+00, 0.97931E+00, 0.98066E+00, 0.98202E+00, & - & 0.98337E+00, 0.98471E+00, 0.98606E+00, 0.98740E+00, 0.98875E+00, & - & 0.99009E+00, 0.99143E+00, 0.99276E+00, 0.99410E+00, 0.99543E+00/ - - DATA (BNC10M(I),I=601,700)/ & - & 0.10097E+01, 0.10227E+01, 0.10356E+01, 0.10483E+01, 0.10608E+01, & - & 0.10731E+01, 0.10852E+01, 0.10972E+01, 0.11091E+01, 0.11208E+01, & - & 0.11323E+01, 0.11437E+01, 0.11549E+01, 0.11660E+01, 0.11770E+01, & - & 0.11878E+01, 0.11985E+01, 0.12090E+01, 0.12195E+01, 0.12298E+01, & - & 0.12399E+01, 0.12500E+01, 0.12599E+01, 0.12697E+01, 0.12794E+01, & - & 0.12889E+01, 0.12984E+01, 0.13077E+01, 0.13170E+01, 0.13261E+01, & - & 0.13351E+01, 0.13441E+01, 0.13529E+01, 0.13616E+01, 0.13702E+01, & - & 0.13788E+01, 0.13872E+01, 0.13955E+01, 0.14038E+01, 0.14119E+01, & - & 0.14200E+01, 0.14280E+01, 0.14359E+01, 0.14437E+01, 0.14514E+01, & - & 0.14590E+01, 0.14666E+01, 0.14741E+01, 0.14815E+01, 0.14888E+01, & - & 0.14961E+01, 0.15032E+01, 0.15103E+01, 0.15174E+01, 0.15243E+01, & - & 0.15312E+01, 0.15380E+01, 0.15448E+01, 0.15515E+01, 0.15581E+01, & - & 0.15646E+01, 0.15711E+01, 0.15775E+01, 0.15839E+01, 0.15901E+01, & - & 0.15964E+01, 0.16025E+01, 0.16086E+01, 0.16147E+01, 0.16207E+01, & - & 0.16266E+01, 0.16325E+01, 0.16383E+01, 0.16441E+01, 0.16498E+01, & - & 0.16554E+01, 0.16610E+01, 0.16666E+01, 0.16721E+01, 0.16775E+01, & - & 0.16829E+01, 0.16882E+01, 0.16935E+01, 0.16988E+01, 0.17040E+01, & - & 0.17091E+01, 0.17142E+01, 0.17193E+01, 0.17243E+01, 0.17292E+01, & - & 0.17342E+01, 0.17390E+01, 0.17439E+01, 0.17486E+01, 0.17534E+01, & - & 0.17581E+01, 0.17627E+01, 0.17674E+01, 0.17719E+01, 0.17765E+01/ - - DATA (BNC10M(I),I=701,741)/ & - & 0.17810E+01, 0.17854E+01, 0.17898E+01, 0.17942E+01, 0.17985E+01, & - & 0.18028E+01, 0.18071E+01, 0.18113E+01, 0.18155E+01, 0.18196E+01, & - & 0.18238E+01, 0.18278E+01, 0.18319E+01, 0.18359E+01, 0.18399E+01, & - & 0.18438E+01, 0.18477E+01, 0.18516E+01, 0.18554E+01, 0.18592E+01, & - & 0.18630E+01, 0.18667E+01, 0.18704E+01, 0.18741E+01, 0.18777E+01, & - & 0.18814E+01, 0.18849E+01, 0.18885E+01, 0.18920E+01, 0.18955E+01, & - & 0.18990E+01, 0.19024E+01, 0.19058E+01, 0.19092E+01, 0.19125E+01, & - & 0.19158E+01, 0.19191E+01, 0.19224E+01, 0.19256E+01, 0.19288E+01, & - & 0.19320E+01 & - & / -! -! *** (H,Cl) -! - DATA (BNC11M(I),I=1,100)/ & - &-0.45992E-01,-0.91415E-01,-0.10957E+00,-0.12001E+00,-0.12652E+00, & - &-0.13058E+00,-0.13296E+00,-0.13409E+00,-0.13425E+00,-0.13365E+00, & - &-0.13241E+00,-0.13063E+00,-0.12840E+00,-0.12577E+00,-0.12279E+00, & - &-0.11951E+00,-0.11594E+00,-0.11213E+00,-0.10809E+00,-0.10384E+00, & - &-0.99402E-01,-0.94790E-01,-0.90019E-01,-0.85098E-01,-0.80040E-01, & - &-0.74855E-01,-0.69550E-01,-0.64135E-01,-0.58616E-01,-0.53002E-01, & - &-0.47297E-01,-0.41509E-01,-0.35643E-01,-0.29704E-01,-0.23697E-01, & - &-0.17626E-01,-0.11497E-01,-0.53118E-02, 0.92416E-03, 0.72078E-02, & - & 0.13536E-01, 0.19905E-01, 0.26312E-01, 0.32755E-01, 0.39231E-01, & - & 0.45737E-01, 0.52272E-01, 0.58833E-01, 0.65418E-01, 0.72027E-01, & - & 0.78657E-01, 0.85307E-01, 0.91976E-01, 0.98664E-01, 0.10537E+00, & - & 0.11209E+00, 0.11883E+00, 0.12558E+00, 0.13235E+00, 0.13913E+00, & - & 0.14593E+00, 0.15274E+00, 0.15958E+00, 0.16642E+00, 0.17329E+00, & - & 0.18017E+00, 0.18707E+00, 0.19399E+00, 0.20093E+00, 0.20789E+00, & - & 0.21487E+00, 0.22188E+00, 0.22891E+00, 0.23597E+00, 0.24305E+00, & - & 0.25016E+00, 0.25730E+00, 0.26447E+00, 0.27166E+00, 0.27890E+00, & - & 0.28616E+00, 0.29346E+00, 0.30079E+00, 0.30815E+00, 0.31556E+00, & - & 0.32299E+00, 0.33047E+00, 0.33798E+00, 0.34553E+00, 0.35311E+00, & - & 0.36073E+00, 0.36839E+00, 0.37608E+00, 0.38381E+00, 0.39158E+00, & - & 0.39937E+00, 0.40721E+00, 0.41507E+00, 0.42297E+00, 0.43089E+00/ - - DATA (BNC11M(I),I=101,200)/ & - & 0.43885E+00, 0.44683E+00, 0.45485E+00, 0.46288E+00, 0.47095E+00, & - & 0.47903E+00, 0.48714E+00, 0.49527E+00, 0.50341E+00, 0.51158E+00, & - & 0.51976E+00, 0.52795E+00, 0.53616E+00, 0.54438E+00, 0.55261E+00, & - & 0.56085E+00, 0.56909E+00, 0.57735E+00, 0.58561E+00, 0.59387E+00, & - & 0.60213E+00, 0.61040E+00, 0.61867E+00, 0.62693E+00, 0.63520E+00, & - & 0.64346E+00, 0.65172E+00, 0.65998E+00, 0.66823E+00, 0.67648E+00, & - & 0.68472E+00, 0.69296E+00, 0.70119E+00, 0.70941E+00, 0.71762E+00, & - & 0.72582E+00, 0.73402E+00, 0.74220E+00, 0.75038E+00, 0.75854E+00, & - & 0.76670E+00, 0.77484E+00, 0.78297E+00, 0.79109E+00, 0.79920E+00, & - & 0.80730E+00, 0.81539E+00, 0.82346E+00, 0.83152E+00, 0.83957E+00, & - & 0.84760E+00, 0.85562E+00, 0.86363E+00, 0.87163E+00, 0.87961E+00, & - & 0.88758E+00, 0.89553E+00, 0.90347E+00, 0.91140E+00, 0.91931E+00, & - & 0.92721E+00, 0.93510E+00, 0.94297E+00, 0.95083E+00, 0.95867E+00, & - & 0.96650E+00, 0.97431E+00, 0.98211E+00, 0.98990E+00, 0.99767E+00, & - & 0.10054E+01, 0.10132E+01, 0.10209E+01, 0.10286E+01, 0.10363E+01, & - & 0.10440E+01, 0.10517E+01, 0.10593E+01, 0.10669E+01, 0.10746E+01, & - & 0.10822E+01, 0.10898E+01, 0.10974E+01, 0.11049E+01, 0.11125E+01, & - & 0.11200E+01, 0.11275E+01, 0.11350E+01, 0.11425E+01, 0.11500E+01, & - & 0.11574E+01, 0.11649E+01, 0.11723E+01, 0.11797E+01, 0.11871E+01, & - & 0.11945E+01, 0.12019E+01, 0.12092E+01, 0.12166E+01, 0.12239E+01/ - - DATA (BNC11M(I),I=201,300)/ & - & 0.12312E+01, 0.12385E+01, 0.12458E+01, 0.12531E+01, 0.12603E+01, & - & 0.12675E+01, 0.12748E+01, 0.12820E+01, 0.12892E+01, 0.12963E+01, & - & 0.13035E+01, 0.13106E+01, 0.13178E+01, 0.13249E+01, 0.13320E+01, & - & 0.13391E+01, 0.13462E+01, 0.13532E+01, 0.13603E+01, 0.13673E+01, & - & 0.13743E+01, 0.13813E+01, 0.13883E+01, 0.13953E+01, 0.14022E+01, & - & 0.14092E+01, 0.14161E+01, 0.14230E+01, 0.14299E+01, 0.14368E+01, & - & 0.14437E+01, 0.14505E+01, 0.14574E+01, 0.14642E+01, 0.14710E+01, & - & 0.14778E+01, 0.14846E+01, 0.14914E+01, 0.14981E+01, 0.15049E+01, & - & 0.15116E+01, 0.15183E+01, 0.15250E+01, 0.15317E+01, 0.15384E+01, & - & 0.15450E+01, 0.15517E+01, 0.15583E+01, 0.15650E+01, 0.15716E+01, & - & 0.15782E+01, 0.15847E+01, 0.15913E+01, 0.15979E+01, 0.16044E+01, & - & 0.16109E+01, 0.16174E+01, 0.16239E+01, 0.16304E+01, 0.16369E+01, & - & 0.16434E+01, 0.16498E+01, 0.16562E+01, 0.16627E+01, 0.16691E+01, & - & 0.16755E+01, 0.16818E+01, 0.16882E+01, 0.16946E+01, 0.17009E+01, & - & 0.17072E+01, 0.17136E+01, 0.17199E+01, 0.17262E+01, 0.17324E+01, & - & 0.17387E+01, 0.17450E+01, 0.17512E+01, 0.17574E+01, 0.17636E+01, & - & 0.17699E+01, 0.17760E+01, 0.17822E+01, 0.17884E+01, 0.17945E+01, & - & 0.18007E+01, 0.18068E+01, 0.18129E+01, 0.18190E+01, 0.18251E+01, & - & 0.18312E+01, 0.18373E+01, 0.18434E+01, 0.18494E+01, 0.18554E+01, & - & 0.18615E+01, 0.18675E+01, 0.18735E+01, 0.18795E+01, 0.18854E+01/ - - DATA (BNC11M(I),I=301,400)/ & - & 0.18914E+01, 0.18973E+01, 0.19033E+01, 0.19092E+01, 0.19151E+01, & - & 0.19210E+01, 0.19269E+01, 0.19328E+01, 0.19387E+01, 0.19446E+01, & - & 0.19504E+01, 0.19562E+01, 0.19621E+01, 0.19679E+01, 0.19737E+01, & - & 0.19795E+01, 0.19853E+01, 0.19910E+01, 0.19968E+01, 0.20025E+01, & - & 0.20083E+01, 0.20140E+01, 0.20197E+01, 0.20254E+01, 0.20311E+01, & - & 0.20368E+01, 0.20425E+01, 0.20481E+01, 0.20538E+01, 0.20594E+01, & - & 0.20651E+01, 0.20707E+01, 0.20763E+01, 0.20819E+01, 0.20875E+01, & - & 0.20931E+01, 0.20986E+01, 0.21042E+01, 0.21097E+01, 0.21153E+01, & - & 0.21208E+01, 0.21263E+01, 0.21318E+01, 0.21373E+01, 0.21428E+01, & - & 0.21483E+01, 0.21537E+01, 0.21592E+01, 0.21646E+01, 0.21701E+01, & - & 0.21755E+01, 0.21809E+01, 0.21863E+01, 0.21917E+01, 0.21971E+01, & - & 0.22025E+01, 0.22078E+01, 0.22132E+01, 0.22185E+01, 0.22239E+01, & - & 0.22292E+01, 0.22345E+01, 0.22398E+01, 0.22451E+01, 0.22504E+01, & - & 0.22557E+01, 0.22610E+01, 0.22662E+01, 0.22715E+01, 0.22767E+01, & - & 0.22819E+01, 0.22872E+01, 0.22924E+01, 0.22976E+01, 0.23028E+01, & - & 0.23080E+01, 0.23131E+01, 0.23183E+01, 0.23235E+01, 0.23286E+01, & - & 0.23338E+01, 0.23389E+01, 0.23440E+01, 0.23491E+01, 0.23542E+01, & - & 0.23593E+01, 0.23644E+01, 0.23695E+01, 0.23746E+01, 0.23796E+01, & - & 0.23847E+01, 0.23897E+01, 0.23947E+01, 0.23998E+01, 0.24048E+01, & - & 0.24098E+01, 0.24148E+01, 0.24198E+01, 0.24248E+01, 0.24297E+01/ - - DATA (BNC11M(I),I=401,500)/ & - & 0.24347E+01, 0.24397E+01, 0.24446E+01, 0.24496E+01, 0.24545E+01, & - & 0.24594E+01, 0.24643E+01, 0.24692E+01, 0.24741E+01, 0.24790E+01, & - & 0.24839E+01, 0.24888E+01, 0.24936E+01, 0.24985E+01, 0.25033E+01, & - & 0.25082E+01, 0.25130E+01, 0.25178E+01, 0.25227E+01, 0.25275E+01, & - & 0.25323E+01, 0.25371E+01, 0.25418E+01, 0.25466E+01, 0.25514E+01, & - & 0.25561E+01, 0.25609E+01, 0.25656E+01, 0.25704E+01, 0.25751E+01, & - & 0.25798E+01, 0.25845E+01, 0.25892E+01, 0.25939E+01, 0.25986E+01, & - & 0.26033E+01, 0.26080E+01, 0.26127E+01, 0.26173E+01, 0.26220E+01, & - & 0.26266E+01, 0.26313E+01, 0.26359E+01, 0.26405E+01, 0.26451E+01, & - & 0.26497E+01, 0.26543E+01, 0.26589E+01, 0.26635E+01, 0.26681E+01, & - & 0.26727E+01, 0.26772E+01, 0.26818E+01, 0.26863E+01, 0.26909E+01, & - & 0.26954E+01, 0.26999E+01, 0.27044E+01, 0.27090E+01, 0.27135E+01, & - & 0.27180E+01, 0.27224E+01, 0.27269E+01, 0.27314E+01, 0.27359E+01, & - & 0.27403E+01, 0.27448E+01, 0.27492E+01, 0.27537E+01, 0.27581E+01, & - & 0.27626E+01, 0.27670E+01, 0.27714E+01, 0.27758E+01, 0.27802E+01, & - & 0.27846E+01, 0.27890E+01, 0.27934E+01, 0.27977E+01, 0.28021E+01, & - & 0.28065E+01, 0.28108E+01, 0.28152E+01, 0.28195E+01, 0.28238E+01, & - & 0.28282E+01, 0.28325E+01, 0.28368E+01, 0.28411E+01, 0.28454E+01, & - & 0.28497E+01, 0.28540E+01, 0.28583E+01, 0.28625E+01, 0.28668E+01, & - & 0.28711E+01, 0.28753E+01, 0.28796E+01, 0.28838E+01, 0.28880E+01/ - - DATA (BNC11M(I),I=501,600)/ & - & 0.28923E+01, 0.28965E+01, 0.29007E+01, 0.29049E+01, 0.29091E+01, & - & 0.29133E+01, 0.29175E+01, 0.29217E+01, 0.29259E+01, 0.29301E+01, & - & 0.29342E+01, 0.29384E+01, 0.29425E+01, 0.29467E+01, 0.29508E+01, & - & 0.29550E+01, 0.29591E+01, 0.29632E+01, 0.29673E+01, 0.29714E+01, & - & 0.29756E+01, 0.29797E+01, 0.29837E+01, 0.29878E+01, 0.29919E+01, & - & 0.29960E+01, 0.30001E+01, 0.30041E+01, 0.30082E+01, 0.30122E+01, & - & 0.30163E+01, 0.30203E+01, 0.30244E+01, 0.30284E+01, 0.30324E+01, & - & 0.30364E+01, 0.30404E+01, 0.30444E+01, 0.30484E+01, 0.30524E+01, & - & 0.30564E+01, 0.30604E+01, 0.30644E+01, 0.30684E+01, 0.30723E+01, & - & 0.30763E+01, 0.30802E+01, 0.30842E+01, 0.30881E+01, 0.30921E+01, & - & 0.30960E+01, 0.30999E+01, 0.31039E+01, 0.31078E+01, 0.31117E+01, & - & 0.31156E+01, 0.31195E+01, 0.31234E+01, 0.31273E+01, 0.31311E+01, & - & 0.31350E+01, 0.31389E+01, 0.31428E+01, 0.31466E+01, 0.31505E+01, & - & 0.31543E+01, 0.31582E+01, 0.31620E+01, 0.31658E+01, 0.31697E+01, & - & 0.31735E+01, 0.31773E+01, 0.31811E+01, 0.31849E+01, 0.31887E+01, & - & 0.31925E+01, 0.31963E+01, 0.32001E+01, 0.32039E+01, 0.32077E+01, & - & 0.32115E+01, 0.32152E+01, 0.32190E+01, 0.32227E+01, 0.32265E+01, & - & 0.32302E+01, 0.32340E+01, 0.32377E+01, 0.32414E+01, 0.32452E+01, & - & 0.32489E+01, 0.32526E+01, 0.32563E+01, 0.32600E+01, 0.32637E+01, & - & 0.32674E+01, 0.32711E+01, 0.32748E+01, 0.32785E+01, 0.32822E+01/ - - DATA (BNC11M(I),I=601,700)/ & - & 0.33216E+01, 0.33575E+01, 0.33930E+01, 0.34281E+01, 0.34627E+01, & - & 0.34969E+01, 0.35306E+01, 0.35640E+01, 0.35969E+01, 0.36294E+01, & - & 0.36616E+01, 0.36933E+01, 0.37247E+01, 0.37557E+01, 0.37864E+01, & - & 0.38167E+01, 0.38467E+01, 0.38764E+01, 0.39057E+01, 0.39347E+01, & - & 0.39633E+01, 0.39917E+01, 0.40198E+01, 0.40475E+01, 0.40750E+01, & - & 0.41022E+01, 0.41291E+01, 0.41558E+01, 0.41821E+01, 0.42082E+01, & - & 0.42341E+01, 0.42596E+01, 0.42850E+01, 0.43100E+01, 0.43349E+01, & - & 0.43595E+01, 0.43838E+01, 0.44080E+01, 0.44319E+01, 0.44556E+01, & - & 0.44790E+01, 0.45023E+01, 0.45253E+01, 0.45481E+01, 0.45707E+01, & - & 0.45932E+01, 0.46154E+01, 0.46374E+01, 0.46592E+01, 0.46809E+01, & - & 0.47023E+01, 0.47236E+01, 0.47447E+01, 0.47656E+01, 0.47863E+01, & - & 0.48069E+01, 0.48273E+01, 0.48475E+01, 0.48675E+01, 0.48874E+01, & - & 0.49071E+01, 0.49267E+01, 0.49461E+01, 0.49654E+01, 0.49845E+01, & - & 0.50034E+01, 0.50222E+01, 0.50409E+01, 0.50594E+01, 0.50778E+01, & - & 0.50960E+01, 0.51141E+01, 0.51321E+01, 0.51499E+01, 0.51676E+01, & - & 0.51851E+01, 0.52025E+01, 0.52198E+01, 0.52370E+01, 0.52541E+01, & - & 0.52710E+01, 0.52878E+01, 0.53044E+01, 0.53210E+01, 0.53374E+01, & - & 0.53538E+01, 0.53700E+01, 0.53861E+01, 0.54021E+01, 0.54179E+01, & - & 0.54337E+01, 0.54494E+01, 0.54649E+01, 0.54804E+01, 0.54957E+01, & - & 0.55109E+01, 0.55261E+01, 0.55411E+01, 0.55560E+01, 0.55709E+01/ - - DATA (BNC11M(I),I=701,741)/ & - & 0.55856E+01, 0.56002E+01, 0.56148E+01, 0.56292E+01, 0.56436E+01, & - & 0.56579E+01, 0.56720E+01, 0.56861E+01, 0.57001E+01, 0.57140E+01, & - & 0.57278E+01, 0.57416E+01, 0.57552E+01, 0.57688E+01, 0.57822E+01, & - & 0.57956E+01, 0.58089E+01, 0.58222E+01, 0.58353E+01, 0.58484E+01, & - & 0.58614E+01, 0.58743E+01, 0.58871E+01, 0.58999E+01, 0.59126E+01, & - & 0.59252E+01, 0.59377E+01, 0.59501E+01, 0.59625E+01, 0.59748E+01, & - & 0.59871E+01, 0.59993E+01, 0.60114E+01, 0.60234E+01, 0.60353E+01, & - & 0.60472E+01, 0.60591E+01, 0.60708E+01, 0.60825E+01, 0.60941E+01, & - & 0.61057E+01 & - & / -! -! *** NaHSO4 -! - DATA (BNC12M(I),I=1,100)/ & - &-0.47116E-01,-0.97475E-01,-0.12015E+00,-0.13491E+00,-0.14562E+00, & - &-0.15380E+00,-0.16023E+00,-0.16537E+00,-0.16952E+00,-0.17287E+00, & - &-0.17555E+00,-0.17769E+00,-0.17935E+00,-0.18059E+00,-0.18148E+00, & - &-0.18204E+00,-0.18230E+00,-0.18230E+00,-0.18206E+00,-0.18160E+00, & - &-0.18093E+00,-0.18008E+00,-0.17904E+00,-0.17783E+00,-0.17647E+00, & - &-0.17496E+00,-0.17331E+00,-0.17153E+00,-0.16962E+00,-0.16760E+00, & - &-0.16545E+00,-0.16320E+00,-0.16085E+00,-0.15839E+00,-0.15584E+00, & - &-0.15321E+00,-0.15048E+00,-0.14767E+00,-0.14478E+00,-0.14181E+00, & - &-0.13877E+00,-0.13567E+00,-0.13249E+00,-0.12925E+00,-0.12594E+00, & - &-0.12258E+00,-0.11916E+00,-0.11568E+00,-0.11216E+00,-0.10858E+00, & - &-0.10495E+00,-0.10127E+00,-0.97550E-01,-0.93785E-01,-0.89977E-01, & - &-0.86128E-01,-0.82239E-01,-0.78311E-01,-0.74345E-01,-0.70342E-01, & - &-0.66304E-01,-0.62230E-01,-0.58122E-01,-0.53979E-01,-0.49803E-01, & - &-0.45593E-01,-0.41351E-01,-0.37076E-01,-0.32768E-01,-0.28428E-01, & - &-0.24056E-01,-0.19651E-01,-0.15214E-01,-0.10744E-01,-0.62423E-02, & - &-0.17073E-02, 0.28604E-02, 0.74611E-02, 0.12095E-01, 0.16762E-01, & - & 0.21462E-01, 0.26196E-01, 0.30963E-01, 0.35763E-01, 0.40597E-01, & - & 0.45463E-01, 0.50363E-01, 0.55296E-01, 0.60261E-01, 0.65258E-01, & - & 0.70287E-01, 0.75348E-01, 0.80439E-01, 0.85560E-01, 0.90710E-01, & - & 0.95889E-01, 0.10110E+00, 0.10633E+00, 0.11159E+00, 0.11687E+00/ - - DATA (BNC12M(I),I=101,200)/ & - & 0.12218E+00, 0.12752E+00, 0.13287E+00, 0.13824E+00, 0.14364E+00, & - & 0.14905E+00, 0.15448E+00, 0.15993E+00, 0.16539E+00, 0.17086E+00, & - & 0.17635E+00, 0.18185E+00, 0.18736E+00, 0.19287E+00, 0.19840E+00, & - & 0.20393E+00, 0.20947E+00, 0.21502E+00, 0.22057E+00, 0.22612E+00, & - & 0.23167E+00, 0.23722E+00, 0.24278E+00, 0.24834E+00, 0.25389E+00, & - & 0.25944E+00, 0.26499E+00, 0.27054E+00, 0.27608E+00, 0.28162E+00, & - & 0.28715E+00, 0.29268E+00, 0.29821E+00, 0.30373E+00, 0.30924E+00, & - & 0.31474E+00, 0.32024E+00, 0.32573E+00, 0.33121E+00, 0.33668E+00, & - & 0.34215E+00, 0.34761E+00, 0.35306E+00, 0.35850E+00, 0.36393E+00, & - & 0.36935E+00, 0.37476E+00, 0.38016E+00, 0.38555E+00, 0.39094E+00, & - & 0.39631E+00, 0.40167E+00, 0.40703E+00, 0.41237E+00, 0.41770E+00, & - & 0.42302E+00, 0.42833E+00, 0.43363E+00, 0.43893E+00, 0.44420E+00, & - & 0.44947E+00, 0.45473E+00, 0.45998E+00, 0.46522E+00, 0.47044E+00, & - & 0.47566E+00, 0.48087E+00, 0.48606E+00, 0.49124E+00, 0.49641E+00, & - & 0.50158E+00, 0.50673E+00, 0.51187E+00, 0.51699E+00, 0.52211E+00, & - & 0.52722E+00, 0.53232E+00, 0.53740E+00, 0.54247E+00, 0.54754E+00, & - & 0.55259E+00, 0.55763E+00, 0.56266E+00, 0.56768E+00, 0.57269E+00, & - & 0.57769E+00, 0.58267E+00, 0.58765E+00, 0.59262E+00, 0.59757E+00, & - & 0.60251E+00, 0.60745E+00, 0.61237E+00, 0.61728E+00, 0.62218E+00, & - & 0.62707E+00, 0.63195E+00, 0.63682E+00, 0.64168E+00, 0.64652E+00/ - - DATA (BNC12M(I),I=201,300)/ & - & 0.65136E+00, 0.65619E+00, 0.66100E+00, 0.66581E+00, 0.67060E+00, & - & 0.67539E+00, 0.68016E+00, 0.68492E+00, 0.68968E+00, 0.69442E+00, & - & 0.69915E+00, 0.70387E+00, 0.70858E+00, 0.71328E+00, 0.71798E+00, & - & 0.72266E+00, 0.72733E+00, 0.73199E+00, 0.73664E+00, 0.74128E+00, & - & 0.74591E+00, 0.75053E+00, 0.75514E+00, 0.75974E+00, 0.76433E+00, & - & 0.76891E+00, 0.77348E+00, 0.77804E+00, 0.78260E+00, 0.78714E+00, & - & 0.79167E+00, 0.79619E+00, 0.80070E+00, 0.80521E+00, 0.80970E+00, & - & 0.81418E+00, 0.81866E+00, 0.82312E+00, 0.82758E+00, 0.83202E+00, & - & 0.83646E+00, 0.84089E+00, 0.84530E+00, 0.84971E+00, 0.85411E+00, & - & 0.85850E+00, 0.86288E+00, 0.86725E+00, 0.87161E+00, 0.87597E+00, & - & 0.88031E+00, 0.88465E+00, 0.88897E+00, 0.89329E+00, 0.89760E+00, & - & 0.90189E+00, 0.90619E+00, 0.91047E+00, 0.91474E+00, 0.91900E+00, & - & 0.92326E+00, 0.92750E+00, 0.93174E+00, 0.93597E+00, 0.94019E+00, & - & 0.94440E+00, 0.94860E+00, 0.95280E+00, 0.95698E+00, 0.96116E+00, & - & 0.96533E+00, 0.96949E+00, 0.97364E+00, 0.97778E+00, 0.98192E+00, & - & 0.98604E+00, 0.99016E+00, 0.99427E+00, 0.99837E+00, 0.10025E+01, & - & 0.10066E+01, 0.10106E+01, 0.10147E+01, 0.10188E+01, 0.10228E+01, & - & 0.10269E+01, 0.10309E+01, 0.10349E+01, 0.10389E+01, 0.10430E+01, & - & 0.10470E+01, 0.10510E+01, 0.10549E+01, 0.10589E+01, 0.10629E+01, & - & 0.10669E+01, 0.10708E+01, 0.10748E+01, 0.10787E+01, 0.10827E+01/ - - DATA (BNC12M(I),I=301,400)/ & - & 0.10866E+01, 0.10905E+01, 0.10944E+01, 0.10983E+01, 0.11022E+01, & - & 0.11061E+01, 0.11100E+01, 0.11139E+01, 0.11177E+01, 0.11216E+01, & - & 0.11254E+01, 0.11293E+01, 0.11331E+01, 0.11370E+01, 0.11408E+01, & - & 0.11446E+01, 0.11484E+01, 0.11522E+01, 0.11560E+01, 0.11598E+01, & - & 0.11636E+01, 0.11673E+01, 0.11711E+01, 0.11749E+01, 0.11786E+01, & - & 0.11824E+01, 0.11861E+01, 0.11898E+01, 0.11936E+01, 0.11973E+01, & - & 0.12010E+01, 0.12047E+01, 0.12084E+01, 0.12121E+01, 0.12157E+01, & - & 0.12194E+01, 0.12231E+01, 0.12268E+01, 0.12304E+01, 0.12341E+01, & - & 0.12377E+01, 0.12413E+01, 0.12450E+01, 0.12486E+01, 0.12522E+01, & - & 0.12558E+01, 0.12594E+01, 0.12630E+01, 0.12666E+01, 0.12702E+01, & - & 0.12738E+01, 0.12773E+01, 0.12809E+01, 0.12844E+01, 0.12880E+01, & - & 0.12915E+01, 0.12951E+01, 0.12986E+01, 0.13021E+01, 0.13057E+01, & - & 0.13092E+01, 0.13127E+01, 0.13162E+01, 0.13197E+01, 0.13232E+01, & - & 0.13266E+01, 0.13301E+01, 0.13336E+01, 0.13370E+01, 0.13405E+01, & - & 0.13440E+01, 0.13474E+01, 0.13508E+01, 0.13543E+01, 0.13577E+01, & - & 0.13611E+01, 0.13645E+01, 0.13679E+01, 0.13714E+01, 0.13747E+01, & - & 0.13781E+01, 0.13815E+01, 0.13849E+01, 0.13883E+01, 0.13916E+01, & - & 0.13950E+01, 0.13984E+01, 0.14017E+01, 0.14051E+01, 0.14084E+01, & - & 0.14117E+01, 0.14151E+01, 0.14184E+01, 0.14217E+01, 0.14250E+01, & - & 0.14283E+01, 0.14316E+01, 0.14349E+01, 0.14382E+01, 0.14415E+01/ - - DATA (BNC12M(I),I=401,500)/ & - & 0.14448E+01, 0.14480E+01, 0.14513E+01, 0.14546E+01, 0.14578E+01, & - & 0.14611E+01, 0.14643E+01, 0.14676E+01, 0.14708E+01, 0.14740E+01, & - & 0.14772E+01, 0.14805E+01, 0.14837E+01, 0.14869E+01, 0.14901E+01, & - & 0.14933E+01, 0.14965E+01, 0.14997E+01, 0.15028E+01, 0.15060E+01, & - & 0.15092E+01, 0.15124E+01, 0.15155E+01, 0.15187E+01, 0.15218E+01, & - & 0.15250E+01, 0.15281E+01, 0.15312E+01, 0.15344E+01, 0.15375E+01, & - & 0.15406E+01, 0.15437E+01, 0.15468E+01, 0.15499E+01, 0.15530E+01, & - & 0.15561E+01, 0.15592E+01, 0.15623E+01, 0.15654E+01, 0.15685E+01, & - & 0.15715E+01, 0.15746E+01, 0.15776E+01, 0.15807E+01, 0.15838E+01, & - & 0.15868E+01, 0.15898E+01, 0.15929E+01, 0.15959E+01, 0.15989E+01, & - & 0.16020E+01, 0.16050E+01, 0.16080E+01, 0.16110E+01, 0.16140E+01, & - & 0.16170E+01, 0.16200E+01, 0.16230E+01, 0.16259E+01, 0.16289E+01, & - & 0.16319E+01, 0.16349E+01, 0.16378E+01, 0.16408E+01, 0.16437E+01, & - & 0.16467E+01, 0.16496E+01, 0.16526E+01, 0.16555E+01, 0.16585E+01, & - & 0.16614E+01, 0.16643E+01, 0.16672E+01, 0.16701E+01, 0.16731E+01, & - & 0.16760E+01, 0.16789E+01, 0.16818E+01, 0.16846E+01, 0.16875E+01, & - & 0.16904E+01, 0.16933E+01, 0.16962E+01, 0.16990E+01, 0.17019E+01, & - & 0.17048E+01, 0.17076E+01, 0.17105E+01, 0.17133E+01, 0.17162E+01, & - & 0.17190E+01, 0.17218E+01, 0.17247E+01, 0.17275E+01, 0.17303E+01, & - & 0.17331E+01, 0.17360E+01, 0.17388E+01, 0.17416E+01, 0.17444E+01/ - - DATA (BNC12M(I),I=501,600)/ & - & 0.17472E+01, 0.17500E+01, 0.17528E+01, 0.17555E+01, 0.17583E+01, & - & 0.17611E+01, 0.17639E+01, 0.17666E+01, 0.17694E+01, 0.17722E+01, & - & 0.17749E+01, 0.17777E+01, 0.17804E+01, 0.17832E+01, 0.17859E+01, & - & 0.17887E+01, 0.17914E+01, 0.17941E+01, 0.17968E+01, 0.17996E+01, & - & 0.18023E+01, 0.18050E+01, 0.18077E+01, 0.18104E+01, 0.18131E+01, & - & 0.18158E+01, 0.18185E+01, 0.18212E+01, 0.18239E+01, 0.18265E+01, & - & 0.18292E+01, 0.18319E+01, 0.18346E+01, 0.18372E+01, 0.18399E+01, & - & 0.18426E+01, 0.18452E+01, 0.18479E+01, 0.18505E+01, 0.18531E+01, & - & 0.18558E+01, 0.18584E+01, 0.18611E+01, 0.18637E+01, 0.18663E+01, & - & 0.18689E+01, 0.18715E+01, 0.18742E+01, 0.18768E+01, 0.18794E+01, & - & 0.18820E+01, 0.18846E+01, 0.18872E+01, 0.18898E+01, 0.18923E+01, & - & 0.18949E+01, 0.18975E+01, 0.19001E+01, 0.19027E+01, 0.19052E+01, & - & 0.19078E+01, 0.19104E+01, 0.19129E+01, 0.19155E+01, 0.19180E+01, & - & 0.19206E+01, 0.19231E+01, 0.19257E+01, 0.19282E+01, 0.19307E+01, & - & 0.19333E+01, 0.19358E+01, 0.19383E+01, 0.19408E+01, 0.19433E+01, & - & 0.19459E+01, 0.19484E+01, 0.19509E+01, 0.19534E+01, 0.19559E+01, & - & 0.19584E+01, 0.19609E+01, 0.19634E+01, 0.19658E+01, 0.19683E+01, & - & 0.19708E+01, 0.19733E+01, 0.19757E+01, 0.19782E+01, 0.19807E+01, & - & 0.19831E+01, 0.19856E+01, 0.19881E+01, 0.19905E+01, 0.19930E+01, & - & 0.19954E+01, 0.19978E+01, 0.20003E+01, 0.20027E+01, 0.20052E+01/ - - DATA (BNC12M(I),I=601,700)/ & - & 0.20312E+01, 0.20550E+01, 0.20785E+01, 0.21017E+01, 0.21246E+01, & - & 0.21472E+01, 0.21695E+01, 0.21916E+01, 0.22134E+01, 0.22349E+01, & - & 0.22561E+01, 0.22771E+01, 0.22978E+01, 0.23183E+01, 0.23386E+01, & - & 0.23586E+01, 0.23784E+01, 0.23980E+01, 0.24173E+01, 0.24364E+01, & - & 0.24553E+01, 0.24740E+01, 0.24925E+01, 0.25108E+01, 0.25289E+01, & - & 0.25468E+01, 0.25646E+01, 0.25821E+01, 0.25994E+01, 0.26166E+01, & - & 0.26336E+01, 0.26504E+01, 0.26670E+01, 0.26835E+01, 0.26998E+01, & - & 0.27160E+01, 0.27320E+01, 0.27478E+01, 0.27635E+01, 0.27790E+01, & - & 0.27944E+01, 0.28096E+01, 0.28247E+01, 0.28396E+01, 0.28544E+01, & - & 0.28690E+01, 0.28836E+01, 0.28980E+01, 0.29122E+01, 0.29263E+01, & - & 0.29403E+01, 0.29542E+01, 0.29680E+01, 0.29816E+01, 0.29951E+01, & - & 0.30085E+01, 0.30217E+01, 0.30349E+01, 0.30479E+01, 0.30609E+01, & - & 0.30737E+01, 0.30864E+01, 0.30990E+01, 0.31115E+01, 0.31239E+01, & - & 0.31362E+01, 0.31483E+01, 0.31604E+01, 0.31724E+01, 0.31843E+01, & - & 0.31961E+01, 0.32078E+01, 0.32194E+01, 0.32309E+01, 0.32423E+01, & - & 0.32536E+01, 0.32648E+01, 0.32760E+01, 0.32870E+01, 0.32980E+01, & - & 0.33089E+01, 0.33197E+01, 0.33304E+01, 0.33411E+01, 0.33516E+01, & - & 0.33621E+01, 0.33725E+01, 0.33828E+01, 0.33931E+01, 0.34032E+01, & - & 0.34133E+01, 0.34233E+01, 0.34333E+01, 0.34431E+01, 0.34529E+01, & - & 0.34627E+01, 0.34723E+01, 0.34819E+01, 0.34914E+01, 0.35009E+01/ - - DATA (BNC12M(I),I=701,741)/ & - & 0.35103E+01, 0.35196E+01, 0.35288E+01, 0.35380E+01, 0.35471E+01, & - & 0.35562E+01, 0.35652E+01, 0.35741E+01, 0.35830E+01, 0.35918E+01, & - & 0.36005E+01, 0.36092E+01, 0.36178E+01, 0.36264E+01, 0.36349E+01, & - & 0.36434E+01, 0.36518E+01, 0.36601E+01, 0.36684E+01, 0.36766E+01, & - & 0.36848E+01, 0.36929E+01, 0.37010E+01, 0.37090E+01, 0.37169E+01, & - & 0.37248E+01, 0.37327E+01, 0.37405E+01, 0.37483E+01, 0.37560E+01, & - & 0.37636E+01, 0.37712E+01, 0.37788E+01, 0.37863E+01, 0.37938E+01, & - & 0.38012E+01, 0.38085E+01, 0.38159E+01, 0.38231E+01, 0.38304E+01, & - & 0.38376E+01 & - & / -! -! *** (NH4)3H(SO4)2 -! - DATA (BNC13M(I),I=1,100)/ & - &-0.78016E-01,-0.16930E+00,-0.21481E+00,-0.24696E+00,-0.27216E+00, & - &-0.29302E+00,-0.31087E+00,-0.32649E+00,-0.34040E+00,-0.35293E+00, & - &-0.36434E+00,-0.37481E+00,-0.38448E+00,-0.39347E+00,-0.40186E+00, & - &-0.40972E+00,-0.41711E+00,-0.42408E+00,-0.43067E+00,-0.43692E+00, & - &-0.44285E+00,-0.44850E+00,-0.45388E+00,-0.45901E+00,-0.46392E+00, & - &-0.46861E+00,-0.47311E+00,-0.47741E+00,-0.48155E+00,-0.48551E+00, & - &-0.48933E+00,-0.49299E+00,-0.49651E+00,-0.49991E+00,-0.50317E+00, & - &-0.50632E+00,-0.50935E+00,-0.51227E+00,-0.51508E+00,-0.51780E+00, & - &-0.52042E+00,-0.52294E+00,-0.52538E+00,-0.52774E+00,-0.53001E+00, & - &-0.53221E+00,-0.53432E+00,-0.53637E+00,-0.53835E+00,-0.54026E+00, & - &-0.54210E+00,-0.54389E+00,-0.54561E+00,-0.54727E+00,-0.54888E+00, & - &-0.55044E+00,-0.55194E+00,-0.55339E+00,-0.55479E+00,-0.55615E+00, & - &-0.55746E+00,-0.55872E+00,-0.55994E+00,-0.56113E+00,-0.56227E+00, & - &-0.56337E+00,-0.56443E+00,-0.56546E+00,-0.56645E+00,-0.56741E+00, & - &-0.56833E+00,-0.56922E+00,-0.57008E+00,-0.57090E+00,-0.57170E+00, & - &-0.57246E+00,-0.57320E+00,-0.57391E+00,-0.57459E+00,-0.57524E+00, & - &-0.57587E+00,-0.57647E+00,-0.57704E+00,-0.57759E+00,-0.57812E+00, & - &-0.57862E+00,-0.57910E+00,-0.57955E+00,-0.57999E+00,-0.58040E+00, & - &-0.58078E+00,-0.58115E+00,-0.58150E+00,-0.58183E+00,-0.58214E+00, & - &-0.58243E+00,-0.58270E+00,-0.58295E+00,-0.58318E+00,-0.58340E+00/ - - DATA (BNC13M(I),I=101,200)/ & - &-0.58360E+00,-0.58379E+00,-0.58396E+00,-0.58411E+00,-0.58425E+00, & - &-0.58438E+00,-0.58449E+00,-0.58459E+00,-0.58467E+00,-0.58475E+00, & - &-0.58481E+00,-0.58486E+00,-0.58490E+00,-0.58493E+00,-0.58495E+00, & - &-0.58495E+00,-0.58495E+00,-0.58495E+00,-0.58493E+00,-0.58490E+00, & - &-0.58487E+00,-0.58483E+00,-0.58478E+00,-0.58473E+00,-0.58467E+00, & - &-0.58460E+00,-0.58452E+00,-0.58445E+00,-0.58436E+00,-0.58427E+00, & - &-0.58418E+00,-0.58408E+00,-0.58397E+00,-0.58386E+00,-0.58375E+00, & - &-0.58363E+00,-0.58351E+00,-0.58339E+00,-0.58326E+00,-0.58313E+00, & - &-0.58300E+00,-0.58286E+00,-0.58272E+00,-0.58258E+00,-0.58243E+00, & - &-0.58228E+00,-0.58213E+00,-0.58198E+00,-0.58183E+00,-0.58167E+00, & - &-0.58151E+00,-0.58135E+00,-0.58119E+00,-0.58102E+00,-0.58086E+00, & - &-0.58069E+00,-0.58052E+00,-0.58035E+00,-0.58018E+00,-0.58001E+00, & - &-0.57983E+00,-0.57966E+00,-0.57948E+00,-0.57930E+00,-0.57912E+00, & - &-0.57894E+00,-0.57876E+00,-0.57858E+00,-0.57840E+00,-0.57822E+00, & - &-0.57803E+00,-0.57785E+00,-0.57766E+00,-0.57748E+00,-0.57729E+00, & - &-0.57711E+00,-0.57692E+00,-0.57673E+00,-0.57655E+00,-0.57636E+00, & - &-0.57617E+00,-0.57598E+00,-0.57579E+00,-0.57561E+00,-0.57542E+00, & - &-0.57523E+00,-0.57504E+00,-0.57485E+00,-0.57466E+00,-0.57447E+00, & - &-0.57428E+00,-0.57409E+00,-0.57390E+00,-0.57372E+00,-0.57353E+00, & - &-0.57334E+00,-0.57315E+00,-0.57296E+00,-0.57277E+00,-0.57258E+00/ - - DATA (BNC13M(I),I=201,300)/ & - &-0.57240E+00,-0.57221E+00,-0.57202E+00,-0.57183E+00,-0.57165E+00, & - &-0.57146E+00,-0.57127E+00,-0.57109E+00,-0.57090E+00,-0.57072E+00, & - &-0.57053E+00,-0.57035E+00,-0.57016E+00,-0.56998E+00,-0.56980E+00, & - &-0.56961E+00,-0.56943E+00,-0.56925E+00,-0.56907E+00,-0.56888E+00, & - &-0.56870E+00,-0.56852E+00,-0.56834E+00,-0.56816E+00,-0.56798E+00, & - &-0.56781E+00,-0.56763E+00,-0.56745E+00,-0.56727E+00,-0.56710E+00, & - &-0.56692E+00,-0.56675E+00,-0.56657E+00,-0.56640E+00,-0.56623E+00, & - &-0.56605E+00,-0.56588E+00,-0.56571E+00,-0.56554E+00,-0.56537E+00, & - &-0.56520E+00,-0.56503E+00,-0.56486E+00,-0.56469E+00,-0.56452E+00, & - &-0.56436E+00,-0.56419E+00,-0.56402E+00,-0.56386E+00,-0.56370E+00, & - &-0.56353E+00,-0.56337E+00,-0.56321E+00,-0.56304E+00,-0.56288E+00, & - &-0.56272E+00,-0.56256E+00,-0.56240E+00,-0.56225E+00,-0.56209E+00, & - &-0.56193E+00,-0.56178E+00,-0.56162E+00,-0.56146E+00,-0.56131E+00, & - &-0.56116E+00,-0.56100E+00,-0.56085E+00,-0.56070E+00,-0.56055E+00, & - &-0.56040E+00,-0.56025E+00,-0.56010E+00,-0.55995E+00,-0.55980E+00, & - &-0.55966E+00,-0.55951E+00,-0.55937E+00,-0.55922E+00,-0.55908E+00, & - &-0.55893E+00,-0.55879E+00,-0.55865E+00,-0.55851E+00,-0.55837E+00, & - &-0.55823E+00,-0.55809E+00,-0.55795E+00,-0.55781E+00,-0.55768E+00, & - &-0.55754E+00,-0.55740E+00,-0.55727E+00,-0.55714E+00,-0.55700E+00, & - &-0.55687E+00,-0.55674E+00,-0.55661E+00,-0.55648E+00,-0.55635E+00/ - - DATA (BNC13M(I),I=301,400)/ & - &-0.55622E+00,-0.55609E+00,-0.55596E+00,-0.55583E+00,-0.55571E+00, & - &-0.55558E+00,-0.55546E+00,-0.55533E+00,-0.55521E+00,-0.55509E+00, & - &-0.55496E+00,-0.55484E+00,-0.55472E+00,-0.55460E+00,-0.55448E+00, & - &-0.55436E+00,-0.55425E+00,-0.55413E+00,-0.55401E+00,-0.55390E+00, & - &-0.55378E+00,-0.55367E+00,-0.55355E+00,-0.55344E+00,-0.55333E+00, & - &-0.55322E+00,-0.55311E+00,-0.55300E+00,-0.55289E+00,-0.55278E+00, & - &-0.55267E+00,-0.55256E+00,-0.55246E+00,-0.55235E+00,-0.55224E+00, & - &-0.55214E+00,-0.55204E+00,-0.55193E+00,-0.55183E+00,-0.55173E+00, & - &-0.55163E+00,-0.55153E+00,-0.55143E+00,-0.55133E+00,-0.55123E+00, & - &-0.55113E+00,-0.55103E+00,-0.55094E+00,-0.55084E+00,-0.55075E+00, & - &-0.55065E+00,-0.55056E+00,-0.55047E+00,-0.55037E+00,-0.55028E+00, & - &-0.55019E+00,-0.55010E+00,-0.55001E+00,-0.54992E+00,-0.54983E+00, & - &-0.54975E+00,-0.54966E+00,-0.54957E+00,-0.54949E+00,-0.54940E+00, & - &-0.54932E+00,-0.54924E+00,-0.54915E+00,-0.54907E+00,-0.54899E+00, & - &-0.54891E+00,-0.54883E+00,-0.54875E+00,-0.54867E+00,-0.54859E+00, & - &-0.54851E+00,-0.54844E+00,-0.54836E+00,-0.54828E+00,-0.54821E+00, & - &-0.54813E+00,-0.54806E+00,-0.54799E+00,-0.54792E+00,-0.54784E+00, & - &-0.54777E+00,-0.54770E+00,-0.54763E+00,-0.54756E+00,-0.54749E+00, & - &-0.54743E+00,-0.54736E+00,-0.54729E+00,-0.54723E+00,-0.54716E+00, & - &-0.54710E+00,-0.54703E+00,-0.54697E+00,-0.54691E+00,-0.54684E+00/ - - DATA (BNC13M(I),I=401,500)/ & - &-0.54678E+00,-0.54672E+00,-0.54666E+00,-0.54660E+00,-0.54654E+00, & - &-0.54648E+00,-0.54643E+00,-0.54637E+00,-0.54631E+00,-0.54626E+00, & - &-0.54620E+00,-0.54615E+00,-0.54609E+00,-0.54604E+00,-0.54599E+00, & - &-0.54593E+00,-0.54588E+00,-0.54583E+00,-0.54578E+00,-0.54573E+00, & - &-0.54568E+00,-0.54563E+00,-0.54558E+00,-0.54554E+00,-0.54549E+00, & - &-0.54544E+00,-0.54540E+00,-0.54535E+00,-0.54531E+00,-0.54527E+00, & - &-0.54522E+00,-0.54518E+00,-0.54514E+00,-0.54510E+00,-0.54506E+00, & - &-0.54502E+00,-0.54498E+00,-0.54494E+00,-0.54490E+00,-0.54486E+00, & - &-0.54482E+00,-0.54479E+00,-0.54475E+00,-0.54471E+00,-0.54468E+00, & - &-0.54465E+00,-0.54461E+00,-0.54458E+00,-0.54455E+00,-0.54451E+00, & - &-0.54448E+00,-0.54445E+00,-0.54442E+00,-0.54439E+00,-0.54436E+00, & - &-0.54433E+00,-0.54430E+00,-0.54428E+00,-0.54425E+00,-0.54422E+00, & - &-0.54420E+00,-0.54417E+00,-0.54415E+00,-0.54412E+00,-0.54410E+00, & - &-0.54408E+00,-0.54405E+00,-0.54403E+00,-0.54401E+00,-0.54399E+00, & - &-0.54397E+00,-0.54395E+00,-0.54393E+00,-0.54391E+00,-0.54389E+00, & - &-0.54388E+00,-0.54386E+00,-0.54384E+00,-0.54383E+00,-0.54381E+00, & - &-0.54380E+00,-0.54378E+00,-0.54377E+00,-0.54376E+00,-0.54374E+00, & - &-0.54373E+00,-0.54372E+00,-0.54371E+00,-0.54370E+00,-0.54369E+00, & - &-0.54368E+00,-0.54367E+00,-0.54366E+00,-0.54365E+00,-0.54365E+00, & - &-0.54364E+00,-0.54363E+00,-0.54363E+00,-0.54362E+00,-0.54362E+00/ - - DATA (BNC13M(I),I=501,600)/ & - &-0.54361E+00,-0.54361E+00,-0.54361E+00,-0.54361E+00,-0.54360E+00, & - &-0.54360E+00,-0.54360E+00,-0.54360E+00,-0.54360E+00,-0.54360E+00, & - &-0.54360E+00,-0.54360E+00,-0.54361E+00,-0.54361E+00,-0.54361E+00, & - &-0.54361E+00,-0.54362E+00,-0.54362E+00,-0.54363E+00,-0.54363E+00, & - &-0.54364E+00,-0.54365E+00,-0.54365E+00,-0.54366E+00,-0.54367E+00, & - &-0.54368E+00,-0.54369E+00,-0.54370E+00,-0.54371E+00,-0.54372E+00, & - &-0.54373E+00,-0.54374E+00,-0.54375E+00,-0.54376E+00,-0.54378E+00, & - &-0.54379E+00,-0.54380E+00,-0.54382E+00,-0.54383E+00,-0.54385E+00, & - &-0.54387E+00,-0.54388E+00,-0.54390E+00,-0.54392E+00,-0.54393E+00, & - &-0.54395E+00,-0.54397E+00,-0.54399E+00,-0.54401E+00,-0.54403E+00, & - &-0.54405E+00,-0.54407E+00,-0.54409E+00,-0.54412E+00,-0.54414E+00, & - &-0.54416E+00,-0.54418E+00,-0.54421E+00,-0.54423E+00,-0.54426E+00, & - &-0.54428E+00,-0.54431E+00,-0.54434E+00,-0.54436E+00,-0.54439E+00, & - &-0.54442E+00,-0.54445E+00,-0.54447E+00,-0.54450E+00,-0.54453E+00, & - &-0.54456E+00,-0.54459E+00,-0.54462E+00,-0.54466E+00,-0.54469E+00, & - &-0.54472E+00,-0.54475E+00,-0.54479E+00,-0.54482E+00,-0.54485E+00, & - &-0.54489E+00,-0.54492E+00,-0.54496E+00,-0.54499E+00,-0.54503E+00, & - &-0.54507E+00,-0.54510E+00,-0.54514E+00,-0.54518E+00,-0.54522E+00, & - &-0.54526E+00,-0.54530E+00,-0.54534E+00,-0.54538E+00,-0.54542E+00, & - &-0.54546E+00,-0.54550E+00,-0.54554E+00,-0.54558E+00,-0.54563E+00/ - - DATA (BNC13M(I),I=601,700)/ & - &-0.54612E+00,-0.54661E+00,-0.54715E+00,-0.54773E+00,-0.54835E+00, & - &-0.54901E+00,-0.54971E+00,-0.55044E+00,-0.55121E+00,-0.55202E+00, & - &-0.55287E+00,-0.55374E+00,-0.55466E+00,-0.55560E+00,-0.55658E+00, & - &-0.55760E+00,-0.55864E+00,-0.55972E+00,-0.56083E+00,-0.56196E+00, & - &-0.56313E+00,-0.56433E+00,-0.56556E+00,-0.56681E+00,-0.56809E+00, & - &-0.56940E+00,-0.57074E+00,-0.57210E+00,-0.57349E+00,-0.57491E+00, & - &-0.57635E+00,-0.57782E+00,-0.57931E+00,-0.58082E+00,-0.58236E+00, & - &-0.58392E+00,-0.58551E+00,-0.58712E+00,-0.58875E+00,-0.59040E+00, & - &-0.59207E+00,-0.59377E+00,-0.59549E+00,-0.59722E+00,-0.59898E+00, & - &-0.60076E+00,-0.60256E+00,-0.60438E+00,-0.60621E+00,-0.60807E+00, & - &-0.60994E+00,-0.61183E+00,-0.61375E+00,-0.61567E+00,-0.61762E+00, & - &-0.61959E+00,-0.62157E+00,-0.62357E+00,-0.62558E+00,-0.62761E+00, & - &-0.62966E+00,-0.63173E+00,-0.63381E+00,-0.63590E+00,-0.63801E+00, & - &-0.64014E+00,-0.64228E+00,-0.64444E+00,-0.64661E+00,-0.64879E+00, & - &-0.65099E+00,-0.65321E+00,-0.65544E+00,-0.65768E+00,-0.65993E+00, & - &-0.66220E+00,-0.66448E+00,-0.66678E+00,-0.66909E+00,-0.67141E+00, & - &-0.67374E+00,-0.67609E+00,-0.67845E+00,-0.68082E+00,-0.68320E+00, & - &-0.68559E+00,-0.68800E+00,-0.69042E+00,-0.69285E+00,-0.69529E+00, & - &-0.69774E+00,-0.70021E+00,-0.70268E+00,-0.70516E+00,-0.70766E+00, & - &-0.71017E+00,-0.71268E+00,-0.71521E+00,-0.71775E+00,-0.72030E+00/ - - DATA (BNC13M(I),I=701,741)/ & - &-0.72285E+00,-0.72542E+00,-0.72800E+00,-0.73059E+00,-0.73318E+00, & - &-0.73579E+00,-0.73840E+00,-0.74103E+00,-0.74366E+00,-0.74631E+00, & - &-0.74896E+00,-0.75162E+00,-0.75429E+00,-0.75697E+00,-0.75965E+00, & - &-0.76235E+00,-0.76505E+00,-0.76777E+00,-0.77049E+00,-0.77322E+00, & - &-0.77595E+00,-0.77870E+00,-0.78145E+00,-0.78421E+00,-0.78698E+00, & - &-0.78976E+00,-0.79254E+00,-0.79534E+00,-0.79814E+00,-0.80094E+00, & - &-0.80376E+00,-0.80658E+00,-0.80941E+00,-0.81224E+00,-0.81509E+00, & - &-0.81794E+00,-0.82079E+00,-0.82366E+00,-0.82653E+00,-0.82940E+00, & - &-0.83229E+00 & - & / - ENDBLOCKDATA KMCF248 diff --git a/src/arome/chem/internals/data_kmcf273a.F b/src/arome/chem/internals/data_kmcf273a.F deleted file mode 100644 index e7a542040389a1a3433fc80d6d543638640f2487..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/data_kmcf273a.F +++ /dev/null @@ -1,2218 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/data_kmcf273a.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:30 $ -!----------------------------------------------------------------- - -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA KMCF273A -! *** CONTAINS THE DATA FOR KUSSIK-MEISNER BINARY COEFFICIENT ARRAYS -! NEEDED IN SUBROUTINE KM -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA KMCF273 -! - IMPLICIT NONE -! -! *** Common block definition -! - INTEGER :: I - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M -! - COMMON /KMC273/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! -! *** NaCl -! - DATA (BNC01M(I),I=1,100)/ & - &-0.46407E-01,-0.96708E-01,-0.11948E+00,-0.13432E+00,-0.14508E+00, & - &-0.15330E+00,-0.15979E+00,-0.16500E+00,-0.16923E+00,-0.17269E+00, & - &-0.17553E+00,-0.17785E+00,-0.17973E+00,-0.18124E+00,-0.18244E+00, & - &-0.18336E+00,-0.18404E+00,-0.18450E+00,-0.18477E+00,-0.18488E+00, & - &-0.18483E+00,-0.18465E+00,-0.18435E+00,-0.18393E+00,-0.18342E+00, & - &-0.18282E+00,-0.18213E+00,-0.18137E+00,-0.18054E+00,-0.17965E+00, & - &-0.17870E+00,-0.17770E+00,-0.17665E+00,-0.17556E+00,-0.17443E+00, & - &-0.17327E+00,-0.17207E+00,-0.17084E+00,-0.16958E+00,-0.16830E+00, & - &-0.16700E+00,-0.16568E+00,-0.16434E+00,-0.16298E+00,-0.16161E+00, & - &-0.16022E+00,-0.15882E+00,-0.15741E+00,-0.15599E+00,-0.15455E+00, & - &-0.15311E+00,-0.15166E+00,-0.15021E+00,-0.14875E+00,-0.14728E+00, & - &-0.14580E+00,-0.14432E+00,-0.14283E+00,-0.14134E+00,-0.13984E+00, & - &-0.13833E+00,-0.13682E+00,-0.13530E+00,-0.13378E+00,-0.13224E+00, & - &-0.13071E+00,-0.12916E+00,-0.12761E+00,-0.12605E+00,-0.12448E+00, & - &-0.12290E+00,-0.12131E+00,-0.11971E+00,-0.11810E+00,-0.11649E+00, & - &-0.11486E+00,-0.11322E+00,-0.11156E+00,-0.10990E+00,-0.10822E+00, & - &-0.10653E+00,-0.10483E+00,-0.10311E+00,-0.10138E+00,-0.99639E-01, & - &-0.97882E-01,-0.96110E-01,-0.94324E-01,-0.92525E-01,-0.90711E-01, & - &-0.88883E-01,-0.87042E-01,-0.85186E-01,-0.83317E-01,-0.81435E-01, & - &-0.79539E-01,-0.77630E-01,-0.75709E-01,-0.73776E-01,-0.71830E-01/ - - DATA (BNC01M(I),I=101,200)/ & - &-0.69873E-01,-0.67905E-01,-0.65926E-01,-0.63937E-01,-0.61937E-01, & - &-0.59929E-01,-0.57911E-01,-0.55885E-01,-0.53851E-01,-0.51809E-01, & - &-0.49760E-01,-0.47705E-01,-0.45643E-01,-0.43575E-01,-0.41502E-01, & - &-0.39424E-01,-0.37342E-01,-0.35255E-01,-0.33165E-01,-0.31071E-01, & - &-0.28975E-01,-0.26875E-01,-0.24774E-01,-0.22670E-01,-0.20565E-01, & - &-0.18458E-01,-0.16350E-01,-0.14240E-01,-0.12131E-01,-0.10020E-01, & - &-0.79100E-02,-0.57993E-02,-0.36888E-02,-0.15785E-02, 0.53139E-03, & - & 0.26407E-02, 0.47494E-02, 0.68572E-02, 0.89641E-02, 0.11070E-01, & - & 0.13175E-01, 0.15278E-01, 0.17380E-01, 0.19481E-01, 0.21580E-01, & - & 0.23678E-01, 0.25774E-01, 0.27869E-01, 0.29962E-01, 0.32052E-01, & - & 0.34142E-01, 0.36229E-01, 0.38314E-01, 0.40398E-01, 0.42479E-01, & - & 0.44558E-01, 0.46636E-01, 0.48711E-01, 0.50784E-01, 0.52855E-01, & - & 0.54924E-01, 0.56990E-01, 0.59054E-01, 0.61116E-01, 0.63176E-01, & - & 0.65233E-01, 0.67288E-01, 0.69341E-01, 0.71391E-01, 0.73439E-01, & - & 0.75485E-01, 0.77528E-01, 0.79569E-01, 0.81607E-01, 0.83642E-01, & - & 0.85675E-01, 0.87706E-01, 0.89734E-01, 0.91760E-01, 0.93783E-01, & - & 0.95803E-01, 0.97821E-01, 0.99836E-01, 0.10185E+00, 0.10386E+00, & - & 0.10587E+00, 0.10787E+00, 0.10987E+00, 0.11187E+00, 0.11387E+00, & - & 0.11586E+00, 0.11785E+00, 0.11984E+00, 0.12183E+00, 0.12381E+00, & - & 0.12579E+00, 0.12777E+00, 0.12974E+00, 0.13172E+00, 0.13369E+00/ - - DATA (BNC01M(I),I=201,300)/ & - & 0.13565E+00, 0.13762E+00, 0.13958E+00, 0.14154E+00, 0.14349E+00, & - & 0.14544E+00, 0.14739E+00, 0.14934E+00, 0.15129E+00, 0.15323E+00, & - & 0.15517E+00, 0.15710E+00, 0.15904E+00, 0.16097E+00, 0.16289E+00, & - & 0.16482E+00, 0.16674E+00, 0.16866E+00, 0.17057E+00, 0.17249E+00, & - & 0.17440E+00, 0.17631E+00, 0.17821E+00, 0.18011E+00, 0.18201E+00, & - & 0.18391E+00, 0.18580E+00, 0.18769E+00, 0.18958E+00, 0.19146E+00, & - & 0.19334E+00, 0.19522E+00, 0.19710E+00, 0.19897E+00, 0.20084E+00, & - & 0.20271E+00, 0.20458E+00, 0.20644E+00, 0.20830E+00, 0.21015E+00, & - & 0.21201E+00, 0.21386E+00, 0.21570E+00, 0.21755E+00, 0.21939E+00, & - & 0.22123E+00, 0.22307E+00, 0.22490E+00, 0.22673E+00, 0.22856E+00, & - & 0.23038E+00, 0.23221E+00, 0.23403E+00, 0.23584E+00, 0.23766E+00, & - & 0.23947E+00, 0.24127E+00, 0.24308E+00, 0.24488E+00, 0.24668E+00, & - & 0.24848E+00, 0.25027E+00, 0.25206E+00, 0.25385E+00, 0.25564E+00, & - & 0.25742E+00, 0.25920E+00, 0.26098E+00, 0.26275E+00, 0.26452E+00, & - & 0.26629E+00, 0.26806E+00, 0.26982E+00, 0.27158E+00, 0.27334E+00, & - & 0.27509E+00, 0.27684E+00, 0.27859E+00, 0.28034E+00, 0.28208E+00, & - & 0.28383E+00, 0.28556E+00, 0.28730E+00, 0.28903E+00, 0.29076E+00, & - & 0.29249E+00, 0.29422E+00, 0.29594E+00, 0.29766E+00, 0.29937E+00, & - & 0.30109E+00, 0.30280E+00, 0.30451E+00, 0.30621E+00, 0.30792E+00, & - & 0.30962E+00, 0.31131E+00, 0.31301E+00, 0.31470E+00, 0.31639E+00/ - - DATA (BNC01M(I),I=301,400)/ & - & 0.31808E+00, 0.31976E+00, 0.32144E+00, 0.32312E+00, 0.32480E+00, & - & 0.32647E+00, 0.32815E+00, 0.32981E+00, 0.33148E+00, 0.33314E+00, & - & 0.33480E+00, 0.33646E+00, 0.33812E+00, 0.33977E+00, 0.34142E+00, & - & 0.34307E+00, 0.34471E+00, 0.34636E+00, 0.34800E+00, 0.34963E+00, & - & 0.35127E+00, 0.35290E+00, 0.35453E+00, 0.35616E+00, 0.35778E+00, & - & 0.35940E+00, 0.36102E+00, 0.36264E+00, 0.36426E+00, 0.36587E+00, & - & 0.36748E+00, 0.36908E+00, 0.37069E+00, 0.37229E+00, 0.37389E+00, & - & 0.37549E+00, 0.37708E+00, 0.37867E+00, 0.38026E+00, 0.38185E+00, & - & 0.38343E+00, 0.38502E+00, 0.38659E+00, 0.38817E+00, 0.38975E+00, & - & 0.39132E+00, 0.39289E+00, 0.39446E+00, 0.39602E+00, 0.39758E+00, & - & 0.39914E+00, 0.40070E+00, 0.40226E+00, 0.40381E+00, 0.40536E+00, & - & 0.40691E+00, 0.40845E+00, 0.41000E+00, 0.41154E+00, 0.41308E+00, & - & 0.41461E+00, 0.41615E+00, 0.41768E+00, 0.41921E+00, 0.42073E+00, & - & 0.42226E+00, 0.42378E+00, 0.42530E+00, 0.42682E+00, 0.42833E+00, & - & 0.42985E+00, 0.43136E+00, 0.43286E+00, 0.43437E+00, 0.43587E+00, & - & 0.43737E+00, 0.43887E+00, 0.44037E+00, 0.44187E+00, 0.44336E+00, & - & 0.44485E+00, 0.44633E+00, 0.44782E+00, 0.44930E+00, 0.45078E+00, & - & 0.45226E+00, 0.45374E+00, 0.45521E+00, 0.45669E+00, 0.45815E+00, & - & 0.45962E+00, 0.46109E+00, 0.46255E+00, 0.46401E+00, 0.46547E+00, & - & 0.46693E+00, 0.46838E+00, 0.46983E+00, 0.47128E+00, 0.47273E+00/ - - DATA (BNC01M(I),I=401,500)/ & - & 0.47418E+00, 0.47562E+00, 0.47706E+00, 0.47850E+00, 0.47994E+00, & - & 0.48137E+00, 0.48280E+00, 0.48423E+00, 0.48566E+00, 0.48709E+00, & - & 0.48851E+00, 0.48993E+00, 0.49135E+00, 0.49277E+00, 0.49419E+00, & - & 0.49560E+00, 0.49701E+00, 0.49842E+00, 0.49983E+00, 0.50123E+00, & - & 0.50264E+00, 0.50404E+00, 0.50544E+00, 0.50683E+00, 0.50823E+00, & - & 0.50962E+00, 0.51101E+00, 0.51240E+00, 0.51379E+00, 0.51517E+00, & - & 0.51656E+00, 0.51794E+00, 0.51931E+00, 0.52069E+00, 0.52207E+00, & - & 0.52344E+00, 0.52481E+00, 0.52618E+00, 0.52754E+00, 0.52891E+00, & - & 0.53027E+00, 0.53163E+00, 0.53299E+00, 0.53435E+00, 0.53570E+00, & - & 0.53705E+00, 0.53840E+00, 0.53975E+00, 0.54110E+00, 0.54245E+00, & - & 0.54379E+00, 0.54513E+00, 0.54647E+00, 0.54781E+00, 0.54914E+00, & - & 0.55047E+00, 0.55180E+00, 0.55313E+00, 0.55446E+00, 0.55579E+00, & - & 0.55711E+00, 0.55843E+00, 0.55975E+00, 0.56107E+00, 0.56239E+00, & - & 0.56370E+00, 0.56501E+00, 0.56632E+00, 0.56763E+00, 0.56894E+00, & - & 0.57025E+00, 0.57155E+00, 0.57285E+00, 0.57415E+00, 0.57545E+00, & - & 0.57674E+00, 0.57804E+00, 0.57933E+00, 0.58062E+00, 0.58191E+00, & - & 0.58319E+00, 0.58448E+00, 0.58576E+00, 0.58704E+00, 0.58832E+00, & - & 0.58960E+00, 0.59088E+00, 0.59215E+00, 0.59342E+00, 0.59469E+00, & - & 0.59596E+00, 0.59723E+00, 0.59849E+00, 0.59976E+00, 0.60102E+00, & - & 0.60228E+00, 0.60354E+00, 0.60479E+00, 0.60605E+00, 0.60730E+00/ - - DATA (BNC01M(I),I=501,600)/ & - & 0.60855E+00, 0.60980E+00, 0.61105E+00, 0.61230E+00, 0.61354E+00, & - & 0.61478E+00, 0.61602E+00, 0.61726E+00, 0.61850E+00, 0.61974E+00, & - & 0.62097E+00, 0.62220E+00, 0.62343E+00, 0.62466E+00, 0.62589E+00, & - & 0.62711E+00, 0.62834E+00, 0.62956E+00, 0.63078E+00, 0.63200E+00, & - & 0.63322E+00, 0.63443E+00, 0.63565E+00, 0.63686E+00, 0.63807E+00, & - & 0.63928E+00, 0.64049E+00, 0.64169E+00, 0.64290E+00, 0.64410E+00, & - & 0.64530E+00, 0.64650E+00, 0.64770E+00, 0.64889E+00, 0.65009E+00, & - & 0.65128E+00, 0.65247E+00, 0.65366E+00, 0.65485E+00, 0.65603E+00, & - & 0.65722E+00, 0.65840E+00, 0.65958E+00, 0.66076E+00, 0.66194E+00, & - & 0.66312E+00, 0.66429E+00, 0.66547E+00, 0.66664E+00, 0.66781E+00, & - & 0.66898E+00, 0.67015E+00, 0.67131E+00, 0.67248E+00, 0.67364E+00, & - & 0.67480E+00, 0.67596E+00, 0.67712E+00, 0.67828E+00, 0.67943E+00, & - & 0.68058E+00, 0.68174E+00, 0.68289E+00, 0.68404E+00, 0.68518E+00, & - & 0.68633E+00, 0.68748E+00, 0.68862E+00, 0.68976E+00, 0.69090E+00, & - & 0.69204E+00, 0.69318E+00, 0.69431E+00, 0.69545E+00, 0.69658E+00, & - & 0.69771E+00, 0.69884E+00, 0.69997E+00, 0.70109E+00, 0.70222E+00, & - & 0.70334E+00, 0.70447E+00, 0.70559E+00, 0.70671E+00, 0.70782E+00, & - & 0.70894E+00, 0.71006E+00, 0.71117E+00, 0.71228E+00, 0.71339E+00, & - & 0.71450E+00, 0.71561E+00, 0.71672E+00, 0.71782E+00, 0.71893E+00, & - & 0.72003E+00, 0.72113E+00, 0.72223E+00, 0.72333E+00, 0.72442E+00/ - - DATA (BNC01M(I),I=601,700)/ & - & 0.73618E+00, 0.74693E+00, 0.75754E+00, 0.76801E+00, 0.77836E+00, & - & 0.78859E+00, 0.79869E+00, 0.80867E+00, 0.81853E+00, 0.82827E+00, & - & 0.83790E+00, 0.84742E+00, 0.85683E+00, 0.86613E+00, 0.87532E+00, & - & 0.88441E+00, 0.89340E+00, 0.90229E+00, 0.91108E+00, 0.91978E+00, & - & 0.92838E+00, 0.93688E+00, 0.94530E+00, 0.95363E+00, 0.96187E+00, & - & 0.97002E+00, 0.97808E+00, 0.98607E+00, 0.99397E+00, 0.10018E+01, & - & 0.10095E+01, 0.10172E+01, 0.10248E+01, 0.10323E+01, 0.10397E+01, & - & 0.10471E+01, 0.10544E+01, 0.10616E+01, 0.10688E+01, 0.10758E+01, & - & 0.10828E+01, 0.10898E+01, 0.10967E+01, 0.11035E+01, 0.11102E+01, & - & 0.11169E+01, 0.11236E+01, 0.11301E+01, 0.11366E+01, 0.11431E+01, & - & 0.11495E+01, 0.11558E+01, 0.11621E+01, 0.11683E+01, 0.11745E+01, & - & 0.11806E+01, 0.11867E+01, 0.11927E+01, 0.11986E+01, 0.12045E+01, & - & 0.12104E+01, 0.12162E+01, 0.12220E+01, 0.12277E+01, 0.12333E+01, & - & 0.12389E+01, 0.12445E+01, 0.12500E+01, 0.12555E+01, 0.12609E+01, & - & 0.12663E+01, 0.12717E+01, 0.12770E+01, 0.12822E+01, 0.12874E+01, & - & 0.12926E+01, 0.12977E+01, 0.13028E+01, 0.13079E+01, 0.13129E+01, & - & 0.13179E+01, 0.13228E+01, 0.13277E+01, 0.13325E+01, 0.13374E+01, & - & 0.13421E+01, 0.13469E+01, 0.13516E+01, 0.13563E+01, 0.13609E+01, & - & 0.13655E+01, 0.13701E+01, 0.13746E+01, 0.13792E+01, 0.13836E+01, & - & 0.13881E+01, 0.13925E+01, 0.13968E+01, 0.14012E+01, 0.14055E+01/ - - DATA (BNC01M(I),I=701,741)/ & - & 0.14098E+01, 0.14140E+01, 0.14183E+01, 0.14224E+01, 0.14266E+01, & - & 0.14307E+01, 0.14348E+01, 0.14389E+01, 0.14430E+01, 0.14470E+01, & - & 0.14510E+01, 0.14549E+01, 0.14589E+01, 0.14628E+01, 0.14666E+01, & - & 0.14705E+01, 0.14743E+01, 0.14781E+01, 0.14819E+01, 0.14856E+01, & - & 0.14894E+01, 0.14931E+01, 0.14967E+01, 0.15004E+01, 0.15040E+01, & - & 0.15076E+01, 0.15112E+01, 0.15147E+01, 0.15183E+01, 0.15218E+01, & - & 0.15253E+01, 0.15287E+01, 0.15322E+01, 0.15356E+01, 0.15390E+01, & - & 0.15424E+01, 0.15457E+01, 0.15490E+01, 0.15524E+01, 0.15556E+01, & - & 0.15589E+01 & - & / -! -! *** Na2SO4 -! - DATA (BNC02M(I),I=1,100)/ & - &-0.95525E-01,-0.20796E+00,-0.26423E+00,-0.30406E+00,-0.33534E+00, & - &-0.36126E+00,-0.38348E+00,-0.40297E+00,-0.42035E+00,-0.43605E+00, & - &-0.45039E+00,-0.46358E+00,-0.47581E+00,-0.48722E+00,-0.49790E+00, & - &-0.50796E+00,-0.51746E+00,-0.52646E+00,-0.53502E+00,-0.54318E+00, & - &-0.55098E+00,-0.55845E+00,-0.56561E+00,-0.57250E+00,-0.57913E+00, & - &-0.58552E+00,-0.59170E+00,-0.59767E+00,-0.60345E+00,-0.60905E+00, & - &-0.61449E+00,-0.61976E+00,-0.62489E+00,-0.62989E+00,-0.63474E+00, & - &-0.63948E+00,-0.64410E+00,-0.64860E+00,-0.65300E+00,-0.65729E+00, & - &-0.66149E+00,-0.66560E+00,-0.66962E+00,-0.67356E+00,-0.67741E+00, & - &-0.68119E+00,-0.68489E+00,-0.68852E+00,-0.69209E+00,-0.69559E+00, & - &-0.69902E+00,-0.70240E+00,-0.70571E+00,-0.70897E+00,-0.71218E+00, & - &-0.71534E+00,-0.71844E+00,-0.72149E+00,-0.72450E+00,-0.72747E+00, & - &-0.73039E+00,-0.73327E+00,-0.73610E+00,-0.73890E+00,-0.74166E+00, & - &-0.74438E+00,-0.74707E+00,-0.74973E+00,-0.75235E+00,-0.75493E+00, & - &-0.75749E+00,-0.76002E+00,-0.76252E+00,-0.76499E+00,-0.76743E+00, & - &-0.76985E+00,-0.77224E+00,-0.77461E+00,-0.77695E+00,-0.77927E+00, & - &-0.78156E+00,-0.78384E+00,-0.78609E+00,-0.78833E+00,-0.79054E+00, & - &-0.79273E+00,-0.79491E+00,-0.79706E+00,-0.79920E+00,-0.80132E+00, & - &-0.80342E+00,-0.80551E+00,-0.80758E+00,-0.80963E+00,-0.81167E+00, & - &-0.81370E+00,-0.81570E+00,-0.81770E+00,-0.81968E+00,-0.82164E+00/ - - DATA (BNC02M(I),I=101,200)/ & - &-0.82360E+00,-0.82553E+00,-0.82746E+00,-0.82937E+00,-0.83127E+00, & - &-0.83316E+00,-0.83503E+00,-0.83689E+00,-0.83874E+00,-0.84058E+00, & - &-0.84241E+00,-0.84422E+00,-0.84602E+00,-0.84782E+00,-0.84960E+00, & - &-0.85137E+00,-0.85312E+00,-0.85487E+00,-0.85661E+00,-0.85834E+00, & - &-0.86005E+00,-0.86176E+00,-0.86346E+00,-0.86514E+00,-0.86682E+00, & - &-0.86849E+00,-0.87015E+00,-0.87180E+00,-0.87343E+00,-0.87506E+00, & - &-0.87668E+00,-0.87830E+00,-0.87990E+00,-0.88149E+00,-0.88308E+00, & - &-0.88466E+00,-0.88622E+00,-0.88779E+00,-0.88934E+00,-0.89088E+00, & - &-0.89242E+00,-0.89395E+00,-0.89547E+00,-0.89698E+00,-0.89848E+00, & - &-0.89998E+00,-0.90147E+00,-0.90295E+00,-0.90443E+00,-0.90590E+00, & - &-0.90736E+00,-0.90881E+00,-0.91026E+00,-0.91170E+00,-0.91313E+00, & - &-0.91456E+00,-0.91598E+00,-0.91740E+00,-0.91880E+00,-0.92020E+00, & - &-0.92160E+00,-0.92299E+00,-0.92437E+00,-0.92575E+00,-0.92712E+00, & - &-0.92848E+00,-0.92984E+00,-0.93120E+00,-0.93254E+00,-0.93389E+00, & - &-0.93522E+00,-0.93655E+00,-0.93788E+00,-0.93920E+00,-0.94052E+00, & - &-0.94182E+00,-0.94313E+00,-0.94443E+00,-0.94572E+00,-0.94701E+00, & - &-0.94830E+00,-0.94958E+00,-0.95085E+00,-0.95212E+00,-0.95338E+00, & - &-0.95464E+00,-0.95590E+00,-0.95715E+00,-0.95840E+00,-0.95964E+00, & - &-0.96087E+00,-0.96211E+00,-0.96333E+00,-0.96456E+00,-0.96578E+00, & - &-0.96699E+00,-0.96820E+00,-0.96941E+00,-0.97061E+00,-0.97181E+00/ - - DATA (BNC02M(I),I=201,300)/ & - &-0.97300E+00,-0.97419E+00,-0.97538E+00,-0.97656E+00,-0.97774E+00, & - &-0.97892E+00,-0.98009E+00,-0.98125E+00,-0.98242E+00,-0.98358E+00, & - &-0.98473E+00,-0.98588E+00,-0.98703E+00,-0.98817E+00,-0.98932E+00, & - &-0.99045E+00,-0.99159E+00,-0.99272E+00,-0.99384E+00,-0.99497E+00, & - &-0.99609E+00,-0.99720E+00,-0.99832E+00,-0.99943E+00,-0.10005E+01, & - &-0.10016E+01,-0.10027E+01,-0.10038E+01,-0.10049E+01,-0.10060E+01, & - &-0.10071E+01,-0.10082E+01,-0.10093E+01,-0.10103E+01,-0.10114E+01, & - &-0.10125E+01,-0.10136E+01,-0.10146E+01,-0.10157E+01,-0.10168E+01, & - &-0.10178E+01,-0.10189E+01,-0.10199E+01,-0.10210E+01,-0.10220E+01, & - &-0.10231E+01,-0.10241E+01,-0.10251E+01,-0.10262E+01,-0.10272E+01, & - &-0.10282E+01,-0.10293E+01,-0.10303E+01,-0.10313E+01,-0.10323E+01, & - &-0.10333E+01,-0.10344E+01,-0.10354E+01,-0.10364E+01,-0.10374E+01, & - &-0.10384E+01,-0.10394E+01,-0.10404E+01,-0.10414E+01,-0.10424E+01, & - &-0.10434E+01,-0.10444E+01,-0.10453E+01,-0.10463E+01,-0.10473E+01, & - &-0.10483E+01,-0.10493E+01,-0.10502E+01,-0.10512E+01,-0.10522E+01, & - &-0.10532E+01,-0.10541E+01,-0.10551E+01,-0.10560E+01,-0.10570E+01, & - &-0.10580E+01,-0.10589E+01,-0.10599E+01,-0.10608E+01,-0.10618E+01, & - &-0.10627E+01,-0.10637E+01,-0.10646E+01,-0.10655E+01,-0.10665E+01, & - &-0.10674E+01,-0.10684E+01,-0.10693E+01,-0.10702E+01,-0.10711E+01, & - &-0.10721E+01,-0.10730E+01,-0.10739E+01,-0.10748E+01,-0.10758E+01/ - - DATA (BNC02M(I),I=301,400)/ & - &-0.10767E+01,-0.10776E+01,-0.10785E+01,-0.10794E+01,-0.10803E+01, & - &-0.10812E+01,-0.10821E+01,-0.10830E+01,-0.10839E+01,-0.10848E+01, & - &-0.10857E+01,-0.10866E+01,-0.10875E+01,-0.10884E+01,-0.10893E+01, & - &-0.10902E+01,-0.10911E+01,-0.10920E+01,-0.10929E+01,-0.10938E+01, & - &-0.10946E+01,-0.10955E+01,-0.10964E+01,-0.10973E+01,-0.10981E+01, & - &-0.10990E+01,-0.10999E+01,-0.11008E+01,-0.11016E+01,-0.11025E+01, & - &-0.11034E+01,-0.11042E+01,-0.11051E+01,-0.11059E+01,-0.11068E+01, & - &-0.11077E+01,-0.11085E+01,-0.11094E+01,-0.11102E+01,-0.11111E+01, & - &-0.11119E+01,-0.11128E+01,-0.11136E+01,-0.11145E+01,-0.11153E+01, & - &-0.11161E+01,-0.11170E+01,-0.11178E+01,-0.11187E+01,-0.11195E+01, & - &-0.11203E+01,-0.11212E+01,-0.11220E+01,-0.11228E+01,-0.11237E+01, & - &-0.11245E+01,-0.11253E+01,-0.11261E+01,-0.11270E+01,-0.11278E+01, & - &-0.11286E+01,-0.11294E+01,-0.11302E+01,-0.11311E+01,-0.11319E+01, & - &-0.11327E+01,-0.11335E+01,-0.11343E+01,-0.11351E+01,-0.11359E+01, & - &-0.11367E+01,-0.11376E+01,-0.11384E+01,-0.11392E+01,-0.11400E+01, & - &-0.11408E+01,-0.11416E+01,-0.11424E+01,-0.11432E+01,-0.11440E+01, & - &-0.11448E+01,-0.11456E+01,-0.11463E+01,-0.11471E+01,-0.11479E+01, & - &-0.11487E+01,-0.11495E+01,-0.11503E+01,-0.11511E+01,-0.11519E+01, & - &-0.11526E+01,-0.11534E+01,-0.11542E+01,-0.11550E+01,-0.11558E+01, & - &-0.11565E+01,-0.11573E+01,-0.11581E+01,-0.11589E+01,-0.11596E+01/ - - DATA (BNC02M(I),I=401,500)/ & - &-0.11604E+01,-0.11612E+01,-0.11620E+01,-0.11627E+01,-0.11635E+01, & - &-0.11643E+01,-0.11650E+01,-0.11658E+01,-0.11666E+01,-0.11673E+01, & - &-0.11681E+01,-0.11688E+01,-0.11696E+01,-0.11704E+01,-0.11711E+01, & - &-0.11719E+01,-0.11726E+01,-0.11734E+01,-0.11741E+01,-0.11749E+01, & - &-0.11756E+01,-0.11764E+01,-0.11771E+01,-0.11779E+01,-0.11786E+01, & - &-0.11794E+01,-0.11801E+01,-0.11809E+01,-0.11816E+01,-0.11824E+01, & - &-0.11831E+01,-0.11838E+01,-0.11846E+01,-0.11853E+01,-0.11860E+01, & - &-0.11868E+01,-0.11875E+01,-0.11883E+01,-0.11890E+01,-0.11897E+01, & - &-0.11905E+01,-0.11912E+01,-0.11919E+01,-0.11926E+01,-0.11934E+01, & - &-0.11941E+01,-0.11948E+01,-0.11955E+01,-0.11963E+01,-0.11970E+01, & - &-0.11977E+01,-0.11984E+01,-0.11992E+01,-0.11999E+01,-0.12006E+01, & - &-0.12013E+01,-0.12020E+01,-0.12028E+01,-0.12035E+01,-0.12042E+01, & - &-0.12049E+01,-0.12056E+01,-0.12063E+01,-0.12070E+01,-0.12077E+01, & - &-0.12085E+01,-0.12092E+01,-0.12099E+01,-0.12106E+01,-0.12113E+01, & - &-0.12120E+01,-0.12127E+01,-0.12134E+01,-0.12141E+01,-0.12148E+01, & - &-0.12155E+01,-0.12162E+01,-0.12169E+01,-0.12176E+01,-0.12183E+01, & - &-0.12190E+01,-0.12197E+01,-0.12204E+01,-0.12211E+01,-0.12218E+01, & - &-0.12225E+01,-0.12232E+01,-0.12239E+01,-0.12246E+01,-0.12252E+01, & - &-0.12259E+01,-0.12266E+01,-0.12273E+01,-0.12280E+01,-0.12287E+01, & - &-0.12294E+01,-0.12301E+01,-0.12307E+01,-0.12314E+01,-0.12321E+01/ - - DATA (BNC02M(I),I=501,600)/ & - &-0.12328E+01,-0.12335E+01,-0.12341E+01,-0.12348E+01,-0.12355E+01, & - &-0.12362E+01,-0.12369E+01,-0.12375E+01,-0.12382E+01,-0.12389E+01, & - &-0.12396E+01,-0.12402E+01,-0.12409E+01,-0.12416E+01,-0.12423E+01, & - &-0.12429E+01,-0.12436E+01,-0.12443E+01,-0.12449E+01,-0.12456E+01, & - &-0.12463E+01,-0.12470E+01,-0.12476E+01,-0.12483E+01,-0.12489E+01, & - &-0.12496E+01,-0.12503E+01,-0.12509E+01,-0.12516E+01,-0.12523E+01, & - &-0.12529E+01,-0.12536E+01,-0.12542E+01,-0.12549E+01,-0.12556E+01, & - &-0.12562E+01,-0.12569E+01,-0.12575E+01,-0.12582E+01,-0.12589E+01, & - &-0.12595E+01,-0.12602E+01,-0.12608E+01,-0.12615E+01,-0.12621E+01, & - &-0.12628E+01,-0.12634E+01,-0.12641E+01,-0.12647E+01,-0.12654E+01, & - &-0.12660E+01,-0.12667E+01,-0.12673E+01,-0.12680E+01,-0.12686E+01, & - &-0.12693E+01,-0.12699E+01,-0.12706E+01,-0.12712E+01,-0.12718E+01, & - &-0.12725E+01,-0.12731E+01,-0.12738E+01,-0.12744E+01,-0.12750E+01, & - &-0.12757E+01,-0.12763E+01,-0.12770E+01,-0.12776E+01,-0.12782E+01, & - &-0.12789E+01,-0.12795E+01,-0.12802E+01,-0.12808E+01,-0.12814E+01, & - &-0.12821E+01,-0.12827E+01,-0.12833E+01,-0.12840E+01,-0.12846E+01, & - &-0.12852E+01,-0.12858E+01,-0.12865E+01,-0.12871E+01,-0.12877E+01, & - &-0.12884E+01,-0.12890E+01,-0.12896E+01,-0.12903E+01,-0.12909E+01, & - &-0.12915E+01,-0.12921E+01,-0.12928E+01,-0.12934E+01,-0.12940E+01, & - &-0.12946E+01,-0.12952E+01,-0.12959E+01,-0.12965E+01,-0.12971E+01/ - - DATA (BNC02M(I),I=601,700)/ & - &-0.13038E+01,-0.13099E+01,-0.13160E+01,-0.13220E+01,-0.13280E+01, & - &-0.13340E+01,-0.13399E+01,-0.13457E+01,-0.13515E+01,-0.13573E+01, & - &-0.13631E+01,-0.13688E+01,-0.13744E+01,-0.13801E+01,-0.13856E+01, & - &-0.13912E+01,-0.13967E+01,-0.14022E+01,-0.14077E+01,-0.14131E+01, & - &-0.14185E+01,-0.14239E+01,-0.14292E+01,-0.14345E+01,-0.14398E+01, & - &-0.14451E+01,-0.14503E+01,-0.14555E+01,-0.14607E+01,-0.14659E+01, & - &-0.14710E+01,-0.14761E+01,-0.14812E+01,-0.14862E+01,-0.14913E+01, & - &-0.14963E+01,-0.15013E+01,-0.15063E+01,-0.15112E+01,-0.15161E+01, & - &-0.15211E+01,-0.15260E+01,-0.15308E+01,-0.15357E+01,-0.15405E+01, & - &-0.15453E+01,-0.15501E+01,-0.15549E+01,-0.15597E+01,-0.15644E+01, & - &-0.15692E+01,-0.15739E+01,-0.15786E+01,-0.15833E+01,-0.15880E+01, & - &-0.15926E+01,-0.15972E+01,-0.16019E+01,-0.16065E+01,-0.16111E+01, & - &-0.16157E+01,-0.16202E+01,-0.16248E+01,-0.16293E+01,-0.16338E+01, & - &-0.16384E+01,-0.16429E+01,-0.16473E+01,-0.16518E+01,-0.16563E+01, & - &-0.16607E+01,-0.16652E+01,-0.16696E+01,-0.16740E+01,-0.16784E+01, & - &-0.16828E+01,-0.16872E+01,-0.16915E+01,-0.16959E+01,-0.17003E+01, & - &-0.17046E+01,-0.17089E+01,-0.17132E+01,-0.17175E+01,-0.17218E+01, & - &-0.17261E+01,-0.17304E+01,-0.17347E+01,-0.17389E+01,-0.17432E+01, & - &-0.17474E+01,-0.17516E+01,-0.17559E+01,-0.17601E+01,-0.17643E+01, & - &-0.17685E+01,-0.17726E+01,-0.17768E+01,-0.17810E+01,-0.17851E+01/ - - DATA (BNC02M(I),I=701,741)/ & - &-0.17893E+01,-0.17934E+01,-0.17976E+01,-0.18017E+01,-0.18058E+01, & - &-0.18099E+01,-0.18140E+01,-0.18181E+01,-0.18222E+01,-0.18263E+01, & - &-0.18304E+01,-0.18344E+01,-0.18385E+01,-0.18425E+01,-0.18466E+01, & - &-0.18506E+01,-0.18547E+01,-0.18587E+01,-0.18627E+01,-0.18667E+01, & - &-0.18707E+01,-0.18747E+01,-0.18787E+01,-0.18827E+01,-0.18866E+01, & - &-0.18906E+01,-0.18946E+01,-0.18985E+01,-0.19025E+01,-0.19064E+01, & - &-0.19104E+01,-0.19143E+01,-0.19182E+01,-0.19222E+01,-0.19261E+01, & - &-0.19300E+01,-0.19339E+01,-0.19378E+01,-0.19417E+01,-0.19456E+01, & - &-0.19495E+01 & - & / -! -! *** NaNO3 -! - DATA (BNC03M(I),I=1,100)/ & - &-0.47892E-01,-0.10469E+00,-0.13335E+00,-0.15377E+00,-0.16990E+00, & - &-0.18333E+00,-0.19490E+00,-0.20510E+00,-0.21423E+00,-0.22252E+00, & - &-0.23012E+00,-0.23714E+00,-0.24367E+00,-0.24979E+00,-0.25554E+00, & - &-0.26097E+00,-0.26612E+00,-0.27101E+00,-0.27568E+00,-0.28015E+00, & - &-0.28443E+00,-0.28854E+00,-0.29249E+00,-0.29630E+00,-0.29998E+00, & - &-0.30354E+00,-0.30699E+00,-0.31033E+00,-0.31357E+00,-0.31671E+00, & - &-0.31977E+00,-0.32275E+00,-0.32565E+00,-0.32848E+00,-0.33124E+00, & - &-0.33393E+00,-0.33656E+00,-0.33913E+00,-0.34164E+00,-0.34410E+00, & - &-0.34651E+00,-0.34887E+00,-0.35118E+00,-0.35344E+00,-0.35567E+00, & - &-0.35785E+00,-0.35999E+00,-0.36209E+00,-0.36415E+00,-0.36618E+00, & - &-0.36817E+00,-0.37013E+00,-0.37206E+00,-0.37396E+00,-0.37583E+00, & - &-0.37767E+00,-0.37948E+00,-0.38127E+00,-0.38303E+00,-0.38476E+00, & - &-0.38648E+00,-0.38816E+00,-0.38983E+00,-0.39148E+00,-0.39310E+00, & - &-0.39470E+00,-0.39629E+00,-0.39786E+00,-0.39941E+00,-0.40094E+00, & - &-0.40245E+00,-0.40395E+00,-0.40543E+00,-0.40690E+00,-0.40836E+00, & - &-0.40980E+00,-0.41122E+00,-0.41264E+00,-0.41404E+00,-0.41543E+00, & - &-0.41681E+00,-0.41817E+00,-0.41953E+00,-0.42087E+00,-0.42221E+00, & - &-0.42354E+00,-0.42485E+00,-0.42616E+00,-0.42745E+00,-0.42874E+00, & - &-0.43002E+00,-0.43129E+00,-0.43256E+00,-0.43381E+00,-0.43506E+00, & - &-0.43630E+00,-0.43753E+00,-0.43876E+00,-0.43998E+00,-0.44119E+00/ - - DATA (BNC03M(I),I=101,200)/ & - &-0.44239E+00,-0.44359E+00,-0.44478E+00,-0.44597E+00,-0.44715E+00, & - &-0.44832E+00,-0.44948E+00,-0.45064E+00,-0.45179E+00,-0.45294E+00, & - &-0.45408E+00,-0.45521E+00,-0.45634E+00,-0.45746E+00,-0.45858E+00, & - &-0.45969E+00,-0.46079E+00,-0.46189E+00,-0.46298E+00,-0.46407E+00, & - &-0.46515E+00,-0.46623E+00,-0.46730E+00,-0.46836E+00,-0.46942E+00, & - &-0.47047E+00,-0.47152E+00,-0.47257E+00,-0.47360E+00,-0.47464E+00, & - &-0.47566E+00,-0.47669E+00,-0.47770E+00,-0.47871E+00,-0.47972E+00, & - &-0.48072E+00,-0.48172E+00,-0.48271E+00,-0.48370E+00,-0.48468E+00, & - &-0.48566E+00,-0.48663E+00,-0.48760E+00,-0.48857E+00,-0.48953E+00, & - &-0.49048E+00,-0.49143E+00,-0.49238E+00,-0.49332E+00,-0.49426E+00, & - &-0.49520E+00,-0.49613E+00,-0.49705E+00,-0.49797E+00,-0.49889E+00, & - &-0.49980E+00,-0.50071E+00,-0.50162E+00,-0.50252E+00,-0.50342E+00, & - &-0.50432E+00,-0.50521E+00,-0.50609E+00,-0.50698E+00,-0.50786E+00, & - &-0.50873E+00,-0.50961E+00,-0.51047E+00,-0.51134E+00,-0.51220E+00, & - &-0.51306E+00,-0.51392E+00,-0.51477E+00,-0.51562E+00,-0.51647E+00, & - &-0.51731E+00,-0.51815E+00,-0.51898E+00,-0.51982E+00,-0.52065E+00, & - &-0.52147E+00,-0.52230E+00,-0.52312E+00,-0.52394E+00,-0.52475E+00, & - &-0.52556E+00,-0.52637E+00,-0.52718E+00,-0.52798E+00,-0.52878E+00, & - &-0.52958E+00,-0.53038E+00,-0.53117E+00,-0.53196E+00,-0.53275E+00, & - &-0.53353E+00,-0.53431E+00,-0.53509E+00,-0.53587E+00,-0.53664E+00/ - - DATA (BNC03M(I),I=201,300)/ & - &-0.53741E+00,-0.53818E+00,-0.53895E+00,-0.53971E+00,-0.54047E+00, & - &-0.54123E+00,-0.54199E+00,-0.54274E+00,-0.54349E+00,-0.54424E+00, & - &-0.54499E+00,-0.54573E+00,-0.54648E+00,-0.54722E+00,-0.54796E+00, & - &-0.54869E+00,-0.54942E+00,-0.55016E+00,-0.55088E+00,-0.55161E+00, & - &-0.55234E+00,-0.55306E+00,-0.55378E+00,-0.55450E+00,-0.55521E+00, & - &-0.55593E+00,-0.55664E+00,-0.55735E+00,-0.55806E+00,-0.55876E+00, & - &-0.55947E+00,-0.56017E+00,-0.56087E+00,-0.56156E+00,-0.56226E+00, & - &-0.56295E+00,-0.56365E+00,-0.56434E+00,-0.56503E+00,-0.56571E+00, & - &-0.56640E+00,-0.56708E+00,-0.56776E+00,-0.56844E+00,-0.56912E+00, & - &-0.56979E+00,-0.57046E+00,-0.57114E+00,-0.57181E+00,-0.57248E+00, & - &-0.57314E+00,-0.57381E+00,-0.57447E+00,-0.57513E+00,-0.57579E+00, & - &-0.57645E+00,-0.57711E+00,-0.57776E+00,-0.57841E+00,-0.57907E+00, & - &-0.57971E+00,-0.58036E+00,-0.58101E+00,-0.58165E+00,-0.58230E+00, & - &-0.58294E+00,-0.58358E+00,-0.58422E+00,-0.58486E+00,-0.58549E+00, & - &-0.58613E+00,-0.58676E+00,-0.58739E+00,-0.58802E+00,-0.58865E+00, & - &-0.58928E+00,-0.58990E+00,-0.59052E+00,-0.59115E+00,-0.59177E+00, & - &-0.59239E+00,-0.59301E+00,-0.59362E+00,-0.59424E+00,-0.59485E+00, & - &-0.59546E+00,-0.59607E+00,-0.59668E+00,-0.59729E+00,-0.59790E+00, & - &-0.59851E+00,-0.59911E+00,-0.59971E+00,-0.60031E+00,-0.60092E+00, & - &-0.60151E+00,-0.60211E+00,-0.60271E+00,-0.60330E+00,-0.60390E+00/ - - DATA (BNC03M(I),I=301,400)/ & - &-0.60449E+00,-0.60508E+00,-0.60567E+00,-0.60626E+00,-0.60685E+00, & - &-0.60744E+00,-0.60802E+00,-0.60860E+00,-0.60919E+00,-0.60977E+00, & - &-0.61035E+00,-0.61093E+00,-0.61151E+00,-0.61208E+00,-0.61266E+00, & - &-0.61323E+00,-0.61381E+00,-0.61438E+00,-0.61495E+00,-0.61552E+00, & - &-0.61609E+00,-0.61666E+00,-0.61722E+00,-0.61779E+00,-0.61835E+00, & - &-0.61892E+00,-0.61948E+00,-0.62004E+00,-0.62060E+00,-0.62116E+00, & - &-0.62171E+00,-0.62227E+00,-0.62283E+00,-0.62338E+00,-0.62393E+00, & - &-0.62449E+00,-0.62504E+00,-0.62559E+00,-0.62614E+00,-0.62669E+00, & - &-0.62723E+00,-0.62778E+00,-0.62833E+00,-0.62887E+00,-0.62941E+00, & - &-0.62996E+00,-0.63050E+00,-0.63104E+00,-0.63158E+00,-0.63211E+00, & - &-0.63265E+00,-0.63319E+00,-0.63372E+00,-0.63426E+00,-0.63479E+00, & - &-0.63532E+00,-0.63586E+00,-0.63639E+00,-0.63692E+00,-0.63744E+00, & - &-0.63797E+00,-0.63850E+00,-0.63903E+00,-0.63955E+00,-0.64007E+00, & - &-0.64060E+00,-0.64112E+00,-0.64164E+00,-0.64216E+00,-0.64268E+00, & - &-0.64320E+00,-0.64372E+00,-0.64424E+00,-0.64475E+00,-0.64527E+00, & - &-0.64578E+00,-0.64630E+00,-0.64681E+00,-0.64732E+00,-0.64783E+00, & - &-0.64834E+00,-0.64885E+00,-0.64936E+00,-0.64987E+00,-0.65037E+00, & - &-0.65088E+00,-0.65139E+00,-0.65189E+00,-0.65239E+00,-0.65290E+00, & - &-0.65340E+00,-0.65390E+00,-0.65440E+00,-0.65490E+00,-0.65540E+00, & - &-0.65590E+00,-0.65639E+00,-0.65689E+00,-0.65739E+00,-0.65788E+00/ - - DATA (BNC03M(I),I=401,500)/ & - &-0.65838E+00,-0.65887E+00,-0.65936E+00,-0.65985E+00,-0.66035E+00, & - &-0.66084E+00,-0.66133E+00,-0.66181E+00,-0.66230E+00,-0.66279E+00, & - &-0.66328E+00,-0.66376E+00,-0.66425E+00,-0.66473E+00,-0.66522E+00, & - &-0.66570E+00,-0.66618E+00,-0.66666E+00,-0.66714E+00,-0.66762E+00, & - &-0.66810E+00,-0.66858E+00,-0.66906E+00,-0.66954E+00,-0.67001E+00, & - &-0.67049E+00,-0.67097E+00,-0.67144E+00,-0.67191E+00,-0.67239E+00, & - &-0.67286E+00,-0.67333E+00,-0.67380E+00,-0.67427E+00,-0.67474E+00, & - &-0.67521E+00,-0.67568E+00,-0.67615E+00,-0.67662E+00,-0.67708E+00, & - &-0.67755E+00,-0.67801E+00,-0.67848E+00,-0.67894E+00,-0.67941E+00, & - &-0.67987E+00,-0.68033E+00,-0.68079E+00,-0.68125E+00,-0.68171E+00, & - &-0.68217E+00,-0.68263E+00,-0.68309E+00,-0.68355E+00,-0.68400E+00, & - &-0.68446E+00,-0.68492E+00,-0.68537E+00,-0.68583E+00,-0.68628E+00, & - &-0.68673E+00,-0.68719E+00,-0.68764E+00,-0.68809E+00,-0.68854E+00, & - &-0.68899E+00,-0.68944E+00,-0.68989E+00,-0.69034E+00,-0.69079E+00, & - &-0.69124E+00,-0.69168E+00,-0.69213E+00,-0.69257E+00,-0.69302E+00, & - &-0.69346E+00,-0.69391E+00,-0.69435E+00,-0.69480E+00,-0.69524E+00, & - &-0.69568E+00,-0.69612E+00,-0.69656E+00,-0.69700E+00,-0.69744E+00, & - &-0.69788E+00,-0.69832E+00,-0.69876E+00,-0.69919E+00,-0.69963E+00, & - &-0.70007E+00,-0.70050E+00,-0.70094E+00,-0.70137E+00,-0.70181E+00, & - &-0.70224E+00,-0.70267E+00,-0.70311E+00,-0.70354E+00,-0.70397E+00/ - - DATA (BNC03M(I),I=501,600)/ & - &-0.70440E+00,-0.70483E+00,-0.70526E+00,-0.70569E+00,-0.70612E+00, & - &-0.70655E+00,-0.70698E+00,-0.70740E+00,-0.70783E+00,-0.70826E+00, & - &-0.70868E+00,-0.70911E+00,-0.70953E+00,-0.70996E+00,-0.71038E+00, & - &-0.71081E+00,-0.71123E+00,-0.71165E+00,-0.71207E+00,-0.71250E+00, & - &-0.71292E+00,-0.71334E+00,-0.71376E+00,-0.71418E+00,-0.71460E+00, & - &-0.71501E+00,-0.71543E+00,-0.71585E+00,-0.71627E+00,-0.71668E+00, & - &-0.71710E+00,-0.71752E+00,-0.71793E+00,-0.71835E+00,-0.71876E+00, & - &-0.71917E+00,-0.71959E+00,-0.72000E+00,-0.72041E+00,-0.72083E+00, & - &-0.72124E+00,-0.72165E+00,-0.72206E+00,-0.72247E+00,-0.72288E+00, & - &-0.72329E+00,-0.72370E+00,-0.72411E+00,-0.72451E+00,-0.72492E+00, & - &-0.72533E+00,-0.72574E+00,-0.72614E+00,-0.72655E+00,-0.72695E+00, & - &-0.72736E+00,-0.72776E+00,-0.72817E+00,-0.72857E+00,-0.72897E+00, & - &-0.72938E+00,-0.72978E+00,-0.73018E+00,-0.73058E+00,-0.73098E+00, & - &-0.73139E+00,-0.73179E+00,-0.73219E+00,-0.73259E+00,-0.73298E+00, & - &-0.73338E+00,-0.73378E+00,-0.73418E+00,-0.73458E+00,-0.73497E+00, & - &-0.73537E+00,-0.73577E+00,-0.73616E+00,-0.73656E+00,-0.73695E+00, & - &-0.73735E+00,-0.73774E+00,-0.73814E+00,-0.73853E+00,-0.73892E+00, & - &-0.73932E+00,-0.73971E+00,-0.74010E+00,-0.74049E+00,-0.74088E+00, & - &-0.74127E+00,-0.74166E+00,-0.74205E+00,-0.74244E+00,-0.74283E+00, & - &-0.74322E+00,-0.74361E+00,-0.74400E+00,-0.74439E+00,-0.74477E+00/ - - DATA (BNC03M(I),I=601,700)/ & - &-0.74893E+00,-0.75275E+00,-0.75652E+00,-0.76027E+00,-0.76398E+00, & - &-0.76765E+00,-0.77130E+00,-0.77492E+00,-0.77850E+00,-0.78206E+00, & - &-0.78558E+00,-0.78908E+00,-0.79256E+00,-0.79600E+00,-0.79942E+00, & - &-0.80282E+00,-0.80619E+00,-0.80954E+00,-0.81286E+00,-0.81617E+00, & - &-0.81944E+00,-0.82270E+00,-0.82594E+00,-0.82915E+00,-0.83235E+00, & - &-0.83552E+00,-0.83868E+00,-0.84181E+00,-0.84493E+00,-0.84803E+00, & - &-0.85111E+00,-0.85417E+00,-0.85722E+00,-0.86025E+00,-0.86326E+00, & - &-0.86626E+00,-0.86924E+00,-0.87221E+00,-0.87515E+00,-0.87809E+00, & - &-0.88101E+00,-0.88391E+00,-0.88681E+00,-0.88968E+00,-0.89255E+00, & - &-0.89540E+00,-0.89823E+00,-0.90106E+00,-0.90387E+00,-0.90666E+00, & - &-0.90945E+00,-0.91222E+00,-0.91499E+00,-0.91773E+00,-0.92047E+00, & - &-0.92320E+00,-0.92592E+00,-0.92862E+00,-0.93131E+00,-0.93400E+00, & - &-0.93667E+00,-0.93933E+00,-0.94198E+00,-0.94462E+00,-0.94726E+00, & - &-0.94988E+00,-0.95249E+00,-0.95509E+00,-0.95769E+00,-0.96027E+00, & - &-0.96285E+00,-0.96541E+00,-0.96797E+00,-0.97052E+00,-0.97306E+00, & - &-0.97559E+00,-0.97812E+00,-0.98063E+00,-0.98314E+00,-0.98564E+00, & - &-0.98813E+00,-0.99062E+00,-0.99309E+00,-0.99556E+00,-0.99802E+00, & - &-0.10005E+01,-0.10029E+01,-0.10054E+01,-0.10078E+01,-0.10102E+01, & - &-0.10126E+01,-0.10150E+01,-0.10175E+01,-0.10198E+01,-0.10222E+01, & - &-0.10246E+01,-0.10270E+01,-0.10294E+01,-0.10317E+01,-0.10341E+01/ - - DATA (BNC03M(I),I=701,741)/ & - &-0.10365E+01,-0.10388E+01,-0.10411E+01,-0.10435E+01,-0.10458E+01, & - &-0.10481E+01,-0.10505E+01,-0.10528E+01,-0.10551E+01,-0.10574E+01, & - &-0.10597E+01,-0.10620E+01,-0.10642E+01,-0.10665E+01,-0.10688E+01, & - &-0.10711E+01,-0.10733E+01,-0.10756E+01,-0.10778E+01,-0.10801E+01, & - &-0.10823E+01,-0.10846E+01,-0.10868E+01,-0.10890E+01,-0.10913E+01, & - &-0.10935E+01,-0.10957E+01,-0.10979E+01,-0.11001E+01,-0.11023E+01, & - &-0.11045E+01,-0.11067E+01,-0.11089E+01,-0.11111E+01,-0.11133E+01, & - &-0.11154E+01,-0.11176E+01,-0.11198E+01,-0.11219E+01,-0.11241E+01, & - &-0.11263E+01 & - & / -! -! *** (NH4)2SO4 -! - DATA (BNC04M(I),I=1,100)/ & - &-0.95602E-01,-0.20838E+00,-0.26497E+00,-0.30509E+00,-0.33666E+00, & - &-0.36287E+00,-0.38536E+00,-0.40512E+00,-0.42276E+00,-0.43873E+00, & - &-0.45332E+00,-0.46676E+00,-0.47924E+00,-0.49089E+00,-0.50182E+00, & - &-0.51211E+00,-0.52185E+00,-0.53109E+00,-0.53988E+00,-0.54827E+00, & - &-0.55629E+00,-0.56398E+00,-0.57137E+00,-0.57848E+00,-0.58532E+00, & - &-0.59193E+00,-0.59832E+00,-0.60450E+00,-0.61049E+00,-0.61630E+00, & - &-0.62194E+00,-0.62742E+00,-0.63275E+00,-0.63794E+00,-0.64299E+00, & - &-0.64792E+00,-0.65273E+00,-0.65742E+00,-0.66201E+00,-0.66649E+00, & - &-0.67087E+00,-0.67516E+00,-0.67936E+00,-0.68347E+00,-0.68750E+00, & - &-0.69145E+00,-0.69533E+00,-0.69913E+00,-0.70286E+00,-0.70653E+00, & - &-0.71013E+00,-0.71367E+00,-0.71715E+00,-0.72057E+00,-0.72393E+00, & - &-0.72724E+00,-0.73050E+00,-0.73371E+00,-0.73687E+00,-0.73999E+00, & - &-0.74306E+00,-0.74609E+00,-0.74907E+00,-0.75202E+00,-0.75492E+00, & - &-0.75779E+00,-0.76063E+00,-0.76342E+00,-0.76619E+00,-0.76892E+00, & - &-0.77162E+00,-0.77428E+00,-0.77692E+00,-0.77953E+00,-0.78212E+00, & - &-0.78467E+00,-0.78720E+00,-0.78971E+00,-0.79219E+00,-0.79464E+00, & - &-0.79708E+00,-0.79949E+00,-0.80188E+00,-0.80425E+00,-0.80660E+00, & - &-0.80893E+00,-0.81124E+00,-0.81353E+00,-0.81581E+00,-0.81807E+00, & - &-0.82031E+00,-0.82253E+00,-0.82474E+00,-0.82693E+00,-0.82910E+00, & - &-0.83127E+00,-0.83341E+00,-0.83554E+00,-0.83766E+00,-0.83976E+00/ - - DATA (BNC04M(I),I=101,200)/ & - &-0.84185E+00,-0.84393E+00,-0.84599E+00,-0.84804E+00,-0.85007E+00, & - &-0.85210E+00,-0.85411E+00,-0.85611E+00,-0.85809E+00,-0.86007E+00, & - &-0.86203E+00,-0.86398E+00,-0.86592E+00,-0.86785E+00,-0.86977E+00, & - &-0.87167E+00,-0.87357E+00,-0.87545E+00,-0.87732E+00,-0.87918E+00, & - &-0.88103E+00,-0.88287E+00,-0.88470E+00,-0.88652E+00,-0.88833E+00, & - &-0.89013E+00,-0.89192E+00,-0.89370E+00,-0.89547E+00,-0.89724E+00, & - &-0.89899E+00,-0.90073E+00,-0.90246E+00,-0.90419E+00,-0.90590E+00, & - &-0.90761E+00,-0.90930E+00,-0.91099E+00,-0.91267E+00,-0.91434E+00, & - &-0.91601E+00,-0.91766E+00,-0.91931E+00,-0.92094E+00,-0.92257E+00, & - &-0.92420E+00,-0.92581E+00,-0.92742E+00,-0.92902E+00,-0.93061E+00, & - &-0.93219E+00,-0.93377E+00,-0.93534E+00,-0.93690E+00,-0.93846E+00, & - &-0.94000E+00,-0.94155E+00,-0.94308E+00,-0.94461E+00,-0.94613E+00, & - &-0.94764E+00,-0.94915E+00,-0.95065E+00,-0.95215E+00,-0.95363E+00, & - &-0.95512E+00,-0.95659E+00,-0.95806E+00,-0.95953E+00,-0.96099E+00, & - &-0.96244E+00,-0.96388E+00,-0.96532E+00,-0.96676E+00,-0.96819E+00, & - &-0.96961E+00,-0.97103E+00,-0.97244E+00,-0.97385E+00,-0.97525E+00, & - &-0.97665E+00,-0.97804E+00,-0.97942E+00,-0.98080E+00,-0.98218E+00, & - &-0.98355E+00,-0.98491E+00,-0.98627E+00,-0.98763E+00,-0.98898E+00, & - &-0.99033E+00,-0.99167E+00,-0.99300E+00,-0.99434E+00,-0.99566E+00, & - &-0.99699E+00,-0.99830E+00,-0.99962E+00,-0.10009E+01,-0.10022E+01/ - - DATA (BNC04M(I),I=201,300)/ & - &-0.10035E+01,-0.10048E+01,-0.10061E+01,-0.10074E+01,-0.10087E+01, & - &-0.10100E+01,-0.10112E+01,-0.10125E+01,-0.10138E+01,-0.10150E+01, & - &-0.10163E+01,-0.10176E+01,-0.10188E+01,-0.10200E+01,-0.10213E+01, & - &-0.10225E+01,-0.10238E+01,-0.10250E+01,-0.10262E+01,-0.10274E+01, & - &-0.10287E+01,-0.10299E+01,-0.10311E+01,-0.10323E+01,-0.10335E+01, & - &-0.10347E+01,-0.10359E+01,-0.10371E+01,-0.10383E+01,-0.10395E+01, & - &-0.10407E+01,-0.10419E+01,-0.10430E+01,-0.10442E+01,-0.10454E+01, & - &-0.10465E+01,-0.10477E+01,-0.10489E+01,-0.10500E+01,-0.10512E+01, & - &-0.10523E+01,-0.10535E+01,-0.10546E+01,-0.10558E+01,-0.10569E+01, & - &-0.10581E+01,-0.10592E+01,-0.10603E+01,-0.10615E+01,-0.10626E+01, & - &-0.10637E+01,-0.10648E+01,-0.10659E+01,-0.10670E+01,-0.10682E+01, & - &-0.10693E+01,-0.10704E+01,-0.10715E+01,-0.10726E+01,-0.10737E+01, & - &-0.10748E+01,-0.10759E+01,-0.10769E+01,-0.10780E+01,-0.10791E+01, & - &-0.10802E+01,-0.10813E+01,-0.10824E+01,-0.10834E+01,-0.10845E+01, & - &-0.10856E+01,-0.10866E+01,-0.10877E+01,-0.10888E+01,-0.10898E+01, & - &-0.10909E+01,-0.10919E+01,-0.10930E+01,-0.10940E+01,-0.10951E+01, & - &-0.10961E+01,-0.10972E+01,-0.10982E+01,-0.10992E+01,-0.11003E+01, & - &-0.11013E+01,-0.11023E+01,-0.11034E+01,-0.11044E+01,-0.11054E+01, & - &-0.11064E+01,-0.11074E+01,-0.11085E+01,-0.11095E+01,-0.11105E+01, & - &-0.11115E+01,-0.11125E+01,-0.11135E+01,-0.11145E+01,-0.11155E+01/ - - DATA (BNC04M(I),I=301,400)/ & - &-0.11165E+01,-0.11175E+01,-0.11185E+01,-0.11195E+01,-0.11205E+01, & - &-0.11215E+01,-0.11225E+01,-0.11234E+01,-0.11244E+01,-0.11254E+01, & - &-0.11264E+01,-0.11274E+01,-0.11283E+01,-0.11293E+01,-0.11303E+01, & - &-0.11313E+01,-0.11322E+01,-0.11332E+01,-0.11342E+01,-0.11351E+01, & - &-0.11361E+01,-0.11370E+01,-0.11380E+01,-0.11389E+01,-0.11399E+01, & - &-0.11408E+01,-0.11418E+01,-0.11427E+01,-0.11437E+01,-0.11446E+01, & - &-0.11456E+01,-0.11465E+01,-0.11475E+01,-0.11484E+01,-0.11493E+01, & - &-0.11503E+01,-0.11512E+01,-0.11521E+01,-0.11531E+01,-0.11540E+01, & - &-0.11549E+01,-0.11558E+01,-0.11567E+01,-0.11577E+01,-0.11586E+01, & - &-0.11595E+01,-0.11604E+01,-0.11613E+01,-0.11622E+01,-0.11632E+01, & - &-0.11641E+01,-0.11650E+01,-0.11659E+01,-0.11668E+01,-0.11677E+01, & - &-0.11686E+01,-0.11695E+01,-0.11704E+01,-0.11713E+01,-0.11722E+01, & - &-0.11731E+01,-0.11740E+01,-0.11749E+01,-0.11757E+01,-0.11766E+01, & - &-0.11775E+01,-0.11784E+01,-0.11793E+01,-0.11802E+01,-0.11810E+01, & - &-0.11819E+01,-0.11828E+01,-0.11837E+01,-0.11846E+01,-0.11854E+01, & - &-0.11863E+01,-0.11872E+01,-0.11880E+01,-0.11889E+01,-0.11898E+01, & - &-0.11906E+01,-0.11915E+01,-0.11924E+01,-0.11932E+01,-0.11941E+01, & - &-0.11949E+01,-0.11958E+01,-0.11967E+01,-0.11975E+01,-0.11984E+01, & - &-0.11992E+01,-0.12001E+01,-0.12009E+01,-0.12018E+01,-0.12026E+01, & - &-0.12035E+01,-0.12043E+01,-0.12051E+01,-0.12060E+01,-0.12068E+01/ - - DATA (BNC04M(I),I=401,500)/ & - &-0.12077E+01,-0.12085E+01,-0.12093E+01,-0.12102E+01,-0.12110E+01, & - &-0.12118E+01,-0.12127E+01,-0.12135E+01,-0.12143E+01,-0.12152E+01, & - &-0.12160E+01,-0.12168E+01,-0.12176E+01,-0.12185E+01,-0.12193E+01, & - &-0.12201E+01,-0.12209E+01,-0.12217E+01,-0.12226E+01,-0.12234E+01, & - &-0.12242E+01,-0.12250E+01,-0.12258E+01,-0.12266E+01,-0.12274E+01, & - &-0.12283E+01,-0.12291E+01,-0.12299E+01,-0.12307E+01,-0.12315E+01, & - &-0.12323E+01,-0.12331E+01,-0.12339E+01,-0.12347E+01,-0.12355E+01, & - &-0.12363E+01,-0.12371E+01,-0.12379E+01,-0.12387E+01,-0.12395E+01, & - &-0.12403E+01,-0.12411E+01,-0.12419E+01,-0.12426E+01,-0.12434E+01, & - &-0.12442E+01,-0.12450E+01,-0.12458E+01,-0.12466E+01,-0.12474E+01, & - &-0.12482E+01,-0.12489E+01,-0.12497E+01,-0.12505E+01,-0.12513E+01, & - &-0.12521E+01,-0.12528E+01,-0.12536E+01,-0.12544E+01,-0.12552E+01, & - &-0.12559E+01,-0.12567E+01,-0.12575E+01,-0.12583E+01,-0.12590E+01, & - &-0.12598E+01,-0.12606E+01,-0.12613E+01,-0.12621E+01,-0.12629E+01, & - &-0.12636E+01,-0.12644E+01,-0.12652E+01,-0.12659E+01,-0.12667E+01, & - &-0.12674E+01,-0.12682E+01,-0.12690E+01,-0.12697E+01,-0.12705E+01, & - &-0.12712E+01,-0.12720E+01,-0.12727E+01,-0.12735E+01,-0.12742E+01, & - &-0.12750E+01,-0.12757E+01,-0.12765E+01,-0.12772E+01,-0.12780E+01, & - &-0.12787E+01,-0.12795E+01,-0.12802E+01,-0.12810E+01,-0.12817E+01, & - &-0.12825E+01,-0.12832E+01,-0.12839E+01,-0.12847E+01,-0.12854E+01/ - - DATA (BNC04M(I),I=501,600)/ & - &-0.12862E+01,-0.12869E+01,-0.12876E+01,-0.12884E+01,-0.12891E+01, & - &-0.12898E+01,-0.12906E+01,-0.12913E+01,-0.12920E+01,-0.12928E+01, & - &-0.12935E+01,-0.12942E+01,-0.12950E+01,-0.12957E+01,-0.12964E+01, & - &-0.12971E+01,-0.12979E+01,-0.12986E+01,-0.12993E+01,-0.13000E+01, & - &-0.13008E+01,-0.13015E+01,-0.13022E+01,-0.13029E+01,-0.13036E+01, & - &-0.13044E+01,-0.13051E+01,-0.13058E+01,-0.13065E+01,-0.13072E+01, & - &-0.13079E+01,-0.13087E+01,-0.13094E+01,-0.13101E+01,-0.13108E+01, & - &-0.13115E+01,-0.13122E+01,-0.13129E+01,-0.13136E+01,-0.13143E+01, & - &-0.13151E+01,-0.13158E+01,-0.13165E+01,-0.13172E+01,-0.13179E+01, & - &-0.13186E+01,-0.13193E+01,-0.13200E+01,-0.13207E+01,-0.13214E+01, & - &-0.13221E+01,-0.13228E+01,-0.13235E+01,-0.13242E+01,-0.13249E+01, & - &-0.13256E+01,-0.13263E+01,-0.13270E+01,-0.13277E+01,-0.13284E+01, & - &-0.13291E+01,-0.13298E+01,-0.13304E+01,-0.13311E+01,-0.13318E+01, & - &-0.13325E+01,-0.13332E+01,-0.13339E+01,-0.13346E+01,-0.13353E+01, & - &-0.13360E+01,-0.13367E+01,-0.13373E+01,-0.13380E+01,-0.13387E+01, & - &-0.13394E+01,-0.13401E+01,-0.13408E+01,-0.13414E+01,-0.13421E+01, & - &-0.13428E+01,-0.13435E+01,-0.13442E+01,-0.13448E+01,-0.13455E+01, & - &-0.13462E+01,-0.13469E+01,-0.13476E+01,-0.13482E+01,-0.13489E+01, & - &-0.13496E+01,-0.13503E+01,-0.13509E+01,-0.13516E+01,-0.13523E+01, & - &-0.13530E+01,-0.13536E+01,-0.13543E+01,-0.13550E+01,-0.13556E+01/ - - DATA (BNC04M(I),I=601,700)/ & - &-0.13628E+01,-0.13694E+01,-0.13760E+01,-0.13825E+01,-0.13889E+01, & - &-0.13953E+01,-0.14016E+01,-0.14079E+01,-0.14142E+01,-0.14204E+01, & - &-0.14265E+01,-0.14327E+01,-0.14387E+01,-0.14448E+01,-0.14507E+01, & - &-0.14567E+01,-0.14626E+01,-0.14685E+01,-0.14743E+01,-0.14801E+01, & - &-0.14859E+01,-0.14916E+01,-0.14973E+01,-0.15030E+01,-0.15087E+01, & - &-0.15143E+01,-0.15198E+01,-0.15254E+01,-0.15309E+01,-0.15364E+01, & - &-0.15419E+01,-0.15473E+01,-0.15527E+01,-0.15581E+01,-0.15635E+01, & - &-0.15688E+01,-0.15741E+01,-0.15794E+01,-0.15846E+01,-0.15899E+01, & - &-0.15951E+01,-0.16003E+01,-0.16055E+01,-0.16106E+01,-0.16157E+01, & - &-0.16208E+01,-0.16259E+01,-0.16310E+01,-0.16360E+01,-0.16411E+01, & - &-0.16461E+01,-0.16511E+01,-0.16560E+01,-0.16610E+01,-0.16659E+01, & - &-0.16708E+01,-0.16757E+01,-0.16806E+01,-0.16855E+01,-0.16903E+01, & - &-0.16952E+01,-0.17000E+01,-0.17048E+01,-0.17096E+01,-0.17143E+01, & - &-0.17191E+01,-0.17238E+01,-0.17285E+01,-0.17333E+01,-0.17379E+01, & - &-0.17426E+01,-0.17473E+01,-0.17520E+01,-0.17566E+01,-0.17612E+01, & - &-0.17658E+01,-0.17704E+01,-0.17750E+01,-0.17796E+01,-0.17842E+01, & - &-0.17887E+01,-0.17933E+01,-0.17978E+01,-0.18023E+01,-0.18068E+01, & - &-0.18113E+01,-0.18158E+01,-0.18203E+01,-0.18247E+01,-0.18292E+01, & - &-0.18336E+01,-0.18380E+01,-0.18425E+01,-0.18469E+01,-0.18513E+01, & - &-0.18556E+01,-0.18600E+01,-0.18644E+01,-0.18687E+01,-0.18731E+01/ - - DATA (BNC04M(I),I=701,741)/ & - &-0.18774E+01,-0.18818E+01,-0.18861E+01,-0.18904E+01,-0.18947E+01, & - &-0.18990E+01,-0.19033E+01,-0.19075E+01,-0.19118E+01,-0.19161E+01, & - &-0.19203E+01,-0.19245E+01,-0.19288E+01,-0.19330E+01,-0.19372E+01, & - &-0.19414E+01,-0.19456E+01,-0.19498E+01,-0.19540E+01,-0.19582E+01, & - &-0.19623E+01,-0.19665E+01,-0.19707E+01,-0.19748E+01,-0.19789E+01, & - &-0.19831E+01,-0.19872E+01,-0.19913E+01,-0.19954E+01,-0.19995E+01, & - &-0.20036E+01,-0.20077E+01,-0.20118E+01,-0.20159E+01,-0.20199E+01, & - &-0.20240E+01,-0.20280E+01,-0.20321E+01,-0.20361E+01,-0.20402E+01, & - &-0.20442E+01 & - & / -! -! *** NH4NO3 -! - DATA (BNC05M(I),I=1,100)/ & - &-0.48407E-01,-0.10752E+00,-0.13832E+00,-0.16078E+00,-0.17887E+00, & - &-0.19423E+00,-0.20767E+00,-0.21970E+00,-0.23063E+00,-0.24069E+00, & - &-0.25003E+00,-0.25876E+00,-0.26699E+00,-0.27478E+00,-0.28218E+00, & - &-0.28924E+00,-0.29599E+00,-0.30248E+00,-0.30872E+00,-0.31474E+00, & - &-0.32056E+00,-0.32619E+00,-0.33165E+00,-0.33695E+00,-0.34210E+00, & - &-0.34712E+00,-0.35200E+00,-0.35676E+00,-0.36141E+00,-0.36595E+00, & - &-0.37039E+00,-0.37472E+00,-0.37897E+00,-0.38313E+00,-0.38720E+00, & - &-0.39119E+00,-0.39511E+00,-0.39895E+00,-0.40271E+00,-0.40642E+00, & - &-0.41005E+00,-0.41362E+00,-0.41713E+00,-0.42058E+00,-0.42397E+00, & - &-0.42731E+00,-0.43059E+00,-0.43382E+00,-0.43700E+00,-0.44014E+00, & - &-0.44323E+00,-0.44627E+00,-0.44927E+00,-0.45222E+00,-0.45514E+00, & - &-0.45802E+00,-0.46085E+00,-0.46366E+00,-0.46642E+00,-0.46916E+00, & - &-0.47186E+00,-0.47453E+00,-0.47717E+00,-0.47978E+00,-0.48236E+00, & - &-0.48491E+00,-0.48744E+00,-0.48995E+00,-0.49243E+00,-0.49489E+00, & - &-0.49732E+00,-0.49974E+00,-0.50213E+00,-0.50451E+00,-0.50687E+00, & - &-0.50921E+00,-0.51154E+00,-0.51385E+00,-0.51614E+00,-0.51842E+00, & - &-0.52069E+00,-0.52295E+00,-0.52519E+00,-0.52742E+00,-0.52963E+00, & - &-0.53184E+00,-0.53404E+00,-0.53622E+00,-0.53840E+00,-0.54057E+00, & - &-0.54273E+00,-0.54487E+00,-0.54701E+00,-0.54915E+00,-0.55127E+00, & - &-0.55338E+00,-0.55549E+00,-0.55759E+00,-0.55968E+00,-0.56176E+00/ - - DATA (BNC05M(I),I=101,200)/ & - &-0.56384E+00,-0.56591E+00,-0.56797E+00,-0.57002E+00,-0.57206E+00, & - &-0.57410E+00,-0.57613E+00,-0.57815E+00,-0.58016E+00,-0.58217E+00, & - &-0.58417E+00,-0.58616E+00,-0.58814E+00,-0.59011E+00,-0.59208E+00, & - &-0.59404E+00,-0.59599E+00,-0.59793E+00,-0.59986E+00,-0.60178E+00, & - &-0.60370E+00,-0.60561E+00,-0.60751E+00,-0.60940E+00,-0.61128E+00, & - &-0.61316E+00,-0.61503E+00,-0.61688E+00,-0.61873E+00,-0.62058E+00, & - &-0.62241E+00,-0.62424E+00,-0.62605E+00,-0.62786E+00,-0.62966E+00, & - &-0.63146E+00,-0.63324E+00,-0.63502E+00,-0.63679E+00,-0.63855E+00, & - &-0.64030E+00,-0.64204E+00,-0.64378E+00,-0.64551E+00,-0.64723E+00, & - &-0.64895E+00,-0.65066E+00,-0.65235E+00,-0.65405E+00,-0.65573E+00, & - &-0.65741E+00,-0.65908E+00,-0.66074E+00,-0.66240E+00,-0.66405E+00, & - &-0.66569E+00,-0.66733E+00,-0.66895E+00,-0.67058E+00,-0.67219E+00, & - &-0.67380E+00,-0.67540E+00,-0.67700E+00,-0.67859E+00,-0.68017E+00, & - &-0.68174E+00,-0.68331E+00,-0.68488E+00,-0.68643E+00,-0.68798E+00, & - &-0.68953E+00,-0.69107E+00,-0.69260E+00,-0.69413E+00,-0.69565E+00, & - &-0.69716E+00,-0.69867E+00,-0.70017E+00,-0.70167E+00,-0.70316E+00, & - &-0.70465E+00,-0.70613E+00,-0.70760E+00,-0.70907E+00,-0.71054E+00, & - &-0.71199E+00,-0.71345E+00,-0.71489E+00,-0.71634E+00,-0.71777E+00, & - &-0.71920E+00,-0.72063E+00,-0.72205E+00,-0.72347E+00,-0.72488E+00, & - &-0.72629E+00,-0.72769E+00,-0.72908E+00,-0.73047E+00,-0.73186E+00/ - - DATA (BNC05M(I),I=201,300)/ & - &-0.73324E+00,-0.73462E+00,-0.73599E+00,-0.73736E+00,-0.73872E+00, & - &-0.74008E+00,-0.74143E+00,-0.74278E+00,-0.74412E+00,-0.74546E+00, & - &-0.74679E+00,-0.74812E+00,-0.74945E+00,-0.75077E+00,-0.75209E+00, & - &-0.75340E+00,-0.75471E+00,-0.75601E+00,-0.75731E+00,-0.75861E+00, & - &-0.75990E+00,-0.76118E+00,-0.76246E+00,-0.76374E+00,-0.76502E+00, & - &-0.76629E+00,-0.76755E+00,-0.76881E+00,-0.77007E+00,-0.77133E+00, & - &-0.77257E+00,-0.77382E+00,-0.77506E+00,-0.77630E+00,-0.77753E+00, & - &-0.77876E+00,-0.77999E+00,-0.78121E+00,-0.78243E+00,-0.78365E+00, & - &-0.78486E+00,-0.78607E+00,-0.78727E+00,-0.78847E+00,-0.78967E+00, & - &-0.79086E+00,-0.79205E+00,-0.79323E+00,-0.79441E+00,-0.79559E+00, & - &-0.79677E+00,-0.79794E+00,-0.79911E+00,-0.80027E+00,-0.80143E+00, & - &-0.80259E+00,-0.80375E+00,-0.80490E+00,-0.80604E+00,-0.80719E+00, & - &-0.80833E+00,-0.80947E+00,-0.81060E+00,-0.81173E+00,-0.81286E+00, & - &-0.81398E+00,-0.81510E+00,-0.81622E+00,-0.81734E+00,-0.81845E+00, & - &-0.81956E+00,-0.82066E+00,-0.82177E+00,-0.82287E+00,-0.82396E+00, & - &-0.82505E+00,-0.82614E+00,-0.82723E+00,-0.82832E+00,-0.82940E+00, & - &-0.83048E+00,-0.83155E+00,-0.83262E+00,-0.83369E+00,-0.83476E+00, & - &-0.83582E+00,-0.83688E+00,-0.83794E+00,-0.83899E+00,-0.84005E+00, & - &-0.84110E+00,-0.84214E+00,-0.84319E+00,-0.84423E+00,-0.84527E+00, & - &-0.84630E+00,-0.84733E+00,-0.84836E+00,-0.84939E+00,-0.85041E+00/ - - DATA (BNC05M(I),I=301,400)/ & - &-0.85144E+00,-0.85246E+00,-0.85347E+00,-0.85449E+00,-0.85550E+00, & - &-0.85651E+00,-0.85751E+00,-0.85852E+00,-0.85952E+00,-0.86051E+00, & - &-0.86151E+00,-0.86250E+00,-0.86349E+00,-0.86448E+00,-0.86547E+00, & - &-0.86645E+00,-0.86743E+00,-0.86841E+00,-0.86939E+00,-0.87036E+00, & - &-0.87133E+00,-0.87230E+00,-0.87327E+00,-0.87423E+00,-0.87519E+00, & - &-0.87615E+00,-0.87711E+00,-0.87806E+00,-0.87901E+00,-0.87996E+00, & - &-0.88091E+00,-0.88185E+00,-0.88280E+00,-0.88374E+00,-0.88468E+00, & - &-0.88561E+00,-0.88655E+00,-0.88748E+00,-0.88841E+00,-0.88933E+00, & - &-0.89026E+00,-0.89118E+00,-0.89210E+00,-0.89302E+00,-0.89394E+00, & - &-0.89485E+00,-0.89576E+00,-0.89667E+00,-0.89758E+00,-0.89849E+00, & - &-0.89939E+00,-0.90029E+00,-0.90119E+00,-0.90209E+00,-0.90298E+00, & - &-0.90387E+00,-0.90477E+00,-0.90565E+00,-0.90654E+00,-0.90743E+00, & - &-0.90831E+00,-0.90919E+00,-0.91007E+00,-0.91095E+00,-0.91182E+00, & - &-0.91269E+00,-0.91357E+00,-0.91443E+00,-0.91530E+00,-0.91617E+00, & - &-0.91703E+00,-0.91789E+00,-0.91875E+00,-0.91961E+00,-0.92046E+00, & - &-0.92132E+00,-0.92217E+00,-0.92302E+00,-0.92387E+00,-0.92471E+00, & - &-0.92556E+00,-0.92640E+00,-0.92724E+00,-0.92808E+00,-0.92892E+00, & - &-0.92975E+00,-0.93059E+00,-0.93142E+00,-0.93225E+00,-0.93308E+00, & - &-0.93390E+00,-0.93473E+00,-0.93555E+00,-0.93637E+00,-0.93719E+00, & - &-0.93801E+00,-0.93883E+00,-0.93964E+00,-0.94045E+00,-0.94126E+00/ - - DATA (BNC05M(I),I=401,500)/ & - &-0.94207E+00,-0.94288E+00,-0.94369E+00,-0.94449E+00,-0.94529E+00, & - &-0.94609E+00,-0.94689E+00,-0.94769E+00,-0.94849E+00,-0.94928E+00, & - &-0.95007E+00,-0.95087E+00,-0.95166E+00,-0.95244E+00,-0.95323E+00, & - &-0.95401E+00,-0.95480E+00,-0.95558E+00,-0.95636E+00,-0.95714E+00, & - &-0.95791E+00,-0.95869E+00,-0.95946E+00,-0.96023E+00,-0.96101E+00, & - &-0.96177E+00,-0.96254E+00,-0.96331E+00,-0.96407E+00,-0.96484E+00, & - &-0.96560E+00,-0.96636E+00,-0.96712E+00,-0.96787E+00,-0.96863E+00, & - &-0.96938E+00,-0.97014E+00,-0.97089E+00,-0.97164E+00,-0.97238E+00, & - &-0.97313E+00,-0.97388E+00,-0.97462E+00,-0.97536E+00,-0.97610E+00, & - &-0.97684E+00,-0.97758E+00,-0.97832E+00,-0.97905E+00,-0.97979E+00, & - &-0.98052E+00,-0.98125E+00,-0.98198E+00,-0.98271E+00,-0.98344E+00, & - &-0.98416E+00,-0.98489E+00,-0.98561E+00,-0.98633E+00,-0.98705E+00, & - &-0.98777E+00,-0.98849E+00,-0.98921E+00,-0.98992E+00,-0.99064E+00, & - &-0.99135E+00,-0.99206E+00,-0.99277E+00,-0.99348E+00,-0.99419E+00, & - &-0.99489E+00,-0.99560E+00,-0.99630E+00,-0.99700E+00,-0.99770E+00, & - &-0.99840E+00,-0.99910E+00,-0.99980E+00,-0.10005E+01,-0.10012E+01, & - &-0.10019E+01,-0.10026E+01,-0.10033E+01,-0.10040E+01,-0.10046E+01, & - &-0.10053E+01,-0.10060E+01,-0.10067E+01,-0.10074E+01,-0.10081E+01, & - &-0.10087E+01,-0.10094E+01,-0.10101E+01,-0.10108E+01,-0.10115E+01, & - &-0.10121E+01,-0.10128E+01,-0.10135E+01,-0.10142E+01,-0.10148E+01/ - - DATA (BNC05M(I),I=501,600)/ & - &-0.10155E+01,-0.10162E+01,-0.10168E+01,-0.10175E+01,-0.10182E+01, & - &-0.10188E+01,-0.10195E+01,-0.10201E+01,-0.10208E+01,-0.10215E+01, & - &-0.10221E+01,-0.10228E+01,-0.10234E+01,-0.10241E+01,-0.10247E+01, & - &-0.10254E+01,-0.10260E+01,-0.10267E+01,-0.10273E+01,-0.10280E+01, & - &-0.10286E+01,-0.10293E+01,-0.10299E+01,-0.10306E+01,-0.10312E+01, & - &-0.10319E+01,-0.10325E+01,-0.10331E+01,-0.10338E+01,-0.10344E+01, & - &-0.10351E+01,-0.10357E+01,-0.10363E+01,-0.10370E+01,-0.10376E+01, & - &-0.10382E+01,-0.10389E+01,-0.10395E+01,-0.10401E+01,-0.10407E+01, & - &-0.10414E+01,-0.10420E+01,-0.10426E+01,-0.10432E+01,-0.10439E+01, & - &-0.10445E+01,-0.10451E+01,-0.10457E+01,-0.10463E+01,-0.10470E+01, & - &-0.10476E+01,-0.10482E+01,-0.10488E+01,-0.10494E+01,-0.10500E+01, & - &-0.10506E+01,-0.10512E+01,-0.10519E+01,-0.10525E+01,-0.10531E+01, & - &-0.10537E+01,-0.10543E+01,-0.10549E+01,-0.10555E+01,-0.10561E+01, & - &-0.10567E+01,-0.10573E+01,-0.10579E+01,-0.10585E+01,-0.10591E+01, & - &-0.10597E+01,-0.10603E+01,-0.10609E+01,-0.10615E+01,-0.10621E+01, & - &-0.10627E+01,-0.10633E+01,-0.10639E+01,-0.10644E+01,-0.10650E+01, & - &-0.10656E+01,-0.10662E+01,-0.10668E+01,-0.10674E+01,-0.10680E+01, & - &-0.10685E+01,-0.10691E+01,-0.10697E+01,-0.10703E+01,-0.10709E+01, & - &-0.10715E+01,-0.10720E+01,-0.10726E+01,-0.10732E+01,-0.10738E+01, & - &-0.10743E+01,-0.10749E+01,-0.10755E+01,-0.10761E+01,-0.10766E+01/ - - DATA (BNC05M(I),I=601,700)/ & - &-0.10828E+01,-0.10883E+01,-0.10939E+01,-0.10993E+01,-0.11047E+01, & - &-0.11099E+01,-0.11152E+01,-0.11203E+01,-0.11254E+01,-0.11304E+01, & - &-0.11354E+01,-0.11403E+01,-0.11451E+01,-0.11499E+01,-0.11546E+01, & - &-0.11593E+01,-0.11639E+01,-0.11685E+01,-0.11730E+01,-0.11775E+01, & - &-0.11819E+01,-0.11863E+01,-0.11906E+01,-0.11949E+01,-0.11991E+01, & - &-0.12033E+01,-0.12075E+01,-0.12116E+01,-0.12156E+01,-0.12197E+01, & - &-0.12237E+01,-0.12276E+01,-0.12316E+01,-0.12355E+01,-0.12393E+01, & - &-0.12431E+01,-0.12469E+01,-0.12507E+01,-0.12544E+01,-0.12581E+01, & - &-0.12618E+01,-0.12654E+01,-0.12690E+01,-0.12726E+01,-0.12761E+01, & - &-0.12797E+01,-0.12831E+01,-0.12866E+01,-0.12901E+01,-0.12935E+01, & - &-0.12969E+01,-0.13002E+01,-0.13036E+01,-0.13069E+01,-0.13102E+01, & - &-0.13135E+01,-0.13167E+01,-0.13200E+01,-0.13232E+01,-0.13264E+01, & - &-0.13295E+01,-0.13327E+01,-0.13358E+01,-0.13389E+01,-0.13420E+01, & - &-0.13451E+01,-0.13481E+01,-0.13512E+01,-0.13542E+01,-0.13572E+01, & - &-0.13601E+01,-0.13631E+01,-0.13661E+01,-0.13690E+01,-0.13719E+01, & - &-0.13748E+01,-0.13777E+01,-0.13806E+01,-0.13834E+01,-0.13863E+01, & - &-0.13891E+01,-0.13919E+01,-0.13947E+01,-0.13975E+01,-0.14002E+01, & - &-0.14030E+01,-0.14057E+01,-0.14085E+01,-0.14112E+01,-0.14139E+01, & - &-0.14166E+01,-0.14192E+01,-0.14219E+01,-0.14246E+01,-0.14272E+01, & - &-0.14298E+01,-0.14325E+01,-0.14351E+01,-0.14377E+01,-0.14402E+01/ - - DATA (BNC05M(I),I=701,741)/ & - &-0.14428E+01,-0.14454E+01,-0.14479E+01,-0.14505E+01,-0.14530E+01, & - &-0.14555E+01,-0.14581E+01,-0.14606E+01,-0.14631E+01,-0.14655E+01, & - &-0.14680E+01,-0.14705E+01,-0.14729E+01,-0.14754E+01,-0.14778E+01, & - &-0.14803E+01,-0.14827E+01,-0.14851E+01,-0.14875E+01,-0.14899E+01, & - &-0.14923E+01,-0.14947E+01,-0.14970E+01,-0.14994E+01,-0.15017E+01, & - &-0.15041E+01,-0.15064E+01,-0.15088E+01,-0.15111E+01,-0.15134E+01, & - &-0.15157E+01,-0.15180E+01,-0.15203E+01,-0.15226E+01,-0.15249E+01, & - &-0.15272E+01,-0.15294E+01,-0.15317E+01,-0.15340E+01,-0.15362E+01, & - &-0.15385E+01 & - & / -! -! *** NH4Cl -! - DATA (BNC06M(I),I=1,100)/ & - &-0.47150E-01,-0.10066E+00,-0.12632E+00,-0.14389E+00,-0.15726E+00, & - &-0.16803E+00,-0.17700E+00,-0.18464E+00,-0.19127E+00,-0.19709E+00, & - &-0.20226E+00,-0.20689E+00,-0.21106E+00,-0.21484E+00,-0.21828E+00, & - &-0.22143E+00,-0.22432E+00,-0.22698E+00,-0.22943E+00,-0.23171E+00, & - &-0.23382E+00,-0.23578E+00,-0.23761E+00,-0.23932E+00,-0.24091E+00, & - &-0.24240E+00,-0.24380E+00,-0.24511E+00,-0.24634E+00,-0.24750E+00, & - &-0.24859E+00,-0.24961E+00,-0.25058E+00,-0.25149E+00,-0.25235E+00, & - &-0.25316E+00,-0.25393E+00,-0.25466E+00,-0.25535E+00,-0.25600E+00, & - &-0.25662E+00,-0.25721E+00,-0.25776E+00,-0.25829E+00,-0.25879E+00, & - &-0.25927E+00,-0.25972E+00,-0.26015E+00,-0.26056E+00,-0.26095E+00, & - &-0.26132E+00,-0.26167E+00,-0.26201E+00,-0.26232E+00,-0.26262E+00, & - &-0.26291E+00,-0.26318E+00,-0.26344E+00,-0.26368E+00,-0.26391E+00, & - &-0.26412E+00,-0.26433E+00,-0.26452E+00,-0.26470E+00,-0.26486E+00, & - &-0.26502E+00,-0.26516E+00,-0.26529E+00,-0.26541E+00,-0.26552E+00, & - &-0.26562E+00,-0.26570E+00,-0.26578E+00,-0.26584E+00,-0.26589E+00, & - &-0.26594E+00,-0.26597E+00,-0.26599E+00,-0.26600E+00,-0.26600E+00, & - &-0.26598E+00,-0.26596E+00,-0.26593E+00,-0.26589E+00,-0.26583E+00, & - &-0.26577E+00,-0.26569E+00,-0.26561E+00,-0.26551E+00,-0.26541E+00, & - &-0.26529E+00,-0.26517E+00,-0.26504E+00,-0.26490E+00,-0.26474E+00, & - &-0.26458E+00,-0.26441E+00,-0.26424E+00,-0.26405E+00,-0.26386E+00/ - - DATA (BNC06M(I),I=101,200)/ & - &-0.26365E+00,-0.26345E+00,-0.26323E+00,-0.26300E+00,-0.26277E+00, & - &-0.26254E+00,-0.26229E+00,-0.26204E+00,-0.26179E+00,-0.26153E+00, & - &-0.26126E+00,-0.26099E+00,-0.26071E+00,-0.26043E+00,-0.26014E+00, & - &-0.25985E+00,-0.25955E+00,-0.25925E+00,-0.25895E+00,-0.25864E+00, & - &-0.25833E+00,-0.25802E+00,-0.25770E+00,-0.25738E+00,-0.25706E+00, & - &-0.25673E+00,-0.25640E+00,-0.25607E+00,-0.25574E+00,-0.25540E+00, & - &-0.25506E+00,-0.25472E+00,-0.25438E+00,-0.25404E+00,-0.25369E+00, & - &-0.25335E+00,-0.25300E+00,-0.25265E+00,-0.25230E+00,-0.25194E+00, & - &-0.25159E+00,-0.25123E+00,-0.25088E+00,-0.25052E+00,-0.25016E+00, & - &-0.24980E+00,-0.24944E+00,-0.24908E+00,-0.24872E+00,-0.24835E+00, & - &-0.24799E+00,-0.24762E+00,-0.24726E+00,-0.24689E+00,-0.24652E+00, & - &-0.24615E+00,-0.24578E+00,-0.24541E+00,-0.24504E+00,-0.24467E+00, & - &-0.24430E+00,-0.24393E+00,-0.24356E+00,-0.24318E+00,-0.24281E+00, & - &-0.24244E+00,-0.24206E+00,-0.24169E+00,-0.24131E+00,-0.24094E+00, & - &-0.24056E+00,-0.24019E+00,-0.23981E+00,-0.23943E+00,-0.23906E+00, & - &-0.23868E+00,-0.23830E+00,-0.23792E+00,-0.23755E+00,-0.23717E+00, & - &-0.23679E+00,-0.23641E+00,-0.23603E+00,-0.23566E+00,-0.23528E+00, & - &-0.23490E+00,-0.23452E+00,-0.23414E+00,-0.23376E+00,-0.23339E+00, & - &-0.23301E+00,-0.23263E+00,-0.23225E+00,-0.23187E+00,-0.23149E+00, & - &-0.23111E+00,-0.23073E+00,-0.23036E+00,-0.22998E+00,-0.22960E+00/ - - DATA (BNC06M(I),I=201,300)/ & - &-0.22922E+00,-0.22884E+00,-0.22847E+00,-0.22809E+00,-0.22771E+00, & - &-0.22733E+00,-0.22695E+00,-0.22658E+00,-0.22620E+00,-0.22582E+00, & - &-0.22545E+00,-0.22507E+00,-0.22469E+00,-0.22432E+00,-0.22394E+00, & - &-0.22357E+00,-0.22319E+00,-0.22282E+00,-0.22244E+00,-0.22207E+00, & - &-0.22169E+00,-0.22132E+00,-0.22094E+00,-0.22057E+00,-0.22020E+00, & - &-0.21982E+00,-0.21945E+00,-0.21908E+00,-0.21871E+00,-0.21833E+00, & - &-0.21796E+00,-0.21759E+00,-0.21722E+00,-0.21685E+00,-0.21648E+00, & - &-0.21611E+00,-0.21574E+00,-0.21537E+00,-0.21500E+00,-0.21463E+00, & - &-0.21426E+00,-0.21390E+00,-0.21353E+00,-0.21316E+00,-0.21280E+00, & - &-0.21243E+00,-0.21206E+00,-0.21170E+00,-0.21133E+00,-0.21097E+00, & - &-0.21060E+00,-0.21024E+00,-0.20987E+00,-0.20951E+00,-0.20915E+00, & - &-0.20879E+00,-0.20842E+00,-0.20806E+00,-0.20770E+00,-0.20734E+00, & - &-0.20698E+00,-0.20662E+00,-0.20626E+00,-0.20590E+00,-0.20554E+00, & - &-0.20518E+00,-0.20483E+00,-0.20447E+00,-0.20411E+00,-0.20376E+00, & - &-0.20340E+00,-0.20304E+00,-0.20269E+00,-0.20233E+00,-0.20198E+00, & - &-0.20163E+00,-0.20127E+00,-0.20092E+00,-0.20057E+00,-0.20022E+00, & - &-0.19986E+00,-0.19951E+00,-0.19916E+00,-0.19881E+00,-0.19846E+00, & - &-0.19811E+00,-0.19776E+00,-0.19742E+00,-0.19707E+00,-0.19672E+00, & - &-0.19637E+00,-0.19603E+00,-0.19568E+00,-0.19534E+00,-0.19499E+00, & - &-0.19465E+00,-0.19430E+00,-0.19396E+00,-0.19362E+00,-0.19327E+00/ - - DATA (BNC06M(I),I=301,400)/ & - &-0.19293E+00,-0.19259E+00,-0.19225E+00,-0.19191E+00,-0.19157E+00, & - &-0.19123E+00,-0.19089E+00,-0.19055E+00,-0.19021E+00,-0.18988E+00, & - &-0.18954E+00,-0.18920E+00,-0.18887E+00,-0.18853E+00,-0.18819E+00, & - &-0.18786E+00,-0.18752E+00,-0.18719E+00,-0.18686E+00,-0.18652E+00, & - &-0.18619E+00,-0.18586E+00,-0.18553E+00,-0.18520E+00,-0.18487E+00, & - &-0.18454E+00,-0.18421E+00,-0.18388E+00,-0.18355E+00,-0.18322E+00, & - &-0.18290E+00,-0.18257E+00,-0.18224E+00,-0.18192E+00,-0.18159E+00, & - &-0.18127E+00,-0.18094E+00,-0.18062E+00,-0.18029E+00,-0.17997E+00, & - &-0.17965E+00,-0.17933E+00,-0.17901E+00,-0.17868E+00,-0.17836E+00, & - &-0.17804E+00,-0.17772E+00,-0.17741E+00,-0.17709E+00,-0.17677E+00, & - &-0.17645E+00,-0.17613E+00,-0.17582E+00,-0.17550E+00,-0.17519E+00, & - &-0.17487E+00,-0.17456E+00,-0.17424E+00,-0.17393E+00,-0.17362E+00, & - &-0.17330E+00,-0.17299E+00,-0.17268E+00,-0.17237E+00,-0.17206E+00, & - &-0.17175E+00,-0.17144E+00,-0.17113E+00,-0.17082E+00,-0.17051E+00, & - &-0.17020E+00,-0.16990E+00,-0.16959E+00,-0.16928E+00,-0.16898E+00, & - &-0.16867E+00,-0.16837E+00,-0.16806E+00,-0.16776E+00,-0.16746E+00, & - &-0.16715E+00,-0.16685E+00,-0.16655E+00,-0.16625E+00,-0.16595E+00, & - &-0.16565E+00,-0.16535E+00,-0.16505E+00,-0.16475E+00,-0.16445E+00, & - &-0.16415E+00,-0.16385E+00,-0.16355E+00,-0.16326E+00,-0.16296E+00, & - &-0.16267E+00,-0.16237E+00,-0.16208E+00,-0.16178E+00,-0.16149E+00/ - - DATA (BNC06M(I),I=401,500)/ & - &-0.16119E+00,-0.16090E+00,-0.16061E+00,-0.16032E+00,-0.16003E+00, & - &-0.15973E+00,-0.15944E+00,-0.15915E+00,-0.15886E+00,-0.15858E+00, & - &-0.15829E+00,-0.15800E+00,-0.15771E+00,-0.15742E+00,-0.15714E+00, & - &-0.15685E+00,-0.15656E+00,-0.15628E+00,-0.15599E+00,-0.15571E+00, & - &-0.15543E+00,-0.15514E+00,-0.15486E+00,-0.15458E+00,-0.15429E+00, & - &-0.15401E+00,-0.15373E+00,-0.15345E+00,-0.15317E+00,-0.15289E+00, & - &-0.15261E+00,-0.15233E+00,-0.15205E+00,-0.15177E+00,-0.15150E+00, & - &-0.15122E+00,-0.15094E+00,-0.15067E+00,-0.15039E+00,-0.15012E+00, & - &-0.14984E+00,-0.14957E+00,-0.14929E+00,-0.14902E+00,-0.14875E+00, & - &-0.14847E+00,-0.14820E+00,-0.14793E+00,-0.14766E+00,-0.14739E+00, & - &-0.14712E+00,-0.14685E+00,-0.14658E+00,-0.14631E+00,-0.14604E+00, & - &-0.14577E+00,-0.14550E+00,-0.14523E+00,-0.14497E+00,-0.14470E+00, & - &-0.14443E+00,-0.14417E+00,-0.14390E+00,-0.14364E+00,-0.14337E+00, & - &-0.14311E+00,-0.14285E+00,-0.14258E+00,-0.14232E+00,-0.14206E+00, & - &-0.14180E+00,-0.14154E+00,-0.14127E+00,-0.14101E+00,-0.14075E+00, & - &-0.14049E+00,-0.14024E+00,-0.13998E+00,-0.13972E+00,-0.13946E+00, & - &-0.13920E+00,-0.13895E+00,-0.13869E+00,-0.13843E+00,-0.13818E+00, & - &-0.13792E+00,-0.13767E+00,-0.13741E+00,-0.13716E+00,-0.13690E+00, & - &-0.13665E+00,-0.13640E+00,-0.13614E+00,-0.13589E+00,-0.13564E+00, & - &-0.13539E+00,-0.13514E+00,-0.13489E+00,-0.13464E+00,-0.13439E+00/ - - DATA (BNC06M(I),I=501,600)/ & - &-0.13414E+00,-0.13389E+00,-0.13364E+00,-0.13339E+00,-0.13315E+00, & - &-0.13290E+00,-0.13265E+00,-0.13241E+00,-0.13216E+00,-0.13191E+00, & - &-0.13167E+00,-0.13142E+00,-0.13118E+00,-0.13094E+00,-0.13069E+00, & - &-0.13045E+00,-0.13021E+00,-0.12996E+00,-0.12972E+00,-0.12948E+00, & - &-0.12924E+00,-0.12900E+00,-0.12876E+00,-0.12852E+00,-0.12828E+00, & - &-0.12804E+00,-0.12780E+00,-0.12756E+00,-0.12732E+00,-0.12708E+00, & - &-0.12685E+00,-0.12661E+00,-0.12637E+00,-0.12614E+00,-0.12590E+00, & - &-0.12567E+00,-0.12543E+00,-0.12520E+00,-0.12496E+00,-0.12473E+00, & - &-0.12449E+00,-0.12426E+00,-0.12403E+00,-0.12380E+00,-0.12356E+00, & - &-0.12333E+00,-0.12310E+00,-0.12287E+00,-0.12264E+00,-0.12241E+00, & - &-0.12218E+00,-0.12195E+00,-0.12172E+00,-0.12149E+00,-0.12127E+00, & - &-0.12104E+00,-0.12081E+00,-0.12058E+00,-0.12036E+00,-0.12013E+00, & - &-0.11990E+00,-0.11968E+00,-0.11945E+00,-0.11923E+00,-0.11900E+00, & - &-0.11878E+00,-0.11856E+00,-0.11833E+00,-0.11811E+00,-0.11789E+00, & - &-0.11766E+00,-0.11744E+00,-0.11722E+00,-0.11700E+00,-0.11678E+00, & - &-0.11656E+00,-0.11634E+00,-0.11612E+00,-0.11590E+00,-0.11568E+00, & - &-0.11546E+00,-0.11524E+00,-0.11502E+00,-0.11481E+00,-0.11459E+00, & - &-0.11437E+00,-0.11416E+00,-0.11394E+00,-0.11372E+00,-0.11351E+00, & - &-0.11329E+00,-0.11308E+00,-0.11286E+00,-0.11265E+00,-0.11244E+00, & - &-0.11222E+00,-0.11201E+00,-0.11180E+00,-0.11158E+00,-0.11137E+00/ - - DATA (BNC06M(I),I=601,700)/ & - &-0.10910E+00,-0.10704E+00,-0.10500E+00,-0.10300E+00,-0.10104E+00, & - &-0.99099E-01,-0.97194E-01,-0.95319E-01,-0.93474E-01,-0.91659E-01, & - &-0.89872E-01,-0.88114E-01,-0.86385E-01,-0.84682E-01,-0.83007E-01, & - &-0.81358E-01,-0.79736E-01,-0.78139E-01,-0.76568E-01,-0.75022E-01, & - &-0.73500E-01,-0.72002E-01,-0.70529E-01,-0.69079E-01,-0.67651E-01, & - &-0.66247E-01,-0.64865E-01,-0.63505E-01,-0.62167E-01,-0.60850E-01, & - &-0.59554E-01,-0.58278E-01,-0.57024E-01,-0.55789E-01,-0.54574E-01, & - &-0.53379E-01,-0.52203E-01,-0.51046E-01,-0.49908E-01,-0.48788E-01, & - &-0.47686E-01,-0.46602E-01,-0.45536E-01,-0.44487E-01,-0.43456E-01, & - &-0.42441E-01,-0.41444E-01,-0.40462E-01,-0.39497E-01,-0.38548E-01, & - &-0.37615E-01,-0.36697E-01,-0.35795E-01,-0.34908E-01,-0.34037E-01, & - &-0.33180E-01,-0.32337E-01,-0.31509E-01,-0.30696E-01,-0.29896E-01, & - &-0.29110E-01,-0.28338E-01,-0.27580E-01,-0.26835E-01,-0.26103E-01, & - &-0.25384E-01,-0.24679E-01,-0.23985E-01,-0.23305E-01,-0.22637E-01, & - &-0.21981E-01,-0.21338E-01,-0.20706E-01,-0.20086E-01,-0.19478E-01, & - &-0.18882E-01,-0.18297E-01,-0.17724E-01,-0.17161E-01,-0.16610E-01, & - &-0.16070E-01,-0.15540E-01,-0.15021E-01,-0.14513E-01,-0.14015E-01, & - &-0.13528E-01,-0.13050E-01,-0.12583E-01,-0.12126E-01,-0.11679E-01, & - &-0.11242E-01,-0.10814E-01,-0.10396E-01,-0.99873E-02,-0.95881E-02, & - &-0.91981E-02,-0.88174E-02,-0.84457E-02,-0.80831E-02,-0.77293E-02/ - - DATA (BNC06M(I),I=701,741)/ & - &-0.73844E-02,-0.70483E-02,-0.67208E-02,-0.64018E-02,-0.60913E-02, & - &-0.57891E-02,-0.54953E-02,-0.52097E-02,-0.49322E-02,-0.46628E-02, & - &-0.44013E-02,-0.41478E-02,-0.39020E-02,-0.36640E-02,-0.34338E-02, & - &-0.32110E-02,-0.29958E-02,-0.27881E-02,-0.25878E-02,-0.23947E-02, & - &-0.22090E-02,-0.20303E-02,-0.18588E-02,-0.16944E-02,-0.15370E-02, & - &-0.13864E-02,-0.12427E-02,-0.11059E-02,-0.97561E-03,-0.85213E-03, & - &-0.73525E-03,-0.62493E-03,-0.52107E-03,-0.42366E-03,-0.33261E-03, & - &-0.24793E-03,-0.16947E-03,-0.97264E-04,-0.31222E-04, 0.28782E-04, & - & 0.82683E-04 & - & / -! -! *** (2H,SO4) -! - DATA (BNC07M(I),I=1,100)/ & - &-0.95410E-01,-0.20734E+00,-0.26314E+00,-0.30252E+00,-0.33337E+00, & - &-0.35888E+00,-0.38069E+00,-0.39978E+00,-0.41677E+00,-0.43209E+00, & - &-0.44604E+00,-0.45886E+00,-0.47072E+00,-0.48176E+00,-0.49209E+00, & - &-0.50179E+00,-0.51093E+00,-0.51959E+00,-0.52781E+00,-0.53563E+00, & - &-0.54309E+00,-0.55022E+00,-0.55706E+00,-0.56362E+00,-0.56993E+00, & - &-0.57600E+00,-0.58186E+00,-0.58752E+00,-0.59299E+00,-0.59828E+00, & - &-0.60341E+00,-0.60839E+00,-0.61322E+00,-0.61792E+00,-0.62249E+00, & - &-0.62693E+00,-0.63126E+00,-0.63549E+00,-0.63961E+00,-0.64363E+00, & - &-0.64755E+00,-0.65139E+00,-0.65514E+00,-0.65881E+00,-0.66240E+00, & - &-0.66592E+00,-0.66937E+00,-0.67275E+00,-0.67606E+00,-0.67931E+00, & - &-0.68250E+00,-0.68563E+00,-0.68871E+00,-0.69173E+00,-0.69470E+00, & - &-0.69762E+00,-0.70049E+00,-0.70331E+00,-0.70609E+00,-0.70883E+00, & - &-0.71153E+00,-0.71418E+00,-0.71680E+00,-0.71938E+00,-0.72192E+00, & - &-0.72442E+00,-0.72690E+00,-0.72933E+00,-0.73174E+00,-0.73412E+00, & - &-0.73646E+00,-0.73878E+00,-0.74107E+00,-0.74333E+00,-0.74556E+00, & - &-0.74777E+00,-0.74996E+00,-0.75212E+00,-0.75425E+00,-0.75636E+00, & - &-0.75845E+00,-0.76052E+00,-0.76257E+00,-0.76460E+00,-0.76661E+00, & - &-0.76859E+00,-0.77056E+00,-0.77251E+00,-0.77444E+00,-0.77636E+00, & - &-0.77826E+00,-0.78014E+00,-0.78200E+00,-0.78385E+00,-0.78568E+00, & - &-0.78750E+00,-0.78930E+00,-0.79109E+00,-0.79286E+00,-0.79462E+00/ - - DATA (BNC07M(I),I=101,200)/ & - &-0.79637E+00,-0.79810E+00,-0.79982E+00,-0.80152E+00,-0.80322E+00, & - &-0.80490E+00,-0.80657E+00,-0.80822E+00,-0.80987E+00,-0.81150E+00, & - &-0.81312E+00,-0.81473E+00,-0.81633E+00,-0.81791E+00,-0.81949E+00, & - &-0.82106E+00,-0.82261E+00,-0.82416E+00,-0.82569E+00,-0.82722E+00, & - &-0.82873E+00,-0.83024E+00,-0.83173E+00,-0.83322E+00,-0.83469E+00, & - &-0.83616E+00,-0.83762E+00,-0.83907E+00,-0.84051E+00,-0.84194E+00, & - &-0.84337E+00,-0.84478E+00,-0.84619E+00,-0.84759E+00,-0.84898E+00, & - &-0.85036E+00,-0.85174E+00,-0.85310E+00,-0.85446E+00,-0.85581E+00, & - &-0.85716E+00,-0.85850E+00,-0.85983E+00,-0.86115E+00,-0.86246E+00, & - &-0.86377E+00,-0.86507E+00,-0.86637E+00,-0.86766E+00,-0.86894E+00, & - &-0.87022E+00,-0.87148E+00,-0.87275E+00,-0.87400E+00,-0.87525E+00, & - &-0.87650E+00,-0.87774E+00,-0.87897E+00,-0.88020E+00,-0.88142E+00, & - &-0.88263E+00,-0.88384E+00,-0.88504E+00,-0.88624E+00,-0.88744E+00, & - &-0.88862E+00,-0.88980E+00,-0.89098E+00,-0.89215E+00,-0.89332E+00, & - &-0.89448E+00,-0.89564E+00,-0.89679E+00,-0.89794E+00,-0.89908E+00, & - &-0.90022E+00,-0.90135E+00,-0.90248E+00,-0.90360E+00,-0.90472E+00, & - &-0.90583E+00,-0.90694E+00,-0.90805E+00,-0.90915E+00,-0.91024E+00, & - &-0.91134E+00,-0.91242E+00,-0.91351E+00,-0.91459E+00,-0.91566E+00, & - &-0.91673E+00,-0.91780E+00,-0.91887E+00,-0.91993E+00,-0.92098E+00, & - &-0.92203E+00,-0.92308E+00,-0.92413E+00,-0.92517E+00,-0.92620E+00/ - - DATA (BNC07M(I),I=201,300)/ & - &-0.92724E+00,-0.92827E+00,-0.92929E+00,-0.93032E+00,-0.93134E+00, & - &-0.93235E+00,-0.93336E+00,-0.93437E+00,-0.93538E+00,-0.93638E+00, & - &-0.93738E+00,-0.93837E+00,-0.93937E+00,-0.94035E+00,-0.94134E+00, & - &-0.94232E+00,-0.94330E+00,-0.94428E+00,-0.94525E+00,-0.94622E+00, & - &-0.94719E+00,-0.94815E+00,-0.94912E+00,-0.95007E+00,-0.95103E+00, & - &-0.95198E+00,-0.95293E+00,-0.95388E+00,-0.95482E+00,-0.95576E+00, & - &-0.95670E+00,-0.95764E+00,-0.95857E+00,-0.95950E+00,-0.96043E+00, & - &-0.96135E+00,-0.96228E+00,-0.96320E+00,-0.96411E+00,-0.96503E+00, & - &-0.96594E+00,-0.96685E+00,-0.96776E+00,-0.96866E+00,-0.96956E+00, & - &-0.97046E+00,-0.97136E+00,-0.97226E+00,-0.97315E+00,-0.97404E+00, & - &-0.97493E+00,-0.97581E+00,-0.97670E+00,-0.97758E+00,-0.97845E+00, & - &-0.97933E+00,-0.98021E+00,-0.98108E+00,-0.98195E+00,-0.98281E+00, & - &-0.98368E+00,-0.98454E+00,-0.98540E+00,-0.98626E+00,-0.98712E+00, & - &-0.98798E+00,-0.98883E+00,-0.98968E+00,-0.99053E+00,-0.99137E+00, & - &-0.99222E+00,-0.99306E+00,-0.99390E+00,-0.99474E+00,-0.99558E+00, & - &-0.99641E+00,-0.99725E+00,-0.99808E+00,-0.99891E+00,-0.99973E+00, & - &-0.10006E+01,-0.10014E+01,-0.10022E+01,-0.10030E+01,-0.10038E+01, & - &-0.10047E+01,-0.10055E+01,-0.10063E+01,-0.10071E+01,-0.10079E+01, & - &-0.10087E+01,-0.10095E+01,-0.10103E+01,-0.10111E+01,-0.10119E+01, & - &-0.10127E+01,-0.10135E+01,-0.10143E+01,-0.10151E+01,-0.10159E+01/ - - DATA (BNC07M(I),I=301,400)/ & - &-0.10167E+01,-0.10175E+01,-0.10183E+01,-0.10191E+01,-0.10198E+01, & - &-0.10206E+01,-0.10214E+01,-0.10222E+01,-0.10230E+01,-0.10237E+01, & - &-0.10245E+01,-0.10253E+01,-0.10261E+01,-0.10268E+01,-0.10276E+01, & - &-0.10284E+01,-0.10291E+01,-0.10299E+01,-0.10307E+01,-0.10314E+01, & - &-0.10322E+01,-0.10329E+01,-0.10337E+01,-0.10344E+01,-0.10352E+01, & - &-0.10360E+01,-0.10367E+01,-0.10375E+01,-0.10382E+01,-0.10390E+01, & - &-0.10397E+01,-0.10404E+01,-0.10412E+01,-0.10419E+01,-0.10427E+01, & - &-0.10434E+01,-0.10442E+01,-0.10449E+01,-0.10456E+01,-0.10464E+01, & - &-0.10471E+01,-0.10478E+01,-0.10486E+01,-0.10493E+01,-0.10500E+01, & - &-0.10507E+01,-0.10515E+01,-0.10522E+01,-0.10529E+01,-0.10536E+01, & - &-0.10544E+01,-0.10551E+01,-0.10558E+01,-0.10565E+01,-0.10572E+01, & - &-0.10579E+01,-0.10587E+01,-0.10594E+01,-0.10601E+01,-0.10608E+01, & - &-0.10615E+01,-0.10622E+01,-0.10629E+01,-0.10636E+01,-0.10643E+01, & - &-0.10650E+01,-0.10657E+01,-0.10664E+01,-0.10671E+01,-0.10678E+01, & - &-0.10685E+01,-0.10692E+01,-0.10699E+01,-0.10706E+01,-0.10713E+01, & - &-0.10720E+01,-0.10727E+01,-0.10734E+01,-0.10741E+01,-0.10748E+01, & - &-0.10755E+01,-0.10761E+01,-0.10768E+01,-0.10775E+01,-0.10782E+01, & - &-0.10789E+01,-0.10796E+01,-0.10802E+01,-0.10809E+01,-0.10816E+01, & - &-0.10823E+01,-0.10830E+01,-0.10836E+01,-0.10843E+01,-0.10850E+01, & - &-0.10857E+01,-0.10863E+01,-0.10870E+01,-0.10877E+01,-0.10883E+01/ - - DATA (BNC07M(I),I=401,500)/ & - &-0.10890E+01,-0.10897E+01,-0.10903E+01,-0.10910E+01,-0.10917E+01, & - &-0.10923E+01,-0.10930E+01,-0.10937E+01,-0.10943E+01,-0.10950E+01, & - &-0.10956E+01,-0.10963E+01,-0.10970E+01,-0.10976E+01,-0.10983E+01, & - &-0.10989E+01,-0.10996E+01,-0.11002E+01,-0.11009E+01,-0.11015E+01, & - &-0.11022E+01,-0.11028E+01,-0.11035E+01,-0.11041E+01,-0.11048E+01, & - &-0.11054E+01,-0.11061E+01,-0.11067E+01,-0.11074E+01,-0.11080E+01, & - &-0.11086E+01,-0.11093E+01,-0.11099E+01,-0.11106E+01,-0.11112E+01, & - &-0.11118E+01,-0.11125E+01,-0.11131E+01,-0.11138E+01,-0.11144E+01, & - &-0.11150E+01,-0.11157E+01,-0.11163E+01,-0.11169E+01,-0.11176E+01, & - &-0.11182E+01,-0.11188E+01,-0.11195E+01,-0.11201E+01,-0.11207E+01, & - &-0.11213E+01,-0.11220E+01,-0.11226E+01,-0.11232E+01,-0.11238E+01, & - &-0.11245E+01,-0.11251E+01,-0.11257E+01,-0.11263E+01,-0.11270E+01, & - &-0.11276E+01,-0.11282E+01,-0.11288E+01,-0.11294E+01,-0.11300E+01, & - &-0.11307E+01,-0.11313E+01,-0.11319E+01,-0.11325E+01,-0.11331E+01, & - &-0.11337E+01,-0.11344E+01,-0.11350E+01,-0.11356E+01,-0.11362E+01, & - &-0.11368E+01,-0.11374E+01,-0.11380E+01,-0.11386E+01,-0.11392E+01, & - &-0.11398E+01,-0.11404E+01,-0.11410E+01,-0.11417E+01,-0.11423E+01, & - &-0.11429E+01,-0.11435E+01,-0.11441E+01,-0.11447E+01,-0.11453E+01, & - &-0.11459E+01,-0.11465E+01,-0.11471E+01,-0.11477E+01,-0.11483E+01, & - &-0.11489E+01,-0.11495E+01,-0.11501E+01,-0.11507E+01,-0.11512E+01/ - - DATA (BNC07M(I),I=501,600)/ & - &-0.11518E+01,-0.11524E+01,-0.11530E+01,-0.11536E+01,-0.11542E+01, & - &-0.11548E+01,-0.11554E+01,-0.11560E+01,-0.11566E+01,-0.11572E+01, & - &-0.11578E+01,-0.11583E+01,-0.11589E+01,-0.11595E+01,-0.11601E+01, & - &-0.11607E+01,-0.11613E+01,-0.11619E+01,-0.11624E+01,-0.11630E+01, & - &-0.11636E+01,-0.11642E+01,-0.11648E+01,-0.11654E+01,-0.11659E+01, & - &-0.11665E+01,-0.11671E+01,-0.11677E+01,-0.11683E+01,-0.11688E+01, & - &-0.11694E+01,-0.11700E+01,-0.11706E+01,-0.11711E+01,-0.11717E+01, & - &-0.11723E+01,-0.11729E+01,-0.11734E+01,-0.11740E+01,-0.11746E+01, & - &-0.11752E+01,-0.11757E+01,-0.11763E+01,-0.11769E+01,-0.11774E+01, & - &-0.11780E+01,-0.11786E+01,-0.11792E+01,-0.11797E+01,-0.11803E+01, & - &-0.11809E+01,-0.11814E+01,-0.11820E+01,-0.11826E+01,-0.11831E+01, & - &-0.11837E+01,-0.11842E+01,-0.11848E+01,-0.11854E+01,-0.11859E+01, & - &-0.11865E+01,-0.11871E+01,-0.11876E+01,-0.11882E+01,-0.11887E+01, & - &-0.11893E+01,-0.11899E+01,-0.11904E+01,-0.11910E+01,-0.11915E+01, & - &-0.11921E+01,-0.11927E+01,-0.11932E+01,-0.11938E+01,-0.11943E+01, & - &-0.11949E+01,-0.11954E+01,-0.11960E+01,-0.11965E+01,-0.11971E+01, & - &-0.11977E+01,-0.11982E+01,-0.11988E+01,-0.11993E+01,-0.11999E+01, & - &-0.12004E+01,-0.12010E+01,-0.12015E+01,-0.12021E+01,-0.12026E+01, & - &-0.12032E+01,-0.12037E+01,-0.12043E+01,-0.12048E+01,-0.12054E+01, & - &-0.12059E+01,-0.12065E+01,-0.12070E+01,-0.12075E+01,-0.12081E+01/ - - DATA (BNC07M(I),I=601,700)/ & - &-0.12140E+01,-0.12193E+01,-0.12247E+01,-0.12300E+01,-0.12353E+01, & - &-0.12405E+01,-0.12457E+01,-0.12509E+01,-0.12560E+01,-0.12611E+01, & - &-0.12662E+01,-0.12712E+01,-0.12763E+01,-0.12812E+01,-0.12862E+01, & - &-0.12911E+01,-0.12960E+01,-0.13009E+01,-0.13058E+01,-0.13106E+01, & - &-0.13154E+01,-0.13202E+01,-0.13250E+01,-0.13297E+01,-0.13344E+01, & - &-0.13391E+01,-0.13438E+01,-0.13484E+01,-0.13531E+01,-0.13577E+01, & - &-0.13623E+01,-0.13669E+01,-0.13714E+01,-0.13760E+01,-0.13805E+01, & - &-0.13850E+01,-0.13895E+01,-0.13940E+01,-0.13984E+01,-0.14029E+01, & - &-0.14073E+01,-0.14117E+01,-0.14161E+01,-0.14205E+01,-0.14249E+01, & - &-0.14292E+01,-0.14336E+01,-0.14379E+01,-0.14422E+01,-0.14465E+01, & - &-0.14508E+01,-0.14551E+01,-0.14593E+01,-0.14636E+01,-0.14678E+01, & - &-0.14720E+01,-0.14763E+01,-0.14805E+01,-0.14847E+01,-0.14888E+01, & - &-0.14930E+01,-0.14972E+01,-0.15013E+01,-0.15055E+01,-0.15096E+01, & - &-0.15137E+01,-0.15178E+01,-0.15219E+01,-0.15260E+01,-0.15301E+01, & - &-0.15341E+01,-0.15382E+01,-0.15423E+01,-0.15463E+01,-0.15503E+01, & - &-0.15544E+01,-0.15584E+01,-0.15624E+01,-0.15664E+01,-0.15704E+01, & - &-0.15744E+01,-0.15783E+01,-0.15823E+01,-0.15863E+01,-0.15902E+01, & - &-0.15941E+01,-0.15981E+01,-0.16020E+01,-0.16059E+01,-0.16098E+01, & - &-0.16138E+01,-0.16176E+01,-0.16215E+01,-0.16254E+01,-0.16293E+01, & - &-0.16332E+01,-0.16370E+01,-0.16409E+01,-0.16448E+01,-0.16486E+01/ - - DATA (BNC07M(I),I=701,741)/ & - &-0.16524E+01,-0.16563E+01,-0.16601E+01,-0.16639E+01,-0.16677E+01, & - &-0.16715E+01,-0.16753E+01,-0.16791E+01,-0.16829E+01,-0.16867E+01, & - &-0.16905E+01,-0.16943E+01,-0.16980E+01,-0.17018E+01,-0.17055E+01, & - &-0.17093E+01,-0.17130E+01,-0.17168E+01,-0.17205E+01,-0.17243E+01, & - &-0.17280E+01,-0.17317E+01,-0.17354E+01,-0.17391E+01,-0.17428E+01, & - &-0.17465E+01,-0.17502E+01,-0.17539E+01,-0.17576E+01,-0.17613E+01, & - &-0.17650E+01,-0.17686E+01,-0.17723E+01,-0.17760E+01,-0.17796E+01, & - &-0.17833E+01,-0.17869E+01,-0.17906E+01,-0.17942E+01,-0.17978E+01, & - &-0.18015E+01 & - & / -! -! *** (H,HSO4) -! - DATA (BNC08M(I),I=1,100)/ & - &-0.44732E-01,-0.88841E-01,-0.10667E+00,-0.11710E+00,-0.12376E+00, & - &-0.12807E+00,-0.13075E+00,-0.13222E+00,-0.13274E+00,-0.13249E+00, & - &-0.13160E+00,-0.13016E+00,-0.12825E+00,-0.12592E+00,-0.12321E+00, & - &-0.12016E+00,-0.11680E+00,-0.11316E+00,-0.10925E+00,-0.10509E+00, & - &-0.10070E+00,-0.96097E-01,-0.91288E-01,-0.86286E-01,-0.81100E-01, & - &-0.75739E-01,-0.70212E-01,-0.64527E-01,-0.58690E-01,-0.52709E-01, & - &-0.46590E-01,-0.40338E-01,-0.33960E-01,-0.27460E-01,-0.20845E-01, & - &-0.14118E-01,-0.72843E-02,-0.34872E-03, 0.66847E-02, 0.13812E-01, & - & 0.21029E-01, 0.28331E-01, 0.35716E-01, 0.43180E-01, 0.50719E-01, & - & 0.58331E-01, 0.66012E-01, 0.73759E-01, 0.81569E-01, 0.89441E-01, & - & 0.97371E-01, 0.10536E+00, 0.11340E+00, 0.12149E+00, 0.12963E+00, & - & 0.13783E+00, 0.14607E+00, 0.15435E+00, 0.16268E+00, 0.17106E+00, & - & 0.17947E+00, 0.18793E+00, 0.19643E+00, 0.20498E+00, 0.21356E+00, & - & 0.22219E+00, 0.23085E+00, 0.23956E+00, 0.24831E+00, 0.25710E+00, & - & 0.26593E+00, 0.27481E+00, 0.28372E+00, 0.29269E+00, 0.30169E+00, & - & 0.31074E+00, 0.31984E+00, 0.32898E+00, 0.33817E+00, 0.34741E+00, & - & 0.35669E+00, 0.36602E+00, 0.37541E+00, 0.38484E+00, 0.39432E+00, & - & 0.40385E+00, 0.41343E+00, 0.42306E+00, 0.43273E+00, 0.44246E+00, & - & 0.45224E+00, 0.46206E+00, 0.47193E+00, 0.48185E+00, 0.49181E+00, & - & 0.50182E+00, 0.51187E+00, 0.52196E+00, 0.53209E+00, 0.54227E+00/ - - DATA (BNC08M(I),I=101,200)/ & - & 0.55248E+00, 0.56272E+00, 0.57300E+00, 0.58331E+00, 0.59366E+00, & - & 0.60403E+00, 0.61442E+00, 0.62485E+00, 0.63529E+00, 0.64576E+00, & - & 0.65625E+00, 0.66675E+00, 0.67727E+00, 0.68780E+00, 0.69835E+00, & - & 0.70890E+00, 0.71946E+00, 0.73003E+00, 0.74061E+00, 0.75119E+00, & - & 0.76177E+00, 0.77235E+00, 0.78293E+00, 0.79351E+00, 0.80408E+00, & - & 0.81465E+00, 0.82522E+00, 0.83577E+00, 0.84633E+00, 0.85687E+00, & - & 0.86740E+00, 0.87792E+00, 0.88844E+00, 0.89894E+00, 0.90942E+00, & - & 0.91990E+00, 0.93036E+00, 0.94081E+00, 0.95124E+00, 0.96166E+00, & - & 0.97206E+00, 0.98244E+00, 0.99281E+00, 0.10032E+01, 0.10135E+01, & - & 0.10238E+01, 0.10341E+01, 0.10444E+01, 0.10547E+01, 0.10649E+01, & - & 0.10752E+01, 0.10854E+01, 0.10956E+01, 0.11057E+01, 0.11159E+01, & - & 0.11260E+01, 0.11361E+01, 0.11462E+01, 0.11563E+01, 0.11664E+01, & - & 0.11764E+01, 0.11864E+01, 0.11964E+01, 0.12064E+01, 0.12164E+01, & - & 0.12263E+01, 0.12362E+01, 0.12461E+01, 0.12560E+01, 0.12658E+01, & - & 0.12757E+01, 0.12855E+01, 0.12953E+01, 0.13051E+01, 0.13148E+01, & - & 0.13246E+01, 0.13343E+01, 0.13440E+01, 0.13536E+01, 0.13633E+01, & - & 0.13729E+01, 0.13825E+01, 0.13921E+01, 0.14017E+01, 0.14112E+01, & - & 0.14208E+01, 0.14303E+01, 0.14398E+01, 0.14492E+01, 0.14587E+01, & - & 0.14681E+01, 0.14775E+01, 0.14869E+01, 0.14963E+01, 0.15056E+01, & - & 0.15150E+01, 0.15243E+01, 0.15336E+01, 0.15428E+01, 0.15521E+01/ - - DATA (BNC08M(I),I=201,300)/ & - & 0.15613E+01, 0.15705E+01, 0.15797E+01, 0.15889E+01, 0.15980E+01, & - & 0.16071E+01, 0.16162E+01, 0.16253E+01, 0.16344E+01, 0.16434E+01, & - & 0.16525E+01, 0.16615E+01, 0.16705E+01, 0.16794E+01, 0.16884E+01, & - & 0.16973E+01, 0.17062E+01, 0.17151E+01, 0.17240E+01, 0.17328E+01, & - & 0.17417E+01, 0.17505E+01, 0.17593E+01, 0.17681E+01, 0.17768E+01, & - & 0.17855E+01, 0.17943E+01, 0.18030E+01, 0.18117E+01, 0.18203E+01, & - & 0.18290E+01, 0.18376E+01, 0.18462E+01, 0.18548E+01, 0.18634E+01, & - & 0.18719E+01, 0.18804E+01, 0.18890E+01, 0.18975E+01, 0.19059E+01, & - & 0.19144E+01, 0.19228E+01, 0.19313E+01, 0.19397E+01, 0.19481E+01, & - & 0.19564E+01, 0.19648E+01, 0.19731E+01, 0.19814E+01, 0.19897E+01, & - & 0.19980E+01, 0.20063E+01, 0.20145E+01, 0.20228E+01, 0.20310E+01, & - & 0.20392E+01, 0.20474E+01, 0.20555E+01, 0.20637E+01, 0.20718E+01, & - & 0.20799E+01, 0.20880E+01, 0.20961E+01, 0.21042E+01, 0.21122E+01, & - & 0.21202E+01, 0.21282E+01, 0.21362E+01, 0.21442E+01, 0.21522E+01, & - & 0.21601E+01, 0.21681E+01, 0.21760E+01, 0.21839E+01, 0.21917E+01, & - & 0.21996E+01, 0.22075E+01, 0.22153E+01, 0.22231E+01, 0.22309E+01, & - & 0.22387E+01, 0.22465E+01, 0.22542E+01, 0.22620E+01, 0.22697E+01, & - & 0.22774E+01, 0.22851E+01, 0.22928E+01, 0.23004E+01, 0.23081E+01, & - & 0.23157E+01, 0.23233E+01, 0.23309E+01, 0.23385E+01, 0.23461E+01, & - & 0.23536E+01, 0.23612E+01, 0.23687E+01, 0.23762E+01, 0.23837E+01/ - - DATA (BNC08M(I),I=301,400)/ & - & 0.23912E+01, 0.23987E+01, 0.24061E+01, 0.24135E+01, 0.24210E+01, & - & 0.24284E+01, 0.24358E+01, 0.24432E+01, 0.24505E+01, 0.24579E+01, & - & 0.24652E+01, 0.24725E+01, 0.24798E+01, 0.24871E+01, 0.24944E+01, & - & 0.25017E+01, 0.25089E+01, 0.25162E+01, 0.25234E+01, 0.25306E+01, & - & 0.25378E+01, 0.25450E+01, 0.25522E+01, 0.25593E+01, 0.25665E+01, & - & 0.25736E+01, 0.25807E+01, 0.25878E+01, 0.25949E+01, 0.26020E+01, & - & 0.26091E+01, 0.26161E+01, 0.26231E+01, 0.26302E+01, 0.26372E+01, & - & 0.26442E+01, 0.26512E+01, 0.26581E+01, 0.26651E+01, 0.26720E+01, & - & 0.26790E+01, 0.26859E+01, 0.26928E+01, 0.26997E+01, 0.27066E+01, & - & 0.27135E+01, 0.27203E+01, 0.27272E+01, 0.27340E+01, 0.27408E+01, & - & 0.27476E+01, 0.27544E+01, 0.27612E+01, 0.27680E+01, 0.27747E+01, & - & 0.27815E+01, 0.27882E+01, 0.27949E+01, 0.28016E+01, 0.28083E+01, & - & 0.28150E+01, 0.28217E+01, 0.28284E+01, 0.28350E+01, 0.28417E+01, & - & 0.28483E+01, 0.28549E+01, 0.28615E+01, 0.28681E+01, 0.28747E+01, & - & 0.28812E+01, 0.28878E+01, 0.28944E+01, 0.29009E+01, 0.29074E+01, & - & 0.29139E+01, 0.29204E+01, 0.29269E+01, 0.29334E+01, 0.29399E+01, & - & 0.29463E+01, 0.29528E+01, 0.29592E+01, 0.29656E+01, 0.29720E+01, & - & 0.29784E+01, 0.29848E+01, 0.29912E+01, 0.29976E+01, 0.30039E+01, & - & 0.30103E+01, 0.30166E+01, 0.30229E+01, 0.30292E+01, 0.30355E+01, & - & 0.30418E+01, 0.30481E+01, 0.30544E+01, 0.30607E+01, 0.30669E+01/ - - DATA (BNC08M(I),I=401,500)/ & - & 0.30731E+01, 0.30794E+01, 0.30856E+01, 0.30918E+01, 0.30980E+01, & - & 0.31042E+01, 0.31104E+01, 0.31165E+01, 0.31227E+01, 0.31288E+01, & - & 0.31350E+01, 0.31411E+01, 0.31472E+01, 0.31533E+01, 0.31594E+01, & - & 0.31655E+01, 0.31716E+01, 0.31777E+01, 0.31837E+01, 0.31898E+01, & - & 0.31958E+01, 0.32018E+01, 0.32078E+01, 0.32139E+01, 0.32198E+01, & - & 0.32258E+01, 0.32318E+01, 0.32378E+01, 0.32437E+01, 0.32497E+01, & - & 0.32556E+01, 0.32616E+01, 0.32675E+01, 0.32734E+01, 0.32793E+01, & - & 0.32852E+01, 0.32911E+01, 0.32970E+01, 0.33028E+01, 0.33087E+01, & - & 0.33145E+01, 0.33204E+01, 0.33262E+01, 0.33320E+01, 0.33378E+01, & - & 0.33436E+01, 0.33494E+01, 0.33552E+01, 0.33610E+01, 0.33667E+01, & - & 0.33725E+01, 0.33782E+01, 0.33840E+01, 0.33897E+01, 0.33954E+01, & - & 0.34011E+01, 0.34068E+01, 0.34125E+01, 0.34182E+01, 0.34239E+01, & - & 0.34296E+01, 0.34352E+01, 0.34409E+01, 0.34465E+01, 0.34521E+01, & - & 0.34578E+01, 0.34634E+01, 0.34690E+01, 0.34746E+01, 0.34802E+01, & - & 0.34858E+01, 0.34913E+01, 0.34969E+01, 0.35025E+01, 0.35080E+01, & - & 0.35135E+01, 0.35191E+01, 0.35246E+01, 0.35301E+01, 0.35356E+01, & - & 0.35411E+01, 0.35466E+01, 0.35521E+01, 0.35576E+01, 0.35630E+01, & - & 0.35685E+01, 0.35739E+01, 0.35794E+01, 0.35848E+01, 0.35902E+01, & - & 0.35957E+01, 0.36011E+01, 0.36065E+01, 0.36119E+01, 0.36173E+01, & - & 0.36226E+01, 0.36280E+01, 0.36334E+01, 0.36387E+01, 0.36441E+01/ - - DATA (BNC08M(I),I=501,600)/ & - & 0.36494E+01, 0.36547E+01, 0.36601E+01, 0.36654E+01, 0.36707E+01, & - & 0.36760E+01, 0.36813E+01, 0.36866E+01, 0.36918E+01, 0.36971E+01, & - & 0.37024E+01, 0.37076E+01, 0.37129E+01, 0.37181E+01, 0.37234E+01, & - & 0.37286E+01, 0.37338E+01, 0.37390E+01, 0.37442E+01, 0.37494E+01, & - & 0.37546E+01, 0.37598E+01, 0.37649E+01, 0.37701E+01, 0.37753E+01, & - & 0.37804E+01, 0.37856E+01, 0.37907E+01, 0.37958E+01, 0.38010E+01, & - & 0.38061E+01, 0.38112E+01, 0.38163E+01, 0.38214E+01, 0.38265E+01, & - & 0.38316E+01, 0.38366E+01, 0.38417E+01, 0.38468E+01, 0.38518E+01, & - & 0.38568E+01, 0.38619E+01, 0.38669E+01, 0.38719E+01, 0.38770E+01, & - & 0.38820E+01, 0.38870E+01, 0.38920E+01, 0.38970E+01, 0.39020E+01, & - & 0.39069E+01, 0.39119E+01, 0.39169E+01, 0.39218E+01, 0.39268E+01, & - & 0.39317E+01, 0.39366E+01, 0.39416E+01, 0.39465E+01, 0.39514E+01, & - & 0.39563E+01, 0.39612E+01, 0.39661E+01, 0.39710E+01, 0.39759E+01, & - & 0.39808E+01, 0.39857E+01, 0.39905E+01, 0.39954E+01, 0.40002E+01, & - & 0.40051E+01, 0.40099E+01, 0.40147E+01, 0.40196E+01, 0.40244E+01, & - & 0.40292E+01, 0.40340E+01, 0.40388E+01, 0.40436E+01, 0.40484E+01, & - & 0.40532E+01, 0.40579E+01, 0.40627E+01, 0.40675E+01, 0.40722E+01, & - & 0.40770E+01, 0.40817E+01, 0.40865E+01, 0.40912E+01, 0.40959E+01, & - & 0.41006E+01, 0.41054E+01, 0.41101E+01, 0.41148E+01, 0.41195E+01, & - & 0.41242E+01, 0.41288E+01, 0.41335E+01, 0.41382E+01, 0.41429E+01/ - - DATA (BNC08M(I),I=601,700)/ & - & 0.41929E+01, 0.42386E+01, 0.42837E+01, 0.43283E+01, 0.43723E+01, & - & 0.44159E+01, 0.44588E+01, 0.45013E+01, 0.45433E+01, 0.45849E+01, & - & 0.46259E+01, 0.46665E+01, 0.47066E+01, 0.47463E+01, 0.47856E+01, & - & 0.48244E+01, 0.48628E+01, 0.49008E+01, 0.49384E+01, 0.49757E+01, & - & 0.50125E+01, 0.50490E+01, 0.50851E+01, 0.51208E+01, 0.51562E+01, & - & 0.51912E+01, 0.52259E+01, 0.52603E+01, 0.52943E+01, 0.53280E+01, & - & 0.53614E+01, 0.53945E+01, 0.54273E+01, 0.54598E+01, 0.54919E+01, & - & 0.55238E+01, 0.55554E+01, 0.55868E+01, 0.56178E+01, 0.56486E+01, & - & 0.56791E+01, 0.57094E+01, 0.57394E+01, 0.57691E+01, 0.57986E+01, & - & 0.58279E+01, 0.58569E+01, 0.58856E+01, 0.59142E+01, 0.59425E+01, & - & 0.59705E+01, 0.59984E+01, 0.60260E+01, 0.60534E+01, 0.60807E+01, & - & 0.61076E+01, 0.61344E+01, 0.61610E+01, 0.61874E+01, 0.62136E+01, & - & 0.62396E+01, 0.62653E+01, 0.62909E+01, 0.63164E+01, 0.63416E+01, & - & 0.63666E+01, 0.63915E+01, 0.64162E+01, 0.64407E+01, 0.64650E+01, & - & 0.64892E+01, 0.65132E+01, 0.65370E+01, 0.65607E+01, 0.65842E+01, & - & 0.66076E+01, 0.66308E+01, 0.66538E+01, 0.66767E+01, 0.66994E+01, & - & 0.67220E+01, 0.67444E+01, 0.67667E+01, 0.67889E+01, 0.68108E+01, & - & 0.68327E+01, 0.68544E+01, 0.68760E+01, 0.68974E+01, 0.69188E+01, & - & 0.69399E+01, 0.69610E+01, 0.69819E+01, 0.70027E+01, 0.70233E+01, & - & 0.70439E+01, 0.70643E+01, 0.70846E+01, 0.71047E+01, 0.71248E+01/ - - DATA (BNC08M(I),I=701,741)/ & - & 0.71447E+01, 0.71645E+01, 0.71842E+01, 0.72038E+01, 0.72233E+01, & - & 0.72426E+01, 0.72619E+01, 0.72810E+01, 0.73000E+01, 0.73189E+01, & - & 0.73378E+01, 0.73565E+01, 0.73751E+01, 0.73936E+01, 0.74120E+01, & - & 0.74303E+01, 0.74484E+01, 0.74665E+01, 0.74845E+01, 0.75024E+01, & - & 0.75203E+01, 0.75380E+01, 0.75556E+01, 0.75731E+01, 0.75905E+01, & - & 0.76079E+01, 0.76251E+01, 0.76423E+01, 0.76593E+01, 0.76763E+01, & - & 0.76932E+01, 0.77100E+01, 0.77268E+01, 0.77434E+01, 0.77600E+01, & - & 0.77764E+01, 0.77928E+01, 0.78091E+01, 0.78253E+01, 0.78415E+01, & - & 0.78576E+01 & - & / -! -! *** NH4HSO4 -! - DATA (BNC09M(I),I=1,100)/ & - &-0.46818E-01,-0.99454E-01,-0.12468E+00,-0.14198E+00,-0.15520E+00, & - &-0.16586E+00,-0.17475E+00,-0.18233E+00,-0.18889E+00,-0.19464E+00, & - &-0.19972E+00,-0.20422E+00,-0.20825E+00,-0.21184E+00,-0.21507E+00, & - &-0.21797E+00,-0.22056E+00,-0.22288E+00,-0.22496E+00,-0.22681E+00, & - &-0.22844E+00,-0.22988E+00,-0.23114E+00,-0.23222E+00,-0.23314E+00, & - &-0.23391E+00,-0.23453E+00,-0.23502E+00,-0.23537E+00,-0.23559E+00, & - &-0.23570E+00,-0.23569E+00,-0.23557E+00,-0.23535E+00,-0.23502E+00, & - &-0.23460E+00,-0.23408E+00,-0.23348E+00,-0.23278E+00,-0.23200E+00, & - &-0.23115E+00,-0.23021E+00,-0.22920E+00,-0.22811E+00,-0.22696E+00, & - &-0.22574E+00,-0.22445E+00,-0.22310E+00,-0.22169E+00,-0.22023E+00, & - &-0.21870E+00,-0.21712E+00,-0.21549E+00,-0.21381E+00,-0.21207E+00, & - &-0.21029E+00,-0.20847E+00,-0.20660E+00,-0.20468E+00,-0.20272E+00, & - &-0.20073E+00,-0.19869E+00,-0.19661E+00,-0.19450E+00,-0.19235E+00, & - &-0.19016E+00,-0.18794E+00,-0.18569E+00,-0.18340E+00,-0.18107E+00, & - &-0.17872E+00,-0.17633E+00,-0.17392E+00,-0.17147E+00,-0.16899E+00, & - &-0.16648E+00,-0.16394E+00,-0.16137E+00,-0.15877E+00,-0.15614E+00, & - &-0.15349E+00,-0.15080E+00,-0.14809E+00,-0.14535E+00,-0.14259E+00, & - &-0.13979E+00,-0.13697E+00,-0.13413E+00,-0.13125E+00,-0.12836E+00, & - &-0.12544E+00,-0.12249E+00,-0.11952E+00,-0.11653E+00,-0.11351E+00, & - &-0.11047E+00,-0.10741E+00,-0.10433E+00,-0.10124E+00,-0.98117E-01/ - - DATA (BNC09M(I),I=101,200)/ & - &-0.94980E-01,-0.91826E-01,-0.88655E-01,-0.85469E-01,-0.82267E-01, & - &-0.79051E-01,-0.75822E-01,-0.72581E-01,-0.69327E-01,-0.66063E-01, & - &-0.62789E-01,-0.59505E-01,-0.56214E-01,-0.52914E-01,-0.49608E-01, & - &-0.46296E-01,-0.42978E-01,-0.39656E-01,-0.36329E-01,-0.33000E-01, & - &-0.29667E-01,-0.26333E-01,-0.22997E-01,-0.19660E-01,-0.16323E-01, & - &-0.12985E-01,-0.96483E-02,-0.63125E-02,-0.29780E-02, 0.35480E-03, & - & 0.36852E-02, 0.70134E-02, 0.10339E-01, 0.13661E-01, 0.16979E-01, & - & 0.20294E-01, 0.23605E-01, 0.26912E-01, 0.30214E-01, 0.33512E-01, & - & 0.36805E-01, 0.40093E-01, 0.43376E-01, 0.46653E-01, 0.49925E-01, & - & 0.53192E-01, 0.56453E-01, 0.59708E-01, 0.62957E-01, 0.66200E-01, & - & 0.69437E-01, 0.72668E-01, 0.75892E-01, 0.79111E-01, 0.82322E-01, & - & 0.85528E-01, 0.88727E-01, 0.91919E-01, 0.95104E-01, 0.98283E-01, & - & 0.10146E+00, 0.10462E+00, 0.10778E+00, 0.11093E+00, 0.11408E+00, & - & 0.11722E+00, 0.12035E+00, 0.12347E+00, 0.12659E+00, 0.12970E+00, & - & 0.13280E+00, 0.13590E+00, 0.13899E+00, 0.14207E+00, 0.14515E+00, & - & 0.14822E+00, 0.15128E+00, 0.15433E+00, 0.15738E+00, 0.16042E+00, & - & 0.16345E+00, 0.16648E+00, 0.16950E+00, 0.17251E+00, 0.17552E+00, & - & 0.17852E+00, 0.18151E+00, 0.18449E+00, 0.18747E+00, 0.19044E+00, & - & 0.19341E+00, 0.19636E+00, 0.19931E+00, 0.20226E+00, 0.20519E+00, & - & 0.20812E+00, 0.21104E+00, 0.21396E+00, 0.21687E+00, 0.21977E+00/ - - DATA (BNC09M(I),I=201,300)/ & - & 0.22266E+00, 0.22555E+00, 0.22843E+00, 0.23131E+00, 0.23418E+00, & - & 0.23704E+00, 0.23989E+00, 0.24274E+00, 0.24558E+00, 0.24842E+00, & - & 0.25124E+00, 0.25407E+00, 0.25688E+00, 0.25969E+00, 0.26249E+00, & - & 0.26529E+00, 0.26807E+00, 0.27086E+00, 0.27363E+00, 0.27640E+00, & - & 0.27917E+00, 0.28192E+00, 0.28467E+00, 0.28742E+00, 0.29015E+00, & - & 0.29288E+00, 0.29561E+00, 0.29833E+00, 0.30104E+00, 0.30375E+00, & - & 0.30645E+00, 0.30914E+00, 0.31183E+00, 0.31451E+00, 0.31719E+00, & - & 0.31986E+00, 0.32252E+00, 0.32518E+00, 0.32783E+00, 0.33048E+00, & - & 0.33312E+00, 0.33575E+00, 0.33838E+00, 0.34100E+00, 0.34362E+00, & - & 0.34623E+00, 0.34883E+00, 0.35143E+00, 0.35402E+00, 0.35661E+00, & - & 0.35919E+00, 0.36177E+00, 0.36434E+00, 0.36690E+00, 0.36946E+00, & - & 0.37201E+00, 0.37456E+00, 0.37710E+00, 0.37964E+00, 0.38217E+00, & - & 0.38470E+00, 0.38722E+00, 0.38973E+00, 0.39224E+00, 0.39474E+00, & - & 0.39724E+00, 0.39974E+00, 0.40222E+00, 0.40471E+00, 0.40718E+00, & - & 0.40966E+00, 0.41212E+00, 0.41458E+00, 0.41704E+00, 0.41949E+00, & - & 0.42194E+00, 0.42438E+00, 0.42681E+00, 0.42924E+00, 0.43167E+00, & - & 0.43409E+00, 0.43650E+00, 0.43891E+00, 0.44132E+00, 0.44372E+00, & - & 0.44611E+00, 0.44851E+00, 0.45089E+00, 0.45327E+00, 0.45565E+00, & - & 0.45802E+00, 0.46038E+00, 0.46274E+00, 0.46510E+00, 0.46745E+00, & - & 0.46980E+00, 0.47214E+00, 0.47448E+00, 0.47681E+00, 0.47914E+00/ - - DATA (BNC09M(I),I=301,400)/ & - & 0.48146E+00, 0.48378E+00, 0.48609E+00, 0.48840E+00, 0.49070E+00, & - & 0.49300E+00, 0.49530E+00, 0.49759E+00, 0.49988E+00, 0.50216E+00, & - & 0.50444E+00, 0.50671E+00, 0.50898E+00, 0.51124E+00, 0.51350E+00, & - & 0.51575E+00, 0.51800E+00, 0.52025E+00, 0.52249E+00, 0.52473E+00, & - & 0.52696E+00, 0.52919E+00, 0.53141E+00, 0.53363E+00, 0.53585E+00, & - & 0.53806E+00, 0.54027E+00, 0.54247E+00, 0.54467E+00, 0.54686E+00, & - & 0.54905E+00, 0.55124E+00, 0.55342E+00, 0.55560E+00, 0.55777E+00, & - & 0.55994E+00, 0.56211E+00, 0.56427E+00, 0.56643E+00, 0.56858E+00, & - & 0.57073E+00, 0.57288E+00, 0.57502E+00, 0.57715E+00, 0.57929E+00, & - & 0.58142E+00, 0.58354E+00, 0.58566E+00, 0.58778E+00, 0.58990E+00, & - & 0.59201E+00, 0.59411E+00, 0.59621E+00, 0.59831E+00, 0.60041E+00, & - & 0.60250E+00, 0.60458E+00, 0.60667E+00, 0.60874E+00, 0.61082E+00, & - & 0.61289E+00, 0.61496E+00, 0.61702E+00, 0.61908E+00, 0.62114E+00, & - & 0.62319E+00, 0.62524E+00, 0.62729E+00, 0.62933E+00, 0.63137E+00, & - & 0.63340E+00, 0.63544E+00, 0.63746E+00, 0.63949E+00, 0.64151E+00, & - & 0.64352E+00, 0.64554E+00, 0.64755E+00, 0.64955E+00, 0.65156E+00, & - & 0.65355E+00, 0.65555E+00, 0.65754E+00, 0.65953E+00, 0.66152E+00, & - & 0.66350E+00, 0.66548E+00, 0.66745E+00, 0.66942E+00, 0.67139E+00, & - & 0.67335E+00, 0.67532E+00, 0.67727E+00, 0.67923E+00, 0.68118E+00, & - & 0.68313E+00, 0.68507E+00, 0.68701E+00, 0.68895E+00, 0.69089E+00/ - - DATA (BNC09M(I),I=401,500)/ & - & 0.69282E+00, 0.69475E+00, 0.69667E+00, 0.69859E+00, 0.70051E+00, & - & 0.70243E+00, 0.70434E+00, 0.70625E+00, 0.70815E+00, 0.71005E+00, & - & 0.71195E+00, 0.71385E+00, 0.71574E+00, 0.71763E+00, 0.71952E+00, & - & 0.72140E+00, 0.72328E+00, 0.72516E+00, 0.72703E+00, 0.72890E+00, & - & 0.73077E+00, 0.73264E+00, 0.73450E+00, 0.73636E+00, 0.73821E+00, & - & 0.74006E+00, 0.74191E+00, 0.74376E+00, 0.74560E+00, 0.74745E+00, & - & 0.74928E+00, 0.75112E+00, 0.75295E+00, 0.75478E+00, 0.75660E+00, & - & 0.75843E+00, 0.76025E+00, 0.76206E+00, 0.76388E+00, 0.76569E+00, & - & 0.76750E+00, 0.76930E+00, 0.77110E+00, 0.77290E+00, 0.77470E+00, & - & 0.77649E+00, 0.77828E+00, 0.78007E+00, 0.78186E+00, 0.78364E+00, & - & 0.78542E+00, 0.78720E+00, 0.78897E+00, 0.79074E+00, 0.79251E+00, & - & 0.79428E+00, 0.79604E+00, 0.79780E+00, 0.79956E+00, 0.80131E+00, & - & 0.80306E+00, 0.80481E+00, 0.80656E+00, 0.80830E+00, 0.81005E+00, & - & 0.81178E+00, 0.81352E+00, 0.81525E+00, 0.81698E+00, 0.81871E+00, & - & 0.82044E+00, 0.82216E+00, 0.82388E+00, 0.82560E+00, 0.82731E+00, & - & 0.82902E+00, 0.83073E+00, 0.83244E+00, 0.83414E+00, 0.83585E+00, & - & 0.83754E+00, 0.83924E+00, 0.84093E+00, 0.84263E+00, 0.84431E+00, & - & 0.84600E+00, 0.84768E+00, 0.84937E+00, 0.85104E+00, 0.85272E+00, & - & 0.85439E+00, 0.85607E+00, 0.85773E+00, 0.85940E+00, 0.86106E+00, & - & 0.86273E+00, 0.86438E+00, 0.86604E+00, 0.86769E+00, 0.86935E+00/ - - DATA (BNC09M(I),I=501,600)/ & - & 0.87100E+00, 0.87264E+00, 0.87429E+00, 0.87593E+00, 0.87757E+00, & - & 0.87920E+00, 0.88084E+00, 0.88247E+00, 0.88410E+00, 0.88573E+00, & - & 0.88735E+00, 0.88898E+00, 0.89060E+00, 0.89221E+00, 0.89383E+00, & - & 0.89544E+00, 0.89705E+00, 0.89866E+00, 0.90027E+00, 0.90187E+00, & - & 0.90347E+00, 0.90507E+00, 0.90667E+00, 0.90827E+00, 0.90986E+00, & - & 0.91145E+00, 0.91304E+00, 0.91462E+00, 0.91621E+00, 0.91779E+00, & - & 0.91937E+00, 0.92094E+00, 0.92252E+00, 0.92409E+00, 0.92566E+00, & - & 0.92723E+00, 0.92879E+00, 0.93036E+00, 0.93192E+00, 0.93347E+00, & - & 0.93503E+00, 0.93659E+00, 0.93814E+00, 0.93969E+00, 0.94124E+00, & - & 0.94278E+00, 0.94433E+00, 0.94587E+00, 0.94741E+00, 0.94894E+00, & - & 0.95048E+00, 0.95201E+00, 0.95354E+00, 0.95507E+00, 0.95660E+00, & - & 0.95812E+00, 0.95965E+00, 0.96117E+00, 0.96269E+00, 0.96420E+00, & - & 0.96572E+00, 0.96723E+00, 0.96874E+00, 0.97025E+00, 0.97175E+00, & - & 0.97325E+00, 0.97476E+00, 0.97626E+00, 0.97775E+00, 0.97925E+00, & - & 0.98074E+00, 0.98223E+00, 0.98372E+00, 0.98521E+00, 0.98670E+00, & - & 0.98818E+00, 0.98966E+00, 0.99114E+00, 0.99262E+00, 0.99410E+00, & - & 0.99557E+00, 0.99704E+00, 0.99851E+00, 0.99998E+00, 0.10014E+01, & - & 0.10029E+01, 0.10044E+01, 0.10058E+01, 0.10073E+01, 0.10087E+01, & - & 0.10102E+01, 0.10116E+01, 0.10131E+01, 0.10145E+01, 0.10160E+01, & - & 0.10174E+01, 0.10189E+01, 0.10203E+01, 0.10218E+01, 0.10232E+01/ - - DATA (BNC09M(I),I=601,700)/ & - & 0.10386E+01, 0.10527E+01, 0.10666E+01, 0.10803E+01, 0.10938E+01, & - & 0.11072E+01, 0.11204E+01, 0.11334E+01, 0.11463E+01, 0.11591E+01, & - & 0.11717E+01, 0.11841E+01, 0.11964E+01, 0.12086E+01, 0.12206E+01, & - & 0.12325E+01, 0.12442E+01, 0.12558E+01, 0.12673E+01, 0.12787E+01, & - & 0.12900E+01, 0.13011E+01, 0.13121E+01, 0.13230E+01, 0.13338E+01, & - & 0.13444E+01, 0.13550E+01, 0.13655E+01, 0.13758E+01, 0.13860E+01, & - & 0.13962E+01, 0.14062E+01, 0.14162E+01, 0.14260E+01, 0.14358E+01, & - & 0.14454E+01, 0.14550E+01, 0.14645E+01, 0.14738E+01, 0.14831E+01, & - & 0.14924E+01, 0.15015E+01, 0.15105E+01, 0.15195E+01, 0.15284E+01, & - & 0.15372E+01, 0.15459E+01, 0.15545E+01, 0.15631E+01, 0.15716E+01, & - & 0.15800E+01, 0.15884E+01, 0.15966E+01, 0.16049E+01, 0.16130E+01, & - & 0.16211E+01, 0.16291E+01, 0.16370E+01, 0.16449E+01, 0.16527E+01, & - & 0.16604E+01, 0.16681E+01, 0.16757E+01, 0.16833E+01, 0.16908E+01, & - & 0.16982E+01, 0.17056E+01, 0.17129E+01, 0.17201E+01, 0.17273E+01, & - & 0.17345E+01, 0.17416E+01, 0.17486E+01, 0.17556E+01, 0.17626E+01, & - & 0.17694E+01, 0.17763E+01, 0.17830E+01, 0.17898E+01, 0.17964E+01, & - & 0.18031E+01, 0.18097E+01, 0.18162E+01, 0.18227E+01, 0.18291E+01, & - & 0.18355E+01, 0.18418E+01, 0.18481E+01, 0.18544E+01, 0.18606E+01, & - & 0.18668E+01, 0.18729E+01, 0.18790E+01, 0.18850E+01, 0.18910E+01, & - & 0.18970E+01, 0.19029E+01, 0.19088E+01, 0.19146E+01, 0.19204E+01/ - - DATA (BNC09M(I),I=701,741)/ & - & 0.19262E+01, 0.19319E+01, 0.19376E+01, 0.19432E+01, 0.19488E+01, & - & 0.19544E+01, 0.19599E+01, 0.19654E+01, 0.19709E+01, 0.19763E+01, & - & 0.19817E+01, 0.19871E+01, 0.19924E+01, 0.19977E+01, 0.20029E+01, & - & 0.20082E+01, 0.20133E+01, 0.20185E+01, 0.20236E+01, 0.20287E+01, & - & 0.20338E+01, 0.20388E+01, 0.20438E+01, 0.20488E+01, 0.20537E+01, & - & 0.20586E+01, 0.20635E+01, 0.20683E+01, 0.20731E+01, 0.20779E+01, & - & 0.20827E+01, 0.20874E+01, 0.20921E+01, 0.20968E+01, 0.21014E+01, & - & 0.21061E+01, 0.21107E+01, 0.21152E+01, 0.21198E+01, 0.21243E+01, & - & 0.21288E+01 & - & / -! -! *** (H,NO3) -! - DATA (BNC10M(I),I=1,100)/ & - &-0.46234E-01,-0.95802E-01,-0.11793E+00,-0.13215E+00,-0.14233E+00, & - &-0.14999E+00,-0.15592E+00,-0.16058E+00,-0.16428E+00,-0.16721E+00, & - &-0.16952E+00,-0.17131E+00,-0.17268E+00,-0.17367E+00,-0.17435E+00, & - &-0.17476E+00,-0.17493E+00,-0.17488E+00,-0.17465E+00,-0.17425E+00, & - &-0.17370E+00,-0.17301E+00,-0.17221E+00,-0.17129E+00,-0.17028E+00, & - &-0.16917E+00,-0.16799E+00,-0.16673E+00,-0.16540E+00,-0.16402E+00, & - &-0.16257E+00,-0.16108E+00,-0.15954E+00,-0.15796E+00,-0.15634E+00, & - &-0.15468E+00,-0.15300E+00,-0.15128E+00,-0.14954E+00,-0.14778E+00, & - &-0.14600E+00,-0.14419E+00,-0.14237E+00,-0.14054E+00,-0.13869E+00, & - &-0.13682E+00,-0.13495E+00,-0.13307E+00,-0.13117E+00,-0.12927E+00, & - &-0.12737E+00,-0.12545E+00,-0.12353E+00,-0.12160E+00,-0.11967E+00, & - &-0.11774E+00,-0.11579E+00,-0.11385E+00,-0.11190E+00,-0.10994E+00, & - &-0.10798E+00,-0.10601E+00,-0.10404E+00,-0.10206E+00,-0.10008E+00, & - &-0.98086E-01,-0.96089E-01,-0.94084E-01,-0.92071E-01,-0.90050E-01, & - &-0.88020E-01,-0.85981E-01,-0.83932E-01,-0.81872E-01,-0.79801E-01, & - &-0.77719E-01,-0.75624E-01,-0.73517E-01,-0.71397E-01,-0.69264E-01, & - &-0.67117E-01,-0.64955E-01,-0.62779E-01,-0.60589E-01,-0.58383E-01, & - &-0.56162E-01,-0.53926E-01,-0.51674E-01,-0.49406E-01,-0.47123E-01, & - &-0.44825E-01,-0.42510E-01,-0.40181E-01,-0.37837E-01,-0.35477E-01, & - &-0.33103E-01,-0.30715E-01,-0.28312E-01,-0.25896E-01,-0.23466E-01/ - - DATA (BNC10M(I),I=101,200)/ & - &-0.21024E-01,-0.18569E-01,-0.16103E-01,-0.13624E-01,-0.11135E-01, & - &-0.86356E-02,-0.61260E-02,-0.36070E-02,-0.10791E-02, 0.14571E-02, & - & 0.40011E-02, 0.65524E-02, 0.91106E-02, 0.11675E-01, 0.14245E-01, & - & 0.16820E-01, 0.19401E-01, 0.21985E-01, 0.24574E-01, 0.27166E-01, & - & 0.29761E-01, 0.32358E-01, 0.34958E-01, 0.37560E-01, 0.40164E-01, & - & 0.42768E-01, 0.45374E-01, 0.47981E-01, 0.50587E-01, 0.53194E-01, & - & 0.55801E-01, 0.58408E-01, 0.61014E-01, 0.63620E-01, 0.66224E-01, & - & 0.68828E-01, 0.71430E-01, 0.74031E-01, 0.76630E-01, 0.79228E-01, & - & 0.81824E-01, 0.84419E-01, 0.87011E-01, 0.89602E-01, 0.92190E-01, & - & 0.94776E-01, 0.97360E-01, 0.99941E-01, 0.10252E+00, 0.10510E+00, & - & 0.10767E+00, 0.11024E+00, 0.11281E+00, 0.11538E+00, 0.11794E+00, & - & 0.12050E+00, 0.12306E+00, 0.12562E+00, 0.12817E+00, 0.13072E+00, & - & 0.13327E+00, 0.13581E+00, 0.13835E+00, 0.14089E+00, 0.14342E+00, & - & 0.14595E+00, 0.14848E+00, 0.15101E+00, 0.15353E+00, 0.15605E+00, & - & 0.15857E+00, 0.16108E+00, 0.16359E+00, 0.16609E+00, 0.16860E+00, & - & 0.17110E+00, 0.17359E+00, 0.17609E+00, 0.17858E+00, 0.18106E+00, & - & 0.18355E+00, 0.18603E+00, 0.18850E+00, 0.19098E+00, 0.19345E+00, & - & 0.19591E+00, 0.19838E+00, 0.20084E+00, 0.20329E+00, 0.20574E+00, & - & 0.20819E+00, 0.21064E+00, 0.21308E+00, 0.21552E+00, 0.21795E+00, & - & 0.22039E+00, 0.22281E+00, 0.22524E+00, 0.22766E+00, 0.23008E+00/ - - DATA (BNC10M(I),I=201,300)/ & - & 0.23249E+00, 0.23490E+00, 0.23731E+00, 0.23971E+00, 0.24211E+00, & - & 0.24451E+00, 0.24690E+00, 0.24929E+00, 0.25167E+00, 0.25406E+00, & - & 0.25643E+00, 0.25881E+00, 0.26118E+00, 0.26355E+00, 0.26591E+00, & - & 0.26827E+00, 0.27063E+00, 0.27298E+00, 0.27533E+00, 0.27768E+00, & - & 0.28002E+00, 0.28236E+00, 0.28469E+00, 0.28702E+00, 0.28935E+00, & - & 0.29167E+00, 0.29399E+00, 0.29631E+00, 0.29862E+00, 0.30093E+00, & - & 0.30324E+00, 0.30554E+00, 0.30784E+00, 0.31013E+00, 0.31242E+00, & - & 0.31471E+00, 0.31700E+00, 0.31928E+00, 0.32155E+00, 0.32383E+00, & - & 0.32610E+00, 0.32836E+00, 0.33062E+00, 0.33288E+00, 0.33514E+00, & - & 0.33739E+00, 0.33964E+00, 0.34188E+00, 0.34412E+00, 0.34636E+00, & - & 0.34859E+00, 0.35082E+00, 0.35305E+00, 0.35527E+00, 0.35749E+00, & - & 0.35971E+00, 0.36192E+00, 0.36413E+00, 0.36633E+00, 0.36854E+00, & - & 0.37073E+00, 0.37293E+00, 0.37512E+00, 0.37731E+00, 0.37949E+00, & - & 0.38167E+00, 0.38385E+00, 0.38602E+00, 0.38819E+00, 0.39036E+00, & - & 0.39252E+00, 0.39468E+00, 0.39683E+00, 0.39899E+00, 0.40113E+00, & - & 0.40328E+00, 0.40542E+00, 0.40756E+00, 0.40970E+00, 0.41183E+00, & - & 0.41395E+00, 0.41608E+00, 0.41820E+00, 0.42032E+00, 0.42243E+00, & - & 0.42454E+00, 0.42665E+00, 0.42875E+00, 0.43085E+00, 0.43295E+00, & - & 0.43505E+00, 0.43714E+00, 0.43922E+00, 0.44131E+00, 0.44339E+00, & - & 0.44546E+00, 0.44754E+00, 0.44961E+00, 0.45167E+00, 0.45374E+00/ - - DATA (BNC10M(I),I=301,400)/ & - & 0.45580E+00, 0.45786E+00, 0.45991E+00, 0.46196E+00, 0.46401E+00, & - & 0.46605E+00, 0.46809E+00, 0.47013E+00, 0.47216E+00, 0.47419E+00, & - & 0.47622E+00, 0.47824E+00, 0.48026E+00, 0.48228E+00, 0.48429E+00, & - & 0.48631E+00, 0.48831E+00, 0.49032E+00, 0.49232E+00, 0.49432E+00, & - & 0.49631E+00, 0.49830E+00, 0.50029E+00, 0.50228E+00, 0.50426E+00, & - & 0.50624E+00, 0.50821E+00, 0.51019E+00, 0.51216E+00, 0.51412E+00, & - & 0.51609E+00, 0.51805E+00, 0.52000E+00, 0.52196E+00, 0.52391E+00, & - & 0.52585E+00, 0.52780E+00, 0.52974E+00, 0.53168E+00, 0.53361E+00, & - & 0.53554E+00, 0.53747E+00, 0.53940E+00, 0.54132E+00, 0.54324E+00, & - & 0.54516E+00, 0.54707E+00, 0.54898E+00, 0.55089E+00, 0.55280E+00, & - & 0.55470E+00, 0.55660E+00, 0.55849E+00, 0.56038E+00, 0.56227E+00, & - & 0.56416E+00, 0.56605E+00, 0.56793E+00, 0.56980E+00, 0.57168E+00, & - & 0.57355E+00, 0.57542E+00, 0.57729E+00, 0.57915E+00, 0.58101E+00, & - & 0.58287E+00, 0.58472E+00, 0.58657E+00, 0.58842E+00, 0.59027E+00, & - & 0.59211E+00, 0.59395E+00, 0.59579E+00, 0.59762E+00, 0.59945E+00, & - & 0.60128E+00, 0.60311E+00, 0.60493E+00, 0.60675E+00, 0.60857E+00, & - & 0.61038E+00, 0.61219E+00, 0.61400E+00, 0.61581E+00, 0.61761E+00, & - & 0.61941E+00, 0.62121E+00, 0.62300E+00, 0.62480E+00, 0.62659E+00, & - & 0.62837E+00, 0.63016E+00, 0.63194E+00, 0.63372E+00, 0.63549E+00, & - & 0.63727E+00, 0.63904E+00, 0.64080E+00, 0.64257E+00, 0.64433E+00/ - - DATA (BNC10M(I),I=401,500)/ & - & 0.64609E+00, 0.64785E+00, 0.64960E+00, 0.65135E+00, 0.65310E+00, & - & 0.65485E+00, 0.65659E+00, 0.65833E+00, 0.66007E+00, 0.66181E+00, & - & 0.66354E+00, 0.66527E+00, 0.66700E+00, 0.66872E+00, 0.67044E+00, & - & 0.67216E+00, 0.67388E+00, 0.67560E+00, 0.67731E+00, 0.67902E+00, & - & 0.68073E+00, 0.68243E+00, 0.68413E+00, 0.68583E+00, 0.68753E+00, & - & 0.68922E+00, 0.69092E+00, 0.69260E+00, 0.69429E+00, 0.69598E+00, & - & 0.69766E+00, 0.69934E+00, 0.70101E+00, 0.70269E+00, 0.70436E+00, & - & 0.70603E+00, 0.70770E+00, 0.70936E+00, 0.71102E+00, 0.71268E+00, & - & 0.71434E+00, 0.71599E+00, 0.71765E+00, 0.71930E+00, 0.72094E+00, & - & 0.72259E+00, 0.72423E+00, 0.72587E+00, 0.72751E+00, 0.72914E+00, & - & 0.73078E+00, 0.73241E+00, 0.73404E+00, 0.73566E+00, 0.73729E+00, & - & 0.73891E+00, 0.74053E+00, 0.74214E+00, 0.74376E+00, 0.74537E+00, & - & 0.74698E+00, 0.74858E+00, 0.75019E+00, 0.75179E+00, 0.75339E+00, & - & 0.75499E+00, 0.75658E+00, 0.75818E+00, 0.75977E+00, 0.76136E+00, & - & 0.76294E+00, 0.76453E+00, 0.76611E+00, 0.76769E+00, 0.76927E+00, & - & 0.77084E+00, 0.77241E+00, 0.77398E+00, 0.77555E+00, 0.77712E+00, & - & 0.77868E+00, 0.78024E+00, 0.78180E+00, 0.78336E+00, 0.78492E+00, & - & 0.78647E+00, 0.78802E+00, 0.78957E+00, 0.79111E+00, 0.79266E+00, & - & 0.79420E+00, 0.79574E+00, 0.79728E+00, 0.79881E+00, 0.80034E+00, & - & 0.80188E+00, 0.80340E+00, 0.80493E+00, 0.80646E+00, 0.80798E+00/ - - DATA (BNC10M(I),I=501,600)/ & - & 0.80950E+00, 0.81102E+00, 0.81253E+00, 0.81405E+00, 0.81556E+00, & - & 0.81707E+00, 0.81858E+00, 0.82008E+00, 0.82158E+00, 0.82309E+00, & - & 0.82459E+00, 0.82608E+00, 0.82758E+00, 0.82907E+00, 0.83056E+00, & - & 0.83205E+00, 0.83354E+00, 0.83502E+00, 0.83651E+00, 0.83799E+00, & - & 0.83947E+00, 0.84094E+00, 0.84242E+00, 0.84389E+00, 0.84536E+00, & - & 0.84683E+00, 0.84830E+00, 0.84976E+00, 0.85122E+00, 0.85268E+00, & - & 0.85414E+00, 0.85560E+00, 0.85705E+00, 0.85851E+00, 0.85996E+00, & - & 0.86141E+00, 0.86285E+00, 0.86430E+00, 0.86574E+00, 0.86718E+00, & - & 0.86862E+00, 0.87006E+00, 0.87149E+00, 0.87293E+00, 0.87436E+00, & - & 0.87579E+00, 0.87721E+00, 0.87864E+00, 0.88006E+00, 0.88149E+00, & - & 0.88291E+00, 0.88432E+00, 0.88574E+00, 0.88715E+00, 0.88857E+00, & - & 0.88998E+00, 0.89139E+00, 0.89279E+00, 0.89420E+00, 0.89560E+00, & - & 0.89700E+00, 0.89840E+00, 0.89980E+00, 0.90119E+00, 0.90259E+00, & - & 0.90398E+00, 0.90537E+00, 0.90676E+00, 0.90814E+00, 0.90953E+00, & - & 0.91091E+00, 0.91229E+00, 0.91367E+00, 0.91505E+00, 0.91642E+00, & - & 0.91780E+00, 0.91917E+00, 0.92054E+00, 0.92191E+00, 0.92327E+00, & - & 0.92464E+00, 0.92600E+00, 0.92736E+00, 0.92872E+00, 0.93008E+00, & - & 0.93144E+00, 0.93279E+00, 0.93414E+00, 0.93549E+00, 0.93684E+00, & - & 0.93819E+00, 0.93954E+00, 0.94088E+00, 0.94222E+00, 0.94356E+00, & - & 0.94490E+00, 0.94624E+00, 0.94757E+00, 0.94891E+00, 0.95024E+00/ - - DATA (BNC10M(I),I=601,700)/ & - & 0.96452E+00, 0.97756E+00, 0.99045E+00, 0.10032E+01, 0.10157E+01, & - & 0.10282E+01, 0.10404E+01, 0.10525E+01, 0.10645E+01, 0.10763E+01, & - & 0.10880E+01, 0.10996E+01, 0.11110E+01, 0.11223E+01, 0.11335E+01, & - & 0.11445E+01, 0.11555E+01, 0.11663E+01, 0.11769E+01, 0.11875E+01, & - & 0.11980E+01, 0.12083E+01, 0.12185E+01, 0.12287E+01, 0.12387E+01, & - & 0.12486E+01, 0.12584E+01, 0.12681E+01, 0.12777E+01, 0.12872E+01, & - & 0.12967E+01, 0.13060E+01, 0.13152E+01, 0.13244E+01, 0.13334E+01, & - & 0.13424E+01, 0.13513E+01, 0.13601E+01, 0.13688E+01, 0.13774E+01, & - & 0.13860E+01, 0.13944E+01, 0.14028E+01, 0.14111E+01, 0.14194E+01, & - & 0.14275E+01, 0.14356E+01, 0.14437E+01, 0.14516E+01, 0.14595E+01, & - & 0.14673E+01, 0.14750E+01, 0.14827E+01, 0.14903E+01, 0.14978E+01, & - & 0.15053E+01, 0.15127E+01, 0.15201E+01, 0.15274E+01, 0.15346E+01, & - & 0.15418E+01, 0.15489E+01, 0.15559E+01, 0.15629E+01, 0.15698E+01, & - & 0.15767E+01, 0.15835E+01, 0.15903E+01, 0.15970E+01, 0.16037E+01, & - & 0.16103E+01, 0.16168E+01, 0.16233E+01, 0.16298E+01, 0.16362E+01, & - & 0.16425E+01, 0.16488E+01, 0.16551E+01, 0.16613E+01, 0.16675E+01, & - & 0.16736E+01, 0.16797E+01, 0.16857E+01, 0.16917E+01, 0.16976E+01, & - & 0.17035E+01, 0.17093E+01, 0.17152E+01, 0.17209E+01, 0.17266E+01, & - & 0.17323E+01, 0.17380E+01, 0.17436E+01, 0.17491E+01, 0.17546E+01, & - & 0.17601E+01, 0.17656E+01, 0.17710E+01, 0.17763E+01, 0.17817E+01/ - - DATA (BNC10M(I),I=701,741)/ & - & 0.17870E+01, 0.17922E+01, 0.17975E+01, 0.18026E+01, 0.18078E+01, & - & 0.18129E+01, 0.18180E+01, 0.18230E+01, 0.18281E+01, 0.18330E+01, & - & 0.18380E+01, 0.18429E+01, 0.18478E+01, 0.18526E+01, 0.18575E+01, & - & 0.18622E+01, 0.18670E+01, 0.18717E+01, 0.18764E+01, 0.18811E+01, & - & 0.18857E+01, 0.18903E+01, 0.18949E+01, 0.18994E+01, 0.19040E+01, & - & 0.19085E+01, 0.19129E+01, 0.19174E+01, 0.19218E+01, 0.19261E+01, & - & 0.19305E+01, 0.19348E+01, 0.19391E+01, 0.19434E+01, 0.19476E+01, & - & 0.19519E+01, 0.19560E+01, 0.19602E+01, 0.19644E+01, 0.19685E+01, & - & 0.19726E+01 & - & / -! -! *** (H,Cl) -! - DATA (BNC11M(I),I=1,100)/ & - &-0.45064E-01,-0.90047E-01,-0.10831E+00,-0.11900E+00,-0.12582E+00, & - &-0.13024E+00,-0.13300E+00,-0.13453E+00,-0.13511E+00,-0.13494E+00, & - &-0.13415E+00,-0.13283E+00,-0.13107E+00,-0.12891E+00,-0.12642E+00, & - &-0.12362E+00,-0.12056E+00,-0.11725E+00,-0.11372E+00,-0.10999E+00, & - &-0.10608E+00,-0.10200E+00,-0.97758E-01,-0.93378E-01,-0.88865E-01, & - &-0.84228E-01,-0.79477E-01,-0.74619E-01,-0.69661E-01,-0.64611E-01, & - &-0.59474E-01,-0.54257E-01,-0.48964E-01,-0.43600E-01,-0.38171E-01, & - &-0.32681E-01,-0.27134E-01,-0.21533E-01,-0.15883E-01,-0.10186E-01, & - &-0.44467E-02, 0.13329E-02, 0.71497E-02, 0.13001E-01, 0.18885E-01, & - & 0.24799E-01, 0.30740E-01, 0.36708E-01, 0.42700E-01, 0.48715E-01, & - & 0.54751E-01, 0.60806E-01, 0.66881E-01, 0.72974E-01, 0.79084E-01, & - & 0.85210E-01, 0.91353E-01, 0.97511E-01, 0.10368E+00, 0.10987E+00, & - & 0.11608E+00, 0.12230E+00, 0.12853E+00, 0.13478E+00, 0.14105E+00, & - & 0.14733E+00, 0.15364E+00, 0.15996E+00, 0.16629E+00, 0.17265E+00, & - & 0.17903E+00, 0.18544E+00, 0.19186E+00, 0.19831E+00, 0.20478E+00, & - & 0.21128E+00, 0.21781E+00, 0.22436E+00, 0.23094E+00, 0.23755E+00, & - & 0.24419E+00, 0.25087E+00, 0.25757E+00, 0.26430E+00, 0.27107E+00, & - & 0.27787E+00, 0.28471E+00, 0.29157E+00, 0.29847E+00, 0.30541E+00, & - & 0.31238E+00, 0.31938E+00, 0.32641E+00, 0.33348E+00, 0.34058E+00, & - & 0.34771E+00, 0.35487E+00, 0.36206E+00, 0.36928E+00, 0.37653E+00/ - - DATA (BNC11M(I),I=101,200)/ & - & 0.38380E+00, 0.39110E+00, 0.39843E+00, 0.40578E+00, 0.41315E+00, & - & 0.42054E+00, 0.42795E+00, 0.43539E+00, 0.44283E+00, 0.45030E+00, & - & 0.45778E+00, 0.46527E+00, 0.47278E+00, 0.48029E+00, 0.48782E+00, & - & 0.49535E+00, 0.50289E+00, 0.51044E+00, 0.51799E+00, 0.52555E+00, & - & 0.53310E+00, 0.54066E+00, 0.54823E+00, 0.55579E+00, 0.56335E+00, & - & 0.57091E+00, 0.57846E+00, 0.58602E+00, 0.59357E+00, 0.60111E+00, & - & 0.60865E+00, 0.61619E+00, 0.62371E+00, 0.63124E+00, 0.63875E+00, & - & 0.64626E+00, 0.65376E+00, 0.66125E+00, 0.66873E+00, 0.67620E+00, & - & 0.68366E+00, 0.69112E+00, 0.69856E+00, 0.70599E+00, 0.71342E+00, & - & 0.72083E+00, 0.72823E+00, 0.73562E+00, 0.74300E+00, 0.75037E+00, & - & 0.75773E+00, 0.76507E+00, 0.77241E+00, 0.77973E+00, 0.78704E+00, & - & 0.79434E+00, 0.80162E+00, 0.80890E+00, 0.81616E+00, 0.82341E+00, & - & 0.83065E+00, 0.83787E+00, 0.84508E+00, 0.85228E+00, 0.85947E+00, & - & 0.86664E+00, 0.87380E+00, 0.88095E+00, 0.88808E+00, 0.89520E+00, & - & 0.90231E+00, 0.90941E+00, 0.91649E+00, 0.92356E+00, 0.93062E+00, & - & 0.93766E+00, 0.94469E+00, 0.95171E+00, 0.95871E+00, 0.96570E+00, & - & 0.97268E+00, 0.97964E+00, 0.98659E+00, 0.99353E+00, 0.10005E+01, & - & 0.10074E+01, 0.10143E+01, 0.10211E+01, 0.10280E+01, 0.10349E+01, & - & 0.10417E+01, 0.10485E+01, 0.10554E+01, 0.10622E+01, 0.10690E+01, & - & 0.10757E+01, 0.10825E+01, 0.10892E+01, 0.10960E+01, 0.11027E+01/ - - DATA (BNC11M(I),I=201,300)/ & - & 0.11094E+01, 0.11161E+01, 0.11228E+01, 0.11295E+01, 0.11361E+01, & - & 0.11428E+01, 0.11494E+01, 0.11560E+01, 0.11626E+01, 0.11692E+01, & - & 0.11758E+01, 0.11823E+01, 0.11889E+01, 0.11954E+01, 0.12019E+01, & - & 0.12085E+01, 0.12150E+01, 0.12214E+01, 0.12279E+01, 0.12344E+01, & - & 0.12408E+01, 0.12472E+01, 0.12537E+01, 0.12601E+01, 0.12665E+01, & - & 0.12728E+01, 0.12792E+01, 0.12856E+01, 0.12919E+01, 0.12982E+01, & - & 0.13045E+01, 0.13109E+01, 0.13171E+01, 0.13234E+01, 0.13297E+01, & - & 0.13359E+01, 0.13422E+01, 0.13484E+01, 0.13546E+01, 0.13608E+01, & - & 0.13670E+01, 0.13732E+01, 0.13794E+01, 0.13855E+01, 0.13917E+01, & - & 0.13978E+01, 0.14039E+01, 0.14100E+01, 0.14161E+01, 0.14222E+01, & - & 0.14282E+01, 0.14343E+01, 0.14403E+01, 0.14464E+01, 0.14524E+01, & - & 0.14584E+01, 0.14644E+01, 0.14704E+01, 0.14763E+01, 0.14823E+01, & - & 0.14882E+01, 0.14942E+01, 0.15001E+01, 0.15060E+01, 0.15119E+01, & - & 0.15178E+01, 0.15237E+01, 0.15295E+01, 0.15354E+01, 0.15412E+01, & - & 0.15471E+01, 0.15529E+01, 0.15587E+01, 0.15645E+01, 0.15703E+01, & - & 0.15761E+01, 0.15818E+01, 0.15876E+01, 0.15933E+01, 0.15990E+01, & - & 0.16047E+01, 0.16105E+01, 0.16162E+01, 0.16218E+01, 0.16275E+01, & - & 0.16332E+01, 0.16388E+01, 0.16445E+01, 0.16501E+01, 0.16557E+01, & - & 0.16613E+01, 0.16669E+01, 0.16725E+01, 0.16781E+01, 0.16836E+01, & - & 0.16892E+01, 0.16947E+01, 0.17003E+01, 0.17058E+01, 0.17113E+01/ - - DATA (BNC11M(I),I=301,400)/ & - & 0.17168E+01, 0.17223E+01, 0.17278E+01, 0.17332E+01, 0.17387E+01, & - & 0.17441E+01, 0.17496E+01, 0.17550E+01, 0.17604E+01, 0.17658E+01, & - & 0.17712E+01, 0.17766E+01, 0.17820E+01, 0.17874E+01, 0.17927E+01, & - & 0.17981E+01, 0.18034E+01, 0.18087E+01, 0.18141E+01, 0.18194E+01, & - & 0.18247E+01, 0.18300E+01, 0.18352E+01, 0.18405E+01, 0.18458E+01, & - & 0.18510E+01, 0.18562E+01, 0.18615E+01, 0.18667E+01, 0.18719E+01, & - & 0.18771E+01, 0.18823E+01, 0.18875E+01, 0.18927E+01, 0.18978E+01, & - & 0.19030E+01, 0.19081E+01, 0.19132E+01, 0.19184E+01, 0.19235E+01, & - & 0.19286E+01, 0.19337E+01, 0.19388E+01, 0.19439E+01, 0.19489E+01, & - & 0.19540E+01, 0.19590E+01, 0.19641E+01, 0.19691E+01, 0.19741E+01, & - & 0.19792E+01, 0.19842E+01, 0.19892E+01, 0.19942E+01, 0.19991E+01, & - & 0.20041E+01, 0.20091E+01, 0.20140E+01, 0.20190E+01, 0.20239E+01, & - & 0.20288E+01, 0.20338E+01, 0.20387E+01, 0.20436E+01, 0.20485E+01, & - & 0.20533E+01, 0.20582E+01, 0.20631E+01, 0.20679E+01, 0.20728E+01, & - & 0.20776E+01, 0.20825E+01, 0.20873E+01, 0.20921E+01, 0.20969E+01, & - & 0.21017E+01, 0.21065E+01, 0.21113E+01, 0.21161E+01, 0.21209E+01, & - & 0.21256E+01, 0.21304E+01, 0.21351E+01, 0.21398E+01, 0.21446E+01, & - & 0.21493E+01, 0.21540E+01, 0.21587E+01, 0.21634E+01, 0.21681E+01, & - & 0.21728E+01, 0.21774E+01, 0.21821E+01, 0.21868E+01, 0.21914E+01, & - & 0.21960E+01, 0.22007E+01, 0.22053E+01, 0.22099E+01, 0.22145E+01/ - - DATA (BNC11M(I),I=401,500)/ & - & 0.22191E+01, 0.22237E+01, 0.22283E+01, 0.22329E+01, 0.22375E+01, & - & 0.22420E+01, 0.22466E+01, 0.22511E+01, 0.22557E+01, 0.22602E+01, & - & 0.22647E+01, 0.22693E+01, 0.22738E+01, 0.22783E+01, 0.22828E+01, & - & 0.22873E+01, 0.22917E+01, 0.22962E+01, 0.23007E+01, 0.23051E+01, & - & 0.23096E+01, 0.23140E+01, 0.23185E+01, 0.23229E+01, 0.23273E+01, & - & 0.23318E+01, 0.23362E+01, 0.23406E+01, 0.23450E+01, 0.23494E+01, & - & 0.23537E+01, 0.23581E+01, 0.23625E+01, 0.23668E+01, 0.23712E+01, & - & 0.23756E+01, 0.23799E+01, 0.23842E+01, 0.23886E+01, 0.23929E+01, & - & 0.23972E+01, 0.24015E+01, 0.24058E+01, 0.24101E+01, 0.24144E+01, & - & 0.24187E+01, 0.24229E+01, 0.24272E+01, 0.24315E+01, 0.24357E+01, & - & 0.24400E+01, 0.24442E+01, 0.24484E+01, 0.24527E+01, 0.24569E+01, & - & 0.24611E+01, 0.24653E+01, 0.24695E+01, 0.24737E+01, 0.24779E+01, & - & 0.24821E+01, 0.24862E+01, 0.24904E+01, 0.24946E+01, 0.24987E+01, & - & 0.25029E+01, 0.25070E+01, 0.25112E+01, 0.25153E+01, 0.25194E+01, & - & 0.25235E+01, 0.25276E+01, 0.25317E+01, 0.25358E+01, 0.25399E+01, & - & 0.25440E+01, 0.25481E+01, 0.25522E+01, 0.25563E+01, 0.25603E+01, & - & 0.25644E+01, 0.25684E+01, 0.25725E+01, 0.25765E+01, 0.25805E+01, & - & 0.25846E+01, 0.25886E+01, 0.25926E+01, 0.25966E+01, 0.26006E+01, & - & 0.26046E+01, 0.26086E+01, 0.26126E+01, 0.26166E+01, 0.26205E+01, & - & 0.26245E+01, 0.26285E+01, 0.26324E+01, 0.26364E+01, 0.26403E+01/ - - DATA (BNC11M(I),I=501,600)/ & - & 0.26443E+01, 0.26482E+01, 0.26521E+01, 0.26561E+01, 0.26600E+01, & - & 0.26639E+01, 0.26678E+01, 0.26717E+01, 0.26756E+01, 0.26795E+01, & - & 0.26834E+01, 0.26872E+01, 0.26911E+01, 0.26950E+01, 0.26988E+01, & - & 0.27027E+01, 0.27065E+01, 0.27104E+01, 0.27142E+01, 0.27181E+01, & - & 0.27219E+01, 0.27257E+01, 0.27295E+01, 0.27333E+01, 0.27371E+01, & - & 0.27409E+01, 0.27447E+01, 0.27485E+01, 0.27523E+01, 0.27561E+01, & - & 0.27599E+01, 0.27636E+01, 0.27674E+01, 0.27712E+01, 0.27749E+01, & - & 0.27787E+01, 0.27824E+01, 0.27861E+01, 0.27899E+01, 0.27936E+01, & - & 0.27973E+01, 0.28010E+01, 0.28048E+01, 0.28085E+01, 0.28122E+01, & - & 0.28159E+01, 0.28195E+01, 0.28232E+01, 0.28269E+01, 0.28306E+01, & - & 0.28343E+01, 0.28379E+01, 0.28416E+01, 0.28453E+01, 0.28489E+01, & - & 0.28525E+01, 0.28562E+01, 0.28598E+01, 0.28635E+01, 0.28671E+01, & - & 0.28707E+01, 0.28743E+01, 0.28779E+01, 0.28815E+01, 0.28851E+01, & - & 0.28887E+01, 0.28923E+01, 0.28959E+01, 0.28995E+01, 0.29031E+01, & - & 0.29067E+01, 0.29102E+01, 0.29138E+01, 0.29174E+01, 0.29209E+01, & - & 0.29245E+01, 0.29280E+01, 0.29315E+01, 0.29351E+01, 0.29386E+01, & - & 0.29421E+01, 0.29457E+01, 0.29492E+01, 0.29527E+01, 0.29562E+01, & - & 0.29597E+01, 0.29632E+01, 0.29667E+01, 0.29702E+01, 0.29737E+01, & - & 0.29772E+01, 0.29806E+01, 0.29841E+01, 0.29876E+01, 0.29910E+01, & - & 0.29945E+01, 0.29980E+01, 0.30014E+01, 0.30048E+01, 0.30083E+01/ - - DATA (BNC11M(I),I=601,700)/ & - & 0.30452E+01, 0.30789E+01, 0.31122E+01, 0.31450E+01, 0.31775E+01, & - & 0.32096E+01, 0.32413E+01, 0.32726E+01, 0.33035E+01, 0.33341E+01, & - & 0.33644E+01, 0.33943E+01, 0.34238E+01, 0.34531E+01, 0.34820E+01, & - & 0.35106E+01, 0.35389E+01, 0.35668E+01, 0.35945E+01, 0.36219E+01, & - & 0.36490E+01, 0.36759E+01, 0.37024E+01, 0.37287E+01, 0.37548E+01, & - & 0.37805E+01, 0.38061E+01, 0.38313E+01, 0.38564E+01, 0.38811E+01, & - & 0.39057E+01, 0.39300E+01, 0.39541E+01, 0.39780E+01, 0.40016E+01, & - & 0.40250E+01, 0.40483E+01, 0.40713E+01, 0.40941E+01, 0.41167E+01, & - & 0.41391E+01, 0.41613E+01, 0.41833E+01, 0.42051E+01, 0.42268E+01, & - & 0.42482E+01, 0.42695E+01, 0.42906E+01, 0.43116E+01, 0.43323E+01, & - & 0.43529E+01, 0.43733E+01, 0.43936E+01, 0.44137E+01, 0.44336E+01, & - & 0.44534E+01, 0.44730E+01, 0.44925E+01, 0.45118E+01, 0.45310E+01, & - & 0.45500E+01, 0.45689E+01, 0.45877E+01, 0.46063E+01, 0.46247E+01, & - & 0.46431E+01, 0.46613E+01, 0.46793E+01, 0.46973E+01, 0.47151E+01, & - & 0.47327E+01, 0.47503E+01, 0.47677E+01, 0.47850E+01, 0.48022E+01, & - & 0.48193E+01, 0.48362E+01, 0.48530E+01, 0.48698E+01, 0.48864E+01, & - & 0.49029E+01, 0.49192E+01, 0.49355E+01, 0.49517E+01, 0.49677E+01, & - & 0.49837E+01, 0.49995E+01, 0.50153E+01, 0.50309E+01, 0.50465E+01, & - & 0.50619E+01, 0.50773E+01, 0.50925E+01, 0.51077E+01, 0.51227E+01, & - & 0.51377E+01, 0.51526E+01, 0.51673E+01, 0.51820E+01, 0.51966E+01/ - - DATA (BNC11M(I),I=701,741)/ & - & 0.52112E+01, 0.52256E+01, 0.52399E+01, 0.52542E+01, 0.52683E+01, & - & 0.52824E+01, 0.52964E+01, 0.53104E+01, 0.53242E+01, 0.53380E+01, & - & 0.53516E+01, 0.53652E+01, 0.53788E+01, 0.53922E+01, 0.54056E+01, & - & 0.54189E+01, 0.54321E+01, 0.54453E+01, 0.54583E+01, 0.54713E+01, & - & 0.54843E+01, 0.54971E+01, 0.55099E+01, 0.55226E+01, 0.55353E+01, & - & 0.55479E+01, 0.55604E+01, 0.55729E+01, 0.55852E+01, 0.55976E+01, & - & 0.56098E+01, 0.56220E+01, 0.56341E+01, 0.56462E+01, 0.56582E+01, & - & 0.56701E+01, 0.56820E+01, 0.56938E+01, 0.57056E+01, 0.57173E+01, & - & 0.57289E+01 & - & / -! -! *** NaHSO4 -! - DATA (BNC12M(I),I=1,100)/ & - &-0.46075E-01,-0.95502E-01,-0.11783E+00,-0.13242E+00,-0.14301E+00, & - &-0.15113E+00,-0.15754E+00,-0.16269E+00,-0.16685E+00,-0.17024E+00, & - &-0.17298E+00,-0.17518E+00,-0.17692E+00,-0.17825E+00,-0.17923E+00, & - &-0.17990E+00,-0.18028E+00,-0.18041E+00,-0.18030E+00,-0.17998E+00, & - &-0.17946E+00,-0.17875E+00,-0.17788E+00,-0.17684E+00,-0.17565E+00, & - &-0.17433E+00,-0.17286E+00,-0.17128E+00,-0.16957E+00,-0.16775E+00, & - &-0.16581E+00,-0.16378E+00,-0.16165E+00,-0.15942E+00,-0.15710E+00, & - &-0.15470E+00,-0.15222E+00,-0.14965E+00,-0.14702E+00,-0.14431E+00, & - &-0.14153E+00,-0.13868E+00,-0.13577E+00,-0.13280E+00,-0.12977E+00, & - &-0.12669E+00,-0.12355E+00,-0.12036E+00,-0.11712E+00,-0.11383E+00, & - &-0.11049E+00,-0.10711E+00,-0.10369E+00,-0.10023E+00,-0.96726E-01, & - &-0.93185E-01,-0.89606E-01,-0.85990E-01,-0.82339E-01,-0.78653E-01, & - &-0.74934E-01,-0.71181E-01,-0.67397E-01,-0.63580E-01,-0.59732E-01, & - &-0.55853E-01,-0.51943E-01,-0.48003E-01,-0.44033E-01,-0.40032E-01, & - &-0.36001E-01,-0.31941E-01,-0.27850E-01,-0.23729E-01,-0.19578E-01, & - &-0.15397E-01,-0.11185E-01,-0.69434E-02,-0.26710E-02, 0.16320E-02, & - & 0.59656E-02, 0.10330E-01, 0.14725E-01, 0.19151E-01, 0.23607E-01, & - & 0.28093E-01, 0.32610E-01, 0.37158E-01, 0.41734E-01, 0.46341E-01, & - & 0.50976E-01, 0.55640E-01, 0.60333E-01, 0.65052E-01, 0.69799E-01, & - & 0.74572E-01, 0.79370E-01, 0.84193E-01, 0.89040E-01, 0.93910E-01/ - - DATA (BNC12M(I),I=101,200)/ & - & 0.98802E-01, 0.10371E+00, 0.10865E+00, 0.11360E+00, 0.11857E+00, & - & 0.12356E+00, 0.12856E+00, 0.13358E+00, 0.13861E+00, 0.14365E+00, & - & 0.14871E+00, 0.15378E+00, 0.15885E+00, 0.16394E+00, 0.16903E+00, & - & 0.17413E+00, 0.17923E+00, 0.18434E+00, 0.18945E+00, 0.19457E+00, & - & 0.19969E+00, 0.20481E+00, 0.20993E+00, 0.21505E+00, 0.22017E+00, & - & 0.22529E+00, 0.23040E+00, 0.23552E+00, 0.24063E+00, 0.24574E+00, & - & 0.25084E+00, 0.25594E+00, 0.26103E+00, 0.26612E+00, 0.27120E+00, & - & 0.27628E+00, 0.28135E+00, 0.28642E+00, 0.29148E+00, 0.29653E+00, & - & 0.30157E+00, 0.30661E+00, 0.31163E+00, 0.31665E+00, 0.32167E+00, & - & 0.32667E+00, 0.33167E+00, 0.33666E+00, 0.34163E+00, 0.34660E+00, & - & 0.35157E+00, 0.35652E+00, 0.36146E+00, 0.36640E+00, 0.37132E+00, & - & 0.37624E+00, 0.38115E+00, 0.38604E+00, 0.39093E+00, 0.39581E+00, & - & 0.40068E+00, 0.40554E+00, 0.41039E+00, 0.41523E+00, 0.42006E+00, & - & 0.42488E+00, 0.42970E+00, 0.43450E+00, 0.43929E+00, 0.44408E+00, & - & 0.44885E+00, 0.45361E+00, 0.45837E+00, 0.46311E+00, 0.46785E+00, & - & 0.47257E+00, 0.47729E+00, 0.48199E+00, 0.48669E+00, 0.49137E+00, & - & 0.49605E+00, 0.50072E+00, 0.50537E+00, 0.51002E+00, 0.51466E+00, & - & 0.51928E+00, 0.52390E+00, 0.52851E+00, 0.53311E+00, 0.53770E+00, & - & 0.54228E+00, 0.54684E+00, 0.55140E+00, 0.55595E+00, 0.56050E+00, & - & 0.56503E+00, 0.56955E+00, 0.57406E+00, 0.57856E+00, 0.58306E+00/ - - DATA (BNC12M(I),I=201,300)/ & - & 0.58754E+00, 0.59201E+00, 0.59648E+00, 0.60093E+00, 0.60538E+00, & - & 0.60982E+00, 0.61424E+00, 0.61866E+00, 0.62307E+00, 0.62747E+00, & - & 0.63186E+00, 0.63624E+00, 0.64061E+00, 0.64497E+00, 0.64933E+00, & - & 0.65367E+00, 0.65801E+00, 0.66233E+00, 0.66665E+00, 0.67096E+00, & - & 0.67525E+00, 0.67954E+00, 0.68383E+00, 0.68810E+00, 0.69236E+00, & - & 0.69662E+00, 0.70086E+00, 0.70510E+00, 0.70933E+00, 0.71354E+00, & - & 0.71776E+00, 0.72196E+00, 0.72615E+00, 0.73033E+00, 0.73451E+00, & - & 0.73868E+00, 0.74284E+00, 0.74699E+00, 0.75113E+00, 0.75526E+00, & - & 0.75939E+00, 0.76350E+00, 0.76761E+00, 0.77171E+00, 0.77580E+00, & - & 0.77989E+00, 0.78396E+00, 0.78803E+00, 0.79208E+00, 0.79614E+00, & - & 0.80018E+00, 0.80421E+00, 0.80824E+00, 0.81225E+00, 0.81626E+00, & - & 0.82027E+00, 0.82426E+00, 0.82825E+00, 0.83222E+00, 0.83619E+00, & - & 0.84015E+00, 0.84411E+00, 0.84805E+00, 0.85199E+00, 0.85592E+00, & - & 0.85985E+00, 0.86376E+00, 0.86767E+00, 0.87157E+00, 0.87546E+00, & - & 0.87935E+00, 0.88322E+00, 0.88709E+00, 0.89095E+00, 0.89481E+00, & - & 0.89866E+00, 0.90250E+00, 0.90633E+00, 0.91015E+00, 0.91397E+00, & - & 0.91778E+00, 0.92158E+00, 0.92538E+00, 0.92916E+00, 0.93295E+00, & - & 0.93672E+00, 0.94049E+00, 0.94424E+00, 0.94800E+00, 0.95174E+00, & - & 0.95548E+00, 0.95921E+00, 0.96293E+00, 0.96665E+00, 0.97036E+00, & - & 0.97406E+00, 0.97776E+00, 0.98145E+00, 0.98513E+00, 0.98880E+00/ - - DATA (BNC12M(I),I=301,400)/ & - & 0.99247E+00, 0.99613E+00, 0.99979E+00, 0.10034E+01, 0.10071E+01, & - & 0.10107E+01, 0.10143E+01, 0.10180E+01, 0.10216E+01, 0.10252E+01, & - & 0.10288E+01, 0.10324E+01, 0.10360E+01, 0.10395E+01, 0.10431E+01, & - & 0.10467E+01, 0.10502E+01, 0.10538E+01, 0.10573E+01, 0.10609E+01, & - & 0.10644E+01, 0.10680E+01, 0.10715E+01, 0.10750E+01, 0.10785E+01, & - & 0.10820E+01, 0.10855E+01, 0.10890E+01, 0.10925E+01, 0.10960E+01, & - & 0.10994E+01, 0.11029E+01, 0.11064E+01, 0.11098E+01, 0.11133E+01, & - & 0.11167E+01, 0.11201E+01, 0.11236E+01, 0.11270E+01, 0.11304E+01, & - & 0.11338E+01, 0.11372E+01, 0.11406E+01, 0.11440E+01, 0.11474E+01, & - & 0.11508E+01, 0.11542E+01, 0.11575E+01, 0.11609E+01, 0.11642E+01, & - & 0.11676E+01, 0.11709E+01, 0.11743E+01, 0.11776E+01, 0.11810E+01, & - & 0.11843E+01, 0.11876E+01, 0.11909E+01, 0.11942E+01, 0.11975E+01, & - & 0.12008E+01, 0.12041E+01, 0.12074E+01, 0.12107E+01, 0.12139E+01, & - & 0.12172E+01, 0.12205E+01, 0.12237E+01, 0.12270E+01, 0.12302E+01, & - & 0.12335E+01, 0.12367E+01, 0.12399E+01, 0.12431E+01, 0.12464E+01, & - & 0.12496E+01, 0.12528E+01, 0.12560E+01, 0.12592E+01, 0.12624E+01, & - & 0.12656E+01, 0.12687E+01, 0.12719E+01, 0.12751E+01, 0.12782E+01, & - & 0.12814E+01, 0.12846E+01, 0.12877E+01, 0.12909E+01, 0.12940E+01, & - & 0.12971E+01, 0.13003E+01, 0.13034E+01, 0.13065E+01, 0.13096E+01, & - & 0.13127E+01, 0.13158E+01, 0.13189E+01, 0.13220E+01, 0.13251E+01/ - - DATA (BNC12M(I),I=401,500)/ & - & 0.13282E+01, 0.13313E+01, 0.13343E+01, 0.13374E+01, 0.13405E+01, & - & 0.13435E+01, 0.13466E+01, 0.13496E+01, 0.13527E+01, 0.13557E+01, & - & 0.13588E+01, 0.13618E+01, 0.13648E+01, 0.13678E+01, 0.13708E+01, & - & 0.13739E+01, 0.13769E+01, 0.13799E+01, 0.13829E+01, 0.13858E+01, & - & 0.13888E+01, 0.13918E+01, 0.13948E+01, 0.13978E+01, 0.14007E+01, & - & 0.14037E+01, 0.14067E+01, 0.14096E+01, 0.14126E+01, 0.14155E+01, & - & 0.14184E+01, 0.14214E+01, 0.14243E+01, 0.14272E+01, 0.14302E+01, & - & 0.14331E+01, 0.14360E+01, 0.14389E+01, 0.14418E+01, 0.14447E+01, & - & 0.14476E+01, 0.14505E+01, 0.14534E+01, 0.14563E+01, 0.14591E+01, & - & 0.14620E+01, 0.14649E+01, 0.14678E+01, 0.14706E+01, 0.14735E+01, & - & 0.14763E+01, 0.14792E+01, 0.14820E+01, 0.14849E+01, 0.14877E+01, & - & 0.14905E+01, 0.14933E+01, 0.14962E+01, 0.14990E+01, 0.15018E+01, & - & 0.15046E+01, 0.15074E+01, 0.15102E+01, 0.15130E+01, 0.15158E+01, & - & 0.15186E+01, 0.15214E+01, 0.15242E+01, 0.15269E+01, 0.15297E+01, & - & 0.15325E+01, 0.15352E+01, 0.15380E+01, 0.15408E+01, 0.15435E+01, & - & 0.15463E+01, 0.15490E+01, 0.15517E+01, 0.15545E+01, 0.15572E+01, & - & 0.15599E+01, 0.15627E+01, 0.15654E+01, 0.15681E+01, 0.15708E+01, & - & 0.15735E+01, 0.15762E+01, 0.15789E+01, 0.15816E+01, 0.15843E+01, & - & 0.15870E+01, 0.15897E+01, 0.15924E+01, 0.15951E+01, 0.15977E+01, & - & 0.16004E+01, 0.16031E+01, 0.16057E+01, 0.16084E+01, 0.16110E+01/ - - DATA (BNC12M(I),I=501,600)/ & - & 0.16137E+01, 0.16163E+01, 0.16190E+01, 0.16216E+01, 0.16243E+01, & - & 0.16269E+01, 0.16295E+01, 0.16321E+01, 0.16348E+01, 0.16374E+01, & - & 0.16400E+01, 0.16426E+01, 0.16452E+01, 0.16478E+01, 0.16504E+01, & - & 0.16530E+01, 0.16556E+01, 0.16582E+01, 0.16608E+01, 0.16634E+01, & - & 0.16659E+01, 0.16685E+01, 0.16711E+01, 0.16736E+01, 0.16762E+01, & - & 0.16788E+01, 0.16813E+01, 0.16839E+01, 0.16864E+01, 0.16890E+01, & - & 0.16915E+01, 0.16940E+01, 0.16966E+01, 0.16991E+01, 0.17016E+01, & - & 0.17042E+01, 0.17067E+01, 0.17092E+01, 0.17117E+01, 0.17142E+01, & - & 0.17167E+01, 0.17192E+01, 0.17218E+01, 0.17242E+01, 0.17267E+01, & - & 0.17292E+01, 0.17317E+01, 0.17342E+01, 0.17367E+01, 0.17392E+01, & - & 0.17416E+01, 0.17441E+01, 0.17466E+01, 0.17490E+01, 0.17515E+01, & - & 0.17540E+01, 0.17564E+01, 0.17589E+01, 0.17613E+01, 0.17638E+01, & - & 0.17662E+01, 0.17686E+01, 0.17711E+01, 0.17735E+01, 0.17759E+01, & - & 0.17784E+01, 0.17808E+01, 0.17832E+01, 0.17856E+01, 0.17880E+01, & - & 0.17904E+01, 0.17929E+01, 0.17953E+01, 0.17977E+01, 0.18001E+01, & - & 0.18024E+01, 0.18048E+01, 0.18072E+01, 0.18096E+01, 0.18120E+01, & - & 0.18144E+01, 0.18167E+01, 0.18191E+01, 0.18215E+01, 0.18239E+01, & - & 0.18262E+01, 0.18286E+01, 0.18309E+01, 0.18333E+01, 0.18356E+01, & - & 0.18380E+01, 0.18403E+01, 0.18427E+01, 0.18450E+01, 0.18474E+01, & - & 0.18497E+01, 0.18520E+01, 0.18543E+01, 0.18567E+01, 0.18590E+01/ - - DATA (BNC12M(I),I=601,700)/ & - & 0.18839E+01, 0.19066E+01, 0.19291E+01, 0.19513E+01, 0.19732E+01, & - & 0.19949E+01, 0.20163E+01, 0.20374E+01, 0.20583E+01, 0.20790E+01, & - & 0.20994E+01, 0.21196E+01, 0.21396E+01, 0.21594E+01, 0.21789E+01, & - & 0.21982E+01, 0.22174E+01, 0.22363E+01, 0.22550E+01, 0.22735E+01, & - & 0.22918E+01, 0.23100E+01, 0.23279E+01, 0.23457E+01, 0.23633E+01, & - & 0.23807E+01, 0.23979E+01, 0.24150E+01, 0.24319E+01, 0.24487E+01, & - & 0.24653E+01, 0.24817E+01, 0.24980E+01, 0.25141E+01, 0.25301E+01, & - & 0.25459E+01, 0.25616E+01, 0.25771E+01, 0.25925E+01, 0.26078E+01, & - & 0.26229E+01, 0.26379E+01, 0.26527E+01, 0.26675E+01, 0.26821E+01, & - & 0.26965E+01, 0.27109E+01, 0.27251E+01, 0.27393E+01, 0.27532E+01, & - & 0.27671E+01, 0.27809E+01, 0.27945E+01, 0.28081E+01, 0.28215E+01, & - & 0.28349E+01, 0.28481E+01, 0.28612E+01, 0.28742E+01, 0.28871E+01, & - & 0.28999E+01, 0.29126E+01, 0.29252E+01, 0.29378E+01, 0.29502E+01, & - & 0.29625E+01, 0.29747E+01, 0.29869E+01, 0.29989E+01, 0.30109E+01, & - & 0.30228E+01, 0.30346E+01, 0.30463E+01, 0.30579E+01, 0.30694E+01, & - & 0.30809E+01, 0.30923E+01, 0.31036E+01, 0.31148E+01, 0.31259E+01, & - & 0.31370E+01, 0.31480E+01, 0.31589E+01, 0.31697E+01, 0.31805E+01, & - & 0.31912E+01, 0.32018E+01, 0.32123E+01, 0.32228E+01, 0.32332E+01, & - & 0.32436E+01, 0.32538E+01, 0.32640E+01, 0.32742E+01, 0.32842E+01, & - & 0.32943E+01, 0.33042E+01, 0.33141E+01, 0.33239E+01, 0.33336E+01/ - - DATA (BNC12M(I),I=701,741)/ & - & 0.33433E+01, 0.33530E+01, 0.33626E+01, 0.33721E+01, 0.33815E+01, & - & 0.33909E+01, 0.34003E+01, 0.34095E+01, 0.34188E+01, 0.34279E+01, & - & 0.34371E+01, 0.34461E+01, 0.34551E+01, 0.34641E+01, 0.34730E+01, & - & 0.34819E+01, 0.34906E+01, 0.34994E+01, 0.35081E+01, 0.35167E+01, & - & 0.35253E+01, 0.35339E+01, 0.35424E+01, 0.35508E+01, 0.35592E+01, & - & 0.35676E+01, 0.35759E+01, 0.35842E+01, 0.35924E+01, 0.36006E+01, & - & 0.36087E+01, 0.36168E+01, 0.36248E+01, 0.36328E+01, 0.36408E+01, & - & 0.36487E+01, 0.36565E+01, 0.36644E+01, 0.36721E+01, 0.36799E+01, & - & 0.36876E+01 & - & / -! -! *** (NH4)3H(SO4)2 -! - DATA (BNC13M(I),I=1,100)/ & - &-0.76088E-01,-0.16481E+00,-0.20885E+00,-0.23985E+00,-0.26408E+00, & - &-0.28407E+00,-0.30112E+00,-0.31600E+00,-0.32922E+00,-0.34109E+00, & - &-0.35188E+00,-0.36175E+00,-0.37084E+00,-0.37927E+00,-0.38712E+00, & - &-0.39445E+00,-0.40133E+00,-0.40781E+00,-0.41391E+00,-0.41968E+00, & - &-0.42515E+00,-0.43034E+00,-0.43528E+00,-0.43998E+00,-0.44445E+00, & - &-0.44873E+00,-0.45281E+00,-0.45671E+00,-0.46044E+00,-0.46402E+00, & - &-0.46744E+00,-0.47073E+00,-0.47388E+00,-0.47690E+00,-0.47980E+00, & - &-0.48259E+00,-0.48527E+00,-0.48784E+00,-0.49032E+00,-0.49270E+00, & - &-0.49498E+00,-0.49718E+00,-0.49930E+00,-0.50133E+00,-0.50329E+00, & - &-0.50517E+00,-0.50698E+00,-0.50872E+00,-0.51040E+00,-0.51201E+00, & - &-0.51356E+00,-0.51505E+00,-0.51648E+00,-0.51786E+00,-0.51919E+00, & - &-0.52046E+00,-0.52169E+00,-0.52287E+00,-0.52400E+00,-0.52508E+00, & - &-0.52613E+00,-0.52713E+00,-0.52809E+00,-0.52901E+00,-0.52989E+00, & - &-0.53074E+00,-0.53155E+00,-0.53233E+00,-0.53307E+00,-0.53378E+00, & - &-0.53446E+00,-0.53510E+00,-0.53572E+00,-0.53631E+00,-0.53686E+00, & - &-0.53739E+00,-0.53790E+00,-0.53837E+00,-0.53882E+00,-0.53924E+00, & - &-0.53964E+00,-0.54002E+00,-0.54036E+00,-0.54069E+00,-0.54099E+00, & - &-0.54128E+00,-0.54153E+00,-0.54177E+00,-0.54199E+00,-0.54218E+00, & - &-0.54236E+00,-0.54251E+00,-0.54265E+00,-0.54277E+00,-0.54287E+00, & - &-0.54295E+00,-0.54301E+00,-0.54306E+00,-0.54309E+00,-0.54310E+00/ - - DATA (BNC13M(I),I=101,200)/ & - &-0.54310E+00,-0.54309E+00,-0.54306E+00,-0.54301E+00,-0.54295E+00, & - &-0.54288E+00,-0.54279E+00,-0.54270E+00,-0.54259E+00,-0.54247E+00, & - &-0.54233E+00,-0.54219E+00,-0.54204E+00,-0.54188E+00,-0.54170E+00, & - &-0.54152E+00,-0.54133E+00,-0.54113E+00,-0.54092E+00,-0.54071E+00, & - &-0.54049E+00,-0.54026E+00,-0.54002E+00,-0.53978E+00,-0.53953E+00, & - &-0.53927E+00,-0.53901E+00,-0.53875E+00,-0.53848E+00,-0.53820E+00, & - &-0.53792E+00,-0.53763E+00,-0.53734E+00,-0.53705E+00,-0.53675E+00, & - &-0.53645E+00,-0.53614E+00,-0.53583E+00,-0.53552E+00,-0.53520E+00, & - &-0.53488E+00,-0.53456E+00,-0.53423E+00,-0.53391E+00,-0.53357E+00, & - &-0.53324E+00,-0.53291E+00,-0.53257E+00,-0.53223E+00,-0.53188E+00, & - &-0.53154E+00,-0.53119E+00,-0.53085E+00,-0.53050E+00,-0.53014E+00, & - &-0.52979E+00,-0.52944E+00,-0.52908E+00,-0.52872E+00,-0.52836E+00, & - &-0.52800E+00,-0.52764E+00,-0.52728E+00,-0.52691E+00,-0.52655E+00, & - &-0.52618E+00,-0.52582E+00,-0.52545E+00,-0.52508E+00,-0.52471E+00, & - &-0.52434E+00,-0.52397E+00,-0.52360E+00,-0.52323E+00,-0.52285E+00, & - &-0.52248E+00,-0.52211E+00,-0.52173E+00,-0.52136E+00,-0.52098E+00, & - &-0.52061E+00,-0.52023E+00,-0.51985E+00,-0.51948E+00,-0.51910E+00, & - &-0.51872E+00,-0.51834E+00,-0.51797E+00,-0.51759E+00,-0.51721E+00, & - &-0.51683E+00,-0.51646E+00,-0.51608E+00,-0.51570E+00,-0.51532E+00, & - &-0.51494E+00,-0.51456E+00,-0.51419E+00,-0.51381E+00,-0.51343E+00/ - - DATA (BNC13M(I),I=201,300)/ & - &-0.51305E+00,-0.51267E+00,-0.51230E+00,-0.51192E+00,-0.51154E+00, & - &-0.51116E+00,-0.51079E+00,-0.51041E+00,-0.51003E+00,-0.50966E+00, & - &-0.50928E+00,-0.50891E+00,-0.50853E+00,-0.50815E+00,-0.50778E+00, & - &-0.50740E+00,-0.50703E+00,-0.50666E+00,-0.50628E+00,-0.50591E+00, & - &-0.50554E+00,-0.50516E+00,-0.50479E+00,-0.50442E+00,-0.50405E+00, & - &-0.50368E+00,-0.50330E+00,-0.50293E+00,-0.50256E+00,-0.50219E+00, & - &-0.50183E+00,-0.50146E+00,-0.50109E+00,-0.50072E+00,-0.50035E+00, & - &-0.49999E+00,-0.49962E+00,-0.49925E+00,-0.49889E+00,-0.49852E+00, & - &-0.49816E+00,-0.49780E+00,-0.49743E+00,-0.49707E+00,-0.49671E+00, & - &-0.49634E+00,-0.49598E+00,-0.49562E+00,-0.49526E+00,-0.49490E+00, & - &-0.49454E+00,-0.49418E+00,-0.49383E+00,-0.49347E+00,-0.49311E+00, & - &-0.49275E+00,-0.49240E+00,-0.49204E+00,-0.49169E+00,-0.49133E+00, & - &-0.49098E+00,-0.49063E+00,-0.49028E+00,-0.48992E+00,-0.48957E+00, & - &-0.48922E+00,-0.48887E+00,-0.48852E+00,-0.48817E+00,-0.48782E+00, & - &-0.48748E+00,-0.48713E+00,-0.48678E+00,-0.48644E+00,-0.48609E+00, & - &-0.48575E+00,-0.48540E+00,-0.48506E+00,-0.48471E+00,-0.48437E+00, & - &-0.48403E+00,-0.48369E+00,-0.48335E+00,-0.48301E+00,-0.48267E+00, & - &-0.48233E+00,-0.48199E+00,-0.48165E+00,-0.48132E+00,-0.48098E+00, & - &-0.48065E+00,-0.48031E+00,-0.47998E+00,-0.47964E+00,-0.47931E+00, & - &-0.47898E+00,-0.47864E+00,-0.47831E+00,-0.47798E+00,-0.47765E+00/ - - DATA (BNC13M(I),I=301,400)/ & - &-0.47732E+00,-0.47699E+00,-0.47666E+00,-0.47634E+00,-0.47601E+00, & - &-0.47568E+00,-0.47536E+00,-0.47503E+00,-0.47471E+00,-0.47438E+00, & - &-0.47406E+00,-0.47374E+00,-0.47342E+00,-0.47309E+00,-0.47277E+00, & - &-0.47245E+00,-0.47213E+00,-0.47181E+00,-0.47150E+00,-0.47118E+00, & - &-0.47086E+00,-0.47055E+00,-0.47023E+00,-0.46991E+00,-0.46960E+00, & - &-0.46929E+00,-0.46897E+00,-0.46866E+00,-0.46835E+00,-0.46804E+00, & - &-0.46772E+00,-0.46741E+00,-0.46710E+00,-0.46680E+00,-0.46649E+00, & - &-0.46618E+00,-0.46587E+00,-0.46557E+00,-0.46526E+00,-0.46495E+00, & - &-0.46465E+00,-0.46435E+00,-0.46404E+00,-0.46374E+00,-0.46344E+00, & - &-0.46314E+00,-0.46283E+00,-0.46253E+00,-0.46223E+00,-0.46194E+00, & - &-0.46164E+00,-0.46134E+00,-0.46104E+00,-0.46074E+00,-0.46045E+00, & - &-0.46015E+00,-0.45986E+00,-0.45956E+00,-0.45927E+00,-0.45898E+00, & - &-0.45868E+00,-0.45839E+00,-0.45810E+00,-0.45781E+00,-0.45752E+00, & - &-0.45723E+00,-0.45694E+00,-0.45665E+00,-0.45637E+00,-0.45608E+00, & - &-0.45579E+00,-0.45551E+00,-0.45522E+00,-0.45494E+00,-0.45465E+00, & - &-0.45437E+00,-0.45409E+00,-0.45380E+00,-0.45352E+00,-0.45324E+00, & - &-0.45296E+00,-0.45268E+00,-0.45240E+00,-0.45212E+00,-0.45184E+00, & - &-0.45156E+00,-0.45129E+00,-0.45101E+00,-0.45074E+00,-0.45046E+00, & - &-0.45019E+00,-0.44991E+00,-0.44964E+00,-0.44936E+00,-0.44909E+00, & - &-0.44882E+00,-0.44855E+00,-0.44828E+00,-0.44801E+00,-0.44774E+00/ - - DATA (BNC13M(I),I=401,500)/ & - &-0.44747E+00,-0.44720E+00,-0.44693E+00,-0.44667E+00,-0.44640E+00, & - &-0.44613E+00,-0.44587E+00,-0.44560E+00,-0.44534E+00,-0.44507E+00, & - &-0.44481E+00,-0.44455E+00,-0.44428E+00,-0.44402E+00,-0.44376E+00, & - &-0.44350E+00,-0.44324E+00,-0.44298E+00,-0.44272E+00,-0.44246E+00, & - &-0.44221E+00,-0.44195E+00,-0.44169E+00,-0.44144E+00,-0.44118E+00, & - &-0.44093E+00,-0.44067E+00,-0.44042E+00,-0.44016E+00,-0.43991E+00, & - &-0.43966E+00,-0.43941E+00,-0.43916E+00,-0.43891E+00,-0.43866E+00, & - &-0.43841E+00,-0.43816E+00,-0.43791E+00,-0.43766E+00,-0.43741E+00, & - &-0.43717E+00,-0.43692E+00,-0.43667E+00,-0.43643E+00,-0.43618E+00, & - &-0.43594E+00,-0.43570E+00,-0.43545E+00,-0.43521E+00,-0.43497E+00, & - &-0.43473E+00,-0.43448E+00,-0.43424E+00,-0.43400E+00,-0.43376E+00, & - &-0.43353E+00,-0.43329E+00,-0.43305E+00,-0.43281E+00,-0.43257E+00, & - &-0.43234E+00,-0.43210E+00,-0.43187E+00,-0.43163E+00,-0.43140E+00, & - &-0.43116E+00,-0.43093E+00,-0.43070E+00,-0.43046E+00,-0.43023E+00, & - &-0.43000E+00,-0.42977E+00,-0.42954E+00,-0.42931E+00,-0.42908E+00, & - &-0.42885E+00,-0.42862E+00,-0.42840E+00,-0.42817E+00,-0.42794E+00, & - &-0.42772E+00,-0.42749E+00,-0.42727E+00,-0.42704E+00,-0.42682E+00, & - &-0.42659E+00,-0.42637E+00,-0.42615E+00,-0.42592E+00,-0.42570E+00, & - &-0.42548E+00,-0.42526E+00,-0.42504E+00,-0.42482E+00,-0.42460E+00, & - &-0.42438E+00,-0.42416E+00,-0.42394E+00,-0.42373E+00,-0.42351E+00/ - - DATA (BNC13M(I),I=501,600)/ & - &-0.42329E+00,-0.42308E+00,-0.42286E+00,-0.42265E+00,-0.42243E+00, & - &-0.42222E+00,-0.42200E+00,-0.42179E+00,-0.42158E+00,-0.42137E+00, & - &-0.42116E+00,-0.42094E+00,-0.42073E+00,-0.42052E+00,-0.42031E+00, & - &-0.42010E+00,-0.41989E+00,-0.41969E+00,-0.41948E+00,-0.41927E+00, & - &-0.41906E+00,-0.41886E+00,-0.41865E+00,-0.41844E+00,-0.41824E+00, & - &-0.41804E+00,-0.41783E+00,-0.41763E+00,-0.41742E+00,-0.41722E+00, & - &-0.41702E+00,-0.41682E+00,-0.41661E+00,-0.41641E+00,-0.41621E+00, & - &-0.41601E+00,-0.41581E+00,-0.41561E+00,-0.41541E+00,-0.41522E+00, & - &-0.41502E+00,-0.41482E+00,-0.41462E+00,-0.41443E+00,-0.41423E+00, & - &-0.41404E+00,-0.41384E+00,-0.41364E+00,-0.41345E+00,-0.41326E+00, & - &-0.41306E+00,-0.41287E+00,-0.41268E+00,-0.41249E+00,-0.41229E+00, & - &-0.41210E+00,-0.41191E+00,-0.41172E+00,-0.41153E+00,-0.41134E+00, & - &-0.41115E+00,-0.41096E+00,-0.41077E+00,-0.41059E+00,-0.41040E+00, & - &-0.41021E+00,-0.41003E+00,-0.40984E+00,-0.40965E+00,-0.40947E+00, & - &-0.40928E+00,-0.40910E+00,-0.40891E+00,-0.40873E+00,-0.40855E+00, & - &-0.40836E+00,-0.40818E+00,-0.40800E+00,-0.40782E+00,-0.40764E+00, & - &-0.40746E+00,-0.40728E+00,-0.40710E+00,-0.40692E+00,-0.40674E+00, & - &-0.40656E+00,-0.40638E+00,-0.40620E+00,-0.40603E+00,-0.40585E+00, & - &-0.40567E+00,-0.40550E+00,-0.40532E+00,-0.40514E+00,-0.40497E+00, & - &-0.40480E+00,-0.40462E+00,-0.40445E+00,-0.40427E+00,-0.40410E+00/ - - DATA (BNC13M(I),I=601,700)/ & - &-0.40226E+00,-0.40059E+00,-0.39896E+00,-0.39738E+00,-0.39582E+00, & - &-0.39431E+00,-0.39283E+00,-0.39138E+00,-0.38998E+00,-0.38860E+00, & - &-0.38726E+00,-0.38595E+00,-0.38467E+00,-0.38343E+00,-0.38221E+00, & - &-0.38103E+00,-0.37988E+00,-0.37876E+00,-0.37766E+00,-0.37660E+00, & - &-0.37556E+00,-0.37455E+00,-0.37357E+00,-0.37261E+00,-0.37169E+00, & - &-0.37078E+00,-0.36991E+00,-0.36906E+00,-0.36823E+00,-0.36743E+00, & - &-0.36665E+00,-0.36590E+00,-0.36516E+00,-0.36446E+00,-0.36377E+00, & - &-0.36311E+00,-0.36247E+00,-0.36185E+00,-0.36125E+00,-0.36067E+00, & - &-0.36012E+00,-0.35958E+00,-0.35907E+00,-0.35857E+00,-0.35809E+00, & - &-0.35764E+00,-0.35720E+00,-0.35678E+00,-0.35638E+00,-0.35600E+00, & - &-0.35563E+00,-0.35529E+00,-0.35496E+00,-0.35465E+00,-0.35435E+00, & - &-0.35407E+00,-0.35381E+00,-0.35357E+00,-0.35334E+00,-0.35313E+00, & - &-0.35293E+00,-0.35275E+00,-0.35258E+00,-0.35243E+00,-0.35229E+00, & - &-0.35217E+00,-0.35206E+00,-0.35197E+00,-0.35189E+00,-0.35183E+00, & - &-0.35178E+00,-0.35174E+00,-0.35172E+00,-0.35171E+00,-0.35171E+00, & - &-0.35173E+00,-0.35176E+00,-0.35180E+00,-0.35186E+00,-0.35193E+00, & - &-0.35201E+00,-0.35210E+00,-0.35220E+00,-0.35232E+00,-0.35245E+00, & - &-0.35258E+00,-0.35274E+00,-0.35290E+00,-0.35307E+00,-0.35326E+00, & - &-0.35345E+00,-0.35366E+00,-0.35387E+00,-0.35410E+00,-0.35434E+00, & - &-0.35459E+00,-0.35485E+00,-0.35512E+00,-0.35540E+00,-0.35569E+00/ - - DATA (BNC13M(I),I=701,741)/ & - &-0.35599E+00,-0.35629E+00,-0.35661E+00,-0.35694E+00,-0.35728E+00, & - &-0.35763E+00,-0.35798E+00,-0.35835E+00,-0.35872E+00,-0.35911E+00, & - &-0.35950E+00,-0.35990E+00,-0.36031E+00,-0.36073E+00,-0.36116E+00, & - &-0.36159E+00,-0.36204E+00,-0.36249E+00,-0.36295E+00,-0.36342E+00, & - &-0.36390E+00,-0.36438E+00,-0.36487E+00,-0.36537E+00,-0.36588E+00, & - &-0.36640E+00,-0.36692E+00,-0.36746E+00,-0.36799E+00,-0.36854E+00, & - &-0.36909E+00,-0.36966E+00,-0.37022E+00,-0.37080E+00,-0.37138E+00, & - &-0.37197E+00,-0.37257E+00,-0.37317E+00,-0.37378E+00,-0.37440E+00, & - &-0.37502E+00 & - & / - ENDBLOCKDATA KMCF273 diff --git a/src/arome/chem/internals/data_kmcf298a.F b/src/arome/chem/internals/data_kmcf298a.F deleted file mode 100644 index 045091c8d9cee20a5292ec145c4ebf2355554d5d..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/data_kmcf298a.F +++ /dev/null @@ -1,2218 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/data_kmcf298a.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:30 $ -!----------------------------------------------------------------- - -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA KMCF298A -! *** CONTAINS THE DATA FOR KUSSIK-MEISNER BINARY COEFFICIENT ARRAYS -! NEEDED IN SUBROUTINE KM -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA KMCF298 -! - IMPLICIT NONE -! -! *** Common block definition -! - INTEGER :: I - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M -! - COMMON /KMC298/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! -! *** NaCl -! - DATA (BNC01M(I),I=1,100)/ & - &-0.45329E-01,-0.94600E-01,-0.11698E+00,-0.13161E+00,-0.14224E+00, & - &-0.15040E+00,-0.15685E+00,-0.16205E+00,-0.16630E+00,-0.16979E+00, & - &-0.17267E+00,-0.17504E+00,-0.17699E+00,-0.17857E+00,-0.17984E+00, & - &-0.18084E+00,-0.18160E+00,-0.18215E+00,-0.18251E+00,-0.18271E+00, & - &-0.18276E+00,-0.18267E+00,-0.18247E+00,-0.18215E+00,-0.18174E+00, & - &-0.18124E+00,-0.18065E+00,-0.17999E+00,-0.17926E+00,-0.17847E+00, & - &-0.17763E+00,-0.17673E+00,-0.17578E+00,-0.17480E+00,-0.17377E+00, & - &-0.17270E+00,-0.17160E+00,-0.17047E+00,-0.16931E+00,-0.16813E+00, & - &-0.16692E+00,-0.16569E+00,-0.16445E+00,-0.16318E+00,-0.16190E+00, & - &-0.16060E+00,-0.15929E+00,-0.15796E+00,-0.15663E+00,-0.15528E+00, & - &-0.15392E+00,-0.15256E+00,-0.15118E+00,-0.14980E+00,-0.14841E+00, & - &-0.14701E+00,-0.14561E+00,-0.14419E+00,-0.14277E+00,-0.14135E+00, & - &-0.13992E+00,-0.13848E+00,-0.13703E+00,-0.13558E+00,-0.13412E+00, & - &-0.13265E+00,-0.13117E+00,-0.12969E+00,-0.12820E+00,-0.12670E+00, & - &-0.12519E+00,-0.12367E+00,-0.12214E+00,-0.12060E+00,-0.11905E+00, & - &-0.11750E+00,-0.11593E+00,-0.11434E+00,-0.11275E+00,-0.11115E+00, & - &-0.10953E+00,-0.10790E+00,-0.10626E+00,-0.10460E+00,-0.10293E+00, & - &-0.10125E+00,-0.99560E-01,-0.97854E-01,-0.96134E-01,-0.94401E-01, & - &-0.92654E-01,-0.90895E-01,-0.89123E-01,-0.87339E-01,-0.85542E-01, & - &-0.83733E-01,-0.81912E-01,-0.80079E-01,-0.78234E-01,-0.76379E-01/ - - DATA (BNC01M(I),I=101,200)/ & - &-0.74513E-01,-0.72637E-01,-0.70750E-01,-0.68854E-01,-0.66949E-01, & - &-0.65035E-01,-0.63113E-01,-0.61182E-01,-0.59244E-01,-0.57299E-01, & - &-0.55348E-01,-0.53390E-01,-0.51426E-01,-0.49456E-01,-0.47482E-01, & - &-0.45503E-01,-0.43520E-01,-0.41532E-01,-0.39541E-01,-0.37547E-01, & - &-0.35550E-01,-0.33550E-01,-0.31547E-01,-0.29543E-01,-0.27537E-01, & - &-0.25529E-01,-0.23520E-01,-0.21510E-01,-0.19499E-01,-0.17488E-01, & - &-0.15476E-01,-0.13463E-01,-0.11451E-01,-0.94381E-02,-0.74256E-02, & - &-0.54134E-02,-0.34017E-02,-0.13906E-02, 0.62006E-03, 0.26299E-02, & - & 0.46389E-02, 0.66470E-02, 0.86541E-02, 0.10660E-01, 0.12665E-01, & - & 0.14669E-01, 0.16671E-01, 0.18672E-01, 0.20672E-01, 0.22671E-01, & - & 0.24667E-01, 0.26663E-01, 0.28657E-01, 0.30649E-01, 0.32639E-01, & - & 0.34628E-01, 0.36616E-01, 0.38601E-01, 0.40585E-01, 0.42567E-01, & - & 0.44547E-01, 0.46525E-01, 0.48502E-01, 0.50476E-01, 0.52449E-01, & - & 0.54419E-01, 0.56388E-01, 0.58355E-01, 0.60320E-01, 0.62282E-01, & - & 0.64243E-01, 0.66202E-01, 0.68158E-01, 0.70113E-01, 0.72065E-01, & - & 0.74015E-01, 0.75963E-01, 0.77909E-01, 0.79853E-01, 0.81794E-01, & - & 0.83734E-01, 0.85671E-01, 0.87606E-01, 0.89539E-01, 0.91469E-01, & - & 0.93397E-01, 0.95323E-01, 0.97247E-01, 0.99168E-01, 0.10109E+00, & - & 0.10300E+00, 0.10492E+00, 0.10683E+00, 0.10874E+00, 0.11065E+00, & - & 0.11255E+00, 0.11446E+00, 0.11636E+00, 0.11825E+00, 0.12015E+00/ - - DATA (BNC01M(I),I=201,300)/ & - & 0.12204E+00, 0.12393E+00, 0.12582E+00, 0.12771E+00, 0.12959E+00, & - & 0.13147E+00, 0.13335E+00, 0.13523E+00, 0.13710E+00, 0.13897E+00, & - & 0.14084E+00, 0.14271E+00, 0.14457E+00, 0.14643E+00, 0.14829E+00, & - & 0.15015E+00, 0.15200E+00, 0.15385E+00, 0.15570E+00, 0.15755E+00, & - & 0.15939E+00, 0.16124E+00, 0.16307E+00, 0.16491E+00, 0.16675E+00, & - & 0.16858E+00, 0.17041E+00, 0.17223E+00, 0.17406E+00, 0.17588E+00, & - & 0.17770E+00, 0.17952E+00, 0.18133E+00, 0.18314E+00, 0.18495E+00, & - & 0.18676E+00, 0.18856E+00, 0.19036E+00, 0.19216E+00, 0.19396E+00, & - & 0.19575E+00, 0.19755E+00, 0.19934E+00, 0.20112E+00, 0.20291E+00, & - & 0.20469E+00, 0.20647E+00, 0.20824E+00, 0.21002E+00, 0.21179E+00, & - & 0.21356E+00, 0.21533E+00, 0.21709E+00, 0.21885E+00, 0.22061E+00, & - & 0.22237E+00, 0.22412E+00, 0.22588E+00, 0.22763E+00, 0.22937E+00, & - & 0.23112E+00, 0.23286E+00, 0.23460E+00, 0.23634E+00, 0.23807E+00, & - & 0.23980E+00, 0.24153E+00, 0.24326E+00, 0.24498E+00, 0.24671E+00, & - & 0.24843E+00, 0.25014E+00, 0.25186E+00, 0.25357E+00, 0.25528E+00, & - & 0.25699E+00, 0.25869E+00, 0.26040E+00, 0.26210E+00, 0.26380E+00, & - & 0.26549E+00, 0.26718E+00, 0.26888E+00, 0.27056E+00, 0.27225E+00, & - & 0.27393E+00, 0.27561E+00, 0.27729E+00, 0.27897E+00, 0.28064E+00, & - & 0.28231E+00, 0.28398E+00, 0.28565E+00, 0.28731E+00, 0.28898E+00, & - & 0.29064E+00, 0.29229E+00, 0.29395E+00, 0.29560E+00, 0.29725E+00/ - - DATA (BNC01M(I),I=301,400)/ & - & 0.29890E+00, 0.30054E+00, 0.30219E+00, 0.30383E+00, 0.30547E+00, & - & 0.30710E+00, 0.30874E+00, 0.31037E+00, 0.31200E+00, 0.31362E+00, & - & 0.31525E+00, 0.31687E+00, 0.31849E+00, 0.32011E+00, 0.32172E+00, & - & 0.32333E+00, 0.32495E+00, 0.32655E+00, 0.32816E+00, 0.32976E+00, & - & 0.33136E+00, 0.33296E+00, 0.33456E+00, 0.33616E+00, 0.33775E+00, & - & 0.33934E+00, 0.34093E+00, 0.34251E+00, 0.34410E+00, 0.34568E+00, & - & 0.34726E+00, 0.34883E+00, 0.35041E+00, 0.35198E+00, 0.35355E+00, & - & 0.35512E+00, 0.35668E+00, 0.35825E+00, 0.35981E+00, 0.36137E+00, & - & 0.36292E+00, 0.36448E+00, 0.36603E+00, 0.36758E+00, 0.36913E+00, & - & 0.37067E+00, 0.37222E+00, 0.37376E+00, 0.37530E+00, 0.37684E+00, & - & 0.37837E+00, 0.37990E+00, 0.38144E+00, 0.38296E+00, 0.38449E+00, & - & 0.38602E+00, 0.38754E+00, 0.38906E+00, 0.39058E+00, 0.39209E+00, & - & 0.39361E+00, 0.39512E+00, 0.39663E+00, 0.39814E+00, 0.39964E+00, & - & 0.40114E+00, 0.40265E+00, 0.40414E+00, 0.40564E+00, 0.40714E+00, & - & 0.40863E+00, 0.41012E+00, 0.41161E+00, 0.41310E+00, 0.41458E+00, & - & 0.41606E+00, 0.41755E+00, 0.41902E+00, 0.42050E+00, 0.42198E+00, & - & 0.42345E+00, 0.42492E+00, 0.42639E+00, 0.42785E+00, 0.42932E+00, & - & 0.43078E+00, 0.43224E+00, 0.43370E+00, 0.43516E+00, 0.43661E+00, & - & 0.43807E+00, 0.43952E+00, 0.44097E+00, 0.44241E+00, 0.44386E+00, & - & 0.44530E+00, 0.44674E+00, 0.44818E+00, 0.44962E+00, 0.45105E+00/ - - DATA (BNC01M(I),I=401,500)/ & - & 0.45249E+00, 0.45392E+00, 0.45535E+00, 0.45677E+00, 0.45820E+00, & - & 0.45962E+00, 0.46105E+00, 0.46247E+00, 0.46388E+00, 0.46530E+00, & - & 0.46671E+00, 0.46813E+00, 0.46954E+00, 0.47094E+00, 0.47235E+00, & - & 0.47376E+00, 0.47516E+00, 0.47656E+00, 0.47796E+00, 0.47936E+00, & - & 0.48075E+00, 0.48215E+00, 0.48354E+00, 0.48493E+00, 0.48632E+00, & - & 0.48770E+00, 0.48909E+00, 0.49047E+00, 0.49185E+00, 0.49323E+00, & - & 0.49461E+00, 0.49598E+00, 0.49735E+00, 0.49873E+00, 0.50010E+00, & - & 0.50146E+00, 0.50283E+00, 0.50420E+00, 0.50556E+00, 0.50692E+00, & - & 0.50828E+00, 0.50964E+00, 0.51099E+00, 0.51235E+00, 0.51370E+00, & - & 0.51505E+00, 0.51640E+00, 0.51774E+00, 0.51909E+00, 0.52043E+00, & - & 0.52178E+00, 0.52312E+00, 0.52445E+00, 0.52579E+00, 0.52713E+00, & - & 0.52846E+00, 0.52979E+00, 0.53112E+00, 0.53245E+00, 0.53377E+00, & - & 0.53510E+00, 0.53642E+00, 0.53774E+00, 0.53906E+00, 0.54038E+00, & - & 0.54170E+00, 0.54301E+00, 0.54433E+00, 0.54564E+00, 0.54695E+00, & - & 0.54825E+00, 0.54956E+00, 0.55086E+00, 0.55217E+00, 0.55347E+00, & - & 0.55477E+00, 0.55607E+00, 0.55736E+00, 0.55866E+00, 0.55995E+00, & - & 0.56124E+00, 0.56253E+00, 0.56382E+00, 0.56511E+00, 0.56639E+00, & - & 0.56768E+00, 0.56896E+00, 0.57024E+00, 0.57152E+00, 0.57280E+00, & - & 0.57407E+00, 0.57534E+00, 0.57662E+00, 0.57789E+00, 0.57916E+00, & - & 0.58043E+00, 0.58169E+00, 0.58296E+00, 0.58422E+00, 0.58548E+00/ - - DATA (BNC01M(I),I=501,600)/ & - & 0.58674E+00, 0.58800E+00, 0.58926E+00, 0.59051E+00, 0.59176E+00, & - & 0.59302E+00, 0.59427E+00, 0.59552E+00, 0.59676E+00, 0.59801E+00, & - & 0.59925E+00, 0.60050E+00, 0.60174E+00, 0.60298E+00, 0.60422E+00, & - & 0.60545E+00, 0.60669E+00, 0.60792E+00, 0.60916E+00, 0.61039E+00, & - & 0.61162E+00, 0.61285E+00, 0.61407E+00, 0.61530E+00, 0.61652E+00, & - & 0.61774E+00, 0.61896E+00, 0.62018E+00, 0.62140E+00, 0.62262E+00, & - & 0.62383E+00, 0.62505E+00, 0.62626E+00, 0.62747E+00, 0.62868E+00, & - & 0.62989E+00, 0.63109E+00, 0.63230E+00, 0.63350E+00, 0.63470E+00, & - & 0.63590E+00, 0.63710E+00, 0.63830E+00, 0.63950E+00, 0.64069E+00, & - & 0.64188E+00, 0.64308E+00, 0.64427E+00, 0.64546E+00, 0.64664E+00, & - & 0.64783E+00, 0.64902E+00, 0.65020E+00, 0.65138E+00, 0.65256E+00, & - & 0.65374E+00, 0.65492E+00, 0.65610E+00, 0.65727E+00, 0.65845E+00, & - & 0.65962E+00, 0.66079E+00, 0.66196E+00, 0.66313E+00, 0.66430E+00, & - & 0.66546E+00, 0.66663E+00, 0.66779E+00, 0.66895E+00, 0.67011E+00, & - & 0.67127E+00, 0.67243E+00, 0.67359E+00, 0.67474E+00, 0.67590E+00, & - & 0.67705E+00, 0.67820E+00, 0.67935E+00, 0.68050E+00, 0.68165E+00, & - & 0.68279E+00, 0.68394E+00, 0.68508E+00, 0.68622E+00, 0.68736E+00, & - & 0.68850E+00, 0.68964E+00, 0.69078E+00, 0.69191E+00, 0.69305E+00, & - & 0.69418E+00, 0.69531E+00, 0.69644E+00, 0.69757E+00, 0.69870E+00, & - & 0.69983E+00, 0.70095E+00, 0.70208E+00, 0.70320E+00, 0.70432E+00/ - - DATA (BNC01M(I),I=601,700)/ & - & 0.71636E+00, 0.72738E+00, 0.73828E+00, 0.74906E+00, 0.75972E+00, & - & 0.77027E+00, 0.78071E+00, 0.79105E+00, 0.80127E+00, 0.81139E+00, & - & 0.82141E+00, 0.83133E+00, 0.84115E+00, 0.85087E+00, 0.86050E+00, & - & 0.87004E+00, 0.87948E+00, 0.88883E+00, 0.89810E+00, 0.90728E+00, & - & 0.91638E+00, 0.92539E+00, 0.93432E+00, 0.94316E+00, 0.95193E+00, & - & 0.96063E+00, 0.96924E+00, 0.97778E+00, 0.98625E+00, 0.99464E+00, & - & 0.10030E+01, 0.10112E+01, 0.10194E+01, 0.10275E+01, 0.10356E+01, & - & 0.10435E+01, 0.10515E+01, 0.10593E+01, 0.10671E+01, 0.10748E+01, & - & 0.10825E+01, 0.10901E+01, 0.10977E+01, 0.11051E+01, 0.11126E+01, & - & 0.11200E+01, 0.11273E+01, 0.11345E+01, 0.11418E+01, 0.11489E+01, & - & 0.11560E+01, 0.11631E+01, 0.11701E+01, 0.11770E+01, 0.11839E+01, & - & 0.11908E+01, 0.11976E+01, 0.12044E+01, 0.12111E+01, 0.12177E+01, & - & 0.12244E+01, 0.12309E+01, 0.12375E+01, 0.12440E+01, 0.12504E+01, & - & 0.12568E+01, 0.12632E+01, 0.12695E+01, 0.12758E+01, 0.12820E+01, & - & 0.12882E+01, 0.12943E+01, 0.13005E+01, 0.13065E+01, 0.13126E+01, & - & 0.13186E+01, 0.13246E+01, 0.13305E+01, 0.13364E+01, 0.13422E+01, & - & 0.13481E+01, 0.13539E+01, 0.13596E+01, 0.13653E+01, 0.13710E+01, & - & 0.13767E+01, 0.13823E+01, 0.13879E+01, 0.13934E+01, 0.13990E+01, & - & 0.14044E+01, 0.14099E+01, 0.14153E+01, 0.14207E+01, 0.14261E+01, & - & 0.14314E+01, 0.14368E+01, 0.14420E+01, 0.14473E+01, 0.14525E+01/ - - DATA (BNC01M(I),I=701,741)/ & - & 0.14577E+01, 0.14629E+01, 0.14680E+01, 0.14731E+01, 0.14782E+01, & - & 0.14833E+01, 0.14883E+01, 0.14933E+01, 0.14983E+01, 0.15033E+01, & - & 0.15082E+01, 0.15131E+01, 0.15180E+01, 0.15228E+01, 0.15277E+01, & - & 0.15325E+01, 0.15372E+01, 0.15420E+01, 0.15467E+01, 0.15515E+01, & - & 0.15561E+01, 0.15608E+01, 0.15655E+01, 0.15701E+01, 0.15747E+01, & - & 0.15793E+01, 0.15838E+01, 0.15884E+01, 0.15929E+01, 0.15974E+01, & - & 0.16018E+01, 0.16063E+01, 0.16107E+01, 0.16151E+01, 0.16195E+01, & - & 0.16239E+01, 0.16282E+01, 0.16326E+01, 0.16369E+01, 0.16412E+01, & - & 0.16454E+01 & - & / -! -! *** Na2SO4 -! - DATA (BNC02M(I),I=1,100)/ & - &-0.93069E-01,-0.20213E+00,-0.25643E+00,-0.29470E+00,-0.32465E+00, & - &-0.34938E+00,-0.37051E+00,-0.38898E+00,-0.40540E+00,-0.42018E+00, & - &-0.43364E+00,-0.44599E+00,-0.45740E+00,-0.46801E+00,-0.47792E+00, & - &-0.48722E+00,-0.49598E+00,-0.50426E+00,-0.51211E+00,-0.51957E+00, & - &-0.52668E+00,-0.53347E+00,-0.53997E+00,-0.54620E+00,-0.55218E+00, & - &-0.55793E+00,-0.56347E+00,-0.56881E+00,-0.57397E+00,-0.57896E+00, & - &-0.58378E+00,-0.58845E+00,-0.59298E+00,-0.59738E+00,-0.60165E+00, & - &-0.60580E+00,-0.60983E+00,-0.61376E+00,-0.61759E+00,-0.62131E+00, & - &-0.62495E+00,-0.62849E+00,-0.63195E+00,-0.63533E+00,-0.63864E+00, & - &-0.64187E+00,-0.64502E+00,-0.64811E+00,-0.65114E+00,-0.65410E+00, & - &-0.65700E+00,-0.65984E+00,-0.66263E+00,-0.66536E+00,-0.66804E+00, & - &-0.67068E+00,-0.67326E+00,-0.67580E+00,-0.67829E+00,-0.68074E+00, & - &-0.68314E+00,-0.68551E+00,-0.68784E+00,-0.69013E+00,-0.69239E+00, & - &-0.69461E+00,-0.69679E+00,-0.69894E+00,-0.70107E+00,-0.70316E+00, & - &-0.70522E+00,-0.70725E+00,-0.70925E+00,-0.71123E+00,-0.71318E+00, & - &-0.71511E+00,-0.71701E+00,-0.71889E+00,-0.72075E+00,-0.72258E+00, & - &-0.72439E+00,-0.72618E+00,-0.72795E+00,-0.72970E+00,-0.73143E+00, & - &-0.73315E+00,-0.73484E+00,-0.73652E+00,-0.73818E+00,-0.73982E+00, & - &-0.74145E+00,-0.74306E+00,-0.74465E+00,-0.74623E+00,-0.74780E+00, & - &-0.74935E+00,-0.75088E+00,-0.75241E+00,-0.75392E+00,-0.75541E+00/ - - DATA (BNC02M(I),I=101,200)/ & - &-0.75689E+00,-0.75836E+00,-0.75982E+00,-0.76126E+00,-0.76269E+00, & - &-0.76411E+00,-0.76552E+00,-0.76692E+00,-0.76830E+00,-0.76968E+00, & - &-0.77104E+00,-0.77239E+00,-0.77373E+00,-0.77506E+00,-0.77638E+00, & - &-0.77769E+00,-0.77899E+00,-0.78028E+00,-0.78155E+00,-0.78282E+00, & - &-0.78408E+00,-0.78533E+00,-0.78657E+00,-0.78780E+00,-0.78902E+00, & - &-0.79024E+00,-0.79144E+00,-0.79263E+00,-0.79382E+00,-0.79500E+00, & - &-0.79616E+00,-0.79732E+00,-0.79848E+00,-0.79962E+00,-0.80076E+00, & - &-0.80188E+00,-0.80300E+00,-0.80411E+00,-0.80522E+00,-0.80631E+00, & - &-0.80740E+00,-0.80848E+00,-0.80956E+00,-0.81063E+00,-0.81169E+00, & - &-0.81274E+00,-0.81379E+00,-0.81482E+00,-0.81586E+00,-0.81688E+00, & - &-0.81790E+00,-0.81891E+00,-0.81992E+00,-0.82092E+00,-0.82191E+00, & - &-0.82290E+00,-0.82388E+00,-0.82486E+00,-0.82583E+00,-0.82679E+00, & - &-0.82775E+00,-0.82870E+00,-0.82965E+00,-0.83059E+00,-0.83152E+00, & - &-0.83245E+00,-0.83338E+00,-0.83429E+00,-0.83521E+00,-0.83612E+00, & - &-0.83702E+00,-0.83792E+00,-0.83881E+00,-0.83970E+00,-0.84058E+00, & - &-0.84146E+00,-0.84233E+00,-0.84320E+00,-0.84407E+00,-0.84492E+00, & - &-0.84578E+00,-0.84663E+00,-0.84747E+00,-0.84832E+00,-0.84915E+00, & - &-0.84998E+00,-0.85081E+00,-0.85164E+00,-0.85245E+00,-0.85327E+00, & - &-0.85408E+00,-0.85489E+00,-0.85569E+00,-0.85649E+00,-0.85728E+00, & - &-0.85807E+00,-0.85886E+00,-0.85964E+00,-0.86042E+00,-0.86120E+00/ - - DATA (BNC02M(I),I=201,300)/ & - &-0.86197E+00,-0.86274E+00,-0.86350E+00,-0.86426E+00,-0.86502E+00, & - &-0.86577E+00,-0.86652E+00,-0.86727E+00,-0.86801E+00,-0.86875E+00, & - &-0.86949E+00,-0.87022E+00,-0.87095E+00,-0.87167E+00,-0.87240E+00, & - &-0.87312E+00,-0.87383E+00,-0.87454E+00,-0.87525E+00,-0.87596E+00, & - &-0.87666E+00,-0.87736E+00,-0.87806E+00,-0.87875E+00,-0.87945E+00, & - &-0.88013E+00,-0.88082E+00,-0.88150E+00,-0.88218E+00,-0.88286E+00, & - &-0.88353E+00,-0.88420E+00,-0.88487E+00,-0.88553E+00,-0.88620E+00, & - &-0.88686E+00,-0.88751E+00,-0.88817E+00,-0.88882E+00,-0.88947E+00, & - &-0.89011E+00,-0.89076E+00,-0.89140E+00,-0.89203E+00,-0.89267E+00, & - &-0.89330E+00,-0.89393E+00,-0.89456E+00,-0.89519E+00,-0.89581E+00, & - &-0.89643E+00,-0.89705E+00,-0.89767E+00,-0.89828E+00,-0.89889E+00, & - &-0.89950E+00,-0.90011E+00,-0.90071E+00,-0.90131E+00,-0.90191E+00, & - &-0.90251E+00,-0.90310E+00,-0.90370E+00,-0.90429E+00,-0.90488E+00, & - &-0.90546E+00,-0.90605E+00,-0.90663E+00,-0.90721E+00,-0.90779E+00, & - &-0.90836E+00,-0.90894E+00,-0.90951E+00,-0.91008E+00,-0.91064E+00, & - &-0.91121E+00,-0.91177E+00,-0.91233E+00,-0.91289E+00,-0.91345E+00, & - &-0.91401E+00,-0.91456E+00,-0.91511E+00,-0.91566E+00,-0.91621E+00, & - &-0.91675E+00,-0.91730E+00,-0.91784E+00,-0.91838E+00,-0.91892E+00, & - &-0.91946E+00,-0.91999E+00,-0.92052E+00,-0.92105E+00,-0.92158E+00, & - &-0.92211E+00,-0.92264E+00,-0.92316E+00,-0.92368E+00,-0.92420E+00/ - - DATA (BNC02M(I),I=301,400)/ & - &-0.92472E+00,-0.92524E+00,-0.92576E+00,-0.92627E+00,-0.92678E+00, & - &-0.92729E+00,-0.92780E+00,-0.92831E+00,-0.92881E+00,-0.92932E+00, & - &-0.92982E+00,-0.93032E+00,-0.93082E+00,-0.93132E+00,-0.93181E+00, & - &-0.93231E+00,-0.93280E+00,-0.93329E+00,-0.93378E+00,-0.93427E+00, & - &-0.93476E+00,-0.93524E+00,-0.93573E+00,-0.93621E+00,-0.93669E+00, & - &-0.93717E+00,-0.93765E+00,-0.93812E+00,-0.93860E+00,-0.93907E+00, & - &-0.93954E+00,-0.94002E+00,-0.94048E+00,-0.94095E+00,-0.94142E+00, & - &-0.94188E+00,-0.94235E+00,-0.94281E+00,-0.94327E+00,-0.94373E+00, & - &-0.94419E+00,-0.94465E+00,-0.94510E+00,-0.94556E+00,-0.94601E+00, & - &-0.94646E+00,-0.94691E+00,-0.94736E+00,-0.94781E+00,-0.94826E+00, & - &-0.94870E+00,-0.94915E+00,-0.94959E+00,-0.95003E+00,-0.95047E+00, & - &-0.95091E+00,-0.95135E+00,-0.95178E+00,-0.95222E+00,-0.95265E+00, & - &-0.95309E+00,-0.95352E+00,-0.95395E+00,-0.95438E+00,-0.95481E+00, & - &-0.95523E+00,-0.95566E+00,-0.95608E+00,-0.95651E+00,-0.95693E+00, & - &-0.95735E+00,-0.95777E+00,-0.95819E+00,-0.95861E+00,-0.95903E+00, & - &-0.95944E+00,-0.95986E+00,-0.96027E+00,-0.96068E+00,-0.96109E+00, & - &-0.96150E+00,-0.96191E+00,-0.96232E+00,-0.96273E+00,-0.96313E+00, & - &-0.96354E+00,-0.96394E+00,-0.96435E+00,-0.96475E+00,-0.96515E+00, & - &-0.96555E+00,-0.96595E+00,-0.96634E+00,-0.96674E+00,-0.96714E+00, & - &-0.96753E+00,-0.96793E+00,-0.96832E+00,-0.96871E+00,-0.96910E+00/ - - DATA (BNC02M(I),I=401,500)/ & - &-0.96949E+00,-0.96988E+00,-0.97027E+00,-0.97065E+00,-0.97104E+00, & - &-0.97142E+00,-0.97181E+00,-0.97219E+00,-0.97257E+00,-0.97295E+00, & - &-0.97333E+00,-0.97371E+00,-0.97409E+00,-0.97447E+00,-0.97484E+00, & - &-0.97522E+00,-0.97560E+00,-0.97597E+00,-0.97634E+00,-0.97671E+00, & - &-0.97708E+00,-0.97745E+00,-0.97782E+00,-0.97819E+00,-0.97856E+00, & - &-0.97893E+00,-0.97929E+00,-0.97966E+00,-0.98002E+00,-0.98038E+00, & - &-0.98075E+00,-0.98111E+00,-0.98147E+00,-0.98183E+00,-0.98219E+00, & - &-0.98255E+00,-0.98290E+00,-0.98326E+00,-0.98362E+00,-0.98397E+00, & - &-0.98432E+00,-0.98468E+00,-0.98503E+00,-0.98538E+00,-0.98573E+00, & - &-0.98608E+00,-0.98643E+00,-0.98678E+00,-0.98713E+00,-0.98747E+00, & - &-0.98782E+00,-0.98817E+00,-0.98851E+00,-0.98885E+00,-0.98920E+00, & - &-0.98954E+00,-0.98988E+00,-0.99022E+00,-0.99056E+00,-0.99090E+00, & - &-0.99124E+00,-0.99158E+00,-0.99191E+00,-0.99225E+00,-0.99259E+00, & - &-0.99292E+00,-0.99325E+00,-0.99359E+00,-0.99392E+00,-0.99425E+00, & - &-0.99458E+00,-0.99491E+00,-0.99524E+00,-0.99557E+00,-0.99590E+00, & - &-0.99623E+00,-0.99656E+00,-0.99688E+00,-0.99721E+00,-0.99753E+00, & - &-0.99786E+00,-0.99818E+00,-0.99850E+00,-0.99883E+00,-0.99915E+00, & - &-0.99947E+00,-0.99979E+00,-0.10001E+01,-0.10004E+01,-0.10007E+01, & - &-0.10011E+01,-0.10014E+01,-0.10017E+01,-0.10020E+01,-0.10023E+01, & - &-0.10026E+01,-0.10030E+01,-0.10033E+01,-0.10036E+01,-0.10039E+01/ - - DATA (BNC02M(I),I=501,600)/ & - &-0.10042E+01,-0.10045E+01,-0.10048E+01,-0.10051E+01,-0.10054E+01, & - &-0.10057E+01,-0.10061E+01,-0.10064E+01,-0.10067E+01,-0.10070E+01, & - &-0.10073E+01,-0.10076E+01,-0.10079E+01,-0.10082E+01,-0.10085E+01, & - &-0.10088E+01,-0.10091E+01,-0.10094E+01,-0.10097E+01,-0.10100E+01, & - &-0.10103E+01,-0.10106E+01,-0.10109E+01,-0.10112E+01,-0.10115E+01, & - &-0.10118E+01,-0.10121E+01,-0.10124E+01,-0.10127E+01,-0.10130E+01, & - &-0.10132E+01,-0.10135E+01,-0.10138E+01,-0.10141E+01,-0.10144E+01, & - &-0.10147E+01,-0.10150E+01,-0.10153E+01,-0.10156E+01,-0.10159E+01, & - &-0.10161E+01,-0.10164E+01,-0.10167E+01,-0.10170E+01,-0.10173E+01, & - &-0.10176E+01,-0.10179E+01,-0.10181E+01,-0.10184E+01,-0.10187E+01, & - &-0.10190E+01,-0.10193E+01,-0.10196E+01,-0.10198E+01,-0.10201E+01, & - &-0.10204E+01,-0.10207E+01,-0.10210E+01,-0.10212E+01,-0.10215E+01, & - &-0.10218E+01,-0.10221E+01,-0.10223E+01,-0.10226E+01,-0.10229E+01, & - &-0.10232E+01,-0.10234E+01,-0.10237E+01,-0.10240E+01,-0.10243E+01, & - &-0.10245E+01,-0.10248E+01,-0.10251E+01,-0.10253E+01,-0.10256E+01, & - &-0.10259E+01,-0.10261E+01,-0.10264E+01,-0.10267E+01,-0.10270E+01, & - &-0.10272E+01,-0.10275E+01,-0.10278E+01,-0.10280E+01,-0.10283E+01, & - &-0.10285E+01,-0.10288E+01,-0.10291E+01,-0.10293E+01,-0.10296E+01, & - &-0.10299E+01,-0.10301E+01,-0.10304E+01,-0.10307E+01,-0.10309E+01, & - &-0.10312E+01,-0.10314E+01,-0.10317E+01,-0.10319E+01,-0.10322E+01/ - - DATA (BNC02M(I),I=601,700)/ & - &-0.10350E+01,-0.10375E+01,-0.10400E+01,-0.10424E+01,-0.10448E+01, & - &-0.10471E+01,-0.10495E+01,-0.10517E+01,-0.10540E+01,-0.10562E+01, & - &-0.10584E+01,-0.10605E+01,-0.10627E+01,-0.10647E+01,-0.10668E+01, & - &-0.10688E+01,-0.10708E+01,-0.10728E+01,-0.10748E+01,-0.10767E+01, & - &-0.10786E+01,-0.10805E+01,-0.10823E+01,-0.10841E+01,-0.10860E+01, & - &-0.10877E+01,-0.10895E+01,-0.10912E+01,-0.10930E+01,-0.10947E+01, & - &-0.10963E+01,-0.10980E+01,-0.10996E+01,-0.11013E+01,-0.11029E+01, & - &-0.11044E+01,-0.11060E+01,-0.11076E+01,-0.11091E+01,-0.11106E+01, & - &-0.11121E+01,-0.11136E+01,-0.11151E+01,-0.11165E+01,-0.11180E+01, & - &-0.11194E+01,-0.11208E+01,-0.11222E+01,-0.11236E+01,-0.11250E+01, & - &-0.11263E+01,-0.11277E+01,-0.11290E+01,-0.11303E+01,-0.11316E+01, & - &-0.11329E+01,-0.11342E+01,-0.11355E+01,-0.11368E+01,-0.11380E+01, & - &-0.11392E+01,-0.11405E+01,-0.11417E+01,-0.11429E+01,-0.11441E+01, & - &-0.11453E+01,-0.11464E+01,-0.11476E+01,-0.11488E+01,-0.11499E+01, & - &-0.11510E+01,-0.11522E+01,-0.11533E+01,-0.11544E+01,-0.11555E+01, & - &-0.11566E+01,-0.11577E+01,-0.11587E+01,-0.11598E+01,-0.11609E+01, & - &-0.11619E+01,-0.11630E+01,-0.11640E+01,-0.11650E+01,-0.11660E+01, & - &-0.11670E+01,-0.11680E+01,-0.11690E+01,-0.11700E+01,-0.11710E+01, & - &-0.11720E+01,-0.11729E+01,-0.11739E+01,-0.11749E+01,-0.11758E+01, & - &-0.11767E+01,-0.11777E+01,-0.11786E+01,-0.11795E+01,-0.11804E+01/ - - DATA (BNC02M(I),I=701,741)/ & - &-0.11813E+01,-0.11822E+01,-0.11831E+01,-0.11840E+01,-0.11849E+01, & - &-0.11858E+01,-0.11867E+01,-0.11875E+01,-0.11884E+01,-0.11893E+01, & - &-0.11901E+01,-0.11909E+01,-0.11918E+01,-0.11926E+01,-0.11934E+01, & - &-0.11943E+01,-0.11951E+01,-0.11959E+01,-0.11967E+01,-0.11975E+01, & - &-0.11983E+01,-0.11991E+01,-0.11999E+01,-0.12007E+01,-0.12015E+01, & - &-0.12022E+01,-0.12030E+01,-0.12038E+01,-0.12045E+01,-0.12053E+01, & - &-0.12060E+01,-0.12068E+01,-0.12075E+01,-0.12083E+01,-0.12090E+01, & - &-0.12097E+01,-0.12105E+01,-0.12112E+01,-0.12119E+01,-0.12126E+01, & - &-0.12133E+01 & - & / -! -! *** NaNO3 -! - DATA (BNC03M(I),I=1,100)/ & - &-0.46649E-01,-0.10169E+00,-0.12931E+00,-0.14890E+00,-0.16430E+00, & - &-0.17709E+00,-0.18807E+00,-0.19770E+00,-0.20631E+00,-0.21409E+00, & - &-0.22120E+00,-0.22775E+00,-0.23383E+00,-0.23950E+00,-0.24481E+00, & - &-0.24982E+00,-0.25456E+00,-0.25905E+00,-0.26332E+00,-0.26739E+00, & - &-0.27128E+00,-0.27501E+00,-0.27859E+00,-0.28204E+00,-0.28535E+00, & - &-0.28855E+00,-0.29164E+00,-0.29462E+00,-0.29751E+00,-0.30031E+00, & - &-0.30303E+00,-0.30567E+00,-0.30823E+00,-0.31072E+00,-0.31315E+00, & - &-0.31551E+00,-0.31782E+00,-0.32006E+00,-0.32225E+00,-0.32439E+00, & - &-0.32649E+00,-0.32853E+00,-0.33053E+00,-0.33248E+00,-0.33439E+00, & - &-0.33627E+00,-0.33810E+00,-0.33990E+00,-0.34166E+00,-0.34339E+00, & - &-0.34509E+00,-0.34675E+00,-0.34839E+00,-0.34999E+00,-0.35157E+00, & - &-0.35312E+00,-0.35464E+00,-0.35614E+00,-0.35761E+00,-0.35906E+00, & - &-0.36049E+00,-0.36190E+00,-0.36328E+00,-0.36464E+00,-0.36599E+00, & - &-0.36731E+00,-0.36862E+00,-0.36991E+00,-0.37118E+00,-0.37244E+00, & - &-0.37368E+00,-0.37491E+00,-0.37612E+00,-0.37731E+00,-0.37849E+00, & - &-0.37966E+00,-0.38082E+00,-0.38197E+00,-0.38310E+00,-0.38422E+00, & - &-0.38533E+00,-0.38643E+00,-0.38752E+00,-0.38860E+00,-0.38966E+00, & - &-0.39072E+00,-0.39177E+00,-0.39282E+00,-0.39385E+00,-0.39487E+00, & - &-0.39589E+00,-0.39690E+00,-0.39790E+00,-0.39889E+00,-0.39988E+00, & - &-0.40086E+00,-0.40183E+00,-0.40279E+00,-0.40375E+00,-0.40470E+00/ - - DATA (BNC03M(I),I=101,200)/ & - &-0.40564E+00,-0.40658E+00,-0.40751E+00,-0.40844E+00,-0.40936E+00, & - &-0.41027E+00,-0.41117E+00,-0.41208E+00,-0.41297E+00,-0.41386E+00, & - &-0.41474E+00,-0.41562E+00,-0.41649E+00,-0.41736E+00,-0.41822E+00, & - &-0.41907E+00,-0.41992E+00,-0.42076E+00,-0.42160E+00,-0.42243E+00, & - &-0.42326E+00,-0.42408E+00,-0.42490E+00,-0.42571E+00,-0.42652E+00, & - &-0.42732E+00,-0.42812E+00,-0.42891E+00,-0.42970E+00,-0.43048E+00, & - &-0.43126E+00,-0.43203E+00,-0.43280E+00,-0.43356E+00,-0.43432E+00, & - &-0.43507E+00,-0.43582E+00,-0.43656E+00,-0.43730E+00,-0.43804E+00, & - &-0.43877E+00,-0.43950E+00,-0.44022E+00,-0.44094E+00,-0.44165E+00, & - &-0.44236E+00,-0.44307E+00,-0.44377E+00,-0.44447E+00,-0.44516E+00, & - &-0.44585E+00,-0.44654E+00,-0.44722E+00,-0.44790E+00,-0.44858E+00, & - &-0.44925E+00,-0.44992E+00,-0.45058E+00,-0.45124E+00,-0.45190E+00, & - &-0.45255E+00,-0.45320E+00,-0.45385E+00,-0.45450E+00,-0.45514E+00, & - &-0.45577E+00,-0.45641E+00,-0.45704E+00,-0.45766E+00,-0.45829E+00, & - &-0.45891E+00,-0.45953E+00,-0.46014E+00,-0.46075E+00,-0.46136E+00, & - &-0.46197E+00,-0.46257E+00,-0.46317E+00,-0.46377E+00,-0.46436E+00, & - &-0.46496E+00,-0.46555E+00,-0.46613E+00,-0.46671E+00,-0.46730E+00, & - &-0.46787E+00,-0.46845E+00,-0.46902E+00,-0.46959E+00,-0.47016E+00, & - &-0.47072E+00,-0.47129E+00,-0.47185E+00,-0.47240E+00,-0.47296E+00, & - &-0.47351E+00,-0.47406E+00,-0.47461E+00,-0.47515E+00,-0.47570E+00/ - - DATA (BNC03M(I),I=201,300)/ & - &-0.47624E+00,-0.47678E+00,-0.47731E+00,-0.47785E+00,-0.47838E+00, & - &-0.47891E+00,-0.47943E+00,-0.47996E+00,-0.48048E+00,-0.48100E+00, & - &-0.48152E+00,-0.48204E+00,-0.48255E+00,-0.48306E+00,-0.48357E+00, & - &-0.48408E+00,-0.48459E+00,-0.48509E+00,-0.48559E+00,-0.48609E+00, & - &-0.48659E+00,-0.48709E+00,-0.48758E+00,-0.48807E+00,-0.48856E+00, & - &-0.48905E+00,-0.48954E+00,-0.49002E+00,-0.49051E+00,-0.49099E+00, & - &-0.49147E+00,-0.49194E+00,-0.49242E+00,-0.49289E+00,-0.49336E+00, & - &-0.49383E+00,-0.49430E+00,-0.49477E+00,-0.49523E+00,-0.49570E+00, & - &-0.49616E+00,-0.49662E+00,-0.49708E+00,-0.49753E+00,-0.49799E+00, & - &-0.49844E+00,-0.49889E+00,-0.49934E+00,-0.49979E+00,-0.50024E+00, & - &-0.50068E+00,-0.50113E+00,-0.50157E+00,-0.50201E+00,-0.50245E+00, & - &-0.50289E+00,-0.50332E+00,-0.50376E+00,-0.50419E+00,-0.50462E+00, & - &-0.50505E+00,-0.50548E+00,-0.50591E+00,-0.50634E+00,-0.50676E+00, & - &-0.50718E+00,-0.50760E+00,-0.50803E+00,-0.50844E+00,-0.50886E+00, & - &-0.50928E+00,-0.50969E+00,-0.51011E+00,-0.51052E+00,-0.51093E+00, & - &-0.51134E+00,-0.51175E+00,-0.51215E+00,-0.51256E+00,-0.51296E+00, & - &-0.51336E+00,-0.51377E+00,-0.51417E+00,-0.51457E+00,-0.51496E+00, & - &-0.51536E+00,-0.51576E+00,-0.51615E+00,-0.51654E+00,-0.51693E+00, & - &-0.51732E+00,-0.51771E+00,-0.51810E+00,-0.51849E+00,-0.51887E+00, & - &-0.51926E+00,-0.51964E+00,-0.52002E+00,-0.52040E+00,-0.52078E+00/ - - DATA (BNC03M(I),I=301,400)/ & - &-0.52116E+00,-0.52154E+00,-0.52192E+00,-0.52229E+00,-0.52267E+00, & - &-0.52304E+00,-0.52341E+00,-0.52378E+00,-0.52415E+00,-0.52452E+00, & - &-0.52489E+00,-0.52526E+00,-0.52562E+00,-0.52599E+00,-0.52635E+00, & - &-0.52671E+00,-0.52707E+00,-0.52743E+00,-0.52779E+00,-0.52815E+00, & - &-0.52851E+00,-0.52886E+00,-0.52922E+00,-0.52957E+00,-0.52993E+00, & - &-0.53028E+00,-0.53063E+00,-0.53098E+00,-0.53133E+00,-0.53168E+00, & - &-0.53203E+00,-0.53237E+00,-0.53272E+00,-0.53306E+00,-0.53341E+00, & - &-0.53375E+00,-0.53409E+00,-0.53443E+00,-0.53477E+00,-0.53511E+00, & - &-0.53545E+00,-0.53579E+00,-0.53612E+00,-0.53646E+00,-0.53679E+00, & - &-0.53713E+00,-0.53746E+00,-0.53779E+00,-0.53812E+00,-0.53845E+00, & - &-0.53878E+00,-0.53911E+00,-0.53944E+00,-0.53976E+00,-0.54009E+00, & - &-0.54041E+00,-0.54074E+00,-0.54106E+00,-0.54138E+00,-0.54170E+00, & - &-0.54203E+00,-0.54235E+00,-0.54266E+00,-0.54298E+00,-0.54330E+00, & - &-0.54362E+00,-0.54393E+00,-0.54425E+00,-0.54456E+00,-0.54488E+00, & - &-0.54519E+00,-0.54550E+00,-0.54581E+00,-0.54612E+00,-0.54643E+00, & - &-0.54674E+00,-0.54705E+00,-0.54736E+00,-0.54766E+00,-0.54797E+00, & - &-0.54827E+00,-0.54858E+00,-0.54888E+00,-0.54919E+00,-0.54949E+00, & - &-0.54979E+00,-0.55009E+00,-0.55039E+00,-0.55069E+00,-0.55099E+00, & - &-0.55129E+00,-0.55158E+00,-0.55188E+00,-0.55218E+00,-0.55247E+00, & - &-0.55277E+00,-0.55306E+00,-0.55335E+00,-0.55364E+00,-0.55394E+00/ - - DATA (BNC03M(I),I=401,500)/ & - &-0.55423E+00,-0.55452E+00,-0.55481E+00,-0.55510E+00,-0.55538E+00, & - &-0.55567E+00,-0.55596E+00,-0.55624E+00,-0.55653E+00,-0.55681E+00, & - &-0.55710E+00,-0.55738E+00,-0.55767E+00,-0.55795E+00,-0.55823E+00, & - &-0.55851E+00,-0.55879E+00,-0.55907E+00,-0.55935E+00,-0.55963E+00, & - &-0.55991E+00,-0.56018E+00,-0.56046E+00,-0.56074E+00,-0.56101E+00, & - &-0.56129E+00,-0.56156E+00,-0.56184E+00,-0.56211E+00,-0.56238E+00, & - &-0.56265E+00,-0.56292E+00,-0.56319E+00,-0.56346E+00,-0.56373E+00, & - &-0.56400E+00,-0.56427E+00,-0.56454E+00,-0.56481E+00,-0.56507E+00, & - &-0.56534E+00,-0.56560E+00,-0.56587E+00,-0.56613E+00,-0.56640E+00, & - &-0.56666E+00,-0.56692E+00,-0.56718E+00,-0.56745E+00,-0.56771E+00, & - &-0.56797E+00,-0.56823E+00,-0.56849E+00,-0.56875E+00,-0.56900E+00, & - &-0.56926E+00,-0.56952E+00,-0.56977E+00,-0.57003E+00,-0.57029E+00, & - &-0.57054E+00,-0.57080E+00,-0.57105E+00,-0.57130E+00,-0.57156E+00, & - &-0.57181E+00,-0.57206E+00,-0.57231E+00,-0.57256E+00,-0.57281E+00, & - &-0.57306E+00,-0.57331E+00,-0.57356E+00,-0.57381E+00,-0.57406E+00, & - &-0.57430E+00,-0.57455E+00,-0.57480E+00,-0.57504E+00,-0.57529E+00, & - &-0.57553E+00,-0.57578E+00,-0.57602E+00,-0.57626E+00,-0.57651E+00, & - &-0.57675E+00,-0.57699E+00,-0.57723E+00,-0.57747E+00,-0.57771E+00, & - &-0.57795E+00,-0.57819E+00,-0.57843E+00,-0.57867E+00,-0.57891E+00, & - &-0.57915E+00,-0.57939E+00,-0.57962E+00,-0.57986E+00,-0.58009E+00/ - - DATA (BNC03M(I),I=501,600)/ & - &-0.58033E+00,-0.58056E+00,-0.58080E+00,-0.58103E+00,-0.58127E+00, & - &-0.58150E+00,-0.58173E+00,-0.58196E+00,-0.58220E+00,-0.58243E+00, & - &-0.58266E+00,-0.58289E+00,-0.58312E+00,-0.58335E+00,-0.58358E+00, & - &-0.58381E+00,-0.58404E+00,-0.58426E+00,-0.58449E+00,-0.58472E+00, & - &-0.58494E+00,-0.58517E+00,-0.58540E+00,-0.58562E+00,-0.58585E+00, & - &-0.58607E+00,-0.58630E+00,-0.58652E+00,-0.58674E+00,-0.58697E+00, & - &-0.58719E+00,-0.58741E+00,-0.58763E+00,-0.58785E+00,-0.58807E+00, & - &-0.58829E+00,-0.58851E+00,-0.58873E+00,-0.58895E+00,-0.58917E+00, & - &-0.58939E+00,-0.58961E+00,-0.58983E+00,-0.59004E+00,-0.59026E+00, & - &-0.59048E+00,-0.59069E+00,-0.59091E+00,-0.59113E+00,-0.59134E+00, & - &-0.59155E+00,-0.59177E+00,-0.59198E+00,-0.59220E+00,-0.59241E+00, & - &-0.59262E+00,-0.59283E+00,-0.59305E+00,-0.59326E+00,-0.59347E+00, & - &-0.59368E+00,-0.59389E+00,-0.59410E+00,-0.59431E+00,-0.59452E+00, & - &-0.59473E+00,-0.59494E+00,-0.59515E+00,-0.59535E+00,-0.59556E+00, & - &-0.59577E+00,-0.59598E+00,-0.59618E+00,-0.59639E+00,-0.59659E+00, & - &-0.59680E+00,-0.59701E+00,-0.59721E+00,-0.59741E+00,-0.59762E+00, & - &-0.59782E+00,-0.59803E+00,-0.59823E+00,-0.59843E+00,-0.59863E+00, & - &-0.59884E+00,-0.59904E+00,-0.59924E+00,-0.59944E+00,-0.59964E+00, & - &-0.59984E+00,-0.60004E+00,-0.60024E+00,-0.60044E+00,-0.60064E+00, & - &-0.60084E+00,-0.60104E+00,-0.60123E+00,-0.60143E+00,-0.60163E+00/ - - DATA (BNC03M(I),I=601,700)/ & - &-0.60374E+00,-0.60566E+00,-0.60755E+00,-0.60942E+00,-0.61125E+00, & - &-0.61305E+00,-0.61483E+00,-0.61658E+00,-0.61831E+00,-0.62001E+00, & - &-0.62169E+00,-0.62334E+00,-0.62497E+00,-0.62658E+00,-0.62816E+00, & - &-0.62973E+00,-0.63127E+00,-0.63279E+00,-0.63429E+00,-0.63578E+00, & - &-0.63724E+00,-0.63869E+00,-0.64012E+00,-0.64153E+00,-0.64292E+00, & - &-0.64430E+00,-0.64566E+00,-0.64700E+00,-0.64833E+00,-0.64964E+00, & - &-0.65094E+00,-0.65222E+00,-0.65349E+00,-0.65475E+00,-0.65599E+00, & - &-0.65721E+00,-0.65843E+00,-0.65963E+00,-0.66082E+00,-0.66199E+00, & - &-0.66315E+00,-0.66431E+00,-0.66544E+00,-0.66657E+00,-0.66769E+00, & - &-0.66879E+00,-0.66989E+00,-0.67097E+00,-0.67204E+00,-0.67310E+00, & - &-0.67415E+00,-0.67520E+00,-0.67623E+00,-0.67725E+00,-0.67826E+00, & - &-0.67927E+00,-0.68026E+00,-0.68124E+00,-0.68222E+00,-0.68319E+00, & - &-0.68415E+00,-0.68510E+00,-0.68604E+00,-0.68697E+00,-0.68790E+00, & - &-0.68881E+00,-0.68972E+00,-0.69062E+00,-0.69152E+00,-0.69241E+00, & - &-0.69329E+00,-0.69416E+00,-0.69502E+00,-0.69588E+00,-0.69673E+00, & - &-0.69758E+00,-0.69841E+00,-0.69924E+00,-0.70007E+00,-0.70089E+00, & - &-0.70170E+00,-0.70250E+00,-0.70330E+00,-0.70410E+00,-0.70488E+00, & - &-0.70566E+00,-0.70644E+00,-0.70721E+00,-0.70797E+00,-0.70873E+00, & - &-0.70948E+00,-0.71023E+00,-0.71097E+00,-0.71171E+00,-0.71244E+00, & - &-0.71317E+00,-0.71389E+00,-0.71460E+00,-0.71531E+00,-0.71602E+00/ - - DATA (BNC03M(I),I=701,741)/ & - &-0.71672E+00,-0.71742E+00,-0.71811E+00,-0.71880E+00,-0.71948E+00, & - &-0.72016E+00,-0.72083E+00,-0.72150E+00,-0.72216E+00,-0.72282E+00, & - &-0.72348E+00,-0.72413E+00,-0.72478E+00,-0.72542E+00,-0.72606E+00, & - &-0.72670E+00,-0.72733E+00,-0.72795E+00,-0.72858E+00,-0.72920E+00, & - &-0.72981E+00,-0.73042E+00,-0.73103E+00,-0.73163E+00,-0.73223E+00, & - &-0.73283E+00,-0.73342E+00,-0.73401E+00,-0.73460E+00,-0.73518E+00, & - &-0.73576E+00,-0.73634E+00,-0.73691E+00,-0.73748E+00,-0.73805E+00, & - &-0.73861E+00,-0.73917E+00,-0.73972E+00,-0.74028E+00,-0.74083E+00, & - &-0.74137E+00 & - & / -! -! *** (NH4)2SO4 -! - DATA (BNC04M(I),I=1,100)/ & - &-0.93137E-01,-0.20251E+00,-0.25708E+00,-0.29562E+00,-0.32582E+00, & - &-0.35081E+00,-0.37218E+00,-0.39089E+00,-0.40754E+00,-0.42256E+00, & - &-0.43624E+00,-0.44882E+00,-0.46045E+00,-0.47127E+00,-0.48140E+00, & - &-0.49091E+00,-0.49988E+00,-0.50837E+00,-0.51643E+00,-0.52409E+00, & - &-0.53140E+00,-0.53839E+00,-0.54509E+00,-0.55151E+00,-0.55769E+00, & - &-0.56363E+00,-0.56936E+00,-0.57489E+00,-0.58023E+00,-0.58540E+00, & - &-0.59041E+00,-0.59526E+00,-0.59997E+00,-0.60454E+00,-0.60898E+00, & - &-0.61330E+00,-0.61751E+00,-0.62160E+00,-0.62559E+00,-0.62949E+00, & - &-0.63328E+00,-0.63699E+00,-0.64061E+00,-0.64415E+00,-0.64761E+00, & - &-0.65099E+00,-0.65430E+00,-0.65754E+00,-0.66072E+00,-0.66383E+00, & - &-0.66687E+00,-0.66986E+00,-0.67279E+00,-0.67567E+00,-0.67849E+00, & - &-0.68126E+00,-0.68398E+00,-0.68666E+00,-0.68928E+00,-0.69187E+00, & - &-0.69441E+00,-0.69691E+00,-0.69937E+00,-0.70179E+00,-0.70418E+00, & - &-0.70653E+00,-0.70884E+00,-0.71112E+00,-0.71337E+00,-0.71558E+00, & - &-0.71777E+00,-0.71993E+00,-0.72206E+00,-0.72416E+00,-0.72624E+00, & - &-0.72829E+00,-0.73031E+00,-0.73231E+00,-0.73429E+00,-0.73625E+00, & - &-0.73818E+00,-0.74009E+00,-0.74199E+00,-0.74386E+00,-0.74571E+00, & - &-0.74755E+00,-0.74936E+00,-0.75116E+00,-0.75294E+00,-0.75471E+00, & - &-0.75646E+00,-0.75819E+00,-0.75990E+00,-0.76161E+00,-0.76329E+00, & - &-0.76497E+00,-0.76662E+00,-0.76827E+00,-0.76990E+00,-0.77152E+00/ - - DATA (BNC04M(I),I=101,200)/ & - &-0.77312E+00,-0.77471E+00,-0.77629E+00,-0.77786E+00,-0.77941E+00, & - &-0.78095E+00,-0.78248E+00,-0.78400E+00,-0.78550E+00,-0.78700E+00, & - &-0.78848E+00,-0.78996E+00,-0.79142E+00,-0.79287E+00,-0.79431E+00, & - &-0.79574E+00,-0.79716E+00,-0.79856E+00,-0.79996E+00,-0.80135E+00, & - &-0.80273E+00,-0.80410E+00,-0.80546E+00,-0.80681E+00,-0.80815E+00, & - &-0.80948E+00,-0.81080E+00,-0.81211E+00,-0.81341E+00,-0.81470E+00, & - &-0.81599E+00,-0.81726E+00,-0.81853E+00,-0.81979E+00,-0.82104E+00, & - &-0.82228E+00,-0.82352E+00,-0.82474E+00,-0.82596E+00,-0.82717E+00, & - &-0.82837E+00,-0.82956E+00,-0.83075E+00,-0.83193E+00,-0.83310E+00, & - &-0.83426E+00,-0.83542E+00,-0.83657E+00,-0.83771E+00,-0.83885E+00, & - &-0.83998E+00,-0.84110E+00,-0.84221E+00,-0.84332E+00,-0.84442E+00, & - &-0.84552E+00,-0.84661E+00,-0.84769E+00,-0.84876E+00,-0.84983E+00, & - &-0.85090E+00,-0.85195E+00,-0.85301E+00,-0.85405E+00,-0.85509E+00, & - &-0.85612E+00,-0.85715E+00,-0.85818E+00,-0.85919E+00,-0.86020E+00, & - &-0.86121E+00,-0.86221E+00,-0.86320E+00,-0.86419E+00,-0.86518E+00, & - &-0.86616E+00,-0.86713E+00,-0.86810E+00,-0.86907E+00,-0.87002E+00, & - &-0.87098E+00,-0.87193E+00,-0.87287E+00,-0.87381E+00,-0.87475E+00, & - &-0.87568E+00,-0.87660E+00,-0.87752E+00,-0.87844E+00,-0.87935E+00, & - &-0.88026E+00,-0.88116E+00,-0.88206E+00,-0.88296E+00,-0.88385E+00, & - &-0.88473E+00,-0.88562E+00,-0.88649E+00,-0.88737E+00,-0.88824E+00/ - - DATA (BNC04M(I),I=201,300)/ & - &-0.88910E+00,-0.88997E+00,-0.89082E+00,-0.89168E+00,-0.89253E+00, & - &-0.89337E+00,-0.89422E+00,-0.89505E+00,-0.89589E+00,-0.89672E+00, & - &-0.89755E+00,-0.89837E+00,-0.89919E+00,-0.90001E+00,-0.90082E+00, & - &-0.90163E+00,-0.90244E+00,-0.90324E+00,-0.90404E+00,-0.90483E+00, & - &-0.90563E+00,-0.90641E+00,-0.90720E+00,-0.90798E+00,-0.90876E+00, & - &-0.90954E+00,-0.91031E+00,-0.91108E+00,-0.91185E+00,-0.91261E+00, & - &-0.91337E+00,-0.91413E+00,-0.91488E+00,-0.91563E+00,-0.91638E+00, & - &-0.91713E+00,-0.91787E+00,-0.91861E+00,-0.91934E+00,-0.92008E+00, & - &-0.92081E+00,-0.92153E+00,-0.92226E+00,-0.92298E+00,-0.92370E+00, & - &-0.92442E+00,-0.92513E+00,-0.92584E+00,-0.92655E+00,-0.92726E+00, & - &-0.92796E+00,-0.92866E+00,-0.92936E+00,-0.93005E+00,-0.93075E+00, & - &-0.93144E+00,-0.93212E+00,-0.93281E+00,-0.93349E+00,-0.93417E+00, & - &-0.93485E+00,-0.93553E+00,-0.93620E+00,-0.93687E+00,-0.93754E+00, & - &-0.93820E+00,-0.93887E+00,-0.93953E+00,-0.94019E+00,-0.94084E+00, & - &-0.94150E+00,-0.94215E+00,-0.94280E+00,-0.94345E+00,-0.94409E+00, & - &-0.94473E+00,-0.94537E+00,-0.94601E+00,-0.94665E+00,-0.94728E+00, & - &-0.94792E+00,-0.94855E+00,-0.94917E+00,-0.94980E+00,-0.95042E+00, & - &-0.95104E+00,-0.95166E+00,-0.95228E+00,-0.95290E+00,-0.95351E+00, & - &-0.95412E+00,-0.95473E+00,-0.95534E+00,-0.95594E+00,-0.95655E+00, & - &-0.95715E+00,-0.95775E+00,-0.95835E+00,-0.95894E+00,-0.95954E+00/ - - DATA (BNC04M(I),I=301,400)/ & - &-0.96013E+00,-0.96072E+00,-0.96131E+00,-0.96189E+00,-0.96248E+00, & - &-0.96306E+00,-0.96364E+00,-0.96422E+00,-0.96480E+00,-0.96538E+00, & - &-0.96595E+00,-0.96652E+00,-0.96709E+00,-0.96766E+00,-0.96823E+00, & - &-0.96879E+00,-0.96936E+00,-0.96992E+00,-0.97048E+00,-0.97104E+00, & - &-0.97159E+00,-0.97215E+00,-0.97270E+00,-0.97325E+00,-0.97380E+00, & - &-0.97435E+00,-0.97490E+00,-0.97545E+00,-0.97599E+00,-0.97653E+00, & - &-0.97707E+00,-0.97761E+00,-0.97815E+00,-0.97869E+00,-0.97922E+00, & - &-0.97975E+00,-0.98028E+00,-0.98081E+00,-0.98134E+00,-0.98187E+00, & - &-0.98240E+00,-0.98292E+00,-0.98344E+00,-0.98396E+00,-0.98448E+00, & - &-0.98500E+00,-0.98552E+00,-0.98603E+00,-0.98655E+00,-0.98706E+00, & - &-0.98757E+00,-0.98808E+00,-0.98859E+00,-0.98909E+00,-0.98960E+00, & - &-0.99010E+00,-0.99061E+00,-0.99111E+00,-0.99161E+00,-0.99211E+00, & - &-0.99261E+00,-0.99310E+00,-0.99360E+00,-0.99409E+00,-0.99458E+00, & - &-0.99507E+00,-0.99556E+00,-0.99605E+00,-0.99654E+00,-0.99702E+00, & - &-0.99751E+00,-0.99799E+00,-0.99847E+00,-0.99895E+00,-0.99943E+00, & - &-0.99991E+00,-0.10004E+01,-0.10009E+01,-0.10013E+01,-0.10018E+01, & - &-0.10023E+01,-0.10028E+01,-0.10032E+01,-0.10037E+01,-0.10042E+01, & - &-0.10046E+01,-0.10051E+01,-0.10056E+01,-0.10060E+01,-0.10065E+01, & - &-0.10069E+01,-0.10074E+01,-0.10079E+01,-0.10083E+01,-0.10088E+01, & - &-0.10092E+01,-0.10097E+01,-0.10101E+01,-0.10106E+01,-0.10110E+01/ - - DATA (BNC04M(I),I=401,500)/ & - &-0.10115E+01,-0.10119E+01,-0.10124E+01,-0.10128E+01,-0.10133E+01, & - &-0.10137E+01,-0.10142E+01,-0.10146E+01,-0.10150E+01,-0.10155E+01, & - &-0.10159E+01,-0.10164E+01,-0.10168E+01,-0.10172E+01,-0.10177E+01, & - &-0.10181E+01,-0.10185E+01,-0.10190E+01,-0.10194E+01,-0.10198E+01, & - &-0.10202E+01,-0.10207E+01,-0.10211E+01,-0.10215E+01,-0.10219E+01, & - &-0.10224E+01,-0.10228E+01,-0.10232E+01,-0.10236E+01,-0.10241E+01, & - &-0.10245E+01,-0.10249E+01,-0.10253E+01,-0.10257E+01,-0.10261E+01, & - &-0.10266E+01,-0.10270E+01,-0.10274E+01,-0.10278E+01,-0.10282E+01, & - &-0.10286E+01,-0.10290E+01,-0.10294E+01,-0.10298E+01,-0.10302E+01, & - &-0.10306E+01,-0.10310E+01,-0.10315E+01,-0.10319E+01,-0.10323E+01, & - &-0.10327E+01,-0.10331E+01,-0.10335E+01,-0.10339E+01,-0.10342E+01, & - &-0.10346E+01,-0.10350E+01,-0.10354E+01,-0.10358E+01,-0.10362E+01, & - &-0.10366E+01,-0.10370E+01,-0.10374E+01,-0.10378E+01,-0.10382E+01, & - &-0.10386E+01,-0.10389E+01,-0.10393E+01,-0.10397E+01,-0.10401E+01, & - &-0.10405E+01,-0.10409E+01,-0.10413E+01,-0.10416E+01,-0.10420E+01, & - &-0.10424E+01,-0.10428E+01,-0.10431E+01,-0.10435E+01,-0.10439E+01, & - &-0.10443E+01,-0.10447E+01,-0.10450E+01,-0.10454E+01,-0.10458E+01, & - &-0.10461E+01,-0.10465E+01,-0.10469E+01,-0.10473E+01,-0.10476E+01, & - &-0.10480E+01,-0.10484E+01,-0.10487E+01,-0.10491E+01,-0.10495E+01, & - &-0.10498E+01,-0.10502E+01,-0.10506E+01,-0.10509E+01,-0.10513E+01/ - - DATA (BNC04M(I),I=501,600)/ & - &-0.10516E+01,-0.10520E+01,-0.10524E+01,-0.10527E+01,-0.10531E+01, & - &-0.10534E+01,-0.10538E+01,-0.10541E+01,-0.10545E+01,-0.10549E+01, & - &-0.10552E+01,-0.10556E+01,-0.10559E+01,-0.10563E+01,-0.10566E+01, & - &-0.10570E+01,-0.10573E+01,-0.10577E+01,-0.10580E+01,-0.10584E+01, & - &-0.10587E+01,-0.10591E+01,-0.10594E+01,-0.10597E+01,-0.10601E+01, & - &-0.10604E+01,-0.10608E+01,-0.10611E+01,-0.10615E+01,-0.10618E+01, & - &-0.10621E+01,-0.10625E+01,-0.10628E+01,-0.10632E+01,-0.10635E+01, & - &-0.10638E+01,-0.10642E+01,-0.10645E+01,-0.10648E+01,-0.10652E+01, & - &-0.10655E+01,-0.10659E+01,-0.10662E+01,-0.10665E+01,-0.10668E+01, & - &-0.10672E+01,-0.10675E+01,-0.10678E+01,-0.10682E+01,-0.10685E+01, & - &-0.10688E+01,-0.10692E+01,-0.10695E+01,-0.10698E+01,-0.10701E+01, & - &-0.10705E+01,-0.10708E+01,-0.10711E+01,-0.10714E+01,-0.10718E+01, & - &-0.10721E+01,-0.10724E+01,-0.10727E+01,-0.10730E+01,-0.10734E+01, & - &-0.10737E+01,-0.10740E+01,-0.10743E+01,-0.10746E+01,-0.10750E+01, & - &-0.10753E+01,-0.10756E+01,-0.10759E+01,-0.10762E+01,-0.10765E+01, & - &-0.10768E+01,-0.10772E+01,-0.10775E+01,-0.10778E+01,-0.10781E+01, & - &-0.10784E+01,-0.10787E+01,-0.10790E+01,-0.10793E+01,-0.10796E+01, & - &-0.10800E+01,-0.10803E+01,-0.10806E+01,-0.10809E+01,-0.10812E+01, & - &-0.10815E+01,-0.10818E+01,-0.10821E+01,-0.10824E+01,-0.10827E+01, & - &-0.10830E+01,-0.10833E+01,-0.10836E+01,-0.10839E+01,-0.10842E+01/ - - DATA (BNC04M(I),I=601,700)/ & - &-0.10874E+01,-0.10904E+01,-0.10933E+01,-0.10961E+01,-0.10989E+01, & - &-0.11017E+01,-0.11044E+01,-0.11070E+01,-0.11097E+01,-0.11123E+01, & - &-0.11148E+01,-0.11173E+01,-0.11198E+01,-0.11223E+01,-0.11247E+01, & - &-0.11271E+01,-0.11294E+01,-0.11317E+01,-0.11340E+01,-0.11363E+01, & - &-0.11385E+01,-0.11407E+01,-0.11429E+01,-0.11450E+01,-0.11471E+01, & - &-0.11492E+01,-0.11513E+01,-0.11534E+01,-0.11554E+01,-0.11574E+01, & - &-0.11593E+01,-0.11613E+01,-0.11632E+01,-0.11651E+01,-0.11670E+01, & - &-0.11689E+01,-0.11707E+01,-0.11726E+01,-0.11744E+01,-0.11762E+01, & - &-0.11779E+01,-0.11797E+01,-0.11814E+01,-0.11831E+01,-0.11848E+01, & - &-0.11865E+01,-0.11882E+01,-0.11898E+01,-0.11915E+01,-0.11931E+01, & - &-0.11947E+01,-0.11963E+01,-0.11978E+01,-0.11994E+01,-0.12009E+01, & - &-0.12025E+01,-0.12040E+01,-0.12055E+01,-0.12070E+01,-0.12084E+01, & - &-0.12099E+01,-0.12114E+01,-0.12128E+01,-0.12142E+01,-0.12156E+01, & - &-0.12170E+01,-0.12184E+01,-0.12198E+01,-0.12212E+01,-0.12225E+01, & - &-0.12238E+01,-0.12252E+01,-0.12265E+01,-0.12278E+01,-0.12291E+01, & - &-0.12304E+01,-0.12317E+01,-0.12329E+01,-0.12342E+01,-0.12355E+01, & - &-0.12367E+01,-0.12379E+01,-0.12391E+01,-0.12404E+01,-0.12416E+01, & - &-0.12428E+01,-0.12439E+01,-0.12451E+01,-0.12463E+01,-0.12474E+01, & - &-0.12486E+01,-0.12497E+01,-0.12509E+01,-0.12520E+01,-0.12531E+01, & - &-0.12542E+01,-0.12553E+01,-0.12564E+01,-0.12575E+01,-0.12586E+01/ - - DATA (BNC04M(I),I=701,741)/ & - &-0.12597E+01,-0.12607E+01,-0.12618E+01,-0.12629E+01,-0.12639E+01, & - &-0.12649E+01,-0.12660E+01,-0.12670E+01,-0.12680E+01,-0.12690E+01, & - &-0.12700E+01,-0.12710E+01,-0.12720E+01,-0.12730E+01,-0.12740E+01, & - &-0.12750E+01,-0.12760E+01,-0.12769E+01,-0.12779E+01,-0.12788E+01, & - &-0.12798E+01,-0.12807E+01,-0.12816E+01,-0.12826E+01,-0.12835E+01, & - &-0.12844E+01,-0.12853E+01,-0.12862E+01,-0.12871E+01,-0.12880E+01, & - &-0.12889E+01,-0.12898E+01,-0.12907E+01,-0.12916E+01,-0.12924E+01, & - &-0.12933E+01,-0.12942E+01,-0.12950E+01,-0.12959E+01,-0.12967E+01, & - &-0.12976E+01 & - & / -! -! *** NH4NO3 -! - DATA (BNC05M(I),I=1,100)/ & - &-0.47107E-01,-0.10421E+00,-0.13373E+00,-0.15513E+00,-0.17228E+00, & - &-0.18677E+00,-0.19941E+00,-0.21068E+00,-0.22088E+00,-0.23023E+00, & - &-0.23889E+00,-0.24697E+00,-0.25455E+00,-0.26171E+00,-0.26849E+00, & - &-0.27495E+00,-0.28111E+00,-0.28702E+00,-0.29269E+00,-0.29814E+00, & - &-0.30340E+00,-0.30849E+00,-0.31340E+00,-0.31817E+00,-0.32279E+00, & - &-0.32728E+00,-0.33165E+00,-0.33590E+00,-0.34004E+00,-0.34408E+00, & - &-0.34802E+00,-0.35186E+00,-0.35562E+00,-0.35930E+00,-0.36289E+00, & - &-0.36641E+00,-0.36986E+00,-0.37323E+00,-0.37654E+00,-0.37978E+00, & - &-0.38296E+00,-0.38609E+00,-0.38915E+00,-0.39216E+00,-0.39511E+00, & - &-0.39801E+00,-0.40086E+00,-0.40367E+00,-0.40642E+00,-0.40913E+00, & - &-0.41180E+00,-0.41443E+00,-0.41701E+00,-0.41956E+00,-0.42207E+00, & - &-0.42454E+00,-0.42697E+00,-0.42937E+00,-0.43174E+00,-0.43408E+00, & - &-0.43639E+00,-0.43866E+00,-0.44091E+00,-0.44313E+00,-0.44533E+00, & - &-0.44750E+00,-0.44965E+00,-0.45177E+00,-0.45387E+00,-0.45595E+00, & - &-0.45801E+00,-0.46005E+00,-0.46207E+00,-0.46408E+00,-0.46606E+00, & - &-0.46803E+00,-0.46999E+00,-0.47193E+00,-0.47386E+00,-0.47577E+00, & - &-0.47767E+00,-0.47956E+00,-0.48143E+00,-0.48330E+00,-0.48515E+00, & - &-0.48700E+00,-0.48883E+00,-0.49065E+00,-0.49247E+00,-0.49427E+00, & - &-0.49607E+00,-0.49786E+00,-0.49964E+00,-0.50141E+00,-0.50317E+00, & - &-0.50493E+00,-0.50668E+00,-0.50842E+00,-0.51015E+00,-0.51188E+00/ - - DATA (BNC05M(I),I=101,200)/ & - &-0.51359E+00,-0.51530E+00,-0.51701E+00,-0.51870E+00,-0.52039E+00, & - &-0.52208E+00,-0.52375E+00,-0.52542E+00,-0.52708E+00,-0.52873E+00, & - &-0.53038E+00,-0.53201E+00,-0.53364E+00,-0.53527E+00,-0.53688E+00, & - &-0.53849E+00,-0.54009E+00,-0.54168E+00,-0.54327E+00,-0.54485E+00, & - &-0.54642E+00,-0.54798E+00,-0.54953E+00,-0.55108E+00,-0.55262E+00, & - &-0.55415E+00,-0.55568E+00,-0.55719E+00,-0.55870E+00,-0.56020E+00, & - &-0.56170E+00,-0.56318E+00,-0.56466E+00,-0.56613E+00,-0.56760E+00, & - &-0.56905E+00,-0.57050E+00,-0.57195E+00,-0.57338E+00,-0.57481E+00, & - &-0.57623E+00,-0.57764E+00,-0.57905E+00,-0.58044E+00,-0.58184E+00, & - &-0.58322E+00,-0.58460E+00,-0.58597E+00,-0.58734E+00,-0.58869E+00, & - &-0.59004E+00,-0.59139E+00,-0.59273E+00,-0.59406E+00,-0.59539E+00, & - &-0.59670E+00,-0.59802E+00,-0.59932E+00,-0.60062E+00,-0.60192E+00, & - &-0.60321E+00,-0.60449E+00,-0.60577E+00,-0.60704E+00,-0.60830E+00, & - &-0.60956E+00,-0.61081E+00,-0.61206E+00,-0.61330E+00,-0.61454E+00, & - &-0.61577E+00,-0.61699E+00,-0.61821E+00,-0.61943E+00,-0.62064E+00, & - &-0.62184E+00,-0.62304E+00,-0.62423E+00,-0.62542E+00,-0.62660E+00, & - &-0.62778E+00,-0.62895E+00,-0.63012E+00,-0.63128E+00,-0.63244E+00, & - &-0.63359E+00,-0.63474E+00,-0.63588E+00,-0.63702E+00,-0.63815E+00, & - &-0.63928E+00,-0.64040E+00,-0.64152E+00,-0.64264E+00,-0.64375E+00, & - &-0.64485E+00,-0.64595E+00,-0.64705E+00,-0.64814E+00,-0.64923E+00/ - - DATA (BNC05M(I),I=201,300)/ & - &-0.65031E+00,-0.65139E+00,-0.65246E+00,-0.65353E+00,-0.65460E+00, & - &-0.65566E+00,-0.65672E+00,-0.65777E+00,-0.65882E+00,-0.65986E+00, & - &-0.66090E+00,-0.66194E+00,-0.66297E+00,-0.66400E+00,-0.66502E+00, & - &-0.66605E+00,-0.66706E+00,-0.66807E+00,-0.66908E+00,-0.67009E+00, & - &-0.67109E+00,-0.67209E+00,-0.67308E+00,-0.67407E+00,-0.67506E+00, & - &-0.67604E+00,-0.67702E+00,-0.67799E+00,-0.67896E+00,-0.67993E+00, & - &-0.68090E+00,-0.68186E+00,-0.68281E+00,-0.68377E+00,-0.68472E+00, & - &-0.68566E+00,-0.68661E+00,-0.68755E+00,-0.68848E+00,-0.68942E+00, & - &-0.69035E+00,-0.69127E+00,-0.69220E+00,-0.69312E+00,-0.69403E+00, & - &-0.69495E+00,-0.69586E+00,-0.69676E+00,-0.69767E+00,-0.69857E+00, & - &-0.69946E+00,-0.70036E+00,-0.70125E+00,-0.70214E+00,-0.70302E+00, & - &-0.70390E+00,-0.70478E+00,-0.70566E+00,-0.70653E+00,-0.70740E+00, & - &-0.70827E+00,-0.70913E+00,-0.70999E+00,-0.71085E+00,-0.71170E+00, & - &-0.71256E+00,-0.71340E+00,-0.71425E+00,-0.71509E+00,-0.71593E+00, & - &-0.71677E+00,-0.71761E+00,-0.71844E+00,-0.71927E+00,-0.72010E+00, & - &-0.72092E+00,-0.72174E+00,-0.72256E+00,-0.72337E+00,-0.72419E+00, & - &-0.72500E+00,-0.72581E+00,-0.72661E+00,-0.72741E+00,-0.72821E+00, & - &-0.72901E+00,-0.72981E+00,-0.73060E+00,-0.73139E+00,-0.73218E+00, & - &-0.73296E+00,-0.73374E+00,-0.73452E+00,-0.73530E+00,-0.73607E+00, & - &-0.73685E+00,-0.73762E+00,-0.73838E+00,-0.73915E+00,-0.73991E+00/ - - DATA (BNC05M(I),I=301,400)/ & - &-0.74067E+00,-0.74143E+00,-0.74218E+00,-0.74294E+00,-0.74369E+00, & - &-0.74444E+00,-0.74518E+00,-0.74593E+00,-0.74667E+00,-0.74741E+00, & - &-0.74814E+00,-0.74888E+00,-0.74961E+00,-0.75034E+00,-0.75107E+00, & - &-0.75179E+00,-0.75252E+00,-0.75324E+00,-0.75396E+00,-0.75468E+00, & - &-0.75539E+00,-0.75610E+00,-0.75681E+00,-0.75752E+00,-0.75823E+00, & - &-0.75893E+00,-0.75963E+00,-0.76033E+00,-0.76103E+00,-0.76173E+00, & - &-0.76242E+00,-0.76311E+00,-0.76380E+00,-0.76449E+00,-0.76518E+00, & - &-0.76586E+00,-0.76654E+00,-0.76722E+00,-0.76790E+00,-0.76857E+00, & - &-0.76925E+00,-0.76992E+00,-0.77059E+00,-0.77126E+00,-0.77192E+00, & - &-0.77259E+00,-0.77325E+00,-0.77391E+00,-0.77457E+00,-0.77523E+00, & - &-0.77588E+00,-0.77653E+00,-0.77718E+00,-0.77783E+00,-0.77848E+00, & - &-0.77913E+00,-0.77977E+00,-0.78041E+00,-0.78105E+00,-0.78169E+00, & - &-0.78233E+00,-0.78296E+00,-0.78359E+00,-0.78422E+00,-0.78485E+00, & - &-0.78548E+00,-0.78611E+00,-0.78673E+00,-0.78735E+00,-0.78797E+00, & - &-0.78859E+00,-0.78921E+00,-0.78983E+00,-0.79044E+00,-0.79105E+00, & - &-0.79166E+00,-0.79227E+00,-0.79288E+00,-0.79348E+00,-0.79409E+00, & - &-0.79469E+00,-0.79529E+00,-0.79589E+00,-0.79649E+00,-0.79708E+00, & - &-0.79768E+00,-0.79827E+00,-0.79886E+00,-0.79945E+00,-0.80004E+00, & - &-0.80062E+00,-0.80121E+00,-0.80179E+00,-0.80237E+00,-0.80295E+00, & - &-0.80353E+00,-0.80411E+00,-0.80468E+00,-0.80526E+00,-0.80583E+00/ - - DATA (BNC05M(I),I=401,500)/ & - &-0.80640E+00,-0.80697E+00,-0.80754E+00,-0.80811E+00,-0.80867E+00, & - &-0.80923E+00,-0.80980E+00,-0.81036E+00,-0.81092E+00,-0.81147E+00, & - &-0.81203E+00,-0.81259E+00,-0.81314E+00,-0.81369E+00,-0.81424E+00, & - &-0.81479E+00,-0.81534E+00,-0.81589E+00,-0.81643E+00,-0.81697E+00, & - &-0.81752E+00,-0.81806E+00,-0.81860E+00,-0.81913E+00,-0.81967E+00, & - &-0.82021E+00,-0.82074E+00,-0.82127E+00,-0.82180E+00,-0.82233E+00, & - &-0.82286E+00,-0.82339E+00,-0.82392E+00,-0.82444E+00,-0.82496E+00, & - &-0.82549E+00,-0.82601E+00,-0.82653E+00,-0.82705E+00,-0.82756E+00, & - &-0.82808E+00,-0.82859E+00,-0.82911E+00,-0.82962E+00,-0.83013E+00, & - &-0.83064E+00,-0.83115E+00,-0.83165E+00,-0.83216E+00,-0.83266E+00, & - &-0.83317E+00,-0.83367E+00,-0.83417E+00,-0.83467E+00,-0.83517E+00, & - &-0.83566E+00,-0.83616E+00,-0.83665E+00,-0.83715E+00,-0.83764E+00, & - &-0.83813E+00,-0.83862E+00,-0.83911E+00,-0.83960E+00,-0.84008E+00, & - &-0.84057E+00,-0.84105E+00,-0.84154E+00,-0.84202E+00,-0.84250E+00, & - &-0.84298E+00,-0.84346E+00,-0.84393E+00,-0.84441E+00,-0.84489E+00, & - &-0.84536E+00,-0.84583E+00,-0.84630E+00,-0.84677E+00,-0.84724E+00, & - &-0.84771E+00,-0.84818E+00,-0.84865E+00,-0.84911E+00,-0.84957E+00, & - &-0.85004E+00,-0.85050E+00,-0.85096E+00,-0.85142E+00,-0.85188E+00, & - &-0.85234E+00,-0.85279E+00,-0.85325E+00,-0.85370E+00,-0.85416E+00, & - &-0.85461E+00,-0.85506E+00,-0.85551E+00,-0.85596E+00,-0.85641E+00/ - - DATA (BNC05M(I),I=501,600)/ & - &-0.85686E+00,-0.85730E+00,-0.85775E+00,-0.85819E+00,-0.85863E+00, & - &-0.85908E+00,-0.85952E+00,-0.85996E+00,-0.86040E+00,-0.86084E+00, & - &-0.86127E+00,-0.86171E+00,-0.86214E+00,-0.86258E+00,-0.86301E+00, & - &-0.86344E+00,-0.86388E+00,-0.86431E+00,-0.86474E+00,-0.86516E+00, & - &-0.86559E+00,-0.86602E+00,-0.86644E+00,-0.86687E+00,-0.86729E+00, & - &-0.86772E+00,-0.86814E+00,-0.86856E+00,-0.86898E+00,-0.86940E+00, & - &-0.86982E+00,-0.87023E+00,-0.87065E+00,-0.87106E+00,-0.87148E+00, & - &-0.87189E+00,-0.87231E+00,-0.87272E+00,-0.87313E+00,-0.87354E+00, & - &-0.87395E+00,-0.87436E+00,-0.87476E+00,-0.87517E+00,-0.87558E+00, & - &-0.87598E+00,-0.87638E+00,-0.87679E+00,-0.87719E+00,-0.87759E+00, & - &-0.87799E+00,-0.87839E+00,-0.87879E+00,-0.87919E+00,-0.87958E+00, & - &-0.87998E+00,-0.88038E+00,-0.88077E+00,-0.88116E+00,-0.88156E+00, & - &-0.88195E+00,-0.88234E+00,-0.88273E+00,-0.88312E+00,-0.88351E+00, & - &-0.88390E+00,-0.88428E+00,-0.88467E+00,-0.88506E+00,-0.88544E+00, & - &-0.88582E+00,-0.88621E+00,-0.88659E+00,-0.88697E+00,-0.88735E+00, & - &-0.88773E+00,-0.88811E+00,-0.88849E+00,-0.88887E+00,-0.88924E+00, & - &-0.88962E+00,-0.88999E+00,-0.89037E+00,-0.89074E+00,-0.89112E+00, & - &-0.89149E+00,-0.89186E+00,-0.89223E+00,-0.89260E+00,-0.89297E+00, & - &-0.89334E+00,-0.89370E+00,-0.89407E+00,-0.89444E+00,-0.89480E+00, & - &-0.89517E+00,-0.89553E+00,-0.89589E+00,-0.89626E+00,-0.89662E+00/ - - DATA (BNC05M(I),I=601,700)/ & - &-0.90048E+00,-0.90398E+00,-0.90741E+00,-0.91077E+00,-0.91407E+00, & - &-0.91731E+00,-0.92048E+00,-0.92360E+00,-0.92666E+00,-0.92966E+00, & - &-0.93261E+00,-0.93551E+00,-0.93835E+00,-0.94115E+00,-0.94389E+00, & - &-0.94659E+00,-0.94924E+00,-0.95185E+00,-0.95441E+00,-0.95693E+00, & - &-0.95941E+00,-0.96185E+00,-0.96425E+00,-0.96661E+00,-0.96893E+00, & - &-0.97121E+00,-0.97346E+00,-0.97568E+00,-0.97786E+00,-0.98000E+00, & - &-0.98212E+00,-0.98420E+00,-0.98625E+00,-0.98827E+00,-0.99026E+00, & - &-0.99222E+00,-0.99415E+00,-0.99605E+00,-0.99793E+00,-0.99978E+00, & - &-0.10016E+01,-0.10034E+01,-0.10052E+01,-0.10069E+01,-0.10087E+01, & - &-0.10104E+01,-0.10120E+01,-0.10137E+01,-0.10153E+01,-0.10169E+01, & - &-0.10185E+01,-0.10201E+01,-0.10216E+01,-0.10232E+01,-0.10247E+01, & - &-0.10262E+01,-0.10276E+01,-0.10291E+01,-0.10305E+01,-0.10319E+01, & - &-0.10333E+01,-0.10347E+01,-0.10361E+01,-0.10374E+01,-0.10388E+01, & - &-0.10401E+01,-0.10414E+01,-0.10427E+01,-0.10439E+01,-0.10452E+01, & - &-0.10464E+01,-0.10477E+01,-0.10489E+01,-0.10501E+01,-0.10513E+01, & - &-0.10524E+01,-0.10536E+01,-0.10547E+01,-0.10559E+01,-0.10570E+01, & - &-0.10581E+01,-0.10592E+01,-0.10603E+01,-0.10613E+01,-0.10624E+01, & - &-0.10635E+01,-0.10645E+01,-0.10655E+01,-0.10665E+01,-0.10675E+01, & - &-0.10685E+01,-0.10695E+01,-0.10705E+01,-0.10715E+01,-0.10724E+01, & - &-0.10734E+01,-0.10743E+01,-0.10752E+01,-0.10761E+01,-0.10770E+01/ - - DATA (BNC05M(I),I=701,741)/ & - &-0.10779E+01,-0.10788E+01,-0.10797E+01,-0.10806E+01,-0.10814E+01, & - &-0.10823E+01,-0.10831E+01,-0.10840E+01,-0.10848E+01,-0.10856E+01, & - &-0.10865E+01,-0.10873E+01,-0.10881E+01,-0.10889E+01,-0.10896E+01, & - &-0.10904E+01,-0.10912E+01,-0.10920E+01,-0.10927E+01,-0.10935E+01, & - &-0.10942E+01,-0.10949E+01,-0.10957E+01,-0.10964E+01,-0.10971E+01, & - &-0.10978E+01,-0.10985E+01,-0.10992E+01,-0.10999E+01,-0.11006E+01, & - &-0.11013E+01,-0.11020E+01,-0.11026E+01,-0.11033E+01,-0.11039E+01, & - &-0.11046E+01,-0.11052E+01,-0.11059E+01,-0.11065E+01,-0.11071E+01, & - &-0.11078E+01 & - & / -! -! *** NH4Cl -! - DATA (BNC06M(I),I=1,100)/ & - &-0.45990E-01,-0.98113E-01,-0.12306E+00,-0.14011E+00,-0.15308E+00, & - &-0.16349E+00,-0.17215E+00,-0.17952E+00,-0.18589E+00,-0.19149E+00, & - &-0.19644E+00,-0.20086E+00,-0.20484E+00,-0.20843E+00,-0.21170E+00, & - &-0.21467E+00,-0.21740E+00,-0.21990E+00,-0.22221E+00,-0.22433E+00, & - &-0.22630E+00,-0.22812E+00,-0.22981E+00,-0.23138E+00,-0.23284E+00, & - &-0.23420E+00,-0.23547E+00,-0.23665E+00,-0.23775E+00,-0.23879E+00, & - &-0.23975E+00,-0.24065E+00,-0.24150E+00,-0.24229E+00,-0.24303E+00, & - &-0.24372E+00,-0.24437E+00,-0.24498E+00,-0.24555E+00,-0.24608E+00, & - &-0.24658E+00,-0.24705E+00,-0.24749E+00,-0.24790E+00,-0.24829E+00, & - &-0.24865E+00,-0.24898E+00,-0.24929E+00,-0.24959E+00,-0.24986E+00, & - &-0.25011E+00,-0.25034E+00,-0.25056E+00,-0.25076E+00,-0.25094E+00, & - &-0.25111E+00,-0.25126E+00,-0.25140E+00,-0.25152E+00,-0.25163E+00, & - &-0.25173E+00,-0.25182E+00,-0.25189E+00,-0.25195E+00,-0.25200E+00, & - &-0.25204E+00,-0.25206E+00,-0.25207E+00,-0.25208E+00,-0.25207E+00, & - &-0.25205E+00,-0.25202E+00,-0.25198E+00,-0.25192E+00,-0.25186E+00, & - &-0.25179E+00,-0.25170E+00,-0.25161E+00,-0.25150E+00,-0.25139E+00, & - &-0.25126E+00,-0.25113E+00,-0.25098E+00,-0.25083E+00,-0.25066E+00, & - &-0.25049E+00,-0.25030E+00,-0.25011E+00,-0.24990E+00,-0.24969E+00, & - &-0.24946E+00,-0.24923E+00,-0.24899E+00,-0.24874E+00,-0.24848E+00, & - &-0.24822E+00,-0.24794E+00,-0.24766E+00,-0.24737E+00,-0.24707E+00/ - - DATA (BNC06M(I),I=101,200)/ & - &-0.24676E+00,-0.24645E+00,-0.24613E+00,-0.24580E+00,-0.24547E+00, & - &-0.24513E+00,-0.24479E+00,-0.24443E+00,-0.24408E+00,-0.24371E+00, & - &-0.24335E+00,-0.24297E+00,-0.24259E+00,-0.24221E+00,-0.24183E+00, & - &-0.24143E+00,-0.24104E+00,-0.24064E+00,-0.24024E+00,-0.23983E+00, & - &-0.23942E+00,-0.23901E+00,-0.23859E+00,-0.23817E+00,-0.23775E+00, & - &-0.23733E+00,-0.23690E+00,-0.23647E+00,-0.23604E+00,-0.23560E+00, & - &-0.23517E+00,-0.23473E+00,-0.23429E+00,-0.23385E+00,-0.23340E+00, & - &-0.23296E+00,-0.23251E+00,-0.23206E+00,-0.23161E+00,-0.23116E+00, & - &-0.23071E+00,-0.23025E+00,-0.22980E+00,-0.22934E+00,-0.22888E+00, & - &-0.22842E+00,-0.22796E+00,-0.22750E+00,-0.22704E+00,-0.22658E+00, & - &-0.22611E+00,-0.22565E+00,-0.22518E+00,-0.22472E+00,-0.22425E+00, & - &-0.22378E+00,-0.22331E+00,-0.22284E+00,-0.22237E+00,-0.22190E+00, & - &-0.22143E+00,-0.22096E+00,-0.22049E+00,-0.22001E+00,-0.21954E+00, & - &-0.21906E+00,-0.21859E+00,-0.21812E+00,-0.21764E+00,-0.21716E+00, & - &-0.21669E+00,-0.21621E+00,-0.21573E+00,-0.21526E+00,-0.21478E+00, & - &-0.21430E+00,-0.21382E+00,-0.21334E+00,-0.21286E+00,-0.21238E+00, & - &-0.21191E+00,-0.21143E+00,-0.21095E+00,-0.21047E+00,-0.20999E+00, & - &-0.20951E+00,-0.20903E+00,-0.20854E+00,-0.20806E+00,-0.20758E+00, & - &-0.20710E+00,-0.20662E+00,-0.20614E+00,-0.20566E+00,-0.20518E+00, & - &-0.20470E+00,-0.20422E+00,-0.20373E+00,-0.20325E+00,-0.20277E+00/ - - DATA (BNC06M(I),I=201,300)/ & - &-0.20229E+00,-0.20181E+00,-0.20133E+00,-0.20085E+00,-0.20037E+00, & - &-0.19989E+00,-0.19941E+00,-0.19892E+00,-0.19844E+00,-0.19796E+00, & - &-0.19748E+00,-0.19700E+00,-0.19652E+00,-0.19604E+00,-0.19556E+00, & - &-0.19508E+00,-0.19460E+00,-0.19412E+00,-0.19364E+00,-0.19316E+00, & - &-0.19269E+00,-0.19221E+00,-0.19173E+00,-0.19125E+00,-0.19077E+00, & - &-0.19029E+00,-0.18982E+00,-0.18934E+00,-0.18886E+00,-0.18838E+00, & - &-0.18791E+00,-0.18743E+00,-0.18695E+00,-0.18648E+00,-0.18600E+00, & - &-0.18553E+00,-0.18505E+00,-0.18458E+00,-0.18410E+00,-0.18363E+00, & - &-0.18315E+00,-0.18268E+00,-0.18221E+00,-0.18173E+00,-0.18126E+00, & - &-0.18079E+00,-0.18031E+00,-0.17984E+00,-0.17937E+00,-0.17890E+00, & - &-0.17843E+00,-0.17796E+00,-0.17749E+00,-0.17702E+00,-0.17655E+00, & - &-0.17608E+00,-0.17561E+00,-0.17514E+00,-0.17467E+00,-0.17420E+00, & - &-0.17373E+00,-0.17327E+00,-0.17280E+00,-0.17233E+00,-0.17187E+00, & - &-0.17140E+00,-0.17093E+00,-0.17047E+00,-0.17000E+00,-0.16954E+00, & - &-0.16908E+00,-0.16861E+00,-0.16815E+00,-0.16769E+00,-0.16722E+00, & - &-0.16676E+00,-0.16630E+00,-0.16584E+00,-0.16538E+00,-0.16492E+00, & - &-0.16446E+00,-0.16400E+00,-0.16354E+00,-0.16308E+00,-0.16262E+00, & - &-0.16216E+00,-0.16170E+00,-0.16124E+00,-0.16079E+00,-0.16033E+00, & - &-0.15987E+00,-0.15942E+00,-0.15896E+00,-0.15851E+00,-0.15805E+00, & - &-0.15760E+00,-0.15714E+00,-0.15669E+00,-0.15624E+00,-0.15579E+00/ - - DATA (BNC06M(I),I=301,400)/ & - &-0.15533E+00,-0.15488E+00,-0.15443E+00,-0.15398E+00,-0.15353E+00, & - &-0.15308E+00,-0.15263E+00,-0.15218E+00,-0.15173E+00,-0.15128E+00, & - &-0.15083E+00,-0.15039E+00,-0.14994E+00,-0.14949E+00,-0.14905E+00, & - &-0.14860E+00,-0.14816E+00,-0.14771E+00,-0.14727E+00,-0.14682E+00, & - &-0.14638E+00,-0.14594E+00,-0.14549E+00,-0.14505E+00,-0.14461E+00, & - &-0.14417E+00,-0.14373E+00,-0.14328E+00,-0.14284E+00,-0.14240E+00, & - &-0.14197E+00,-0.14153E+00,-0.14109E+00,-0.14065E+00,-0.14021E+00, & - &-0.13977E+00,-0.13934E+00,-0.13890E+00,-0.13847E+00,-0.13803E+00, & - &-0.13760E+00,-0.13716E+00,-0.13673E+00,-0.13629E+00,-0.13586E+00, & - &-0.13543E+00,-0.13499E+00,-0.13456E+00,-0.13413E+00,-0.13370E+00, & - &-0.13327E+00,-0.13284E+00,-0.13241E+00,-0.13198E+00,-0.13155E+00, & - &-0.13112E+00,-0.13069E+00,-0.13027E+00,-0.12984E+00,-0.12941E+00, & - &-0.12899E+00,-0.12856E+00,-0.12813E+00,-0.12771E+00,-0.12729E+00, & - &-0.12686E+00,-0.12644E+00,-0.12601E+00,-0.12559E+00,-0.12517E+00, & - &-0.12475E+00,-0.12433E+00,-0.12390E+00,-0.12348E+00,-0.12306E+00, & - &-0.12264E+00,-0.12222E+00,-0.12181E+00,-0.12139E+00,-0.12097E+00, & - &-0.12055E+00,-0.12013E+00,-0.11972E+00,-0.11930E+00,-0.11888E+00, & - &-0.11847E+00,-0.11805E+00,-0.11764E+00,-0.11722E+00,-0.11681E+00, & - &-0.11640E+00,-0.11598E+00,-0.11557E+00,-0.11516E+00,-0.11475E+00, & - &-0.11434E+00,-0.11393E+00,-0.11352E+00,-0.11311E+00,-0.11270E+00/ - - DATA (BNC06M(I),I=401,500)/ & - &-0.11229E+00,-0.11188E+00,-0.11147E+00,-0.11106E+00,-0.11066E+00, & - &-0.11025E+00,-0.10984E+00,-0.10944E+00,-0.10903E+00,-0.10862E+00, & - &-0.10822E+00,-0.10781E+00,-0.10741E+00,-0.10701E+00,-0.10660E+00, & - &-0.10620E+00,-0.10580E+00,-0.10540E+00,-0.10499E+00,-0.10459E+00, & - &-0.10419E+00,-0.10379E+00,-0.10339E+00,-0.10299E+00,-0.10259E+00, & - &-0.10220E+00,-0.10180E+00,-0.10140E+00,-0.10100E+00,-0.10060E+00, & - &-0.10021E+00,-0.99812E-01,-0.99416E-01,-0.99021E-01,-0.98626E-01, & - &-0.98231E-01,-0.97837E-01,-0.97443E-01,-0.97050E-01,-0.96657E-01, & - &-0.96264E-01,-0.95872E-01,-0.95480E-01,-0.95089E-01,-0.94698E-01, & - &-0.94308E-01,-0.93917E-01,-0.93528E-01,-0.93138E-01,-0.92749E-01, & - &-0.92361E-01,-0.91973E-01,-0.91585E-01,-0.91197E-01,-0.90810E-01, & - &-0.90424E-01,-0.90038E-01,-0.89652E-01,-0.89267E-01,-0.88882E-01, & - &-0.88497E-01,-0.88113E-01,-0.87729E-01,-0.87346E-01,-0.86963E-01, & - &-0.86580E-01,-0.86198E-01,-0.85816E-01,-0.85434E-01,-0.85053E-01, & - &-0.84673E-01,-0.84292E-01,-0.83912E-01,-0.83533E-01,-0.83154E-01, & - &-0.82775E-01,-0.82397E-01,-0.82019E-01,-0.81641E-01,-0.81264E-01, & - &-0.80887E-01,-0.80510E-01,-0.80134E-01,-0.79759E-01,-0.79383E-01, & - &-0.79008E-01,-0.78634E-01,-0.78260E-01,-0.77886E-01,-0.77512E-01, & - &-0.77139E-01,-0.76767E-01,-0.76394E-01,-0.76022E-01,-0.75651E-01, & - &-0.75280E-01,-0.74909E-01,-0.74538E-01,-0.74168E-01,-0.73799E-01/ - - DATA (BNC06M(I),I=501,600)/ & - &-0.73429E-01,-0.73060E-01,-0.72692E-01,-0.72324E-01,-0.71956E-01, & - &-0.71588E-01,-0.71221E-01,-0.70854E-01,-0.70488E-01,-0.70122E-01, & - &-0.69756E-01,-0.69391E-01,-0.69026E-01,-0.68661E-01,-0.68297E-01, & - &-0.67933E-01,-0.67570E-01,-0.67207E-01,-0.66844E-01,-0.66482E-01, & - &-0.66120E-01,-0.65758E-01,-0.65397E-01,-0.65036E-01,-0.64675E-01, & - &-0.64315E-01,-0.63955E-01,-0.63595E-01,-0.63236E-01,-0.62877E-01, & - &-0.62519E-01,-0.62161E-01,-0.61803E-01,-0.61446E-01,-0.61089E-01, & - &-0.60732E-01,-0.60375E-01,-0.60019E-01,-0.59664E-01,-0.59308E-01, & - &-0.58954E-01,-0.58599E-01,-0.58245E-01,-0.57891E-01,-0.57537E-01, & - &-0.57184E-01,-0.56831E-01,-0.56478E-01,-0.56126E-01,-0.55774E-01, & - &-0.55423E-01,-0.55072E-01,-0.54721E-01,-0.54370E-01,-0.54020E-01, & - &-0.53670E-01,-0.53321E-01,-0.52972E-01,-0.52623E-01,-0.52274E-01, & - &-0.51926E-01,-0.51578E-01,-0.51231E-01,-0.50884E-01,-0.50537E-01, & - &-0.50191E-01,-0.49844E-01,-0.49499E-01,-0.49153E-01,-0.48808E-01, & - &-0.48463E-01,-0.48119E-01,-0.47775E-01,-0.47431E-01,-0.47087E-01, & - &-0.46744E-01,-0.46401E-01,-0.46059E-01,-0.45717E-01,-0.45375E-01, & - &-0.45033E-01,-0.44692E-01,-0.44351E-01,-0.44011E-01,-0.43670E-01, & - &-0.43331E-01,-0.42991E-01,-0.42652E-01,-0.42313E-01,-0.41974E-01, & - &-0.41636E-01,-0.41298E-01,-0.40960E-01,-0.40623E-01,-0.40286E-01, & - &-0.39949E-01,-0.39613E-01,-0.39277E-01,-0.38941E-01,-0.38605E-01/ - - DATA (BNC06M(I),I=601,700)/ & - &-0.35001E-01,-0.31698E-01,-0.28424E-01,-0.25181E-01,-0.21967E-01, & - &-0.18782E-01,-0.15626E-01,-0.12497E-01,-0.93962E-02,-0.63224E-02, & - &-0.32753E-02,-0.25445E-03, 0.27406E-02, 0.57102E-02, 0.86548E-02, & - & 0.11575E-01, 0.14470E-01, 0.17342E-01, 0.20191E-01, 0.23016E-01, & - & 0.25819E-01, 0.28599E-01, 0.31357E-01, 0.34093E-01, 0.36808E-01, & - & 0.39502E-01, 0.42175E-01, 0.44827E-01, 0.47460E-01, 0.50072E-01, & - & 0.52665E-01, 0.55239E-01, 0.57793E-01, 0.60329E-01, 0.62847E-01, & - & 0.65346E-01, 0.67827E-01, 0.70291E-01, 0.72737E-01, 0.75166E-01, & - & 0.77577E-01, 0.79972E-01, 0.82351E-01, 0.84713E-01, 0.87059E-01, & - & 0.89390E-01, 0.91704E-01, 0.94003E-01, 0.96287E-01, 0.98556E-01, & - & 0.10081E+00, 0.10305E+00, 0.10527E+00, 0.10749E+00, 0.10968E+00, & - & 0.11186E+00, 0.11403E+00, 0.11619E+00, 0.11833E+00, 0.12046E+00, & - & 0.12257E+00, 0.12468E+00, 0.12677E+00, 0.12884E+00, 0.13091E+00, & - & 0.13296E+00, 0.13500E+00, 0.13703E+00, 0.13904E+00, 0.14105E+00, & - & 0.14304E+00, 0.14502E+00, 0.14699E+00, 0.14895E+00, 0.15090E+00, & - & 0.15283E+00, 0.15476E+00, 0.15668E+00, 0.15858E+00, 0.16047E+00, & - & 0.16236E+00, 0.16423E+00, 0.16609E+00, 0.16795E+00, 0.16979E+00, & - & 0.17162E+00, 0.17345E+00, 0.17526E+00, 0.17706E+00, 0.17886E+00, & - & 0.18064E+00, 0.18242E+00, 0.18419E+00, 0.18595E+00, 0.18769E+00, & - & 0.18944E+00, 0.19117E+00, 0.19289E+00, 0.19460E+00, 0.19631E+00/ - - DATA (BNC06M(I),I=701,741)/ & - & 0.19801E+00, 0.19970E+00, 0.20138E+00, 0.20305E+00, 0.20471E+00, & - & 0.20637E+00, 0.20802E+00, 0.20966E+00, 0.21129E+00, 0.21292E+00, & - & 0.21453E+00, 0.21614E+00, 0.21775E+00, 0.21934E+00, 0.22093E+00, & - & 0.22251E+00, 0.22408E+00, 0.22565E+00, 0.22721E+00, 0.22876E+00, & - & 0.23030E+00, 0.23184E+00, 0.23337E+00, 0.23490E+00, 0.23641E+00, & - & 0.23792E+00, 0.23943E+00, 0.24093E+00, 0.24242E+00, 0.24390E+00, & - & 0.24538E+00, 0.24685E+00, 0.24832E+00, 0.24978E+00, 0.25123E+00, & - & 0.25268E+00, 0.25412E+00, 0.25555E+00, 0.25698E+00, 0.25840E+00, & - & 0.25982E+00 & - & / -! -! *** (2H,SO4) -! - DATA (BNC07M(I),I=1,100)/ & - &-0.92967E-01,-0.20158E+00,-0.25546E+00,-0.29333E+00,-0.32290E+00, & - &-0.34726E+00,-0.36803E+00,-0.38614E+00,-0.40221E+00,-0.41665E+00, & - &-0.42977E+00,-0.44179E+00,-0.45288E+00,-0.46316E+00,-0.47275E+00, & - &-0.48173E+00,-0.49018E+00,-0.49815E+00,-0.50570E+00,-0.51286E+00, & - &-0.51967E+00,-0.52616E+00,-0.53237E+00,-0.53830E+00,-0.54400E+00, & - &-0.54947E+00,-0.55472E+00,-0.55979E+00,-0.56467E+00,-0.56938E+00, & - &-0.57394E+00,-0.57834E+00,-0.58261E+00,-0.58674E+00,-0.59075E+00, & - &-0.59465E+00,-0.59843E+00,-0.60211E+00,-0.60568E+00,-0.60916E+00, & - &-0.61255E+00,-0.61586E+00,-0.61908E+00,-0.62223E+00,-0.62530E+00, & - &-0.62830E+00,-0.63123E+00,-0.63409E+00,-0.63689E+00,-0.63963E+00, & - &-0.64231E+00,-0.64494E+00,-0.64751E+00,-0.65003E+00,-0.65250E+00, & - &-0.65493E+00,-0.65730E+00,-0.65964E+00,-0.66192E+00,-0.66417E+00, & - &-0.66638E+00,-0.66855E+00,-0.67068E+00,-0.67278E+00,-0.67484E+00, & - &-0.67686E+00,-0.67886E+00,-0.68082E+00,-0.68275E+00,-0.68465E+00, & - &-0.68652E+00,-0.68837E+00,-0.69019E+00,-0.69198E+00,-0.69375E+00, & - &-0.69549E+00,-0.69720E+00,-0.69890E+00,-0.70057E+00,-0.70222E+00, & - &-0.70385E+00,-0.70546E+00,-0.70704E+00,-0.70861E+00,-0.71016E+00, & - &-0.71169E+00,-0.71320E+00,-0.71470E+00,-0.71617E+00,-0.71763E+00, & - &-0.71908E+00,-0.72050E+00,-0.72192E+00,-0.72331E+00,-0.72470E+00, & - &-0.72606E+00,-0.72742E+00,-0.72875E+00,-0.73008E+00,-0.73139E+00/ - - DATA (BNC07M(I),I=101,200)/ & - &-0.73269E+00,-0.73398E+00,-0.73525E+00,-0.73651E+00,-0.73776E+00, & - &-0.73899E+00,-0.74022E+00,-0.74143E+00,-0.74263E+00,-0.74383E+00, & - &-0.74501E+00,-0.74617E+00,-0.74733E+00,-0.74848E+00,-0.74962E+00, & - &-0.75075E+00,-0.75186E+00,-0.75297E+00,-0.75407E+00,-0.75516E+00, & - &-0.75624E+00,-0.75731E+00,-0.75837E+00,-0.75942E+00,-0.76047E+00, & - &-0.76150E+00,-0.76253E+00,-0.76354E+00,-0.76455E+00,-0.76556E+00, & - &-0.76655E+00,-0.76753E+00,-0.76851E+00,-0.76948E+00,-0.77044E+00, & - &-0.77140E+00,-0.77235E+00,-0.77329E+00,-0.77422E+00,-0.77514E+00, & - &-0.77606E+00,-0.77697E+00,-0.77788E+00,-0.77878E+00,-0.77967E+00, & - &-0.78055E+00,-0.78143E+00,-0.78231E+00,-0.78317E+00,-0.78403E+00, & - &-0.78489E+00,-0.78573E+00,-0.78658E+00,-0.78741E+00,-0.78824E+00, & - &-0.78907E+00,-0.78989E+00,-0.79070E+00,-0.79151E+00,-0.79231E+00, & - &-0.79311E+00,-0.79390E+00,-0.79469E+00,-0.79547E+00,-0.79625E+00, & - &-0.79702E+00,-0.79779E+00,-0.79855E+00,-0.79930E+00,-0.80006E+00, & - &-0.80080E+00,-0.80155E+00,-0.80229E+00,-0.80302E+00,-0.80375E+00, & - &-0.80447E+00,-0.80519E+00,-0.80591E+00,-0.80662E+00,-0.80733E+00, & - &-0.80803E+00,-0.80873E+00,-0.80943E+00,-0.81012E+00,-0.81081E+00, & - &-0.81149E+00,-0.81217E+00,-0.81284E+00,-0.81351E+00,-0.81418E+00, & - &-0.81485E+00,-0.81551E+00,-0.81616E+00,-0.81682E+00,-0.81747E+00, & - &-0.81811E+00,-0.81875E+00,-0.81939E+00,-0.82003E+00,-0.82066E+00/ - - DATA (BNC07M(I),I=201,300)/ & - &-0.82129E+00,-0.82191E+00,-0.82254E+00,-0.82315E+00,-0.82377E+00, & - &-0.82438E+00,-0.82499E+00,-0.82560E+00,-0.82620E+00,-0.82680E+00, & - &-0.82740E+00,-0.82799E+00,-0.82858E+00,-0.82917E+00,-0.82975E+00, & - &-0.83033E+00,-0.83091E+00,-0.83149E+00,-0.83206E+00,-0.83263E+00, & - &-0.83320E+00,-0.83376E+00,-0.83433E+00,-0.83489E+00,-0.83544E+00, & - &-0.83600E+00,-0.83655E+00,-0.83710E+00,-0.83764E+00,-0.83819E+00, & - &-0.83873E+00,-0.83927E+00,-0.83980E+00,-0.84034E+00,-0.84087E+00, & - &-0.84140E+00,-0.84192E+00,-0.84245E+00,-0.84297E+00,-0.84349E+00, & - &-0.84401E+00,-0.84452E+00,-0.84503E+00,-0.84554E+00,-0.84605E+00, & - &-0.84656E+00,-0.84706E+00,-0.84756E+00,-0.84806E+00,-0.84856E+00, & - &-0.84905E+00,-0.84954E+00,-0.85003E+00,-0.85052E+00,-0.85101E+00, & - &-0.85149E+00,-0.85198E+00,-0.85246E+00,-0.85294E+00,-0.85341E+00, & - &-0.85389E+00,-0.85436E+00,-0.85483E+00,-0.85530E+00,-0.85576E+00, & - &-0.85623E+00,-0.85669E+00,-0.85715E+00,-0.85761E+00,-0.85807E+00, & - &-0.85852E+00,-0.85898E+00,-0.85943E+00,-0.85988E+00,-0.86033E+00, & - &-0.86077E+00,-0.86122E+00,-0.86166E+00,-0.86210E+00,-0.86254E+00, & - &-0.86298E+00,-0.86342E+00,-0.86385E+00,-0.86429E+00,-0.86472E+00, & - &-0.86515E+00,-0.86557E+00,-0.86600E+00,-0.86643E+00,-0.86685E+00, & - &-0.86727E+00,-0.86769E+00,-0.86811E+00,-0.86853E+00,-0.86894E+00, & - &-0.86936E+00,-0.86977E+00,-0.87018E+00,-0.87059E+00,-0.87100E+00/ - - DATA (BNC07M(I),I=301,400)/ & - &-0.87140E+00,-0.87181E+00,-0.87221E+00,-0.87261E+00,-0.87301E+00, & - &-0.87341E+00,-0.87381E+00,-0.87421E+00,-0.87460E+00,-0.87500E+00, & - &-0.87539E+00,-0.87578E+00,-0.87617E+00,-0.87656E+00,-0.87695E+00, & - &-0.87733E+00,-0.87772E+00,-0.87810E+00,-0.87848E+00,-0.87886E+00, & - &-0.87924E+00,-0.87962E+00,-0.87999E+00,-0.88037E+00,-0.88074E+00, & - &-0.88112E+00,-0.88149E+00,-0.88186E+00,-0.88223E+00,-0.88259E+00, & - &-0.88296E+00,-0.88333E+00,-0.88369E+00,-0.88405E+00,-0.88442E+00, & - &-0.88478E+00,-0.88514E+00,-0.88549E+00,-0.88585E+00,-0.88621E+00, & - &-0.88656E+00,-0.88692E+00,-0.88727E+00,-0.88762E+00,-0.88797E+00, & - &-0.88832E+00,-0.88867E+00,-0.88902E+00,-0.88936E+00,-0.88971E+00, & - &-0.89005E+00,-0.89039E+00,-0.89074E+00,-0.89108E+00,-0.89142E+00, & - &-0.89176E+00,-0.89209E+00,-0.89243E+00,-0.89277E+00,-0.89310E+00, & - &-0.89343E+00,-0.89377E+00,-0.89410E+00,-0.89443E+00,-0.89476E+00, & - &-0.89509E+00,-0.89541E+00,-0.89574E+00,-0.89607E+00,-0.89639E+00, & - &-0.89671E+00,-0.89704E+00,-0.89736E+00,-0.89768E+00,-0.89800E+00, & - &-0.89832E+00,-0.89864E+00,-0.89896E+00,-0.89927E+00,-0.89959E+00, & - &-0.89990E+00,-0.90022E+00,-0.90053E+00,-0.90084E+00,-0.90115E+00, & - &-0.90146E+00,-0.90177E+00,-0.90208E+00,-0.90239E+00,-0.90269E+00, & - &-0.90300E+00,-0.90330E+00,-0.90361E+00,-0.90391E+00,-0.90421E+00, & - &-0.90451E+00,-0.90481E+00,-0.90511E+00,-0.90541E+00,-0.90571E+00/ - - DATA (BNC07M(I),I=401,500)/ & - &-0.90601E+00,-0.90631E+00,-0.90660E+00,-0.90690E+00,-0.90719E+00, & - &-0.90748E+00,-0.90778E+00,-0.90807E+00,-0.90836E+00,-0.90865E+00, & - &-0.90894E+00,-0.90923E+00,-0.90952E+00,-0.90980E+00,-0.91009E+00, & - &-0.91038E+00,-0.91066E+00,-0.91095E+00,-0.91123E+00,-0.91151E+00, & - &-0.91179E+00,-0.91207E+00,-0.91236E+00,-0.91263E+00,-0.91291E+00, & - &-0.91319E+00,-0.91347E+00,-0.91375E+00,-0.91402E+00,-0.91430E+00, & - &-0.91457E+00,-0.91485E+00,-0.91512E+00,-0.91539E+00,-0.91567E+00, & - &-0.91594E+00,-0.91621E+00,-0.91648E+00,-0.91675E+00,-0.91702E+00, & - &-0.91728E+00,-0.91755E+00,-0.91782E+00,-0.91808E+00,-0.91835E+00, & - &-0.91861E+00,-0.91888E+00,-0.91914E+00,-0.91940E+00,-0.91967E+00, & - &-0.91993E+00,-0.92019E+00,-0.92045E+00,-0.92071E+00,-0.92097E+00, & - &-0.92123E+00,-0.92148E+00,-0.92174E+00,-0.92200E+00,-0.92225E+00, & - &-0.92251E+00,-0.92276E+00,-0.92302E+00,-0.92327E+00,-0.92352E+00, & - &-0.92378E+00,-0.92403E+00,-0.92428E+00,-0.92453E+00,-0.92478E+00, & - &-0.92503E+00,-0.92528E+00,-0.92552E+00,-0.92577E+00,-0.92602E+00, & - &-0.92627E+00,-0.92651E+00,-0.92676E+00,-0.92700E+00,-0.92725E+00, & - &-0.92749E+00,-0.92773E+00,-0.92798E+00,-0.92822E+00,-0.92846E+00, & - &-0.92870E+00,-0.92894E+00,-0.92918E+00,-0.92942E+00,-0.92966E+00, & - &-0.92990E+00,-0.93013E+00,-0.93037E+00,-0.93061E+00,-0.93084E+00, & - &-0.93108E+00,-0.93131E+00,-0.93155E+00,-0.93178E+00,-0.93202E+00/ - - DATA (BNC07M(I),I=501,600)/ & - &-0.93225E+00,-0.93248E+00,-0.93271E+00,-0.93294E+00,-0.93317E+00, & - &-0.93341E+00,-0.93363E+00,-0.93386E+00,-0.93409E+00,-0.93432E+00, & - &-0.93455E+00,-0.93478E+00,-0.93500E+00,-0.93523E+00,-0.93546E+00, & - &-0.93568E+00,-0.93591E+00,-0.93613E+00,-0.93636E+00,-0.93658E+00, & - &-0.93680E+00,-0.93702E+00,-0.93725E+00,-0.93747E+00,-0.93769E+00, & - &-0.93791E+00,-0.93813E+00,-0.93835E+00,-0.93857E+00,-0.93879E+00, & - &-0.93901E+00,-0.93923E+00,-0.93944E+00,-0.93966E+00,-0.93988E+00, & - &-0.94009E+00,-0.94031E+00,-0.94052E+00,-0.94074E+00,-0.94095E+00, & - &-0.94117E+00,-0.94138E+00,-0.94159E+00,-0.94181E+00,-0.94202E+00, & - &-0.94223E+00,-0.94244E+00,-0.94265E+00,-0.94286E+00,-0.94307E+00, & - &-0.94328E+00,-0.94349E+00,-0.94370E+00,-0.94391E+00,-0.94412E+00, & - &-0.94433E+00,-0.94453E+00,-0.94474E+00,-0.94495E+00,-0.94515E+00, & - &-0.94536E+00,-0.94556E+00,-0.94577E+00,-0.94597E+00,-0.94618E+00, & - &-0.94638E+00,-0.94658E+00,-0.94679E+00,-0.94699E+00,-0.94719E+00, & - &-0.94739E+00,-0.94759E+00,-0.94779E+00,-0.94799E+00,-0.94819E+00, & - &-0.94839E+00,-0.94859E+00,-0.94879E+00,-0.94899E+00,-0.94919E+00, & - &-0.94939E+00,-0.94958E+00,-0.94978E+00,-0.94998E+00,-0.95017E+00, & - &-0.95037E+00,-0.95057E+00,-0.95076E+00,-0.95096E+00,-0.95115E+00, & - &-0.95134E+00,-0.95154E+00,-0.95173E+00,-0.95192E+00,-0.95212E+00, & - &-0.95231E+00,-0.95250E+00,-0.95269E+00,-0.95288E+00,-0.95307E+00/ - - DATA (BNC07M(I),I=601,700)/ & - &-0.95511E+00,-0.95697E+00,-0.95879E+00,-0.96057E+00,-0.96233E+00, & - &-0.96406E+00,-0.96576E+00,-0.96743E+00,-0.96907E+00,-0.97069E+00, & - &-0.97228E+00,-0.97385E+00,-0.97539E+00,-0.97691E+00,-0.97841E+00, & - &-0.97989E+00,-0.98134E+00,-0.98277E+00,-0.98418E+00,-0.98558E+00, & - &-0.98695E+00,-0.98830E+00,-0.98964E+00,-0.99096E+00,-0.99226E+00, & - &-0.99354E+00,-0.99481E+00,-0.99606E+00,-0.99730E+00,-0.99852E+00, & - &-0.99972E+00,-0.10009E+01,-0.10021E+01,-0.10032E+01,-0.10044E+01, & - &-0.10055E+01,-0.10067E+01,-0.10078E+01,-0.10089E+01,-0.10099E+01, & - &-0.10110E+01,-0.10121E+01,-0.10131E+01,-0.10142E+01,-0.10152E+01, & - &-0.10162E+01,-0.10172E+01,-0.10182E+01,-0.10192E+01,-0.10201E+01, & - &-0.10211E+01,-0.10221E+01,-0.10230E+01,-0.10239E+01,-0.10249E+01, & - &-0.10258E+01,-0.10267E+01,-0.10276E+01,-0.10285E+01,-0.10293E+01, & - &-0.10302E+01,-0.10311E+01,-0.10319E+01,-0.10328E+01,-0.10336E+01, & - &-0.10345E+01,-0.10353E+01,-0.10361E+01,-0.10369E+01,-0.10377E+01, & - &-0.10385E+01,-0.10393E+01,-0.10401E+01,-0.10409E+01,-0.10417E+01, & - &-0.10424E+01,-0.10432E+01,-0.10439E+01,-0.10447E+01,-0.10454E+01, & - &-0.10461E+01,-0.10469E+01,-0.10476E+01,-0.10483E+01,-0.10490E+01, & - &-0.10497E+01,-0.10504E+01,-0.10511E+01,-0.10518E+01,-0.10525E+01, & - &-0.10532E+01,-0.10538E+01,-0.10545E+01,-0.10552E+01,-0.10558E+01, & - &-0.10565E+01,-0.10571E+01,-0.10578E+01,-0.10584E+01,-0.10591E+01/ - - DATA (BNC07M(I),I=701,741)/ & - &-0.10597E+01,-0.10603E+01,-0.10609E+01,-0.10616E+01,-0.10622E+01, & - &-0.10628E+01,-0.10634E+01,-0.10640E+01,-0.10646E+01,-0.10652E+01, & - &-0.10658E+01,-0.10663E+01,-0.10669E+01,-0.10675E+01,-0.10681E+01, & - &-0.10687E+01,-0.10692E+01,-0.10698E+01,-0.10703E+01,-0.10709E+01, & - &-0.10714E+01,-0.10720E+01,-0.10725E+01,-0.10731E+01,-0.10736E+01, & - &-0.10742E+01,-0.10747E+01,-0.10752E+01,-0.10757E+01,-0.10763E+01, & - &-0.10768E+01,-0.10773E+01,-0.10778E+01,-0.10783E+01,-0.10788E+01, & - &-0.10793E+01,-0.10798E+01,-0.10803E+01,-0.10808E+01,-0.10813E+01, & - &-0.10818E+01 & - & / -! -! *** (H,HSO4) -! - DATA (BNC08M(I),I=1,100)/ & - &-0.43840E-01,-0.87607E-01,-0.10559E+00,-0.11630E+00,-0.12329E+00, & - &-0.12797E+00,-0.13104E+00,-0.13292E+00,-0.13386E+00,-0.13406E+00, & - &-0.13363E+00,-0.13266E+00,-0.13123E+00,-0.12939E+00,-0.12719E+00, & - &-0.12466E+00,-0.12183E+00,-0.11873E+00,-0.11538E+00,-0.11178E+00, & - &-0.10797E+00,-0.10396E+00,-0.99747E-01,-0.95354E-01,-0.90787E-01, & - &-0.86056E-01,-0.81168E-01,-0.76132E-01,-0.70954E-01,-0.65641E-01, & - &-0.60198E-01,-0.54632E-01,-0.48948E-01,-0.43150E-01,-0.37245E-01, & - &-0.31235E-01,-0.25127E-01,-0.18924E-01,-0.12630E-01,-0.62488E-02, & - & 0.21565E-03, 0.67597E-02, 0.13380E-01, 0.20073E-01, 0.26837E-01, & - & 0.33667E-01, 0.40561E-01, 0.47517E-01, 0.54532E-01, 0.61603E-01, & - & 0.68729E-01, 0.75906E-01, 0.83134E-01, 0.90410E-01, 0.97733E-01, & - & 0.10510E+00, 0.11251E+00, 0.11997E+00, 0.12746E+00, 0.13500E+00, & - & 0.14258E+00, 0.15019E+00, 0.15784E+00, 0.16554E+00, 0.17327E+00, & - & 0.18103E+00, 0.18884E+00, 0.19668E+00, 0.20456E+00, 0.21248E+00, & - & 0.22044E+00, 0.22843E+00, 0.23647E+00, 0.24454E+00, 0.25266E+00, & - & 0.26081E+00, 0.26901E+00, 0.27725E+00, 0.28553E+00, 0.29386E+00, & - & 0.30223E+00, 0.31064E+00, 0.31909E+00, 0.32759E+00, 0.33614E+00, & - & 0.34473E+00, 0.35336E+00, 0.36204E+00, 0.37076E+00, 0.37953E+00, & - & 0.38834E+00, 0.39720E+00, 0.40609E+00, 0.41503E+00, 0.42401E+00, & - & 0.43303E+00, 0.44209E+00, 0.45118E+00, 0.46032E+00, 0.46948E+00/ - - DATA (BNC08M(I),I=101,200)/ & - & 0.47869E+00, 0.48792E+00, 0.49718E+00, 0.50648E+00, 0.51580E+00, & - & 0.52515E+00, 0.53452E+00, 0.54391E+00, 0.55333E+00, 0.56276E+00, & - & 0.57221E+00, 0.58168E+00, 0.59116E+00, 0.60066E+00, 0.61016E+00, & - & 0.61968E+00, 0.62920E+00, 0.63872E+00, 0.64826E+00, 0.65779E+00, & - & 0.66733E+00, 0.67687E+00, 0.68641E+00, 0.69595E+00, 0.70548E+00, & - & 0.71501E+00, 0.72454E+00, 0.73406E+00, 0.74357E+00, 0.75308E+00, & - & 0.76258E+00, 0.77207E+00, 0.78155E+00, 0.79102E+00, 0.80048E+00, & - & 0.80993E+00, 0.81936E+00, 0.82879E+00, 0.83820E+00, 0.84760E+00, & - & 0.85698E+00, 0.86635E+00, 0.87571E+00, 0.88505E+00, 0.89438E+00, & - & 0.90369E+00, 0.91298E+00, 0.92226E+00, 0.93153E+00, 0.94078E+00, & - & 0.95001E+00, 0.95923E+00, 0.96843E+00, 0.97761E+00, 0.98678E+00, & - & 0.99593E+00, 0.10051E+01, 0.10142E+01, 0.10233E+01, 0.10324E+01, & - & 0.10414E+01, 0.10505E+01, 0.10595E+01, 0.10685E+01, 0.10775E+01, & - & 0.10865E+01, 0.10954E+01, 0.11044E+01, 0.11133E+01, 0.11222E+01, & - & 0.11311E+01, 0.11399E+01, 0.11488E+01, 0.11576E+01, 0.11664E+01, & - & 0.11752E+01, 0.11840E+01, 0.11928E+01, 0.12015E+01, 0.12102E+01, & - & 0.12190E+01, 0.12276E+01, 0.12363E+01, 0.12450E+01, 0.12536E+01, & - & 0.12622E+01, 0.12708E+01, 0.12794E+01, 0.12879E+01, 0.12965E+01, & - & 0.13050E+01, 0.13135E+01, 0.13220E+01, 0.13305E+01, 0.13389E+01, & - & 0.13474E+01, 0.13558E+01, 0.13642E+01, 0.13726E+01, 0.13809E+01/ - - DATA (BNC08M(I),I=201,300)/ & - & 0.13893E+01, 0.13976E+01, 0.14059E+01, 0.14142E+01, 0.14225E+01, & - & 0.14307E+01, 0.14390E+01, 0.14472E+01, 0.14554E+01, 0.14636E+01, & - & 0.14718E+01, 0.14799E+01, 0.14881E+01, 0.14962E+01, 0.15043E+01, & - & 0.15124E+01, 0.15204E+01, 0.15285E+01, 0.15365E+01, 0.15445E+01, & - & 0.15525E+01, 0.15605E+01, 0.15685E+01, 0.15764E+01, 0.15843E+01, & - & 0.15923E+01, 0.16002E+01, 0.16080E+01, 0.16159E+01, 0.16237E+01, & - & 0.16316E+01, 0.16394E+01, 0.16472E+01, 0.16550E+01, 0.16627E+01, & - & 0.16705E+01, 0.16782E+01, 0.16859E+01, 0.16936E+01, 0.17013E+01, & - & 0.17090E+01, 0.17166E+01, 0.17243E+01, 0.17319E+01, 0.17395E+01, & - & 0.17471E+01, 0.17547E+01, 0.17622E+01, 0.17698E+01, 0.17773E+01, & - & 0.17848E+01, 0.17923E+01, 0.17998E+01, 0.18072E+01, 0.18147E+01, & - & 0.18221E+01, 0.18295E+01, 0.18369E+01, 0.18443E+01, 0.18517E+01, & - & 0.18591E+01, 0.18664E+01, 0.18737E+01, 0.18811E+01, 0.18884E+01, & - & 0.18956E+01, 0.19029E+01, 0.19102E+01, 0.19174E+01, 0.19246E+01, & - & 0.19318E+01, 0.19390E+01, 0.19462E+01, 0.19534E+01, 0.19605E+01, & - & 0.19677E+01, 0.19748E+01, 0.19819E+01, 0.19890E+01, 0.19961E+01, & - & 0.20032E+01, 0.20102E+01, 0.20173E+01, 0.20243E+01, 0.20313E+01, & - & 0.20383E+01, 0.20453E+01, 0.20523E+01, 0.20592E+01, 0.20662E+01, & - & 0.20731E+01, 0.20800E+01, 0.20869E+01, 0.20938E+01, 0.21007E+01, & - & 0.21075E+01, 0.21144E+01, 0.21212E+01, 0.21281E+01, 0.21349E+01/ - - DATA (BNC08M(I),I=301,400)/ & - & 0.21417E+01, 0.21485E+01, 0.21552E+01, 0.21620E+01, 0.21687E+01, & - & 0.21755E+01, 0.21822E+01, 0.21889E+01, 0.21956E+01, 0.22023E+01, & - & 0.22089E+01, 0.22156E+01, 0.22222E+01, 0.22289E+01, 0.22355E+01, & - & 0.22421E+01, 0.22487E+01, 0.22553E+01, 0.22619E+01, 0.22684E+01, & - & 0.22750E+01, 0.22815E+01, 0.22880E+01, 0.22945E+01, 0.23010E+01, & - & 0.23075E+01, 0.23140E+01, 0.23205E+01, 0.23269E+01, 0.23333E+01, & - & 0.23398E+01, 0.23462E+01, 0.23526E+01, 0.23590E+01, 0.23654E+01, & - & 0.23717E+01, 0.23781E+01, 0.23844E+01, 0.23908E+01, 0.23971E+01, & - & 0.24034E+01, 0.24097E+01, 0.24160E+01, 0.24223E+01, 0.24285E+01, & - & 0.24348E+01, 0.24410E+01, 0.24473E+01, 0.24535E+01, 0.24597E+01, & - & 0.24659E+01, 0.24721E+01, 0.24783E+01, 0.24844E+01, 0.24906E+01, & - & 0.24967E+01, 0.25029E+01, 0.25090E+01, 0.25151E+01, 0.25212E+01, & - & 0.25273E+01, 0.25334E+01, 0.25395E+01, 0.25455E+01, 0.25516E+01, & - & 0.25576E+01, 0.25636E+01, 0.25697E+01, 0.25757E+01, 0.25817E+01, & - & 0.25877E+01, 0.25936E+01, 0.25996E+01, 0.26056E+01, 0.26115E+01, & - & 0.26174E+01, 0.26234E+01, 0.26293E+01, 0.26352E+01, 0.26411E+01, & - & 0.26470E+01, 0.26529E+01, 0.26587E+01, 0.26646E+01, 0.26704E+01, & - & 0.26763E+01, 0.26821E+01, 0.26879E+01, 0.26937E+01, 0.26995E+01, & - & 0.27053E+01, 0.27111E+01, 0.27169E+01, 0.27226E+01, 0.27284E+01, & - & 0.27341E+01, 0.27398E+01, 0.27456E+01, 0.27513E+01, 0.27570E+01/ - - DATA (BNC08M(I),I=401,500)/ & - & 0.27627E+01, 0.27684E+01, 0.27740E+01, 0.27797E+01, 0.27854E+01, & - & 0.27910E+01, 0.27967E+01, 0.28023E+01, 0.28079E+01, 0.28135E+01, & - & 0.28191E+01, 0.28247E+01, 0.28303E+01, 0.28359E+01, 0.28415E+01, & - & 0.28470E+01, 0.28526E+01, 0.28581E+01, 0.28636E+01, 0.28692E+01, & - & 0.28747E+01, 0.28802E+01, 0.28857E+01, 0.28912E+01, 0.28966E+01, & - & 0.29021E+01, 0.29076E+01, 0.29130E+01, 0.29185E+01, 0.29239E+01, & - & 0.29293E+01, 0.29348E+01, 0.29402E+01, 0.29456E+01, 0.29510E+01, & - & 0.29564E+01, 0.29617E+01, 0.29671E+01, 0.29725E+01, 0.29778E+01, & - & 0.29832E+01, 0.29885E+01, 0.29938E+01, 0.29992E+01, 0.30045E+01, & - & 0.30098E+01, 0.30151E+01, 0.30204E+01, 0.30256E+01, 0.30309E+01, & - & 0.30362E+01, 0.30414E+01, 0.30467E+01, 0.30519E+01, 0.30572E+01, & - & 0.30624E+01, 0.30676E+01, 0.30728E+01, 0.30780E+01, 0.30832E+01, & - & 0.30884E+01, 0.30936E+01, 0.30987E+01, 0.31039E+01, 0.31091E+01, & - & 0.31142E+01, 0.31193E+01, 0.31245E+01, 0.31296E+01, 0.31347E+01, & - & 0.31398E+01, 0.31449E+01, 0.31500E+01, 0.31551E+01, 0.31602E+01, & - & 0.31653E+01, 0.31703E+01, 0.31754E+01, 0.31804E+01, 0.31855E+01, & - & 0.31905E+01, 0.31955E+01, 0.32006E+01, 0.32056E+01, 0.32106E+01, & - & 0.32156E+01, 0.32206E+01, 0.32256E+01, 0.32305E+01, 0.32355E+01, & - & 0.32405E+01, 0.32454E+01, 0.32504E+01, 0.32553E+01, 0.32603E+01, & - & 0.32652E+01, 0.32701E+01, 0.32750E+01, 0.32799E+01, 0.32848E+01/ - - DATA (BNC08M(I),I=501,600)/ & - & 0.32897E+01, 0.32946E+01, 0.32995E+01, 0.33044E+01, 0.33092E+01, & - & 0.33141E+01, 0.33189E+01, 0.33238E+01, 0.33286E+01, 0.33335E+01, & - & 0.33383E+01, 0.33431E+01, 0.33479E+01, 0.33527E+01, 0.33575E+01, & - & 0.33623E+01, 0.33671E+01, 0.33719E+01, 0.33766E+01, 0.33814E+01, & - & 0.33862E+01, 0.33909E+01, 0.33957E+01, 0.34004E+01, 0.34051E+01, & - & 0.34099E+01, 0.34146E+01, 0.34193E+01, 0.34240E+01, 0.34287E+01, & - & 0.34334E+01, 0.34381E+01, 0.34428E+01, 0.34475E+01, 0.34521E+01, & - & 0.34568E+01, 0.34615E+01, 0.34661E+01, 0.34707E+01, 0.34754E+01, & - & 0.34800E+01, 0.34846E+01, 0.34893E+01, 0.34939E+01, 0.34985E+01, & - & 0.35031E+01, 0.35077E+01, 0.35123E+01, 0.35169E+01, 0.35214E+01, & - & 0.35260E+01, 0.35306E+01, 0.35351E+01, 0.35397E+01, 0.35442E+01, & - & 0.35488E+01, 0.35533E+01, 0.35578E+01, 0.35624E+01, 0.35669E+01, & - & 0.35714E+01, 0.35759E+01, 0.35804E+01, 0.35849E+01, 0.35894E+01, & - & 0.35939E+01, 0.35983E+01, 0.36028E+01, 0.36073E+01, 0.36117E+01, & - & 0.36162E+01, 0.36206E+01, 0.36251E+01, 0.36295E+01, 0.36340E+01, & - & 0.36384E+01, 0.36428E+01, 0.36472E+01, 0.36516E+01, 0.36560E+01, & - & 0.36604E+01, 0.36648E+01, 0.36692E+01, 0.36736E+01, 0.36780E+01, & - & 0.36823E+01, 0.36867E+01, 0.36910E+01, 0.36954E+01, 0.36997E+01, & - & 0.37041E+01, 0.37084E+01, 0.37128E+01, 0.37171E+01, 0.37214E+01, & - & 0.37257E+01, 0.37300E+01, 0.37343E+01, 0.37386E+01, 0.37429E+01/ - - DATA (BNC08M(I),I=601,700)/ & - & 0.37890E+01, 0.38311E+01, 0.38727E+01, 0.39138E+01, 0.39544E+01, & - & 0.39945E+01, 0.40342E+01, 0.40734E+01, 0.41122E+01, 0.41506E+01, & - & 0.41885E+01, 0.42261E+01, 0.42632E+01, 0.42999E+01, 0.43363E+01, & - & 0.43722E+01, 0.44079E+01, 0.44431E+01, 0.44780E+01, 0.45125E+01, & - & 0.45467E+01, 0.45806E+01, 0.46141E+01, 0.46473E+01, 0.46802E+01, & - & 0.47128E+01, 0.47451E+01, 0.47771E+01, 0.48088E+01, 0.48402E+01, & - & 0.48713E+01, 0.49022E+01, 0.49327E+01, 0.49630E+01, 0.49931E+01, & - & 0.50229E+01, 0.50524E+01, 0.50817E+01, 0.51107E+01, 0.51395E+01, & - & 0.51681E+01, 0.51964E+01, 0.52245E+01, 0.52524E+01, 0.52800E+01, & - & 0.53074E+01, 0.53346E+01, 0.53616E+01, 0.53884E+01, 0.54150E+01, & - & 0.54414E+01, 0.54676E+01, 0.54936E+01, 0.55194E+01, 0.55450E+01, & - & 0.55704E+01, 0.55956E+01, 0.56206E+01, 0.56455E+01, 0.56702E+01, & - & 0.56947E+01, 0.57191E+01, 0.57432E+01, 0.57672E+01, 0.57911E+01, & - & 0.58148E+01, 0.58383E+01, 0.58616E+01, 0.58848E+01, 0.59079E+01, & - & 0.59308E+01, 0.59535E+01, 0.59761E+01, 0.59986E+01, 0.60209E+01, & - & 0.60430E+01, 0.60650E+01, 0.60869E+01, 0.61087E+01, 0.61303E+01, & - & 0.61517E+01, 0.61731E+01, 0.61943E+01, 0.62154E+01, 0.62363E+01, & - & 0.62572E+01, 0.62779E+01, 0.62984E+01, 0.63189E+01, 0.63392E+01, & - & 0.63595E+01, 0.63796E+01, 0.63996E+01, 0.64194E+01, 0.64392E+01, & - & 0.64588E+01, 0.64784E+01, 0.64978E+01, 0.65171E+01, 0.65363E+01/ - - DATA (BNC08M(I),I=701,741)/ & - & 0.65554E+01, 0.65744E+01, 0.65933E+01, 0.66121E+01, 0.66308E+01, & - & 0.66494E+01, 0.66679E+01, 0.66863E+01, 0.67046E+01, 0.67228E+01, & - & 0.67409E+01, 0.67589E+01, 0.67768E+01, 0.67947E+01, 0.68124E+01, & - & 0.68300E+01, 0.68476E+01, 0.68651E+01, 0.68824E+01, 0.68997E+01, & - & 0.69169E+01, 0.69341E+01, 0.69511E+01, 0.69680E+01, 0.69849E+01, & - & 0.70017E+01, 0.70184E+01, 0.70350E+01, 0.70516E+01, 0.70681E+01, & - & 0.70845E+01, 0.71008E+01, 0.71170E+01, 0.71332E+01, 0.71493E+01, & - & 0.71653E+01, 0.71812E+01, 0.71971E+01, 0.72129E+01, 0.72286E+01, & - & 0.72442E+01 & - & / -! -! *** NH4HSO4 -! - DATA (BNC09M(I),I=1,100)/ & - &-0.45695E-01,-0.97041E-01,-0.12160E+00,-0.13842E+00,-0.15124E+00, & - &-0.16156E+00,-0.17015E+00,-0.17746E+00,-0.18378E+00,-0.18930E+00, & - &-0.19417E+00,-0.19849E+00,-0.20233E+00,-0.20577E+00,-0.20884E+00, & - &-0.21160E+00,-0.21406E+00,-0.21627E+00,-0.21823E+00,-0.21998E+00, & - &-0.22152E+00,-0.22288E+00,-0.22406E+00,-0.22508E+00,-0.22594E+00, & - &-0.22665E+00,-0.22723E+00,-0.22768E+00,-0.22800E+00,-0.22821E+00, & - &-0.22830E+00,-0.22828E+00,-0.22816E+00,-0.22794E+00,-0.22763E+00, & - &-0.22722E+00,-0.22673E+00,-0.22615E+00,-0.22549E+00,-0.22475E+00, & - &-0.22394E+00,-0.22305E+00,-0.22210E+00,-0.22108E+00,-0.21999E+00, & - &-0.21884E+00,-0.21763E+00,-0.21636E+00,-0.21503E+00,-0.21366E+00, & - &-0.21222E+00,-0.21074E+00,-0.20921E+00,-0.20763E+00,-0.20601E+00, & - &-0.20434E+00,-0.20263E+00,-0.20087E+00,-0.19908E+00,-0.19725E+00, & - &-0.19538E+00,-0.19347E+00,-0.19153E+00,-0.18955E+00,-0.18754E+00, & - &-0.18550E+00,-0.18342E+00,-0.18132E+00,-0.17918E+00,-0.17701E+00, & - &-0.17481E+00,-0.17258E+00,-0.17032E+00,-0.16804E+00,-0.16572E+00, & - &-0.16338E+00,-0.16101E+00,-0.15861E+00,-0.15619E+00,-0.15374E+00, & - &-0.15127E+00,-0.14877E+00,-0.14624E+00,-0.14369E+00,-0.14111E+00, & - &-0.13851E+00,-0.13588E+00,-0.13323E+00,-0.13056E+00,-0.12786E+00, & - &-0.12514E+00,-0.12240E+00,-0.11964E+00,-0.11686E+00,-0.11405E+00, & - &-0.11123E+00,-0.10839E+00,-0.10552E+00,-0.10264E+00,-0.99745E-01/ - - DATA (BNC09M(I),I=101,200)/ & - &-0.96831E-01,-0.93900E-01,-0.90954E-01,-0.87994E-01,-0.85020E-01, & - &-0.82033E-01,-0.79033E-01,-0.76023E-01,-0.73001E-01,-0.69969E-01, & - &-0.66929E-01,-0.63879E-01,-0.60822E-01,-0.57758E-01,-0.54687E-01, & - &-0.51611E-01,-0.48530E-01,-0.45444E-01,-0.42354E-01,-0.39261E-01, & - &-0.36165E-01,-0.33068E-01,-0.29968E-01,-0.26868E-01,-0.23766E-01, & - &-0.20665E-01,-0.17564E-01,-0.14463E-01,-0.11364E-01,-0.82653E-02, & - &-0.51688E-02,-0.20741E-02, 0.10182E-02, 0.41078E-02, 0.71947E-02, & - & 0.10278E-01, 0.13359E-01, 0.16436E-01, 0.19509E-01, 0.22578E-01, & - & 0.25643E-01, 0.28705E-01, 0.31761E-01, 0.34813E-01, 0.37861E-01, & - & 0.40903E-01, 0.43941E-01, 0.46974E-01, 0.50001E-01, 0.53024E-01, & - & 0.56041E-01, 0.59053E-01, 0.62059E-01, 0.65060E-01, 0.68056E-01, & - & 0.71045E-01, 0.74030E-01, 0.77008E-01, 0.79981E-01, 0.82948E-01, & - & 0.85909E-01, 0.88864E-01, 0.91813E-01, 0.94757E-01, 0.97694E-01, & - & 0.10063E+00, 0.10355E+00, 0.10647E+00, 0.10938E+00, 0.11229E+00, & - & 0.11519E+00, 0.11809E+00, 0.12098E+00, 0.12386E+00, 0.12674E+00, & - & 0.12961E+00, 0.13247E+00, 0.13533E+00, 0.13818E+00, 0.14103E+00, & - & 0.14387E+00, 0.14670E+00, 0.14953E+00, 0.15235E+00, 0.15517E+00, & - & 0.15798E+00, 0.16078E+00, 0.16358E+00, 0.16637E+00, 0.16915E+00, & - & 0.17193E+00, 0.17470E+00, 0.17747E+00, 0.18023E+00, 0.18299E+00, & - & 0.18573E+00, 0.18848E+00, 0.19121E+00, 0.19394E+00, 0.19667E+00/ - - DATA (BNC09M(I),I=201,300)/ & - & 0.19939E+00, 0.20210E+00, 0.20480E+00, 0.20751E+00, 0.21020E+00, & - & 0.21289E+00, 0.21557E+00, 0.21825E+00, 0.22092E+00, 0.22358E+00, & - & 0.22624E+00, 0.22890E+00, 0.23154E+00, 0.23419E+00, 0.23682E+00, & - & 0.23945E+00, 0.24208E+00, 0.24470E+00, 0.24731E+00, 0.24992E+00, & - & 0.25252E+00, 0.25512E+00, 0.25771E+00, 0.26029E+00, 0.26287E+00, & - & 0.26545E+00, 0.26802E+00, 0.27058E+00, 0.27314E+00, 0.27569E+00, & - & 0.27824E+00, 0.28078E+00, 0.28331E+00, 0.28584E+00, 0.28837E+00, & - & 0.29089E+00, 0.29340E+00, 0.29591E+00, 0.29841E+00, 0.30091E+00, & - & 0.30341E+00, 0.30589E+00, 0.30838E+00, 0.31086E+00, 0.31333E+00, & - & 0.31580E+00, 0.31826E+00, 0.32071E+00, 0.32317E+00, 0.32561E+00, & - & 0.32806E+00, 0.33049E+00, 0.33292E+00, 0.33535E+00, 0.33777E+00, & - & 0.34019E+00, 0.34260E+00, 0.34501E+00, 0.34741E+00, 0.34981E+00, & - & 0.35220E+00, 0.35459E+00, 0.35697E+00, 0.35935E+00, 0.36172E+00, & - & 0.36409E+00, 0.36645E+00, 0.36881E+00, 0.37117E+00, 0.37352E+00, & - & 0.37586E+00, 0.37820E+00, 0.38054E+00, 0.38287E+00, 0.38520E+00, & - & 0.38752E+00, 0.38983E+00, 0.39215E+00, 0.39446E+00, 0.39676E+00, & - & 0.39906E+00, 0.40135E+00, 0.40364E+00, 0.40593E+00, 0.40821E+00, & - & 0.41049E+00, 0.41276E+00, 0.41503E+00, 0.41729E+00, 0.41955E+00, & - & 0.42181E+00, 0.42406E+00, 0.42631E+00, 0.42855E+00, 0.43079E+00, & - & 0.43302E+00, 0.43525E+00, 0.43747E+00, 0.43970E+00, 0.44191E+00/ - - DATA (BNC09M(I),I=301,400)/ & - & 0.44413E+00, 0.44633E+00, 0.44854E+00, 0.45074E+00, 0.45294E+00, & - & 0.45513E+00, 0.45732E+00, 0.45950E+00, 0.46168E+00, 0.46386E+00, & - & 0.46603E+00, 0.46820E+00, 0.47036E+00, 0.47252E+00, 0.47468E+00, & - & 0.47683E+00, 0.47898E+00, 0.48113E+00, 0.48327E+00, 0.48540E+00, & - & 0.48754E+00, 0.48967E+00, 0.49179E+00, 0.49391E+00, 0.49603E+00, & - & 0.49814E+00, 0.50025E+00, 0.50236E+00, 0.50446E+00, 0.50656E+00, & - & 0.50866E+00, 0.51075E+00, 0.51284E+00, 0.51492E+00, 0.51700E+00, & - & 0.51908E+00, 0.52115E+00, 0.52322E+00, 0.52529E+00, 0.52735E+00, & - & 0.52941E+00, 0.53146E+00, 0.53352E+00, 0.53556E+00, 0.53761E+00, & - & 0.53965E+00, 0.54169E+00, 0.54372E+00, 0.54575E+00, 0.54778E+00, & - & 0.54980E+00, 0.55182E+00, 0.55384E+00, 0.55585E+00, 0.55786E+00, & - & 0.55987E+00, 0.56187E+00, 0.56387E+00, 0.56587E+00, 0.56786E+00, & - & 0.56985E+00, 0.57184E+00, 0.57382E+00, 0.57580E+00, 0.57778E+00, & - & 0.57975E+00, 0.58172E+00, 0.58369E+00, 0.58565E+00, 0.58761E+00, & - & 0.58957E+00, 0.59152E+00, 0.59348E+00, 0.59542E+00, 0.59737E+00, & - & 0.59931E+00, 0.60125E+00, 0.60318E+00, 0.60511E+00, 0.60704E+00, & - & 0.60897E+00, 0.61089E+00, 0.61281E+00, 0.61472E+00, 0.61664E+00, & - & 0.61855E+00, 0.62045E+00, 0.62236E+00, 0.62426E+00, 0.62616E+00, & - & 0.62805E+00, 0.62994E+00, 0.63183E+00, 0.63372E+00, 0.63560E+00, & - & 0.63748E+00, 0.63936E+00, 0.64123E+00, 0.64310E+00, 0.64497E+00/ - - DATA (BNC09M(I),I=401,500)/ & - & 0.64683E+00, 0.64870E+00, 0.65056E+00, 0.65241E+00, 0.65427E+00, & - & 0.65612E+00, 0.65796E+00, 0.65981E+00, 0.66165E+00, 0.66349E+00, & - & 0.66533E+00, 0.66716E+00, 0.66899E+00, 0.67082E+00, 0.67264E+00, & - & 0.67447E+00, 0.67629E+00, 0.67810E+00, 0.67992E+00, 0.68173E+00, & - & 0.68354E+00, 0.68534E+00, 0.68715E+00, 0.68895E+00, 0.69074E+00, & - & 0.69254E+00, 0.69433E+00, 0.69612E+00, 0.69791E+00, 0.69969E+00, & - & 0.70147E+00, 0.70325E+00, 0.70503E+00, 0.70680E+00, 0.70857E+00, & - & 0.71034E+00, 0.71211E+00, 0.71387E+00, 0.71563E+00, 0.71739E+00, & - & 0.71915E+00, 0.72090E+00, 0.72265E+00, 0.72440E+00, 0.72614E+00, & - & 0.72788E+00, 0.72962E+00, 0.73136E+00, 0.73310E+00, 0.73483E+00, & - & 0.73656E+00, 0.73829E+00, 0.74001E+00, 0.74174E+00, 0.74346E+00, & - & 0.74517E+00, 0.74689E+00, 0.74860E+00, 0.75031E+00, 0.75202E+00, & - & 0.75372E+00, 0.75543E+00, 0.75713E+00, 0.75883E+00, 0.76052E+00, & - & 0.76222E+00, 0.76391E+00, 0.76559E+00, 0.76728E+00, 0.76896E+00, & - & 0.77065E+00, 0.77233E+00, 0.77400E+00, 0.77568E+00, 0.77735E+00, & - & 0.77902E+00, 0.78069E+00, 0.78235E+00, 0.78401E+00, 0.78567E+00, & - & 0.78733E+00, 0.78899E+00, 0.79064E+00, 0.79229E+00, 0.79394E+00, & - & 0.79559E+00, 0.79723E+00, 0.79888E+00, 0.80052E+00, 0.80215E+00, & - & 0.80379E+00, 0.80542E+00, 0.80705E+00, 0.80868E+00, 0.81031E+00, & - & 0.81193E+00, 0.81356E+00, 0.81518E+00, 0.81679E+00, 0.81841E+00/ - - DATA (BNC09M(I),I=501,600)/ & - & 0.82002E+00, 0.82163E+00, 0.82324E+00, 0.82485E+00, 0.82646E+00, & - & 0.82806E+00, 0.82966E+00, 0.83126E+00, 0.83285E+00, 0.83445E+00, & - & 0.83604E+00, 0.83763E+00, 0.83922E+00, 0.84080E+00, 0.84239E+00, & - & 0.84397E+00, 0.84555E+00, 0.84713E+00, 0.84870E+00, 0.85028E+00, & - & 0.85185E+00, 0.85342E+00, 0.85498E+00, 0.85655E+00, 0.85811E+00, & - & 0.85967E+00, 0.86123E+00, 0.86279E+00, 0.86434E+00, 0.86590E+00, & - & 0.86745E+00, 0.86900E+00, 0.87054E+00, 0.87209E+00, 0.87363E+00, & - & 0.87517E+00, 0.87671E+00, 0.87825E+00, 0.87978E+00, 0.88132E+00, & - & 0.88285E+00, 0.88438E+00, 0.88590E+00, 0.88743E+00, 0.88895E+00, & - & 0.89047E+00, 0.89199E+00, 0.89351E+00, 0.89503E+00, 0.89654E+00, & - & 0.89805E+00, 0.89956E+00, 0.90107E+00, 0.90258E+00, 0.90408E+00, & - & 0.90558E+00, 0.90709E+00, 0.90858E+00, 0.91008E+00, 0.91158E+00, & - & 0.91307E+00, 0.91456E+00, 0.91605E+00, 0.91754E+00, 0.91902E+00, & - & 0.92051E+00, 0.92199E+00, 0.92347E+00, 0.92495E+00, 0.92642E+00, & - & 0.92790E+00, 0.92937E+00, 0.93084E+00, 0.93231E+00, 0.93378E+00, & - & 0.93525E+00, 0.93671E+00, 0.93817E+00, 0.93963E+00, 0.94109E+00, & - & 0.94255E+00, 0.94400E+00, 0.94546E+00, 0.94691E+00, 0.94836E+00, & - & 0.94981E+00, 0.95125E+00, 0.95270E+00, 0.95414E+00, 0.95558E+00, & - & 0.95702E+00, 0.95846E+00, 0.95990E+00, 0.96133E+00, 0.96276E+00, & - & 0.96419E+00, 0.96562E+00, 0.96705E+00, 0.96848E+00, 0.96990E+00/ - - DATA (BNC09M(I),I=601,700)/ & - & 0.98518E+00, 0.99915E+00, 0.10130E+01, 0.10266E+01, 0.10401E+01, & - & 0.10535E+01, 0.10667E+01, 0.10797E+01, 0.10927E+01, 0.11054E+01, & - & 0.11181E+01, 0.11306E+01, 0.11430E+01, 0.11553E+01, 0.11674E+01, & - & 0.11794E+01, 0.11913E+01, 0.12031E+01, 0.12148E+01, 0.12263E+01, & - & 0.12378E+01, 0.12491E+01, 0.12604E+01, 0.12715E+01, 0.12825E+01, & - & 0.12934E+01, 0.13043E+01, 0.13150E+01, 0.13257E+01, 0.13362E+01, & - & 0.13467E+01, 0.13570E+01, 0.13673E+01, 0.13775E+01, 0.13876E+01, & - & 0.13976E+01, 0.14075E+01, 0.14174E+01, 0.14272E+01, 0.14369E+01, & - & 0.14465E+01, 0.14560E+01, 0.14655E+01, 0.14749E+01, 0.14842E+01, & - & 0.14935E+01, 0.15027E+01, 0.15118E+01, 0.15208E+01, 0.15298E+01, & - & 0.15387E+01, 0.15476E+01, 0.15563E+01, 0.15651E+01, 0.15737E+01, & - & 0.15823E+01, 0.15908E+01, 0.15993E+01, 0.16077E+01, 0.16161E+01, & - & 0.16244E+01, 0.16326E+01, 0.16408E+01, 0.16489E+01, 0.16570E+01, & - & 0.16650E+01, 0.16730E+01, 0.16809E+01, 0.16888E+01, 0.16966E+01, & - & 0.17044E+01, 0.17121E+01, 0.17197E+01, 0.17274E+01, 0.17349E+01, & - & 0.17424E+01, 0.17499E+01, 0.17574E+01, 0.17647E+01, 0.17721E+01, & - & 0.17794E+01, 0.17866E+01, 0.17938E+01, 0.18010E+01, 0.18081E+01, & - & 0.18152E+01, 0.18222E+01, 0.18292E+01, 0.18362E+01, 0.18431E+01, & - & 0.18500E+01, 0.18568E+01, 0.18636E+01, 0.18704E+01, 0.18771E+01, & - & 0.18838E+01, 0.18905E+01, 0.18971E+01, 0.19037E+01, 0.19102E+01/ - - DATA (BNC09M(I),I=701,741)/ & - & 0.19167E+01, 0.19232E+01, 0.19296E+01, 0.19360E+01, 0.19424E+01, & - & 0.19488E+01, 0.19551E+01, 0.19613E+01, 0.19676E+01, 0.19738E+01, & - & 0.19800E+01, 0.19861E+01, 0.19922E+01, 0.19983E+01, 0.20044E+01, & - & 0.20104E+01, 0.20164E+01, 0.20223E+01, 0.20283E+01, 0.20342E+01, & - & 0.20401E+01, 0.20459E+01, 0.20517E+01, 0.20575E+01, 0.20633E+01, & - & 0.20690E+01, 0.20747E+01, 0.20804E+01, 0.20861E+01, 0.20917E+01, & - & 0.20973E+01, 0.21029E+01, 0.21084E+01, 0.21140E+01, 0.21195E+01, & - & 0.21249E+01, 0.21304E+01, 0.21358E+01, 0.21412E+01, 0.21466E+01, & - & 0.21520E+01 & - & / -! -! *** (H,NO3) -! - DATA (BNC10M(I),I=1,100)/ & - &-0.45175E-01,-0.93795E-01,-0.11560E+00,-0.12968E+00,-0.13980E+00, & - &-0.14745E+00,-0.15341E+00,-0.15813E+00,-0.16190E+00,-0.16492E+00, & - &-0.16733E+00,-0.16923E+00,-0.17072E+00,-0.17184E+00,-0.17265E+00, & - &-0.17319E+00,-0.17350E+00,-0.17360E+00,-0.17351E+00,-0.17326E+00, & - &-0.17286E+00,-0.17233E+00,-0.17167E+00,-0.17091E+00,-0.17006E+00, & - &-0.16911E+00,-0.16808E+00,-0.16698E+00,-0.16581E+00,-0.16458E+00, & - &-0.16330E+00,-0.16196E+00,-0.16057E+00,-0.15915E+00,-0.15768E+00, & - &-0.15618E+00,-0.15465E+00,-0.15309E+00,-0.15150E+00,-0.14989E+00, & - &-0.14825E+00,-0.14660E+00,-0.14492E+00,-0.14323E+00,-0.14152E+00, & - &-0.13980E+00,-0.13807E+00,-0.13633E+00,-0.13457E+00,-0.13281E+00, & - &-0.13104E+00,-0.12926E+00,-0.12747E+00,-0.12567E+00,-0.12387E+00, & - &-0.12206E+00,-0.12025E+00,-0.11843E+00,-0.11660E+00,-0.11477E+00, & - &-0.11294E+00,-0.11109E+00,-0.10924E+00,-0.10739E+00,-0.10552E+00, & - &-0.10365E+00,-0.10178E+00,-0.99891E-01,-0.97998E-01,-0.96096E-01, & - &-0.94186E-01,-0.92266E-01,-0.90336E-01,-0.88396E-01,-0.86445E-01, & - &-0.84484E-01,-0.82510E-01,-0.80525E-01,-0.78527E-01,-0.76516E-01, & - &-0.74493E-01,-0.72456E-01,-0.70405E-01,-0.68341E-01,-0.66263E-01, & - &-0.64170E-01,-0.62063E-01,-0.59942E-01,-0.57806E-01,-0.55656E-01, & - &-0.53491E-01,-0.51312E-01,-0.49119E-01,-0.46912E-01,-0.44691E-01, & - &-0.42457E-01,-0.40209E-01,-0.37948E-01,-0.35675E-01,-0.33389E-01/ - - DATA (BNC10M(I),I=101,200)/ & - &-0.31092E-01,-0.28783E-01,-0.26463E-01,-0.24132E-01,-0.21791E-01, & - &-0.19441E-01,-0.17081E-01,-0.14713E-01,-0.12336E-01,-0.99517E-02, & - &-0.75599E-02,-0.51613E-02,-0.27563E-02,-0.34542E-03, 0.20709E-02, & - & 0.44922E-02, 0.69181E-02, 0.93482E-02, 0.11782E-01, 0.14219E-01, & - & 0.16659E-01, 0.19102E-01, 0.21548E-01, 0.23995E-01, 0.26444E-01, & - & 0.28894E-01, 0.31345E-01, 0.33797E-01, 0.36250E-01, 0.38703E-01, & - & 0.41157E-01, 0.43610E-01, 0.46063E-01, 0.48516E-01, 0.50968E-01, & - & 0.53419E-01, 0.55870E-01, 0.58319E-01, 0.60768E-01, 0.63215E-01, & - & 0.65661E-01, 0.68105E-01, 0.70548E-01, 0.72990E-01, 0.75429E-01, & - & 0.77867E-01, 0.80303E-01, 0.82737E-01, 0.85169E-01, 0.87599E-01, & - & 0.90027E-01, 0.92453E-01, 0.94877E-01, 0.97298E-01, 0.99718E-01, & - & 0.10213E+00, 0.10455E+00, 0.10696E+00, 0.10937E+00, 0.11178E+00, & - & 0.11418E+00, 0.11659E+00, 0.11899E+00, 0.12138E+00, 0.12378E+00, & - & 0.12617E+00, 0.12856E+00, 0.13095E+00, 0.13333E+00, 0.13571E+00, & - & 0.13809E+00, 0.14047E+00, 0.14284E+00, 0.14521E+00, 0.14758E+00, & - & 0.14995E+00, 0.15231E+00, 0.15467E+00, 0.15702E+00, 0.15938E+00, & - & 0.16173E+00, 0.16408E+00, 0.16642E+00, 0.16876E+00, 0.17110E+00, & - & 0.17344E+00, 0.17577E+00, 0.17810E+00, 0.18043E+00, 0.18275E+00, & - & 0.18508E+00, 0.18739E+00, 0.18971E+00, 0.19202E+00, 0.19433E+00, & - & 0.19664E+00, 0.19894E+00, 0.20124E+00, 0.20354E+00, 0.20583E+00/ - - DATA (BNC10M(I),I=201,300)/ & - & 0.20812E+00, 0.21041E+00, 0.21269E+00, 0.21497E+00, 0.21725E+00, & - & 0.21953E+00, 0.22180E+00, 0.22407E+00, 0.22633E+00, 0.22860E+00, & - & 0.23086E+00, 0.23311E+00, 0.23537E+00, 0.23762E+00, 0.23986E+00, & - & 0.24211E+00, 0.24435E+00, 0.24658E+00, 0.24882E+00, 0.25105E+00, & - & 0.25328E+00, 0.25550E+00, 0.25772E+00, 0.25994E+00, 0.26216E+00, & - & 0.26437E+00, 0.26658E+00, 0.26878E+00, 0.27099E+00, 0.27319E+00, & - & 0.27538E+00, 0.27757E+00, 0.27976E+00, 0.28195E+00, 0.28413E+00, & - & 0.28631E+00, 0.28849E+00, 0.29066E+00, 0.29284E+00, 0.29500E+00, & - & 0.29717E+00, 0.29933E+00, 0.30149E+00, 0.30364E+00, 0.30579E+00, & - & 0.30794E+00, 0.31009E+00, 0.31223E+00, 0.31437E+00, 0.31650E+00, & - & 0.31864E+00, 0.32077E+00, 0.32289E+00, 0.32501E+00, 0.32713E+00, & - & 0.32925E+00, 0.33137E+00, 0.33348E+00, 0.33558E+00, 0.33769E+00, & - & 0.33979E+00, 0.34189E+00, 0.34398E+00, 0.34607E+00, 0.34816E+00, & - & 0.35025E+00, 0.35233E+00, 0.35441E+00, 0.35649E+00, 0.35856E+00, & - & 0.36063E+00, 0.36270E+00, 0.36476E+00, 0.36682E+00, 0.36888E+00, & - & 0.37093E+00, 0.37299E+00, 0.37503E+00, 0.37708E+00, 0.37912E+00, & - & 0.38116E+00, 0.38320E+00, 0.38523E+00, 0.38726E+00, 0.38929E+00, & - & 0.39131E+00, 0.39333E+00, 0.39535E+00, 0.39737E+00, 0.39938E+00, & - & 0.40139E+00, 0.40339E+00, 0.40540E+00, 0.40740E+00, 0.40940E+00, & - & 0.41139E+00, 0.41338E+00, 0.41537E+00, 0.41735E+00, 0.41934E+00/ - - DATA (BNC10M(I),I=301,400)/ & - & 0.42132E+00, 0.42329E+00, 0.42527E+00, 0.42724E+00, 0.42920E+00, & - & 0.43117E+00, 0.43313E+00, 0.43509E+00, 0.43705E+00, 0.43900E+00, & - & 0.44095E+00, 0.44290E+00, 0.44484E+00, 0.44678E+00, 0.44872E+00, & - & 0.45066E+00, 0.45259E+00, 0.45452E+00, 0.45645E+00, 0.45837E+00, & - & 0.46029E+00, 0.46221E+00, 0.46413E+00, 0.46604E+00, 0.46795E+00, & - & 0.46986E+00, 0.47176E+00, 0.47366E+00, 0.47556E+00, 0.47746E+00, & - & 0.47935E+00, 0.48124E+00, 0.48313E+00, 0.48502E+00, 0.48690E+00, & - & 0.48878E+00, 0.49065E+00, 0.49253E+00, 0.49440E+00, 0.49627E+00, & - & 0.49813E+00, 0.50000E+00, 0.50186E+00, 0.50371E+00, 0.50557E+00, & - & 0.50742E+00, 0.50927E+00, 0.51112E+00, 0.51296E+00, 0.51480E+00, & - & 0.51664E+00, 0.51848E+00, 0.52031E+00, 0.52214E+00, 0.52397E+00, & - & 0.52580E+00, 0.52762E+00, 0.52944E+00, 0.53126E+00, 0.53307E+00, & - & 0.53488E+00, 0.53669E+00, 0.53850E+00, 0.54031E+00, 0.54211E+00, & - & 0.54391E+00, 0.54570E+00, 0.54750E+00, 0.54929E+00, 0.55108E+00, & - & 0.55286E+00, 0.55465E+00, 0.55643E+00, 0.55821E+00, 0.55999E+00, & - & 0.56176E+00, 0.56353E+00, 0.56530E+00, 0.56707E+00, 0.56883E+00, & - & 0.57059E+00, 0.57235E+00, 0.57411E+00, 0.57586E+00, 0.57761E+00, & - & 0.57936E+00, 0.58111E+00, 0.58285E+00, 0.58459E+00, 0.58633E+00, & - & 0.58807E+00, 0.58980E+00, 0.59153E+00, 0.59326E+00, 0.59499E+00, & - & 0.59671E+00, 0.59843E+00, 0.60015E+00, 0.60187E+00, 0.60359E+00/ - - DATA (BNC10M(I),I=401,500)/ & - & 0.60530E+00, 0.60701E+00, 0.60872E+00, 0.61042E+00, 0.61212E+00, & - & 0.61383E+00, 0.61552E+00, 0.61722E+00, 0.61891E+00, 0.62060E+00, & - & 0.62229E+00, 0.62398E+00, 0.62566E+00, 0.62734E+00, 0.62902E+00, & - & 0.63070E+00, 0.63238E+00, 0.63405E+00, 0.63572E+00, 0.63739E+00, & - & 0.63905E+00, 0.64072E+00, 0.64238E+00, 0.64404E+00, 0.64569E+00, & - & 0.64735E+00, 0.64900E+00, 0.65065E+00, 0.65230E+00, 0.65394E+00, & - & 0.65559E+00, 0.65723E+00, 0.65887E+00, 0.66050E+00, 0.66214E+00, & - & 0.66377E+00, 0.66540E+00, 0.66703E+00, 0.66865E+00, 0.67027E+00, & - & 0.67190E+00, 0.67351E+00, 0.67513E+00, 0.67675E+00, 0.67836E+00, & - & 0.67997E+00, 0.68158E+00, 0.68318E+00, 0.68479E+00, 0.68639E+00, & - & 0.68799E+00, 0.68959E+00, 0.69118E+00, 0.69277E+00, 0.69437E+00, & - & 0.69595E+00, 0.69754E+00, 0.69913E+00, 0.70071E+00, 0.70229E+00, & - & 0.70387E+00, 0.70545E+00, 0.70702E+00, 0.70859E+00, 0.71016E+00, & - & 0.71173E+00, 0.71330E+00, 0.71486E+00, 0.71642E+00, 0.71798E+00, & - & 0.71954E+00, 0.72110E+00, 0.72265E+00, 0.72420E+00, 0.72575E+00, & - & 0.72730E+00, 0.72885E+00, 0.73039E+00, 0.73193E+00, 0.73347E+00, & - & 0.73501E+00, 0.73655E+00, 0.73808E+00, 0.73961E+00, 0.74114E+00, & - & 0.74267E+00, 0.74420E+00, 0.74572E+00, 0.74724E+00, 0.74876E+00, & - & 0.75028E+00, 0.75180E+00, 0.75331E+00, 0.75483E+00, 0.75634E+00, & - & 0.75784E+00, 0.75935E+00, 0.76086E+00, 0.76236E+00, 0.76386E+00/ - - DATA (BNC10M(I),I=501,600)/ & - & 0.76536E+00, 0.76686E+00, 0.76835E+00, 0.76985E+00, 0.77134E+00, & - & 0.77283E+00, 0.77431E+00, 0.77580E+00, 0.77728E+00, 0.77877E+00, & - & 0.78025E+00, 0.78173E+00, 0.78320E+00, 0.78468E+00, 0.78615E+00, & - & 0.78762E+00, 0.78909E+00, 0.79056E+00, 0.79202E+00, 0.79349E+00, & - & 0.79495E+00, 0.79641E+00, 0.79787E+00, 0.79933E+00, 0.80078E+00, & - & 0.80223E+00, 0.80368E+00, 0.80513E+00, 0.80658E+00, 0.80803E+00, & - & 0.80947E+00, 0.81091E+00, 0.81235E+00, 0.81379E+00, 0.81523E+00, & - & 0.81667E+00, 0.81810E+00, 0.81953E+00, 0.82096E+00, 0.82239E+00, & - & 0.82382E+00, 0.82524E+00, 0.82666E+00, 0.82809E+00, 0.82951E+00, & - & 0.83092E+00, 0.83234E+00, 0.83375E+00, 0.83517E+00, 0.83658E+00, & - & 0.83799E+00, 0.83940E+00, 0.84080E+00, 0.84221E+00, 0.84361E+00, & - & 0.84501E+00, 0.84641E+00, 0.84781E+00, 0.84920E+00, 0.85060E+00, & - & 0.85199E+00, 0.85338E+00, 0.85477E+00, 0.85616E+00, 0.85754E+00, & - & 0.85893E+00, 0.86031E+00, 0.86169E+00, 0.86307E+00, 0.86445E+00, & - & 0.86583E+00, 0.86720E+00, 0.86857E+00, 0.86995E+00, 0.87131E+00, & - & 0.87268E+00, 0.87405E+00, 0.87541E+00, 0.87678E+00, 0.87814E+00, & - & 0.87950E+00, 0.88086E+00, 0.88222E+00, 0.88357E+00, 0.88493E+00, & - & 0.88628E+00, 0.88763E+00, 0.88898E+00, 0.89033E+00, 0.89167E+00, & - & 0.89302E+00, 0.89436E+00, 0.89570E+00, 0.89704E+00, 0.89838E+00, & - & 0.89972E+00, 0.90105E+00, 0.90238E+00, 0.90372E+00, 0.90505E+00/ - - DATA (BNC10M(I),I=601,700)/ & - & 0.91933E+00, 0.93239E+00, 0.94531E+00, 0.95808E+00, 0.97072E+00, & - & 0.98322E+00, 0.99558E+00, 0.10078E+01, 0.10199E+01, 0.10319E+01, & - & 0.10438E+01, 0.10555E+01, 0.10671E+01, 0.10786E+01, 0.10900E+01, & - & 0.11013E+01, 0.11124E+01, 0.11235E+01, 0.11344E+01, 0.11453E+01, & - & 0.11560E+01, 0.11667E+01, 0.11772E+01, 0.11876E+01, 0.11980E+01, & - & 0.12082E+01, 0.12184E+01, 0.12285E+01, 0.12385E+01, 0.12484E+01, & - & 0.12582E+01, 0.12679E+01, 0.12776E+01, 0.12871E+01, 0.12966E+01, & - & 0.13060E+01, 0.13154E+01, 0.13246E+01, 0.13338E+01, 0.13429E+01, & - & 0.13519E+01, 0.13609E+01, 0.13698E+01, 0.13786E+01, 0.13874E+01, & - & 0.13960E+01, 0.14047E+01, 0.14132E+01, 0.14217E+01, 0.14301E+01, & - & 0.14385E+01, 0.14468E+01, 0.14550E+01, 0.14632E+01, 0.14713E+01, & - & 0.14794E+01, 0.14874E+01, 0.14954E+01, 0.15033E+01, 0.15111E+01, & - & 0.15189E+01, 0.15266E+01, 0.15343E+01, 0.15419E+01, 0.15495E+01, & - & 0.15570E+01, 0.15645E+01, 0.15719E+01, 0.15793E+01, 0.15866E+01, & - & 0.15939E+01, 0.16012E+01, 0.16084E+01, 0.16155E+01, 0.16226E+01, & - & 0.16297E+01, 0.16367E+01, 0.16436E+01, 0.16506E+01, 0.16574E+01, & - & 0.16643E+01, 0.16711E+01, 0.16778E+01, 0.16845E+01, 0.16912E+01, & - & 0.16979E+01, 0.17045E+01, 0.17110E+01, 0.17175E+01, 0.17240E+01, & - & 0.17305E+01, 0.17369E+01, 0.17433E+01, 0.17496E+01, 0.17559E+01, & - & 0.17622E+01, 0.17684E+01, 0.17746E+01, 0.17808E+01, 0.17869E+01/ - - DATA (BNC10M(I),I=701,741)/ & - & 0.17930E+01, 0.17991E+01, 0.18051E+01, 0.18111E+01, 0.18171E+01, & - & 0.18230E+01, 0.18289E+01, 0.18348E+01, 0.18406E+01, 0.18464E+01, & - & 0.18522E+01, 0.18580E+01, 0.18637E+01, 0.18694E+01, 0.18751E+01, & - & 0.18807E+01, 0.18863E+01, 0.18919E+01, 0.18974E+01, 0.19030E+01, & - & 0.19085E+01, 0.19139E+01, 0.19194E+01, 0.19248E+01, 0.19302E+01, & - & 0.19356E+01, 0.19409E+01, 0.19462E+01, 0.19515E+01, 0.19568E+01, & - & 0.19620E+01, 0.19672E+01, 0.19724E+01, 0.19776E+01, 0.19828E+01, & - & 0.19879E+01, 0.19930E+01, 0.19981E+01, 0.20031E+01, 0.20081E+01, & - & 0.20131E+01 & - & / -! -! *** (H,Cl) -! - DATA (BNC11M(I),I=1,100)/ & - &-0.44136E-01,-0.88680E-01,-0.10706E+00,-0.11800E+00,-0.12513E+00, & - &-0.12990E+00,-0.13304E+00,-0.13497E+00,-0.13598E+00,-0.13624E+00, & - &-0.13589E+00,-0.13503E+00,-0.13373E+00,-0.13205E+00,-0.13004E+00, & - &-0.12774E+00,-0.12517E+00,-0.12237E+00,-0.11935E+00,-0.11614E+00, & - &-0.11275E+00,-0.10920E+00,-0.10550E+00,-0.10166E+00,-0.97690E-01, & - &-0.93602E-01,-0.89404E-01,-0.85103E-01,-0.80706E-01,-0.76221E-01, & - &-0.71651E-01,-0.67004E-01,-0.62284E-01,-0.57497E-01,-0.52646E-01, & - &-0.47736E-01,-0.42771E-01,-0.37754E-01,-0.32690E-01,-0.27580E-01, & - &-0.22429E-01,-0.17239E-01,-0.12013E-01,-0.67523E-02,-0.14605E-02, & - & 0.38607E-02, 0.92093E-02, 0.14584E-01, 0.19982E-01, 0.25402E-01, & - & 0.30844E-01, 0.36306E-01, 0.41786E-01, 0.47284E-01, 0.52800E-01, & - & 0.58332E-01, 0.63879E-01, 0.69443E-01, 0.75021E-01, 0.80615E-01, & - & 0.86223E-01, 0.91847E-01, 0.97486E-01, 0.10314E+00, 0.10881E+00, & - & 0.11450E+00, 0.12020E+00, 0.12592E+00, 0.13166E+00, 0.13742E+00, & - & 0.14320E+00, 0.14899E+00, 0.15481E+00, 0.16065E+00, 0.16652E+00, & - & 0.17241E+00, 0.17832E+00, 0.18426E+00, 0.19022E+00, 0.19621E+00, & - & 0.20223E+00, 0.20827E+00, 0.21435E+00, 0.22045E+00, 0.22659E+00, & - & 0.23275E+00, 0.23894E+00, 0.24517E+00, 0.25142E+00, 0.25771E+00, & - & 0.26402E+00, 0.27037E+00, 0.27674E+00, 0.28315E+00, 0.28958E+00, & - & 0.29604E+00, 0.30253E+00, 0.30905E+00, 0.31559E+00, 0.32216E+00/ - - DATA (BNC11M(I),I=101,200)/ & - & 0.32875E+00, 0.33537E+00, 0.34201E+00, 0.34867E+00, 0.35535E+00, & - & 0.36205E+00, 0.36877E+00, 0.37550E+00, 0.38225E+00, 0.38902E+00, & - & 0.39580E+00, 0.40259E+00, 0.40939E+00, 0.41620E+00, 0.42302E+00, & - & 0.42985E+00, 0.43669E+00, 0.44353E+00, 0.45037E+00, 0.45722E+00, & - & 0.46408E+00, 0.47093E+00, 0.47779E+00, 0.48464E+00, 0.49150E+00, & - & 0.49835E+00, 0.50520E+00, 0.51205E+00, 0.51890E+00, 0.52574E+00, & - & 0.53258E+00, 0.53941E+00, 0.54624E+00, 0.55306E+00, 0.55988E+00, & - & 0.56669E+00, 0.57349E+00, 0.58029E+00, 0.58708E+00, 0.59386E+00, & - & 0.60063E+00, 0.60739E+00, 0.61415E+00, 0.62089E+00, 0.62763E+00, & - & 0.63436E+00, 0.64108E+00, 0.64779E+00, 0.65449E+00, 0.66118E+00, & - & 0.66786E+00, 0.67453E+00, 0.68118E+00, 0.68783E+00, 0.69447E+00, & - & 0.70110E+00, 0.70772E+00, 0.71432E+00, 0.72092E+00, 0.72750E+00, & - & 0.73408E+00, 0.74064E+00, 0.74719E+00, 0.75373E+00, 0.76026E+00, & - & 0.76678E+00, 0.77329E+00, 0.77978E+00, 0.78627E+00, 0.79274E+00, & - & 0.79920E+00, 0.80565E+00, 0.81209E+00, 0.81852E+00, 0.82493E+00, & - & 0.83134E+00, 0.83773E+00, 0.84411E+00, 0.85048E+00, 0.85683E+00, & - & 0.86318E+00, 0.86951E+00, 0.87583E+00, 0.88214E+00, 0.88844E+00, & - & 0.89473E+00, 0.90100E+00, 0.90726E+00, 0.91352E+00, 0.91975E+00, & - & 0.92598E+00, 0.93220E+00, 0.93840E+00, 0.94459E+00, 0.95077E+00, & - & 0.95694E+00, 0.96310E+00, 0.96924E+00, 0.97537E+00, 0.98149E+00/ - - DATA (BNC11M(I),I=201,300)/ & - & 0.98760E+00, 0.99370E+00, 0.99978E+00, 0.10059E+01, 0.10119E+01, & - & 0.10180E+01, 0.10240E+01, 0.10300E+01, 0.10360E+01, 0.10421E+01, & - & 0.10480E+01, 0.10540E+01, 0.10600E+01, 0.10659E+01, 0.10719E+01, & - & 0.10778E+01, 0.10837E+01, 0.10897E+01, 0.10956E+01, 0.11014E+01, & - & 0.11073E+01, 0.11132E+01, 0.11190E+01, 0.11249E+01, 0.11307E+01, & - & 0.11365E+01, 0.11423E+01, 0.11481E+01, 0.11539E+01, 0.11597E+01, & - & 0.11654E+01, 0.11712E+01, 0.11769E+01, 0.11827E+01, 0.11884E+01, & - & 0.11941E+01, 0.11998E+01, 0.12054E+01, 0.12111E+01, 0.12168E+01, & - & 0.12224E+01, 0.12281E+01, 0.12337E+01, 0.12393E+01, 0.12449E+01, & - & 0.12505E+01, 0.12561E+01, 0.12617E+01, 0.12672E+01, 0.12728E+01, & - & 0.12783E+01, 0.12838E+01, 0.12894E+01, 0.12949E+01, 0.13004E+01, & - & 0.13059E+01, 0.13113E+01, 0.13168E+01, 0.13223E+01, 0.13277E+01, & - & 0.13331E+01, 0.13386E+01, 0.13440E+01, 0.13494E+01, 0.13548E+01, & - & 0.13601E+01, 0.13655E+01, 0.13709E+01, 0.13762E+01, 0.13816E+01, & - & 0.13869E+01, 0.13922E+01, 0.13975E+01, 0.14028E+01, 0.14081E+01, & - & 0.14134E+01, 0.14187E+01, 0.14239E+01, 0.14292E+01, 0.14344E+01, & - & 0.14396E+01, 0.14449E+01, 0.14501E+01, 0.14553E+01, 0.14605E+01, & - & 0.14656E+01, 0.14708E+01, 0.14760E+01, 0.14811E+01, 0.14863E+01, & - & 0.14914E+01, 0.14965E+01, 0.15016E+01, 0.15067E+01, 0.15118E+01, & - & 0.15169E+01, 0.15220E+01, 0.15271E+01, 0.15321E+01, 0.15372E+01/ - - DATA (BNC11M(I),I=301,400)/ & - & 0.15422E+01, 0.15472E+01, 0.15523E+01, 0.15573E+01, 0.15623E+01, & - & 0.15673E+01, 0.15722E+01, 0.15772E+01, 0.15822E+01, 0.15871E+01, & - & 0.15921E+01, 0.15970E+01, 0.16019E+01, 0.16069E+01, 0.16118E+01, & - & 0.16167E+01, 0.16216E+01, 0.16265E+01, 0.16313E+01, 0.16362E+01, & - & 0.16410E+01, 0.16459E+01, 0.16507E+01, 0.16556E+01, 0.16604E+01, & - & 0.16652E+01, 0.16700E+01, 0.16748E+01, 0.16796E+01, 0.16844E+01, & - & 0.16891E+01, 0.16939E+01, 0.16987E+01, 0.17034E+01, 0.17081E+01, & - & 0.17129E+01, 0.17176E+01, 0.17223E+01, 0.17270E+01, 0.17317E+01, & - & 0.17364E+01, 0.17411E+01, 0.17457E+01, 0.17504E+01, 0.17551E+01, & - & 0.17597E+01, 0.17644E+01, 0.17690E+01, 0.17736E+01, 0.17782E+01, & - & 0.17828E+01, 0.17874E+01, 0.17920E+01, 0.17966E+01, 0.18012E+01, & - & 0.18057E+01, 0.18103E+01, 0.18149E+01, 0.18194E+01, 0.18239E+01, & - & 0.18285E+01, 0.18330E+01, 0.18375E+01, 0.18420E+01, 0.18465E+01, & - & 0.18510E+01, 0.18555E+01, 0.18600E+01, 0.18644E+01, 0.18689E+01, & - & 0.18733E+01, 0.18778E+01, 0.18822E+01, 0.18867E+01, 0.18911E+01, & - & 0.18955E+01, 0.18999E+01, 0.19043E+01, 0.19087E+01, 0.19131E+01, & - & 0.19175E+01, 0.19218E+01, 0.19262E+01, 0.19306E+01, 0.19349E+01, & - & 0.19393E+01, 0.19436E+01, 0.19479E+01, 0.19522E+01, 0.19566E+01, & - & 0.19609E+01, 0.19652E+01, 0.19695E+01, 0.19737E+01, 0.19780E+01, & - & 0.19823E+01, 0.19866E+01, 0.19908E+01, 0.19951E+01, 0.19993E+01/ - - DATA (BNC11M(I),I=401,500)/ & - & 0.20036E+01, 0.20078E+01, 0.20120E+01, 0.20162E+01, 0.20204E+01, & - & 0.20247E+01, 0.20289E+01, 0.20330E+01, 0.20372E+01, 0.20414E+01, & - & 0.20456E+01, 0.20497E+01, 0.20539E+01, 0.20581E+01, 0.20622E+01, & - & 0.20663E+01, 0.20705E+01, 0.20746E+01, 0.20787E+01, 0.20828E+01, & - & 0.20869E+01, 0.20910E+01, 0.20951E+01, 0.20992E+01, 0.21033E+01, & - & 0.21074E+01, 0.21114E+01, 0.21155E+01, 0.21196E+01, 0.21236E+01, & - & 0.21277E+01, 0.21317E+01, 0.21357E+01, 0.21398E+01, 0.21438E+01, & - & 0.21478E+01, 0.21518E+01, 0.21558E+01, 0.21598E+01, 0.21638E+01, & - & 0.21678E+01, 0.21717E+01, 0.21757E+01, 0.21797E+01, 0.21836E+01, & - & 0.21876E+01, 0.21915E+01, 0.21955E+01, 0.21994E+01, 0.22033E+01, & - & 0.22073E+01, 0.22112E+01, 0.22151E+01, 0.22190E+01, 0.22229E+01, & - & 0.22268E+01, 0.22307E+01, 0.22346E+01, 0.22384E+01, 0.22423E+01, & - & 0.22462E+01, 0.22500E+01, 0.22539E+01, 0.22577E+01, 0.22616E+01, & - & 0.22654E+01, 0.22692E+01, 0.22731E+01, 0.22769E+01, 0.22807E+01, & - & 0.22845E+01, 0.22883E+01, 0.22921E+01, 0.22959E+01, 0.22997E+01, & - & 0.23035E+01, 0.23072E+01, 0.23110E+01, 0.23148E+01, 0.23185E+01, & - & 0.23223E+01, 0.23260E+01, 0.23298E+01, 0.23335E+01, 0.23373E+01, & - & 0.23410E+01, 0.23447E+01, 0.23484E+01, 0.23521E+01, 0.23558E+01, & - & 0.23595E+01, 0.23632E+01, 0.23669E+01, 0.23706E+01, 0.23743E+01, & - & 0.23780E+01, 0.23816E+01, 0.23853E+01, 0.23890E+01, 0.23926E+01/ - - DATA (BNC11M(I),I=501,600)/ & - & 0.23963E+01, 0.23999E+01, 0.24036E+01, 0.24072E+01, 0.24108E+01, & - & 0.24144E+01, 0.24181E+01, 0.24217E+01, 0.24253E+01, 0.24289E+01, & - & 0.24325E+01, 0.24361E+01, 0.24397E+01, 0.24433E+01, 0.24468E+01, & - & 0.24504E+01, 0.24540E+01, 0.24575E+01, 0.24611E+01, 0.24647E+01, & - & 0.24682E+01, 0.24718E+01, 0.24753E+01, 0.24788E+01, 0.24824E+01, & - & 0.24859E+01, 0.24894E+01, 0.24929E+01, 0.24964E+01, 0.24999E+01, & - & 0.25034E+01, 0.25069E+01, 0.25104E+01, 0.25139E+01, 0.25174E+01, & - & 0.25209E+01, 0.25244E+01, 0.25278E+01, 0.25313E+01, 0.25348E+01, & - & 0.25382E+01, 0.25417E+01, 0.25451E+01, 0.25486E+01, 0.25520E+01, & - & 0.25554E+01, 0.25589E+01, 0.25623E+01, 0.25657E+01, 0.25691E+01, & - & 0.25725E+01, 0.25759E+01, 0.25793E+01, 0.25827E+01, 0.25861E+01, & - & 0.25895E+01, 0.25929E+01, 0.25963E+01, 0.25997E+01, 0.26030E+01, & - & 0.26064E+01, 0.26098E+01, 0.26131E+01, 0.26165E+01, 0.26198E+01, & - & 0.26232E+01, 0.26265E+01, 0.26298E+01, 0.26332E+01, 0.26365E+01, & - & 0.26398E+01, 0.26431E+01, 0.26465E+01, 0.26498E+01, 0.26531E+01, & - & 0.26564E+01, 0.26597E+01, 0.26630E+01, 0.26663E+01, 0.26696E+01, & - & 0.26728E+01, 0.26761E+01, 0.26794E+01, 0.26827E+01, 0.26859E+01, & - & 0.26892E+01, 0.26924E+01, 0.26957E+01, 0.26989E+01, 0.27022E+01, & - & 0.27054E+01, 0.27087E+01, 0.27119E+01, 0.27151E+01, 0.27184E+01, & - & 0.27216E+01, 0.27248E+01, 0.27280E+01, 0.27312E+01, 0.27344E+01/ - - DATA (BNC11M(I),I=601,700)/ & - & 0.27688E+01, 0.28002E+01, 0.28313E+01, 0.28620E+01, 0.28923E+01, & - & 0.29223E+01, 0.29519E+01, 0.29812E+01, 0.30102E+01, 0.30388E+01, & - & 0.30672E+01, 0.30952E+01, 0.31229E+01, 0.31504E+01, 0.31775E+01, & - & 0.32044E+01, 0.32310E+01, 0.32573E+01, 0.32834E+01, 0.33092E+01, & - & 0.33347E+01, 0.33601E+01, 0.33851E+01, 0.34099E+01, 0.34345E+01, & - & 0.34589E+01, 0.34830E+01, 0.35069E+01, 0.35306E+01, 0.35541E+01, & - & 0.35773E+01, 0.36004E+01, 0.36232E+01, 0.36459E+01, 0.36683E+01, & - & 0.36906E+01, 0.37127E+01, 0.37346E+01, 0.37563E+01, 0.37778E+01, & - & 0.37992E+01, 0.38203E+01, 0.38413E+01, 0.38622E+01, 0.38828E+01, & - & 0.39033E+01, 0.39237E+01, 0.39439E+01, 0.39639E+01, 0.39838E+01, & - & 0.40035E+01, 0.40231E+01, 0.40425E+01, 0.40618E+01, 0.40809E+01, & - & 0.40999E+01, 0.41188E+01, 0.41375E+01, 0.41561E+01, 0.41746E+01, & - & 0.41929E+01, 0.42111E+01, 0.42292E+01, 0.42472E+01, 0.42650E+01, & - & 0.42827E+01, 0.43003E+01, 0.43177E+01, 0.43351E+01, 0.43523E+01, & - & 0.43695E+01, 0.43865E+01, 0.44034E+01, 0.44202E+01, 0.44368E+01, & - & 0.44534E+01, 0.44699E+01, 0.44862E+01, 0.45025E+01, 0.45187E+01, & - & 0.45347E+01, 0.45507E+01, 0.45666E+01, 0.45823E+01, 0.45980E+01, & - & 0.46136E+01, 0.46291E+01, 0.46445E+01, 0.46598E+01, 0.46750E+01, & - & 0.46901E+01, 0.47051E+01, 0.47201E+01, 0.47350E+01, 0.47497E+01, & - & 0.47644E+01, 0.47791E+01, 0.47936E+01, 0.48080E+01, 0.48224E+01/ - - DATA (BNC11M(I),I=701,741)/ & - & 0.48367E+01, 0.48509E+01, 0.48651E+01, 0.48791E+01, 0.48931E+01, & - & 0.49070E+01, 0.49208E+01, 0.49346E+01, 0.49483E+01, 0.49619E+01, & - & 0.49755E+01, 0.49889E+01, 0.50023E+01, 0.50157E+01, 0.50290E+01, & - & 0.50422E+01, 0.50553E+01, 0.50684E+01, 0.50814E+01, 0.50943E+01, & - & 0.51072E+01, 0.51200E+01, 0.51327E+01, 0.51454E+01, 0.51580E+01, & - & 0.51706E+01, 0.51831E+01, 0.51956E+01, 0.52079E+01, 0.52203E+01, & - & 0.52325E+01, 0.52447E+01, 0.52569E+01, 0.52690E+01, 0.52810E+01, & - & 0.52930E+01, 0.53049E+01, 0.53168E+01, 0.53286E+01, 0.53404E+01, & - & 0.53521E+01 & - & / -! -! *** NaHSO4 -! - DATA (BNC12M(I),I=1,100)/ & - &-0.45034E-01,-0.93528E-01,-0.11552E+00,-0.12992E+00,-0.14041E+00, & - &-0.14847E+00,-0.15486E+00,-0.16000E+00,-0.16419E+00,-0.16761E+00, & - &-0.17041E+00,-0.17267E+00,-0.17449E+00,-0.17591E+00,-0.17699E+00, & - &-0.17776E+00,-0.17826E+00,-0.17851E+00,-0.17853E+00,-0.17835E+00, & - &-0.17798E+00,-0.17743E+00,-0.17671E+00,-0.17585E+00,-0.17484E+00, & - &-0.17369E+00,-0.17241E+00,-0.17102E+00,-0.16951E+00,-0.16790E+00, & - &-0.16618E+00,-0.16436E+00,-0.16245E+00,-0.16045E+00,-0.15836E+00, & - &-0.15620E+00,-0.15396E+00,-0.15164E+00,-0.14925E+00,-0.14680E+00, & - &-0.14428E+00,-0.14170E+00,-0.13905E+00,-0.13635E+00,-0.13360E+00, & - &-0.13079E+00,-0.12794E+00,-0.12503E+00,-0.12208E+00,-0.11908E+00, & - &-0.11604E+00,-0.11296E+00,-0.10984E+00,-0.10667E+00,-0.10348E+00, & - &-0.10024E+00,-0.96972E-01,-0.93669E-01,-0.90333E-01,-0.86964E-01, & - &-0.83564E-01,-0.80133E-01,-0.76672E-01,-0.73181E-01,-0.69661E-01, & - &-0.66113E-01,-0.62536E-01,-0.58930E-01,-0.55297E-01,-0.51636E-01, & - &-0.47947E-01,-0.44230E-01,-0.40486E-01,-0.36714E-01,-0.32914E-01, & - &-0.29086E-01,-0.25231E-01,-0.21348E-01,-0.17437E-01,-0.13498E-01, & - &-0.95308E-02,-0.55358E-02,-0.15127E-02, 0.25383E-02, 0.66171E-02, & - & 0.10724E-01, 0.14858E-01, 0.19019E-01, 0.23208E-01, 0.27423E-01, & - & 0.31665E-01, 0.35933E-01, 0.40227E-01, 0.44545E-01, 0.48888E-01, & - & 0.53254E-01, 0.57644E-01, 0.62056E-01, 0.66490E-01, 0.70945E-01/ - - DATA (BNC12M(I),I=101,200)/ & - & 0.75420E-01, 0.79914E-01, 0.84426E-01, 0.88956E-01, 0.93502E-01, & - & 0.98063E-01, 0.10264E+00, 0.10723E+00, 0.11183E+00, 0.11644E+00, & - & 0.12107E+00, 0.12570E+00, 0.13035E+00, 0.13500E+00, 0.13966E+00, & - & 0.14432E+00, 0.14899E+00, 0.15366E+00, 0.15834E+00, 0.16302E+00, & - & 0.16771E+00, 0.17239E+00, 0.17708E+00, 0.18176E+00, 0.18645E+00, & - & 0.19113E+00, 0.19582E+00, 0.20050E+00, 0.20518E+00, 0.20985E+00, & - & 0.21452E+00, 0.21919E+00, 0.22386E+00, 0.22852E+00, 0.23317E+00, & - & 0.23782E+00, 0.24247E+00, 0.24711E+00, 0.25174E+00, 0.25637E+00, & - & 0.26099E+00, 0.26561E+00, 0.27021E+00, 0.27481E+00, 0.27941E+00, & - & 0.28400E+00, 0.28858E+00, 0.29315E+00, 0.29771E+00, 0.30227E+00, & - & 0.30682E+00, 0.31136E+00, 0.31590E+00, 0.32043E+00, 0.32494E+00, & - & 0.32946E+00, 0.33396E+00, 0.33845E+00, 0.34294E+00, 0.34742E+00, & - & 0.35189E+00, 0.35635E+00, 0.36080E+00, 0.36525E+00, 0.36968E+00, & - & 0.37411E+00, 0.37853E+00, 0.38294E+00, 0.38734E+00, 0.39174E+00, & - & 0.39612E+00, 0.40050E+00, 0.40487E+00, 0.40923E+00, 0.41358E+00, & - & 0.41792E+00, 0.42226E+00, 0.42658E+00, 0.43090E+00, 0.43521E+00, & - & 0.43951E+00, 0.44380E+00, 0.44808E+00, 0.45236E+00, 0.45662E+00, & - & 0.46088E+00, 0.46513E+00, 0.46937E+00, 0.47360E+00, 0.47782E+00, & - & 0.48204E+00, 0.48624E+00, 0.49044E+00, 0.49463E+00, 0.49881E+00, & - & 0.50298E+00, 0.50715E+00, 0.51130E+00, 0.51545E+00, 0.51959E+00/ - - DATA (BNC12M(I),I=201,300)/ & - & 0.52372E+00, 0.52784E+00, 0.53195E+00, 0.53606E+00, 0.54016E+00, & - & 0.54425E+00, 0.54833E+00, 0.55240E+00, 0.55646E+00, 0.56052E+00, & - & 0.56457E+00, 0.56861E+00, 0.57264E+00, 0.57666E+00, 0.58068E+00, & - & 0.58468E+00, 0.58868E+00, 0.59267E+00, 0.59666E+00, 0.60063E+00, & - & 0.60460E+00, 0.60856E+00, 0.61251E+00, 0.61645E+00, 0.62039E+00, & - & 0.62432E+00, 0.62824E+00, 0.63215E+00, 0.63606E+00, 0.63995E+00, & - & 0.64384E+00, 0.64772E+00, 0.65160E+00, 0.65546E+00, 0.65932E+00, & - & 0.66317E+00, 0.66702E+00, 0.67085E+00, 0.67468E+00, 0.67850E+00, & - & 0.68231E+00, 0.68612E+00, 0.68992E+00, 0.69371E+00, 0.69749E+00, & - & 0.70127E+00, 0.70504E+00, 0.70880E+00, 0.71256E+00, 0.71630E+00, & - & 0.72004E+00, 0.72378E+00, 0.72750E+00, 0.73122E+00, 0.73493E+00, & - & 0.73864E+00, 0.74233E+00, 0.74602E+00, 0.74971E+00, 0.75338E+00, & - & 0.75705E+00, 0.76071E+00, 0.76437E+00, 0.76802E+00, 0.77166E+00, & - & 0.77529E+00, 0.77892E+00, 0.78254E+00, 0.78616E+00, 0.78976E+00, & - & 0.79337E+00, 0.79696E+00, 0.80055E+00, 0.80413E+00, 0.80770E+00, & - & 0.81127E+00, 0.81483E+00, 0.81838E+00, 0.82193E+00, 0.82547E+00, & - & 0.82901E+00, 0.83253E+00, 0.83605E+00, 0.83957E+00, 0.84308E+00, & - & 0.84658E+00, 0.85008E+00, 0.85357E+00, 0.85705E+00, 0.86053E+00, & - & 0.86400E+00, 0.86746E+00, 0.87092E+00, 0.87437E+00, 0.87781E+00, & - & 0.88125E+00, 0.88469E+00, 0.88811E+00, 0.89153E+00, 0.89495E+00/ - - DATA (BNC12M(I),I=301,400)/ & - & 0.89836E+00, 0.90176E+00, 0.90516E+00, 0.90855E+00, 0.91193E+00, & - & 0.91531E+00, 0.91868E+00, 0.92205E+00, 0.92541E+00, 0.92876E+00, & - & 0.93211E+00, 0.93545E+00, 0.93879E+00, 0.94212E+00, 0.94545E+00, & - & 0.94877E+00, 0.95208E+00, 0.95539E+00, 0.95869E+00, 0.96199E+00, & - & 0.96528E+00, 0.96856E+00, 0.97184E+00, 0.97512E+00, 0.97839E+00, & - & 0.98165E+00, 0.98491E+00, 0.98816E+00, 0.99140E+00, 0.99464E+00, & - & 0.99788E+00, 0.10011E+01, 0.10043E+01, 0.10075E+01, 0.10108E+01, & - & 0.10140E+01, 0.10172E+01, 0.10204E+01, 0.10236E+01, 0.10267E+01, & - & 0.10299E+01, 0.10331E+01, 0.10363E+01, 0.10394E+01, 0.10426E+01, & - & 0.10458E+01, 0.10489E+01, 0.10520E+01, 0.10552E+01, 0.10583E+01, & - & 0.10614E+01, 0.10646E+01, 0.10677E+01, 0.10708E+01, 0.10739E+01, & - & 0.10770E+01, 0.10801E+01, 0.10832E+01, 0.10863E+01, 0.10894E+01, & - & 0.10924E+01, 0.10955E+01, 0.10986E+01, 0.11016E+01, 0.11047E+01, & - & 0.11078E+01, 0.11108E+01, 0.11138E+01, 0.11169E+01, 0.11199E+01, & - & 0.11229E+01, 0.11260E+01, 0.11290E+01, 0.11320E+01, 0.11350E+01, & - & 0.11380E+01, 0.11410E+01, 0.11440E+01, 0.11470E+01, 0.11500E+01, & - & 0.11530E+01, 0.11559E+01, 0.11589E+01, 0.11619E+01, 0.11648E+01, & - & 0.11678E+01, 0.11708E+01, 0.11737E+01, 0.11766E+01, 0.11796E+01, & - & 0.11825E+01, 0.11854E+01, 0.11884E+01, 0.11913E+01, 0.11942E+01, & - & 0.11971E+01, 0.12000E+01, 0.12029E+01, 0.12058E+01, 0.12087E+01/ - - DATA (BNC12M(I),I=401,500)/ & - & 0.12116E+01, 0.12145E+01, 0.12174E+01, 0.12202E+01, 0.12231E+01, & - & 0.12260E+01, 0.12289E+01, 0.12317E+01, 0.12346E+01, 0.12374E+01, & - & 0.12403E+01, 0.12431E+01, 0.12459E+01, 0.12488E+01, 0.12516E+01, & - & 0.12544E+01, 0.12572E+01, 0.12601E+01, 0.12629E+01, 0.12657E+01, & - & 0.12685E+01, 0.12713E+01, 0.12741E+01, 0.12769E+01, 0.12797E+01, & - & 0.12824E+01, 0.12852E+01, 0.12880E+01, 0.12908E+01, 0.12935E+01, & - & 0.12963E+01, 0.12990E+01, 0.13018E+01, 0.13046E+01, 0.13073E+01, & - & 0.13100E+01, 0.13128E+01, 0.13155E+01, 0.13182E+01, 0.13210E+01, & - & 0.13237E+01, 0.13264E+01, 0.13291E+01, 0.13318E+01, 0.13345E+01, & - & 0.13372E+01, 0.13399E+01, 0.13426E+01, 0.13453E+01, 0.13480E+01, & - & 0.13507E+01, 0.13534E+01, 0.13561E+01, 0.13587E+01, 0.13614E+01, & - & 0.13641E+01, 0.13667E+01, 0.13694E+01, 0.13720E+01, 0.13747E+01, & - & 0.13773E+01, 0.13800E+01, 0.13826E+01, 0.13852E+01, 0.13879E+01, & - & 0.13905E+01, 0.13931E+01, 0.13957E+01, 0.13984E+01, 0.14010E+01, & - & 0.14036E+01, 0.14062E+01, 0.14088E+01, 0.14114E+01, 0.14140E+01, & - & 0.14166E+01, 0.14191E+01, 0.14217E+01, 0.14243E+01, 0.14269E+01, & - & 0.14295E+01, 0.14320E+01, 0.14346E+01, 0.14372E+01, 0.14397E+01, & - & 0.14423E+01, 0.14448E+01, 0.14474E+01, 0.14499E+01, 0.14525E+01, & - & 0.14550E+01, 0.14575E+01, 0.14601E+01, 0.14626E+01, 0.14651E+01, & - & 0.14676E+01, 0.14702E+01, 0.14727E+01, 0.14752E+01, 0.14777E+01/ - - DATA (BNC12M(I),I=501,600)/ & - & 0.14802E+01, 0.14827E+01, 0.14852E+01, 0.14877E+01, 0.14902E+01, & - & 0.14927E+01, 0.14951E+01, 0.14976E+01, 0.15001E+01, 0.15026E+01, & - & 0.15051E+01, 0.15075E+01, 0.15100E+01, 0.15124E+01, 0.15149E+01, & - & 0.15174E+01, 0.15198E+01, 0.15223E+01, 0.15247E+01, 0.15271E+01, & - & 0.15296E+01, 0.15320E+01, 0.15345E+01, 0.15369E+01, 0.15393E+01, & - & 0.15417E+01, 0.15442E+01, 0.15466E+01, 0.15490E+01, 0.15514E+01, & - & 0.15538E+01, 0.15562E+01, 0.15586E+01, 0.15610E+01, 0.15634E+01, & - & 0.15658E+01, 0.15682E+01, 0.15706E+01, 0.15729E+01, 0.15753E+01, & - & 0.15777E+01, 0.15801E+01, 0.15824E+01, 0.15848E+01, 0.15872E+01, & - & 0.15895E+01, 0.15919E+01, 0.15943E+01, 0.15966E+01, 0.15990E+01, & - & 0.16013E+01, 0.16037E+01, 0.16060E+01, 0.16083E+01, 0.16107E+01, & - & 0.16130E+01, 0.16153E+01, 0.16177E+01, 0.16200E+01, 0.16223E+01, & - & 0.16246E+01, 0.16269E+01, 0.16292E+01, 0.16316E+01, 0.16339E+01, & - & 0.16362E+01, 0.16385E+01, 0.16408E+01, 0.16431E+01, 0.16453E+01, & - & 0.16476E+01, 0.16499E+01, 0.16522E+01, 0.16545E+01, 0.16568E+01, & - & 0.16590E+01, 0.16613E+01, 0.16636E+01, 0.16658E+01, 0.16681E+01, & - & 0.16704E+01, 0.16726E+01, 0.16749E+01, 0.16771E+01, 0.16794E+01, & - & 0.16816E+01, 0.16839E+01, 0.16861E+01, 0.16884E+01, 0.16906E+01, & - & 0.16928E+01, 0.16951E+01, 0.16973E+01, 0.16995E+01, 0.17018E+01, & - & 0.17040E+01, 0.17062E+01, 0.17084E+01, 0.17106E+01, 0.17128E+01/ - - DATA (BNC12M(I),I=601,700)/ & - & 0.17365E+01, 0.17582E+01, 0.17797E+01, 0.18009E+01, 0.18218E+01, & - & 0.18425E+01, 0.18630E+01, 0.18833E+01, 0.19033E+01, 0.19232E+01, & - & 0.19428E+01, 0.19622E+01, 0.19814E+01, 0.20004E+01, 0.20193E+01, & - & 0.20379E+01, 0.20563E+01, 0.20746E+01, 0.20927E+01, 0.21106E+01, & - & 0.21283E+01, 0.21459E+01, 0.21633E+01, 0.21806E+01, 0.21976E+01, & - & 0.22146E+01, 0.22313E+01, 0.22480E+01, 0.22644E+01, 0.22808E+01, & - & 0.22969E+01, 0.23130E+01, 0.23289E+01, 0.23447E+01, 0.23603E+01, & - & 0.23758E+01, 0.23912E+01, 0.24064E+01, 0.24215E+01, 0.24365E+01, & - & 0.24514E+01, 0.24662E+01, 0.24808E+01, 0.24953E+01, 0.25097E+01, & - & 0.25240E+01, 0.25382E+01, 0.25523E+01, 0.25663E+01, 0.25802E+01, & - & 0.25939E+01, 0.26076E+01, 0.26211E+01, 0.26346E+01, 0.26480E+01, & - & 0.26612E+01, 0.26744E+01, 0.26875E+01, 0.27005E+01, 0.27134E+01, & - & 0.27262E+01, 0.27389E+01, 0.27515E+01, 0.27640E+01, 0.27765E+01, & - & 0.27889E+01, 0.28012E+01, 0.28134E+01, 0.28255E+01, 0.28375E+01, & - & 0.28495E+01, 0.28614E+01, 0.28732E+01, 0.28849E+01, 0.28966E+01, & - & 0.29082E+01, 0.29197E+01, 0.29312E+01, 0.29425E+01, 0.29538E+01, & - & 0.29651E+01, 0.29762E+01, 0.29873E+01, 0.29984E+01, 0.30093E+01, & - & 0.30202E+01, 0.30311E+01, 0.30419E+01, 0.30526E+01, 0.30632E+01, & - & 0.30738E+01, 0.30843E+01, 0.30948E+01, 0.31052E+01, 0.31155E+01, & - & 0.31258E+01, 0.31361E+01, 0.31462E+01, 0.31564E+01, 0.31664E+01/ - - DATA (BNC12M(I),I=701,741)/ & - & 0.31764E+01, 0.31864E+01, 0.31963E+01, 0.32061E+01, 0.32159E+01, & - & 0.32257E+01, 0.32354E+01, 0.32450E+01, 0.32546E+01, 0.32641E+01, & - & 0.32736E+01, 0.32831E+01, 0.32925E+01, 0.33018E+01, 0.33111E+01, & - & 0.33203E+01, 0.33295E+01, 0.33387E+01, 0.33478E+01, 0.33569E+01, & - & 0.33659E+01, 0.33749E+01, 0.33838E+01, 0.33927E+01, 0.34016E+01, & - & 0.34104E+01, 0.34191E+01, 0.34278E+01, 0.34365E+01, 0.34452E+01, & - & 0.34538E+01, 0.34623E+01, 0.34708E+01, 0.34793E+01, 0.34878E+01, & - & 0.34962E+01, 0.35045E+01, 0.35128E+01, 0.35211E+01, 0.35294E+01, & - & 0.35376E+01 & - & / -! -! *** (NH4)3H(SO4)2 -! - DATA (BNC13M(I),I=1,100)/ & - &-0.74160E-01,-0.16032E+00,-0.20289E+00,-0.23274E+00,-0.25599E+00, & - &-0.27511E+00,-0.29137E+00,-0.30552E+00,-0.31804E+00,-0.32926E+00, & - &-0.33941E+00,-0.34868E+00,-0.35720E+00,-0.36507E+00,-0.37238E+00, & - &-0.37919E+00,-0.38556E+00,-0.39153E+00,-0.39715E+00,-0.40245E+00, & - &-0.40745E+00,-0.41219E+00,-0.41668E+00,-0.42094E+00,-0.42499E+00, & - &-0.42884E+00,-0.43251E+00,-0.43600E+00,-0.43934E+00,-0.44252E+00, & - &-0.44556E+00,-0.44847E+00,-0.45124E+00,-0.45390E+00,-0.45644E+00, & - &-0.45887E+00,-0.46119E+00,-0.46342E+00,-0.46555E+00,-0.46759E+00, & - &-0.46955E+00,-0.47142E+00,-0.47321E+00,-0.47492E+00,-0.47656E+00, & - &-0.47813E+00,-0.47963E+00,-0.48107E+00,-0.48244E+00,-0.48376E+00, & - &-0.48501E+00,-0.48621E+00,-0.48736E+00,-0.48845E+00,-0.48950E+00, & - &-0.49049E+00,-0.49144E+00,-0.49234E+00,-0.49320E+00,-0.49402E+00, & - &-0.49480E+00,-0.49554E+00,-0.49623E+00,-0.49690E+00,-0.49752E+00, & - &-0.49812E+00,-0.49867E+00,-0.49920E+00,-0.49969E+00,-0.50015E+00, & - &-0.50059E+00,-0.50099E+00,-0.50136E+00,-0.50171E+00,-0.50203E+00, & - &-0.50232E+00,-0.50259E+00,-0.50283E+00,-0.50305E+00,-0.50324E+00, & - &-0.50341E+00,-0.50356E+00,-0.50369E+00,-0.50379E+00,-0.50387E+00, & - &-0.50393E+00,-0.50397E+00,-0.50399E+00,-0.50399E+00,-0.50397E+00, & - &-0.50393E+00,-0.50387E+00,-0.50380E+00,-0.50371E+00,-0.50360E+00, & - &-0.50347E+00,-0.50333E+00,-0.50317E+00,-0.50300E+00,-0.50281E+00/ - - DATA (BNC13M(I),I=101,200)/ & - &-0.50260E+00,-0.50239E+00,-0.50216E+00,-0.50191E+00,-0.50165E+00, & - &-0.50138E+00,-0.50110E+00,-0.50081E+00,-0.50050E+00,-0.50019E+00, & - &-0.49986E+00,-0.49953E+00,-0.49918E+00,-0.49882E+00,-0.49846E+00, & - &-0.49809E+00,-0.49771E+00,-0.49732E+00,-0.49692E+00,-0.49652E+00, & - &-0.49610E+00,-0.49569E+00,-0.49526E+00,-0.49483E+00,-0.49439E+00, & - &-0.49395E+00,-0.49350E+00,-0.49305E+00,-0.49259E+00,-0.49213E+00, & - &-0.49166E+00,-0.49119E+00,-0.49071E+00,-0.49023E+00,-0.48975E+00, & - &-0.48926E+00,-0.48877E+00,-0.48827E+00,-0.48777E+00,-0.48727E+00, & - &-0.48677E+00,-0.48626E+00,-0.48575E+00,-0.48523E+00,-0.48472E+00, & - &-0.48420E+00,-0.48368E+00,-0.48315E+00,-0.48263E+00,-0.48210E+00, & - &-0.48157E+00,-0.48104E+00,-0.48050E+00,-0.47997E+00,-0.47943E+00, & - &-0.47889E+00,-0.47835E+00,-0.47781E+00,-0.47727E+00,-0.47672E+00, & - &-0.47617E+00,-0.47563E+00,-0.47508E+00,-0.47453E+00,-0.47398E+00, & - &-0.47342E+00,-0.47287E+00,-0.47232E+00,-0.47176E+00,-0.47121E+00, & - &-0.47065E+00,-0.47009E+00,-0.46953E+00,-0.46897E+00,-0.46841E+00, & - &-0.46785E+00,-0.46729E+00,-0.46673E+00,-0.46617E+00,-0.46560E+00, & - &-0.46504E+00,-0.46448E+00,-0.46391E+00,-0.46335E+00,-0.46278E+00, & - &-0.46222E+00,-0.46165E+00,-0.46108E+00,-0.46052E+00,-0.45995E+00, & - &-0.45938E+00,-0.45882E+00,-0.45825E+00,-0.45768E+00,-0.45711E+00, & - &-0.45655E+00,-0.45598E+00,-0.45541E+00,-0.45484E+00,-0.45428E+00/ - - DATA (BNC13M(I),I=201,300)/ & - &-0.45371E+00,-0.45314E+00,-0.45257E+00,-0.45200E+00,-0.45144E+00, & - &-0.45087E+00,-0.45030E+00,-0.44973E+00,-0.44917E+00,-0.44860E+00, & - &-0.44803E+00,-0.44746E+00,-0.44690E+00,-0.44633E+00,-0.44576E+00, & - &-0.44520E+00,-0.44463E+00,-0.44406E+00,-0.44350E+00,-0.44293E+00, & - &-0.44237E+00,-0.44180E+00,-0.44124E+00,-0.44067E+00,-0.44011E+00, & - &-0.43954E+00,-0.43898E+00,-0.43842E+00,-0.43785E+00,-0.43729E+00, & - &-0.43673E+00,-0.43617E+00,-0.43560E+00,-0.43504E+00,-0.43448E+00, & - &-0.43392E+00,-0.43336E+00,-0.43280E+00,-0.43224E+00,-0.43168E+00, & - &-0.43112E+00,-0.43056E+00,-0.43000E+00,-0.42945E+00,-0.42889E+00, & - &-0.42833E+00,-0.42778E+00,-0.42722E+00,-0.42666E+00,-0.42611E+00, & - &-0.42555E+00,-0.42500E+00,-0.42445E+00,-0.42389E+00,-0.42334E+00, & - &-0.42279E+00,-0.42223E+00,-0.42168E+00,-0.42113E+00,-0.42058E+00, & - &-0.42003E+00,-0.41948E+00,-0.41893E+00,-0.41838E+00,-0.41783E+00, & - &-0.41729E+00,-0.41674E+00,-0.41619E+00,-0.41564E+00,-0.41510E+00, & - &-0.41455E+00,-0.41401E+00,-0.41346E+00,-0.41292E+00,-0.41238E+00, & - &-0.41183E+00,-0.41129E+00,-0.41075E+00,-0.41021E+00,-0.40967E+00, & - &-0.40913E+00,-0.40859E+00,-0.40805E+00,-0.40751E+00,-0.40697E+00, & - &-0.40643E+00,-0.40589E+00,-0.40536E+00,-0.40482E+00,-0.40429E+00, & - &-0.40375E+00,-0.40322E+00,-0.40268E+00,-0.40215E+00,-0.40161E+00, & - &-0.40108E+00,-0.40055E+00,-0.40002E+00,-0.39949E+00,-0.39896E+00/ - - DATA (BNC13M(I),I=301,400)/ & - &-0.39843E+00,-0.39790E+00,-0.39737E+00,-0.39684E+00,-0.39631E+00, & - &-0.39579E+00,-0.39526E+00,-0.39473E+00,-0.39421E+00,-0.39368E+00, & - &-0.39316E+00,-0.39263E+00,-0.39211E+00,-0.39159E+00,-0.39106E+00, & - &-0.39054E+00,-0.39002E+00,-0.38950E+00,-0.38898E+00,-0.38846E+00, & - &-0.38794E+00,-0.38742E+00,-0.38691E+00,-0.38639E+00,-0.38587E+00, & - &-0.38535E+00,-0.38484E+00,-0.38432E+00,-0.38381E+00,-0.38329E+00, & - &-0.38278E+00,-0.38227E+00,-0.38175E+00,-0.38124E+00,-0.38073E+00, & - &-0.38022E+00,-0.37971E+00,-0.37920E+00,-0.37869E+00,-0.37818E+00, & - &-0.37767E+00,-0.37717E+00,-0.37666E+00,-0.37615E+00,-0.37565E+00, & - &-0.37514E+00,-0.37464E+00,-0.37413E+00,-0.37363E+00,-0.37312E+00, & - &-0.37262E+00,-0.37212E+00,-0.37162E+00,-0.37112E+00,-0.37061E+00, & - &-0.37011E+00,-0.36961E+00,-0.36912E+00,-0.36862E+00,-0.36812E+00, & - &-0.36762E+00,-0.36712E+00,-0.36663E+00,-0.36613E+00,-0.36564E+00, & - &-0.36514E+00,-0.36465E+00,-0.36415E+00,-0.36366E+00,-0.36317E+00, & - &-0.36268E+00,-0.36218E+00,-0.36169E+00,-0.36120E+00,-0.36071E+00, & - &-0.36022E+00,-0.35973E+00,-0.35925E+00,-0.35876E+00,-0.35827E+00, & - &-0.35778E+00,-0.35730E+00,-0.35681E+00,-0.35633E+00,-0.35584E+00, & - &-0.35536E+00,-0.35487E+00,-0.35439E+00,-0.35391E+00,-0.35343E+00, & - &-0.35294E+00,-0.35246E+00,-0.35198E+00,-0.35150E+00,-0.35102E+00, & - &-0.35054E+00,-0.35006E+00,-0.34959E+00,-0.34911E+00,-0.34863E+00/ - - DATA (BNC13M(I),I=401,500)/ & - &-0.34816E+00,-0.34768E+00,-0.34720E+00,-0.34673E+00,-0.34625E+00, & - &-0.34578E+00,-0.34531E+00,-0.34483E+00,-0.34436E+00,-0.34389E+00, & - &-0.34342E+00,-0.34295E+00,-0.34248E+00,-0.34201E+00,-0.34154E+00, & - &-0.34107E+00,-0.34060E+00,-0.34013E+00,-0.33967E+00,-0.33920E+00, & - &-0.33873E+00,-0.33827E+00,-0.33780E+00,-0.33734E+00,-0.33687E+00, & - &-0.33641E+00,-0.33594E+00,-0.33548E+00,-0.33502E+00,-0.33456E+00, & - &-0.33410E+00,-0.33363E+00,-0.33317E+00,-0.33271E+00,-0.33225E+00, & - &-0.33180E+00,-0.33134E+00,-0.33088E+00,-0.33042E+00,-0.32996E+00, & - &-0.32951E+00,-0.32905E+00,-0.32860E+00,-0.32814E+00,-0.32769E+00, & - &-0.32723E+00,-0.32678E+00,-0.32633E+00,-0.32587E+00,-0.32542E+00, & - &-0.32497E+00,-0.32452E+00,-0.32407E+00,-0.32362E+00,-0.32317E+00, & - &-0.32272E+00,-0.32227E+00,-0.32182E+00,-0.32137E+00,-0.32092E+00, & - &-0.32048E+00,-0.32003E+00,-0.31958E+00,-0.31914E+00,-0.31869E+00, & - &-0.31825E+00,-0.31781E+00,-0.31736E+00,-0.31692E+00,-0.31648E+00, & - &-0.31603E+00,-0.31559E+00,-0.31515E+00,-0.31471E+00,-0.31427E+00, & - &-0.31383E+00,-0.31339E+00,-0.31295E+00,-0.31251E+00,-0.31207E+00, & - &-0.31163E+00,-0.31120E+00,-0.31076E+00,-0.31032E+00,-0.30989E+00, & - &-0.30945E+00,-0.30902E+00,-0.30858E+00,-0.30815E+00,-0.30771E+00, & - &-0.30728E+00,-0.30685E+00,-0.30642E+00,-0.30598E+00,-0.30555E+00, & - &-0.30512E+00,-0.30469E+00,-0.30426E+00,-0.30383E+00,-0.30340E+00/ - - DATA (BNC13M(I),I=501,600)/ & - &-0.30297E+00,-0.30254E+00,-0.30212E+00,-0.30169E+00,-0.30126E+00, & - &-0.30084E+00,-0.30041E+00,-0.29998E+00,-0.29956E+00,-0.29913E+00, & - &-0.29871E+00,-0.29828E+00,-0.29786E+00,-0.29744E+00,-0.29701E+00, & - &-0.29659E+00,-0.29617E+00,-0.29575E+00,-0.29533E+00,-0.29491E+00, & - &-0.29449E+00,-0.29407E+00,-0.29365E+00,-0.29323E+00,-0.29281E+00, & - &-0.29239E+00,-0.29197E+00,-0.29156E+00,-0.29114E+00,-0.29072E+00, & - &-0.29031E+00,-0.28989E+00,-0.28948E+00,-0.28906E+00,-0.28865E+00, & - &-0.28823E+00,-0.28782E+00,-0.28741E+00,-0.28700E+00,-0.28658E+00, & - &-0.28617E+00,-0.28576E+00,-0.28535E+00,-0.28494E+00,-0.28453E+00, & - &-0.28412E+00,-0.28371E+00,-0.28330E+00,-0.28289E+00,-0.28248E+00, & - &-0.28208E+00,-0.28167E+00,-0.28126E+00,-0.28085E+00,-0.28045E+00, & - &-0.28004E+00,-0.27964E+00,-0.27923E+00,-0.27883E+00,-0.27842E+00, & - &-0.27802E+00,-0.27762E+00,-0.27721E+00,-0.27681E+00,-0.27641E+00, & - &-0.27601E+00,-0.27561E+00,-0.27520E+00,-0.27480E+00,-0.27440E+00, & - &-0.27400E+00,-0.27360E+00,-0.27320E+00,-0.27281E+00,-0.27241E+00, & - &-0.27201E+00,-0.27161E+00,-0.27122E+00,-0.27082E+00,-0.27042E+00, & - &-0.27003E+00,-0.26963E+00,-0.26924E+00,-0.26884E+00,-0.26845E+00, & - &-0.26805E+00,-0.26766E+00,-0.26727E+00,-0.26687E+00,-0.26648E+00, & - &-0.26609E+00,-0.26570E+00,-0.26530E+00,-0.26491E+00,-0.26452E+00, & - &-0.26413E+00,-0.26374E+00,-0.26335E+00,-0.26296E+00,-0.26257E+00/ - - DATA (BNC13M(I),I=601,700)/ & - &-0.25840E+00,-0.25457E+00,-0.25078E+00,-0.24702E+00,-0.24330E+00, & - &-0.23961E+00,-0.23595E+00,-0.23233E+00,-0.22874E+00,-0.22518E+00, & - &-0.22165E+00,-0.21815E+00,-0.21469E+00,-0.21125E+00,-0.20784E+00, & - &-0.20447E+00,-0.20112E+00,-0.19779E+00,-0.19450E+00,-0.19123E+00, & - &-0.18799E+00,-0.18477E+00,-0.18158E+00,-0.17842E+00,-0.17528E+00, & - &-0.17217E+00,-0.16907E+00,-0.16601E+00,-0.16297E+00,-0.15995E+00, & - &-0.15695E+00,-0.15397E+00,-0.15102E+00,-0.14809E+00,-0.14518E+00, & - &-0.14229E+00,-0.13943E+00,-0.13658E+00,-0.13375E+00,-0.13095E+00, & - &-0.12816E+00,-0.12539E+00,-0.12265E+00,-0.11992E+00,-0.11721E+00, & - &-0.11452E+00,-0.11184E+00,-0.10919E+00,-0.10655E+00,-0.10393E+00, & - &-0.10133E+00,-0.98739E-01,-0.96170E-01,-0.93617E-01,-0.91081E-01, & - &-0.88561E-01,-0.86056E-01,-0.83568E-01,-0.81095E-01,-0.78637E-01, & - &-0.76195E-01,-0.73767E-01,-0.71355E-01,-0.68957E-01,-0.66573E-01, & - &-0.64204E-01,-0.61849E-01,-0.59507E-01,-0.57180E-01,-0.54866E-01, & - &-0.52566E-01,-0.50278E-01,-0.48004E-01,-0.45744E-01,-0.43495E-01, & - &-0.41260E-01,-0.39037E-01,-0.36827E-01,-0.34628E-01,-0.32442E-01, & - &-0.30268E-01,-0.28106E-01,-0.25955E-01,-0.23817E-01,-0.21689E-01, & - &-0.19573E-01,-0.17469E-01,-0.15375E-01,-0.13292E-01,-0.11221E-01, & - &-0.91596E-02,-0.71093E-02,-0.50696E-02,-0.30403E-02,-0.10211E-02, & - & 0.98760E-03, 0.29861E-02, 0.49747E-02, 0.69537E-02, 0.89224E-02/ - - DATA (BNC13M(I),I=701,741)/ & - & 0.10882E-01, 0.12831E-01, 0.14771E-01, 0.16702E-01, 0.18623E-01, & - & 0.20535E-01, 0.22438E-01, 0.24331E-01, 0.26216E-01, 0.28092E-01, & - & 0.29959E-01, 0.31817E-01, 0.33667E-01, 0.35508E-01, 0.37341E-01, & - & 0.39165E-01, 0.40981E-01, 0.42788E-01, 0.44588E-01, 0.46379E-01, & - & 0.48162E-01, 0.49937E-01, 0.51705E-01, 0.53465E-01, 0.55216E-01, & - & 0.56960E-01, 0.58697E-01, 0.60426E-01, 0.62147E-01, 0.63862E-01, & - & 0.65569E-01, 0.67268E-01, 0.68960E-01, 0.70645E-01, 0.72323E-01, & - & 0.73994E-01, 0.75658E-01, 0.77315E-01, 0.78966E-01, 0.80609E-01, & - & 0.82246E-01 & - & / - ENDBLOCKDATA KMCF298 diff --git a/src/arome/chem/internals/data_kmcf323a.F b/src/arome/chem/internals/data_kmcf323a.F deleted file mode 100644 index 73f5499ce7de9151980d2109ed814a5502961932..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/data_kmcf323a.F +++ /dev/null @@ -1,2218 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/data_kmcf323a.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:31 $ -!----------------------------------------------------------------- - -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA KMCF323A -! *** CONTAINS THE DATA FOR KUSSIK-MEISNER BINARY COEFFICIENT ARRAYS -! NEEDED IN SUBROUTINE KM -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA KMCF323 -! - IMPLICIT NONE -! -! *** Common block definition -! - INTEGER :: I - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M -! - COMMON /KMC323/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! -! *** NaCl -! - DATA (BNC01M(I),I=1,100)/ & - &-0.44252E-01,-0.92492E-01,-0.11448E+00,-0.12890E+00,-0.13941E+00, & - &-0.14750E+00,-0.15391E+00,-0.15911E+00,-0.16337E+00,-0.16690E+00, & - &-0.16982E+00,-0.17224E+00,-0.17425E+00,-0.17590E+00,-0.17724E+00, & - &-0.17831E+00,-0.17916E+00,-0.17979E+00,-0.18025E+00,-0.18054E+00, & - &-0.18068E+00,-0.18069E+00,-0.18058E+00,-0.18037E+00,-0.18006E+00, & - &-0.17965E+00,-0.17917E+00,-0.17861E+00,-0.17799E+00,-0.17730E+00, & - &-0.17656E+00,-0.17576E+00,-0.17492E+00,-0.17403E+00,-0.17310E+00, & - &-0.17213E+00,-0.17113E+00,-0.17010E+00,-0.16904E+00,-0.16795E+00, & - &-0.16684E+00,-0.16571E+00,-0.16455E+00,-0.16338E+00,-0.16219E+00, & - &-0.16098E+00,-0.15976E+00,-0.15852E+00,-0.15727E+00,-0.15601E+00, & - &-0.15473E+00,-0.15345E+00,-0.15216E+00,-0.15085E+00,-0.14954E+00, & - &-0.14822E+00,-0.14689E+00,-0.14556E+00,-0.14421E+00,-0.14286E+00, & - &-0.14150E+00,-0.14014E+00,-0.13876E+00,-0.13738E+00,-0.13599E+00, & - &-0.13459E+00,-0.13319E+00,-0.13177E+00,-0.13035E+00,-0.12892E+00, & - &-0.12748E+00,-0.12603E+00,-0.12457E+00,-0.12310E+00,-0.12162E+00, & - &-0.12013E+00,-0.11863E+00,-0.11712E+00,-0.11560E+00,-0.11407E+00, & - &-0.11253E+00,-0.11097E+00,-0.10940E+00,-0.10782E+00,-0.10623E+00, & - &-0.10463E+00,-0.10301E+00,-0.10138E+00,-0.99742E-01,-0.98090E-01, & - &-0.96425E-01,-0.94749E-01,-0.93061E-01,-0.91361E-01,-0.89649E-01, & - &-0.87927E-01,-0.86193E-01,-0.84448E-01,-0.82693E-01,-0.80928E-01/ - - DATA (BNC01M(I),I=101,200)/ & - &-0.79153E-01,-0.77368E-01,-0.75574E-01,-0.73772E-01,-0.71960E-01, & - &-0.70141E-01,-0.68314E-01,-0.66479E-01,-0.64638E-01,-0.62790E-01, & - &-0.60935E-01,-0.59075E-01,-0.57209E-01,-0.55338E-01,-0.53462E-01, & - &-0.51582E-01,-0.49697E-01,-0.47809E-01,-0.45917E-01,-0.44022E-01, & - &-0.42125E-01,-0.40224E-01,-0.38321E-01,-0.36416E-01,-0.34510E-01, & - &-0.32601E-01,-0.30691E-01,-0.28780E-01,-0.26868E-01,-0.24955E-01, & - &-0.23041E-01,-0.21127E-01,-0.19212E-01,-0.17298E-01,-0.15383E-01, & - &-0.13468E-01,-0.11553E-01,-0.96383E-02,-0.77240E-02,-0.58102E-02, & - &-0.38968E-02,-0.19841E-02,-0.72052E-04, 0.18393E-02, 0.37498E-02, & - & 0.56595E-02, 0.75683E-02, 0.94761E-02, 0.11383E-01, 0.13289E-01, & - & 0.15193E-01, 0.17097E-01, 0.18999E-01, 0.20900E-01, 0.22800E-01, & - & 0.24698E-01, 0.26595E-01, 0.28491E-01, 0.30386E-01, 0.32279E-01, & - & 0.34170E-01, 0.36060E-01, 0.37949E-01, 0.39836E-01, 0.41721E-01, & - & 0.43605E-01, 0.45488E-01, 0.47369E-01, 0.49248E-01, 0.51125E-01, & - & 0.53001E-01, 0.54875E-01, 0.56748E-01, 0.58618E-01, 0.60487E-01, & - & 0.62355E-01, 0.64220E-01, 0.66084E-01, 0.67946E-01, 0.69806E-01, & - & 0.71664E-01, 0.73521E-01, 0.75376E-01, 0.77228E-01, 0.79079E-01, & - & 0.80928E-01, 0.82775E-01, 0.84621E-01, 0.86464E-01, 0.88305E-01, & - & 0.90145E-01, 0.91982E-01, 0.93818E-01, 0.95651E-01, 0.97483E-01, & - & 0.99313E-01, 0.10114E+00, 0.10297E+00, 0.10479E+00, 0.10661E+00/ - - DATA (BNC01M(I),I=201,300)/ & - & 0.10843E+00, 0.11025E+00, 0.11206E+00, 0.11388E+00, 0.11569E+00, & - & 0.11750E+00, 0.11931E+00, 0.12111E+00, 0.12291E+00, 0.12472E+00, & - & 0.12651E+00, 0.12831E+00, 0.13011E+00, 0.13190E+00, 0.13369E+00, & - & 0.13548E+00, 0.13726E+00, 0.13905E+00, 0.14083E+00, 0.14261E+00, & - & 0.14439E+00, 0.14617E+00, 0.14794E+00, 0.14971E+00, 0.15148E+00, & - & 0.15325E+00, 0.15501E+00, 0.15678E+00, 0.15854E+00, 0.16030E+00, & - & 0.16205E+00, 0.16381E+00, 0.16556E+00, 0.16731E+00, 0.16906E+00, & - & 0.17080E+00, 0.17255E+00, 0.17429E+00, 0.17603E+00, 0.17777E+00, & - & 0.17950E+00, 0.18124E+00, 0.18297E+00, 0.18470E+00, 0.18642E+00, & - & 0.18815E+00, 0.18987E+00, 0.19159E+00, 0.19331E+00, 0.19502E+00, & - & 0.19674E+00, 0.19845E+00, 0.20016E+00, 0.20187E+00, 0.20357E+00, & - & 0.20527E+00, 0.20697E+00, 0.20867E+00, 0.21037E+00, 0.21206E+00, & - & 0.21376E+00, 0.21545E+00, 0.21714E+00, 0.21882E+00, 0.22050E+00, & - & 0.22219E+00, 0.22387E+00, 0.22554E+00, 0.22722E+00, 0.22889E+00, & - & 0.23056E+00, 0.23223E+00, 0.23390E+00, 0.23556E+00, 0.23723E+00, & - & 0.23889E+00, 0.24054E+00, 0.24220E+00, 0.24386E+00, 0.24551E+00, & - & 0.24716E+00, 0.24880E+00, 0.25045E+00, 0.25209E+00, 0.25374E+00, & - & 0.25538E+00, 0.25701E+00, 0.25865E+00, 0.26028E+00, 0.26191E+00, & - & 0.26354E+00, 0.26517E+00, 0.26679E+00, 0.26842E+00, 0.27004E+00, & - & 0.27166E+00, 0.27327E+00, 0.27489E+00, 0.27650E+00, 0.27811E+00/ - - DATA (BNC01M(I),I=301,400)/ & - & 0.27972E+00, 0.28132E+00, 0.28293E+00, 0.28453E+00, 0.28613E+00, & - & 0.28773E+00, 0.28933E+00, 0.29092E+00, 0.29251E+00, 0.29410E+00, & - & 0.29569E+00, 0.29728E+00, 0.29886E+00, 0.30044E+00, 0.30202E+00, & - & 0.30360E+00, 0.30518E+00, 0.30675E+00, 0.30832E+00, 0.30989E+00, & - & 0.31146E+00, 0.31303E+00, 0.31459E+00, 0.31615E+00, 0.31771E+00, & - & 0.31927E+00, 0.32083E+00, 0.32238E+00, 0.32393E+00, 0.32549E+00, & - & 0.32703E+00, 0.32858E+00, 0.33012E+00, 0.33167E+00, 0.33321E+00, & - & 0.33475E+00, 0.33628E+00, 0.33782E+00, 0.33935E+00, 0.34088E+00, & - & 0.34241E+00, 0.34394E+00, 0.34546E+00, 0.34699E+00, 0.34851E+00, & - & 0.35003E+00, 0.35155E+00, 0.35306E+00, 0.35458E+00, 0.35609E+00, & - & 0.35760E+00, 0.35911E+00, 0.36061E+00, 0.36212E+00, 0.36362E+00, & - & 0.36512E+00, 0.36662E+00, 0.36812E+00, 0.36961E+00, 0.37111E+00, & - & 0.37260E+00, 0.37409E+00, 0.37558E+00, 0.37706E+00, 0.37855E+00, & - & 0.38003E+00, 0.38151E+00, 0.38299E+00, 0.38447E+00, 0.38594E+00, & - & 0.38741E+00, 0.38889E+00, 0.39036E+00, 0.39182E+00, 0.39329E+00, & - & 0.39476E+00, 0.39622E+00, 0.39768E+00, 0.39914E+00, 0.40060E+00, & - & 0.40205E+00, 0.40350E+00, 0.40496E+00, 0.40641E+00, 0.40786E+00, & - & 0.40930E+00, 0.41075E+00, 0.41219E+00, 0.41363E+00, 0.41507E+00, & - & 0.41651E+00, 0.41795E+00, 0.41938E+00, 0.42081E+00, 0.42225E+00, & - & 0.42367E+00, 0.42510E+00, 0.42653E+00, 0.42795E+00, 0.42938E+00/ - - DATA (BNC01M(I),I=401,500)/ & - & 0.43080E+00, 0.43222E+00, 0.43363E+00, 0.43505E+00, 0.43646E+00, & - & 0.43788E+00, 0.43929E+00, 0.44070E+00, 0.44210E+00, 0.44351E+00, & - & 0.44491E+00, 0.44632E+00, 0.44772E+00, 0.44912E+00, 0.45051E+00, & - & 0.45191E+00, 0.45331E+00, 0.45470E+00, 0.45609E+00, 0.45748E+00, & - & 0.45887E+00, 0.46025E+00, 0.46164E+00, 0.46302E+00, 0.46440E+00, & - & 0.46578E+00, 0.46716E+00, 0.46854E+00, 0.46991E+00, 0.47128E+00, & - & 0.47266E+00, 0.47403E+00, 0.47539E+00, 0.47676E+00, 0.47813E+00, & - & 0.47949E+00, 0.48085E+00, 0.48221E+00, 0.48357E+00, 0.48493E+00, & - & 0.48629E+00, 0.48764E+00, 0.48899E+00, 0.49035E+00, 0.49170E+00, & - & 0.49304E+00, 0.49439E+00, 0.49574E+00, 0.49708E+00, 0.49842E+00, & - & 0.49976E+00, 0.50110E+00, 0.50244E+00, 0.50378E+00, 0.50511E+00, & - & 0.50644E+00, 0.50778E+00, 0.50911E+00, 0.51043E+00, 0.51176E+00, & - & 0.51309E+00, 0.51441E+00, 0.51573E+00, 0.51706E+00, 0.51838E+00, & - & 0.51969E+00, 0.52101E+00, 0.52233E+00, 0.52364E+00, 0.52495E+00, & - & 0.52626E+00, 0.52757E+00, 0.52888E+00, 0.53019E+00, 0.53149E+00, & - & 0.53280E+00, 0.53410E+00, 0.53540E+00, 0.53670E+00, 0.53800E+00, & - & 0.53929E+00, 0.54059E+00, 0.54188E+00, 0.54317E+00, 0.54446E+00, & - & 0.54575E+00, 0.54704E+00, 0.54833E+00, 0.54961E+00, 0.55090E+00, & - & 0.55218E+00, 0.55346E+00, 0.55474E+00, 0.55602E+00, 0.55730E+00, & - & 0.55857E+00, 0.55985E+00, 0.56112E+00, 0.56239E+00, 0.56366E+00/ - - DATA (BNC01M(I),I=501,600)/ & - & 0.56493E+00, 0.56620E+00, 0.56746E+00, 0.56873E+00, 0.56999E+00, & - & 0.57125E+00, 0.57251E+00, 0.57377E+00, 0.57503E+00, 0.57629E+00, & - & 0.57754E+00, 0.57879E+00, 0.58005E+00, 0.58130E+00, 0.58255E+00, & - & 0.58380E+00, 0.58504E+00, 0.58629E+00, 0.58753E+00, 0.58878E+00, & - & 0.59002E+00, 0.59126E+00, 0.59250E+00, 0.59374E+00, 0.59497E+00, & - & 0.59621E+00, 0.59744E+00, 0.59868E+00, 0.59991E+00, 0.60114E+00, & - & 0.60237E+00, 0.60359E+00, 0.60482E+00, 0.60605E+00, 0.60727E+00, & - & 0.60849E+00, 0.60971E+00, 0.61093E+00, 0.61215E+00, 0.61337E+00, & - & 0.61459E+00, 0.61580E+00, 0.61702E+00, 0.61823E+00, 0.61944E+00, & - & 0.62065E+00, 0.62186E+00, 0.62307E+00, 0.62427E+00, 0.62548E+00, & - & 0.62668E+00, 0.62788E+00, 0.62909E+00, 0.63029E+00, 0.63149E+00, & - & 0.63268E+00, 0.63388E+00, 0.63508E+00, 0.63627E+00, 0.63746E+00, & - & 0.63865E+00, 0.63985E+00, 0.64103E+00, 0.64222E+00, 0.64341E+00, & - & 0.64460E+00, 0.64578E+00, 0.64696E+00, 0.64815E+00, 0.64933E+00, & - & 0.65051E+00, 0.65169E+00, 0.65286E+00, 0.65404E+00, 0.65521E+00, & - & 0.65639E+00, 0.65756E+00, 0.65873E+00, 0.65990E+00, 0.66107E+00, & - & 0.66224E+00, 0.66341E+00, 0.66457E+00, 0.66574E+00, 0.66690E+00, & - & 0.66807E+00, 0.66923E+00, 0.67039E+00, 0.67155E+00, 0.67270E+00, & - & 0.67386E+00, 0.67502E+00, 0.67617E+00, 0.67733E+00, 0.67848E+00, & - & 0.67963E+00, 0.68078E+00, 0.68193E+00, 0.68308E+00, 0.68422E+00/ - - DATA (BNC01M(I),I=601,700)/ & - & 0.69654E+00, 0.70783E+00, 0.71902E+00, 0.73010E+00, 0.74108E+00, & - & 0.75196E+00, 0.76274E+00, 0.77342E+00, 0.78402E+00, 0.79451E+00, & - & 0.80492E+00, 0.81524E+00, 0.82547E+00, 0.83562E+00, 0.84568E+00, & - & 0.85566E+00, 0.86556E+00, 0.87538E+00, 0.88512E+00, 0.89479E+00, & - & 0.90437E+00, 0.91389E+00, 0.92333E+00, 0.93270E+00, 0.94200E+00, & - & 0.95123E+00, 0.96040E+00, 0.96949E+00, 0.97852E+00, 0.98749E+00, & - & 0.99639E+00, 0.10052E+01, 0.10140E+01, 0.10227E+01, 0.10314E+01, & - & 0.10400E+01, 0.10485E+01, 0.10570E+01, 0.10654E+01, 0.10738E+01, & - & 0.10821E+01, 0.10904E+01, 0.10986E+01, 0.11068E+01, 0.11149E+01, & - & 0.11230E+01, 0.11310E+01, 0.11389E+01, 0.11469E+01, 0.11547E+01, & - & 0.11625E+01, 0.11703E+01, 0.11780E+01, 0.11857E+01, 0.11934E+01, & - & 0.12010E+01, 0.12085E+01, 0.12160E+01, 0.12235E+01, 0.12309E+01, & - & 0.12383E+01, 0.12457E+01, 0.12530E+01, 0.12602E+01, 0.12675E+01, & - & 0.12747E+01, 0.12818E+01, 0.12889E+01, 0.12960E+01, 0.13031E+01, & - & 0.13101E+01, 0.13170E+01, 0.13240E+01, 0.13309E+01, 0.13378E+01, & - & 0.13446E+01, 0.13514E+01, 0.13582E+01, 0.13649E+01, 0.13716E+01, & - & 0.13783E+01, 0.13849E+01, 0.13915E+01, 0.13981E+01, 0.14047E+01, & - & 0.14112E+01, 0.14177E+01, 0.14241E+01, 0.14306E+01, 0.14370E+01, & - & 0.14434E+01, 0.14497E+01, 0.14560E+01, 0.14623E+01, 0.14686E+01, & - & 0.14748E+01, 0.14810E+01, 0.14872E+01, 0.14934E+01, 0.14995E+01/ - - DATA (BNC01M(I),I=701,741)/ & - & 0.15056E+01, 0.15117E+01, 0.15178E+01, 0.15238E+01, 0.15298E+01, & - & 0.15358E+01, 0.15418E+01, 0.15477E+01, 0.15536E+01, 0.15595E+01, & - & 0.15654E+01, 0.15713E+01, 0.15771E+01, 0.15829E+01, 0.15887E+01, & - & 0.15944E+01, 0.16002E+01, 0.16059E+01, 0.16116E+01, 0.16173E+01, & - & 0.16229E+01, 0.16286E+01, 0.16342E+01, 0.16398E+01, 0.16453E+01, & - & 0.16509E+01, 0.16564E+01, 0.16620E+01, 0.16675E+01, 0.16729E+01, & - & 0.16784E+01, 0.16838E+01, 0.16893E+01, 0.16947E+01, 0.17000E+01, & - & 0.17054E+01, 0.17108E+01, 0.17161E+01, 0.17214E+01, 0.17267E+01, & - & 0.17320E+01 & - & / -! -! *** Na2SO4 -! - DATA (BNC02M(I),I=1,100)/ & - &-0.90612E-01,-0.19630E+00,-0.24862E+00,-0.28534E+00,-0.31396E+00, & - &-0.33750E+00,-0.35753E+00,-0.37498E+00,-0.39044E+00,-0.40431E+00, & - &-0.41689E+00,-0.42839E+00,-0.43899E+00,-0.44880E+00,-0.45794E+00, & - &-0.46648E+00,-0.47450E+00,-0.48206E+00,-0.48920E+00,-0.49596E+00, & - &-0.50238E+00,-0.50850E+00,-0.51433E+00,-0.51990E+00,-0.52523E+00, & - &-0.53034E+00,-0.53524E+00,-0.53996E+00,-0.54449E+00,-0.54886E+00, & - &-0.55307E+00,-0.55714E+00,-0.56107E+00,-0.56487E+00,-0.56855E+00, & - &-0.57212E+00,-0.57557E+00,-0.57892E+00,-0.58217E+00,-0.58533E+00, & - &-0.58840E+00,-0.59139E+00,-0.59429E+00,-0.59711E+00,-0.59986E+00, & - &-0.60254E+00,-0.60516E+00,-0.60770E+00,-0.61019E+00,-0.61261E+00, & - &-0.61498E+00,-0.61729E+00,-0.61954E+00,-0.62175E+00,-0.62391E+00, & - &-0.62602E+00,-0.62808E+00,-0.63010E+00,-0.63207E+00,-0.63401E+00, & - &-0.63590E+00,-0.63776E+00,-0.63958E+00,-0.64136E+00,-0.64311E+00, & - &-0.64483E+00,-0.64651E+00,-0.64816E+00,-0.64979E+00,-0.65138E+00, & - &-0.65294E+00,-0.65448E+00,-0.65599E+00,-0.65748E+00,-0.65894E+00, & - &-0.66037E+00,-0.66179E+00,-0.66318E+00,-0.66454E+00,-0.66589E+00, & - &-0.66722E+00,-0.66852E+00,-0.66981E+00,-0.67108E+00,-0.67233E+00, & - &-0.67356E+00,-0.67478E+00,-0.67598E+00,-0.67716E+00,-0.67832E+00, & - &-0.67947E+00,-0.68061E+00,-0.68173E+00,-0.68283E+00,-0.68392E+00, & - &-0.68500E+00,-0.68606E+00,-0.68711E+00,-0.68815E+00,-0.68918E+00/ - - DATA (BNC02M(I),I=101,200)/ & - &-0.69019E+00,-0.69119E+00,-0.69218E+00,-0.69315E+00,-0.69412E+00, & - &-0.69507E+00,-0.69601E+00,-0.69694E+00,-0.69786E+00,-0.69877E+00, & - &-0.69967E+00,-0.70056E+00,-0.70144E+00,-0.70230E+00,-0.70316E+00, & - &-0.70401E+00,-0.70485E+00,-0.70568E+00,-0.70650E+00,-0.70731E+00, & - &-0.70811E+00,-0.70890E+00,-0.70968E+00,-0.71046E+00,-0.71122E+00, & - &-0.71198E+00,-0.71273E+00,-0.71347E+00,-0.71420E+00,-0.71493E+00, & - &-0.71564E+00,-0.71635E+00,-0.71705E+00,-0.71775E+00,-0.71843E+00, & - &-0.71911E+00,-0.71978E+00,-0.72044E+00,-0.72110E+00,-0.72175E+00, & - &-0.72239E+00,-0.72302E+00,-0.72365E+00,-0.72427E+00,-0.72489E+00, & - &-0.72550E+00,-0.72610E+00,-0.72670E+00,-0.72729E+00,-0.72787E+00, & - &-0.72845E+00,-0.72902E+00,-0.72958E+00,-0.73014E+00,-0.73069E+00, & - &-0.73124E+00,-0.73178E+00,-0.73232E+00,-0.73285E+00,-0.73338E+00, & - &-0.73390E+00,-0.73441E+00,-0.73492E+00,-0.73542E+00,-0.73592E+00, & - &-0.73642E+00,-0.73691E+00,-0.73739E+00,-0.73787E+00,-0.73835E+00, & - &-0.73881E+00,-0.73928E+00,-0.73974E+00,-0.74020E+00,-0.74065E+00, & - &-0.74109E+00,-0.74154E+00,-0.74197E+00,-0.74241E+00,-0.74284E+00, & - &-0.74326E+00,-0.74368E+00,-0.74410E+00,-0.74451E+00,-0.74492E+00, & - &-0.74532E+00,-0.74572E+00,-0.74612E+00,-0.74651E+00,-0.74690E+00, & - &-0.74729E+00,-0.74767E+00,-0.74805E+00,-0.74842E+00,-0.74879E+00, & - &-0.74916E+00,-0.74952E+00,-0.74988E+00,-0.75023E+00,-0.75059E+00/ - - DATA (BNC02M(I),I=201,300)/ & - &-0.75094E+00,-0.75128E+00,-0.75162E+00,-0.75196E+00,-0.75230E+00, & - &-0.75263E+00,-0.75296E+00,-0.75328E+00,-0.75361E+00,-0.75393E+00, & - &-0.75424E+00,-0.75456E+00,-0.75487E+00,-0.75517E+00,-0.75548E+00, & - &-0.75578E+00,-0.75608E+00,-0.75637E+00,-0.75666E+00,-0.75695E+00, & - &-0.75724E+00,-0.75752E+00,-0.75781E+00,-0.75808E+00,-0.75836E+00, & - &-0.75863E+00,-0.75890E+00,-0.75917E+00,-0.75943E+00,-0.75970E+00, & - &-0.75996E+00,-0.76021E+00,-0.76047E+00,-0.76072E+00,-0.76097E+00, & - &-0.76122E+00,-0.76146E+00,-0.76170E+00,-0.76194E+00,-0.76218E+00, & - &-0.76241E+00,-0.76265E+00,-0.76288E+00,-0.76310E+00,-0.76333E+00, & - &-0.76355E+00,-0.76377E+00,-0.76399E+00,-0.76421E+00,-0.76442E+00, & - &-0.76463E+00,-0.76484E+00,-0.76505E+00,-0.76526E+00,-0.76546E+00, & - &-0.76566E+00,-0.76586E+00,-0.76606E+00,-0.76625E+00,-0.76645E+00, & - &-0.76664E+00,-0.76683E+00,-0.76701E+00,-0.76720E+00,-0.76738E+00, & - &-0.76756E+00,-0.76774E+00,-0.76792E+00,-0.76809E+00,-0.76827E+00, & - &-0.76844E+00,-0.76861E+00,-0.76877E+00,-0.76894E+00,-0.76910E+00, & - &-0.76927E+00,-0.76943E+00,-0.76959E+00,-0.76974E+00,-0.76990E+00, & - &-0.77005E+00,-0.77020E+00,-0.77035E+00,-0.77050E+00,-0.77065E+00, & - &-0.77079E+00,-0.77094E+00,-0.77108E+00,-0.77122E+00,-0.77135E+00, & - &-0.77149E+00,-0.77163E+00,-0.77176E+00,-0.77189E+00,-0.77202E+00, & - &-0.77215E+00,-0.77228E+00,-0.77240E+00,-0.77253E+00,-0.77265E+00/ - - DATA (BNC02M(I),I=301,400)/ & - &-0.77277E+00,-0.77289E+00,-0.77301E+00,-0.77312E+00,-0.77324E+00, & - &-0.77335E+00,-0.77346E+00,-0.77357E+00,-0.77368E+00,-0.77379E+00, & - &-0.77389E+00,-0.77400E+00,-0.77410E+00,-0.77420E+00,-0.77430E+00, & - &-0.77440E+00,-0.77450E+00,-0.77460E+00,-0.77469E+00,-0.77479E+00, & - &-0.77488E+00,-0.77497E+00,-0.77506E+00,-0.77515E+00,-0.77524E+00, & - &-0.77532E+00,-0.77541E+00,-0.77549E+00,-0.77557E+00,-0.77565E+00, & - &-0.77573E+00,-0.77581E+00,-0.77589E+00,-0.77596E+00,-0.77604E+00, & - &-0.77611E+00,-0.77618E+00,-0.77625E+00,-0.77632E+00,-0.77639E+00, & - &-0.77646E+00,-0.77652E+00,-0.77659E+00,-0.77665E+00,-0.77671E+00, & - &-0.77678E+00,-0.77684E+00,-0.77689E+00,-0.77695E+00,-0.77701E+00, & - &-0.77707E+00,-0.77712E+00,-0.77717E+00,-0.77723E+00,-0.77728E+00, & - &-0.77733E+00,-0.77738E+00,-0.77743E+00,-0.77747E+00,-0.77752E+00, & - &-0.77756E+00,-0.77761E+00,-0.77765E+00,-0.77769E+00,-0.77773E+00, & - &-0.77777E+00,-0.77781E+00,-0.77785E+00,-0.77789E+00,-0.77792E+00, & - &-0.77796E+00,-0.77799E+00,-0.77802E+00,-0.77805E+00,-0.77809E+00, & - &-0.77812E+00,-0.77814E+00,-0.77817E+00,-0.77820E+00,-0.77823E+00, & - &-0.77825E+00,-0.77827E+00,-0.77830E+00,-0.77832E+00,-0.77834E+00, & - &-0.77836E+00,-0.77838E+00,-0.77840E+00,-0.77842E+00,-0.77843E+00, & - &-0.77845E+00,-0.77846E+00,-0.77848E+00,-0.77849E+00,-0.77850E+00, & - &-0.77852E+00,-0.77853E+00,-0.77854E+00,-0.77855E+00,-0.77855E+00/ - - DATA (BNC02M(I),I=401,500)/ & - &-0.77856E+00,-0.77857E+00,-0.77857E+00,-0.77858E+00,-0.77858E+00, & - &-0.77858E+00,-0.77859E+00,-0.77859E+00,-0.77859E+00,-0.77859E+00, & - &-0.77859E+00,-0.77859E+00,-0.77858E+00,-0.77858E+00,-0.77857E+00, & - &-0.77857E+00,-0.77856E+00,-0.77856E+00,-0.77855E+00,-0.77854E+00, & - &-0.77853E+00,-0.77852E+00,-0.77851E+00,-0.77850E+00,-0.77849E+00, & - &-0.77848E+00,-0.77846E+00,-0.77845E+00,-0.77843E+00,-0.77842E+00, & - &-0.77840E+00,-0.77838E+00,-0.77837E+00,-0.77835E+00,-0.77833E+00, & - &-0.77831E+00,-0.77829E+00,-0.77827E+00,-0.77824E+00,-0.77822E+00, & - &-0.77820E+00,-0.77817E+00,-0.77815E+00,-0.77812E+00,-0.77810E+00, & - &-0.77807E+00,-0.77804E+00,-0.77801E+00,-0.77798E+00,-0.77795E+00, & - &-0.77792E+00,-0.77789E+00,-0.77786E+00,-0.77783E+00,-0.77780E+00, & - &-0.77776E+00,-0.77773E+00,-0.77769E+00,-0.77766E+00,-0.77762E+00, & - &-0.77758E+00,-0.77755E+00,-0.77751E+00,-0.77747E+00,-0.77743E+00, & - &-0.77739E+00,-0.77735E+00,-0.77731E+00,-0.77727E+00,-0.77722E+00, & - &-0.77718E+00,-0.77714E+00,-0.77709E+00,-0.77705E+00,-0.77700E+00, & - &-0.77695E+00,-0.77691E+00,-0.77686E+00,-0.77681E+00,-0.77676E+00, & - &-0.77672E+00,-0.77667E+00,-0.77662E+00,-0.77656E+00,-0.77651E+00, & - &-0.77646E+00,-0.77641E+00,-0.77636E+00,-0.77630E+00,-0.77625E+00, & - &-0.77619E+00,-0.77614E+00,-0.77608E+00,-0.77602E+00,-0.77597E+00, & - &-0.77591E+00,-0.77585E+00,-0.77579E+00,-0.77573E+00,-0.77567E+00/ - - DATA (BNC02M(I),I=501,600)/ & - &-0.77561E+00,-0.77555E+00,-0.77549E+00,-0.77543E+00,-0.77537E+00, & - &-0.77530E+00,-0.77524E+00,-0.77518E+00,-0.77511E+00,-0.77505E+00, & - &-0.77498E+00,-0.77491E+00,-0.77485E+00,-0.77478E+00,-0.77471E+00, & - &-0.77465E+00,-0.77458E+00,-0.77451E+00,-0.77444E+00,-0.77437E+00, & - &-0.77430E+00,-0.77423E+00,-0.77415E+00,-0.77408E+00,-0.77401E+00, & - &-0.77394E+00,-0.77386E+00,-0.77379E+00,-0.77371E+00,-0.77364E+00, & - &-0.77356E+00,-0.77349E+00,-0.77341E+00,-0.77333E+00,-0.77326E+00, & - &-0.77318E+00,-0.77310E+00,-0.77302E+00,-0.77294E+00,-0.77286E+00, & - &-0.77278E+00,-0.77270E+00,-0.77262E+00,-0.77254E+00,-0.77246E+00, & - &-0.77238E+00,-0.77229E+00,-0.77221E+00,-0.77213E+00,-0.77204E+00, & - &-0.77196E+00,-0.77187E+00,-0.77179E+00,-0.77170E+00,-0.77161E+00, & - &-0.77153E+00,-0.77144E+00,-0.77135E+00,-0.77126E+00,-0.77118E+00, & - &-0.77109E+00,-0.77100E+00,-0.77091E+00,-0.77082E+00,-0.77073E+00, & - &-0.77064E+00,-0.77054E+00,-0.77045E+00,-0.77036E+00,-0.77027E+00, & - &-0.77017E+00,-0.77008E+00,-0.76999E+00,-0.76989E+00,-0.76980E+00, & - &-0.76970E+00,-0.76961E+00,-0.76951E+00,-0.76941E+00,-0.76932E+00, & - &-0.76922E+00,-0.76912E+00,-0.76903E+00,-0.76893E+00,-0.76883E+00, & - &-0.76873E+00,-0.76863E+00,-0.76853E+00,-0.76843E+00,-0.76833E+00, & - &-0.76823E+00,-0.76813E+00,-0.76802E+00,-0.76792E+00,-0.76782E+00, & - &-0.76772E+00,-0.76761E+00,-0.76751E+00,-0.76741E+00,-0.76730E+00/ - - DATA (BNC02M(I),I=601,700)/ & - &-0.76615E+00,-0.76505E+00,-0.76391E+00,-0.76274E+00,-0.76154E+00, & - &-0.76031E+00,-0.75905E+00,-0.75775E+00,-0.75643E+00,-0.75509E+00, & - &-0.75371E+00,-0.75231E+00,-0.75089E+00,-0.74944E+00,-0.74797E+00, & - &-0.74647E+00,-0.74496E+00,-0.74342E+00,-0.74186E+00,-0.74028E+00, & - &-0.73868E+00,-0.73706E+00,-0.73542E+00,-0.73376E+00,-0.73209E+00, & - &-0.73040E+00,-0.72869E+00,-0.72696E+00,-0.72522E+00,-0.72346E+00, & - &-0.72169E+00,-0.71990E+00,-0.71810E+00,-0.71628E+00,-0.71445E+00, & - &-0.71261E+00,-0.71075E+00,-0.70888E+00,-0.70699E+00,-0.70510E+00, & - &-0.70319E+00,-0.70127E+00,-0.69934E+00,-0.69739E+00,-0.69544E+00, & - &-0.69347E+00,-0.69150E+00,-0.68951E+00,-0.68751E+00,-0.68551E+00, & - &-0.68349E+00,-0.68146E+00,-0.67943E+00,-0.67738E+00,-0.67533E+00, & - &-0.67326E+00,-0.67119E+00,-0.66911E+00,-0.66702E+00,-0.66493E+00, & - &-0.66282E+00,-0.66071E+00,-0.65859E+00,-0.65646E+00,-0.65432E+00, & - &-0.65218E+00,-0.65003E+00,-0.64787E+00,-0.64571E+00,-0.64354E+00, & - &-0.64136E+00,-0.63917E+00,-0.63698E+00,-0.63478E+00,-0.63258E+00, & - &-0.63037E+00,-0.62815E+00,-0.62593E+00,-0.62370E+00,-0.62147E+00, & - &-0.61923E+00,-0.61699E+00,-0.61474E+00,-0.61248E+00,-0.61022E+00, & - &-0.60795E+00,-0.60568E+00,-0.60341E+00,-0.60113E+00,-0.59884E+00, & - &-0.59655E+00,-0.59425E+00,-0.59195E+00,-0.58965E+00,-0.58734E+00, & - &-0.58503E+00,-0.58271E+00,-0.58039E+00,-0.57806E+00,-0.57573E+00/ - - DATA (BNC02M(I),I=701,741)/ & - &-0.57339E+00,-0.57106E+00,-0.56871E+00,-0.56637E+00,-0.56402E+00, & - &-0.56166E+00,-0.55930E+00,-0.55694E+00,-0.55458E+00,-0.55221E+00, & - &-0.54984E+00,-0.54746E+00,-0.54508E+00,-0.54270E+00,-0.54031E+00, & - &-0.53792E+00,-0.53553E+00,-0.53313E+00,-0.53073E+00,-0.52833E+00, & - &-0.52593E+00,-0.52352E+00,-0.52111E+00,-0.51869E+00,-0.51628E+00, & - &-0.51386E+00,-0.51144E+00,-0.50901E+00,-0.50658E+00,-0.50415E+00, & - &-0.50172E+00,-0.49928E+00,-0.49684E+00,-0.49440E+00,-0.49196E+00, & - &-0.48951E+00,-0.48706E+00,-0.48461E+00,-0.48216E+00,-0.47970E+00, & - &-0.47725E+00 & - & / -! -! *** NaNO3 -! - DATA (BNC03M(I),I=1,100)/ & - &-0.45407E-01,-0.98699E-01,-0.12527E+00,-0.14402E+00,-0.15871E+00, & - &-0.17085E+00,-0.18123E+00,-0.19030E+00,-0.19838E+00,-0.20565E+00, & - &-0.21228E+00,-0.21836E+00,-0.22398E+00,-0.22921E+00,-0.23409E+00, & - &-0.23868E+00,-0.24300E+00,-0.24708E+00,-0.25095E+00,-0.25463E+00, & - &-0.25814E+00,-0.26149E+00,-0.26470E+00,-0.26777E+00,-0.27072E+00, & - &-0.27355E+00,-0.27628E+00,-0.27892E+00,-0.28146E+00,-0.28391E+00, & - &-0.28628E+00,-0.28858E+00,-0.29081E+00,-0.29297E+00,-0.29506E+00, & - &-0.29710E+00,-0.29907E+00,-0.30100E+00,-0.30287E+00,-0.30469E+00, & - &-0.30646E+00,-0.30819E+00,-0.30987E+00,-0.31152E+00,-0.31312E+00, & - &-0.31469E+00,-0.31622E+00,-0.31771E+00,-0.31918E+00,-0.32060E+00, & - &-0.32200E+00,-0.32337E+00,-0.32471E+00,-0.32602E+00,-0.32731E+00, & - &-0.32856E+00,-0.32980E+00,-0.33101E+00,-0.33220E+00,-0.33336E+00, & - &-0.33450E+00,-0.33563E+00,-0.33673E+00,-0.33781E+00,-0.33888E+00, & - &-0.33992E+00,-0.34095E+00,-0.34197E+00,-0.34296E+00,-0.34394E+00, & - &-0.34491E+00,-0.34586E+00,-0.34680E+00,-0.34772E+00,-0.34863E+00, & - &-0.34953E+00,-0.35042E+00,-0.35129E+00,-0.35216E+00,-0.35301E+00, & - &-0.35385E+00,-0.35468E+00,-0.35550E+00,-0.35632E+00,-0.35712E+00, & - &-0.35791E+00,-0.35870E+00,-0.35947E+00,-0.36024E+00,-0.36100E+00, & - &-0.36176E+00,-0.36250E+00,-0.36324E+00,-0.36397E+00,-0.36469E+00, & - &-0.36541E+00,-0.36612E+00,-0.36682E+00,-0.36752E+00,-0.36821E+00/ - - DATA (BNC03M(I),I=101,200)/ & - &-0.36889E+00,-0.36957E+00,-0.37024E+00,-0.37091E+00,-0.37157E+00, & - &-0.37222E+00,-0.37287E+00,-0.37351E+00,-0.37415E+00,-0.37478E+00, & - &-0.37540E+00,-0.37603E+00,-0.37664E+00,-0.37725E+00,-0.37785E+00, & - &-0.37845E+00,-0.37905E+00,-0.37964E+00,-0.38022E+00,-0.38080E+00, & - &-0.38137E+00,-0.38194E+00,-0.38251E+00,-0.38307E+00,-0.38362E+00, & - &-0.38417E+00,-0.38472E+00,-0.38526E+00,-0.38579E+00,-0.38632E+00, & - &-0.38685E+00,-0.38737E+00,-0.38789E+00,-0.38840E+00,-0.38891E+00, & - &-0.38942E+00,-0.38992E+00,-0.39042E+00,-0.39091E+00,-0.39140E+00, & - &-0.39188E+00,-0.39236E+00,-0.39284E+00,-0.39331E+00,-0.39378E+00, & - &-0.39424E+00,-0.39471E+00,-0.39516E+00,-0.39562E+00,-0.39607E+00, & - &-0.39651E+00,-0.39696E+00,-0.39740E+00,-0.39783E+00,-0.39827E+00, & - &-0.39870E+00,-0.39912E+00,-0.39954E+00,-0.39996E+00,-0.40038E+00, & - &-0.40079E+00,-0.40120E+00,-0.40161E+00,-0.40201E+00,-0.40241E+00, & - &-0.40281E+00,-0.40321E+00,-0.40360E+00,-0.40399E+00,-0.40437E+00, & - &-0.40476E+00,-0.40514E+00,-0.40552E+00,-0.40589E+00,-0.40626E+00, & - &-0.40663E+00,-0.40700E+00,-0.40736E+00,-0.40772E+00,-0.40808E+00, & - &-0.40844E+00,-0.40879E+00,-0.40914E+00,-0.40949E+00,-0.40984E+00, & - &-0.41018E+00,-0.41053E+00,-0.41086E+00,-0.41120E+00,-0.41154E+00, & - &-0.41187E+00,-0.41220E+00,-0.41252E+00,-0.41285E+00,-0.41317E+00, & - &-0.41349E+00,-0.41381E+00,-0.41413E+00,-0.41444E+00,-0.41475E+00/ - - DATA (BNC03M(I),I=201,300)/ & - &-0.41506E+00,-0.41537E+00,-0.41568E+00,-0.41598E+00,-0.41628E+00, & - &-0.41658E+00,-0.41688E+00,-0.41718E+00,-0.41747E+00,-0.41776E+00, & - &-0.41805E+00,-0.41834E+00,-0.41863E+00,-0.41891E+00,-0.41919E+00, & - &-0.41947E+00,-0.41975E+00,-0.42003E+00,-0.42030E+00,-0.42058E+00, & - &-0.42085E+00,-0.42112E+00,-0.42138E+00,-0.42165E+00,-0.42191E+00, & - &-0.42218E+00,-0.42244E+00,-0.42270E+00,-0.42296E+00,-0.42321E+00, & - &-0.42347E+00,-0.42372E+00,-0.42397E+00,-0.42422E+00,-0.42447E+00, & - &-0.42471E+00,-0.42496E+00,-0.42520E+00,-0.42544E+00,-0.42568E+00, & - &-0.42592E+00,-0.42616E+00,-0.42639E+00,-0.42663E+00,-0.42686E+00, & - &-0.42709E+00,-0.42732E+00,-0.42755E+00,-0.42778E+00,-0.42800E+00, & - &-0.42823E+00,-0.42845E+00,-0.42867E+00,-0.42889E+00,-0.42911E+00, & - &-0.42933E+00,-0.42954E+00,-0.42976E+00,-0.42997E+00,-0.43018E+00, & - &-0.43039E+00,-0.43060E+00,-0.43081E+00,-0.43102E+00,-0.43122E+00, & - &-0.43143E+00,-0.43163E+00,-0.43183E+00,-0.43203E+00,-0.43223E+00, & - &-0.43243E+00,-0.43262E+00,-0.43282E+00,-0.43301E+00,-0.43321E+00, & - &-0.43340E+00,-0.43359E+00,-0.43378E+00,-0.43397E+00,-0.43416E+00, & - &-0.43434E+00,-0.43453E+00,-0.43471E+00,-0.43489E+00,-0.43508E+00, & - &-0.43526E+00,-0.43544E+00,-0.43561E+00,-0.43579E+00,-0.43597E+00, & - &-0.43614E+00,-0.43632E+00,-0.43649E+00,-0.43666E+00,-0.43683E+00, & - &-0.43700E+00,-0.43717E+00,-0.43734E+00,-0.43751E+00,-0.43767E+00/ - - DATA (BNC03M(I),I=301,400)/ & - &-0.43784E+00,-0.43800E+00,-0.43816E+00,-0.43832E+00,-0.43848E+00, & - &-0.43864E+00,-0.43880E+00,-0.43896E+00,-0.43912E+00,-0.43927E+00, & - &-0.43943E+00,-0.43958E+00,-0.43974E+00,-0.43989E+00,-0.44004E+00, & - &-0.44019E+00,-0.44034E+00,-0.44049E+00,-0.44063E+00,-0.44078E+00, & - &-0.44093E+00,-0.44107E+00,-0.44122E+00,-0.44136E+00,-0.44150E+00, & - &-0.44164E+00,-0.44178E+00,-0.44192E+00,-0.44206E+00,-0.44220E+00, & - &-0.44234E+00,-0.44247E+00,-0.44261E+00,-0.44274E+00,-0.44288E+00, & - &-0.44301E+00,-0.44314E+00,-0.44327E+00,-0.44340E+00,-0.44353E+00, & - &-0.44366E+00,-0.44379E+00,-0.44392E+00,-0.44404E+00,-0.44417E+00, & - &-0.44430E+00,-0.44442E+00,-0.44454E+00,-0.44467E+00,-0.44479E+00, & - &-0.44491E+00,-0.44503E+00,-0.44515E+00,-0.44527E+00,-0.44539E+00, & - &-0.44550E+00,-0.44562E+00,-0.44574E+00,-0.44585E+00,-0.44596E+00, & - &-0.44608E+00,-0.44619E+00,-0.44630E+00,-0.44642E+00,-0.44653E+00, & - &-0.44664E+00,-0.44675E+00,-0.44686E+00,-0.44696E+00,-0.44707E+00, & - &-0.44718E+00,-0.44728E+00,-0.44739E+00,-0.44749E+00,-0.44760E+00, & - &-0.44770E+00,-0.44780E+00,-0.44791E+00,-0.44801E+00,-0.44811E+00, & - &-0.44821E+00,-0.44831E+00,-0.44841E+00,-0.44850E+00,-0.44860E+00, & - &-0.44870E+00,-0.44879E+00,-0.44889E+00,-0.44899E+00,-0.44908E+00, & - &-0.44917E+00,-0.44927E+00,-0.44936E+00,-0.44945E+00,-0.44954E+00, & - &-0.44963E+00,-0.44972E+00,-0.44981E+00,-0.44990E+00,-0.44999E+00/ - - DATA (BNC03M(I),I=401,500)/ & - &-0.45008E+00,-0.45016E+00,-0.45025E+00,-0.45034E+00,-0.45042E+00, & - &-0.45051E+00,-0.45059E+00,-0.45067E+00,-0.45076E+00,-0.45084E+00, & - &-0.45092E+00,-0.45100E+00,-0.45108E+00,-0.45116E+00,-0.45124E+00, & - &-0.45132E+00,-0.45140E+00,-0.45148E+00,-0.45156E+00,-0.45163E+00, & - &-0.45171E+00,-0.45179E+00,-0.45186E+00,-0.45194E+00,-0.45201E+00, & - &-0.45208E+00,-0.45216E+00,-0.45223E+00,-0.45230E+00,-0.45237E+00, & - &-0.45244E+00,-0.45252E+00,-0.45259E+00,-0.45266E+00,-0.45272E+00, & - &-0.45279E+00,-0.45286E+00,-0.45293E+00,-0.45300E+00,-0.45306E+00, & - &-0.45313E+00,-0.45319E+00,-0.45326E+00,-0.45332E+00,-0.45339E+00, & - &-0.45345E+00,-0.45351E+00,-0.45358E+00,-0.45364E+00,-0.45370E+00, & - &-0.45376E+00,-0.45382E+00,-0.45388E+00,-0.45394E+00,-0.45400E+00, & - &-0.45406E+00,-0.45412E+00,-0.45418E+00,-0.45423E+00,-0.45429E+00, & - &-0.45435E+00,-0.45440E+00,-0.45446E+00,-0.45452E+00,-0.45457E+00, & - &-0.45462E+00,-0.45468E+00,-0.45473E+00,-0.45478E+00,-0.45484E+00, & - &-0.45489E+00,-0.45494E+00,-0.45499E+00,-0.45504E+00,-0.45509E+00, & - &-0.45514E+00,-0.45519E+00,-0.45524E+00,-0.45529E+00,-0.45534E+00, & - &-0.45539E+00,-0.45543E+00,-0.45548E+00,-0.45553E+00,-0.45557E+00, & - &-0.45562E+00,-0.45567E+00,-0.45571E+00,-0.45575E+00,-0.45580E+00, & - &-0.45584E+00,-0.45589E+00,-0.45593E+00,-0.45597E+00,-0.45601E+00, & - &-0.45605E+00,-0.45610E+00,-0.45614E+00,-0.45618E+00,-0.45622E+00/ - - DATA (BNC03M(I),I=501,600)/ & - &-0.45626E+00,-0.45630E+00,-0.45634E+00,-0.45637E+00,-0.45641E+00, & - &-0.45645E+00,-0.45649E+00,-0.45653E+00,-0.45656E+00,-0.45660E+00, & - &-0.45663E+00,-0.45667E+00,-0.45670E+00,-0.45674E+00,-0.45677E+00, & - &-0.45681E+00,-0.45684E+00,-0.45688E+00,-0.45691E+00,-0.45694E+00, & - &-0.45697E+00,-0.45701E+00,-0.45704E+00,-0.45707E+00,-0.45710E+00, & - &-0.45713E+00,-0.45716E+00,-0.45719E+00,-0.45722E+00,-0.45725E+00, & - &-0.45728E+00,-0.45731E+00,-0.45733E+00,-0.45736E+00,-0.45739E+00, & - &-0.45742E+00,-0.45744E+00,-0.45747E+00,-0.45749E+00,-0.45752E+00, & - &-0.45755E+00,-0.45757E+00,-0.45759E+00,-0.45762E+00,-0.45764E+00, & - &-0.45767E+00,-0.45769E+00,-0.45771E+00,-0.45774E+00,-0.45776E+00, & - &-0.45778E+00,-0.45780E+00,-0.45782E+00,-0.45784E+00,-0.45787E+00, & - &-0.45789E+00,-0.45791E+00,-0.45793E+00,-0.45795E+00,-0.45796E+00, & - &-0.45798E+00,-0.45800E+00,-0.45802E+00,-0.45804E+00,-0.45806E+00, & - &-0.45807E+00,-0.45809E+00,-0.45811E+00,-0.45812E+00,-0.45814E+00, & - &-0.45815E+00,-0.45817E+00,-0.45819E+00,-0.45820E+00,-0.45821E+00, & - &-0.45823E+00,-0.45824E+00,-0.45826E+00,-0.45827E+00,-0.45828E+00, & - &-0.45830E+00,-0.45831E+00,-0.45832E+00,-0.45833E+00,-0.45834E+00, & - &-0.45836E+00,-0.45837E+00,-0.45838E+00,-0.45839E+00,-0.45840E+00, & - &-0.45841E+00,-0.45842E+00,-0.45843E+00,-0.45844E+00,-0.45845E+00, & - &-0.45845E+00,-0.45846E+00,-0.45847E+00,-0.45848E+00,-0.45849E+00/ - - DATA (BNC03M(I),I=601,700)/ & - &-0.45855E+00,-0.45858E+00,-0.45858E+00,-0.45856E+00,-0.45852E+00, & - &-0.45845E+00,-0.45836E+00,-0.45825E+00,-0.45812E+00,-0.45796E+00, & - &-0.45779E+00,-0.45759E+00,-0.45738E+00,-0.45715E+00,-0.45690E+00, & - &-0.45663E+00,-0.45634E+00,-0.45604E+00,-0.45573E+00,-0.45539E+00, & - &-0.45504E+00,-0.45468E+00,-0.45430E+00,-0.45390E+00,-0.45350E+00, & - &-0.45307E+00,-0.45264E+00,-0.45219E+00,-0.45173E+00,-0.45126E+00, & - &-0.45077E+00,-0.45027E+00,-0.44976E+00,-0.44924E+00,-0.44871E+00, & - &-0.44817E+00,-0.44762E+00,-0.44705E+00,-0.44648E+00,-0.44589E+00, & - &-0.44530E+00,-0.44470E+00,-0.44408E+00,-0.44346E+00,-0.44283E+00, & - &-0.44219E+00,-0.44154E+00,-0.44088E+00,-0.44022E+00,-0.43954E+00, & - &-0.43886E+00,-0.43817E+00,-0.43747E+00,-0.43676E+00,-0.43605E+00, & - &-0.43533E+00,-0.43460E+00,-0.43387E+00,-0.43313E+00,-0.43238E+00, & - &-0.43162E+00,-0.43086E+00,-0.43009E+00,-0.42932E+00,-0.42854E+00, & - &-0.42775E+00,-0.42695E+00,-0.42616E+00,-0.42535E+00,-0.42454E+00, & - &-0.42372E+00,-0.42290E+00,-0.42207E+00,-0.42124E+00,-0.42040E+00, & - &-0.41956E+00,-0.41871E+00,-0.41786E+00,-0.41700E+00,-0.41613E+00, & - &-0.41527E+00,-0.41439E+00,-0.41351E+00,-0.41263E+00,-0.41175E+00, & - &-0.41085E+00,-0.40996E+00,-0.40906E+00,-0.40815E+00,-0.40724E+00, & - &-0.40633E+00,-0.40542E+00,-0.40449E+00,-0.40357E+00,-0.40264E+00, & - &-0.40171E+00,-0.40077E+00,-0.39983E+00,-0.39889E+00,-0.39794E+00/ - - DATA (BNC03M(I),I=701,741)/ & - &-0.39699E+00,-0.39604E+00,-0.39508E+00,-0.39412E+00,-0.39315E+00, & - &-0.39218E+00,-0.39121E+00,-0.39024E+00,-0.38926E+00,-0.38828E+00, & - &-0.38729E+00,-0.38630E+00,-0.38531E+00,-0.38432E+00,-0.38332E+00, & - &-0.38232E+00,-0.38132E+00,-0.38032E+00,-0.37931E+00,-0.37830E+00, & - &-0.37729E+00,-0.37627E+00,-0.37525E+00,-0.37423E+00,-0.37320E+00, & - &-0.37218E+00,-0.37115E+00,-0.37012E+00,-0.36908E+00,-0.36804E+00, & - &-0.36701E+00,-0.36596E+00,-0.36492E+00,-0.36387E+00,-0.36282E+00, & - &-0.36177E+00,-0.36072E+00,-0.35967E+00,-0.35861E+00,-0.35755E+00, & - &-0.35649E+00 & - & / -! -! *** (NH4)2SO4 -! - DATA (BNC04M(I),I=1,100)/ & - &-0.90672E-01,-0.19663E+00,-0.24920E+00,-0.28615E+00,-0.31499E+00, & - &-0.33875E+00,-0.35900E+00,-0.37665E+00,-0.39232E+00,-0.40639E+00, & - &-0.41917E+00,-0.43087E+00,-0.44165E+00,-0.45166E+00,-0.46098E+00, & - &-0.46971E+00,-0.47792E+00,-0.48566E+00,-0.49298E+00,-0.49992E+00, & - &-0.50652E+00,-0.51280E+00,-0.51881E+00,-0.52455E+00,-0.53005E+00, & - &-0.53532E+00,-0.54039E+00,-0.54527E+00,-0.54997E+00,-0.55450E+00, & - &-0.55887E+00,-0.56310E+00,-0.56718E+00,-0.57114E+00,-0.57497E+00, & - &-0.57868E+00,-0.58229E+00,-0.58578E+00,-0.58918E+00,-0.59248E+00, & - &-0.59570E+00,-0.59882E+00,-0.60186E+00,-0.60483E+00,-0.60771E+00, & - &-0.61053E+00,-0.61327E+00,-0.61595E+00,-0.61857E+00,-0.62112E+00, & - &-0.62362E+00,-0.62605E+00,-0.62844E+00,-0.63077E+00,-0.63305E+00, & - &-0.63528E+00,-0.63746E+00,-0.63960E+00,-0.64170E+00,-0.64375E+00, & - &-0.64576E+00,-0.64773E+00,-0.64967E+00,-0.65157E+00,-0.65343E+00, & - &-0.65526E+00,-0.65705E+00,-0.65882E+00,-0.66055E+00,-0.66225E+00, & - &-0.66393E+00,-0.66557E+00,-0.66719E+00,-0.66879E+00,-0.67036E+00, & - &-0.67190E+00,-0.67342E+00,-0.67492E+00,-0.67640E+00,-0.67785E+00, & - &-0.67928E+00,-0.68070E+00,-0.68209E+00,-0.68347E+00,-0.68482E+00, & - &-0.68616E+00,-0.68748E+00,-0.68879E+00,-0.69008E+00,-0.69135E+00, & - &-0.69260E+00,-0.69385E+00,-0.69507E+00,-0.69628E+00,-0.69748E+00, & - &-0.69867E+00,-0.69984E+00,-0.70099E+00,-0.70214E+00,-0.70327E+00/ - - DATA (BNC04M(I),I=101,200)/ & - &-0.70439E+00,-0.70549E+00,-0.70659E+00,-0.70767E+00,-0.70874E+00, & - &-0.70980E+00,-0.71085E+00,-0.71189E+00,-0.71291E+00,-0.71393E+00, & - &-0.71493E+00,-0.71593E+00,-0.71691E+00,-0.71789E+00,-0.71885E+00, & - &-0.71980E+00,-0.72075E+00,-0.72168E+00,-0.72261E+00,-0.72352E+00, & - &-0.72443E+00,-0.72532E+00,-0.72621E+00,-0.72709E+00,-0.72796E+00, & - &-0.72882E+00,-0.72967E+00,-0.73051E+00,-0.73135E+00,-0.73217E+00, & - &-0.73299E+00,-0.73380E+00,-0.73460E+00,-0.73540E+00,-0.73618E+00, & - &-0.73696E+00,-0.73773E+00,-0.73849E+00,-0.73925E+00,-0.74000E+00, & - &-0.74074E+00,-0.74147E+00,-0.74220E+00,-0.74292E+00,-0.74363E+00, & - &-0.74433E+00,-0.74503E+00,-0.74572E+00,-0.74641E+00,-0.74709E+00, & - &-0.74776E+00,-0.74843E+00,-0.74909E+00,-0.74974E+00,-0.75039E+00, & - &-0.75103E+00,-0.75167E+00,-0.75230E+00,-0.75292E+00,-0.75354E+00, & - &-0.75415E+00,-0.75476E+00,-0.75536E+00,-0.75596E+00,-0.75655E+00, & - &-0.75713E+00,-0.75771E+00,-0.75829E+00,-0.75886E+00,-0.75942E+00, & - &-0.75998E+00,-0.76054E+00,-0.76109E+00,-0.76163E+00,-0.76217E+00, & - &-0.76271E+00,-0.76324E+00,-0.76376E+00,-0.76428E+00,-0.76480E+00, & - &-0.76531E+00,-0.76582E+00,-0.76632E+00,-0.76682E+00,-0.76732E+00, & - &-0.76781E+00,-0.76829E+00,-0.76877E+00,-0.76925E+00,-0.76973E+00, & - &-0.77020E+00,-0.77066E+00,-0.77112E+00,-0.77158E+00,-0.77203E+00, & - &-0.77248E+00,-0.77293E+00,-0.77337E+00,-0.77381E+00,-0.77425E+00/ - - DATA (BNC04M(I),I=201,300)/ & - &-0.77468E+00,-0.77510E+00,-0.77553E+00,-0.77595E+00,-0.77637E+00, & - &-0.77678E+00,-0.77719E+00,-0.77760E+00,-0.77800E+00,-0.77840E+00, & - &-0.77880E+00,-0.77919E+00,-0.77958E+00,-0.77996E+00,-0.78035E+00, & - &-0.78073E+00,-0.78110E+00,-0.78148E+00,-0.78185E+00,-0.78222E+00, & - &-0.78258E+00,-0.78294E+00,-0.78330E+00,-0.78366E+00,-0.78401E+00, & - &-0.78436E+00,-0.78471E+00,-0.78505E+00,-0.78539E+00,-0.78573E+00, & - &-0.78607E+00,-0.78640E+00,-0.78673E+00,-0.78706E+00,-0.78738E+00, & - &-0.78770E+00,-0.78802E+00,-0.78834E+00,-0.78865E+00,-0.78896E+00, & - &-0.78927E+00,-0.78958E+00,-0.78988E+00,-0.79018E+00,-0.79048E+00, & - &-0.79078E+00,-0.79107E+00,-0.79136E+00,-0.79165E+00,-0.79194E+00, & - &-0.79222E+00,-0.79250E+00,-0.79278E+00,-0.79306E+00,-0.79333E+00, & - &-0.79361E+00,-0.79388E+00,-0.79415E+00,-0.79441E+00,-0.79467E+00, & - &-0.79494E+00,-0.79519E+00,-0.79545E+00,-0.79571E+00,-0.79596E+00, & - &-0.79621E+00,-0.79646E+00,-0.79670E+00,-0.79695E+00,-0.79719E+00, & - &-0.79743E+00,-0.79767E+00,-0.79790E+00,-0.79814E+00,-0.79837E+00, & - &-0.79860E+00,-0.79883E+00,-0.79906E+00,-0.79928E+00,-0.79950E+00, & - &-0.79972E+00,-0.79994E+00,-0.80016E+00,-0.80037E+00,-0.80058E+00, & - &-0.80080E+00,-0.80101E+00,-0.80121E+00,-0.80142E+00,-0.80162E+00, & - &-0.80182E+00,-0.80202E+00,-0.80222E+00,-0.80242E+00,-0.80261E+00, & - &-0.80281E+00,-0.80300E+00,-0.80319E+00,-0.80338E+00,-0.80356E+00/ - - DATA (BNC04M(I),I=301,400)/ & - &-0.80375E+00,-0.80393E+00,-0.80411E+00,-0.80429E+00,-0.80447E+00, & - &-0.80465E+00,-0.80482E+00,-0.80500E+00,-0.80517E+00,-0.80534E+00, & - &-0.80551E+00,-0.80567E+00,-0.80584E+00,-0.80600E+00,-0.80617E+00, & - &-0.80633E+00,-0.80649E+00,-0.80665E+00,-0.80680E+00,-0.80696E+00, & - &-0.80711E+00,-0.80726E+00,-0.80741E+00,-0.80756E+00,-0.80771E+00, & - &-0.80786E+00,-0.80800E+00,-0.80815E+00,-0.80829E+00,-0.80843E+00, & - &-0.80857E+00,-0.80871E+00,-0.80884E+00,-0.80898E+00,-0.80911E+00, & - &-0.80924E+00,-0.80937E+00,-0.80950E+00,-0.80963E+00,-0.80976E+00, & - &-0.80989E+00,-0.81001E+00,-0.81013E+00,-0.81026E+00,-0.81038E+00, & - &-0.81050E+00,-0.81062E+00,-0.81073E+00,-0.81085E+00,-0.81096E+00, & - &-0.81108E+00,-0.81119E+00,-0.81130E+00,-0.81141E+00,-0.81152E+00, & - &-0.81162E+00,-0.81173E+00,-0.81183E+00,-0.81194E+00,-0.81204E+00, & - &-0.81214E+00,-0.81224E+00,-0.81234E+00,-0.81244E+00,-0.81254E+00, & - &-0.81263E+00,-0.81273E+00,-0.81282E+00,-0.81291E+00,-0.81300E+00, & - &-0.81309E+00,-0.81318E+00,-0.81327E+00,-0.81336E+00,-0.81344E+00, & - &-0.81353E+00,-0.81361E+00,-0.81369E+00,-0.81377E+00,-0.81385E+00, & - &-0.81393E+00,-0.81401E+00,-0.81409E+00,-0.81416E+00,-0.81424E+00, & - &-0.81431E+00,-0.81439E+00,-0.81446E+00,-0.81453E+00,-0.81460E+00, & - &-0.81467E+00,-0.81474E+00,-0.81480E+00,-0.81487E+00,-0.81493E+00, & - &-0.81500E+00,-0.81506E+00,-0.81512E+00,-0.81518E+00,-0.81524E+00/ - - DATA (BNC04M(I),I=401,500)/ & - &-0.81530E+00,-0.81536E+00,-0.81542E+00,-0.81548E+00,-0.81553E+00, & - &-0.81559E+00,-0.81564E+00,-0.81569E+00,-0.81574E+00,-0.81580E+00, & - &-0.81585E+00,-0.81590E+00,-0.81594E+00,-0.81599E+00,-0.81604E+00, & - &-0.81608E+00,-0.81613E+00,-0.81617E+00,-0.81621E+00,-0.81626E+00, & - &-0.81630E+00,-0.81634E+00,-0.81638E+00,-0.81642E+00,-0.81645E+00, & - &-0.81649E+00,-0.81653E+00,-0.81656E+00,-0.81660E+00,-0.81663E+00, & - &-0.81666E+00,-0.81670E+00,-0.81673E+00,-0.81676E+00,-0.81679E+00, & - &-0.81682E+00,-0.81684E+00,-0.81687E+00,-0.81690E+00,-0.81692E+00, & - &-0.81695E+00,-0.81697E+00,-0.81700E+00,-0.81702E+00,-0.81704E+00, & - &-0.81706E+00,-0.81708E+00,-0.81710E+00,-0.81712E+00,-0.81714E+00, & - &-0.81715E+00,-0.81717E+00,-0.81719E+00,-0.81720E+00,-0.81721E+00, & - &-0.81723E+00,-0.81724E+00,-0.81725E+00,-0.81726E+00,-0.81727E+00, & - &-0.81728E+00,-0.81729E+00,-0.81730E+00,-0.81731E+00,-0.81732E+00, & - &-0.81732E+00,-0.81733E+00,-0.81733E+00,-0.81734E+00,-0.81734E+00, & - &-0.81734E+00,-0.81735E+00,-0.81735E+00,-0.81735E+00,-0.81735E+00, & - &-0.81735E+00,-0.81735E+00,-0.81734E+00,-0.81734E+00,-0.81734E+00, & - &-0.81733E+00,-0.81733E+00,-0.81732E+00,-0.81732E+00,-0.81731E+00, & - &-0.81730E+00,-0.81730E+00,-0.81729E+00,-0.81728E+00,-0.81727E+00, & - &-0.81726E+00,-0.81725E+00,-0.81724E+00,-0.81722E+00,-0.81721E+00, & - &-0.81720E+00,-0.81718E+00,-0.81717E+00,-0.81715E+00,-0.81714E+00/ - - DATA (BNC04M(I),I=501,600)/ & - &-0.81712E+00,-0.81710E+00,-0.81709E+00,-0.81707E+00,-0.81705E+00, & - &-0.81703E+00,-0.81701E+00,-0.81699E+00,-0.81697E+00,-0.81694E+00, & - &-0.81692E+00,-0.81690E+00,-0.81688E+00,-0.81685E+00,-0.81683E+00, & - &-0.81680E+00,-0.81677E+00,-0.81675E+00,-0.81672E+00,-0.81669E+00, & - &-0.81666E+00,-0.81664E+00,-0.81661E+00,-0.81658E+00,-0.81655E+00, & - &-0.81651E+00,-0.81648E+00,-0.81645E+00,-0.81642E+00,-0.81638E+00, & - &-0.81635E+00,-0.81632E+00,-0.81628E+00,-0.81625E+00,-0.81621E+00, & - &-0.81617E+00,-0.81614E+00,-0.81610E+00,-0.81606E+00,-0.81602E+00, & - &-0.81598E+00,-0.81594E+00,-0.81590E+00,-0.81586E+00,-0.81582E+00, & - &-0.81578E+00,-0.81574E+00,-0.81570E+00,-0.81565E+00,-0.81561E+00, & - &-0.81556E+00,-0.81552E+00,-0.81547E+00,-0.81543E+00,-0.81538E+00, & - &-0.81534E+00,-0.81529E+00,-0.81524E+00,-0.81519E+00,-0.81514E+00, & - &-0.81509E+00,-0.81504E+00,-0.81499E+00,-0.81494E+00,-0.81489E+00, & - &-0.81484E+00,-0.81479E+00,-0.81474E+00,-0.81468E+00,-0.81463E+00, & - &-0.81458E+00,-0.81452E+00,-0.81447E+00,-0.81441E+00,-0.81436E+00, & - &-0.81430E+00,-0.81424E+00,-0.81419E+00,-0.81413E+00,-0.81407E+00, & - &-0.81401E+00,-0.81395E+00,-0.81389E+00,-0.81383E+00,-0.81377E+00, & - &-0.81371E+00,-0.81365E+00,-0.81359E+00,-0.81353E+00,-0.81347E+00, & - &-0.81340E+00,-0.81334E+00,-0.81328E+00,-0.81321E+00,-0.81315E+00, & - &-0.81308E+00,-0.81302E+00,-0.81295E+00,-0.81288E+00,-0.81282E+00/ - - DATA (BNC04M(I),I=601,700)/ & - &-0.81207E+00,-0.81133E+00,-0.81056E+00,-0.80975E+00,-0.80890E+00, & - &-0.80801E+00,-0.80709E+00,-0.80614E+00,-0.80515E+00,-0.80414E+00, & - &-0.80309E+00,-0.80201E+00,-0.80090E+00,-0.79977E+00,-0.79861E+00, & - &-0.79742E+00,-0.79620E+00,-0.79496E+00,-0.79370E+00,-0.79241E+00, & - &-0.79110E+00,-0.78976E+00,-0.78841E+00,-0.78703E+00,-0.78563E+00, & - &-0.78421E+00,-0.78277E+00,-0.78131E+00,-0.77984E+00,-0.77834E+00, & - &-0.77683E+00,-0.77529E+00,-0.77374E+00,-0.77218E+00,-0.77060E+00, & - &-0.76900E+00,-0.76738E+00,-0.76575E+00,-0.76411E+00,-0.76245E+00, & - &-0.76077E+00,-0.75908E+00,-0.75738E+00,-0.75566E+00,-0.75393E+00, & - &-0.75219E+00,-0.75044E+00,-0.74867E+00,-0.74689E+00,-0.74510E+00, & - &-0.74329E+00,-0.74148E+00,-0.73965E+00,-0.73781E+00,-0.73596E+00, & - &-0.73411E+00,-0.73224E+00,-0.73036E+00,-0.72847E+00,-0.72657E+00, & - &-0.72466E+00,-0.72274E+00,-0.72081E+00,-0.71887E+00,-0.71692E+00, & - &-0.71497E+00,-0.71300E+00,-0.71103E+00,-0.70905E+00,-0.70706E+00, & - &-0.70506E+00,-0.70306E+00,-0.70104E+00,-0.69902E+00,-0.69699E+00, & - &-0.69496E+00,-0.69291E+00,-0.69086E+00,-0.68880E+00,-0.68674E+00, & - &-0.68467E+00,-0.68259E+00,-0.68050E+00,-0.67841E+00,-0.67631E+00, & - &-0.67421E+00,-0.67210E+00,-0.66998E+00,-0.66786E+00,-0.66573E+00, & - &-0.66359E+00,-0.66145E+00,-0.65930E+00,-0.65715E+00,-0.65499E+00, & - &-0.65283E+00,-0.65066E+00,-0.64849E+00,-0.64631E+00,-0.64413E+00/ - - DATA (BNC04M(I),I=701,741)/ & - &-0.64194E+00,-0.63974E+00,-0.63755E+00,-0.63534E+00,-0.63313E+00, & - &-0.63092E+00,-0.62870E+00,-0.62648E+00,-0.62425E+00,-0.62202E+00, & - &-0.61979E+00,-0.61755E+00,-0.61530E+00,-0.61305E+00,-0.61080E+00, & - &-0.60854E+00,-0.60628E+00,-0.60402E+00,-0.60175E+00,-0.59948E+00, & - &-0.59720E+00,-0.59492E+00,-0.59264E+00,-0.59035E+00,-0.58806E+00, & - &-0.58576E+00,-0.58346E+00,-0.58116E+00,-0.57886E+00,-0.57655E+00, & - &-0.57424E+00,-0.57192E+00,-0.56960E+00,-0.56728E+00,-0.56496E+00, & - &-0.56263E+00,-0.56030E+00,-0.55796E+00,-0.55562E+00,-0.55328E+00, & - &-0.55094E+00 & - & / -! -! *** NH4NO3 -! - DATA (BNC05M(I),I=1,100)/ & - &-0.45808E-01,-0.10090E+00,-0.12914E+00,-0.14948E+00,-0.16569E+00, & - &-0.17932E+00,-0.19115E+00,-0.20166E+00,-0.21113E+00,-0.21978E+00, & - &-0.22776E+00,-0.23518E+00,-0.24211E+00,-0.24864E+00,-0.25481E+00, & - &-0.26066E+00,-0.26624E+00,-0.27156E+00,-0.27665E+00,-0.28154E+00, & - &-0.28625E+00,-0.29078E+00,-0.29515E+00,-0.29938E+00,-0.30348E+00, & - &-0.30744E+00,-0.31129E+00,-0.31503E+00,-0.31867E+00,-0.32220E+00, & - &-0.32565E+00,-0.32900E+00,-0.33228E+00,-0.33547E+00,-0.33859E+00, & - &-0.34163E+00,-0.34461E+00,-0.34752E+00,-0.35037E+00,-0.35315E+00, & - &-0.35588E+00,-0.35855E+00,-0.36117E+00,-0.36373E+00,-0.36625E+00, & - &-0.36872E+00,-0.37113E+00,-0.37351E+00,-0.37584E+00,-0.37813E+00, & - &-0.38038E+00,-0.38259E+00,-0.38476E+00,-0.38689E+00,-0.38899E+00, & - &-0.39106E+00,-0.39309E+00,-0.39509E+00,-0.39706E+00,-0.39900E+00, & - &-0.40091E+00,-0.40280E+00,-0.40466E+00,-0.40649E+00,-0.40830E+00, & - &-0.41009E+00,-0.41185E+00,-0.41359E+00,-0.41531E+00,-0.41701E+00, & - &-0.41870E+00,-0.42036E+00,-0.42201E+00,-0.42364E+00,-0.42526E+00, & - &-0.42686E+00,-0.42844E+00,-0.43001E+00,-0.43157E+00,-0.43312E+00, & - &-0.43465E+00,-0.43617E+00,-0.43768E+00,-0.43918E+00,-0.44067E+00, & - &-0.44215E+00,-0.44362E+00,-0.44508E+00,-0.44653E+00,-0.44798E+00, & - &-0.44941E+00,-0.45084E+00,-0.45226E+00,-0.45367E+00,-0.45508E+00, & - &-0.45647E+00,-0.45786E+00,-0.45924E+00,-0.46062E+00,-0.46199E+00/ - - DATA (BNC05M(I),I=101,200)/ & - &-0.46335E+00,-0.46470E+00,-0.46605E+00,-0.46739E+00,-0.46872E+00, & - &-0.47005E+00,-0.47137E+00,-0.47269E+00,-0.47399E+00,-0.47529E+00, & - &-0.47658E+00,-0.47787E+00,-0.47915E+00,-0.48042E+00,-0.48169E+00, & - &-0.48295E+00,-0.48420E+00,-0.48544E+00,-0.48668E+00,-0.48791E+00, & - &-0.48913E+00,-0.49035E+00,-0.49156E+00,-0.49276E+00,-0.49396E+00, & - &-0.49515E+00,-0.49633E+00,-0.49750E+00,-0.49867E+00,-0.49983E+00, & - &-0.50099E+00,-0.50213E+00,-0.50327E+00,-0.50441E+00,-0.50553E+00, & - &-0.50665E+00,-0.50777E+00,-0.50887E+00,-0.50997E+00,-0.51107E+00, & - &-0.51215E+00,-0.51323E+00,-0.51431E+00,-0.51538E+00,-0.51644E+00, & - &-0.51749E+00,-0.51854E+00,-0.51959E+00,-0.52062E+00,-0.52166E+00, & - &-0.52268E+00,-0.52370E+00,-0.52471E+00,-0.52572E+00,-0.52672E+00, & - &-0.52772E+00,-0.52871E+00,-0.52969E+00,-0.53067E+00,-0.53165E+00, & - &-0.53261E+00,-0.53358E+00,-0.53454E+00,-0.53549E+00,-0.53643E+00, & - &-0.53738E+00,-0.53831E+00,-0.53924E+00,-0.54017E+00,-0.54109E+00, & - &-0.54201E+00,-0.54292E+00,-0.54383E+00,-0.54473E+00,-0.54563E+00, & - &-0.54652E+00,-0.54741E+00,-0.54829E+00,-0.54917E+00,-0.55004E+00, & - &-0.55091E+00,-0.55177E+00,-0.55263E+00,-0.55349E+00,-0.55434E+00, & - &-0.55518E+00,-0.55603E+00,-0.55686E+00,-0.55770E+00,-0.55853E+00, & - &-0.55935E+00,-0.56017E+00,-0.56099E+00,-0.56180E+00,-0.56261E+00, & - &-0.56341E+00,-0.56422E+00,-0.56501E+00,-0.56580E+00,-0.56659E+00/ - - DATA (BNC05M(I),I=201,300)/ & - &-0.56738E+00,-0.56816E+00,-0.56893E+00,-0.56971E+00,-0.57048E+00, & - &-0.57124E+00,-0.57200E+00,-0.57276E+00,-0.57351E+00,-0.57426E+00, & - &-0.57501E+00,-0.57575E+00,-0.57649E+00,-0.57723E+00,-0.57796E+00, & - &-0.57869E+00,-0.57942E+00,-0.58014E+00,-0.58086E+00,-0.58157E+00, & - &-0.58228E+00,-0.58299E+00,-0.58370E+00,-0.58440E+00,-0.58510E+00, & - &-0.58579E+00,-0.58648E+00,-0.58717E+00,-0.58786E+00,-0.58854E+00, & - &-0.58922E+00,-0.58989E+00,-0.59057E+00,-0.59124E+00,-0.59190E+00, & - &-0.59257E+00,-0.59323E+00,-0.59388E+00,-0.59454E+00,-0.59519E+00, & - &-0.59584E+00,-0.59648E+00,-0.59712E+00,-0.59776E+00,-0.59840E+00, & - &-0.59903E+00,-0.59966E+00,-0.60029E+00,-0.60092E+00,-0.60154E+00, & - &-0.60216E+00,-0.60278E+00,-0.60339E+00,-0.60400E+00,-0.60461E+00, & - &-0.60522E+00,-0.60582E+00,-0.60642E+00,-0.60702E+00,-0.60761E+00, & - &-0.60820E+00,-0.60879E+00,-0.60938E+00,-0.60997E+00,-0.61055E+00, & - &-0.61113E+00,-0.61170E+00,-0.61228E+00,-0.61285E+00,-0.61342E+00, & - &-0.61399E+00,-0.61455E+00,-0.61511E+00,-0.61567E+00,-0.61623E+00, & - &-0.61678E+00,-0.61734E+00,-0.61789E+00,-0.61843E+00,-0.61898E+00, & - &-0.61952E+00,-0.62006E+00,-0.62060E+00,-0.62114E+00,-0.62167E+00, & - &-0.62220E+00,-0.62273E+00,-0.62326E+00,-0.62378E+00,-0.62430E+00, & - &-0.62482E+00,-0.62534E+00,-0.62586E+00,-0.62637E+00,-0.62688E+00, & - &-0.62739E+00,-0.62790E+00,-0.62840E+00,-0.62891E+00,-0.62941E+00/ - - DATA (BNC05M(I),I=301,400)/ & - &-0.62990E+00,-0.63040E+00,-0.63090E+00,-0.63139E+00,-0.63188E+00, & - &-0.63237E+00,-0.63285E+00,-0.63334E+00,-0.63382E+00,-0.63430E+00, & - &-0.63478E+00,-0.63525E+00,-0.63573E+00,-0.63620E+00,-0.63667E+00, & - &-0.63714E+00,-0.63760E+00,-0.63807E+00,-0.63853E+00,-0.63899E+00, & - &-0.63945E+00,-0.63991E+00,-0.64036E+00,-0.64081E+00,-0.64127E+00, & - &-0.64171E+00,-0.64216E+00,-0.64261E+00,-0.64305E+00,-0.64349E+00, & - &-0.64393E+00,-0.64437E+00,-0.64481E+00,-0.64524E+00,-0.64568E+00, & - &-0.64611E+00,-0.64654E+00,-0.64696E+00,-0.64739E+00,-0.64782E+00, & - &-0.64824E+00,-0.64866E+00,-0.64908E+00,-0.64950E+00,-0.64991E+00, & - &-0.65033E+00,-0.65074E+00,-0.65115E+00,-0.65156E+00,-0.65197E+00, & - &-0.65237E+00,-0.65278E+00,-0.65318E+00,-0.65358E+00,-0.65398E+00, & - &-0.65438E+00,-0.65477E+00,-0.65517E+00,-0.65556E+00,-0.65595E+00, & - &-0.65634E+00,-0.65673E+00,-0.65712E+00,-0.65750E+00,-0.65788E+00, & - &-0.65827E+00,-0.65865E+00,-0.65903E+00,-0.65940E+00,-0.65978E+00, & - &-0.66016E+00,-0.66053E+00,-0.66090E+00,-0.66127E+00,-0.66164E+00, & - &-0.66201E+00,-0.66237E+00,-0.66274E+00,-0.66310E+00,-0.66346E+00, & - &-0.66382E+00,-0.66418E+00,-0.66454E+00,-0.66489E+00,-0.66525E+00, & - &-0.66560E+00,-0.66595E+00,-0.66630E+00,-0.66665E+00,-0.66700E+00, & - &-0.66734E+00,-0.66769E+00,-0.66803E+00,-0.66837E+00,-0.66871E+00, & - &-0.66905E+00,-0.66939E+00,-0.66973E+00,-0.67006E+00,-0.67040E+00/ - - DATA (BNC05M(I),I=401,500)/ & - &-0.67073E+00,-0.67106E+00,-0.67139E+00,-0.67172E+00,-0.67205E+00, & - &-0.67237E+00,-0.67270E+00,-0.67302E+00,-0.67335E+00,-0.67367E+00, & - &-0.67399E+00,-0.67431E+00,-0.67462E+00,-0.67494E+00,-0.67525E+00, & - &-0.67557E+00,-0.67588E+00,-0.67619E+00,-0.67650E+00,-0.67681E+00, & - &-0.67712E+00,-0.67742E+00,-0.67773E+00,-0.67803E+00,-0.67834E+00, & - &-0.67864E+00,-0.67894E+00,-0.67924E+00,-0.67954E+00,-0.67983E+00, & - &-0.68013E+00,-0.68042E+00,-0.68072E+00,-0.68101E+00,-0.68130E+00, & - &-0.68159E+00,-0.68188E+00,-0.68217E+00,-0.68246E+00,-0.68274E+00, & - &-0.68303E+00,-0.68331E+00,-0.68359E+00,-0.68387E+00,-0.68415E+00, & - &-0.68443E+00,-0.68471E+00,-0.68499E+00,-0.68526E+00,-0.68554E+00, & - &-0.68581E+00,-0.68608E+00,-0.68635E+00,-0.68663E+00,-0.68689E+00, & - &-0.68716E+00,-0.68743E+00,-0.68770E+00,-0.68796E+00,-0.68823E+00, & - &-0.68849E+00,-0.68875E+00,-0.68901E+00,-0.68927E+00,-0.68953E+00, & - &-0.68979E+00,-0.69005E+00,-0.69030E+00,-0.69056E+00,-0.69081E+00, & - &-0.69107E+00,-0.69132E+00,-0.69157E+00,-0.69182E+00,-0.69207E+00, & - &-0.69232E+00,-0.69256E+00,-0.69281E+00,-0.69306E+00,-0.69330E+00, & - &-0.69354E+00,-0.69379E+00,-0.69403E+00,-0.69427E+00,-0.69451E+00, & - &-0.69475E+00,-0.69498E+00,-0.69522E+00,-0.69546E+00,-0.69569E+00, & - &-0.69593E+00,-0.69616E+00,-0.69639E+00,-0.69662E+00,-0.69685E+00, & - &-0.69708E+00,-0.69731E+00,-0.69754E+00,-0.69777E+00,-0.69799E+00/ - - DATA (BNC05M(I),I=501,600)/ & - &-0.69822E+00,-0.69844E+00,-0.69867E+00,-0.69889E+00,-0.69911E+00, & - &-0.69933E+00,-0.69955E+00,-0.69977E+00,-0.69999E+00,-0.70020E+00, & - &-0.70042E+00,-0.70064E+00,-0.70085E+00,-0.70107E+00,-0.70128E+00, & - &-0.70149E+00,-0.70170E+00,-0.70191E+00,-0.70212E+00,-0.70233E+00, & - &-0.70254E+00,-0.70275E+00,-0.70295E+00,-0.70316E+00,-0.70336E+00, & - &-0.70357E+00,-0.70377E+00,-0.70397E+00,-0.70417E+00,-0.70438E+00, & - &-0.70458E+00,-0.70477E+00,-0.70497E+00,-0.70517E+00,-0.70537E+00, & - &-0.70556E+00,-0.70576E+00,-0.70595E+00,-0.70615E+00,-0.70634E+00, & - &-0.70653E+00,-0.70672E+00,-0.70691E+00,-0.70710E+00,-0.70729E+00, & - &-0.70748E+00,-0.70767E+00,-0.70786E+00,-0.70804E+00,-0.70823E+00, & - &-0.70841E+00,-0.70860E+00,-0.70878E+00,-0.70896E+00,-0.70914E+00, & - &-0.70932E+00,-0.70950E+00,-0.70968E+00,-0.70986E+00,-0.71004E+00, & - &-0.71022E+00,-0.71040E+00,-0.71057E+00,-0.71075E+00,-0.71092E+00, & - &-0.71109E+00,-0.71127E+00,-0.71144E+00,-0.71161E+00,-0.71178E+00, & - &-0.71195E+00,-0.71212E+00,-0.71229E+00,-0.71246E+00,-0.71263E+00, & - &-0.71279E+00,-0.71296E+00,-0.71313E+00,-0.71329E+00,-0.71346E+00, & - &-0.71362E+00,-0.71378E+00,-0.71394E+00,-0.71411E+00,-0.71427E+00, & - &-0.71443E+00,-0.71459E+00,-0.71474E+00,-0.71490E+00,-0.71506E+00, & - &-0.71522E+00,-0.71537E+00,-0.71553E+00,-0.71568E+00,-0.71584E+00, & - &-0.71599E+00,-0.71614E+00,-0.71630E+00,-0.71645E+00,-0.71660E+00/ - - DATA (BNC05M(I),I=601,700)/ & - &-0.71819E+00,-0.71960E+00,-0.72096E+00,-0.72225E+00,-0.72349E+00, & - &-0.72467E+00,-0.72581E+00,-0.72689E+00,-0.72792E+00,-0.72891E+00, & - &-0.72985E+00,-0.73074E+00,-0.73159E+00,-0.73240E+00,-0.73316E+00, & - &-0.73389E+00,-0.73457E+00,-0.73522E+00,-0.73583E+00,-0.73640E+00, & - &-0.73694E+00,-0.73744E+00,-0.73791E+00,-0.73835E+00,-0.73875E+00, & - &-0.73912E+00,-0.73947E+00,-0.73978E+00,-0.74006E+00,-0.74032E+00, & - &-0.74055E+00,-0.74075E+00,-0.74093E+00,-0.74107E+00,-0.74120E+00, & - &-0.74130E+00,-0.74137E+00,-0.74142E+00,-0.74145E+00,-0.74146E+00, & - &-0.74144E+00,-0.74141E+00,-0.74135E+00,-0.74127E+00,-0.74117E+00, & - &-0.74105E+00,-0.74092E+00,-0.74076E+00,-0.74058E+00,-0.74039E+00, & - &-0.74018E+00,-0.73995E+00,-0.73971E+00,-0.73945E+00,-0.73917E+00, & - &-0.73887E+00,-0.73856E+00,-0.73824E+00,-0.73790E+00,-0.73754E+00, & - &-0.73717E+00,-0.73679E+00,-0.73639E+00,-0.73598E+00,-0.73555E+00, & - &-0.73512E+00,-0.73466E+00,-0.73420E+00,-0.73372E+00,-0.73324E+00, & - &-0.73273E+00,-0.73222E+00,-0.73170E+00,-0.73116E+00,-0.73062E+00, & - &-0.73006E+00,-0.72949E+00,-0.72891E+00,-0.72832E+00,-0.72772E+00, & - &-0.72711E+00,-0.72649E+00,-0.72587E+00,-0.72523E+00,-0.72458E+00, & - &-0.72392E+00,-0.72325E+00,-0.72258E+00,-0.72190E+00,-0.72120E+00, & - &-0.72050E+00,-0.71979E+00,-0.71907E+00,-0.71835E+00,-0.71762E+00, & - &-0.71687E+00,-0.71613E+00,-0.71537E+00,-0.71460E+00,-0.71383E+00/ - - DATA (BNC05M(I),I=701,741)/ & - &-0.71305E+00,-0.71227E+00,-0.71148E+00,-0.71068E+00,-0.70987E+00, & - &-0.70906E+00,-0.70824E+00,-0.70741E+00,-0.70658E+00,-0.70574E+00, & - &-0.70490E+00,-0.70404E+00,-0.70319E+00,-0.70232E+00,-0.70146E+00, & - &-0.70058E+00,-0.69970E+00,-0.69882E+00,-0.69792E+00,-0.69703E+00, & - &-0.69613E+00,-0.69522E+00,-0.69431E+00,-0.69339E+00,-0.69247E+00, & - &-0.69154E+00,-0.69061E+00,-0.68967E+00,-0.68873E+00,-0.68778E+00, & - &-0.68683E+00,-0.68588E+00,-0.68492E+00,-0.68395E+00,-0.68298E+00, & - &-0.68201E+00,-0.68103E+00,-0.68005E+00,-0.67907E+00,-0.67808E+00, & - &-0.67708E+00 & - & / -! -! *** NH4Cl -! - DATA (BNC06M(I),I=1,100)/ & - &-0.44830E-01,-0.95566E-01,-0.11981E+00,-0.13634E+00,-0.14889E+00, & - &-0.15895E+00,-0.16730E+00,-0.17439E+00,-0.18052E+00,-0.18588E+00, & - &-0.19061E+00,-0.19483E+00,-0.19861E+00,-0.20202E+00,-0.20511E+00, & - &-0.20792E+00,-0.21049E+00,-0.21283E+00,-0.21498E+00,-0.21696E+00, & - &-0.21878E+00,-0.22046E+00,-0.22201E+00,-0.22344E+00,-0.22477E+00, & - &-0.22600E+00,-0.22714E+00,-0.22819E+00,-0.22917E+00,-0.23007E+00, & - &-0.23091E+00,-0.23169E+00,-0.23242E+00,-0.23308E+00,-0.23370E+00, & - &-0.23428E+00,-0.23481E+00,-0.23530E+00,-0.23575E+00,-0.23616E+00, & - &-0.23655E+00,-0.23690E+00,-0.23722E+00,-0.23751E+00,-0.23778E+00, & - &-0.23802E+00,-0.23824E+00,-0.23843E+00,-0.23861E+00,-0.23876E+00, & - &-0.23890E+00,-0.23901E+00,-0.23911E+00,-0.23919E+00,-0.23926E+00, & - &-0.23931E+00,-0.23934E+00,-0.23936E+00,-0.23937E+00,-0.23936E+00, & - &-0.23934E+00,-0.23931E+00,-0.23926E+00,-0.23921E+00,-0.23914E+00, & - &-0.23906E+00,-0.23896E+00,-0.23886E+00,-0.23874E+00,-0.23862E+00, & - &-0.23848E+00,-0.23833E+00,-0.23818E+00,-0.23801E+00,-0.23783E+00, & - &-0.23764E+00,-0.23744E+00,-0.23723E+00,-0.23701E+00,-0.23678E+00, & - &-0.23654E+00,-0.23630E+00,-0.23604E+00,-0.23577E+00,-0.23549E+00, & - &-0.23520E+00,-0.23491E+00,-0.23460E+00,-0.23429E+00,-0.23397E+00, & - &-0.23363E+00,-0.23329E+00,-0.23295E+00,-0.23259E+00,-0.23222E+00, & - &-0.23185E+00,-0.23147E+00,-0.23108E+00,-0.23069E+00,-0.23028E+00/ - - DATA (BNC06M(I),I=101,200)/ & - &-0.22987E+00,-0.22946E+00,-0.22903E+00,-0.22860E+00,-0.22817E+00, & - &-0.22773E+00,-0.22728E+00,-0.22682E+00,-0.22637E+00,-0.22590E+00, & - &-0.22543E+00,-0.22496E+00,-0.22448E+00,-0.22400E+00,-0.22351E+00, & - &-0.22302E+00,-0.22253E+00,-0.22203E+00,-0.22153E+00,-0.22102E+00, & - &-0.22051E+00,-0.22000E+00,-0.21949E+00,-0.21897E+00,-0.21845E+00, & - &-0.21792E+00,-0.21740E+00,-0.21687E+00,-0.21634E+00,-0.21581E+00, & - &-0.21527E+00,-0.21474E+00,-0.21420E+00,-0.21366E+00,-0.21311E+00, & - &-0.21257E+00,-0.21202E+00,-0.21148E+00,-0.21093E+00,-0.21038E+00, & - &-0.20983E+00,-0.20927E+00,-0.20872E+00,-0.20816E+00,-0.20761E+00, & - &-0.20705E+00,-0.20649E+00,-0.20593E+00,-0.20537E+00,-0.20480E+00, & - &-0.20424E+00,-0.20368E+00,-0.20311E+00,-0.20254E+00,-0.20198E+00, & - &-0.20141E+00,-0.20084E+00,-0.20027E+00,-0.19970E+00,-0.19913E+00, & - &-0.19856E+00,-0.19799E+00,-0.19742E+00,-0.19684E+00,-0.19627E+00, & - &-0.19569E+00,-0.19512E+00,-0.19454E+00,-0.19397E+00,-0.19339E+00, & - &-0.19281E+00,-0.19224E+00,-0.19166E+00,-0.19108E+00,-0.19050E+00, & - &-0.18992E+00,-0.18934E+00,-0.18876E+00,-0.18818E+00,-0.18760E+00, & - &-0.18702E+00,-0.18644E+00,-0.18586E+00,-0.18528E+00,-0.18469E+00, & - &-0.18411E+00,-0.18353E+00,-0.18295E+00,-0.18236E+00,-0.18178E+00, & - &-0.18120E+00,-0.18061E+00,-0.18003E+00,-0.17945E+00,-0.17886E+00, & - &-0.17828E+00,-0.17770E+00,-0.17711E+00,-0.17653E+00,-0.17594E+00/ - - DATA (BNC06M(I),I=201,300)/ & - &-0.17536E+00,-0.17478E+00,-0.17419E+00,-0.17361E+00,-0.17302E+00, & - &-0.17244E+00,-0.17186E+00,-0.17127E+00,-0.17069E+00,-0.17010E+00, & - &-0.16952E+00,-0.16893E+00,-0.16835E+00,-0.16777E+00,-0.16718E+00, & - &-0.16660E+00,-0.16601E+00,-0.16543E+00,-0.16485E+00,-0.16426E+00, & - &-0.16368E+00,-0.16310E+00,-0.16251E+00,-0.16193E+00,-0.16135E+00, & - &-0.16076E+00,-0.16018E+00,-0.15960E+00,-0.15902E+00,-0.15843E+00, & - &-0.15785E+00,-0.15727E+00,-0.15669E+00,-0.15611E+00,-0.15553E+00, & - &-0.15494E+00,-0.15436E+00,-0.15378E+00,-0.15320E+00,-0.15262E+00, & - &-0.15204E+00,-0.15146E+00,-0.15088E+00,-0.15030E+00,-0.14972E+00, & - &-0.14914E+00,-0.14857E+00,-0.14799E+00,-0.14741E+00,-0.14683E+00, & - &-0.14625E+00,-0.14567E+00,-0.14510E+00,-0.14452E+00,-0.14394E+00, & - &-0.14337E+00,-0.14279E+00,-0.14221E+00,-0.14164E+00,-0.14106E+00, & - &-0.14049E+00,-0.13991E+00,-0.13934E+00,-0.13876E+00,-0.13819E+00, & - &-0.13762E+00,-0.13704E+00,-0.13647E+00,-0.13590E+00,-0.13532E+00, & - &-0.13475E+00,-0.13418E+00,-0.13361E+00,-0.13304E+00,-0.13247E+00, & - &-0.13190E+00,-0.13132E+00,-0.13075E+00,-0.13019E+00,-0.12962E+00, & - &-0.12905E+00,-0.12848E+00,-0.12791E+00,-0.12734E+00,-0.12677E+00, & - &-0.12621E+00,-0.12564E+00,-0.12507E+00,-0.12451E+00,-0.12394E+00, & - &-0.12337E+00,-0.12281E+00,-0.12224E+00,-0.12168E+00,-0.12111E+00, & - &-0.12055E+00,-0.11999E+00,-0.11942E+00,-0.11886E+00,-0.11830E+00/ - - DATA (BNC06M(I),I=301,400)/ & - &-0.11773E+00,-0.11717E+00,-0.11661E+00,-0.11605E+00,-0.11549E+00, & - &-0.11493E+00,-0.11437E+00,-0.11381E+00,-0.11325E+00,-0.11269E+00, & - &-0.11213E+00,-0.11157E+00,-0.11101E+00,-0.11046E+00,-0.10990E+00, & - &-0.10934E+00,-0.10879E+00,-0.10823E+00,-0.10767E+00,-0.10712E+00, & - &-0.10656E+00,-0.10601E+00,-0.10546E+00,-0.10490E+00,-0.10435E+00, & - &-0.10379E+00,-0.10324E+00,-0.10269E+00,-0.10214E+00,-0.10159E+00, & - &-0.10103E+00,-0.10048E+00,-0.99932E-01,-0.99382E-01,-0.98832E-01, & - &-0.98283E-01,-0.97734E-01,-0.97185E-01,-0.96637E-01,-0.96089E-01, & - &-0.95541E-01,-0.94994E-01,-0.94447E-01,-0.93901E-01,-0.93355E-01, & - &-0.92809E-01,-0.92264E-01,-0.91719E-01,-0.91174E-01,-0.90630E-01, & - &-0.90086E-01,-0.89543E-01,-0.89000E-01,-0.88457E-01,-0.87915E-01, & - &-0.87373E-01,-0.86831E-01,-0.86290E-01,-0.85750E-01,-0.85209E-01, & - &-0.84669E-01,-0.84130E-01,-0.83590E-01,-0.83051E-01,-0.82513E-01, & - &-0.81975E-01,-0.81437E-01,-0.80900E-01,-0.80363E-01,-0.79826E-01, & - &-0.79290E-01,-0.78754E-01,-0.78219E-01,-0.77684E-01,-0.77149E-01, & - &-0.76615E-01,-0.76081E-01,-0.75547E-01,-0.75014E-01,-0.74481E-01, & - &-0.73949E-01,-0.73417E-01,-0.72885E-01,-0.72354E-01,-0.71823E-01, & - &-0.71293E-01,-0.70763E-01,-0.70233E-01,-0.69703E-01,-0.69174E-01, & - &-0.68646E-01,-0.68117E-01,-0.67590E-01,-0.67062E-01,-0.66535E-01, & - &-0.66008E-01,-0.65482E-01,-0.64956E-01,-0.64430E-01,-0.63905E-01/ - - DATA (BNC06M(I),I=401,500)/ & - &-0.63380E-01,-0.62856E-01,-0.62331E-01,-0.61808E-01,-0.61284E-01, & - &-0.60761E-01,-0.60239E-01,-0.59716E-01,-0.59194E-01,-0.58673E-01, & - &-0.58152E-01,-0.57631E-01,-0.57111E-01,-0.56591E-01,-0.56071E-01, & - &-0.55552E-01,-0.55033E-01,-0.54514E-01,-0.53996E-01,-0.53478E-01, & - &-0.52961E-01,-0.52444E-01,-0.51927E-01,-0.51410E-01,-0.50894E-01, & - &-0.50379E-01,-0.49864E-01,-0.49349E-01,-0.48834E-01,-0.48320E-01, & - &-0.47806E-01,-0.47293E-01,-0.46780E-01,-0.46267E-01,-0.45755E-01, & - &-0.45243E-01,-0.44731E-01,-0.44220E-01,-0.43709E-01,-0.43198E-01, & - &-0.42688E-01,-0.42178E-01,-0.41669E-01,-0.41160E-01,-0.40651E-01, & - &-0.40143E-01,-0.39635E-01,-0.39127E-01,-0.38620E-01,-0.38113E-01, & - &-0.37606E-01,-0.37100E-01,-0.36594E-01,-0.36088E-01,-0.35583E-01, & - &-0.35078E-01,-0.34574E-01,-0.34070E-01,-0.33566E-01,-0.33063E-01, & - &-0.32560E-01,-0.32057E-01,-0.31554E-01,-0.31052E-01,-0.30551E-01, & - &-0.30049E-01,-0.29548E-01,-0.29048E-01,-0.28548E-01,-0.28048E-01, & - &-0.27548E-01,-0.27049E-01,-0.26550E-01,-0.26051E-01,-0.25553E-01, & - &-0.25055E-01,-0.24558E-01,-0.24061E-01,-0.23564E-01,-0.23067E-01, & - &-0.22571E-01,-0.22075E-01,-0.21580E-01,-0.21085E-01,-0.20590E-01, & - &-0.20096E-01,-0.19602E-01,-0.19108E-01,-0.18614E-01,-0.18121E-01, & - &-0.17629E-01,-0.17136E-01,-0.16644E-01,-0.16153E-01,-0.15661E-01, & - &-0.15170E-01,-0.14679E-01,-0.14189E-01,-0.13699E-01,-0.13209E-01/ - - DATA (BNC06M(I),I=501,600)/ & - &-0.12720E-01,-0.12231E-01,-0.11742E-01,-0.11254E-01,-0.10766E-01, & - &-0.10278E-01,-0.97905E-02,-0.93034E-02,-0.88167E-02,-0.83303E-02, & - &-0.78442E-02,-0.73585E-02,-0.68730E-02,-0.63879E-02,-0.59032E-02, & - &-0.54187E-02,-0.49346E-02,-0.44508E-02,-0.39674E-02,-0.34842E-02, & - &-0.30014E-02,-0.25189E-02,-0.20367E-02,-0.15548E-02,-0.10733E-02, & - &-0.59210E-03,-0.11121E-03, 0.36935E-03, 0.84963E-03, 0.13296E-02, & - & 0.18092E-02, 0.22885E-02, 0.27674E-02, 0.32461E-02, 0.37244E-02, & - & 0.42024E-02, 0.46802E-02, 0.51576E-02, 0.56347E-02, 0.61114E-02, & - & 0.65879E-02, 0.70641E-02, 0.75399E-02, 0.80154E-02, 0.84906E-02, & - & 0.89655E-02, 0.94401E-02, 0.99143E-02, 0.10388E-01, 0.10862E-01, & - & 0.11335E-01, 0.11808E-01, 0.12281E-01, 0.12753E-01, 0.13226E-01, & - & 0.13697E-01, 0.14169E-01, 0.14640E-01, 0.15111E-01, 0.15582E-01, & - & 0.16052E-01, 0.16522E-01, 0.16991E-01, 0.17461E-01, 0.17930E-01, & - & 0.18399E-01, 0.18867E-01, 0.19335E-01, 0.19803E-01, 0.20271E-01, & - & 0.20738E-01, 0.21205E-01, 0.21672E-01, 0.22138E-01, 0.22604E-01, & - & 0.23070E-01, 0.23535E-01, 0.24000E-01, 0.24465E-01, 0.24930E-01, & - & 0.25394E-01, 0.25858E-01, 0.26322E-01, 0.26785E-01, 0.27248E-01, & - & 0.27711E-01, 0.28174E-01, 0.28636E-01, 0.29098E-01, 0.29560E-01, & - & 0.30021E-01, 0.30482E-01, 0.30943E-01, 0.31403E-01, 0.31864E-01, & - & 0.32324E-01, 0.32783E-01, 0.33242E-01, 0.33702E-01, 0.34160E-01/ - - DATA (BNC06M(I),I=601,700)/ & - & 0.39099E-01, 0.43640E-01, 0.48155E-01, 0.52641E-01, 0.57101E-01, & - & 0.61535E-01, 0.65943E-01, 0.70325E-01, 0.74682E-01, 0.79014E-01, & - & 0.83322E-01, 0.87606E-01, 0.91866E-01, 0.96103E-01, 0.10032E+00, & - & 0.10451E+00, 0.10868E+00, 0.11282E+00, 0.11695E+00, 0.12105E+00, & - & 0.12514E+00, 0.12920E+00, 0.13324E+00, 0.13726E+00, 0.14127E+00, & - & 0.14525E+00, 0.14921E+00, 0.15316E+00, 0.15709E+00, 0.16099E+00, & - & 0.16488E+00, 0.16876E+00, 0.17261E+00, 0.17645E+00, 0.18027E+00, & - & 0.18407E+00, 0.18786E+00, 0.19163E+00, 0.19538E+00, 0.19912E+00, & - & 0.20284E+00, 0.20655E+00, 0.21024E+00, 0.21391E+00, 0.21757E+00, & - & 0.22122E+00, 0.22485E+00, 0.22847E+00, 0.23207E+00, 0.23566E+00, & - & 0.23924E+00, 0.24280E+00, 0.24634E+00, 0.24988E+00, 0.25340E+00, & - & 0.25691E+00, 0.26040E+00, 0.26389E+00, 0.26735E+00, 0.27081E+00, & - & 0.27426E+00, 0.27769E+00, 0.28111E+00, 0.28452E+00, 0.28792E+00, & - & 0.29130E+00, 0.29468E+00, 0.29804E+00, 0.30139E+00, 0.30473E+00, & - & 0.30806E+00, 0.31138E+00, 0.31469E+00, 0.31799E+00, 0.32127E+00, & - & 0.32455E+00, 0.32782E+00, 0.33107E+00, 0.33432E+00, 0.33756E+00, & - & 0.34078E+00, 0.34400E+00, 0.34721E+00, 0.35040E+00, 0.35359E+00, & - & 0.35677E+00, 0.35994E+00, 0.36310E+00, 0.36625E+00, 0.36940E+00, & - & 0.37253E+00, 0.37565E+00, 0.37877E+00, 0.38188E+00, 0.38498E+00, & - & 0.38807E+00, 0.39115E+00, 0.39423E+00, 0.39729E+00, 0.40035E+00/ - - DATA (BNC06M(I),I=701,741)/ & - & 0.40340E+00, 0.40644E+00, 0.40947E+00, 0.41250E+00, 0.41552E+00, & - & 0.41853E+00, 0.42153E+00, 0.42453E+00, 0.42752E+00, 0.43050E+00, & - & 0.43347E+00, 0.43644E+00, 0.43939E+00, 0.44235E+00, 0.44529E+00, & - & 0.44823E+00, 0.45116E+00, 0.45408E+00, 0.45700E+00, 0.45991E+00, & - & 0.46281E+00, 0.46571E+00, 0.46860E+00, 0.47149E+00, 0.47436E+00, & - & 0.47723E+00, 0.48010E+00, 0.48296E+00, 0.48581E+00, 0.48865E+00, & - & 0.49149E+00, 0.49433E+00, 0.49715E+00, 0.49998E+00, 0.50279E+00, & - & 0.50560E+00, 0.50840E+00, 0.51120E+00, 0.51399E+00, 0.51678E+00, & - & 0.51956E+00 & - & / -! -! *** (2H,SO4) -! - DATA (BNC07M(I),I=1,100)/ & - &-0.90523E-01,-0.19581E+00,-0.24777E+00,-0.28414E+00,-0.31242E+00, & - &-0.33564E+00,-0.35536E+00,-0.37250E+00,-0.38765E+00,-0.40122E+00, & - &-0.41351E+00,-0.42472E+00,-0.43503E+00,-0.44456E+00,-0.45341E+00, & - &-0.46168E+00,-0.46943E+00,-0.47672E+00,-0.48359E+00,-0.49009E+00, & - &-0.49625E+00,-0.50210E+00,-0.50767E+00,-0.51299E+00,-0.51807E+00, & - &-0.52293E+00,-0.52759E+00,-0.53206E+00,-0.53635E+00,-0.54048E+00, & - &-0.54446E+00,-0.54830E+00,-0.55200E+00,-0.55557E+00,-0.55902E+00, & - &-0.56236E+00,-0.56559E+00,-0.56872E+00,-0.57176E+00,-0.57470E+00, & - &-0.57756E+00,-0.58033E+00,-0.58303E+00,-0.58564E+00,-0.58819E+00, & - &-0.59067E+00,-0.59308E+00,-0.59543E+00,-0.59772E+00,-0.59995E+00, & - &-0.60213E+00,-0.60425E+00,-0.60632E+00,-0.60834E+00,-0.61031E+00, & - &-0.61224E+00,-0.61412E+00,-0.61596E+00,-0.61775E+00,-0.61951E+00, & - &-0.62123E+00,-0.62292E+00,-0.62456E+00,-0.62618E+00,-0.62776E+00, & - &-0.62930E+00,-0.63082E+00,-0.63230E+00,-0.63376E+00,-0.63519E+00, & - &-0.63659E+00,-0.63796E+00,-0.63931E+00,-0.64063E+00,-0.64193E+00, & - &-0.64320E+00,-0.64445E+00,-0.64568E+00,-0.64689E+00,-0.64808E+00, & - &-0.64924E+00,-0.65039E+00,-0.65152E+00,-0.65263E+00,-0.65372E+00, & - &-0.65479E+00,-0.65584E+00,-0.65688E+00,-0.65790E+00,-0.65891E+00, & - &-0.65990E+00,-0.66087E+00,-0.66183E+00,-0.66278E+00,-0.66371E+00, & - &-0.66463E+00,-0.66553E+00,-0.66642E+00,-0.66730E+00,-0.66816E+00/ - - DATA (BNC07M(I),I=101,200)/ & - &-0.66901E+00,-0.66985E+00,-0.67068E+00,-0.67149E+00,-0.67230E+00, & - &-0.67309E+00,-0.67387E+00,-0.67464E+00,-0.67540E+00,-0.67615E+00, & - &-0.67689E+00,-0.67762E+00,-0.67834E+00,-0.67905E+00,-0.67975E+00, & - &-0.68044E+00,-0.68112E+00,-0.68179E+00,-0.68245E+00,-0.68310E+00, & - &-0.68375E+00,-0.68438E+00,-0.68501E+00,-0.68563E+00,-0.68624E+00, & - &-0.68684E+00,-0.68743E+00,-0.68802E+00,-0.68860E+00,-0.68917E+00, & - &-0.68973E+00,-0.69029E+00,-0.69083E+00,-0.69137E+00,-0.69191E+00, & - &-0.69243E+00,-0.69295E+00,-0.69347E+00,-0.69397E+00,-0.69447E+00, & - &-0.69497E+00,-0.69545E+00,-0.69593E+00,-0.69641E+00,-0.69688E+00, & - &-0.69734E+00,-0.69779E+00,-0.69824E+00,-0.69869E+00,-0.69912E+00, & - &-0.69956E+00,-0.69998E+00,-0.70041E+00,-0.70082E+00,-0.70123E+00, & - &-0.70164E+00,-0.70204E+00,-0.70243E+00,-0.70282E+00,-0.70321E+00, & - &-0.70359E+00,-0.70396E+00,-0.70433E+00,-0.70470E+00,-0.70506E+00, & - &-0.70541E+00,-0.70577E+00,-0.70611E+00,-0.70646E+00,-0.70679E+00, & - &-0.70713E+00,-0.70746E+00,-0.70778E+00,-0.70810E+00,-0.70842E+00, & - &-0.70873E+00,-0.70904E+00,-0.70934E+00,-0.70964E+00,-0.70994E+00, & - &-0.71023E+00,-0.71052E+00,-0.71081E+00,-0.71109E+00,-0.71137E+00, & - &-0.71164E+00,-0.71191E+00,-0.71218E+00,-0.71244E+00,-0.71270E+00, & - &-0.71296E+00,-0.71321E+00,-0.71346E+00,-0.71371E+00,-0.71395E+00, & - &-0.71419E+00,-0.71443E+00,-0.71466E+00,-0.71489E+00,-0.71512E+00/ - - DATA (BNC07M(I),I=201,300)/ & - &-0.71534E+00,-0.71556E+00,-0.71578E+00,-0.71599E+00,-0.71620E+00, & - &-0.71641E+00,-0.71662E+00,-0.71682E+00,-0.71702E+00,-0.71722E+00, & - &-0.71741E+00,-0.71760E+00,-0.71779E+00,-0.71798E+00,-0.71816E+00, & - &-0.71834E+00,-0.71852E+00,-0.71870E+00,-0.71887E+00,-0.71904E+00, & - &-0.71921E+00,-0.71937E+00,-0.71954E+00,-0.71970E+00,-0.71986E+00, & - &-0.72001E+00,-0.72016E+00,-0.72032E+00,-0.72046E+00,-0.72061E+00, & - &-0.72075E+00,-0.72090E+00,-0.72103E+00,-0.72117E+00,-0.72131E+00, & - &-0.72144E+00,-0.72157E+00,-0.72170E+00,-0.72182E+00,-0.72195E+00, & - &-0.72207E+00,-0.72219E+00,-0.72231E+00,-0.72242E+00,-0.72254E+00, & - &-0.72265E+00,-0.72276E+00,-0.72287E+00,-0.72297E+00,-0.72307E+00, & - &-0.72318E+00,-0.72328E+00,-0.72337E+00,-0.72347E+00,-0.72356E+00, & - &-0.72366E+00,-0.72375E+00,-0.72384E+00,-0.72392E+00,-0.72401E+00, & - &-0.72409E+00,-0.72417E+00,-0.72425E+00,-0.72433E+00,-0.72441E+00, & - &-0.72448E+00,-0.72455E+00,-0.72463E+00,-0.72470E+00,-0.72476E+00, & - &-0.72483E+00,-0.72489E+00,-0.72496E+00,-0.72502E+00,-0.72508E+00, & - &-0.72514E+00,-0.72519E+00,-0.72525E+00,-0.72530E+00,-0.72535E+00, & - &-0.72540E+00,-0.72545E+00,-0.72550E+00,-0.72555E+00,-0.72559E+00, & - &-0.72563E+00,-0.72568E+00,-0.72572E+00,-0.72576E+00,-0.72579E+00, & - &-0.72583E+00,-0.72586E+00,-0.72590E+00,-0.72593E+00,-0.72596E+00, & - &-0.72599E+00,-0.72602E+00,-0.72604E+00,-0.72607E+00,-0.72609E+00/ - - DATA (BNC07M(I),I=301,400)/ & - &-0.72611E+00,-0.72613E+00,-0.72615E+00,-0.72617E+00,-0.72619E+00, & - &-0.72621E+00,-0.72622E+00,-0.72623E+00,-0.72625E+00,-0.72626E+00, & - &-0.72627E+00,-0.72628E+00,-0.72628E+00,-0.72629E+00,-0.72629E+00, & - &-0.72630E+00,-0.72630E+00,-0.72630E+00,-0.72630E+00,-0.72630E+00, & - &-0.72630E+00,-0.72630E+00,-0.72629E+00,-0.72629E+00,-0.72628E+00, & - &-0.72627E+00,-0.72627E+00,-0.72626E+00,-0.72624E+00,-0.72623E+00, & - &-0.72622E+00,-0.72621E+00,-0.72619E+00,-0.72617E+00,-0.72616E+00, & - &-0.72614E+00,-0.72612E+00,-0.72610E+00,-0.72608E+00,-0.72606E+00, & - &-0.72603E+00,-0.72601E+00,-0.72598E+00,-0.72596E+00,-0.72593E+00, & - &-0.72590E+00,-0.72587E+00,-0.72584E+00,-0.72581E+00,-0.72578E+00, & - &-0.72575E+00,-0.72571E+00,-0.72568E+00,-0.72564E+00,-0.72561E+00, & - &-0.72557E+00,-0.72553E+00,-0.72549E+00,-0.72545E+00,-0.72541E+00, & - &-0.72537E+00,-0.72532E+00,-0.72528E+00,-0.72524E+00,-0.72519E+00, & - &-0.72514E+00,-0.72510E+00,-0.72505E+00,-0.72500E+00,-0.72495E+00, & - &-0.72490E+00,-0.72485E+00,-0.72480E+00,-0.72474E+00,-0.72469E+00, & - &-0.72463E+00,-0.72458E+00,-0.72452E+00,-0.72446E+00,-0.72441E+00, & - &-0.72435E+00,-0.72429E+00,-0.72423E+00,-0.72417E+00,-0.72411E+00, & - &-0.72404E+00,-0.72398E+00,-0.72392E+00,-0.72385E+00,-0.72379E+00, & - &-0.72372E+00,-0.72365E+00,-0.72358E+00,-0.72352E+00,-0.72345E+00, & - &-0.72338E+00,-0.72331E+00,-0.72323E+00,-0.72316E+00,-0.72309E+00/ - - DATA (BNC07M(I),I=401,500)/ & - &-0.72302E+00,-0.72294E+00,-0.72287E+00,-0.72279E+00,-0.72271E+00, & - &-0.72264E+00,-0.72256E+00,-0.72248E+00,-0.72240E+00,-0.72232E+00, & - &-0.72224E+00,-0.72216E+00,-0.72208E+00,-0.72200E+00,-0.72191E+00, & - &-0.72183E+00,-0.72175E+00,-0.72166E+00,-0.72158E+00,-0.72149E+00, & - &-0.72140E+00,-0.72131E+00,-0.72123E+00,-0.72114E+00,-0.72105E+00, & - &-0.72096E+00,-0.72087E+00,-0.72078E+00,-0.72069E+00,-0.72059E+00, & - &-0.72050E+00,-0.72041E+00,-0.72031E+00,-0.72022E+00,-0.72012E+00, & - &-0.72003E+00,-0.71993E+00,-0.71983E+00,-0.71973E+00,-0.71964E+00, & - &-0.71954E+00,-0.71944E+00,-0.71934E+00,-0.71924E+00,-0.71914E+00, & - &-0.71903E+00,-0.71893E+00,-0.71883E+00,-0.71873E+00,-0.71862E+00, & - &-0.71852E+00,-0.71841E+00,-0.71831E+00,-0.71820E+00,-0.71809E+00, & - &-0.71799E+00,-0.71788E+00,-0.71777E+00,-0.71766E+00,-0.71755E+00, & - &-0.71744E+00,-0.71733E+00,-0.71722E+00,-0.71711E+00,-0.71700E+00, & - &-0.71689E+00,-0.71677E+00,-0.71666E+00,-0.71655E+00,-0.71643E+00, & - &-0.71632E+00,-0.71620E+00,-0.71609E+00,-0.71597E+00,-0.71585E+00, & - &-0.71574E+00,-0.71562E+00,-0.71550E+00,-0.71538E+00,-0.71526E+00, & - &-0.71514E+00,-0.71502E+00,-0.71490E+00,-0.71478E+00,-0.71466E+00, & - &-0.71454E+00,-0.71442E+00,-0.71429E+00,-0.71417E+00,-0.71405E+00, & - &-0.71392E+00,-0.71380E+00,-0.71367E+00,-0.71355E+00,-0.71342E+00, & - &-0.71329E+00,-0.71317E+00,-0.71304E+00,-0.71291E+00,-0.71278E+00/ - - DATA (BNC07M(I),I=501,600)/ & - &-0.71266E+00,-0.71253E+00,-0.71240E+00,-0.71227E+00,-0.71214E+00, & - &-0.71201E+00,-0.71187E+00,-0.71174E+00,-0.71161E+00,-0.71148E+00, & - &-0.71135E+00,-0.71121E+00,-0.71108E+00,-0.71094E+00,-0.71081E+00, & - &-0.71068E+00,-0.71054E+00,-0.71040E+00,-0.71027E+00,-0.71013E+00, & - &-0.70999E+00,-0.70986E+00,-0.70972E+00,-0.70958E+00,-0.70944E+00, & - &-0.70930E+00,-0.70917E+00,-0.70903E+00,-0.70889E+00,-0.70875E+00, & - &-0.70860E+00,-0.70846E+00,-0.70832E+00,-0.70818E+00,-0.70804E+00, & - &-0.70790E+00,-0.70775E+00,-0.70761E+00,-0.70747E+00,-0.70732E+00, & - &-0.70718E+00,-0.70703E+00,-0.70689E+00,-0.70674E+00,-0.70660E+00, & - &-0.70645E+00,-0.70630E+00,-0.70616E+00,-0.70601E+00,-0.70586E+00, & - &-0.70571E+00,-0.70556E+00,-0.70542E+00,-0.70527E+00,-0.70512E+00, & - &-0.70497E+00,-0.70482E+00,-0.70467E+00,-0.70452E+00,-0.70436E+00, & - &-0.70421E+00,-0.70406E+00,-0.70391E+00,-0.70376E+00,-0.70360E+00, & - &-0.70345E+00,-0.70330E+00,-0.70314E+00,-0.70299E+00,-0.70284E+00, & - &-0.70268E+00,-0.70253E+00,-0.70237E+00,-0.70222E+00,-0.70206E+00, & - &-0.70190E+00,-0.70175E+00,-0.70159E+00,-0.70143E+00,-0.70127E+00, & - &-0.70112E+00,-0.70096E+00,-0.70080E+00,-0.70064E+00,-0.70048E+00, & - &-0.70032E+00,-0.70016E+00,-0.70000E+00,-0.69984E+00,-0.69968E+00, & - &-0.69952E+00,-0.69936E+00,-0.69920E+00,-0.69904E+00,-0.69887E+00, & - &-0.69871E+00,-0.69855E+00,-0.69839E+00,-0.69822E+00,-0.69806E+00/ - - DATA (BNC07M(I),I=601,700)/ & - &-0.69627E+00,-0.69459E+00,-0.69289E+00,-0.69115E+00,-0.68939E+00, & - &-0.68761E+00,-0.68581E+00,-0.68398E+00,-0.68213E+00,-0.68026E+00, & - &-0.67837E+00,-0.67646E+00,-0.67453E+00,-0.67259E+00,-0.67062E+00, & - &-0.66864E+00,-0.66664E+00,-0.66463E+00,-0.66260E+00,-0.66055E+00, & - &-0.65849E+00,-0.65641E+00,-0.65433E+00,-0.65222E+00,-0.65011E+00, & - &-0.64798E+00,-0.64584E+00,-0.64368E+00,-0.64152E+00,-0.63934E+00, & - &-0.63715E+00,-0.63495E+00,-0.63274E+00,-0.63052E+00,-0.62829E+00, & - &-0.62605E+00,-0.62380E+00,-0.62154E+00,-0.61927E+00,-0.61700E+00, & - &-0.61471E+00,-0.61242E+00,-0.61011E+00,-0.60780E+00,-0.60548E+00, & - &-0.60316E+00,-0.60082E+00,-0.59848E+00,-0.59613E+00,-0.59378E+00, & - &-0.59141E+00,-0.58904E+00,-0.58667E+00,-0.58428E+00,-0.58189E+00, & - &-0.57950E+00,-0.57710E+00,-0.57469E+00,-0.57228E+00,-0.56986E+00, & - &-0.56743E+00,-0.56500E+00,-0.56257E+00,-0.56013E+00,-0.55768E+00, & - &-0.55523E+00,-0.55278E+00,-0.55032E+00,-0.54785E+00,-0.54538E+00, & - &-0.54291E+00,-0.54043E+00,-0.53795E+00,-0.53546E+00,-0.53297E+00, & - &-0.53047E+00,-0.52797E+00,-0.52547E+00,-0.52296E+00,-0.52045E+00, & - &-0.51793E+00,-0.51541E+00,-0.51289E+00,-0.51037E+00,-0.50784E+00, & - &-0.50530E+00,-0.50277E+00,-0.50023E+00,-0.49769E+00,-0.49514E+00, & - &-0.49259E+00,-0.49004E+00,-0.48749E+00,-0.48493E+00,-0.48237E+00, & - &-0.47980E+00,-0.47724E+00,-0.47467E+00,-0.47210E+00,-0.46952E+00/ - - DATA (BNC07M(I),I=701,741)/ & - &-0.46694E+00,-0.46436E+00,-0.46178E+00,-0.45920E+00,-0.45661E+00, & - &-0.45402E+00,-0.45143E+00,-0.44884E+00,-0.44624E+00,-0.44364E+00, & - &-0.44104E+00,-0.43844E+00,-0.43583E+00,-0.43322E+00,-0.43062E+00, & - &-0.42800E+00,-0.42539E+00,-0.42278E+00,-0.42016E+00,-0.41754E+00, & - &-0.41492E+00,-0.41230E+00,-0.40967E+00,-0.40704E+00,-0.40442E+00, & - &-0.40179E+00,-0.39916E+00,-0.39652E+00,-0.39389E+00,-0.39125E+00, & - &-0.38861E+00,-0.38597E+00,-0.38333E+00,-0.38069E+00,-0.37805E+00, & - &-0.37540E+00,-0.37275E+00,-0.37010E+00,-0.36746E+00,-0.36480E+00, & - &-0.36215E+00 & - & / -! -! *** (H,HSO4) -! - DATA (BNC08M(I),I=1,100)/ & - &-0.42949E-01,-0.86374E-01,-0.10452E+00,-0.11550E+00,-0.12283E+00, & - &-0.12787E+00,-0.13133E+00,-0.13362E+00,-0.13499E+00,-0.13563E+00, & - &-0.13565E+00,-0.13515E+00,-0.13421E+00,-0.13286E+00,-0.13117E+00, & - &-0.12916E+00,-0.12686E+00,-0.12431E+00,-0.12150E+00,-0.11848E+00, & - &-0.11525E+00,-0.11182E+00,-0.10821E+00,-0.10442E+00,-0.10047E+00, & - &-0.96373E-01,-0.92125E-01,-0.87738E-01,-0.83218E-01,-0.78573E-01, & - &-0.73807E-01,-0.68926E-01,-0.63935E-01,-0.58840E-01,-0.53644E-01, & - &-0.48353E-01,-0.42970E-01,-0.37499E-01,-0.31944E-01,-0.26309E-01, & - &-0.20597E-01,-0.14812E-01,-0.89563E-02,-0.30333E-02, 0.29541E-02, & - & 0.90031E-02, 0.15111E-01, 0.21276E-01, 0.27495E-01, 0.33766E-01, & - & 0.40087E-01, 0.46455E-01, 0.52870E-01, 0.59330E-01, 0.65832E-01, & - & 0.72376E-01, 0.78960E-01, 0.85584E-01, 0.92245E-01, 0.98943E-01, & - & 0.10568E+00, 0.11245E+00, 0.11925E+00, 0.12610E+00, 0.13297E+00, & - & 0.13988E+00, 0.14682E+00, 0.15380E+00, 0.16082E+00, 0.16786E+00, & - & 0.17494E+00, 0.18206E+00, 0.18921E+00, 0.19640E+00, 0.20363E+00, & - & 0.21089E+00, 0.21819E+00, 0.22552E+00, 0.23290E+00, 0.24031E+00, & - & 0.24776E+00, 0.25525E+00, 0.26278E+00, 0.27035E+00, 0.27796E+00, & - & 0.28561E+00, 0.29330E+00, 0.30102E+00, 0.30879E+00, 0.31660E+00, & - & 0.32445E+00, 0.33233E+00, 0.34025E+00, 0.34821E+00, 0.35621E+00, & - & 0.36424E+00, 0.37231E+00, 0.38041E+00, 0.38854E+00, 0.39670E+00/ - - DATA (BNC08M(I),I=101,200)/ & - & 0.40490E+00, 0.41312E+00, 0.42137E+00, 0.42964E+00, 0.43795E+00, & - & 0.44627E+00, 0.45461E+00, 0.46298E+00, 0.47136E+00, 0.47976E+00, & - & 0.48818E+00, 0.49661E+00, 0.50506E+00, 0.51351E+00, 0.52198E+00, & - & 0.53045E+00, 0.53893E+00, 0.54742E+00, 0.55591E+00, 0.56440E+00, & - & 0.57290E+00, 0.58139E+00, 0.58989E+00, 0.59839E+00, 0.60688E+00, & - & 0.61537E+00, 0.62386E+00, 0.63234E+00, 0.64082E+00, 0.64929E+00, & - & 0.65776E+00, 0.66621E+00, 0.67466E+00, 0.68310E+00, 0.69153E+00, & - & 0.69995E+00, 0.70837E+00, 0.71677E+00, 0.72516E+00, 0.73353E+00, & - & 0.74190E+00, 0.75026E+00, 0.75860E+00, 0.76693E+00, 0.77525E+00, & - & 0.78355E+00, 0.79184E+00, 0.80012E+00, 0.80838E+00, 0.81663E+00, & - & 0.82487E+00, 0.83309E+00, 0.84130E+00, 0.84949E+00, 0.85767E+00, & - & 0.86583E+00, 0.87398E+00, 0.88212E+00, 0.89024E+00, 0.89834E+00, & - & 0.90643E+00, 0.91451E+00, 0.92256E+00, 0.93061E+00, 0.93864E+00, & - & 0.94665E+00, 0.95465E+00, 0.96263E+00, 0.97060E+00, 0.97855E+00, & - & 0.98648E+00, 0.99440E+00, 0.10023E+01, 0.10102E+01, 0.10181E+01, & - & 0.10259E+01, 0.10338E+01, 0.10416E+01, 0.10494E+01, 0.10572E+01, & - & 0.10650E+01, 0.10727E+01, 0.10805E+01, 0.10882E+01, 0.10959E+01, & - & 0.11036E+01, 0.11113E+01, 0.11190E+01, 0.11266E+01, 0.11343E+01, & - & 0.11419E+01, 0.11495E+01, 0.11571E+01, 0.11647E+01, 0.11722E+01, & - & 0.11798E+01, 0.11873E+01, 0.11948E+01, 0.12023E+01, 0.12098E+01/ - - DATA (BNC08M(I),I=201,300)/ & - & 0.12173E+01, 0.12247E+01, 0.12321E+01, 0.12396E+01, 0.12470E+01, & - & 0.12544E+01, 0.12617E+01, 0.12691E+01, 0.12764E+01, 0.12838E+01, & - & 0.12911E+01, 0.12984E+01, 0.13057E+01, 0.13129E+01, 0.13202E+01, & - & 0.13274E+01, 0.13346E+01, 0.13418E+01, 0.13490E+01, 0.13562E+01, & - & 0.13634E+01, 0.13705E+01, 0.13777E+01, 0.13848E+01, 0.13919E+01, & - & 0.13990E+01, 0.14060E+01, 0.14131E+01, 0.14202E+01, 0.14272E+01, & - & 0.14342E+01, 0.14412E+01, 0.14482E+01, 0.14552E+01, 0.14621E+01, & - & 0.14691E+01, 0.14760E+01, 0.14829E+01, 0.14898E+01, 0.14967E+01, & - & 0.15036E+01, 0.15104E+01, 0.15173E+01, 0.15241E+01, 0.15309E+01, & - & 0.15377E+01, 0.15445E+01, 0.15513E+01, 0.15581E+01, 0.15648E+01, & - & 0.15716E+01, 0.15783E+01, 0.15850E+01, 0.15917E+01, 0.15984E+01, & - & 0.16051E+01, 0.16117E+01, 0.16184E+01, 0.16250E+01, 0.16316E+01, & - & 0.16382E+01, 0.16448E+01, 0.16514E+01, 0.16579E+01, 0.16645E+01, & - & 0.16710E+01, 0.16776E+01, 0.16841E+01, 0.16906E+01, 0.16971E+01, & - & 0.17035E+01, 0.17100E+01, 0.17165E+01, 0.17229E+01, 0.17293E+01, & - & 0.17357E+01, 0.17421E+01, 0.17485E+01, 0.17549E+01, 0.17613E+01, & - & 0.17676E+01, 0.17740E+01, 0.17803E+01, 0.17866E+01, 0.17929E+01, & - & 0.17992E+01, 0.18055E+01, 0.18117E+01, 0.18180E+01, 0.18242E+01, & - & 0.18305E+01, 0.18367E+01, 0.18429E+01, 0.18491E+01, 0.18553E+01, & - & 0.18614E+01, 0.18676E+01, 0.18738E+01, 0.18799E+01, 0.18860E+01/ - - DATA (BNC08M(I),I=301,400)/ & - & 0.18921E+01, 0.18982E+01, 0.19043E+01, 0.19104E+01, 0.19165E+01, & - & 0.19225E+01, 0.19286E+01, 0.19346E+01, 0.19407E+01, 0.19467E+01, & - & 0.19527E+01, 0.19587E+01, 0.19646E+01, 0.19706E+01, 0.19766E+01, & - & 0.19825E+01, 0.19885E+01, 0.19944E+01, 0.20003E+01, 0.20062E+01, & - & 0.20121E+01, 0.20180E+01, 0.20239E+01, 0.20297E+01, 0.20356E+01, & - & 0.20414E+01, 0.20473E+01, 0.20531E+01, 0.20589E+01, 0.20647E+01, & - & 0.20705E+01, 0.20763E+01, 0.20820E+01, 0.20878E+01, 0.20935E+01, & - & 0.20993E+01, 0.21050E+01, 0.21107E+01, 0.21164E+01, 0.21221E+01, & - & 0.21278E+01, 0.21335E+01, 0.21392E+01, 0.21448E+01, 0.21505E+01, & - & 0.21561E+01, 0.21618E+01, 0.21674E+01, 0.21730E+01, 0.21786E+01, & - & 0.21842E+01, 0.21898E+01, 0.21953E+01, 0.22009E+01, 0.22065E+01, & - & 0.22120E+01, 0.22175E+01, 0.22231E+01, 0.22286E+01, 0.22341E+01, & - & 0.22396E+01, 0.22451E+01, 0.22506E+01, 0.22560E+01, 0.22615E+01, & - & 0.22669E+01, 0.22724E+01, 0.22778E+01, 0.22832E+01, 0.22887E+01, & - & 0.22941E+01, 0.22995E+01, 0.23048E+01, 0.23102E+01, 0.23156E+01, & - & 0.23210E+01, 0.23263E+01, 0.23317E+01, 0.23370E+01, 0.23423E+01, & - & 0.23476E+01, 0.23529E+01, 0.23582E+01, 0.23635E+01, 0.23688E+01, & - & 0.23741E+01, 0.23794E+01, 0.23846E+01, 0.23899E+01, 0.23951E+01, & - & 0.24003E+01, 0.24056E+01, 0.24108E+01, 0.24160E+01, 0.24212E+01, & - & 0.24264E+01, 0.24316E+01, 0.24367E+01, 0.24419E+01, 0.24471E+01/ - - DATA (BNC08M(I),I=401,500)/ & - & 0.24522E+01, 0.24574E+01, 0.24625E+01, 0.24676E+01, 0.24727E+01, & - & 0.24778E+01, 0.24829E+01, 0.24880E+01, 0.24931E+01, 0.24982E+01, & - & 0.25033E+01, 0.25083E+01, 0.25134E+01, 0.25184E+01, 0.25235E+01, & - & 0.25285E+01, 0.25335E+01, 0.25385E+01, 0.25436E+01, 0.25486E+01, & - & 0.25535E+01, 0.25585E+01, 0.25635E+01, 0.25685E+01, 0.25734E+01, & - & 0.25784E+01, 0.25833E+01, 0.25883E+01, 0.25932E+01, 0.25981E+01, & - & 0.26031E+01, 0.26080E+01, 0.26129E+01, 0.26178E+01, 0.26226E+01, & - & 0.26275E+01, 0.26324E+01, 0.26373E+01, 0.26421E+01, 0.26470E+01, & - & 0.26518E+01, 0.26567E+01, 0.26615E+01, 0.26663E+01, 0.26711E+01, & - & 0.26759E+01, 0.26807E+01, 0.26855E+01, 0.26903E+01, 0.26951E+01, & - & 0.26999E+01, 0.27046E+01, 0.27094E+01, 0.27141E+01, 0.27189E+01, & - & 0.27236E+01, 0.27284E+01, 0.27331E+01, 0.27378E+01, 0.27425E+01, & - & 0.27472E+01, 0.27519E+01, 0.27566E+01, 0.27613E+01, 0.27660E+01, & - & 0.27706E+01, 0.27753E+01, 0.27800E+01, 0.27846E+01, 0.27893E+01, & - & 0.27939E+01, 0.27985E+01, 0.28031E+01, 0.28078E+01, 0.28124E+01, & - & 0.28170E+01, 0.28216E+01, 0.28262E+01, 0.28308E+01, 0.28353E+01, & - & 0.28399E+01, 0.28445E+01, 0.28490E+01, 0.28536E+01, 0.28581E+01, & - & 0.28627E+01, 0.28672E+01, 0.28717E+01, 0.28763E+01, 0.28808E+01, & - & 0.28853E+01, 0.28898E+01, 0.28943E+01, 0.28988E+01, 0.29033E+01, & - & 0.29077E+01, 0.29122E+01, 0.29167E+01, 0.29211E+01, 0.29256E+01/ - - DATA (BNC08M(I),I=501,600)/ & - & 0.29300E+01, 0.29345E+01, 0.29389E+01, 0.29433E+01, 0.29478E+01, & - & 0.29522E+01, 0.29566E+01, 0.29610E+01, 0.29654E+01, 0.29698E+01, & - & 0.29742E+01, 0.29786E+01, 0.29830E+01, 0.29873E+01, 0.29917E+01, & - & 0.29960E+01, 0.30004E+01, 0.30047E+01, 0.30091E+01, 0.30134E+01, & - & 0.30178E+01, 0.30221E+01, 0.30264E+01, 0.30307E+01, 0.30350E+01, & - & 0.30393E+01, 0.30436E+01, 0.30479E+01, 0.30522E+01, 0.30565E+01, & - & 0.30608E+01, 0.30650E+01, 0.30693E+01, 0.30735E+01, 0.30778E+01, & - & 0.30820E+01, 0.30863E+01, 0.30905E+01, 0.30947E+01, 0.30990E+01, & - & 0.31032E+01, 0.31074E+01, 0.31116E+01, 0.31158E+01, 0.31200E+01, & - & 0.31242E+01, 0.31284E+01, 0.31326E+01, 0.31367E+01, 0.31409E+01, & - & 0.31451E+01, 0.31492E+01, 0.31534E+01, 0.31576E+01, 0.31617E+01, & - & 0.31658E+01, 0.31700E+01, 0.31741E+01, 0.31782E+01, 0.31823E+01, & - & 0.31865E+01, 0.31906E+01, 0.31947E+01, 0.31988E+01, 0.32029E+01, & - & 0.32069E+01, 0.32110E+01, 0.32151E+01, 0.32192E+01, 0.32232E+01, & - & 0.32273E+01, 0.32314E+01, 0.32354E+01, 0.32395E+01, 0.32435E+01, & - & 0.32476E+01, 0.32516E+01, 0.32556E+01, 0.32596E+01, 0.32637E+01, & - & 0.32677E+01, 0.32717E+01, 0.32757E+01, 0.32797E+01, 0.32837E+01, & - & 0.32877E+01, 0.32916E+01, 0.32956E+01, 0.32996E+01, 0.33036E+01, & - & 0.33075E+01, 0.33115E+01, 0.33154E+01, 0.33194E+01, 0.33233E+01, & - & 0.33273E+01, 0.33312E+01, 0.33352E+01, 0.33391E+01, 0.33430E+01/ - - DATA (BNC08M(I),I=601,700)/ & - & 0.33851E+01, 0.34236E+01, 0.34616E+01, 0.34992E+01, 0.35364E+01, & - & 0.35732E+01, 0.36095E+01, 0.36455E+01, 0.36811E+01, 0.37163E+01, & - & 0.37511E+01, 0.37856E+01, 0.38198E+01, 0.38535E+01, 0.38870E+01, & - & 0.39201E+01, 0.39529E+01, 0.39854E+01, 0.40175E+01, 0.40494E+01, & - & 0.40809E+01, 0.41122E+01, 0.41432E+01, 0.41738E+01, 0.42043E+01, & - & 0.42344E+01, 0.42643E+01, 0.42939E+01, 0.43232E+01, 0.43523E+01, & - & 0.43812E+01, 0.44098E+01, 0.44382E+01, 0.44663E+01, 0.44942E+01, & - & 0.45219E+01, 0.45494E+01, 0.45766E+01, 0.46036E+01, 0.46304E+01, & - & 0.46570E+01, 0.46834E+01, 0.47096E+01, 0.47356E+01, 0.47614E+01, & - & 0.47870E+01, 0.48124E+01, 0.48377E+01, 0.48627E+01, 0.48876E+01, & - & 0.49123E+01, 0.49368E+01, 0.49611E+01, 0.49853E+01, 0.50093E+01, & - & 0.50331E+01, 0.50568E+01, 0.50803E+01, 0.51036E+01, 0.51268E+01, & - & 0.51499E+01, 0.51728E+01, 0.51955E+01, 0.52181E+01, 0.52406E+01, & - & 0.52629E+01, 0.52850E+01, 0.53071E+01, 0.53290E+01, 0.53507E+01, & - & 0.53723E+01, 0.53938E+01, 0.54152E+01, 0.54364E+01, 0.54575E+01, & - & 0.54785E+01, 0.54993E+01, 0.55200E+01, 0.55406E+01, 0.55611E+01, & - & 0.55815E+01, 0.56018E+01, 0.56219E+01, 0.56419E+01, 0.56618E+01, & - & 0.56816E+01, 0.57013E+01, 0.57209E+01, 0.57404E+01, 0.57597E+01, & - & 0.57790E+01, 0.57982E+01, 0.58172E+01, 0.58362E+01, 0.58550E+01, & - & 0.58738E+01, 0.58925E+01, 0.59110E+01, 0.59295E+01, 0.59479E+01/ - - DATA (BNC08M(I),I=701,741)/ & - & 0.59661E+01, 0.59843E+01, 0.60024E+01, 0.60204E+01, 0.60384E+01, & - & 0.60562E+01, 0.60739E+01, 0.60916E+01, 0.61092E+01, 0.61266E+01, & - & 0.61440E+01, 0.61614E+01, 0.61786E+01, 0.61957E+01, 0.62128E+01, & - & 0.62298E+01, 0.62467E+01, 0.62636E+01, 0.62803E+01, 0.62970E+01, & - & 0.63136E+01, 0.63301E+01, 0.63466E+01, 0.63630E+01, 0.63793E+01, & - & 0.63955E+01, 0.64117E+01, 0.64278E+01, 0.64438E+01, 0.64598E+01, & - & 0.64757E+01, 0.64915E+01, 0.65073E+01, 0.65229E+01, 0.65386E+01, & - & 0.65541E+01, 0.65696E+01, 0.65850E+01, 0.66004E+01, 0.66157E+01, & - & 0.66309E+01 & - & / -! -! *** NH4HSO4 -! - DATA (BNC09M(I),I=1,100)/ & - &-0.44571E-01,-0.94628E-01,-0.11852E+00,-0.13486E+00,-0.14728E+00, & - &-0.15726E+00,-0.16555E+00,-0.17260E+00,-0.17867E+00,-0.18397E+00, & - &-0.18863E+00,-0.19275E+00,-0.19642E+00,-0.19969E+00,-0.20262E+00, & - &-0.20523E+00,-0.20757E+00,-0.20965E+00,-0.21150E+00,-0.21315E+00, & - &-0.21460E+00,-0.21587E+00,-0.21698E+00,-0.21793E+00,-0.21873E+00, & - &-0.21940E+00,-0.21993E+00,-0.22034E+00,-0.22063E+00,-0.22082E+00, & - &-0.22089E+00,-0.22087E+00,-0.22075E+00,-0.22053E+00,-0.22023E+00, & - &-0.21984E+00,-0.21937E+00,-0.21882E+00,-0.21820E+00,-0.21750E+00, & - &-0.21673E+00,-0.21590E+00,-0.21500E+00,-0.21404E+00,-0.21302E+00, & - &-0.21194E+00,-0.21081E+00,-0.20962E+00,-0.20838E+00,-0.20709E+00, & - &-0.20575E+00,-0.20436E+00,-0.20293E+00,-0.20146E+00,-0.19994E+00, & - &-0.19838E+00,-0.19679E+00,-0.19515E+00,-0.19348E+00,-0.19177E+00, & - &-0.19003E+00,-0.18826E+00,-0.18645E+00,-0.18461E+00,-0.18274E+00, & - &-0.18084E+00,-0.17890E+00,-0.17694E+00,-0.17496E+00,-0.17294E+00, & - &-0.17090E+00,-0.16882E+00,-0.16673E+00,-0.16460E+00,-0.16246E+00, & - &-0.16028E+00,-0.15808E+00,-0.15586E+00,-0.15361E+00,-0.15134E+00, & - &-0.14905E+00,-0.14673E+00,-0.14439E+00,-0.14202E+00,-0.13963E+00, & - &-0.13722E+00,-0.13479E+00,-0.13234E+00,-0.12987E+00,-0.12737E+00, & - &-0.12485E+00,-0.12232E+00,-0.11976E+00,-0.11719E+00,-0.11460E+00, & - &-0.11199E+00,-0.10936E+00,-0.10671E+00,-0.10405E+00,-0.10137E+00/ - - DATA (BNC09M(I),I=101,200)/ & - &-0.98681E-01,-0.95974E-01,-0.93253E-01,-0.90519E-01,-0.87773E-01, & - &-0.85014E-01,-0.82245E-01,-0.79465E-01,-0.76675E-01,-0.73876E-01, & - &-0.71069E-01,-0.68253E-01,-0.65431E-01,-0.62602E-01,-0.59767E-01, & - &-0.56926E-01,-0.54081E-01,-0.51232E-01,-0.48379E-01,-0.45522E-01, & - &-0.42663E-01,-0.39802E-01,-0.36939E-01,-0.34075E-01,-0.31210E-01, & - &-0.28345E-01,-0.25479E-01,-0.22614E-01,-0.19749E-01,-0.16885E-01, & - &-0.14023E-01,-0.11162E-01,-0.83023E-02,-0.54449E-02,-0.25898E-02, & - & 0.26281E-03, 0.31128E-02, 0.59598E-02, 0.88039E-02, 0.11645E-01, & - & 0.14482E-01, 0.17316E-01, 0.20147E-01, 0.22973E-01, 0.25796E-01, & - & 0.28615E-01, 0.31429E-01, 0.34240E-01, 0.37046E-01, 0.39848E-01, & - & 0.42645E-01, 0.45438E-01, 0.48226E-01, 0.51010E-01, 0.53789E-01, & - & 0.56563E-01, 0.59333E-01, 0.62097E-01, 0.64857E-01, 0.67612E-01, & - & 0.70362E-01, 0.73107E-01, 0.75847E-01, 0.78581E-01, 0.81311E-01, & - & 0.84036E-01, 0.86755E-01, 0.89470E-01, 0.92179E-01, 0.94883E-01, & - & 0.97582E-01, 0.10028E+00, 0.10296E+00, 0.10565E+00, 0.10832E+00, & - & 0.11100E+00, 0.11367E+00, 0.11633E+00, 0.11898E+00, 0.12164E+00, & - & 0.12428E+00, 0.12692E+00, 0.12956E+00, 0.13219E+00, 0.13482E+00, & - & 0.13744E+00, 0.14005E+00, 0.14266E+00, 0.14526E+00, 0.14786E+00, & - & 0.15046E+00, 0.15304E+00, 0.15563E+00, 0.15821E+00, 0.16078E+00, & - & 0.16335E+00, 0.16591E+00, 0.16847E+00, 0.17102E+00, 0.17356E+00/ - - DATA (BNC09M(I),I=201,300)/ & - & 0.17611E+00, 0.17864E+00, 0.18117E+00, 0.18370E+00, 0.18622E+00, & - & 0.18874E+00, 0.19125E+00, 0.19375E+00, 0.19626E+00, 0.19875E+00, & - & 0.20124E+00, 0.20373E+00, 0.20621E+00, 0.20868E+00, 0.21115E+00, & - & 0.21362E+00, 0.21608E+00, 0.21854E+00, 0.22099E+00, 0.22343E+00, & - & 0.22588E+00, 0.22831E+00, 0.23074E+00, 0.23317E+00, 0.23559E+00, & - & 0.23801E+00, 0.24042E+00, 0.24283E+00, 0.24523E+00, 0.24763E+00, & - & 0.25002E+00, 0.25241E+00, 0.25479E+00, 0.25717E+00, 0.25955E+00, & - & 0.26192E+00, 0.26428E+00, 0.26664E+00, 0.26900E+00, 0.27135E+00, & - & 0.27370E+00, 0.27604E+00, 0.27838E+00, 0.28071E+00, 0.28304E+00, & - & 0.28536E+00, 0.28768E+00, 0.29000E+00, 0.29231E+00, 0.29462E+00, & - & 0.29692E+00, 0.29922E+00, 0.30151E+00, 0.30380E+00, 0.30609E+00, & - & 0.30837E+00, 0.31064E+00, 0.31291E+00, 0.31518E+00, 0.31745E+00, & - & 0.31971E+00, 0.32196E+00, 0.32421E+00, 0.32646E+00, 0.32870E+00, & - & 0.33094E+00, 0.33317E+00, 0.33540E+00, 0.33763E+00, 0.33985E+00, & - & 0.34207E+00, 0.34428E+00, 0.34649E+00, 0.34870E+00, 0.35090E+00, & - & 0.35310E+00, 0.35529E+00, 0.35748E+00, 0.35967E+00, 0.36185E+00, & - & 0.36403E+00, 0.36620E+00, 0.36837E+00, 0.37054E+00, 0.37270E+00, & - & 0.37486E+00, 0.37702E+00, 0.37917E+00, 0.38131E+00, 0.38346E+00, & - & 0.38560E+00, 0.38773E+00, 0.38987E+00, 0.39199E+00, 0.39412E+00, & - & 0.39624E+00, 0.39836E+00, 0.40047E+00, 0.40258E+00, 0.40469E+00/ - - DATA (BNC09M(I),I=301,400)/ & - & 0.40679E+00, 0.40889E+00, 0.41099E+00, 0.41308E+00, 0.41517E+00, & - & 0.41725E+00, 0.41933E+00, 0.42141E+00, 0.42349E+00, 0.42556E+00, & - & 0.42763E+00, 0.42969E+00, 0.43175E+00, 0.43381E+00, 0.43586E+00, & - & 0.43791E+00, 0.43996E+00, 0.44200E+00, 0.44404E+00, 0.44608E+00, & - & 0.44811E+00, 0.45014E+00, 0.45217E+00, 0.45419E+00, 0.45621E+00, & - & 0.45823E+00, 0.46024E+00, 0.46225E+00, 0.46426E+00, 0.46626E+00, & - & 0.46826E+00, 0.47026E+00, 0.47225E+00, 0.47424E+00, 0.47623E+00, & - & 0.47821E+00, 0.48020E+00, 0.48217E+00, 0.48415E+00, 0.48612E+00, & - & 0.48809E+00, 0.49005E+00, 0.49202E+00, 0.49397E+00, 0.49593E+00, & - & 0.49788E+00, 0.49983E+00, 0.50178E+00, 0.50372E+00, 0.50566E+00, & - & 0.50760E+00, 0.50954E+00, 0.51147E+00, 0.51340E+00, 0.51532E+00, & - & 0.51725E+00, 0.51917E+00, 0.52108E+00, 0.52300E+00, 0.52491E+00, & - & 0.52682E+00, 0.52872E+00, 0.53062E+00, 0.53252E+00, 0.53442E+00, & - & 0.53631E+00, 0.53820E+00, 0.54009E+00, 0.54198E+00, 0.54386E+00, & - & 0.54574E+00, 0.54761E+00, 0.54949E+00, 0.55136E+00, 0.55323E+00, & - & 0.55509E+00, 0.55696E+00, 0.55882E+00, 0.56067E+00, 0.56253E+00, & - & 0.56438E+00, 0.56623E+00, 0.56807E+00, 0.56992E+00, 0.57176E+00, & - & 0.57360E+00, 0.57543E+00, 0.57726E+00, 0.57909E+00, 0.58092E+00, & - & 0.58275E+00, 0.58457E+00, 0.58639E+00, 0.58821E+00, 0.59002E+00, & - & 0.59183E+00, 0.59364E+00, 0.59545E+00, 0.59725E+00, 0.59905E+00/ - - DATA (BNC09M(I),I=401,500)/ & - & 0.60085E+00, 0.60265E+00, 0.60444E+00, 0.60623E+00, 0.60802E+00, & - & 0.60981E+00, 0.61159E+00, 0.61337E+00, 0.61515E+00, 0.61693E+00, & - & 0.61870E+00, 0.62047E+00, 0.62224E+00, 0.62401E+00, 0.62577E+00, & - & 0.62753E+00, 0.62929E+00, 0.63105E+00, 0.63280E+00, 0.63455E+00, & - & 0.63630E+00, 0.63805E+00, 0.63980E+00, 0.64154E+00, 0.64328E+00, & - & 0.64501E+00, 0.64675E+00, 0.64848E+00, 0.65021E+00, 0.65194E+00, & - & 0.65367E+00, 0.65539E+00, 0.65711E+00, 0.65883E+00, 0.66055E+00, & - & 0.66226E+00, 0.66397E+00, 0.66568E+00, 0.66739E+00, 0.66909E+00, & - & 0.67080E+00, 0.67250E+00, 0.67419E+00, 0.67589E+00, 0.67758E+00, & - & 0.67928E+00, 0.68096E+00, 0.68265E+00, 0.68434E+00, 0.68602E+00, & - & 0.68770E+00, 0.68938E+00, 0.69105E+00, 0.69273E+00, 0.69440E+00, & - & 0.69607E+00, 0.69774E+00, 0.69940E+00, 0.70106E+00, 0.70273E+00, & - & 0.70438E+00, 0.70604E+00, 0.70770E+00, 0.70935E+00, 0.71100E+00, & - & 0.71265E+00, 0.71429E+00, 0.71594E+00, 0.71758E+00, 0.71922E+00, & - & 0.72086E+00, 0.72249E+00, 0.72413E+00, 0.72576E+00, 0.72739E+00, & - & 0.72901E+00, 0.73064E+00, 0.73226E+00, 0.73388E+00, 0.73550E+00, & - & 0.73712E+00, 0.73874E+00, 0.74035E+00, 0.74196E+00, 0.74357E+00, & - & 0.74518E+00, 0.74678E+00, 0.74839E+00, 0.74999E+00, 0.75159E+00, & - & 0.75318E+00, 0.75478E+00, 0.75637E+00, 0.75796E+00, 0.75955E+00, & - & 0.76114E+00, 0.76273E+00, 0.76431E+00, 0.76589E+00, 0.76747E+00/ - - DATA (BNC09M(I),I=501,600)/ & - & 0.76905E+00, 0.77063E+00, 0.77220E+00, 0.77377E+00, 0.77534E+00, & - & 0.77691E+00, 0.77848E+00, 0.78004E+00, 0.78161E+00, 0.78317E+00, & - & 0.78473E+00, 0.78629E+00, 0.78784E+00, 0.78939E+00, 0.79095E+00, & - & 0.79250E+00, 0.79404E+00, 0.79559E+00, 0.79714E+00, 0.79868E+00, & - & 0.80022E+00, 0.80176E+00, 0.80330E+00, 0.80483E+00, 0.80636E+00, & - & 0.80790E+00, 0.80943E+00, 0.81096E+00, 0.81248E+00, 0.81401E+00, & - & 0.81553E+00, 0.81705E+00, 0.81857E+00, 0.82009E+00, 0.82160E+00, & - & 0.82312E+00, 0.82463E+00, 0.82614E+00, 0.82765E+00, 0.82916E+00, & - & 0.83066E+00, 0.83217E+00, 0.83367E+00, 0.83517E+00, 0.83667E+00, & - & 0.83817E+00, 0.83966E+00, 0.84116E+00, 0.84265E+00, 0.84414E+00, & - & 0.84563E+00, 0.84711E+00, 0.84860E+00, 0.85008E+00, 0.85157E+00, & - & 0.85305E+00, 0.85452E+00, 0.85600E+00, 0.85748E+00, 0.85895E+00, & - & 0.86042E+00, 0.86189E+00, 0.86336E+00, 0.86483E+00, 0.86629E+00, & - & 0.86776E+00, 0.86922E+00, 0.87068E+00, 0.87214E+00, 0.87360E+00, & - & 0.87506E+00, 0.87651E+00, 0.87796E+00, 0.87941E+00, 0.88086E+00, & - & 0.88231E+00, 0.88376E+00, 0.88520E+00, 0.88665E+00, 0.88809E+00, & - & 0.88953E+00, 0.89097E+00, 0.89240E+00, 0.89384E+00, 0.89527E+00, & - & 0.89671E+00, 0.89814E+00, 0.89957E+00, 0.90099E+00, 0.90242E+00, & - & 0.90385E+00, 0.90527E+00, 0.90669E+00, 0.90811E+00, 0.90953E+00, & - & 0.91095E+00, 0.91236E+00, 0.91378E+00, 0.91519E+00, 0.91660E+00/ - - DATA (BNC09M(I),I=601,700)/ & - & 0.93176E+00, 0.94563E+00, 0.95937E+00, 0.97297E+00, 0.98643E+00, & - & 0.99976E+00, 0.10130E+01, 0.10260E+01, 0.10390E+01, 0.10518E+01, & - & 0.10645E+01, 0.10771E+01, 0.10896E+01, 0.11020E+01, 0.11142E+01, & - & 0.11264E+01, 0.11384E+01, 0.11504E+01, 0.11622E+01, 0.11740E+01, & - & 0.11856E+01, 0.11972E+01, 0.12086E+01, 0.12200E+01, 0.12313E+01, & - & 0.12425E+01, 0.12536E+01, 0.12646E+01, 0.12755E+01, 0.12864E+01, & - & 0.12971E+01, 0.13078E+01, 0.13184E+01, 0.13290E+01, 0.13394E+01, & - & 0.13498E+01, 0.13601E+01, 0.13704E+01, 0.13805E+01, 0.13906E+01, & - & 0.14006E+01, 0.14106E+01, 0.14205E+01, 0.14303E+01, 0.14401E+01, & - & 0.14498E+01, 0.14594E+01, 0.14690E+01, 0.14785E+01, 0.14880E+01, & - & 0.14974E+01, 0.15067E+01, 0.15160E+01, 0.15252E+01, 0.15344E+01, & - & 0.15435E+01, 0.15526E+01, 0.15616E+01, 0.15706E+01, 0.15795E+01, & - & 0.15883E+01, 0.15971E+01, 0.16059E+01, 0.16146E+01, 0.16233E+01, & - & 0.16319E+01, 0.16404E+01, 0.16489E+01, 0.16574E+01, 0.16658E+01, & - & 0.16742E+01, 0.16825E+01, 0.16908E+01, 0.16991E+01, 0.17073E+01, & - & 0.17155E+01, 0.17236E+01, 0.17317E+01, 0.17397E+01, 0.17477E+01, & - & 0.17557E+01, 0.17636E+01, 0.17715E+01, 0.17793E+01, 0.17871E+01, & - & 0.17949E+01, 0.18026E+01, 0.18103E+01, 0.18180E+01, 0.18256E+01, & - & 0.18332E+01, 0.18408E+01, 0.18483E+01, 0.18558E+01, 0.18632E+01, & - & 0.18707E+01, 0.18780E+01, 0.18854E+01, 0.18927E+01, 0.19000E+01/ - - DATA (BNC09M(I),I=701,741)/ & - & 0.19073E+01, 0.19145E+01, 0.19217E+01, 0.19289E+01, 0.19360E+01, & - & 0.19431E+01, 0.19502E+01, 0.19572E+01, 0.19643E+01, 0.19713E+01, & - & 0.19782E+01, 0.19852E+01, 0.19921E+01, 0.19989E+01, 0.20058E+01, & - & 0.20126E+01, 0.20194E+01, 0.20262E+01, 0.20329E+01, 0.20397E+01, & - & 0.20464E+01, 0.20530E+01, 0.20597E+01, 0.20663E+01, 0.20729E+01, & - & 0.20794E+01, 0.20860E+01, 0.20925E+01, 0.20990E+01, 0.21055E+01, & - & 0.21119E+01, 0.21184E+01, 0.21248E+01, 0.21311E+01, 0.21375E+01, & - & 0.21438E+01, 0.21502E+01, 0.21564E+01, 0.21627E+01, 0.21690E+01, & - & 0.21752E+01 & - & / -! -! *** (H,NO3) -! - DATA (BNC10M(I),I=1,100)/ & - &-0.44117E-01,-0.91788E-01,-0.11327E+00,-0.12721E+00,-0.13727E+00, & - &-0.14491E+00,-0.15090E+00,-0.15568E+00,-0.15952E+00,-0.16263E+00, & - &-0.16514E+00,-0.16716E+00,-0.16876E+00,-0.17001E+00,-0.17095E+00, & - &-0.17163E+00,-0.17207E+00,-0.17231E+00,-0.17237E+00,-0.17227E+00, & - &-0.17202E+00,-0.17164E+00,-0.17114E+00,-0.17054E+00,-0.16983E+00, & - &-0.16904E+00,-0.16817E+00,-0.16723E+00,-0.16622E+00,-0.16515E+00, & - &-0.16402E+00,-0.16284E+00,-0.16161E+00,-0.16034E+00,-0.15903E+00, & - &-0.15768E+00,-0.15630E+00,-0.15489E+00,-0.15346E+00,-0.15199E+00, & - &-0.15051E+00,-0.14900E+00,-0.14747E+00,-0.14592E+00,-0.14436E+00, & - &-0.14278E+00,-0.14119E+00,-0.13959E+00,-0.13797E+00,-0.13635E+00, & - &-0.13471E+00,-0.13306E+00,-0.13141E+00,-0.12974E+00,-0.12807E+00, & - &-0.12639E+00,-0.12471E+00,-0.12301E+00,-0.12131E+00,-0.11961E+00, & - &-0.11789E+00,-0.11617E+00,-0.11445E+00,-0.11271E+00,-0.11097E+00, & - &-0.10922E+00,-0.10746E+00,-0.10570E+00,-0.10392E+00,-0.10214E+00, & - &-0.10035E+00,-0.98551E-01,-0.96741E-01,-0.94920E-01,-0.93090E-01, & - &-0.91248E-01,-0.89396E-01,-0.87532E-01,-0.85656E-01,-0.83769E-01, & - &-0.81869E-01,-0.79957E-01,-0.78032E-01,-0.76093E-01,-0.74142E-01, & - &-0.72178E-01,-0.70201E-01,-0.68210E-01,-0.66206E-01,-0.64188E-01, & - &-0.62157E-01,-0.60114E-01,-0.58057E-01,-0.55987E-01,-0.53905E-01, & - &-0.51810E-01,-0.49703E-01,-0.47584E-01,-0.45454E-01,-0.43312E-01/ - - DATA (BNC10M(I),I=101,200)/ & - &-0.41159E-01,-0.38996E-01,-0.36823E-01,-0.34640E-01,-0.32448E-01, & - &-0.30246E-01,-0.28037E-01,-0.25819E-01,-0.23593E-01,-0.21360E-01, & - &-0.19121E-01,-0.16875E-01,-0.14623E-01,-0.12366E-01,-0.10103E-01, & - &-0.78360E-02,-0.55644E-02,-0.32889E-02,-0.10096E-02, 0.12729E-02, & - & 0.35583E-02, 0.58464E-02, 0.81368E-02, 0.10429E-01, 0.12723E-01, & - & 0.15019E-01, 0.17316E-01, 0.19614E-01, 0.21913E-01, 0.24212E-01, & - & 0.26512E-01, 0.28812E-01, 0.31112E-01, 0.33412E-01, 0.35712E-01, & - & 0.38011E-01, 0.40310E-01, 0.42608E-01, 0.44905E-01, 0.47202E-01, & - & 0.49497E-01, 0.51792E-01, 0.54085E-01, 0.56377E-01, 0.58668E-01, & - & 0.60958E-01, 0.63246E-01, 0.65533E-01, 0.67818E-01, 0.70101E-01, & - & 0.72383E-01, 0.74663E-01, 0.76942E-01, 0.79218E-01, 0.81493E-01, & - & 0.83766E-01, 0.86037E-01, 0.88307E-01, 0.90574E-01, 0.92839E-01, & - & 0.95102E-01, 0.97364E-01, 0.99623E-01, 0.10188E+00, 0.10413E+00, & - & 0.10639E+00, 0.10864E+00, 0.11089E+00, 0.11313E+00, 0.11538E+00, & - & 0.11762E+00, 0.11986E+00, 0.12210E+00, 0.12433E+00, 0.12656E+00, & - & 0.12879E+00, 0.13102E+00, 0.13325E+00, 0.13547E+00, 0.13769E+00, & - & 0.13991E+00, 0.14213E+00, 0.14434E+00, 0.14655E+00, 0.14876E+00, & - & 0.15096E+00, 0.15317E+00, 0.15537E+00, 0.15757E+00, 0.15976E+00, & - & 0.16196E+00, 0.16415E+00, 0.16634E+00, 0.16852E+00, 0.17071E+00, & - & 0.17289E+00, 0.17506E+00, 0.17724E+00, 0.17941E+00, 0.18158E+00/ - - DATA (BNC10M(I),I=201,300)/ & - & 0.18375E+00, 0.18591E+00, 0.18808E+00, 0.19024E+00, 0.19239E+00, & - & 0.19455E+00, 0.19670E+00, 0.19885E+00, 0.20099E+00, 0.20314E+00, & - & 0.20528E+00, 0.20742E+00, 0.20955E+00, 0.21168E+00, 0.21381E+00, & - & 0.21594E+00, 0.21807E+00, 0.22019E+00, 0.22231E+00, 0.22442E+00, & - & 0.22654E+00, 0.22865E+00, 0.23076E+00, 0.23286E+00, 0.23497E+00, & - & 0.23707E+00, 0.23916E+00, 0.24126E+00, 0.24335E+00, 0.24544E+00, & - & 0.24753E+00, 0.24961E+00, 0.25169E+00, 0.25377E+00, 0.25584E+00, & - & 0.25792E+00, 0.25999E+00, 0.26205E+00, 0.26412E+00, 0.26618E+00, & - & 0.26824E+00, 0.27029E+00, 0.27235E+00, 0.27440E+00, 0.27645E+00, & - & 0.27849E+00, 0.28054E+00, 0.28257E+00, 0.28461E+00, 0.28665E+00, & - & 0.28868E+00, 0.29071E+00, 0.29273E+00, 0.29476E+00, 0.29678E+00, & - & 0.29880E+00, 0.30081E+00, 0.30282E+00, 0.30483E+00, 0.30684E+00, & - & 0.30884E+00, 0.31085E+00, 0.31285E+00, 0.31484E+00, 0.31684E+00, & - & 0.31883E+00, 0.32081E+00, 0.32280E+00, 0.32478E+00, 0.32676E+00, & - & 0.32874E+00, 0.33072E+00, 0.33269E+00, 0.33466E+00, 0.33662E+00, & - & 0.33859E+00, 0.34055E+00, 0.34251E+00, 0.34446E+00, 0.34642E+00, & - & 0.34837E+00, 0.35032E+00, 0.35226E+00, 0.35420E+00, 0.35615E+00, & - & 0.35808E+00, 0.36002E+00, 0.36195E+00, 0.36388E+00, 0.36581E+00, & - & 0.36773E+00, 0.36965E+00, 0.37157E+00, 0.37349E+00, 0.37540E+00, & - & 0.37731E+00, 0.37922E+00, 0.38113E+00, 0.38303E+00, 0.38494E+00/ - - DATA (BNC10M(I),I=301,400)/ & - & 0.38683E+00, 0.38873E+00, 0.39062E+00, 0.39251E+00, 0.39440E+00, & - & 0.39629E+00, 0.39817E+00, 0.40005E+00, 0.40193E+00, 0.40381E+00, & - & 0.40568E+00, 0.40755E+00, 0.40942E+00, 0.41128E+00, 0.41315E+00, & - & 0.41501E+00, 0.41687E+00, 0.41872E+00, 0.42057E+00, 0.42242E+00, & - & 0.42427E+00, 0.42612E+00, 0.42796E+00, 0.42980E+00, 0.43164E+00, & - & 0.43348E+00, 0.43531E+00, 0.43714E+00, 0.43897E+00, 0.44079E+00, & - & 0.44262E+00, 0.44444E+00, 0.44626E+00, 0.44807E+00, 0.44989E+00, & - & 0.45170E+00, 0.45351E+00, 0.45532E+00, 0.45712E+00, 0.45892E+00, & - & 0.46072E+00, 0.46252E+00, 0.46431E+00, 0.46611E+00, 0.46790E+00, & - & 0.46968E+00, 0.47147E+00, 0.47325E+00, 0.47503E+00, 0.47681E+00, & - & 0.47859E+00, 0.48036E+00, 0.48213E+00, 0.48390E+00, 0.48567E+00, & - & 0.48743E+00, 0.48919E+00, 0.49095E+00, 0.49271E+00, 0.49446E+00, & - & 0.49622E+00, 0.49797E+00, 0.49972E+00, 0.50146E+00, 0.50321E+00, & - & 0.50495E+00, 0.50669E+00, 0.50842E+00, 0.51016E+00, 0.51189E+00, & - & 0.51362E+00, 0.51535E+00, 0.51707E+00, 0.51880E+00, 0.52052E+00, & - & 0.52224E+00, 0.52395E+00, 0.52567E+00, 0.52738E+00, 0.52909E+00, & - & 0.53080E+00, 0.53251E+00, 0.53421E+00, 0.53591E+00, 0.53761E+00, & - & 0.53931E+00, 0.54100E+00, 0.54269E+00, 0.54439E+00, 0.54607E+00, & - & 0.54776E+00, 0.54944E+00, 0.55113E+00, 0.55281E+00, 0.55448E+00, & - & 0.55616E+00, 0.55783E+00, 0.55951E+00, 0.56118E+00, 0.56284E+00/ - - DATA (BNC10M(I),I=401,500)/ & - & 0.56451E+00, 0.56617E+00, 0.56783E+00, 0.56949E+00, 0.57115E+00, & - & 0.57280E+00, 0.57446E+00, 0.57611E+00, 0.57775E+00, 0.57940E+00, & - & 0.58105E+00, 0.58269E+00, 0.58433E+00, 0.58597E+00, 0.58760E+00, & - & 0.58924E+00, 0.59087E+00, 0.59250E+00, 0.59413E+00, 0.59576E+00, & - & 0.59738E+00, 0.59900E+00, 0.60062E+00, 0.60224E+00, 0.60386E+00, & - & 0.60547E+00, 0.60708E+00, 0.60869E+00, 0.61030E+00, 0.61191E+00, & - & 0.61351E+00, 0.61512E+00, 0.61672E+00, 0.61832E+00, 0.61991E+00, & - & 0.62151E+00, 0.62310E+00, 0.62469E+00, 0.62628E+00, 0.62787E+00, & - & 0.62945E+00, 0.63104E+00, 0.63262E+00, 0.63420E+00, 0.63577E+00, & - & 0.63735E+00, 0.63892E+00, 0.64050E+00, 0.64207E+00, 0.64363E+00, & - & 0.64520E+00, 0.64676E+00, 0.64833E+00, 0.64989E+00, 0.65145E+00, & - & 0.65300E+00, 0.65456E+00, 0.65611E+00, 0.65766E+00, 0.65921E+00, & - & 0.66076E+00, 0.66231E+00, 0.66385E+00, 0.66539E+00, 0.66693E+00, & - & 0.66847E+00, 0.67001E+00, 0.67154E+00, 0.67308E+00, 0.67461E+00, & - & 0.67614E+00, 0.67767E+00, 0.67919E+00, 0.68072E+00, 0.68224E+00, & - & 0.68376E+00, 0.68528E+00, 0.68680E+00, 0.68831E+00, 0.68983E+00, & - & 0.69134E+00, 0.69285E+00, 0.69436E+00, 0.69587E+00, 0.69737E+00, & - & 0.69887E+00, 0.70038E+00, 0.70188E+00, 0.70337E+00, 0.70487E+00, & - & 0.70636E+00, 0.70786E+00, 0.70935E+00, 0.71084E+00, 0.71233E+00, & - & 0.71381E+00, 0.71530E+00, 0.71678E+00, 0.71826E+00, 0.71974E+00/ - - DATA (BNC10M(I),I=501,600)/ & - & 0.72122E+00, 0.72270E+00, 0.72417E+00, 0.72564E+00, 0.72712E+00, & - & 0.72859E+00, 0.73005E+00, 0.73152E+00, 0.73298E+00, 0.73445E+00, & - & 0.73591E+00, 0.73737E+00, 0.73883E+00, 0.74028E+00, 0.74174E+00, & - & 0.74319E+00, 0.74464E+00, 0.74609E+00, 0.74754E+00, 0.74899E+00, & - & 0.75043E+00, 0.75188E+00, 0.75332E+00, 0.75476E+00, 0.75620E+00, & - & 0.75764E+00, 0.75907E+00, 0.76051E+00, 0.76194E+00, 0.76337E+00, & - & 0.76480E+00, 0.76623E+00, 0.76766E+00, 0.76908E+00, 0.77050E+00, & - & 0.77193E+00, 0.77335E+00, 0.77476E+00, 0.77618E+00, 0.77760E+00, & - & 0.77901E+00, 0.78042E+00, 0.78183E+00, 0.78324E+00, 0.78465E+00, & - & 0.78606E+00, 0.78746E+00, 0.78887E+00, 0.79027E+00, 0.79167E+00, & - & 0.79307E+00, 0.79447E+00, 0.79586E+00, 0.79726E+00, 0.79865E+00, & - & 0.80004E+00, 0.80143E+00, 0.80282E+00, 0.80421E+00, 0.80559E+00, & - & 0.80698E+00, 0.80836E+00, 0.80974E+00, 0.81112E+00, 0.81250E+00, & - & 0.81388E+00, 0.81525E+00, 0.81663E+00, 0.81800E+00, 0.81937E+00, & - & 0.82074E+00, 0.82211E+00, 0.82348E+00, 0.82484E+00, 0.82621E+00, & - & 0.82757E+00, 0.82893E+00, 0.83029E+00, 0.83165E+00, 0.83301E+00, & - & 0.83436E+00, 0.83572E+00, 0.83707E+00, 0.83842E+00, 0.83977E+00, & - & 0.84112E+00, 0.84247E+00, 0.84381E+00, 0.84516E+00, 0.84650E+00, & - & 0.84784E+00, 0.84918E+00, 0.85052E+00, 0.85186E+00, 0.85320E+00, & - & 0.85453E+00, 0.85586E+00, 0.85720E+00, 0.85853E+00, 0.85986E+00/ - - DATA (BNC10M(I),I=601,700)/ & - & 0.87414E+00, 0.88722E+00, 0.90017E+00, 0.91300E+00, 0.92570E+00, & - & 0.93828E+00, 0.95075E+00, 0.96310E+00, 0.97533E+00, 0.98746E+00, & - & 0.99947E+00, 0.10114E+01, 0.10232E+01, 0.10349E+01, 0.10465E+01, & - & 0.10580E+01, 0.10694E+01, 0.10807E+01, 0.10919E+01, 0.11030E+01, & - & 0.11141E+01, 0.11250E+01, 0.11358E+01, 0.11466E+01, 0.11573E+01, & - & 0.11679E+01, 0.11784E+01, 0.11889E+01, 0.11992E+01, 0.12095E+01, & - & 0.12197E+01, 0.12299E+01, 0.12399E+01, 0.12499E+01, 0.12598E+01, & - & 0.12697E+01, 0.12795E+01, 0.12892E+01, 0.12988E+01, 0.13084E+01, & - & 0.13179E+01, 0.13274E+01, 0.13367E+01, 0.13461E+01, 0.13553E+01, & - & 0.13645E+01, 0.13737E+01, 0.13828E+01, 0.13918E+01, 0.14008E+01, & - & 0.14097E+01, 0.14186E+01, 0.14274E+01, 0.14362E+01, 0.14449E+01, & - & 0.14535E+01, 0.14621E+01, 0.14707E+01, 0.14792E+01, 0.14876E+01, & - & 0.14960E+01, 0.15044E+01, 0.15127E+01, 0.15210E+01, 0.15292E+01, & - & 0.15374E+01, 0.15455E+01, 0.15536E+01, 0.15616E+01, 0.15696E+01, & - & 0.15776E+01, 0.15855E+01, 0.15934E+01, 0.16012E+01, 0.16090E+01, & - & 0.16168E+01, 0.16245E+01, 0.16322E+01, 0.16398E+01, 0.16474E+01, & - & 0.16550E+01, 0.16625E+01, 0.16700E+01, 0.16774E+01, 0.16849E+01, & - & 0.16922E+01, 0.16996E+01, 0.17069E+01, 0.17142E+01, 0.17214E+01, & - & 0.17286E+01, 0.17358E+01, 0.17430E+01, 0.17501E+01, 0.17572E+01, & - & 0.17642E+01, 0.17712E+01, 0.17782E+01, 0.17852E+01, 0.17921E+01/ - - DATA (BNC10M(I),I=701,741)/ & - & 0.17990E+01, 0.18059E+01, 0.18127E+01, 0.18195E+01, 0.18263E+01, & - & 0.18331E+01, 0.18398E+01, 0.18465E+01, 0.18532E+01, 0.18598E+01, & - & 0.18664E+01, 0.18730E+01, 0.18796E+01, 0.18861E+01, 0.18926E+01, & - & 0.18991E+01, 0.19056E+01, 0.19120E+01, 0.19184E+01, 0.19248E+01, & - & 0.19312E+01, 0.19375E+01, 0.19439E+01, 0.19502E+01, 0.19564E+01, & - & 0.19627E+01, 0.19689E+01, 0.19751E+01, 0.19813E+01, 0.19874E+01, & - & 0.19936E+01, 0.19997E+01, 0.20058E+01, 0.20118E+01, 0.20179E+01, & - & 0.20239E+01, 0.20299E+01, 0.20359E+01, 0.20419E+01, 0.20478E+01, & - & 0.20537E+01 & - & / -! -! *** (H,Cl) -! - DATA (BNC11M(I),I=1,100)/ & - &-0.43207E-01,-0.87312E-01,-0.10580E+00,-0.11699E+00,-0.12443E+00, & - &-0.12956E+00,-0.13308E+00,-0.13541E+00,-0.13684E+00,-0.13754E+00, & - &-0.13763E+00,-0.13723E+00,-0.13639E+00,-0.13519E+00,-0.13367E+00, & - &-0.13185E+00,-0.12978E+00,-0.12749E+00,-0.12498E+00,-0.12229E+00, & - &-0.11943E+00,-0.11640E+00,-0.11324E+00,-0.10994E+00,-0.10651E+00, & - &-0.10298E+00,-0.99331E-01,-0.95587E-01,-0.91752E-01,-0.87830E-01, & - &-0.83828E-01,-0.79751E-01,-0.75605E-01,-0.71393E-01,-0.67121E-01, & - &-0.62791E-01,-0.58408E-01,-0.53976E-01,-0.49497E-01,-0.44974E-01, & - &-0.40412E-01,-0.35811E-01,-0.31175E-01,-0.26506E-01,-0.21806E-01, & - &-0.17077E-01,-0.12322E-01,-0.75410E-02,-0.27366E-02, 0.20900E-02, & - & 0.69376E-02, 0.11805E-01, 0.16691E-01, 0.21595E-01, 0.26516E-01, & - & 0.31453E-01, 0.36406E-01, 0.41374E-01, 0.46358E-01, 0.51356E-01, & - & 0.56370E-01, 0.61398E-01, 0.66441E-01, 0.71499E-01, 0.76572E-01, & - & 0.81661E-01, 0.86766E-01, 0.91888E-01, 0.97027E-01, 0.10218E+00, & - & 0.10736E+00, 0.11255E+00, 0.11777E+00, 0.12300E+00, 0.12825E+00, & - & 0.13353E+00, 0.13883E+00, 0.14415E+00, 0.14950E+00, 0.15487E+00, & - & 0.16026E+00, 0.16568E+00, 0.17113E+00, 0.17660E+00, 0.18210E+00, & - & 0.18763E+00, 0.19318E+00, 0.19876E+00, 0.20437E+00, 0.21000E+00, & - & 0.21567E+00, 0.22136E+00, 0.22707E+00, 0.23281E+00, 0.23858E+00, & - & 0.24438E+00, 0.25020E+00, 0.25604E+00, 0.26190E+00, 0.26779E+00/ - - DATA (BNC11M(I),I=101,200)/ & - & 0.27370E+00, 0.27964E+00, 0.28559E+00, 0.29156E+00, 0.29755E+00, & - & 0.30356E+00, 0.30958E+00, 0.31562E+00, 0.32167E+00, 0.32774E+00, & - & 0.33382E+00, 0.33991E+00, 0.34601E+00, 0.35211E+00, 0.35823E+00, & - & 0.36435E+00, 0.37048E+00, 0.37662E+00, 0.38276E+00, 0.38890E+00, & - & 0.39505E+00, 0.40120E+00, 0.40734E+00, 0.41349E+00, 0.41964E+00, & - & 0.42579E+00, 0.43194E+00, 0.43809E+00, 0.44423E+00, 0.45037E+00, & - & 0.45651E+00, 0.46264E+00, 0.46877E+00, 0.47489E+00, 0.48101E+00, & - & 0.48712E+00, 0.49323E+00, 0.49933E+00, 0.50543E+00, 0.51151E+00, & - & 0.51759E+00, 0.52367E+00, 0.52973E+00, 0.53579E+00, 0.54185E+00, & - & 0.54789E+00, 0.55392E+00, 0.55995E+00, 0.56597E+00, 0.57198E+00, & - & 0.57798E+00, 0.58398E+00, 0.58996E+00, 0.59594E+00, 0.60190E+00, & - & 0.60786E+00, 0.61381E+00, 0.61975E+00, 0.62568E+00, 0.63160E+00, & - & 0.63751E+00, 0.64341E+00, 0.64930E+00, 0.65519E+00, 0.66106E+00, & - & 0.66692E+00, 0.67277E+00, 0.67862E+00, 0.68445E+00, 0.69028E+00, & - & 0.69609E+00, 0.70189E+00, 0.70769E+00, 0.71347E+00, 0.71925E+00, & - & 0.72501E+00, 0.73076E+00, 0.73651E+00, 0.74224E+00, 0.74796E+00, & - & 0.75368E+00, 0.75938E+00, 0.76507E+00, 0.77076E+00, 0.77643E+00, & - & 0.78209E+00, 0.78774E+00, 0.79339E+00, 0.79902E+00, 0.80464E+00, & - & 0.81025E+00, 0.81585E+00, 0.82144E+00, 0.82702E+00, 0.83259E+00, & - & 0.83815E+00, 0.84370E+00, 0.84924E+00, 0.85477E+00, 0.86029E+00/ - - DATA (BNC11M(I),I=201,300)/ & - & 0.86580E+00, 0.87129E+00, 0.87678E+00, 0.88226E+00, 0.88773E+00, & - & 0.89318E+00, 0.89863E+00, 0.90407E+00, 0.90949E+00, 0.91491E+00, & - & 0.92032E+00, 0.92571E+00, 0.93110E+00, 0.93647E+00, 0.94184E+00, & - & 0.94720E+00, 0.95254E+00, 0.95788E+00, 0.96320E+00, 0.96852E+00, & - & 0.97382E+00, 0.97912E+00, 0.98440E+00, 0.98968E+00, 0.99494E+00, & - & 0.10002E+01, 0.10054E+01, 0.10107E+01, 0.10159E+01, 0.10211E+01, & - & 0.10263E+01, 0.10315E+01, 0.10367E+01, 0.10419E+01, 0.10470E+01, & - & 0.10522E+01, 0.10574E+01, 0.10625E+01, 0.10676E+01, 0.10727E+01, & - & 0.10778E+01, 0.10829E+01, 0.10880E+01, 0.10931E+01, 0.10982E+01, & - & 0.11032E+01, 0.11083E+01, 0.11133E+01, 0.11184E+01, 0.11234E+01, & - & 0.11284E+01, 0.11334E+01, 0.11384E+01, 0.11434E+01, 0.11484E+01, & - & 0.11533E+01, 0.11583E+01, 0.11632E+01, 0.11682E+01, 0.11731E+01, & - & 0.11780E+01, 0.11829E+01, 0.11878E+01, 0.11927E+01, 0.11976E+01, & - & 0.12025E+01, 0.12074E+01, 0.12122E+01, 0.12171E+01, 0.12219E+01, & - & 0.12267E+01, 0.12315E+01, 0.12364E+01, 0.12412E+01, 0.12460E+01, & - & 0.12507E+01, 0.12555E+01, 0.12603E+01, 0.12650E+01, 0.12698E+01, & - & 0.12745E+01, 0.12793E+01, 0.12840E+01, 0.12887E+01, 0.12934E+01, & - & 0.12981E+01, 0.13028E+01, 0.13075E+01, 0.13122E+01, 0.13168E+01, & - & 0.13215E+01, 0.13261E+01, 0.13308E+01, 0.13354E+01, 0.13400E+01, & - & 0.13447E+01, 0.13493E+01, 0.13539E+01, 0.13585E+01, 0.13630E+01/ - - DATA (BNC11M(I),I=301,400)/ & - & 0.13676E+01, 0.13722E+01, 0.13767E+01, 0.13813E+01, 0.13858E+01, & - & 0.13904E+01, 0.13949E+01, 0.13994E+01, 0.14039E+01, 0.14084E+01, & - & 0.14129E+01, 0.14174E+01, 0.14219E+01, 0.14264E+01, 0.14308E+01, & - & 0.14353E+01, 0.14397E+01, 0.14442E+01, 0.14486E+01, 0.14530E+01, & - & 0.14574E+01, 0.14618E+01, 0.14662E+01, 0.14706E+01, 0.14750E+01, & - & 0.14794E+01, 0.14838E+01, 0.14881E+01, 0.14925E+01, 0.14968E+01, & - & 0.15012E+01, 0.15055E+01, 0.15099E+01, 0.15142E+01, 0.15185E+01, & - & 0.15228E+01, 0.15271E+01, 0.15314E+01, 0.15357E+01, 0.15399E+01, & - & 0.15442E+01, 0.15485E+01, 0.15527E+01, 0.15570E+01, 0.15612E+01, & - & 0.15654E+01, 0.15697E+01, 0.15739E+01, 0.15781E+01, 0.15823E+01, & - & 0.15865E+01, 0.15907E+01, 0.15949E+01, 0.15991E+01, 0.16032E+01, & - & 0.16074E+01, 0.16115E+01, 0.16157E+01, 0.16198E+01, 0.16240E+01, & - & 0.16281E+01, 0.16322E+01, 0.16363E+01, 0.16405E+01, 0.16446E+01, & - & 0.16487E+01, 0.16527E+01, 0.16568E+01, 0.16609E+01, 0.16650E+01, & - & 0.16690E+01, 0.16731E+01, 0.16771E+01, 0.16812E+01, 0.16852E+01, & - & 0.16893E+01, 0.16933E+01, 0.16973E+01, 0.17013E+01, 0.17053E+01, & - & 0.17093E+01, 0.17133E+01, 0.17173E+01, 0.17213E+01, 0.17252E+01, & - & 0.17292E+01, 0.17332E+01, 0.17371E+01, 0.17411E+01, 0.17450E+01, & - & 0.17490E+01, 0.17529E+01, 0.17568E+01, 0.17607E+01, 0.17646E+01, & - & 0.17685E+01, 0.17724E+01, 0.17763E+01, 0.17802E+01, 0.17841E+01/ - - DATA (BNC11M(I),I=401,500)/ & - & 0.17880E+01, 0.17919E+01, 0.17957E+01, 0.17996E+01, 0.18034E+01, & - & 0.18073E+01, 0.18111E+01, 0.18150E+01, 0.18188E+01, 0.18226E+01, & - & 0.18264E+01, 0.18302E+01, 0.18340E+01, 0.18378E+01, 0.18416E+01, & - & 0.18454E+01, 0.18492E+01, 0.18530E+01, 0.18568E+01, 0.18605E+01, & - & 0.18643E+01, 0.18680E+01, 0.18718E+01, 0.18755E+01, 0.18793E+01, & - & 0.18830E+01, 0.18867E+01, 0.18904E+01, 0.18942E+01, 0.18979E+01, & - & 0.19016E+01, 0.19053E+01, 0.19090E+01, 0.19127E+01, 0.19163E+01, & - & 0.19200E+01, 0.19237E+01, 0.19274E+01, 0.19310E+01, 0.19347E+01, & - & 0.19383E+01, 0.19420E+01, 0.19456E+01, 0.19493E+01, 0.19529E+01, & - & 0.19565E+01, 0.19601E+01, 0.19637E+01, 0.19674E+01, 0.19710E+01, & - & 0.19746E+01, 0.19782E+01, 0.19817E+01, 0.19853E+01, 0.19889E+01, & - & 0.19925E+01, 0.19960E+01, 0.19996E+01, 0.20032E+01, 0.20067E+01, & - & 0.20103E+01, 0.20138E+01, 0.20174E+01, 0.20209E+01, 0.20244E+01, & - & 0.20279E+01, 0.20315E+01, 0.20350E+01, 0.20385E+01, 0.20420E+01, & - & 0.20455E+01, 0.20490E+01, 0.20525E+01, 0.20560E+01, 0.20594E+01, & - & 0.20629E+01, 0.20664E+01, 0.20698E+01, 0.20733E+01, 0.20768E+01, & - & 0.20802E+01, 0.20837E+01, 0.20871E+01, 0.20905E+01, 0.20940E+01, & - & 0.20974E+01, 0.21008E+01, 0.21042E+01, 0.21077E+01, 0.21111E+01, & - & 0.21145E+01, 0.21179E+01, 0.21213E+01, 0.21247E+01, 0.21280E+01, & - & 0.21314E+01, 0.21348E+01, 0.21382E+01, 0.21415E+01, 0.21449E+01/ - - DATA (BNC11M(I),I=501,600)/ & - & 0.21483E+01, 0.21516E+01, 0.21550E+01, 0.21583E+01, 0.21617E+01, & - & 0.21650E+01, 0.21683E+01, 0.21717E+01, 0.21750E+01, 0.21783E+01, & - & 0.21816E+01, 0.21849E+01, 0.21882E+01, 0.21915E+01, 0.21948E+01, & - & 0.21981E+01, 0.22014E+01, 0.22047E+01, 0.22080E+01, 0.22113E+01, & - & 0.22145E+01, 0.22178E+01, 0.22211E+01, 0.22243E+01, 0.22276E+01, & - & 0.22308E+01, 0.22341E+01, 0.22373E+01, 0.22406E+01, 0.22438E+01, & - & 0.22470E+01, 0.22503E+01, 0.22535E+01, 0.22567E+01, 0.22599E+01, & - & 0.22631E+01, 0.22663E+01, 0.22695E+01, 0.22727E+01, 0.22759E+01, & - & 0.22791E+01, 0.22823E+01, 0.22855E+01, 0.22887E+01, 0.22918E+01, & - & 0.22950E+01, 0.22982E+01, 0.23013E+01, 0.23045E+01, 0.23076E+01, & - & 0.23108E+01, 0.23139E+01, 0.23171E+01, 0.23202E+01, 0.23234E+01, & - & 0.23265E+01, 0.23296E+01, 0.23327E+01, 0.23359E+01, 0.23390E+01, & - & 0.23421E+01, 0.23452E+01, 0.23483E+01, 0.23514E+01, 0.23545E+01, & - & 0.23576E+01, 0.23607E+01, 0.23638E+01, 0.23668E+01, 0.23699E+01, & - & 0.23730E+01, 0.23761E+01, 0.23791E+01, 0.23822E+01, 0.23853E+01, & - & 0.23883E+01, 0.23914E+01, 0.23944E+01, 0.23975E+01, 0.24005E+01, & - & 0.24035E+01, 0.24066E+01, 0.24096E+01, 0.24126E+01, 0.24156E+01, & - & 0.24187E+01, 0.24217E+01, 0.24247E+01, 0.24277E+01, 0.24307E+01, & - & 0.24337E+01, 0.24367E+01, 0.24397E+01, 0.24427E+01, 0.24457E+01, & - & 0.24487E+01, 0.24516E+01, 0.24546E+01, 0.24576E+01, 0.24606E+01/ - - DATA (BNC11M(I),I=601,700)/ & - & 0.24924E+01, 0.25216E+01, 0.25504E+01, 0.25789E+01, 0.26071E+01, & - & 0.26349E+01, 0.26625E+01, 0.26898E+01, 0.27168E+01, 0.27435E+01, & - & 0.27699E+01, 0.27961E+01, 0.28220E+01, 0.28477E+01, 0.28731E+01, & - & 0.28982E+01, 0.29231E+01, 0.29478E+01, 0.29722E+01, 0.29965E+01, & - & 0.30205E+01, 0.30442E+01, 0.30678E+01, 0.30911E+01, 0.31143E+01, & - & 0.31372E+01, 0.31599E+01, 0.31825E+01, 0.32048E+01, 0.32270E+01, & - & 0.32490E+01, 0.32708E+01, 0.32924E+01, 0.33138E+01, 0.33351E+01, & - & 0.33562E+01, 0.33771E+01, 0.33979E+01, 0.34185E+01, 0.34389E+01, & - & 0.34592E+01, 0.34794E+01, 0.34993E+01, 0.35192E+01, 0.35389E+01, & - & 0.35584E+01, 0.35778E+01, 0.35971E+01, 0.36162E+01, 0.36352E+01, & - & 0.36541E+01, 0.36728E+01, 0.36914E+01, 0.37099E+01, 0.37282E+01, & - & 0.37465E+01, 0.37646E+01, 0.37826E+01, 0.38004E+01, 0.38182E+01, & - & 0.38358E+01, 0.38533E+01, 0.38707E+01, 0.38880E+01, 0.39052E+01, & - & 0.39223E+01, 0.39393E+01, 0.39562E+01, 0.39729E+01, 0.39896E+01, & - & 0.40062E+01, 0.40226E+01, 0.40390E+01, 0.40553E+01, 0.40715E+01, & - & 0.40876E+01, 0.41035E+01, 0.41194E+01, 0.41353E+01, 0.41510E+01, & - & 0.41666E+01, 0.41822E+01, 0.41976E+01, 0.42130E+01, 0.42283E+01, & - & 0.42435E+01, 0.42586E+01, 0.42737E+01, 0.42886E+01, 0.43035E+01, & - & 0.43183E+01, 0.43330E+01, 0.43477E+01, 0.43623E+01, 0.43768E+01, & - & 0.43912E+01, 0.44056E+01, 0.44198E+01, 0.44341E+01, 0.44482E+01/ - - DATA (BNC11M(I),I=701,741)/ & - & 0.44623E+01, 0.44763E+01, 0.44902E+01, 0.45041E+01, 0.45179E+01, & - & 0.45316E+01, 0.45453E+01, 0.45589E+01, 0.45724E+01, 0.45859E+01, & - & 0.45993E+01, 0.46126E+01, 0.46259E+01, 0.46391E+01, 0.46523E+01, & - & 0.46654E+01, 0.46785E+01, 0.46915E+01, 0.47044E+01, 0.47173E+01, & - & 0.47301E+01, 0.47428E+01, 0.47555E+01, 0.47682E+01, 0.47808E+01, & - & 0.47933E+01, 0.48058E+01, 0.48183E+01, 0.48306E+01, 0.48430E+01, & - & 0.48552E+01, 0.48675E+01, 0.48797E+01, 0.48918E+01, 0.49039E+01, & - & 0.49159E+01, 0.49279E+01, 0.49398E+01, 0.49517E+01, 0.49635E+01, & - & 0.49753E+01 & - & / -! -! *** NaHSO4 -! - DATA (BNC12M(I),I=1,100)/ & - &-0.43994E-01,-0.91554E-01,-0.11320E+00,-0.12742E+00,-0.13780E+00, & - &-0.14581E+00,-0.15217E+00,-0.15732E+00,-0.16153E+00,-0.16499E+00, & - &-0.16783E+00,-0.17017E+00,-0.17206E+00,-0.17357E+00,-0.17474E+00, & - &-0.17562E+00,-0.17624E+00,-0.17661E+00,-0.17677E+00,-0.17673E+00, & - &-0.17650E+00,-0.17610E+00,-0.17555E+00,-0.17485E+00,-0.17402E+00, & - &-0.17305E+00,-0.17197E+00,-0.17076E+00,-0.16946E+00,-0.16805E+00, & - &-0.16654E+00,-0.16494E+00,-0.16325E+00,-0.16148E+00,-0.15962E+00, & - &-0.15770E+00,-0.15570E+00,-0.15363E+00,-0.15149E+00,-0.14929E+00, & - &-0.14703E+00,-0.14471E+00,-0.14234E+00,-0.13991E+00,-0.13743E+00, & - &-0.13490E+00,-0.13232E+00,-0.12970E+00,-0.12704E+00,-0.12433E+00, & - &-0.12159E+00,-0.11880E+00,-0.11598E+00,-0.11312E+00,-0.11023E+00, & - &-0.10730E+00,-0.10434E+00,-0.10135E+00,-0.98326E-01,-0.95275E-01, & - &-0.92194E-01,-0.89084E-01,-0.85947E-01,-0.82782E-01,-0.79591E-01, & - &-0.76372E-01,-0.73128E-01,-0.69857E-01,-0.66561E-01,-0.63239E-01, & - &-0.59892E-01,-0.56519E-01,-0.53121E-01,-0.49698E-01,-0.46250E-01, & - &-0.42776E-01,-0.39277E-01,-0.35752E-01,-0.32203E-01,-0.28628E-01, & - &-0.25027E-01,-0.21401E-01,-0.17750E-01,-0.14074E-01,-0.10373E-01, & - &-0.66461E-02,-0.28948E-02, 0.88116E-03, 0.46816E-02, 0.85060E-02, & - & 0.12354E-01, 0.16226E-01, 0.20121E-01, 0.24038E-01, 0.27977E-01, & - & 0.31937E-01, 0.35918E-01, 0.39920E-01, 0.43941E-01, 0.47981E-01/ - - DATA (BNC12M(I),I=101,200)/ & - & 0.52038E-01, 0.56113E-01, 0.60205E-01, 0.64312E-01, 0.68434E-01, & - & 0.72570E-01, 0.76719E-01, 0.80880E-01, 0.85053E-01, 0.89237E-01, & - & 0.93430E-01, 0.97632E-01, 0.10184E+00, 0.10606E+00, 0.11028E+00, & - & 0.11451E+00, 0.11875E+00, 0.12299E+00, 0.12723E+00, 0.13148E+00, & - & 0.13572E+00, 0.13997E+00, 0.14422E+00, 0.14848E+00, 0.15273E+00, & - & 0.15698E+00, 0.16123E+00, 0.16548E+00, 0.16972E+00, 0.17397E+00, & - & 0.17821E+00, 0.18245E+00, 0.18668E+00, 0.19091E+00, 0.19514E+00, & - & 0.19936E+00, 0.20358E+00, 0.20780E+00, 0.21201E+00, 0.21621E+00, & - & 0.22041E+00, 0.22460E+00, 0.22879E+00, 0.23297E+00, 0.23715E+00, & - & 0.24132E+00, 0.24549E+00, 0.24964E+00, 0.25379E+00, 0.25794E+00, & - & 0.26208E+00, 0.26621E+00, 0.27034E+00, 0.27445E+00, 0.27857E+00, & - & 0.28267E+00, 0.28677E+00, 0.29086E+00, 0.29494E+00, 0.29902E+00, & - & 0.30309E+00, 0.30715E+00, 0.31121E+00, 0.31526E+00, 0.31930E+00, & - & 0.32333E+00, 0.32736E+00, 0.33138E+00, 0.33539E+00, 0.33940E+00, & - & 0.34340E+00, 0.34739E+00, 0.35137E+00, 0.35534E+00, 0.35931E+00, & - & 0.36327E+00, 0.36723E+00, 0.37117E+00, 0.37511E+00, 0.37904E+00, & - & 0.38297E+00, 0.38688E+00, 0.39079E+00, 0.39469E+00, 0.39859E+00, & - & 0.40248E+00, 0.40635E+00, 0.41023E+00, 0.41409E+00, 0.41795E+00, & - & 0.42180E+00, 0.42564E+00, 0.42948E+00, 0.43331E+00, 0.43713E+00, & - & 0.44094E+00, 0.44475E+00, 0.44854E+00, 0.45234E+00, 0.45612E+00/ - - DATA (BNC12M(I),I=201,300)/ & - & 0.45990E+00, 0.46367E+00, 0.46743E+00, 0.47119E+00, 0.47493E+00, & - & 0.47868E+00, 0.48241E+00, 0.48614E+00, 0.48986E+00, 0.49357E+00, & - & 0.49727E+00, 0.50097E+00, 0.50466E+00, 0.50835E+00, 0.51203E+00, & - & 0.51570E+00, 0.51936E+00, 0.52302E+00, 0.52667E+00, 0.53031E+00, & - & 0.53395E+00, 0.53757E+00, 0.54120E+00, 0.54481E+00, 0.54842E+00, & - & 0.55202E+00, 0.55562E+00, 0.55920E+00, 0.56279E+00, 0.56636E+00, & - & 0.56993E+00, 0.57349E+00, 0.57704E+00, 0.58059E+00, 0.58413E+00, & - & 0.58767E+00, 0.59120E+00, 0.59472E+00, 0.59823E+00, 0.60174E+00, & - & 0.60524E+00, 0.60874E+00, 0.61223E+00, 0.61571E+00, 0.61919E+00, & - & 0.62266E+00, 0.62612E+00, 0.62958E+00, 0.63303E+00, 0.63647E+00, & - & 0.63991E+00, 0.64334E+00, 0.64677E+00, 0.65019E+00, 0.65360E+00, & - & 0.65701E+00, 0.66041E+00, 0.66380E+00, 0.66719E+00, 0.67057E+00, & - & 0.67395E+00, 0.67732E+00, 0.68068E+00, 0.68404E+00, 0.68740E+00, & - & 0.69074E+00, 0.69408E+00, 0.69742E+00, 0.70074E+00, 0.70407E+00, & - & 0.70738E+00, 0.71069E+00, 0.71400E+00, 0.71730E+00, 0.72059E+00, & - & 0.72388E+00, 0.72716E+00, 0.73044E+00, 0.73371E+00, 0.73697E+00, & - & 0.74023E+00, 0.74349E+00, 0.74673E+00, 0.74997E+00, 0.75321E+00, & - & 0.75644E+00, 0.75967E+00, 0.76289E+00, 0.76610E+00, 0.76931E+00, & - & 0.77251E+00, 0.77571E+00, 0.77890E+00, 0.78209E+00, 0.78527E+00, & - & 0.78845E+00, 0.79162E+00, 0.79478E+00, 0.79794E+00, 0.80110E+00/ - - DATA (BNC12M(I),I=301,400)/ & - & 0.80424E+00, 0.80739E+00, 0.81053E+00, 0.81366E+00, 0.81679E+00, & - & 0.81991E+00, 0.82303E+00, 0.82614E+00, 0.82925E+00, 0.83235E+00, & - & 0.83545E+00, 0.83854E+00, 0.84163E+00, 0.84471E+00, 0.84778E+00, & - & 0.85085E+00, 0.85392E+00, 0.85698E+00, 0.86004E+00, 0.86309E+00, & - & 0.86614E+00, 0.86918E+00, 0.87221E+00, 0.87525E+00, 0.87827E+00, & - & 0.88129E+00, 0.88431E+00, 0.88732E+00, 0.89033E+00, 0.89333E+00, & - & 0.89633E+00, 0.89932E+00, 0.90231E+00, 0.90529E+00, 0.90827E+00, & - & 0.91124E+00, 0.91421E+00, 0.91718E+00, 0.92014E+00, 0.92309E+00, & - & 0.92604E+00, 0.92899E+00, 0.93193E+00, 0.93486E+00, 0.93779E+00, & - & 0.94072E+00, 0.94364E+00, 0.94656E+00, 0.94947E+00, 0.95238E+00, & - & 0.95529E+00, 0.95819E+00, 0.96108E+00, 0.96397E+00, 0.96686E+00, & - & 0.96974E+00, 0.97262E+00, 0.97549E+00, 0.97836E+00, 0.98122E+00, & - & 0.98408E+00, 0.98694E+00, 0.98979E+00, 0.99264E+00, 0.99548E+00, & - & 0.99832E+00, 0.10012E+01, 0.10040E+01, 0.10068E+01, 0.10096E+01, & - & 0.10124E+01, 0.10153E+01, 0.10181E+01, 0.10209E+01, 0.10237E+01, & - & 0.10265E+01, 0.10293E+01, 0.10320E+01, 0.10348E+01, 0.10376E+01, & - & 0.10404E+01, 0.10431E+01, 0.10459E+01, 0.10487E+01, 0.10514E+01, & - & 0.10542E+01, 0.10569E+01, 0.10597E+01, 0.10624E+01, 0.10652E+01, & - & 0.10679E+01, 0.10706E+01, 0.10734E+01, 0.10761E+01, 0.10788E+01, & - & 0.10815E+01, 0.10842E+01, 0.10869E+01, 0.10896E+01, 0.10923E+01/ - - DATA (BNC12M(I),I=401,500)/ & - & 0.10950E+01, 0.10977E+01, 0.11004E+01, 0.11031E+01, 0.11058E+01, & - & 0.11084E+01, 0.11111E+01, 0.11138E+01, 0.11165E+01, 0.11191E+01, & - & 0.11218E+01, 0.11244E+01, 0.11271E+01, 0.11297E+01, 0.11324E+01, & - & 0.11350E+01, 0.11376E+01, 0.11403E+01, 0.11429E+01, 0.11455E+01, & - & 0.11481E+01, 0.11507E+01, 0.11534E+01, 0.11560E+01, 0.11586E+01, & - & 0.11612E+01, 0.11638E+01, 0.11664E+01, 0.11690E+01, 0.11715E+01, & - & 0.11741E+01, 0.11767E+01, 0.11793E+01, 0.11819E+01, 0.11844E+01, & - & 0.11870E+01, 0.11896E+01, 0.11921E+01, 0.11947E+01, 0.11972E+01, & - & 0.11998E+01, 0.12023E+01, 0.12049E+01, 0.12074E+01, 0.12099E+01, & - & 0.12125E+01, 0.12150E+01, 0.12175E+01, 0.12200E+01, 0.12226E+01, & - & 0.12251E+01, 0.12276E+01, 0.12301E+01, 0.12326E+01, 0.12351E+01, & - & 0.12376E+01, 0.12401E+01, 0.12426E+01, 0.12451E+01, 0.12475E+01, & - & 0.12500E+01, 0.12525E+01, 0.12550E+01, 0.12575E+01, 0.12599E+01, & - & 0.12624E+01, 0.12649E+01, 0.12673E+01, 0.12698E+01, 0.12722E+01, & - & 0.12747E+01, 0.12771E+01, 0.12796E+01, 0.12820E+01, 0.12844E+01, & - & 0.12869E+01, 0.12893E+01, 0.12917E+01, 0.12941E+01, 0.12966E+01, & - & 0.12990E+01, 0.13014E+01, 0.13038E+01, 0.13062E+01, 0.13086E+01, & - & 0.13110E+01, 0.13134E+01, 0.13158E+01, 0.13182E+01, 0.13206E+01, & - & 0.13230E+01, 0.13254E+01, 0.13278E+01, 0.13301E+01, 0.13325E+01, & - & 0.13349E+01, 0.13373E+01, 0.13396E+01, 0.13420E+01, 0.13443E+01/ - - DATA (BNC12M(I),I=501,600)/ & - & 0.13467E+01, 0.13491E+01, 0.13514E+01, 0.13538E+01, 0.13561E+01, & - & 0.13584E+01, 0.13608E+01, 0.13631E+01, 0.13655E+01, 0.13678E+01, & - & 0.13701E+01, 0.13724E+01, 0.13748E+01, 0.13771E+01, 0.13794E+01, & - & 0.13817E+01, 0.13840E+01, 0.13863E+01, 0.13886E+01, 0.13909E+01, & - & 0.13932E+01, 0.13955E+01, 0.13978E+01, 0.14001E+01, 0.14024E+01, & - & 0.14047E+01, 0.14070E+01, 0.14093E+01, 0.14115E+01, 0.14138E+01, & - & 0.14161E+01, 0.14184E+01, 0.14206E+01, 0.14229E+01, 0.14252E+01, & - & 0.14274E+01, 0.14297E+01, 0.14319E+01, 0.14342E+01, 0.14364E+01, & - & 0.14387E+01, 0.14409E+01, 0.14431E+01, 0.14454E+01, 0.14476E+01, & - & 0.14499E+01, 0.14521E+01, 0.14543E+01, 0.14565E+01, 0.14588E+01, & - & 0.14610E+01, 0.14632E+01, 0.14654E+01, 0.14676E+01, 0.14698E+01, & - & 0.14720E+01, 0.14742E+01, 0.14764E+01, 0.14786E+01, 0.14808E+01, & - & 0.14830E+01, 0.14852E+01, 0.14874E+01, 0.14896E+01, 0.14918E+01, & - & 0.14940E+01, 0.14961E+01, 0.14983E+01, 0.15005E+01, 0.15027E+01, & - & 0.15048E+01, 0.15070E+01, 0.15092E+01, 0.15113E+01, 0.15135E+01, & - & 0.15156E+01, 0.15178E+01, 0.15199E+01, 0.15221E+01, 0.15242E+01, & - & 0.15264E+01, 0.15285E+01, 0.15307E+01, 0.15328E+01, 0.15349E+01, & - & 0.15371E+01, 0.15392E+01, 0.15413E+01, 0.15434E+01, 0.15456E+01, & - & 0.15477E+01, 0.15498E+01, 0.15519E+01, 0.15540E+01, 0.15561E+01, & - & 0.15583E+01, 0.15604E+01, 0.15625E+01, 0.15646E+01, 0.15667E+01/ - - DATA (BNC12M(I),I=601,700)/ & - & 0.15892E+01, 0.16098E+01, 0.16302E+01, 0.16504E+01, 0.16704E+01, & - & 0.16902E+01, 0.17098E+01, 0.17291E+01, 0.17483E+01, 0.17673E+01, & - & 0.17861E+01, 0.18047E+01, 0.18232E+01, 0.18415E+01, 0.18596E+01, & - & 0.18775E+01, 0.18953E+01, 0.19129E+01, 0.19304E+01, 0.19477E+01, & - & 0.19648E+01, 0.19818E+01, 0.19987E+01, 0.20154E+01, 0.20320E+01, & - & 0.20484E+01, 0.20647E+01, 0.20809E+01, 0.20969E+01, 0.21129E+01, & - & 0.21286E+01, 0.21443E+01, 0.21598E+01, 0.21752E+01, 0.21905E+01, & - & 0.22057E+01, 0.22208E+01, 0.22357E+01, 0.22506E+01, 0.22653E+01, & - & 0.22799E+01, 0.22945E+01, 0.23089E+01, 0.23232E+01, 0.23374E+01, & - & 0.23515E+01, 0.23656E+01, 0.23795E+01, 0.23933E+01, 0.24071E+01, & - & 0.24207E+01, 0.24343E+01, 0.24477E+01, 0.24611E+01, 0.24744E+01, & - & 0.24876E+01, 0.25007E+01, 0.25138E+01, 0.25267E+01, 0.25396E+01, & - & 0.25524E+01, 0.25651E+01, 0.25778E+01, 0.25903E+01, 0.26028E+01, & - & 0.26152E+01, 0.26276E+01, 0.26398E+01, 0.26520E+01, 0.26642E+01, & - & 0.26762E+01, 0.26882E+01, 0.27001E+01, 0.27120E+01, 0.27238E+01, & - & 0.27355E+01, 0.27472E+01, 0.27588E+01, 0.27703E+01, 0.27818E+01, & - & 0.27932E+01, 0.28045E+01, 0.28158E+01, 0.28270E+01, 0.28382E+01, & - & 0.28493E+01, 0.28604E+01, 0.28714E+01, 0.28823E+01, 0.28932E+01, & - & 0.29040E+01, 0.29148E+01, 0.29256E+01, 0.29362E+01, 0.29468E+01, & - & 0.29574E+01, 0.29679E+01, 0.29784E+01, 0.29888E+01, 0.29992E+01/ - - DATA (BNC12M(I),I=701,741)/ & - & 0.30095E+01, 0.30198E+01, 0.30300E+01, 0.30402E+01, 0.30503E+01, & - & 0.30604E+01, 0.30705E+01, 0.30805E+01, 0.30904E+01, 0.31003E+01, & - & 0.31102E+01, 0.31200E+01, 0.31298E+01, 0.31395E+01, 0.31492E+01, & - & 0.31588E+01, 0.31684E+01, 0.31780E+01, 0.31875E+01, 0.31970E+01, & - & 0.32065E+01, 0.32159E+01, 0.32252E+01, 0.32346E+01, 0.32439E+01, & - & 0.32531E+01, 0.32623E+01, 0.32715E+01, 0.32807E+01, 0.32898E+01, & - & 0.32988E+01, 0.33079E+01, 0.33169E+01, 0.33258E+01, 0.33348E+01, & - & 0.33436E+01, 0.33525E+01, 0.33613E+01, 0.33701E+01, 0.33789E+01, & - & 0.33876E+01 & - & / -! -! *** (NH4)3H(SO4)2 -! - DATA (BNC13M(I),I=1,100)/ & - &-0.72232E-01,-0.15583E+00,-0.19693E+00,-0.22563E+00,-0.24790E+00, & - &-0.26615E+00,-0.28162E+00,-0.29503E+00,-0.30686E+00,-0.31742E+00, & - &-0.32695E+00,-0.33562E+00,-0.34356E+00,-0.35087E+00,-0.35764E+00, & - &-0.36392E+00,-0.36978E+00,-0.37525E+00,-0.38039E+00,-0.38521E+00, & - &-0.38975E+00,-0.39403E+00,-0.39808E+00,-0.40190E+00,-0.40552E+00, & - &-0.40895E+00,-0.41221E+00,-0.41530E+00,-0.41823E+00,-0.42103E+00, & - &-0.42368E+00,-0.42620E+00,-0.42861E+00,-0.43090E+00,-0.43307E+00, & - &-0.43515E+00,-0.43712E+00,-0.43900E+00,-0.44079E+00,-0.44249E+00, & - &-0.44411E+00,-0.44565E+00,-0.44712E+00,-0.44851E+00,-0.44984E+00, & - &-0.45109E+00,-0.45229E+00,-0.45342E+00,-0.45449E+00,-0.45551E+00, & - &-0.45647E+00,-0.45738E+00,-0.45823E+00,-0.45904E+00,-0.45980E+00, & - &-0.46052E+00,-0.46119E+00,-0.46182E+00,-0.46241E+00,-0.46296E+00, & - &-0.46347E+00,-0.46394E+00,-0.46438E+00,-0.46478E+00,-0.46515E+00, & - &-0.46549E+00,-0.46579E+00,-0.46607E+00,-0.46631E+00,-0.46653E+00, & - &-0.46671E+00,-0.46687E+00,-0.46701E+00,-0.46711E+00,-0.46720E+00, & - &-0.46725E+00,-0.46729E+00,-0.46730E+00,-0.46728E+00,-0.46725E+00, & - &-0.46719E+00,-0.46711E+00,-0.46701E+00,-0.46689E+00,-0.46675E+00, & - &-0.46659E+00,-0.46641E+00,-0.46621E+00,-0.46599E+00,-0.46576E+00, & - &-0.46550E+00,-0.46523E+00,-0.46495E+00,-0.46465E+00,-0.46433E+00, & - &-0.46399E+00,-0.46364E+00,-0.46328E+00,-0.46290E+00,-0.46251E+00/ - - DATA (BNC13M(I),I=101,200)/ & - &-0.46211E+00,-0.46169E+00,-0.46125E+00,-0.46081E+00,-0.46035E+00, & - &-0.45989E+00,-0.45941E+00,-0.45892E+00,-0.45842E+00,-0.45791E+00, & - &-0.45739E+00,-0.45686E+00,-0.45632E+00,-0.45577E+00,-0.45522E+00, & - &-0.45465E+00,-0.45408E+00,-0.45350E+00,-0.45291E+00,-0.45232E+00, & - &-0.45172E+00,-0.45111E+00,-0.45050E+00,-0.44988E+00,-0.44926E+00, & - &-0.44863E+00,-0.44799E+00,-0.44735E+00,-0.44671E+00,-0.44606E+00, & - &-0.44540E+00,-0.44474E+00,-0.44408E+00,-0.44342E+00,-0.44274E+00, & - &-0.44207E+00,-0.44139E+00,-0.44071E+00,-0.44003E+00,-0.43934E+00, & - &-0.43865E+00,-0.43796E+00,-0.43726E+00,-0.43656E+00,-0.43586E+00, & - &-0.43515E+00,-0.43445E+00,-0.43374E+00,-0.43303E+00,-0.43231E+00, & - &-0.43160E+00,-0.43088E+00,-0.43016E+00,-0.42944E+00,-0.42872E+00, & - &-0.42799E+00,-0.42727E+00,-0.42654E+00,-0.42581E+00,-0.42508E+00, & - &-0.42435E+00,-0.42361E+00,-0.42288E+00,-0.42214E+00,-0.42140E+00, & - &-0.42067E+00,-0.41993E+00,-0.41918E+00,-0.41844E+00,-0.41770E+00, & - &-0.41696E+00,-0.41621E+00,-0.41547E+00,-0.41472E+00,-0.41397E+00, & - &-0.41322E+00,-0.41248E+00,-0.41173E+00,-0.41098E+00,-0.41023E+00, & - &-0.40947E+00,-0.40872E+00,-0.40797E+00,-0.40722E+00,-0.40646E+00, & - &-0.40571E+00,-0.40496E+00,-0.40420E+00,-0.40345E+00,-0.40269E+00, & - &-0.40193E+00,-0.40118E+00,-0.40042E+00,-0.39967E+00,-0.39891E+00, & - &-0.39815E+00,-0.39739E+00,-0.39664E+00,-0.39588E+00,-0.39512E+00/ - - DATA (BNC13M(I),I=201,300)/ & - &-0.39436E+00,-0.39361E+00,-0.39285E+00,-0.39209E+00,-0.39133E+00, & - &-0.39057E+00,-0.38981E+00,-0.38906E+00,-0.38830E+00,-0.38754E+00, & - &-0.38678E+00,-0.38602E+00,-0.38526E+00,-0.38451E+00,-0.38375E+00, & - &-0.38299E+00,-0.38223E+00,-0.38147E+00,-0.38071E+00,-0.37996E+00, & - &-0.37920E+00,-0.37844E+00,-0.37768E+00,-0.37693E+00,-0.37617E+00, & - &-0.37541E+00,-0.37466E+00,-0.37390E+00,-0.37314E+00,-0.37239E+00, & - &-0.37163E+00,-0.37087E+00,-0.37012E+00,-0.36936E+00,-0.36861E+00, & - &-0.36785E+00,-0.36710E+00,-0.36634E+00,-0.36559E+00,-0.36484E+00, & - &-0.36408E+00,-0.36333E+00,-0.36258E+00,-0.36182E+00,-0.36107E+00, & - &-0.36032E+00,-0.35957E+00,-0.35882E+00,-0.35807E+00,-0.35732E+00, & - &-0.35656E+00,-0.35581E+00,-0.35507E+00,-0.35432E+00,-0.35357E+00, & - &-0.35282E+00,-0.35207E+00,-0.35132E+00,-0.35057E+00,-0.34983E+00, & - &-0.34908E+00,-0.34833E+00,-0.34759E+00,-0.34684E+00,-0.34610E+00, & - &-0.34535E+00,-0.34461E+00,-0.34386E+00,-0.34312E+00,-0.34237E+00, & - &-0.34163E+00,-0.34089E+00,-0.34015E+00,-0.33940E+00,-0.33866E+00, & - &-0.33792E+00,-0.33718E+00,-0.33644E+00,-0.33570E+00,-0.33496E+00, & - &-0.33422E+00,-0.33348E+00,-0.33275E+00,-0.33201E+00,-0.33127E+00, & - &-0.33053E+00,-0.32980E+00,-0.32906E+00,-0.32833E+00,-0.32759E+00, & - &-0.32686E+00,-0.32612E+00,-0.32539E+00,-0.32465E+00,-0.32392E+00, & - &-0.32319E+00,-0.32246E+00,-0.32172E+00,-0.32099E+00,-0.32026E+00/ - - DATA (BNC13M(I),I=301,400)/ & - &-0.31953E+00,-0.31880E+00,-0.31807E+00,-0.31734E+00,-0.31662E+00, & - &-0.31589E+00,-0.31516E+00,-0.31443E+00,-0.31371E+00,-0.31298E+00, & - &-0.31225E+00,-0.31153E+00,-0.31080E+00,-0.31008E+00,-0.30936E+00, & - &-0.30863E+00,-0.30791E+00,-0.30719E+00,-0.30646E+00,-0.30574E+00, & - &-0.30502E+00,-0.30430E+00,-0.30358E+00,-0.30286E+00,-0.30214E+00, & - &-0.30142E+00,-0.30070E+00,-0.29999E+00,-0.29927E+00,-0.29855E+00, & - &-0.29784E+00,-0.29712E+00,-0.29640E+00,-0.29569E+00,-0.29497E+00, & - &-0.29426E+00,-0.29355E+00,-0.29283E+00,-0.29212E+00,-0.29141E+00, & - &-0.29070E+00,-0.28999E+00,-0.28927E+00,-0.28856E+00,-0.28785E+00, & - &-0.28714E+00,-0.28644E+00,-0.28573E+00,-0.28502E+00,-0.28431E+00, & - &-0.28360E+00,-0.28290E+00,-0.28219E+00,-0.28149E+00,-0.28078E+00, & - &-0.28008E+00,-0.27937E+00,-0.27867E+00,-0.27796E+00,-0.27726E+00, & - &-0.27656E+00,-0.27586E+00,-0.27516E+00,-0.27445E+00,-0.27375E+00, & - &-0.27305E+00,-0.27235E+00,-0.27165E+00,-0.27096E+00,-0.27026E+00, & - &-0.26956E+00,-0.26886E+00,-0.26817E+00,-0.26747E+00,-0.26677E+00, & - &-0.26608E+00,-0.26538E+00,-0.26469E+00,-0.26399E+00,-0.26330E+00, & - &-0.26261E+00,-0.26192E+00,-0.26122E+00,-0.26053E+00,-0.25984E+00, & - &-0.25915E+00,-0.25846E+00,-0.25777E+00,-0.25708E+00,-0.25639E+00, & - &-0.25570E+00,-0.25501E+00,-0.25433E+00,-0.25364E+00,-0.25295E+00, & - &-0.25227E+00,-0.25158E+00,-0.25090E+00,-0.25021E+00,-0.24953E+00/ - - DATA (BNC13M(I),I=401,500)/ & - &-0.24884E+00,-0.24816E+00,-0.24748E+00,-0.24679E+00,-0.24611E+00, & - &-0.24543E+00,-0.24475E+00,-0.24407E+00,-0.24339E+00,-0.24271E+00, & - &-0.24203E+00,-0.24135E+00,-0.24067E+00,-0.23999E+00,-0.23931E+00, & - &-0.23864E+00,-0.23796E+00,-0.23728E+00,-0.23661E+00,-0.23593E+00, & - &-0.23526E+00,-0.23458E+00,-0.23391E+00,-0.23323E+00,-0.23256E+00, & - &-0.23189E+00,-0.23122E+00,-0.23054E+00,-0.22987E+00,-0.22920E+00, & - &-0.22853E+00,-0.22786E+00,-0.22719E+00,-0.22652E+00,-0.22585E+00, & - &-0.22519E+00,-0.22452E+00,-0.22385E+00,-0.22318E+00,-0.22252E+00, & - &-0.22185E+00,-0.22118E+00,-0.22052E+00,-0.21985E+00,-0.21919E+00, & - &-0.21853E+00,-0.21786E+00,-0.21720E+00,-0.21654E+00,-0.21587E+00, & - &-0.21521E+00,-0.21455E+00,-0.21389E+00,-0.21323E+00,-0.21257E+00, & - &-0.21191E+00,-0.21125E+00,-0.21059E+00,-0.20993E+00,-0.20927E+00, & - &-0.20862E+00,-0.20796E+00,-0.20730E+00,-0.20665E+00,-0.20599E+00, & - &-0.20534E+00,-0.20468E+00,-0.20403E+00,-0.20337E+00,-0.20272E+00, & - &-0.20206E+00,-0.20141E+00,-0.20076E+00,-0.20011E+00,-0.19945E+00, & - &-0.19880E+00,-0.19815E+00,-0.19750E+00,-0.19685E+00,-0.19620E+00, & - &-0.19555E+00,-0.19490E+00,-0.19426E+00,-0.19361E+00,-0.19296E+00, & - &-0.19231E+00,-0.19167E+00,-0.19102E+00,-0.19037E+00,-0.18973E+00, & - &-0.18908E+00,-0.18844E+00,-0.18779E+00,-0.18715E+00,-0.18651E+00, & - &-0.18586E+00,-0.18522E+00,-0.18458E+00,-0.18393E+00,-0.18329E+00/ - - DATA (BNC13M(I),I=501,600)/ & - &-0.18265E+00,-0.18201E+00,-0.18137E+00,-0.18073E+00,-0.18009E+00, & - &-0.17945E+00,-0.17881E+00,-0.17817E+00,-0.17754E+00,-0.17690E+00, & - &-0.17626E+00,-0.17563E+00,-0.17499E+00,-0.17435E+00,-0.17372E+00, & - &-0.17308E+00,-0.17245E+00,-0.17181E+00,-0.17118E+00,-0.17054E+00, & - &-0.16991E+00,-0.16928E+00,-0.16865E+00,-0.16801E+00,-0.16738E+00, & - &-0.16675E+00,-0.16612E+00,-0.16549E+00,-0.16486E+00,-0.16423E+00, & - &-0.16360E+00,-0.16297E+00,-0.16234E+00,-0.16171E+00,-0.16108E+00, & - &-0.16046E+00,-0.15983E+00,-0.15920E+00,-0.15858E+00,-0.15795E+00, & - &-0.15732E+00,-0.15670E+00,-0.15607E+00,-0.15545E+00,-0.15483E+00, & - &-0.15420E+00,-0.15358E+00,-0.15295E+00,-0.15233E+00,-0.15171E+00, & - &-0.15109E+00,-0.15047E+00,-0.14984E+00,-0.14922E+00,-0.14860E+00, & - &-0.14798E+00,-0.14736E+00,-0.14674E+00,-0.14612E+00,-0.14551E+00, & - &-0.14489E+00,-0.14427E+00,-0.14365E+00,-0.14303E+00,-0.14242E+00, & - &-0.14180E+00,-0.14119E+00,-0.14057E+00,-0.13995E+00,-0.13934E+00, & - &-0.13872E+00,-0.13811E+00,-0.13750E+00,-0.13688E+00,-0.13627E+00, & - &-0.13566E+00,-0.13504E+00,-0.13443E+00,-0.13382E+00,-0.13321E+00, & - &-0.13260E+00,-0.13198E+00,-0.13137E+00,-0.13076E+00,-0.13015E+00, & - &-0.12954E+00,-0.12894E+00,-0.12833E+00,-0.12772E+00,-0.12711E+00, & - &-0.12650E+00,-0.12590E+00,-0.12529E+00,-0.12468E+00,-0.12408E+00, & - &-0.12347E+00,-0.12286E+00,-0.12226E+00,-0.12165E+00,-0.12105E+00/ - - DATA (BNC13M(I),I=601,700)/ & - &-0.11454E+00,-0.10855E+00,-0.10259E+00,-0.96662E-01,-0.90767E-01, & - &-0.84905E-01,-0.79073E-01,-0.73271E-01,-0.67500E-01,-0.61758E-01, & - &-0.56045E-01,-0.50360E-01,-0.44704E-01,-0.39075E-01,-0.33474E-01, & - &-0.27900E-01,-0.22352E-01,-0.16830E-01,-0.11333E-01,-0.58624E-02, & - &-0.41621E-03, 0.50053E-02, 0.10403E-01, 0.15776E-01, 0.21127E-01, & - & 0.26454E-01, 0.31758E-01, 0.37040E-01, 0.42299E-01, 0.47537E-01, & - & 0.52753E-01, 0.57949E-01, 0.63123E-01, 0.68276E-01, 0.73409E-01, & - & 0.78522E-01, 0.83616E-01, 0.88690E-01, 0.93744E-01, 0.98779E-01, & - & 0.10380E+00, 0.10879E+00, 0.11377E+00, 0.11874E+00, 0.12368E+00, & - & 0.12861E+00, 0.13352E+00, 0.13841E+00, 0.14328E+00, 0.14814E+00, & - & 0.15298E+00, 0.15781E+00, 0.16262E+00, 0.16741E+00, 0.17219E+00, & - & 0.17695E+00, 0.18170E+00, 0.18643E+00, 0.19115E+00, 0.19585E+00, & - & 0.20054E+00, 0.20521E+00, 0.20987E+00, 0.21452E+00, 0.21915E+00, & - & 0.22376E+00, 0.22837E+00, 0.23296E+00, 0.23753E+00, 0.24210E+00, & - & 0.24665E+00, 0.25119E+00, 0.25571E+00, 0.26022E+00, 0.26472E+00, & - & 0.26921E+00, 0.27369E+00, 0.27815E+00, 0.28260E+00, 0.28704E+00, & - & 0.29147E+00, 0.29588E+00, 0.30029E+00, 0.30468E+00, 0.30907E+00, & - & 0.31344E+00, 0.31780E+00, 0.32215E+00, 0.32649E+00, 0.33081E+00, & - & 0.33513E+00, 0.33944E+00, 0.34374E+00, 0.34802E+00, 0.35230E+00, & - & 0.35656E+00, 0.36082E+00, 0.36507E+00, 0.36930E+00, 0.37353E+00/ - - DATA (BNC13M(I),I=701,741)/ & - & 0.37775E+00, 0.38196E+00, 0.38616E+00, 0.39035E+00, 0.39453E+00, & - & 0.39870E+00, 0.40286E+00, 0.40701E+00, 0.41116E+00, 0.41529E+00, & - & 0.41942E+00, 0.42354E+00, 0.42764E+00, 0.43175E+00, 0.43584E+00, & - & 0.43992E+00, 0.44400E+00, 0.44807E+00, 0.45213E+00, 0.45618E+00, & - & 0.46022E+00, 0.46426E+00, 0.46828E+00, 0.47230E+00, 0.47632E+00, & - & 0.48032E+00, 0.48432E+00, 0.48831E+00, 0.49229E+00, 0.49626E+00, & - & 0.50023E+00, 0.50419E+00, 0.50814E+00, 0.51209E+00, 0.51603E+00, & - & 0.51996E+00, 0.52388E+00, 0.52780E+00, 0.53171E+00, 0.53562E+00, & - & 0.53951E+00 & - & / - ENDBLOCKDATA KMCF323 diff --git a/src/arome/chem/internals/dust_filter.F90 b/src/arome/chem/internals/dust_filter.F90 deleted file mode 100644 index 05b6439f0545fa1cd7f4838fe6d0dfc9a723f8cd..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/dust_filter.F90 +++ /dev/null @@ -1,66 +0,0 @@ -! ######spl - SUBROUTINE DUST_FILTER(PSV, PRHODREF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -! Entry variables: -! -! PRSVS(INOUT) -Array of moments included in PRSVS -! -!************************************************************* -! Exit variables: -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! ZVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!! IMPLICIT ARGUMENTS -! -USE MODD_DUST -USE MODD_CSTS_DUST -!! -IMPLICIT NONE - -!! Declarations d'arguments - -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF - -!! Declarations de variables internes - -INTEGER :: JN -INTEGER :: JMODEIDX -REAL, DIMENSION(NMODE_DST*3) :: ZPMIN -REAL, DIMENSION(NMODE_DST) :: ZINIRADIUS -REAL, DIMENSION(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_DST*3) :: ZM ! [aerosol units] local array which goes to output later -REAL, DIMENSION(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3)) :: ZSIGMA !standard deviation - -REAL :: ZRGMIN, ZSIGMIN -REAL :: ZPI, ZRHOP, ZFAC, ZMI -INTEGER,DIMENSION(NMODE_DST) :: NM0, NM3, NM6 - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('DUST_FILTER',0,ZHOOK_HANDLE) -PSV(:,:,:,:) = MAX(PSV(:,:,:,:), 1.E-80) - - -IF (LHOOK) CALL DR_HOOK('DUST_FILTER',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_FILTER diff --git a/src/arome/chem/internals/dust_velgrav.F90 b/src/arome/chem/internals/dust_velgrav.F90 deleted file mode 100644 index f7c87c4e8e85113c3432ed2b5e4604c478c476a3..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/dust_velgrav.F90 +++ /dev/null @@ -1,108 +0,0 @@ -! ######spl - SUBROUTINE DUST_VELGRAV(PSIG, PRG, PTHT, PABST, PRHODREF, PRHOP, PMU, PVGK,PDPK, PVGG) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -! Entry variables: -! -! PM(IN) -Array of moments -! -!************************************************************* -! Exit variables: -! -! PFSED(IN) -Array of moment variation due to dry deposition -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! PDPK -Polydisperse diffusivity (m2/s) -! PVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!----------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_DUST -USE MODD_CSTS_DUST -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, INTENT(IN) :: PRHOP -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG, PRG -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST, PRHODREF -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGK,PDPK -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PMU -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGG -! -!* 0.2 declaration of local variables -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3)) :: ZTEMP,ZLAMBDA -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3)) :: ZRG,ZLN2S -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3)) :: ZKNG -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3),NMODE_DST) :: ZDPG -! -! -REAL, PARAMETER :: gasmw=28.9644d0 -REAL :: ZK -! -INTEGER :: JI,JJ -! -!----------------------------------------------------------------- -!temperature -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('DUST_VELGRAV',0,ZHOOK_HANDLE) -ZTEMP(:,:,:)=PTHT(:,:,:)*(PABST(:,:,:)/XP00)**(XRD/XCPD) -! -! Sutherland's equation for viscosity -PMU(:,:,:)=1.8325d-5*416.16/(ZTEMP(:,:,:)+120)*(ZTEMP(:,:,:)/296.16)*SQRT(ZTEMP(:,:,:)/296.16) -! -! Mean free path (Seinfeld and Pandis p455) -ZLAMBDA(:,:,:)=PMU(:,:,:)/PRHODREF(:,:,:)*SQRT(1.89d-4*gasmw/ZTEMP(:,:,:))*1.e6 -! -! -DO JI=1,NMODE_DST - ZRG(:,:,:)=PRG(:,:,:,JI) * 1E-6 - ZLN2S(:,:,:)=LOG(PSIG(:,:,:,JI))**2 - ! - ZKNG(:,:,:)=ZLAMBDA(:,:,:) / PRG(:,:,:,JI) - ! - PVGG(:,:,:,JI)= 2.*XG*PRHOP*ZRG(:,:,:)**2 /(9.*PMU(:,:,:)) - ZDPG(:,:,:,JI)=XBOLTZ*ZTEMP(:,:,:)/ (6.*XPI* ZRG(:,:,:)*PMU(:,:,:)) - ! - ! - DO JJ=0,2 - ZK=REAL(3*JJ) - PDPK(:,:,:,3*JI+JJ-2)=ZDPG(:,:,:,JI)*(exp((-2.*ZK+1.)/2.*ZLN2S(:,:,:))+1.246*ZKNG(:,:,:)*& - exp((-4.*ZK+4)/2.*ZLN2S(:,:,:))) - ! - PVGK(:,:,:,3*JI+JJ-2)=PVGG(:,:,:,JI)*& - (exp((4.*ZK+4.)/2.*ZLN2S(:,:,:)) + 1.246*ZKNG(:,:,:)* exp((2.*ZK+1.)/2.*ZLN2S(:,:,:))) - ENDDO - ! -ENDDO -! -! -IF (LHOOK) CALL DR_HOOK('DUST_VELGRAV',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_VELGRAV diff --git a/src/arome/chem/internals/dustlfi_n.F90 b/src/arome/chem/internals/dustlfi_n.F90 deleted file mode 100644 index c3516619cac0fb4c4d38f046ff8037fa3bfda59d..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/dustlfi_n.F90 +++ /dev/null @@ -1,179 +0,0 @@ -! ######spl - SUBROUTINE DUSTLFI_n(PSV, PRHODREF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################################ -! -!! PURPOSE -!! ------- -!! Realise l'équilibre des moments à partir du sigma et du diametre moyen -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! none -!! -!! EXTERNAL -!! -------- -!! None -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_DUST -USE MODD_NSV -USE MODD_CSTS_DUST -USE MODE_DUST_PSD -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -! -! -!* 0.2 declarations local variables -! -REAL :: ZDEN2MOL, ZRHOI, ZMI, ZFAC, ZRGMIN -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZCTOTA -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM -REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZSIGMA -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZSIG, ZRG, ZN -INTEGER,DIMENSION(:), ALLOCATABLE :: IM0, IM3, IM6 -REAL,DIMENSION(:), ALLOCATABLE :: ZMMIN -REAL,DIMENSION(:), ALLOCATABLE :: ZINIRADIUS, ZINISIGMA -INTEGER :: IKU -INTEGER :: JJ, JN, JK ! loop counter -INTEGER :: IMODEIDX ! index mode -REAL, PARAMETER :: ZMMR_DUST=5.d-11!kg_{dust}/kg_{air} -REAL :: ZMMR_DUSTN -! -!------------------------------------------------------------------------------- -! -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ----------------------------------- -! -! 1.1 initialisation -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('DUSTLFI_N',0,ZHOOK_HANDLE) -IKU=SIZE(PSV,3) -! -ALLOCATE (IM0(NMODE_DST)) -ALLOCATE (IM3(NMODE_DST)) -ALLOCATE (IM6(NMODE_DST)) -ALLOCATE (ZCTOTA(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_DST)) -ALLOCATE (ZM(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_DST*3)) -ALLOCATE (ZSIGMA(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3))) -ALLOCATE (ZSIG(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3),NMODE_DST)) -ALLOCATE (ZRG(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3),NMODE_DST)) -ALLOCATE (ZN(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3),NMODE_DST)) -ALLOCATE (ZINIRADIUS(NMODE_DST)) -ALLOCATE (ZINISIGMA(NMODE_DST)) -ALLOCATE (ZMMIN(NMODE_DST*3)) -! -! -DO JN = 1, NMODE_DST - IM0(JN) = 1+(JN-1)*3 - IM3(JN) = 2+(JN-1)*3 - IM6(JN) = 3+(JN-1)*3 - ! - !Get the dust mode we are talking about, MODE 2 is treated first, then mode 3, then 1 - !This index is only needed to get the right radius out of the XINIRADIUS array and the - !right XINISIG out of the XINISIG-array - IMODEIDX = JPDUSTORDER(JN) - ! - !Convert initial mass median radius to number median radius - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) - END IF - ZINISIGMA(JN) = XINISIG(IMODEIDX) - ! - ZMMIN(IM0(JN)) = XN0MIN(IMODEIDX) -! ZRGMIN = XCOEFRADMIN * ZINIRADIUS(JN) - ZRGMIN = ZINIRADIUS(JN) - ZMMIN(IM3(JN)) = XN0MIN(IMODEIDX) * (ZRGMIN**3)*EXP(4.5 * LOG(ZINISIGMA(JN))**2) - ZMMIN(IM6(JN)) = XN0MIN(IMODEIDX) * (ZRGMIN**6)*EXP(18. * LOG(ZINISIGMA(JN))**2) -ENDDO -! -! -ZRHOI = XDENSITY_DUST !1.8e3 !++changed alfgr -!ZMI = XMOLARWEIGHT_DUST*1.D3 !100. !++changed alfgr -ZMI = XMOLARWEIGHT_DUST -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD -ZFAC=(4./3.)*XPI*ZRHOI*1.e-9 - -! conversion into mol.cm-3 -DO JJ=1,SIZE(PSV,4) - PSV(:,:,:,JJ) = PSV(:,:,:,JJ) * ZDEN2MOL * PRHODREF(:,:,:) -END DO -! -DO JN=1,NMODE_DST - -!* 1.1 calculate moment 0 from XN0MIN -! -! IF (JN == 1) ZMMR_DUSTN = 0.09 * ZMMR_DUST -! IF (JN == 2) ZMMR_DUSTN = 0.45 * ZMMR_DUST -! IF (JN == 3) ZMMR_DUSTN = 0.46 * ZMMR_DUST - IF (JN == 1) ZMMR_DUSTN = 0.40 * ZMMR_DUST - IF (JN == 2) ZMMR_DUSTN = 0.45 * ZMMR_DUST - IF (JN == 3) ZMMR_DUSTN = 0.15 * ZMMR_DUST - DO JK=1,IKU - ZM(:,:,JK,IM0(JN)) = & - ZMMR_DUSTN &![kg_{dust}/kg_{air} - *PRHODREF(:,:,JK) &![kg_{air}/m3_{air}]==> kg/m3 - /XDENSITY_DUST &![kg__{dust}/m3_{dust}==>m3_{dust}/m3{air} - *(6.d0/XPI) & - /(2.d0*ZINIRADIUS(JN)*1.d-6)**3 &![particle/m_dust^{-3}]==> particle/m3 - *EXP(-4.5*(LOG(XINISIG(JPDUSTORDER(JN))))**2) !Take into account distribution - END DO - ZM(:,:,:,IM0(JN)) = MAX(ZMMIN(IM0(JN)), ZM(:,:,:,IM0(JN))) -! -!* 1.2 calculate moment 3 from m0, RG and SIG -! - ZM(:,:,:,IM3(JN)) = ZM(:,:,:,IM0(JN)) * & - (ZINIRADIUS(JN)**3)*EXP(4.5 * LOG(ZINISIGMA(JN))**2) - ZM(:,:,:,IM3(JN)) = MAX(ZMMIN(IM3(JN)), ZM(:,:,:,IM3(JN))) -! -!* 1.3 calculate moment 6 from m0, RG and SIG -! - ZM(:,:,:,IM6(JN))= ZM(:,:,:,IM0(JN)) * ((ZINIRADIUS(JN)**6)*& - EXP(18. * (LOG(ZINISIGMA(JN)))**2)) - ZM(:,:,:,IM6(JN)) = MAX(ZMMIN(IM6(JN)), ZM(:,:,:,IM6(JN))) -! -!* 1.4 output concentration -! - PSV(:,:,:,1+(JN-1)*3) = ZM(:,:,:,IM0(JN)) * XMD / (XAVOGADRO*PRHODREF(:,:,:)) - PSV(:,:,:,2+(JN-1)*3) = ZM(:,:,:,IM3(JN)) * XMD*XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - - PSV(:,:,:,3+(JN-1)*3) = ZM(:,:,:,IM6(JN)) * XMD / (XAVOGADRO*PRHODREF(:,:,:)*1.d-6) -! -END DO -CALL PPP2DUST(PSV, PRHODREF, PSIG3D=ZSIG, PRG3D=ZRG, PN3D=ZN) -! -DEALLOCATE(ZMMIN) -DEALLOCATE(ZINISIGMA) -DEALLOCATE(ZINIRADIUS) -DEALLOCATE(ZSIGMA) -DEALLOCATE(ZM) -DEALLOCATE(ZCTOTA) -DEALLOCATE(IM6) -DEALLOCATE(IM3) -DEALLOCATE(IM0) -! -! -IF (LHOOK) CALL DR_HOOK('DUSTLFI_N',1,ZHOOK_HANDLE) -END SUBROUTINE DUSTLFI_n diff --git a/src/arome/chem/internals/eqsam_v03d_sub.F90 b/src/arome/chem/internals/eqsam_v03d_sub.F90 deleted file mode 100644 index 5cbd668e137d2060c1d15765a57888dc18788b1e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/eqsam_v03d_sub.F90 +++ /dev/null @@ -1,691 +0,0 @@ -! ######spl -subroutine eqsam_v03d_sub(yi,yo,nca,nco,iopt,loop,imax) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! -implicit none -!___________________________________________________________________________________________________________________________________ -! Written by Swen Metzger 3/11/99. Modified 2002, 2003. -! -! Department of Atmospheric Chemistry, Max-Planck-Institute for Chemistry. -! email: metzger@mpch-mainz.mpg.de -! http://www.mpch-mainz.mpg.de/~metzger -! -! COPYRIGHT 1999-2003 -! -! purpose -! ------- -! EQSAM (EQuilibrium Simplified Aerosol Model) is a new and computationally efficient thermodynamic -! aerosol composition model that allows to calculate the gas/aerosol equilibrium partitioning, -! including aerosol water, sufficiently fast and accurate for global (or even regional) modeling. -! EQSAM is based on a number of parameterizations, including single solute molalities and activity -! coefficients (AC). The thermodynamic framework (domains and subdomains, internally mixed aerosols) -! is the same as of more sophisticated thermodynamic equilibrium models (EQMs), e.g. of ISORROPIA -! (Nenes et al., 1998). Details are given in the references below (and the references therein). -! -! The main assumption on which EQSAM/EQMs are based is thermodynamical and chemical equilibrium. -! From this assumption it directly follows that the aerosol water activity (aw) equals the ambient -! relative humidity (RH), if the water vapor pressure is sufficiently larger than the partial vapor -! pressure of the aerosol compounds. This is approximately true for tropospheric aerosols. Given the -! large amount of water vapor present, water vapor and aerosol water equilibrate relatively faster -! compared to all other aerosol compounds. This is subsequently also true for single aerosol compounds. -! The water activity of single solutes must also equal RH under this assumption. Therefore, the so -! called ZSR-relation is (and can be) used to calculate the aerosol associated water mass (simply -! from the sum of all water mass fractions that are derived from measured single solute molalities). -! -! In contrast to other EQMs, EQSAM utilizes the fact that the RH fixes the water activity -! (under the above assumptions) and the consequence that any changes in RH also causes changes in -! the aerosol water mass and, hence, aerosol activity (including activity coefficients). Thus, an decrease -! (increase) in RH decrease (increases) the aerosol water mass (and water activity). This can change the -! aerosol composition, e.g. due to condensation (evaporation/crystallization), because the vapor pressure -! above the aerosol reduces (increases). In turn, a vapor pressure reduction (increase) due to changes -! in the aerosol composition is compensated by an associated condensation (evaporation) of water vapor -! to maintain the aerosol molality to remain constant (because aw=RH). Furthermore, the aerosol water -! mainly depends on the aerosol mass and the type of solute, so that parameterizations of single solute -! molalities and activity coefficients can be defined, only depending on the type of solute and RH. -! The advantage of using such parameterizations is that the entire aerosol equilibrium composition -! can be solved analytically, i.e. non-iteratively, which considerably reduces the amount of CPU time -! that is usually need for aerosol thermodynamic calculations (especially if an EQM is incorporated in -! an aerosol dynamical model that is in turn embedded in a high resolution regional or global model). -! -! However, EQSAM should still be regarded as a starting point for further developments. There is still -! room for improvements. For instance, this code is not yet numerically optimized (vectorized) and a -! number of improvements with respect to an explicit treatment of additional equilibrium reactions, -! missing (or only implicit) dissociation, and a basic parameterization of the water uptake. -! -! Note that EQSAM was originally developed to calculate the gas/aerosol equilibrium partitioning of the -! ammonium-sulfate-nitrate-water system for climate models, excluding solid compounds. -! This version (eqsam_v03d.f90) is extended with respect to sea salt. Solids/hysteresis are treated in a -! simplified manner. Results of a box model comparison with ISORROPIA will be available from the web page. -! Please also note that the water uptake is based on additional (unpublished) parameterizations for single -! solute molalities, which are derived from tabulated measurements used in ISORROPIA. Note further that -! this extended version (eqsam_v03d.f90) is not yet published. A publication is in progress. -! -! ToDo: -! Split ion-pairs into ions for water parameterizations (since info is actually available) -! Include uptake/dissociation of NH3, HNO3, HCl (mainly to get pH right at near neutral conditions) -! Extension to K+,Ca++,Mg++, CO2/(CO3)2--/HCO3-,SOA,etc.. (maybe not) -! Vectorization. Translation of hardcoded formulas in array syntax. -! I/O Interface and program structure clean up. -! EQSAM info webpage. -! -! Version History: -! -! eqsam_v03d.f90 (MPI-CH, June 2003): -! - gama parameterizations now according to Metzger 2002 (JGR Appendix) -! - improved pH calculations (still restricted to strong acids) -! - removed bug that lead to too high nitrate formation at dry and cold regions (UT/LS) -! - removed bug in solid/hysteresis calculations -! (both bugs introduced in eqsam_v03b.f90 by cleaning up eqsam_v02a.f90) -! -! eqsam_v03c.f90 (MPI-CH, April 2003): -! - more accurate paramterizations of single solute molalities (Na, Cl species) -! - cleanded up RHD subdomain structure -! - improved water uptake (Na, Cl species) -! -! eqsam_v03b.f90 (MPI-CH, March 2003): -! System extended to HCl,Cl-/Na+. -! Parameterization (fit) of additional HNO3 uptake removed. -! Instead, complete analytical solution of equilibrium reactions, based on the AC-RH relationship. -! eqsam_v03.f90 (IMAU, October 1999): -! Test version (included in TM3). -! eqsam_v02a.f90 (IMAU, April 2000): -! Box model version. -! eqsam_v02.f90 (IMAU, October 1999): -! TM3 version. -! Version including solids and additional HNO3 uptake on acidic aerosols (parameterized). -! eqsam_v01b.f90 (MPI-CH, January 2003): -! Same as eqsam_v01a.f90 (additional lines though uncommented for test purposes only). -! eqsam_v01a.f90 (IMAU, April 2000): -! Box model version. -! eqsam_v01.f90 (IMAU, October 1999): -! TM3 version. -! First and most basic version (without solids) for better vectorization (for global modeling). -! System: NH3,NH4+/H2SO4+,HSO4-,SO4--/HNO3,NO3-, H2O -! based on equilibrium / internal mixture assumption / aw=rh / ZSR-relation -! parameterization of activcity coefficients (AC), i.e. an AC-RH relationship -! -! -! interface -! --------- -! call eqsam_v03d(yi,yo,nca,nco,iopt,loop,imax) -! -! yi = input array (imax, nca) -! yo = output array (imax, nco) -! imax = max loop (e.g. time steps) -! nca >= 11 -! nc0 >= 35 -! iopt = 1 metastable -! iopt = 2 solids -! iopt = 3 hysteresis (metastable/solids) for online calculations -! iopt = 31 hysteresis lower branch -! iopt = 32 hysteresis upper branch -! -! method -! ------ -! equilibrium / internal mixture assumption / aw=rh -! System: NH3,NH4+/H2SO4+,HSO4-,SO4--/HNO3,NO3-, HCl,Cl-/Na+, H2O -! (K+,Ca++,Mg++) -! external -! -------- -! program eqmd.f90 (driver only needed for the box model version) -! subroutine gribio.f90 (provides diagnostics output in grib/binary/ascii format) -! -! references -! --------- -! Swen Metzger Ph.D Thesis, University Utrecht, 2000. -! http://www.library.uu.nl/digiarchief/dip/diss/1930853/inhoud.htm -! -! Metzger, S. M., F. J. Dentener, J. Lelieveld, and S. N. Pandis, -! GAS/AEROSOL PARTITIONING I: A COMPUTATIONALLY EFFICIENT MODEL, -! J Geophys. Res., 107, D16, 10.1029/2001JD001102, 2002 -! http://www.agu.org/journals/jd/jd0216/2001JD001102/index.html -! Metzger, S. M., F. J. Dentener, A. Jeuken, and M. Krol, J. Lelieveld, -! GAS/AEROSOL PARTITIONING II: GLOBAL MODELING RESULTS, -! J Geophys. Res., 107, D16, 10.1029/2001JD001103, 2002. -! http://www.agu.org/journals/jd/jd0216/2001JD001103/index.html -!___________________________________________________________________________________________________________________________________ -real,parameter :: RH_HIST_DW=1.50 ! mean value for mixture of wet (2) and dry (1) gridboxes (needed for HYSTERESIS) -real,parameter :: T0=298.15,T1=298.0,AVO=6.03e23,R=82.0567e-6, & ! in cu.m*atm/deg/mole - r_kcal = 1.986E-3 ! Ideal gas constant [kcal K-1.mole-1] -real,parameter :: RHMAX=0.99,RHMIN=0.0001 ! restrict to max / min RH -real,parameter :: MWNH4=18.,MWSO4=96.,MWNO3=62.,MWCl=35.5 ! mole mass of species considered -real,parameter :: MWNa=23.0,MWCa=40.1,MWN=14.0, MWS=32.1 -real,parameter :: MWH20=55.51*18.01,ZERO=0.0 -real,parameter :: GF1=0.25,GF2=0.50,GF3=0.40,GF4=1.00,K=2. ! exponents of AC-RH functions -!______________________________________________ -integer,parameter :: NPAIR=10 -! -integer :: ii,il,IHYST -integer,intent(in) :: nca,nco,imax,loop -integer,intent(inout) :: iopt -!______________________________________________ -real :: T0T,TT,RH,PX,RHD,KAN,KAC,ZIONIC,RH_HIST,GAMA,GG,GF,GFN -real :: X00,X01,X02,X03,X04,X05,X08,X09,X10,X11 -real :: X0,X1,X2,X3,X4,X5,X6,XK10,XK6 -real :: ZFLAG,ZKAN,ZKAC,PH,COEF,HPLUS,AKW,XKW,MOLAL -real :: TNH4,TSO4,TNO3,TNa,TCl,TPo,TCa,TMg -real :: PNH4,PSO4,PNO3,PCl,PNa,GNO3,GNH3,GSO4,GHCl -real :: ASO4,ANO3,ANH4,ACl,ANa,SNH4,SSO4,SNO3,SCl,SNa -real :: WH2O,PM,PMs,PMt,RINC,DON,RATIONS,GR,NO3P,NH4P -!_______________________________________________ -!real,dimension(imax,nca),intent(in) :: yi -!real,dimension(imax,nco),intent(out) :: yo -real,dimension(:,:),intent(in) :: yi -real,dimension(:,:),intent(inout) :: yo -real,dimension(8) :: w1,w2 -real,dimension(8) :: RHDA,RHDE,RHDX,RHDZ ! RHD / MRHD arrays for different aerosol types -real,dimension(NPAIR) :: M0,MW,NW,ZW ! arrays of ion pairs -! -! salt solutes: -! 1 = NACl, 2 = (NA)2SO4, 3 = NANO3, 4 = (NH4)2SO4, 5 = NH4NO3, 6 = NH4CL, 7 = 2H-SO4 -! 8 = NH4HSO4, 9 = NAHSO4, 10 = (NH4)3H(SO4)2 -! -DATA MW(1:NPAIR)/ 58.5, 142.0, 88.0, 132.0, 80.0, 53.5, 98.0, 115.0, 120.0, 247.0/ ! mole mass of the salt solute -DATA NW(1:NPAIR)/ 2.0, 2.5, 2.5, 2.5, 3.5, 1.0, 4.5, 2.0, 2.0, 2.5/ ! square of max. dissocation number (not consistent) -DATA ZW(1:NPAIR)/ 0.67, 1.0, 1.0, 1.0, 1.0, 1.0, 0.5, 1.0, 1.0, 1.0/ ! exponents of water activity functions -! -DATA RHDA(1:8)/0.32840, 0.4906, 0.6183, 0.7997, 0.67500, 0.5000, 0.4000, 0.0000/ ! RHD / MRHD values as of ISORROPIA / SCAPE (T=298.15K) -DATA RHDE(1:8)/-1860.0, -431.0, 852.00, 80.000, 262.000, 3951.0, 384.00, 0.0000/ ! Temp. coeff. -!___________________________________________________________________________________________________________________________________ -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('EQSAM_V03D_SUB',0,ZHOOK_HANDLE) -IHYST=2 -IF(IOPT.EQ.31) THEN ! SOLID HYSTORY - IHYST=1 - IOPT=3 -ELSEIF(IOPT.EQ.32) THEN ! WET HISTORY - IHYST=2 - IOPT=3 -ENDIF -!print*,' EQuilibrium Simplified Aerosol Model (EQSAM)' -!print*,' for global modeling ' -!print*,' by ' -!print*,' Swen Metzger, MPI-CH ' -!print*,' Copyright 1999-2003 ' -!print*,' >> metzger@mpch-mainz.mpg.de << ' -!print*,' last change: 04. June, 2003 ' -!print*,' (version 3.0d) ' -!print*,' gas/aerosol calculations assuming ' -!print*,' System: NH3,NH4+/H2SO4+,HSO4-,SO4-- ' -!print*,' HNO3,NO3-, HCl,Cl-/Na+, H2O ' -!if(iopt.eq.1) then -!print*,' metastable aeorsols ' -!elseif(iopt.eq.2) then -!print*,' solid aeorsols ' -!elseif(iopt.eq.3) then -!print*,' hysteresis ' -!print*,' (metastable/solids) ' -!if(IHYST.eq.1) then -!print*,' solid hystory ' -!elseif(IHYST.eq.2) then -!print*,' wet hystory ' -!endif -!endif -!print*,' ' -!print*,'loop over ',loop,' data sets' -!print*,' ' -!___________________________________________________________________________________________________________________________________ -yo=0.;w1=0.;w2=0. ! init/reset -!___________________________________________________________________________________________________________________________________ -do il=1,loop - -! get old relative humidity to calculate aerosol hysteresis (online only) - - RH_HIST = 2. ! WET HISTORY (DEFAULT) - IF(IHYST.EQ.1.OR.IOPT.EQ.2) RH_HIST = 1. ! SET TO SOLIDS - -! meteorology - TT = yi(il,1) ! T [K] - RH = yi(il,2) ! RH [0-1] - PX = yi(il,11) ! p [hPa] -! -! gas+aerosol: - w1(1) = yi(il,6) ! Na+ (ss + xsod) (a) [umol/m^3 air] - w1(2) = yi(il,4) ! H2SO4 + SO4-- (p) [umol/m^3 air] - w1(3) = yi(il,3) ! NH3 (g) + NH4+ (p) [umol/m^3 air] - w1(4) = yi(il,5) ! HNO3 (g) + NO3- (p) [umol/m^3 air] - w1(5) = yi(il,7) ! HCl (g) + Cl- (p) [umol/m^3 air] - w1(6) = yi(il, 8) ! K+ (p) from Dust [umol/m^3 air] - w1(7) = yi(il, 9) ! Ca++ (p) from Dust [umol/m^3 air] - w1(8) = yi(il,10) ! Mg++ (p) from Dust [umol/m^3 air] -!______________________________________________ - - zflag=1. - - w1=w1*1.0e-6 ! [mol/m^3 air] - - TNa = w1(1) ! total input sodium (g+p) - TSO4 = w1(2) ! total input sulfate (g+p) - TNH4 = w1(3) ! total input ammonium (g+p) - TNO3 = w1(4) ! total input nitrate (g+p) - TCl = w1(5) ! total input chloride (g+p) - TPo = w1(6) ! total input potasium (g+p) - TCa = w1(7) ! total input calcium (g+p) - TMg = w1(8) ! total input magnesium(g+p) - -! SULFATE RICH - - if((w1(1)+w1(3)+w1(6)+2.*(w1(7)+w1(8))).le.(2.*w1(2))) then - zflag=3. - endif - -! SULFATE VERY RICH CASE if (NH4+Na+K+2(Ca+Mg))/SO4 < 1 - - if((w1(1)+w1(3)+w1(6)+2.*(w1(7)+w1(8))).le.w1(2)) then - zflag=4. - endif - -! SULFATE NEUTRAL CASE - - if((w1(1)+w1(3)+w1(6)+2.*(w1(7)+w1(8))).gt.(2.*w1(2))) then - zflag=2. - endif - -! SULFATE POOR AND CATION POOR CASE - - if((w1(1)+w1(6)+2.*(w1(7)+w1(8))).gt.(2.*w1(2))) then - zflag=1. - endif - - IF ( RH .LT. RHMIN ) RH=RHMIN - IF ( RH .GT. RHMAX ) RH=RHMAX - -! CALCULATE TEMPERATURE DEPENDENCY FOR SOME RHDs - - RHDX(:)=RHDA(:)*exp(RHDE(:)*(1./TT-1./T0)) - RHDZ(:)=RHDX(:) - -! ACCOUNT FOR VARIOUS AMMOMIUM/SODIUM SULFATE SALTS ACCORDING TO MEAN VALUE AS OF ISORROPIA - - GG=2.0 ! (Na)2SO4 / (NH4)2SO4 IS THE PREFFERED SPECIES FOR SULFATE DEFICIENT CASES - IF(ZFLAG.EQ.3.) THEN - IF(RH.LE.RHDZ(7)) THEN ! ACCOUNT FOR MIXTURE OF (NH4)2SO4(s) & NH4HSO4(s) & (NH4)3H(SO4)2(s) - GG=1.677 ! (Na)2SO4 & NaHSO4 -! GG=1.5 - ELSEIF(RH.GT.RHDZ(7).AND.RH.LE.RHDZ(5)) THEN ! MAINLY (Na)2SO4 / (NH4)2SO4(s) & (NH4)3H(SO4)2(s) - GG=1.75 -! GG=1.5 - ELSEIF(RH.GE.RHDZ(5)) THEN ! (NH4)2SO4(S) & NH4HSO4(S) & SO4-- & HSO4- - GG=1.5 ! (Na)2SO4 & NaHSO4 - ENDIF - ENDIF - IF(ZFLAG.EQ.4.) GG=1.0 ! IF SO4 NEUTRALIZED, THEN ONLY AS NaHSO4 / NH4HSO4(S) OR HSO4- / H2SO4 - - RHD=RH - IF(IOPT.EQ.2.OR.RH_HIST.LT.RH_HIST_DW) THEN ! GET RHD FOR SOLIDS / HYSTERESIS -! -! GET LOWEST DELIQUESCENCE RELATIVE HUMIDITIES ACCORDING TO THE CONCENTRATION DOMAIN (APROXIMATION) -! BASED ON RHD / MRHD ISORROPIA/SCAPE -! - w2(:)=1. - do ii=1,8 - if(w1(ii).le.1.e-12) w2(ii)=0. ! skip compound in RHD calculation if value is concentration is zero or rather small - enddo - -! GET LOWEST RHD ACCORDING TO THE CONCENTRATION DOMAIN - -! zflag=1. (cation rich) ... -! 1. sea salt aerosol : RHDX(1)=MgCl2 -! 2. mineral dust aerosol : RHDX(2)=Ca(NO3)2 -! -! zflag=2. (sulfate neutral) ... -! 3. ammonium + nitrate : RHDX(3)= NH4NO3 -! 4. ammonium + sulfate : RHDX(4)=(NH4)2SO4 -! 5. ammonium + sulfate mixed salt : RHDX(5)=(NH4)3H(SO4)2, (NH4)2SO4 -! 6. ammonium + nitrate + sulfate : RHDX(6)=(NH4)2SO4, NH4NO3, NA2SO4, NH4CL -! -! zflag=3. (sulfate poor) ... -! 7. ammonium + sulfate (1:1,1.5) : RHDX(7)= NH4HSO4 -! -! zflag=4. (sulfate very poor) ... -! 8. sulfuric acid : RHDX(8)= H2SO4 - - IF(ZFLAG.EQ.1.)THEN - - RHD=W2(1)+W2(5) ! Na+ dependency - IF(RHD.EQ.0.) RHDX(1)=1. - RHD=W2(6)+W2(7)+W2(8) ! K+/Ca++/Mg++ dependency (incl. ss) - IF(RHD.EQ.0.) RHDX(2)=1. - - RHD=MINVAL(RHDX(1:2)) - - ELSEIF(ZFLAG.EQ.2.)THEN - - RHD=W2(3)*W2(4) ! NH4+ & NO3- dependency - IF(RHD.EQ.0.) RHDX(3)=1. - RHD=W2(2)+W2(3) ! NH4+ & SO4-- dependency - IF(GG.NE.2.) RHD=0. ! account only for pure (NH4)2SO4 - IF(RHD.EQ.0.) RHDX(4)=1. - RHD=W2(2)+W2(3) ! NH4+ & SO4-- dependency - IF(RHD.EQ.0.) RHDX(5)=1. - RHD=W2(2)+W2(3)+W2(4)+W2(5) ! (NH4)2SO4, NH4NO3, NA2SO4, NH4CL dependency - IF(RHD.EQ.0.) RHDX(6)=1. - -! RHD=MINVAL(RHDX(3:4)) - RHD=MINVAL(RHDX(3:6)) - - ELSEIF(ZFLAG.EQ.3.)THEN - - RHD=W2(2)+W2(3) ! NH4+ & SO4-- dependency - IF(RHD.EQ.0.) RHDX(7)=1. - RHD=RHDX(7) - - ELSEIF(ZFLAG.EQ.4.)THEN - - RHD=W2(2) ! H2SO4 dependency (assume no dry aerosol) - IF(RHD.EQ.0.) RHDX(8)=1. - - RHD=RHDX(8) - - ENDIF ! ZFLAG - ENDIF ! SOLIDS - -! GET WATER ACTIVITIES ACCORDING TO METZGER, 2000. -! FUNCTION DERIVED FROM ZSR RELATIONSHIP DATA (AS USED IN ISORROPIA) - - M0(:) = ((NW(:)*MWH20/MW(:)*(1./RH-1.)))**ZW(:) - -! CALCULATE TEMPERATURE DEPENDENT EQUILIBRIUM CONSTANTS - - T0T=T0/TT - COEF=1.0+LOG(T0T)-T0T - -! EQUILIBRIUM CONSTANT NH4NO3(s) <==> NH3(g) + HNO3(g) [atm^2] (ISORROPIA) - - XK10 = 5.746e-17 - XK10= XK10 * EXP(-74.38*(T0T-1.0) + 6.120*COEF) - KAN = XK10/(R*TT)/(R*TT) - -! EQUILIBRIUM CONSTANT NH4CL(s) <==> NH3(g) + HCL(g) [atm^2] (ISORROPIA) - - XK6 = 1.086e-16 - XK6 = XK6 * EXP(-71.00*(T0T-1.0) + 2.400*COEF) - KAC = XK6/(R*TT)/(R*TT) - -! -! CALCULATE AUTODISSOCIATION CONSTANT (KW) FOR WATER H2O <==> H(aq) + OH(aq) [mol^2/kg^2] (ISORROPIA) - - XKW = 1.010e-14 - XKW = XKW *EXP(-22.52*(T0T-1.0) + 26.920*COEF) - -! GET MEAN MOLAL IONIC ACTIVITY COEFF ACCORDING TO METZGER, 2002. - - GAMA=0.0 - IF(RH.GE.RHD) GAMA=(RH**ZFLAG/(1000./ZFLAG*(1.-RH)+ZFLAG)) - GAMA = GAMA**GF1 ! ONLY GAMA TYPE OF NH4NO3, NaCl, etc. NEEDED SO FAR - - GAMA=0.0 - GFN=K*K ! K=2, i.e. condensation of 2 water molecules per 1 mole ion pair - GF=GFN*GF1 ! = GFN[=Nw=4] * GF1[=(1*1^1+1*1^1)/2/Nw=1/4] = 1 - ! ONLY GAMA TYPE OF NH4NO3, NH4Cl, etc. needed so far - - IF(RH.GE.RHD) GAMA=RH**GF/((GFN*MWH20*(1./RH-1.)))**GF1 - - GAMA = min(GAMA,1.0) ! FOCUS ON 0-1 SCALE - GAMA = max(GAMA,0.0) - GAMA = (1.-GAMA)**K ! transplate into aqueous phase equillibrium and account for - ! enhanced uptake of aerosol precursor gases with increasing RH - ! (to match the results of ISORROPIA) - - -! CALCULATE RHD DEPENDENT EQ: IF RH < RHD => NH4NO3(s) <==> NH3 (g) + HNO3(g) (ISORROPIA) -! IF RH >> RHD => HNO3 (g) -> NO3 (aq) - - X00 = MAX(ZERO,MIN(TNa,GG*TSO4)) ! MAX SODIUM SULFATE - X0 = MAX(ZERO,MIN(TNH4,GG*TSO4-X00)) ! MAX AMMOMIUM SULFATE - X01 = MAX(ZERO,MIN(TNa-X00, TNO3)) ! MAX SODIUM NITRATE - X1 = MAX(ZERO,MIN(TNH4-X0,TNO3-X01)) ! MAX AMMOMIUM NITRATE -! - X02 = MAX(ZERO,MIN(TNa-X01-X00,TCl)) ! MAX SODIUM CHLORIDE - X03 = MAX(ZERO,MIN(TNH4-X0-X1,TCl-X02))! MAX AMMOMIUM CHLORIDE - - X2 = MAX(TNH4-X1-X0-X03,ZERO) ! INTERIM RESIDUAL NH3 - X3 = MAX(TNO3-X1-X01,ZERO) ! INTERIM RESIDUAL HNO3 - X04 = MAX(TSO4-(X0+X00)/GG,ZERO) ! INTERIM RESIDUAL H2SO4 - X05 = MAX(TCl-X03-X02,ZERO) ! INTERIM RESIDUAL HCl -! X06 = MAX(TNa-X02-X01-X00,ZERO) ! INTERIM RESIDUAL Na (should be zero for electro-neutrality in input data) -! - ZKAN=2. - IF(RH.GE.RHD) ZKAN=ZKAN*GAMA - - X4 = X2 + X3 - X5 = SQRT(X4*X4+KAN*ZKAN*ZKAN) - X6 = 0.5*(-X4+X5) - X6 = MIN(X1,X6) - - GHCl = X05 ! INTERIM RESIDUAl HCl - GNH3 = X2 + X6 ! INTERIM RESIDUAl NH3 - GNO3 = X3 + X6 ! RESIDUAl HNO3 - GSO4 = X04 ! RESIDUAl H2SO4 - PNa = X02 + X01 + X00 ! RESIDUAl Na (neutralized) - - ZKAC=2. - IF(RH.GE.RHD) ZKAC=ZKAC*GAMA - - X08 = GNH3 + GHCl - X09 = SQRT(X08*X08+KAC*ZKAC*ZKAC) - X10 = 0.5*(-X08+X09) - X11 = MIN(X03,X10) - - GHCl = GHCl + X11 ! RESIDUAL HCl - GNH3 = GNH3 + X11 ! RESIDUAL NH3 - -! GO SAVE ... - - IF(GHCl.LT.0.) GHCl=0. - IF(GSO4.LT.0.) GSO4=0. - IF(GNH3.LT.0.) GNH3=0. - IF(GNO3.LT.0.) GNO3=0. - IF(PNa.LT.0.) PNa=0. - IF(GSO4.GT.TSO4) GSO4=TSO4 - IF(GNH3.GT.TNH4) GNH3=TNH4 - IF(GNO3.GT.TNO3) GNO3=TNO3 - IF(GHCl.GT.TCl) GHCl=TCl - IF(PNa.GT.TNa) PNa=TNa -! IF(PNa.LT.TNa) print*,il,' PNa.LT.TNa => no electro-neutrality in input data! ',PNa,TNa - - -! DEFINE AQUEOUSE PHASE (NO SOLID NH4NO3 IF NO3/SO4>1, TEN BRINK, ET AL., 1996, ATMOS ENV, 24, 4251-4261) - -! IF(TSO4.EQ.ZERO.AND.TNO3.GT.ZERO.OR.TNO3/TSO4.GE.1.) RHD=RH - -! IF(IOPT.EQ.2.AND.RH.LT.RHD.OR.IOPT.EQ.2.AND.RH_HIST.LT.RH_HIST_DW) THEN ! SOLIDS / HYSTERESIS - IF(RH_HIST.EQ.1.AND.RH.LT.RHD) THEN ! SOLIDS / HYSTERESIS - - ! EVERYTHING DRY, ONLY H2SO4 (GSO4) REMAINS IN THE AQUEOUSE PHASE - - ANH4 = 0. - ASO4 = 0. - ANO3 = 0. - ACl = 0. - ANa = 0. - - ELSE ! SUPERSATURATED SOLUTIONS NO SOLID FORMATION - - ASO4 = TSO4 - GSO4 - ANH4 = TNH4 - GNH3 - ANO3 = TNO3 - GNO3 - ACl = TCl - GHCl - ANa = PNa - - ENDIF ! SOLIDS / HYSTERESIS - -! CALCULATE AEROSOL WATER [kg/m^3(air)] -! -! salt solutes: -! 1 = NACl, 2 = (NA)2SO4, 3 = NANO3, 4 = (NH4)2SO4, 5 = NH4NO3, 6 = NH4CL, 7 = 2H-SO4 -! 8 = NH4HSO4, 9 = NAHSO4, 10 = (NH4)3H(SO4)2 -! - IF(ZFLAG.EQ.1.) WH2O = ASO4/M0( 2) + ANO3/M0(3) + ACl/M0(6) !sulfate poor - IF(ZFLAG.EQ.2.) WH2O = ASO4/M0( 9) + ANO3/M0(5) + ACl/M0(6) !sulfate neutral - IF(ZFLAG.EQ.3.) WH2O = ASO4/M0( 8) + ANO3/M0(5) + ACl/M0(6) !sulfate rich - IF(ZFLAG.EQ.4.) WH2O = ASO4/M0( 8) + GSO4/M0(7) !sulfate very rich - -! CALCULATE AQUEOUS PHASE PROPERTIES - -! PH = 9999. - PH = 7. - MOLAL = 0. - HPLUS = 0. - ZIONIC= 0. - - IF(WH2O.GT.0.) THEN - - ! CALCULATE AUTODISSOCIATION CONSTANT (KW) FOR WATER - - AKW=XKW*RH*WH2O*WH2O ! H2O <==> H+ + OH- with kw [mol^2/kg^2] - AKW=AKW**0.5 ! [OH-] = [H+] [mol] - - ! Calculate hydrogen molality [mol/kg], i.e. H+ of the ions: - ! Na+, NH4+, NO3-, Cl-, SO4--, HH-SO4- [mol/kg(water)] - ! with [OH-] = kw/[H+] - - HPLUS = (-ANa/WH2O-ANH4/WH2O+ANO3/WH2O+ACl/WH2O+GG*ASO4/WH2O+GG*GSO4/WH2O+ & - SQRT(( ANa/WH2O+ANH4/WH2O-ANO3/WH2O-ACl/WH2O-GG*ASO4/WH2O-GG*GSO4/WH2O)**2+XKW/AKW*WH2O))/2. - - ! Calculate pH - - !PH=-ALOG10(HPLUS) ! aerosol pH - !++alfgr changed to - !UPG - IF(HPLUS.GT.0.) THEN - PH=1.d0*log10(HPLUS) - END IF - - !UPG - - ! Calculate ionic strength [mol/kg] - - ZIONIC=0.5*(ANa+ANH4+ANO3+ACl+ASO4*GG*GG+GSO4*GG*GG+XKW/AKW*WH2O*WH2O) - ZIONIC=ZIONIC/WH2O ! ionic strength [mol/kg] -! ZIONIC=min(ZIONIC,200.0) ! limit for output -! ZIONIC=max(ZIONIC,0.0) - - ENDIF ! AQUEOUS PHASE -! -!------------------------------------------------------- -! calculate diagnostic output consistent with other EQMs ... -! - ASO4 = ASO4 + GSO4 ! assuming H2SO4 remains aqueous - - TNa = TNa * 1.e6 ! total input sodium (g+p) [umol/m^3] - TSO4 = TSO4 * 1.e6 ! total input sulfate (g+p) [umol/m^3] - TNH4 = TNH4 * 1.e6 ! total input ammonium (g+p) [umol/m^3] - TNO3 = TNO3 * 1.e6 ! total input nitrate (g+p) [umol/m^3] - TCl = TCl * 1.e6 ! total input chloride (g+p) [umol/m^3] - TPo = TPo * 1.e6 ! total input potasium (g+p) [umol/m^3] - TCa = TCa * 1.e6 ! total input calcium (g+p) [umol/m^3] - TMg = TMg * 1.e6 ! total input magnesium(g+p) [umol/m^3] -! -! residual gas: - GNH3 = GNH3 * 1.e6 ! residual NH3 - GSO4 = GSO4 * 1.e6 ! residual H2SO4 - GNO3 = GNO3 * 1.e6 ! residual HNO3 - GHCl = GHCl * 1.e6 ! residual HCl - -! total particulate matter (neutralized) - PNH4=TNH4-GNH3 ! particulate ammonium [umol/m^3] - PNO3=TNO3-GNO3 ! particulate nitrate [umol/m^3] - PCl =TCl -GHCl ! particulate chloride [umol/m^3] - PNa =TNa ! particulate sodium [umol/m^3] - PSO4=TSO4 ! particulate sulfate [umol/m^3] - -! liquid matter - ASO4 = ASO4 * 1.e6 ! aqueous phase sulfate [umol/m^3] - ANH4 = ANH4 * 1.e6 ! aqueous phase ammonium [umol/m^3] - ANO3 = ANO3 * 1.e6 ! aqueous phase nitrate [umol/m^3] - ACl = ACl * 1.e6 ! aqueous phase chloride [umol/m^3] - ANa = ANa * 1.e6 ! aqueous phase sodium [umol/m^3] - -! solid matter - SNH4=PNH4-ANH4 ! solid phase ammonium [umol/m^3] - SSO4=PSO4-ASO4 ! solid phase sulfate [umol/m^3] - SNO3=PNO3-ANO3 ! solid phase nitrate [umol/m^3] - SCl =PCl -ACl ! solid phase chloride [umol/m^3] - SNa =PNa -ANa ! solid phase sodium [umol/m^3] - -! GO SAVE ... - - IF(SNH4.LT.0.) SNH4=0. - IF(SSO4.LT.0.) SSO4=0. - IF(SNO3.LT.0.) SNO3=0. - IF(SCl.LT.0.) SCl=0. - IF(SNa.LT.0.) SNa=0. - - PM=SNH4+SSO4+SNO3+SNH4+SCl+SNa+ANH4+ASO4+ANO3+ACl+ANa ! total PM [umol/m^3] - PMs=SNH4*MWNH4+SSO4*MWSO4+SNO3*MWNO3+SCl*MWCl+SNa*MWNa ! dry particulate matter (PM) [ug/m^3] - PMt=PMs+ANH4*MWNH4+ASO4*MWSO4+ANO3*MWNO3+ACl*MWCl+ & - ANa*MWNa ! total (dry + wet) PM, excl. H20 [ug/m^3] - - WH2O = WH2O * 1.e9 ! convert aerosol water from [kg/m^3] to [ug/m^3] - IF(WH2O.LT.1.e-3) WH2O=0. - -! UPDATE HISTORY RH FOR HYSTERESIS (ONLINE CALCULATIONS ONLY) - - RH_HIST=2. ! wet - IF(WH2O.EQ.0.) RH_HIST=1. ! dry - - RINC = 1. - IF(PMt.GT.0.) RINC = (WH2O/PMt+1)**(1./3.) ! approx. radius increase due to water uptake - IF(RINC.EQ.0.) RINC = 1. - - RATIONS = 0. - IF(PSO4.GT.0.) RATIONS = PNO3/PSO4 ! nitrate / sulfate mol ratio - - GR = 0. - IF(GNO3.GT.0.) GR = GNH3/GNO3 ! gas ratio = residual NH3 / residual HNO3 [-] - - DON = 0. - IF((PNO3+2.*PSO4).GT.0.) DON = 100.*PNH4/(PNO3+2.*PSO4)! degree of neutralization by ammonia : ammonium / total nitrate + sulfate [%] - - NO3P = 0. - IF(TNO3.GT.0.) NO3P = 100.*PNO3/TNO3 ! nitrate partitioning = nitrate / total nitrate [%] - - NH4P = 0. - IF(TNH4.GT.0.) NH4P = 100.*PNH4/TNH4 ! ammonium partitioning = ammonium / total ammonium [%] -! -! store aerosol species for diagnostic output: -!______________________________________________________________ -! Input values: - yo(il, 1) = TT - 273.15 ! T [degC] - yo(il, 2) = RH * 100.00 ! RH [%] - yo(il, 3) = TNH4 ! total input ammonium (g+p) [umol/m^3] - yo(il, 4) = TSO4 ! total input sulfate (g+p) [umol/m^3] - yo(il, 5) = TNO3 ! total input nitrate (g+p) [umol/m^3] - yo(il, 6) = TNa ! total input sodium (p) [umol/m^3] - yo(il,33) = TCl ! total input chloride (g+p) [umol/m^3] - yo(il, 7) = TPo ! total input potasium (p) [umol/m^3] - yo(il,34) = TCa ! total input calcium (p) [umol/m^3] - yo(il,35) = TMg ! total input magnesium(p) [umol/m^3] - yo(il,25) = PX ! atmospheric pressure [hPa] -! Output values: - yo(il, 8) = GHCL ! residual HCl (g) [umol/m^3] - yo(il, 9) = GNO3 ! residual HNO3 (g) [umol/m^3] - yo(il,10) = GNH3 ! residual NH3 (g) [umol/m^3] - yo(il,11) = GSO4 ! residual H2SO4 (aq) [umol/m^3] - yo(il,12) = WH2O ! aerosol Water (aq) [ug/m^3] - yo(il,13) = PH ! aerosol pH [log] - yo(il,14) = ZFLAG ! concnetration domain [1=SP,2=SN,3=SR,4=SVR] - yo(il,15) = PM ! total particulate matter [umol/m^3] - yo(il,16) = SNH4 ! solid ammonium (s) [umol/m^3] - yo(il,17) = SNO3 ! solid nitrate (s) [umol/m^3] - yo(il,18) = SSO4 ! solid sulfate (s) [umol/m^3] - yo(il,19) = PNH4 ! particulate ammonium (p=a+s) [umol/m^3] - yo(il,20) = PNO3 ! particulate nitrate (p=a+s) [umol/m^3] - yo(il,21) = PSO4 ! particulate sulfate (p=a+s) [umol/m^3] - yo(il,22) = RATIONS ! mol ratio Nitrate/Sulfate (p) [-] - yo(il,23) = GAMA ! activity coefficient (e.g. NH4NO3) [-] - yo(il,24) = ZIONIC ! ionic strength (aq) [mol/kg] - yo(il,26) = PMt ! total PM (liquids & solids) [ug/m^3] - yo(il,27) = PMs ! total PM (solid) [ug/m^3] - yo(il,28) = RINC ! radius increase (H2O/PMt+1)**(1/3) [-] - yo(il,29) = SCl ! solid chloride (s) [umol/m^3] - yo(il,30) = SNa ! solid sodium (s) [umol/m^3] - yo(il,31) = PCl ! particulate chloride (p=a+s) [umol/m^3] - yo(il,32) = PNa ! particulate sodium (p=a+s) [umol/m^3] -enddo -! - -IF (LHOOK) CALL DR_HOOK('EQSAM_V03D_SUB',1,ZHOOK_HANDLE) -end subroutine eqsam_v03d_sub diff --git a/src/arome/chem/internals/fchap.F b/src/arome/chem/internals/fchap.F deleted file mode 100644 index 1cc972fbf006538d0af96348d14d72941c07f7aa..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/fchap.F +++ /dev/null @@ -1,37 +0,0 @@ -! ######spl - FUNCTION fchap(zeta) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - REAL zeta - -! function value: - REAL fchap - -! internal: - REAL rm - INTEGER j - REAL y(21) -!_______________________________________________________________________ - - DATA y / & - & 3.800,4.055,4.348,4.687,5.083,5.551,6.113, & - & 6.799,7.650,8.732,10.144,12.051,14.730,18.686, & - & 24.905,35.466,55.211,96.753,197.,485.,1476./ -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FCHAP',0,ZHOOK_HANDLE) - j = MIN( MAX(INT(zeta)+1,75),95 ) - rm = FLOAT(j) - - fchap = y(j-75) + (y(j-74) - y(j-75))*(zeta - (rm-1.)) -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('FCHAP',1,ZHOOK_HANDLE) - RETURN - ENDFUNCTION FCHAP diff --git a/src/arome/chem/internals/fctreso.F90 b/src/arome/chem/internals/fctreso.F90 deleted file mode 100644 index 1c54f79610b10266d0fd73efa60458ba51a0d562..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/fctreso.F90 +++ /dev/null @@ -1,44 +0,0 @@ -! ######spl -SUBROUTINE FCTRESO(II,JJ,KK,WIJ,WJK,XMAX,XMIN,XMOD,X,Y,KVECTN) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -IMPLICIT NONE -INTEGER, INTENT(IN) :: KVECTN -REAL, DIMENSION(100,100), INTENT(INOUT) :: WIJ,WJK -REAL, DIMENSION(2,100), INTENT(INOUT) :: XMIN,XMAX,XMOD -INTEGER, INTENT(INOUT) :: II,JJ,KK -REAL, DIMENSION(KVECTN,100), INTENT(INOUT) :: X,Y - -REAL, DIMENSION(KVECTN,100) :: U,H,S -INTEGER :: I, J, K - -! .. LES EQUATIONS DU RESEAU -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('FCTRESO',0,ZHOOK_HANDLE) -DO I=1,II - U(:,I)=(X(:,I)-XMIN(1,I))/(XMAX(1,I)-XMIN(1,I)) -ENDDO -U(:,II+1)=1. - -DO J=1,JJ - H(:,J)=0. - DO I=1,II+1 - H(:,J)=H(:,J)+WIJ(I,J)*U(:,I) - ENDDO - H(:,J)=1./(1.+EXP(-H(:,J))) -ENDDO -H(:,JJ+1)=1. - -DO K=1,KK - S(:,K)=0. - DO J=1,JJ+1 - S(:,K)=S(:,K)+WJK(J,K)*H(:,J) - ENDDO - S(:,K)=1./(1.+EXP(-S(:,K))) - - Y(:,K)=XMIN(2,K)+S(:,K)*(XMAX(2,K)-XMIN(2,K)) -ENDDO - -IF (LHOOK) CALL DR_HOOK('FCTRESO',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE FCTRESO diff --git a/src/arome/chem/internals/fery.F b/src/arome/chem/internals/fery.F deleted file mode 100644 index 0eff44c8b2d5685faf6c58ddfcb8bc6f03989465..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/fery.F +++ /dev/null @@ -1,36 +0,0 @@ -! ######spl - FUNCTION fery(w) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - REAL w - -! function value: - REAL fery -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FERY',0,ZHOOK_HANDLE) - IF (w .LT. 250.) THEN - fery = 1. -! outside the ery spectrum range - ELSEIF ((w .GE. 250.) .AND. (w .LT. 298)) THEN - fery = 1. - ELSEIF ((w .GE. 298.) .AND. (w .LT. 328.)) THEN - fery = 10.**( 0.094*(298.-w) ) - ELSEIF ((w .GE. 328.) .AND. (w .LT. 400.)) THEN - fery = 10.**( 0.015*(139.-w) ) - ELSE - fery = 1.E-36 -! outside the ery spectrum range - ENDIF - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('FERY',1,ZHOOK_HANDLE) - RETURN - ENDFUNCTION FERY diff --git a/src/arome/chem/internals/fsum.F b/src/arome/chem/internals/fsum.F deleted file mode 100644 index 3eaa3f532d30988d4d6cef7df91f71deea60495b..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/fsum.F +++ /dev/null @@ -1,30 +0,0 @@ -! ######spl - FUNCTION fsum(n,x) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - INTEGER n - REAL x(n) - -! function value: - REAL fsum - -! local: - INTEGER i -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FSUM',0,ZHOOK_HANDLE) - fsum = 0. - DO 10, i = 1, n - fsum=fsum+x(i) - 10 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('FSUM',1,ZHOOK_HANDLE) - RETURN - ENDFUNCTION FSUM diff --git a/src/arome/chem/internals/futr.F b/src/arome/chem/internals/futr.F deleted file mode 100644 index bcc501f88e307144faad2387b9565659e3d9f891..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/futr.F +++ /dev/null @@ -1,56 +0,0 @@ -! ######spl - FUNCTION futr(w) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - REAL w - -! function value: - REAL futr - -! local: - REAL a1, a2, a3, a4, a5, & - & x1, x2, x3, x4, x5, & - & t1, t2, t3, t4, t5, & - & b1, b2, b3, b4, b5, & - & p -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUTR',0,ZHOOK_HANDLE) - a1 = -10.91 - a2 = - 0.86 - a3 = - 8.60 - a4 = - 9.36 - a5 = -13.15 - - x1 = 270. - x2 = 302. - x3 = 334. - x4 = 367. - x5 = 400. - - t1 = (w-x2)*(w-x3)*(w-x4)*(w-x5) - t2 = (w-x1)*(w-x3)*(w-x4)*(w-x5) - t3 = (w-x1)*(w-x2)*(w-x4)*(w-x5) - t4 = (w-x1)*(w-x2)*(w-x3)*(w-x5) - t5 = (w-x1)*(w-x2)*(w-x3)*(w-x4) - - b1 = (x1-x2)*(x1-x3)*(x1-x4)*(x1-x5) - b2 = (x2-x1)*(x2-x3)*(x2-x4)*(x2-x5) - b3 = (x3-x1)*(x3-x2)*(x3-x4)*(x3-x5) - b4 = (x4-x1)*(x4-x2)*(x4-x3)*(x4-x5) - b5 = (x5-x1)*(x5-x2)*(x5-x3)*(x5-x4) - - p = a1*t1/b1 + a2*t2/b2 + a3*t3/b3 + a4*t4/b4 + a5*t5/b5 - - futr = EXP(p) -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('FUTR',1,ZHOOK_HANDLE) - RETURN - ENDFUNCTION FUTR diff --git a/src/arome/chem/internals/gridck.F b/src/arome/chem/internals/gridck.F deleted file mode 100644 index 9752ab1f0b5f6da867be0bdcb746ad666fe1fdb9..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/gridck.F +++ /dev/null @@ -1,112 +0,0 @@ -! ######spl - SUBROUTINE gridck(k,n,x,ok) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! input: - INTEGER k, n - REAL x(k) - -! output: - LOGICAL ok - -! local: - INTEGER i -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('GRIDCK',0,ZHOOK_HANDLE) - ok = .TRUE. - -! check if dimension meaningful and within bounds - - IF (n .GT. k) THEN - ok = .false. - WRITE(kout,100) - IF (LHOOK) CALL DR_HOOK('GRIDCK',1,ZHOOK_HANDLE) - RETURN - ENDIF - 100 FORMAT('Number of data exceeds dimension') - - IF (n .LT. 2) THEN - ok = .FALSE. - WRITE(kout,101) - IF (LHOOK) CALL DR_HOOK('GRIDCK',1,ZHOOK_HANDLE) - RETURN - ENDIF - 101 FORMAT('Too few data, number of data points must be >= 2') - -! disallow negative grid values - - IF(x(1) .LT. 0.) THEN - ok = .FALSE. - WRITE(kout,105) - IF (LHOOK) CALL DR_HOOK('GRIDCK',1,ZHOOK_HANDLE) - RETURN - ENDIF - 105 FORMAT('Grid cannot start below zero') - -! check sorting - - DO 10, i = 2, n - IF( x(i) .LE. x(i-1)) THEN - ok = .FALSE. - WRITE(kout,110) - IF (LHOOK) CALL DR_HOOK('GRIDCK',1,ZHOOK_HANDLE) - RETURN - ENDIF - 10 CONTINUE - 110 FORMAT('Grid is not sorted or contains multiple values') -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('GRIDCK',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE GRIDCK diff --git a/src/arome/chem/internals/gridw.F b/src/arome/chem/internals/gridw.F deleted file mode 100644 index 62a63d04033a686998c568fe489b36841368302c..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/gridw.F +++ /dev/null @@ -1,175 +0,0 @@ -! ######spl - SUBROUTINE gridw(nw,wl,wc,wu) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - IMPLICIT NONE - -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=20) -! input - PARAMETER(kin=85) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! output: - - REAL wl(kw), wc(kw), wu(kw) - INTEGER nw - -! local: - - REAL wincr - INTEGER iw - LOGICAL ok - INTEGER idum - REAL dum - INTEGER mopt - -!_______________________________________________________________________ - -!*** chose wavelengths - -! some pre-set options -! mopt = 1 equal spacing -! mopt = 2 Isaksen's grid -! mopt = 3 combined Kockarts/Isaksen grid -! mopt = 4 user-defined - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('GRIDW',0,ZHOOK_HANDLE) - mopt = 2 - IF (mopt .EQ. 1) GO TO 1 - IF (mopt .EQ. 2) GO TO 2 - IF (mopt .EQ. 3) GO TO 3 - IF (mopt .EQ. 4) GO TO 4 - - 1 CONTINUE - nw = 140 + 1 - wincr = 1.0 - DO 10, iw = 1, nw-1 - wl(iw) = 280. + wincr*FLOAT(iw-1) - wu(iw) = wl(iw) + wincr - wc(iw) = ( wl(iw) + wu(iw) )/2. - 10 CONTINUE - wl(nw) = wu(nw-1) - GO TO 9 - - 2 CONTINUE - nw = 0 - OPEN(unit=kin,file='DATAE1/GRIDS/isaksen.grid',status='old') - DO iw = 1, 2 - READ(kin,*) - ENDDO - DO iw = 1, 130 - nw = nw + 1 - READ(kin,*) idum, dum, wc(nw), wl(nw), wu(nw) - ENDDO - CLOSE(kin) - nw = nw + 1 - wl(nw) = wu(nw-1) - GO TO 9 - -!** grid for strat photolysis calculations, extended at short wavelengths - - 3 CONTINUE - nw = 0 - OPEN(unit=kin,file='DATAE1/GRIDS/kockarts.grid',status='old') - DO iw = 1, 16 - nw = nw + 1 - READ(kin,*) wl(nw), wu(nw) - wc(iw) = ( wl(nw) + wu(nw) ) / 2. - ENDDO - CLOSE(kin) - - OPEN(unit=kin,file='DATAE1/GRIDS/isaksen.grid',status='old') - DO iw = 1, 2 + 10 - READ(kin,*) - ENDDO - DO iw = 11, 130 - nw = nw + 1 - READ(kin,*) idum, dum, wc(nw), wl(nw), wu(nw) - ENDDO - CLOSE(kin) - nw = nw + 1 - wl(nw) = wu(nw-1) - GO TO 9 - - 4 CONTINUE -! define wavelength intervals of width 1 nm from 150 - 420 nm: - nw = 1 - wl(1) = 150. - DO iw = 151, 420 - wu(nw) = Float(iw) - wc(nw) = (wl(nw) + wu(nw))/2. - nw = nw+1 - wl(nw) = Float(iw) - ENDDO -! define wavelength intervals of width 10 nm from 420 - 700 nm: - DO iw = 430, 700, 10 - wu(nw) = Float(iw) - wc(nw) = (wl(nw) + wu(nw))/2. - nw = nw+1 - wl(nw) = Float(iw) - ENDDO - - - 9 CONTINUE - -!** -! write to record - - WRITE(kout,*)'w-grid:',nw,wl(1),wl(nw) - -! check grid for assorted improprieties: - - CALL gridck(kw,nw,wl,ok) - - IF (.NOT. ok) THEN - WRITE(kout,*)'STOP in GRIDW: The w-grid does not make sense' - STOP - ENDIF - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('GRIDW',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE GRIDW diff --git a/src/arome/chem/internals/gridz.F b/src/arome/chem/internals/gridz.F deleted file mode 100644 index a181de51468dfedb20456918c13d03cbed802710..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/gridz.F +++ /dev/null @@ -1,131 +0,0 @@ -! ######spl - SUBROUTINE gridz(nz,z,az,nlevel) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!XXX SUBROUTINE gridz(nz,z) -!KS:8========================================================================== - - IMPLICIT NONE - -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -!KS:9========================================================================== -! input: altitudes of calling model (CAUTION: AZ is given in meters, -! Z will be in kilometers!!) - REAL az(*) - INTEGER nlevel -!KS:9========================================================================== - -! output: altitude working grid: - - REAL z(kz) - INTEGER nz - -! local: - - REAL zincr - INTEGER i - LOGICAL ok -!_______________________________________________________________________ - -! set vertical grid of the atmosphere. All values should be in km. -! User specifies upright grid (surface at lowest km value, increasing -! upwards: -! - NZ = total number of user levels -! - Z(I) = altitude in km for each level. -! Note "levels" are vertical points -! "layers" are vertical distances between levels - -! set atmospheric level altitudes (in real km), including -! top-most level. -! non-uniform spacing is possible - -!KS:10========================================================================= -!XXX nz = 51 -!XXX z(1) = 0. -!XXX zincr = 1. -!XXX DO 10, i = 2, nz -!XXX z(i) = z(1) + FLOAT(i-1) * zincr -!XXX 10 CONTINUE -! -! use model levels for vertical grid where available - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('GRIDZ',0,ZHOOK_HANDLE) - do 10, i = 1, nlevel - z(i) = az(i) *1E-3 -10 continue -! - nz = nlevel -! -! fill up between model top and 50km with 1km grid spacing -20 continue - if (z(nz) .ge. 50.) goto 30 - nz = nz + 1 - if (nz .gt. kz) stop "GRIDZ: not enough memory, increase kz" - z(nz) = z(nz-1) + 1. - goto 20 -! -30 continue -! -!KS:10========================================================================= - -! write to record: - - WRITE(kout,*)'z-grid:',nz,z(1),z(nz) - -! check grid for assorted improprieties: - - CALL gridck(kz,nz,z,ok) - - IF (.NOT. ok) THEN - WRITE(kout,*)'STOP in GRIDZ: The z-grid does not make sense' - STOP - ENDIF -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('GRIDZ',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE GRIDZ diff --git a/src/arome/chem/internals/ini_wet_dep.F90 b/src/arome/chem/internals/ini_wet_dep.F90 deleted file mode 100644 index 72d6d0918f9c9f366221fbdbb5380f557d0a6c6a..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ini_wet_dep.F90 +++ /dev/null @@ -1,456 +0,0 @@ -! ######spl - SUBROUTINE INI_WET_DEP - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ########################################################### -! -!!**** *INI_RAIN_ICE * - initialize the constants necessary for the warm and -!! cold microphysical schemes. -!! -!! PURPOSE -!! ------- -!! The purpose of this routine is to initialize the constants used to -!! resolve the mixed phase microphysical scheme. The collection kernels of -!! the precipitating particles are recomputed if necessary if some parameters -!! defining the ice categories have been modified. The number of small -!! time steps leading to stable scheme for the rain, ice, snow and ggraupeln -!! sedimentation is also computed (time-splitting technique). -!! -!!** METHOD -!! ------ -!! The constants are initialized to their numerical values and the number -!! of small time step is computed by dividing the 2* Deltat time interval of -!! the Leap-frog scheme so that the stability criterion for the rain -!! sedimentation is fulfilled for a Raindrop maximal fall velocity equal -!! VTRMAX. The parameters defining the collection kernels are read and are -!! checked against the new ones. If any change occurs, these kernels are -!! recomputed and their numerical values are written in the output listiing. -!! -!! EXTERNAL -!! -------- -!! GAMMA : gamma function -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_CST -!! XPI ! -!! XP00 ! Reference pressure -!! XRD ! Gaz constant for dry air -!! XRHOLW ! Liquid water density -!! Module MODD_REF -!! XTHVREFZ ! Reference virtual pot.temp. without orography -!! Module MODD_PARAMETERS_DEP -!! JPVEXT ! -!! Module MODD_WET_DEP_DESCR -!! Module MODD_WET_DEP_PARAM -!! -!! REFERENCE -!! --------- -!! Book2 of documentation ( routine INI_RAIN_ICE ) -!! -!! AUTHOR -!! ------ -!! J.-P. Pinty * Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 04/12/95 -!! 01-02-2011 M. Mokhtari Adaptation of ini_rain_ice under ini_wet_dep for Aladin -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CST -USE MODD_PARAMETERS_DEP -USE MODD_WET_DEP_DESCR -USE MODD_WET_DEP_PARAM -USE MODD_REF -! -USE MODI_GAMMA -USE MODI_GAMMA_INC -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -! -!INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints -! -!* 0.2 Declarations of local variables : -! -INTEGER :: IKB ! Coordinates of the first physical - ! points along z -INTEGER :: J1,J2 ! Internal loop indexes -REAL :: ZT ! Work variable -REAL :: ZVTRMAX ! Raindrop maximal fall velocity -REAL :: ZRHO00 ! Surface reference air density -REAL :: ZRATE ! Geometrical growth of Lbda in the tabulated - ! functions and kernels -REAL :: ZBOUND ! XDCSLIM*Lbda_s: upper bound for the partial - ! integration of the riming rate of the aggregates -REAL :: ZEGS, ZEGR, ZEHS, ZEHG! Bulk collection efficiencies -! -INTEGER :: IND ! Number of interval to integrate the kernels -REAL :: ZALPHA, ZNU, ZP ! Parameters to compute the value of the p_moment - ! of the generalized Gamma function -REAL :: ZESR ! Mean efficiency of rain-aggregate collection -REAL :: ZFDINFTY ! Factor used to define the "infinite" diameter -! -INTEGER :: IRESP ! Return code of FM-routines -LOGICAL :: GFLAG ! Logical flag for printing the constatnts on the output - ! listing -REAL :: ZCONC_MAX ! Maximal concentration for snow -REAL :: ZGAMC,ZGAMC2 ! parameters - ! involving various moments of the generalized gamma law -REAL :: ZFACT_NUCL! Amplification factor for the minimal ice concentration -REAL :: ZXR ! Value of x_r in N_r = C_r lambda_r ** x_r -! -INTEGER :: KND -INTEGER :: KACCLBDAS,KACCLBDAR,KDRYLBDAG,KDRYLBDAS,KDRYLBDAR -INTEGER :: KWETLBDAS,KWETLBDAG,KWETLBDAH -REAL :: PALPHAR,PALPHAS,PALPHAG,PALPHAH -REAL :: PNUR,PNUS,PNUG,PNUH -REAL :: PBR,PBS,PBG,PBH -REAL :: PCR,PCS,PCG,PCH -REAL :: PDR,PDS,PDG,PDH -REAL :: PESR,PEGS,PEGR,PEHS,PEHG -REAL :: PFDINFTY -REAL :: PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN -REAL :: PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN -REAL :: PDRYLBDAR_MAX,PDRYLBDAR_MIN -REAL :: PWETLBDAS_MAX,PWETLBDAG_MAX,PWETLBDAS_MIN,PWETLBDAG_MIN -REAL :: PWETLBDAH_MAX,PWETLBDAH_MIN -REAL :: ZTHVREFZ -!------------------------------------------------------------------------------- -! -! 1. INTIALIZE OUTPUT LISTING AND COMPUTE KSPLTR FOR EACH MODEL -! --------------------------------------------------------- -! -! -!* 1.1 Set the hailstones maximum fall velocity -! -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('INI_WET_DEP',0,ZHOOK_HANDLE) -IF (ALLOCATED(XRTMIN)) THEN ! In case of nesting microphysics constants of - ! MODD_RAIN_ICE_PARAM are computed only once, - ! but if INI_RAIN_ICE has been called already - ! one must change the XRTMIN size. - DEALLOCATE(XRTMIN) -END IF -! -!------------------------------------------------------------------------------- -! -!* 2. CHARACTERISTICS OF THE SPECIES -! ------------------------------ -! -! -!* 2.1 Cloud droplet and Raindrop characteristics -! -XAC = (XPI/6.0)*XRHOLW -XBC = 3.0 -XCC = XRHOLW*XG/(18.0*1.7E-5) ! Stokes flow (Pruppacher p 322 for T=273K) -XDC = 2.0 -! -! -XAR = (XPI/6.0)*XRHOLW -XBR = 3.0 -XCR = 842. -XDR = 0.8 -! -!XCCR = 1.E7 ! N0_r = XCXR * lambda_r ** ZXR -XCCR = 8.E6 ! N0_r = XCXR * lambda_r ** ZXR -ZXR = -1. ! -! -XF0R = 1.00 -XF1R = 0.26 -! -XC1R = 1./2. -! -! -!* 2.2 Ice crystal characteristics -!* 2.3 Snowflakes/aggregates characteristics -! -! -XAS = 0.02 -XBS = 1.9 -XCS = 5.1 -XDS = 0.27 -! -XCCS = 5.0 -XCXS = 1.0 -! -XF0S = 0.86 -XF1S = 0.28 -! -XC1S = 1./XPI -! -! -!* 2.4 Graupel/Frozen drop characteristics -! -! -XAG = 19.6 ! Lump graupel case -XBG = 2.8 ! Lump graupel case -XCG = 124. ! Lump graupel case -XDG = 0.66 ! Lump graupel case -! -XCCG = 5.E5 -XCXG = -0.5 -! XCCG = 4.E4 ! Test of Ziegler (1988) -! XCXG = -1.0 ! Test of Ziegler (1988) -! -XF0G = 0.86 -XF1G = 0.28 -! -XC1G = 1./2. -! -! -!* 2.5 Hailstone characteristics -! -! -XAH = 470. -XBH = 3.0 -XCH = 207. -XDH = 0.64 -! -!XCCH = 5.E-4 -!XCXH = 2.0 -!!!!!!!!!!!! - XCCH = 4.E4 ! Test of Ziegler (1988) - XCXH = -1.0 ! Test of Ziegler (1988) -!!! XCCH = 5.E5 ! Graupel_like -!!! XCXH = -0.5 ! Graupel_like -!!!!!!!!!!!! -! -XF0H = 0.86 -XF1H = 0.28 -! -XC1H = 1./2. -! -!------------------------------------------------------------------------------- -! -!* 3. DIMENSIONAL DISTRIBUTIONS OF THE SPECIES -! ---------------------------------------- -! -! -! 3.1 Cloud droplet distribution -! -! Over land -XALPHAC = 1.0 ! Gamma law of the Cloud droplet (here volume-like distribution) -XNUC = 3.0 ! Gamma law with little dispersion -! -! -! Over sea -XALPHAC2 = 3.0 ! Gamma law of the Cloud droplet (here volume-like distribution) -XNUC2 = 1.0 ! Gamma law with little dispersion -! -!* 3.2 Raindrops distribution -! -XALPHAR = 1.0 ! Exponential law -XNUR = 1.0 ! Exponential law -! -!* 3.3 Ice crystal distribution -! -XALPHAI = 3.0 ! Gamma law for the ice crystal volume -XNUI = 3.0 ! Gamma law with little dispersion -! -XALPHAS = 1.0 ! Exponential law -XNUS = 1.0 ! Exponential law -! -XALPHAG = 1.0 ! Exponential law -XNUG = 1.0 ! Exponential law -! -XALPHAH = 1.0 ! Gamma law -XNUH = 8.0 ! Gamma law with little dispersion -! -!* 3.4 Constants for shape parameter -! -ZGAMC = MOMG(XALPHAC,XNUC,3.) -ZGAMC2 = MOMG(XALPHAC2,XNUC2,3.) -XLBC(1) = XAR*ZGAMC -XLBC(2) = XAR*ZGAMC2 -XLBEXC = 1.0/XBC -! -XLBEXR = 1.0/(-1.0-XBR) -XLBR = ( XAR*XCCR*MOMG(XALPHAR,XNUR,XBR) )**(-XLBEXR) -! -!XLBEXI = 1.0/(-XBI) -!XLBI = ( XAI*MOMG(XALPHAI,XNUI,XBI) )**(-XLBEXI) -! -XLBEXS = 1.0/(XCXS-XBS) -XLBS = ( XAS*XCCS*MOMG(XALPHAS,XNUS,XBS) )**(-XLBEXS) -! -XLBEXG = 1.0/(XCXG-XBG) -XLBG = ( XAG*XCCG*MOMG(XALPHAG,XNUG,XBG) )**(-XLBEXG) -! -XLBEXH = 1.0/(XCXH-XBH) -XLBH = ( XAH*XCCH*MOMG(XALPHAH,XNUH,XBH) )**(-XLBEXH) -! -!* 3.5 Minimal values allowed for the mixing ratios -! -XLBDAR_MAX = 100000.0 -XLBDAS_MAX = 100000.0 -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) -! -ALLOCATE( XRTMIN(6) ) -XRTMIN(1) = 1.0E-20 -XRTMIN(2) = 1.0E-20 -XRTMIN(3) = 1.0E-20 -XRTMIN(4) = 1.0E-20 -XRTMIN(5) = 1.0E-15 -XRTMIN(6) = 1.0E-15 -! -XCONC_SEA=1E8 ! 100/cm3 -XCONC_LAND=3E8 ! 300/cm3 -XCONC_URBAN=5E8 ! 500/cm3 -! -!------------------------------------------------------------------------------- -! -!* 4. CONSTANTS FOR THE SEDIMENTATION -! ------------------------------- -! -! -!* 4.1 Exponent of the fall-speed air density correction -! -XCEXVT = 0.4 -! -ZTHVREFZ=300. -ZRHO00 = XP00/(XRD*300.) -! -!* 4.2 Constants for sedimentation -! -XFSEDC(1) = GAMMA(XNUC+(XDC+3.)/XALPHAC)/GAMMA(XNUC+3./XALPHAC)* & - (ZRHO00)**XCEXVT -XFSEDC(2) = GAMMA(XNUC2+(XDC+3.)/XALPHAC2)/GAMMA(XNUC2+3./XALPHAC2)* & - (ZRHO00)**XCEXVT -! -XEXSEDR = (XBR+XDR+1.0)/(XBR+1.0) -XFSEDR = XCR*XAR*XCCR*MOMG(XALPHAR,XNUR,XBR+XDR)* & - (XAR*XCCR*MOMG(XALPHAR,XNUR,XBR))**(-XEXSEDR)*(ZRHO00)**XCEXVT -! -! Computations made for Columns -! -XEXRSEDI = 1.9324 -XEXCSEDI =-0.9324 -XFSEDI = 3.89745E11*MOMG(XALPHAI,XNUI,3.285)* & - MOMG(XALPHAI,XNUI,1.7)**(-XEXRSEDI)*(ZRHO00)**XCEXVT -XEXCSEDI =-0.9324*3.0 -! -! -XEXSEDS = (XBS+XDS-XCXS)/(XBS-XCXS) -XFSEDS = XCS*XAS*XCCS*MOMG(XALPHAS,XNUS,XBS+XDS)* & - (XAS*XCCS*MOMG(XALPHAS,XNUS,XBS))**(-XEXSEDS)*(ZRHO00)**XCEXVT -! -XEXSEDG = (XBG+XDG-XCXG)/(XBG-XCXG) -XFSEDG = XCG*XAG*XCCG*MOMG(XALPHAG,XNUG,XBG+XDG)* & - (XAG*XCCG*MOMG(XALPHAG,XNUG,XBG))**(-XEXSEDG)*(ZRHO00)**XCEXVT -! -XEXSEDH = (XBH+XDH-XCXH)/(XBH-XCXH) -XFSEDH = XCH*XAH*XCCH*MOMG(XALPHAH,XNUH,XBH+XDH)* & - (XAH*XCCH*MOMG(XALPHAH,XNUH,XBH))**(-XEXSEDH)*(ZRHO00)**XCEXVT -! -! -!------------------------------------------------------------------------------- -! -!* 5. CONSTANTS FOR THE SLOW COLD PROCESSES -! ------------------------------------- -! -! -!* 5.1 Constants for ice nucleation -! -! -! -XMNU0 = 6.88E-13 -! -!* 5.2 Constants for vapor deposition on ice -! -XSCFAC = (0.63**(1./3.))*SQRT((ZRHO00)**XCEXVT) ! One assumes Sc=0.63 -! -X0DEPI = (4.0*XPI)*XC1I*XF0I*MOMG(XALPHAI,XNUI,1.) -X2DEPI = (4.0*XPI)*XC1I*XF2I*XC_I*MOMG(XALPHAI,XNUI,XDI+2.0) -! -X0DEPS = (4.0*XPI)*XCCS*XC1S*XF0S*MOMG(XALPHAS,XNUS,1.) -X1DEPS = (4.0*XPI)*XCCS*XC1S*XF1S*SQRT(XCS)*MOMG(XALPHAS,XNUS,0.5*XDS+1.5) -XEX0DEPS = XCXS-1.0 -XEX1DEPS = XCXS-0.5*(XDS+3.0) -! -X0DEPG = (4.0*XPI)*XCCG*XC1G*XF0G*MOMG(XALPHAG,XNUG,1.) -X1DEPG = (4.0*XPI)*XCCG*XC1G*XF1G*SQRT(XCG)*MOMG(XALPHAG,XNUG,0.5*XDG+1.5) -XEX0DEPG = XCXG-1.0 -XEX1DEPG = XCXG-0.5*(XDG+3.0) -! -X0DEPH = (4.0*XPI)*XCCH*XC1H*XF0H*MOMG(XALPHAH,XNUH,1.) -X1DEPH = (4.0*XPI)*XCCH*XC1H*XF1H*SQRT(XCH)*MOMG(XALPHAH,XNUH,0.5*XDH+1.5) -XEX0DEPH = XCXH-1.0 -XEX1DEPH = XCXH-0.5*(XDH+3.0) -! -!* 5.3 Constants for pristine ice autoconversion -! -XTIMAUTI = 1.E-3 ! Time constant at T=T_t -XTEXAUTI = 0.015 ! Temperature factor of the I+I collection efficiency -!!XCRIAUTI = 0.25E-3 ! Critical ice content for the autoconversion to occur -XCRIAUTI = 0.2E-4 ! Critical ice content for the autoconversion to occur - ! Revised value by Chaboureau et al. (2001) -! -! -!* 5.4 Constants for snow aggregation -! -XCOLIS = 0.25 ! Collection efficiency of I+S -XCOLEXIS = 0.05 ! Temperature factor of the I+S collection efficiency -XFIAGGS = (XPI/4.0)*XCOLIS*XCCS*XCS*(ZRHO00**XCEXVT)*MOMG(XALPHAS,XNUS,XDS+2.0) -XEXIAGGS = XCXS-XDS-2.0 -! -!------------------------------------------------------------------------------- -! -!* 6. CONSTANTS FOR THE SLOW WARM PROCESSES -! ------------------------------------- -! -! -!* 6.1 Constants for the cloud droplets autoconversion -! -XTIMAUTC = 1.E-3 -XCRIAUTC = 0.5E-3 -! -!* 6.2 Constants for the accretion of cloud droplets by raindrops -! -XFCACCR = (XPI/4.0)*XCCR*XCR*(ZRHO00**XCEXVT)*MOMG(XALPHAR,XNUR,XDR+2.0) -XEXCACCR = -XDR-3.0 -! -!* 6.3 Constants for the evaporation of the raindrops -! -X0EVAR = (4.0*XPI)*XCCR*XC1R*XF0R*MOMG(XALPHAR,XNUR,1.) -X1EVAR = (4.0*XPI)*XCCR*XC1R*XF1R*SQRT(XCR)*MOMG(XALPHAR,XNUR,0.5*XDR+1.5) -XEX0EVAR = -2.0 -XEX1EVAR = -1.0-0.5*(XDR+3.0) -! -! -IF (LHOOK) CALL DR_HOOK('INI_WET_DEP',1,ZHOOK_HANDLE) -!------------------------------------------------------------------------------------- -CONTAINS - -! -!* 11. INTERNAL FUNCTIONS -! ------------------- -! -! -!* 11.1 p_moment of the Generalized GAMMA function -! -REAL FUNCTION MOMG(ZALPHA,ZNU,ZP) - - IMPLICIT NONE - REAL :: ZALPHA,ZNU,ZP - - MOMG = GAMMA(ZNU+ZP/ZALPHA)/GAMMA(ZNU) - -END FUNCTION MOMG -! -! - - -END SUBROUTINE INI_WET_DEP diff --git a/src/arome/chem/internals/init_dust.F90 b/src/arome/chem/internals/init_dust.F90 deleted file mode 100644 index 493abd0907efafc7e374392ed835678bb0a8c035..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/init_dust.F90 +++ /dev/null @@ -1,179 +0,0 @@ -! ######spl - SUBROUTINE INIT_DUST(PSV,PRHODREF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -! Entry variables: -! -! PSV(INOUT) -Array of moments included in PSV -! -!************************************************************* -! Exit variables: -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! ZVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!! IMPLICIT ARGUMENTS -! -USE MODD_DUST -USE MODD_CSTS_DUST - -!! -IMPLICIT NONE - -!! Declarations d'arguments - -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF - -!* 0.2 declarations local variables -! -REAL :: ZDEN2MOL, ZRHOI, ZMI, ZFAC, ZRGMIN -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZCTOTA -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM -REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZSIGMA -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZSIG, ZRG, ZN -INTEGER,DIMENSION(:), ALLOCATABLE :: IM0, IM3, IM6 -REAL,DIMENSION(:), ALLOCATABLE :: ZMMIN -REAL,DIMENSION(:), ALLOCATABLE :: ZINIRADIUS, ZINISIGMA -INTEGER :: IKU -INTEGER :: JJ, JN, JK ! loop counter -INTEGER :: IMODEIDX ! index mode -REAL, PARAMETER :: ZMMR_DUST=5.d-11!kg_{dust}/kg_{air} -REAL :: ZMMR_DUSTN -! -!------------------------------------------------------------------------------- -! -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ----------------------------------- -! -! 1.1 initialisation -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('INIT_DUST',0,ZHOOK_HANDLE) -IKU=SIZE(PSV,3) -! -ALLOCATE (IM0(NMODE_DST)) -ALLOCATE (IM3(NMODE_DST)) -ALLOCATE (IM6(NMODE_DST)) -ALLOCATE (ZCTOTA(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_DST)) -ALLOCATE (ZM(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_DST*3)) -ALLOCATE (ZSIGMA(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3))) -ALLOCATE (ZSIG(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3),NMODE_DST)) -ALLOCATE (ZRG(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3),NMODE_DST)) -ALLOCATE (ZN(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3),NMODE_DST)) -ALLOCATE (ZINIRADIUS(NMODE_DST)) -ALLOCATE (ZINISIGMA(NMODE_DST)) -ALLOCATE (ZMMIN(NMODE_DST*3)) -! -! -DO JN = 1, NMODE_DST - IM0(JN) = 1+(JN-1)*3 - IM3(JN) = 2+(JN-1)*3 - IM6(JN) = 3+(JN-1)*3 - ! - !Get the dust mode we are talking about, MODE 2 is treated first, then mode 3, then 1 - !This index is only needed to get the right radius out of the XINIRADIUS array and the - !right XINISIG out of the XINISIG-array - IMODEIDX = JPDUSTORDER(JN) - ! - !Convert initial mass median radius to number median radius - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) - END IF - - ZINISIGMA(JN) = XINISIG(IMODEIDX) - ! - ZMMIN(IM0(JN)) = XN0MIN(IMODEIDX) -! ZRGMIN = XCOEFRADMIN * ZINIRADIUS(JN) - ZRGMIN = ZINIRADIUS(JN) - ZMMIN(IM3(JN)) = XN0MIN(IMODEIDX) * (ZRGMIN**3)*EXP(4.5 * LOG(ZINISIGMA(JN))**2) - ZMMIN(IM6(JN)) = XN0MIN(IMODEIDX) * (ZRGMIN**6)*EXP(18. * LOG(ZINISIGMA(JN))**2) -ENDDO -! -! -ZRHOI = XDENSITY_DUST !1.8e3 !++changed alfgr -!ZMI = XMOLARWEIGHT_DUST*1.D3 !100. !++changed alfgr -ZMI = XMOLARWEIGHT_DUST -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD -ZFAC=(4./3.)*XPI*ZRHOI*1.e-9 - -! conversion into mol.cm-3 -DO JJ=1,SIZE(PSV,4) - PSV(:,:,:,JJ) = PSV(:,:,:,JJ) * ZDEN2MOL * PRHODREF(:,:,:) -END DO -! -DO JN=1,NMODE_DST - -!* 1.1 calculate moment 0 from XN0MIN -! - IF (JN == 1) ZMMR_DUSTN = 0.99 * ZMMR_DUST - IF (JN == 2) ZMMR_DUSTN = 0.77 * ZMMR_DUST - IF (JN == 3) ZMMR_DUSTN = 0.023 * ZMMR_DUST - DO JK=1,IKU - ZM(:,:,JK,IM0(JN)) = & - ZMMR_DUSTN &![kg_{dust}/kg_{air} - *PRHODREF(:,:,JK) &![kg_{air}/m3_{air}]==> kg/m3 - /XDENSITY_DUST &![kg__{dust}/m3_{dust}==>m3_{dust}/m3{air} - *(6.d0/XPI) & - /(2.d0*ZINIRADIUS(JN)*1.d-6)**3 &![particle/m_dust^{-3}]==> particle/m3 - *EXP(-4.5*(LOG(XINISIG(JPDUSTORDER(JN))))**2) !Take into account distribution - END DO - ZM(:,:,:,IM0(JN)) = MAX(ZMMIN(IM0(JN)), ZM(:,:,:,IM0(JN))) -! -!* 1.2 calculate moment 3 from m0, RG and SIG -! - ZM(:,:,:,IM3(JN)) = ZM(:,:,:,IM0(JN)) * & - (ZINIRADIUS(JN)**3)*EXP(4.5 * LOG(ZINISIGMA(JN))**2) - ZM(:,:,:,IM3(JN)) = MAX(ZMMIN(IM3(JN)), ZM(:,:,:,IM3(JN))) -! -!* 1.3 calculate moment 6 from m0, RG and SIG -! - ZM(:,:,:,IM6(JN))= ZM(:,:,:,IM0(JN)) * ((ZINIRADIUS(JN)**6)*& - EXP(18. * (LOG(ZINISIGMA(JN)))**2)) - ZM(:,:,:,IM6(JN)) = MAX(ZMMIN(IM6(JN)), ZM(:,:,:,IM6(JN))) -! -!* 1.4 output concentration -! - PSV(:,:,:,1+(JN-1)*3) = ZM(:,:,:,IM0(JN)) * XMD / (XAVOGADRO*PRHODREF(:,:,:)) - PSV(:,:,:,2+(JN-1)*3) = ZM(:,:,:,IM3(JN)) * XMD*XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - - PSV(:,:,:,3+(JN-1)*3) = ZM(:,:,:,IM6(JN)) * XMD / (XAVOGADRO*PRHODREF(:,:,:)*1.d-6) -! -END DO -! -DEALLOCATE(ZMMIN) -DEALLOCATE(ZINISIGMA) -DEALLOCATE(ZINIRADIUS) -DEALLOCATE(ZSIGMA) -DEALLOCATE(ZM) -DEALLOCATE(ZCTOTA) -DEALLOCATE(IM6) -DEALLOCATE(IM3) -DEALLOCATE(IM0) -! -! -IF (LHOOK) CALL DR_HOOK('INIT_DUST',1,ZHOOK_HANDLE) -END SUBROUTINE INIT_DUST diff --git a/src/arome/chem/internals/inter3.F b/src/arome/chem/internals/inter3.F deleted file mode 100644 index 37aa9ed3b3aa46cbba5a17ecd0bd3670c25cf701..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/inter3.F +++ /dev/null @@ -1,96 +0,0 @@ -! ######spl - SUBROUTINE inter3(ng,xg,yg, n,x,y, FoldIn) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - INTEGER n, ng - REAL xg(ng) - REAL x(n), y(n) - - INTEGER FoldIn - -! output: - REAL yg(ng) - -! local: - REAL a1, a2, sum - REAL tail - INTEGER jstart, i, j, k -!_______________________________________________________________________ - -! check whether flag given is legal - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('INTER3',0,ZHOOK_HANDLE) - IF ((FoldIn .NE. 0) .AND. (FoldIn .NE. 1)) THEN - WRITE(0,*) '>>> ERROR (inter3) <<< Value for FOLDIN invalid. ' - WRITE(0,*) ' Must be 0 or 1' - STOP - ENDIF - -! do interpolation - - jstart = 1 - - DO 30, i = 1, ng - 1 - - yg(i) = 0. - sum = 0. - j = jstart - - IF (j .LE. n-1) THEN - - 20 CONTINUE - - IF (x(j+1) .LT. xg(i)) THEN - jstart = j - j = j+1 - IF (j .LE. n-1) GO TO 20 - ENDIF - - 25 CONTINUE - - IF ((x(j) .LE. xg(i+1)) .AND. (j .LE. n-1)) THEN - - a1 = MAX(x(j),xg(i)) - a2 = MIN(x(j+1),xg(i+1)) - - sum = sum + y(j) * (a2-a1)/(x(j+1)-x(j)) - j = j+1 - GO TO 25 - - ENDIF - - yg(i) = sum - - ENDIF - - 30 CONTINUE - - -! if wanted, integrate data "overhang" and fold back into last bin - - IF (FoldIn .EQ. 1) THEN - - j = j-1 - a1 = xg(ng) ! upper limit of last interpolated bin - a2 = x(j+1) ! upper limit of last input bin considered - -! do folding only if grids don't match up and there is more input - IF ((a2 .GT. a1) .OR. (j+1 .LT. n)) THEN - tail = y(j) * (a2-a1)/(x(j+1)-x(j)) - DO k = j+1, n-1 - tail = tail + y(k) * (x(k+1)-x(k)) - ENDDO - yg(ng-1) = yg(ng-1) + tail - ENDIF - - ENDIF -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('INTER3',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE INTER3 diff --git a/src/arome/chem/internals/isocom.F b/src/arome/chem/internals/isocom.F deleted file mode 100644 index ea40e2a191f6ce98dcaf0f916b38f272b889c459..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/isocom.F +++ /dev/null @@ -1,4810 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/isocom.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:31 $ -!----------------------------------------------------------------- -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISOROPIA -! *** THIS SUBROUTINE IS THE MASTER ROUTINE FOR THE ISORROPIA -! THERMODYNAMIC EQUILIBRIUM AEROSOL MODEL (VERSION 1.1 and above) -! -! ======================== ARGUMENTS / USAGE =========================== -! -! INPUT: -! 1. [WI] -! DOUBLE PRECISION array of length [5]. -! Concentrations, expressed in moles/m3. Depending on the type of -! problem solved (specified in CNTRL(1)), WI contains either -! GAS+AEROSOL or AEROSOL only concentratios. -! WI(1) - sodium -! WI(2) - sulfate -! WI(3) - ammonium -! WI(4) - nitrate -! WI(5) - chloride -! -! 2. [RHI] -! DOUBLE PRECISION variable. -! Ambient relative humidity expressed on a (0,1) scale. -! -! 3. [TEMPI] -! DOUBLE PRECISION variable. -! Ambient temperature expressed in Kelvins. -! -! 4. [CNTRL] -! DOUBLE PRECISION array of length [2]. -! Parameters that control the type of problem solved. -! -! CNTRL(1): Defines the type of problem solved. -! 0 - Forward problem is solved. In this case, array WI contains -! GAS and AEROSOL concentrations together. -! 1 - Reverse problem is solved. In this case, array WI contains -! AEROSOL concentrations only. -! -! CNTRL(2): Defines the state of the aerosol -! 0 - The aerosol can have both solid+liquid phases (deliquescent) -! 1 - The aerosol is in only liquid state (metastable aerosol) -! -! OUTPUT: -! 1. [WT] -! DOUBLE PRECISION array of length [5]. -! Total concentrations (GAS+AEROSOL) of species, expressed in moles/m3. -! If the foreward probelm is solved (CNTRL(1)=0), array WT is -! identical to array WI. -! WT(1) - total sodium -! WT(2) - total sulfate -! WT(3) - total ammonium -! WT(4) - total nitrate -! WT(5) - total chloride -! -! 2. [GAS] -! DOUBLE PRECISION array of length [03]. -! Gaseous species concentrations, expressed in moles/m3. -! GAS(1) - NH3 -! GAS(2) - HNO3 -! GAS(3) - HCl -! -! 3. [AERLIQ] -! DOUBLE PRECISION array of length [11]. -! Liquid aerosol species concentrations, expressed in moles/m3. -! AERLIQ(01) - H+(aq) -! AERLIQ(02) - Na+(aq) -! AERLIQ(03) - NH4+(aq) -! AERLIQ(04) - Cl-(aq) -! AERLIQ(05) - SO4--(aq) -! AERLIQ(06) - HSO4-(aq) -! AERLIQ(07) - NO3-(aq) -! AERLIQ(08) - H2O -! AERLIQ(09) - NH3(aq) (undissociated) -! AERLIQ(10) - HNCl(aq) (undissociated) -! AERLIQ(11) - HNO3(aq) (undissociated) -! AERLIQ(12) - OH-(aq) -! -! 4. [AERSLD] -! DOUBLE PRECISION array of length [09]. -! Solid aerosol species concentrations, expressed in moles/m3. -! AERSLD(01) - NaNO3(s) -! AERSLD(02) - NH4NO3(s) -! AERSLD(03) - NaCl(s) -! AERSLD(04) - NH4Cl(s) -! AERSLD(05) - Na2SO4(s) -! AERSLD(06) - (NH4)2SO4(s) -! AERSLD(07) - NaHSO4(s) -! AERSLD(08) - NH4HSO4(s) -! AERSLD(09) - (NH4)4H(SO4)2(s) -! -! 5. [SCASI] -! CHARACTER*15 variable. -! Returns the subcase which the input corresponds to. -! -! 6. [OTHER] -! DOUBLE PRECISION array of length [6]. -! Returns solution information. -! -! OTHER(1): Shows if aerosol water exists. -! 0 - Aerosol is WET -! 1 - Aerosol is DRY -! -! OTHER(2): Aerosol Sulfate ratio, defined as (in moles/m3) : -! (total ammonia + total Na) / (total sulfate) -! -! OTHER(3): Sulfate ratio based on aerosol properties that defines -! a sulfate poor system: -! (aerosol ammonia + aerosol Na) / (aerosol sulfate) -! -! OTHER(4): Aerosol sodium ratio, defined as (in moles/m3) : -! (total Na) / (total sulfate) -! -! OTHER(5): Ionic strength of the aqueous aerosol (if it exists). -! -! OTHER(6): Total number of calls to the activity coefficient -! calculation subroutine. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISOROPIA (WI, RHI, TEMPI, CNTRL, & - & WT, GAS, AERLIQ, AERSLD, SCASI, OTHER) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI,CNTRL,WT,GAS,AERLIQ,AERSLD,OTHER - INTEGER :: NCTRL,NOTHER,I - PARAMETER (NCTRL=2,NOTHER=6) - CHARACTER SCASI*15 - DIMENSION WI(NCOMP), WT(NCOMP), GAS(NGASAQ), AERSLD(NSLDS), & - & AERLIQ(NIONS+NGASAQ+2), CNTRL(NCTRL), OTHER(NOTHER) -! -! *** PROBLEM TYPE (0=FOREWARD, 1=REVERSE) ****************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISOROPIA',0,ZHOOK_HANDLE) - IPROB = NINT(CNTRL(1)) -! -! *** AEROSOL STATE (0=SOLID+LIQUID, 1=METASTABLE) ********************** -! - METSTBL = NINT(CNTRL(2)) -! -! *** SOLVE FOREWARD PROBLEM ******************************************** -! -50 IF (IPROB.EQ.0) THEN - IF (WI(1)+WI(2)+WI(3)+WI(4)+WI(5) .LE. TINY) THEN ! Everything=0 - CALL INIT1 (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(4)+WI(5) .LE. TINY) THEN ! Na,Cl,NO3=0 - CALL ISRP1F (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(5) .LE. TINY) THEN ! Na,Cl=0 - CALL ISRP2F (WI, RHI, TEMPI) - ELSE - CALL ISRP3F (WI, RHI, TEMPI) - ENDIF -! -! *** SOLVE REVERSE PROBLEM ********************************************* -! - ELSE - IF (WI(1)+WI(2)+WI(3)+WI(4)+WI(5) .LE. TINY) THEN ! Everything=0 - CALL INIT1 (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(4)+WI(5) .LE. TINY) THEN ! Na,Cl,NO3=0 - CALL ISRP1R (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(5) .LE. TINY) THEN ! Na,Cl=0 - CALL ISRP2R (WI, RHI, TEMPI) - ELSE - CALL ISRP3R (WI, RHI, TEMPI) - ENDIF - ENDIF -!cC -!cC *** IF METASTABLE AND NO WATER - RESOLVE AS NORMAL ******************** -!cC -!c IF (WATER.LE.TINY .AND. METSTBL.EQ.1) THEN -!c METSTBL = 0 -!c GOTO 50 -!c ENDIF -! -! *** SAVE RESULTS TO ARRAYS (units = mole/m3) **************************** -! - GAS(1) = GNH3 ! Gaseous aerosol species - GAS(2) = GHNO3 - GAS(3) = GHCL -! - DO 10 I=1,NIONS ! Liquid aerosol species - AERLIQ(I) = MOLAL(I) - 10 CONTINUE - DO 20 I=1,NGASAQ - AERLIQ(NIONS+1+I) = GASAQ(I) - 20 CONTINUE - AERLIQ(NIONS+1) = WATER*1.0D3/18.0D0 - AERLIQ(NIONS+NGASAQ+2) = COH -! - AERSLD(1) = CNANO3 ! Solid aerosol species - AERSLD(2) = CNH4NO3 - AERSLD(3) = CNACL - AERSLD(4) = CNH4CL - AERSLD(5) = CNA2SO4 - AERSLD(6) = CNH42S4 - AERSLD(7) = CNAHSO4 - AERSLD(8) = CNH4HS4 - AERSLD(9) = CLC -! - IF(WATER.LE.TINY) THEN ! Dry flag - OTHER(1) = 1.d0 - ELSE - OTHER(1) = 0.d0 - ENDIF -! - OTHER(2) = SULRAT ! Other stuff - OTHER(3) = SULRATW - OTHER(4) = SODRAT - OTHER(5) = IONIC - OTHER(6) = ICLACT -! - SCASI = SCASE -! - WT(1) = WI(1) ! Total gas+aerosol phase - WT(2) = WI(2) - WT(3) = WI(3) - WT(4) = WI(4) - WT(5) = WI(5) - IF (IPROB.GT.0 .AND. WATER.GT.TINY) THEN - WT(3) = WT(3) + GNH3 - WT(4) = WT(4) + GHNO3 - WT(5) = WT(5) + GHCL - ENDIF -! - IF (LHOOK) CALL DR_HOOK('ISOROPIA',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISOROPIA ****************************************** -! - ENDSUBROUTINE ISOROPIA -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE SETPARM -! *** THIS SUBROUTINE REDEFINES THE SOLUTION PARAMETERS OF ISORROPIA -! -! ======================== ARGUMENTS / USAGE =========================== -! -! *** NOTE: IF NEGATIVE VALUES ARE GIVEN FOR A PARAMETER, IT IS -! IGNORED AND THE CURRENT VALUE IS USED INSTEAD. -! -! INPUT: -! 1. [WFTYPI] -! INTEGER variable. -! Defines the type of weighting algorithm for the solution in Mutual -! Deliquescence Regions (MDR's): -! 0 - MDR's are assumed dry. This is equivalent to the approach -! used by SEQUILIB. -! 1 - The solution is assumed "half" dry and "half" wet throughout -! the MDR. -! 2 - The solution is a relative-humidity weighted mean of the -! dry and wet solutions (as defined in Nenes et al., 1998) -! -! 2. [IACALCI] -! INTEGER variable. -! Method of activity coefficient calculation: -! 0 - Calculate coefficients during runtime -! 1 - Use precalculated tables -! -! 3. [EPSI] -! DOUBLE PRECITION variable. -! Defines the convergence criterion for all iterative processes -! in ISORROPIA, except those for activity coefficient calculations -! (EPSACTI controls that). -! -! 4. [MAXITI] -! INTEGER variable. -! Defines the maximum number of iterations for all iterative -! processes in ISORROPIA, except for activity coefficient calculations -! (NSWEEPI controls that). -! -! 5. [NSWEEPI] -! INTEGER variable. -! Defines the maximum number of iterations for activity coefficient -! calculations. -! -! 6. [EPSACTI] -! DOUBLE PRECISION variable. -! Defines the convergence criterion for activity coefficient -! calculations. -! -! 7. [NDIV] -! INTEGER variable. -! Defines the number of subdivisions needed for the initial root -! tracking for the bisection method. Usually this parameter should -! not be altered, but is included for completeness. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA BLKISO -! *** THIS SUBROUTINE PROVIDES INITIAL (DEFAULT) VALUES TO PROGRAM -! PARAMETERS VIA DATA STATEMENTS -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA BLKISO - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! -! *** DEFAULT VALUES ************************************************* -! - DATA TEMP/298.0/, R/82.0567D-6/, RH/0.9D0/, EPS/1D-6/, MAXIT/100/,& - & TINY/1D-20/, GREAT/1D10/, ZERO/0.0D0/, ONE/1.0D0/,NSWEEP/4/, & - & TINY2/1D-11/,NDIV/5/ -! - DATA MOLAL/NIONS*0.0D0/, MOLALR/NPAIR*0.0D0/, GAMA/NPAIR*0.1D0/, & - & GAMOU/NPAIR*1D10/, GAMIN/NPAIR*1D10/, CALAIN/.TRUE./, & - & CALAOU/.TRUE./, EPSACT/5D-2/, ICLACT/0/, & - & IACALC/1/, WFTYP/2/ -! - DATA ERRSTK/NERRMX*0/, ERRMSG/NERRMX*' '/, NOFER/0/, & - & STKOFL/.FALSE./ -! - DATA IPROB/0/, METSTBL/0/ -! - DATA VERSION /'1.5 (12/03/03)'/ -! -! *** OTHER PARAMETERS *********************************************** -! - DATA SMW/58.5,142.,85.0,132.,80.0,53.5,98.0,98.0,115.,63.0, & - & 36.5,120.,247./ & - & IMW/ 1.0,23.0,18.0,35.5,96.0,97.0,63.0/, & - & WMW/23.0,98.0,17.0,63.0,36.5/ -! - DATA ZZ/1,2,1,2,1,1,2,1,1,1,1,1,2/, Z /1,1,1,1,2,1,1/ -! -! *** ZSR RELATIONSHIP PARAMETERS ************************************** -! -! awas= ammonium sulfate -! - DATA AWAS/33*100.,30,30,30,29.54,28.25,27.06,25.94, & - & 24.89,23.90,22.97,22.10,21.27,20.48,19.73,19.02,18.34,17.69, & - & 17.07,16.48,15.91,15.37,14.85,14.34,13.86,13.39,12.94,12.50, & - & 12.08,11.67,11.27,10.88,10.51,10.14, 9.79, 9.44, 9.10, 8.78, & - & 8.45, 8.14, 7.83, 7.53, 7.23, 6.94, 6.65, 6.36, 6.08, 5.81, & - & 5.53, 5.26, 4.99, 4.72, 4.46, 4.19, 3.92, 3.65, 3.38, 3.11, & - & 2.83, 2.54, 2.25, 1.95, 1.63, 1.31, 0.97, 0.63, 0.30, 0.001/ -! -! awsn= sodium nitrate -! - DATA AWSN/ 9*1.e5,685.59, & - & 451.00,336.46,268.48,223.41,191.28, & - & 167.20,148.46,133.44,121.12,110.83, & - & 102.09,94.57,88.03,82.29,77.20,72.65,68.56,64.87,61.51,58.44, & - & 55.62,53.03,50.63,48.40,46.32,44.39,42.57,40.87,39.27,37.76, & - & 36.33,34.98,33.70,32.48,31.32,30.21,29.16,28.14,27.18,26.25, & - & 25.35,24.50,23.67,22.87,22.11,21.36,20.65,19.95,19.28,18.62, & - & 17.99,17.37,16.77,16.18,15.61,15.05,14.51,13.98,13.45,12.94, & - & 12.44,11.94,11.46,10.98,10.51,10.04, 9.58, 9.12, 8.67, 8.22, & - & 7.77, 7.32, 6.88, 6.43, 5.98, 5.53, 5.07, 4.61, 4.15, 3.69, & - & 3.22, 2.76, 2.31, 1.87, 1.47, 1.10, 0.77, 0.48, 0.23, 0.001/ -! -! awsc= sodium chloride -! - DATA AWSC/ & - & 100., 100., 100., 100., 100., 100., 100., 100., 100., 100., & - & 100., 100., 100., 100., 100., 100., 100., 100., 100.,16.34, & - & 16.28,16.22,16.15,16.09,16.02,15.95,15.88,15.80,15.72,15.64, & - & 15.55,15.45,15.36,15.25,15.14,15.02,14.89,14.75,14.60,14.43, & - & 14.25,14.04,13.81,13.55,13.25,12.92,12.56,12.19,11.82,11.47, & - & 11.13,10.82,10.53,10.26,10.00, 9.76, 9.53, 9.30, 9.09, 8.88, & - & 8.67, 8.48, 8.28, 8.09, 7.90, 7.72, 7.54, 7.36, 7.17, 6.99, & - & 6.81, 6.63, 6.45, 6.27, 6.09, 5.91, 5.72, 5.53, 5.34, 5.14, & - & 4.94, 4.74, 4.53, 4.31, 4.09, 3.86, 3.62, 3.37, 3.12, 2.85, & - & 2.58, 2.30, 2.01, 1.72, 1.44, 1.16, 0.89, 0.64, 0.40, 0.18/ -! -! awac= ammonium chloride -! - DATA AWAC/ & - & 100., 100., 100., 100., 100., 100., 100., 100., 100., 100., & - & 100., 100., 100., 100., 100., 100., 100., 100., 100.,31.45, & - & 31.30,31.14,30.98,30.82,30.65,30.48,30.30,30.11,29.92,29.71, & - & 29.50,29.29,29.06,28.82,28.57,28.30,28.03,27.78,27.78,27.77, & - & 27.77,27.43,27.07,26.67,26.21,25.73,25.18,24.56,23.84,23.01, & - & 22.05,20.97,19.85,18.77,17.78,16.89,16.10,15.39,14.74,14.14, & - & 13.59,13.06,12.56,12.09,11.65,11.22,10.81,10.42,10.03, 9.66, & - & 9.30, 8.94, 8.59, 8.25, 7.92, 7.59, 7.27, 6.95, 6.63, 6.32, & - & 6.01, 5.70, 5.39, 5.08, 4.78, 4.47, 4.17, 3.86, 3.56, 3.25, & - & 2.94, 2.62, 2.30, 1.98, 1.65, 1.32, 0.97, 0.62, 0.26, 0.13/ -! -! awss= sodium sulfate -! - DATA AWSS/34*1.e5,23*14.30,14.21,12.53,11.47, & - & 10.66,10.01, 9.46, 8.99, 8.57, 8.19, 7.85, 7.54, 7.25, 6.98, & - & 6.74, 6.50, 6.29, 6.08, 5.88, 5.70, 5.52, 5.36, 5.20, 5.04, & - & 4.90, 4.75, 4.54, 4.34, 4.14, 3.93, 3.71, 3.49, 3.26, 3.02, & - & 2.76, 2.49, 2.20, 1.89, 1.55, 1.18, 0.82, 0.49, 0.22, 0.001/ -! -! awab= ammonium bisulfate -! - DATA AWAB/356.45,296.51,253.21,220.47,194.85, & - & 174.24,157.31,143.16,131.15,120.82, & - & 111.86,103.99,97.04,90.86,85.31,80.31,75.78,71.66,67.90,64.44, & - & 61.25,58.31,55.58,53.04,50.68,48.47,46.40,44.46,42.63,40.91, & - & 39.29,37.75,36.30,34.92,33.61,32.36,31.18,30.04,28.96,27.93, & - & 26.94,25.99,25.08,24.21,23.37,22.57,21.79,21.05,20.32,19.63, & - & 18.96,18.31,17.68,17.07,16.49,15.92,15.36,14.83,14.31,13.80, & - & 13.31,12.83,12.36,11.91,11.46,11.03,10.61,10.20, 9.80, 9.41, & - & 9.02, 8.64, 8.28, 7.91, 7.56, 7.21, 6.87, 6.54, 6.21, 5.88, & - & 5.56, 5.25, 4.94, 4.63, 4.33, 4.03, 3.73, 3.44, 3.14, 2.85, & - & 2.57, 2.28, 1.99, 1.71, 1.42, 1.14, 0.86, 0.57, 0.29, 0.001/ -! -! awsa= sulfuric acid -! - DATA AWSA/ & - & 34.0,33.56,29.22,26.55,24.61,23.11,21.89,20.87,19.99, & - & 19.21,18.51,17.87,17.29,16.76,16.26,15.8,15.37,14.95,14.56, & - & 14.20,13.85,13.53,13.22,12.93,12.66,12.40,12.14,11.90,11.67, & - & 11.44,11.22,11.01,10.8,10.60,10.4,10.2,10.01,9.83,9.65,9.47, & - & 9.3,9.13,8.96,8.81,8.64,8.48,8.33,8.17,8.02,7.87,7.72,7.58, & - & 7.44,7.30,7.16,7.02,6.88,6.75,6.61,6.48,6.35,6.21,6.08,5.95, & - & 5.82,5.69,5.56,5.44,5.31,5.18,5.05,4.92,4.79,4.66,4.53,4.40, & - & 4.27,4.14,4.,3.87,3.73,3.6,3.46,3.31,3.17,3.02,2.87,2.72, & - & 2.56,2.4,2.23,2.05,1.87,1.68,1.48,1.27,1.05,0.807,0.552,0.281/ -! -! awlc= (NH4)3H(SO4)2 -! - DATA AWLC/34*1.e5,17.0,16.5,15.94,15.31,14.71,14.14, & - & 13.60,13.08,12.59,12.12,11.68,11.25,10.84,10.44,10.07, 9.71, & - & 9.36, 9.02, 8.70, 8.39, 8.09, 7.80, 7.52, 7.25, 6.99, 6.73, & - & 6.49, 6.25, 6.02, 5.79, 5.57, 5.36, 5.15, 4.95, 4.76, 4.56, & - & 4.38, 4.20, 4.02, 3.84, 3.67, 3.51, 3.34, 3.18, 3.02, 2.87, & - & 2.72, 2.57, 2.42, 2.28, 2.13, 1.99, 1.85, 1.71, 1.57, 1.43, & - & 1.30, 1.16, 1.02, 0.89, 0.75, 0.61, 0.46, 0.32, 0.16, 0.001/ -! -! awan= ammonium nitrate -! - DATA AWAN/31*1.e5, & - & 97.17,92.28,87.66,83.15,78.87,74.84,70.98,67.46,64.11, & - & 60.98,58.07,55.37,52.85,50.43,48.24,46.19,44.26,42.40,40.70, & - & 39.10,37.54,36.10,34.69,33.35,32.11,30.89,29.71,28.58,27.46, & - & 26.42,25.37,24.33,23.89,22.42,21.48,20.56,19.65,18.76,17.91, & - & 17.05,16.23,15.40,14.61,13.82,13.03,12.30,11.55,10.83,10.14, & - & 9.44, 8.79, 8.13, 7.51, 6.91, 6.32, 5.75, 5.18, 4.65, 4.14, & - & 3.65, 3.16, 2.71, 2.26, 1.83, 1.42, 1.03, 0.66, 0.30, 0.001/ -! -! awsb= sodium bisulfate -! - DATA AWSB/173.72,156.88,142.80,130.85,120.57, & - & 111.64,103.80,96.88,90.71,85.18, & - & 80.20,75.69,71.58,67.82,64.37,61.19,58.26,55.53,53.00,50.64, & - & 48.44,46.37,44.44,42.61,40.90,39.27,37.74,36.29,34.91,33.61, & - & 32.36,31.18,30.05,28.97,27.94,26.95,26.00,25.10,24.23,23.39, & - & 22.59,21.81,21.07,20.35,19.65,18.98,18.34,17.71,17.11,16.52, & - & 15.95,15.40,14.87,14.35,13.85,13.36,12.88,12.42,11.97,11.53, & - & 11.10,10.69,10.28, 9.88, 9.49, 9.12, 8.75, 8.38, 8.03, 7.68, & - & 7.34, 7.01, 6.69, 6.37, 6.06, 5.75, 5.45, 5.15, 4.86, 4.58, & - & 4.30, 4.02, 3.76, 3.49, 3.23, 2.98, 2.73, 2.48, 2.24, 2.01, & - & 1.78, 1.56, 1.34, 1.13, 0.92, 0.73, 0.53, 0.35, 0.17, 0.001/ -! -! *** END OF BLOCK DATA SUBPROGRAM ************************************* -! - ENDBLOCKDATA BLKISO -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE INIT1 -! *** THIS SUBROUTINE INITIALIZES ALL GLOBAL VARIABLES FOR AMMONIUM -! SULFATE AEROSOL SYSTEMS (SUBROUTINE ISRP1) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE INIT1 (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI,COEF,G130,G13I,T0,T0T,TCF - INTEGER :: I,IRH - DIMENSION WI(NCOMP) - REAL IC,GII,GI0,XX,LN10 - PARAMETER (LN10=2.3025851) -! -! *** SAVE INPUT VARIABLES IN COMMON BLOCK ****************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('INIT1',0,ZHOOK_HANDLE) - IF (IPROB.EQ.0) THEN ! FORWARD CALCULATION - DO 10 I=1,NCOMP - W(I) = MAX(WI(I), TINY) -10 CONTINUE - ELSE - DO 15 I=1,NCOMP ! REVERSE CALCULATION - WAER(I) = MAX(WI(I), TINY) - W(I) = ZERO -15 CONTINUE - ENDIF - RH = RHI - TEMP = TEMPI -! -! *** CALCULATE EQUILIBRIUM CONSTANTS *********************************** -! - XK1 = 1.015e-2 ! HSO4(aq) <==> H(aq) + SO4(aq) - XK21 = 57.639 ! NH3(g) <==> NH3(aq) - XK22 = 1.805e-5 ! NH3(aq) <==> NH4(aq) + OH(aq) - XK7 = 1.817 ! (NH4)2SO4(s) <==> 2*NH4(aq) + SO4(aq) - XK12 = 1.382e2 ! NH4HSO4(s) <==> NH4(aq) + HSO4(aq) - XK13 = 29.268 ! (NH4)3H(SO4)2(s) <==> 3*NH4(aq) + HSO4(aq) + SO4(aq) - XKW = 1.010e-14 ! H2O <==> H(aq) + OH(aq) -! - IF (INT(TEMP) .NE. 298) THEN ! FOR T != 298K or 298.15K - T0 = 298.15 - T0T = T0/TEMP - COEF= 1.0+LOG(T0T)-T0T - XK1 = XK1 *EXP( 8.85*(T0T-1.0) + 25.140*COEF) - XK21= XK21*EXP( 13.79*(T0T-1.0) - 5.393*COEF) - XK22= XK22*EXP( -1.50*(T0T-1.0) + 26.920*COEF) - XK7 = XK7 *EXP( -2.65*(T0T-1.0) + 38.570*COEF) - XK12= XK12*EXP( -2.87*(T0T-1.0) + 15.830*COEF) - XK13= XK13*EXP( -5.19*(T0T-1.0) + 54.400*COEF) - XKW = XKW *EXP(-22.52*(T0T-1.0) + 26.920*COEF) - ENDIF - XK2 = XK21*XK22 -! -! *** CALCULATE DELIQUESCENCE RELATIVE HUMIDITIES (UNICOMPONENT) ******** -! - DRH2SO4 = 0.0000D0 - DRNH42S4 = 0.7997D0 - DRNH4HS4 = 0.4000D0 - DRLC = 0.6900D0 - IF (INT(TEMP) .NE. 298) THEN - T0 = 298.15d0 - TCF = 1.0/TEMP - 1.0/T0 - DRNH42S4 = DRNH42S4*EXP( 80.*TCF) - DRNH4HS4 = DRNH4HS4*EXP(384.*TCF) - DRLC = DRLC *EXP(186.*TCF) - ENDIF -! -! *** CALCULATE MUTUAL DELIQUESCENCE RELATIVE HUMIDITIES **************** -! - DRMLCAB = 0.3780D0 ! (NH4)3H(SO4)2 & NH4HSO4 - DRMLCAS = 0.6900D0 ! (NH4)3H(SO4)2 & (NH4)2SO4 -!CC IF (INT(TEMP) .NE. 298) THEN ! For the time being. -!CC T0 = 298.15d0 -!CC TCF = 1.0/TEMP - 1.0/T0 -!CC DRMLCAB = DRMLCAB*EXP(507.506*TCF) -!CC DRMLCAS = DRMLCAS*EXP(133.865*TCF) -!CC ENDIF -! -! *** LIQUID PHASE ****************************************************** -! - CHNO3 = ZERO - CHCL = ZERO - CH2SO4 = ZERO - COH = ZERO - WATER = TINY -! - DO 20 I=1,NPAIR - MOLALR(I)=ZERO - GAMA(I) =0.1 - GAMIN(I) =GREAT - GAMOU(I) =GREAT - M0(I) =1d5 - 20 CONTINUE -! - DO 30 I=1,NPAIR - GAMA(I) = 0.1d0 - 30 CONTINUE -! - DO 40 I=1,NIONS - MOLAL(I)=ZERO -40 CONTINUE - COH = ZERO -! - DO 50 I=1,NGASAQ - GASAQ(I)=ZERO -50 CONTINUE -! -! *** SOLID PHASE ******************************************************* -! - CNH42S4= ZERO - CNH4HS4= ZERO - CNACL = ZERO - CNA2SO4= ZERO - CNANO3 = ZERO - CNH4NO3= ZERO - CNH4CL = ZERO - CNAHSO4= ZERO - CLC = ZERO -! -! *** GAS PHASE ********************************************************* -! - GNH3 = ZERO - GHNO3 = ZERO - GHCL = ZERO -! -! *** CALCULATE ZSR PARAMETERS ****************************************** -! - IRH = MIN (INT(RH*NZSR+0.5),NZSR) ! Position in ZSR arrays - IRH = MAX (IRH, 1) -! - M0(01) = AWSC(IRH) ! NACl - IF (M0(01) .LT. 100.0) THEN - IC = M0(01) - CALL KMTAB(IC,298.0, GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),GII,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(01) = M0(01)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(02) = AWSS(IRH) ! (NA)2SO4 - IF (M0(02) .LT. 100.0) THEN - IC = 3.0*M0(02) - CALL KMTAB(IC,298.0, XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,GII,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(02) = M0(02)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(03) = AWSN(IRH) ! NANO3 - IF (M0(03) .LT. 100.0) THEN - IC = M0(03) - CALL KMTAB(IC,298.0, XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,GII,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(03) = M0(03)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(04) = AWAS(IRH) ! (NH4)2SO4 - IF (M0(04) .LT. 100.0) THEN - IC = 3.0*M0(04) - CALL KMTAB(IC,298.0, XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,GII,XX,XX,XX,XX,XX,XX,XX,XX) - M0(04) = M0(04)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(05) = AWAN(IRH) ! NH4NO3 - IF (M0(05) .LT. 100.0) THEN - IC = M0(05) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,GII,XX,XX,XX,XX,XX,XX,XX) - M0(05) = M0(05)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(06) = AWAC(IRH) ! NH4CL - IF (M0(06) .LT. 100.0) THEN - IC = M0(06) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,GII,XX,XX,XX,XX,XX,XX) - M0(06) = M0(06)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(07) = AWSA(IRH) ! 2H-SO4 - IF (M0(07) .LT. 100.0) THEN - IC = 3.0*M0(07) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,GII,XX,XX,XX,XX,XX) - M0(07) = M0(07)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(08) = AWSA(IRH) ! H-HSO4 -!CC IF (M0(08) .LT. 100.0) THEN ! These are redundant, because M0(8) is not used -!CC IC = M0(08) -!CC CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX) -!CC CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX) -!CCCCC CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,GII,XX,XX,XX,XX) -!CC M0(08) = M0(08)*EXP(LN10*(GI0-GII)) -!CC ENDIF -! - M0(09) = AWAB(IRH) ! NH4HSO4 - IF (M0(09) .LT. 100.0) THEN - IC = M0(09) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,XX,GII,XX,XX,XX) - M0(09) = M0(09)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(12) = AWSB(IRH) ! NAHSO4 - IF (M0(12) .LT. 100.0) THEN - IC = M0(12) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,GI0) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,GII) - M0(12) = M0(12)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(13) = AWLC(IRH) ! (NH4)3H(SO4)2 - IF (M0(13) .LT. 100.0) THEN - IC = 4.0*M0(13) - CALL KMTAB(IC,298.0, XX,XX,XX,GI0,XX,XX,XX,XX,GII,XX,XX,XX) - G130 = 0.2*(3.0*GI0+2.0*GII) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,GI0,XX,XX,XX,XX,GII,XX,XX,XX) - G13I = 0.2*(3.0*GI0+2.0*GII) - M0(13) = M0(13)*EXP(LN10*SNGL(G130-G13I)) - ENDIF -! -! *** OTHER INITIALIZATIONS ********************************************* -! - ICLACT = 0 - CALAOU = .TRUE. - CALAIN = .TRUE. - FRST = .TRUE. - SCASE = '?? ' - SULRATW = 2.D0 - SODRAT = ZERO - NOFER = 0 - STKOFL =.FALSE. - DO 60 I=1,NERRMX - ERRSTK(I) =-999 - ERRMSG(I) = 'MESSAGE N/A' - 60 CONTINUE -! -! *** END OF SUBROUTINE INIT1 ******************************************* -! - IF (LHOOK) CALL DR_HOOK('INIT1',1,ZHOOK_HANDLE) - ENDSUBROUTINE INIT1 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE INIT2 -! *** THIS SUBROUTINE INITIALIZES ALL GLOBAL VARIABLES FOR AMMONIUM, -! NITRATE, SULFATE AEROSOL SYSTEMS (SUBROUTINE ISRP2) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE INIT2 (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - DIMENSION WI(NCOMP) - REAL :: IC,GII,GI0,XX,LN10 - REAL(KIND=8) :: COEF,G130,G13I,T0,T0T,TCF - PARAMETER (LN10=2.3025851) - INTEGER :: I,IRH -! -! *** SAVE INPUT VARIABLES IN COMMON BLOCK ****************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('INIT2',0,ZHOOK_HANDLE) - IF (IPROB.EQ.0) THEN ! FORWARD CALCULATION - DO 10 I=1,NCOMP - W(I) = MAX(WI(I), TINY) -10 CONTINUE - ELSE - DO 15 I=1,NCOMP ! REVERSE CALCULATION - WAER(I) = MAX(WI(I), TINY) - W(I) = ZERO -15 CONTINUE - ENDIF - RH = RHI - TEMP = TEMPI -! -! *** CALCULATE EQUILIBRIUM CONSTANTS *********************************** -! - XK1 = 1.015e-2 ! HSO4(aq) <==> H(aq) + SO4(aq) - XK21 = 57.639 ! NH3(g) <==> NH3(aq) - XK22 = 1.805e-5 ! NH3(aq) <==> NH4(aq) + OH(aq) - XK4 = 2.511e6 ! HNO3(g) <==> H(aq) + NO3(aq) ! ISORR -!CC XK4 = 3.638e6 ! HNO3(g) <==> H(aq) + NO3(aq) ! SEQUIL - XK41 = 2.100e5 ! HNO3(g) <==> HNO3(aq) - XK7 = 1.817 ! (NH4)2SO4(s) <==> 2*NH4(aq) + SO4(aq) - XK10 = 5.746e-17 ! NH4NO3(s) <==> NH3(g) + HNO3(g) ! ISORR -!CC XK10 = 2.985e-17 ! NH4NO3(s) <==> NH3(g) + HNO3(g) ! SEQUIL - XK12 = 1.382e2 ! NH4HSO4(s) <==> NH4(aq) + HSO4(aq) - XK13 = 29.268 ! (NH4)3H(SO4)2(s) <==> 3*NH4(aq) + HSO4(aq) + SO4(aq) - XKW = 1.010e-14 ! H2O <==> H(aq) + OH(aq) -! - IF (INT(TEMP) .NE. 298) THEN ! FOR T != 298K or 298.15K - T0 = 298.15D0 - T0T = T0/TEMP - COEF= 1.0+LOG(T0T)-T0T - XK1 = XK1 *EXP( 8.85*(T0T-1.0) + 25.140*COEF) - XK21= XK21*EXP( 13.79*(T0T-1.0) - 5.393*COEF) - XK22= XK22*EXP( -1.50*(T0T-1.0) + 26.920*COEF) - XK4 = XK4 *EXP( 29.17*(T0T-1.0) + 16.830*COEF) !ISORR -!CC XK4 = XK4 *EXP( 29.47*(T0T-1.0) + 16.840*COEF) ! SEQUIL - XK41= XK41*EXP( 29.17*(T0T-1.0) + 16.830*COEF) - XK7 = XK7 *EXP( -2.65*(T0T-1.0) + 38.570*COEF) - XK10= XK10*EXP(-74.38*(T0T-1.0) + 6.120*COEF) ! ISORR -!CC XK10= XK10*EXP(-75.11*(T0T-1.0) + 13.460*COEF) ! SEQUIL - XK12= XK12*EXP( -2.87*(T0T-1.0) + 15.830*COEF) - XK13= XK13*EXP( -5.19*(T0T-1.0) + 54.400*COEF) - XKW = XKW *EXP(-22.52*(T0T-1.0) + 26.920*COEF) - ENDIF - XK2 = XK21*XK22 - XK42 = XK4/XK41 -! -! *** CALCULATE DELIQUESCENCE RELATIVE HUMIDITIES (UNICOMPONENT) ******** -! - DRH2SO4 = ZERO - DRNH42S4 = 0.7997D0 - DRNH4HS4 = 0.4000D0 - DRNH4NO3 = 0.6183D0 - DRLC = 0.6900D0 - IF (INT(TEMP) .NE. 298) THEN - T0 = 298.15D0 - TCF = 1.0/TEMP - 1.0/T0 - DRNH4NO3 = DRNH4NO3*EXP(852.*TCF) - DRNH42S4 = DRNH42S4*EXP( 80.*TCF) - DRNH4HS4 = DRNH4HS4*EXP(384.*TCF) - DRLC = DRLC *EXP(186.*TCF) - ENDIF -! -! *** CALCULATE MUTUAL DELIQUESCENCE RELATIVE HUMIDITIES **************** -! - DRMLCAB = 0.3780D0 ! (NH4)3H(SO4)2 & NH4HSO4 - DRMLCAS = 0.6900D0 ! (NH4)3H(SO4)2 & (NH4)2SO4 - DRMASAN = 0.6000D0 ! (NH4)2SO4 & NH4NO3 -!CC IF (INT(TEMP) .NE. 298) THEN ! For the time being -!CC T0 = 298.15d0 -!CC TCF = 1.0/TEMP - 1.0/T0 -!CC DRMLCAB = DRMLCAB*EXP( 507.506*TCF) -!CC DRMLCAS = DRMLCAS*EXP( 133.865*TCF) -!CC DRMASAN = DRMASAN*EXP(1269.068*TCF) -!CC ENDIF -! -! *** LIQUID PHASE ****************************************************** -! - CHNO3 = ZERO - CHCL = ZERO - CH2SO4 = ZERO - COH = ZERO - WATER = TINY -! - DO 20 I=1,NPAIR - MOLALR(I)=ZERO - GAMA(I) =0.1 - GAMIN(I) =GREAT - GAMOU(I) =GREAT - M0(I) =1d5 - 20 CONTINUE -! - DO 30 I=1,NPAIR - GAMA(I) = 0.1d0 - 30 CONTINUE -! - DO 40 I=1,NIONS - MOLAL(I)=ZERO -40 CONTINUE - COH = ZERO -! - DO 50 I=1,NGASAQ - GASAQ(I)=ZERO -50 CONTINUE -! -! *** SOLID PHASE ******************************************************* -! - CNH42S4= ZERO - CNH4HS4= ZERO - CNACL = ZERO - CNA2SO4= ZERO - CNANO3 = ZERO - CNH4NO3= ZERO - CNH4CL = ZERO - CNAHSO4= ZERO - CLC = ZERO -! -! *** GAS PHASE ********************************************************* -! - GNH3 = ZERO - GHNO3 = ZERO - GHCL = ZERO -! -! *** CALCULATE ZSR PARAMETERS ****************************************** -! - IRH = MIN (INT(RH*NZSR+0.5),NZSR) ! Position in ZSR arrays - IRH = MAX (IRH, 1) -! - M0(01) = AWSC(IRH) ! NACl - IF (M0(01) .LT. 100.0) THEN - IC = M0(01) - CALL KMTAB(IC,298.0, GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),GII,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(01) = M0(01)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(02) = AWSS(IRH) ! (NA)2SO4 - IF (M0(02) .LT. 100.0) THEN - IC = 3.0*M0(02) - CALL KMTAB(IC,298.0, XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,GII,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(02) = M0(02)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(03) = AWSN(IRH) ! NANO3 - IF (M0(03) .LT. 100.0) THEN - IC = M0(03) - CALL KMTAB(IC,298.0, XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,GII,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(03) = M0(03)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(04) = AWAS(IRH) ! (NH4)2SO4 - IF (M0(04) .LT. 100.0) THEN - IC = 3.0*M0(04) - CALL KMTAB(IC,298.0, XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,GII,XX,XX,XX,XX,XX,XX,XX,XX) - M0(04) = M0(04)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(05) = AWAN(IRH) ! NH4NO3 - IF (M0(05) .LT. 100.0) THEN - IC = M0(05) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,GII,XX,XX,XX,XX,XX,XX,XX) - M0(05) = M0(05)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(06) = AWAC(IRH) ! NH4CL - IF (M0(06) .LT. 100.0) THEN - IC = M0(06) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,GII,XX,XX,XX,XX,XX,XX) - M0(06) = M0(06)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(07) = AWSA(IRH) ! 2H-SO4 - IF (M0(07) .LT. 100.0) THEN - IC = 3.0*M0(07) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,GII,XX,XX,XX,XX,XX) - M0(07) = M0(07)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(08) = AWSA(IRH) ! H-HSO4 -!CC IF (M0(08) .LT. 100.0) THEN ! These are redundant, because M0(8) is not used -!CC IC = M0(08) -!CC CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX) -!CC CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX) -!CCCCC CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,GII,XX,XX,XX,XX) -!CC M0(08) = M0(08)*EXP(LN10*(GI0-GII)) -!CC ENDIF -! - M0(09) = AWAB(IRH) ! NH4HSO4 - IF (M0(09) .LT. 100.0) THEN - IC = M0(09) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,XX,GII,XX,XX,XX) - M0(09) = M0(09)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(12) = AWSB(IRH) ! NAHSO4 - IF (M0(12) .LT. 100.0) THEN - IC = M0(12) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,GI0) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,GII) - M0(12) = M0(12)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(13) = AWLC(IRH) ! (NH4)3H(SO4)2 - IF (M0(13) .LT. 100.0) THEN - IC = 4.0*M0(13) - CALL KMTAB(IC,298.0, XX,XX,XX,GI0,XX,XX,XX,XX,GII,XX,XX,XX) - G130 = 0.2*(3.0*GI0+2.0*GII) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,GI0,XX,XX,XX,XX,GII,XX,XX,XX) - G13I = 0.2*(3.0*GI0+2.0*GII) - M0(13) = M0(13)*EXP(LN10*SNGL(G130-G13I)) - ENDIF -! -! *** OTHER INITIALIZATIONS ********************************************* -! - ICLACT = 0 - CALAOU = .TRUE. - CALAIN = .TRUE. - FRST = .TRUE. - SCASE = '?? ' - SULRATW = 2.D0 - SODRAT = ZERO - NOFER = 0 - STKOFL =.FALSE. - DO 60 I=1,NERRMX - ERRSTK(I) =-999 - ERRMSG(I) = 'MESSAGE N/A' - 60 CONTINUE -! -! *** END OF SUBROUTINE INIT2 ******************************************* -! - IF (LHOOK) CALL DR_HOOK('INIT2',1,ZHOOK_HANDLE) - ENDSUBROUTINE INIT2 - - - - - -!======================================================================= -! -! *** ISORROPIA CODE -!======================================================================= -! - SUBROUTINE INIT3 (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - DIMENSION WI(NCOMP) - REAL :: IC,GII,GI0,XX,LN10 - REAL(KIND=8) :: COEF,G130,G13I,T0,T0T,TCF - PARAMETER (LN10=2.3025851) - INTEGER :: I,IRH -! -! *** SAVE INPUT VARIABLES IN COMMON BLOCK ****************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('INIT3',0,ZHOOK_HANDLE) - IF (IPROB.EQ.0) THEN ! FORWARD CALCULATION - DO 10 I=1,NCOMP - W(I) = MAX(WI(I), TINY) -10 CONTINUE - ELSE - DO 15 I=1,NCOMP ! REVERSE CALCULATION - WAER(I) = MAX(WI(I), TINY) - W(I) = ZERO -15 CONTINUE - ENDIF - RH = RHI - TEMP = TEMPI -! -! *** CALCULATE EQUILIBRIUM CONSTANTS *********************************** -! - XK1 = 1.015D-2 ! HSO4(aq) <==> H(aq) + SO4(aq) - XK21 = 57.639D0 ! NH3(g) <==> NH3(aq) - XK22 = 1.805D-5 ! NH3(aq) <==> NH4(aq) + OH(aq) - XK3 = 1.971D6 ! HCL(g) <==> H(aq) + CL(aq) - XK31 = 2.500e3 ! HCL(g) <==> HCL(aq) - XK4 = 2.511e6 ! HNO3(g) <==> H(aq) + NO3(aq) ! ISORR -!CC XK4 = 3.638e6 ! HNO3(g) <==> H(aq) + NO3(aq) ! SEQUIL - XK41 = 2.100e5 ! HNO3(g) <==> HNO3(aq) - XK5 = 0.4799D0 ! NA2SO4(s) <==> 2*NA(aq) + SO4(aq) - XK6 = 1.086D-16 ! NH4CL(s) <==> NH3(g) + HCL(g) - XK7 = 1.817D0 ! (NH4)2SO4(s) <==> 2*NH4(aq) + SO4(aq) - XK8 = 37.661D0 ! NACL(s) <==> NA(aq) + CL(aq) - XK10 = 5.746D-17 ! NH4NO3(s) <==> NH3(g) + HNO3(g) ! ISORR -!CC XK10 = 2.985e-17 ! NH4NO3(s) <==> NH3(g) + HNO3(g) ! SEQUIL - XK11 = 2.413D4 ! NAHSO4(s) <==> NA(aq) + HSO4(aq) - XK12 = 1.382D2 ! NH4HSO4(s) <==> NH4(aq) + HSO4(aq) - XK13 = 29.268D0 ! (NH4)3H(SO4)2(s) <==> 3*NH4(aq) + HSO4(aq) + SO4(aq) - XK14 = 22.05D0 ! NH4CL(s) <==> NH4(aq) + CL(aq) - XKW = 1.010D-14 ! H2O <==> H(aq) + OH(aq) - XK9 = 11.977D0 ! NANO3(s) <==> NA(aq) + NO3(aq) -! - IF (INT(TEMP) .NE. 298) THEN ! FOR T != 298K or 298.15K - T0 = 298.15D0 - T0T = T0/TEMP - COEF= 1.0+LOG(T0T)-T0T - XK1 = XK1 *EXP( 8.85*(T0T-1.0) + 25.140*COEF) - XK21= XK21*EXP( 13.79*(T0T-1.0) - 5.393*COEF) - XK22= XK22*EXP( -1.50*(T0T-1.0) + 26.920*COEF) - XK3 = XK3 *EXP( 30.20*(T0T-1.0) + 19.910*COEF) - XK31= XK31*EXP( 30.20*(T0T-1.0) + 19.910*COEF) - XK4 = XK4 *EXP( 29.17*(T0T-1.0) + 16.830*COEF) !ISORR -!CC XK4 = XK4 *EXP( 29.47*(T0T-1.0) + 16.840*COEF) ! SEQUIL - XK41= XK41*EXP( 29.17*(T0T-1.0) + 16.830*COEF) - XK5 = XK5 *EXP( 0.98*(T0T-1.0) + 39.500*COEF) - XK6 = XK6 *EXP(-71.00*(T0T-1.0) + 2.400*COEF) - XK7 = XK7 *EXP( -2.65*(T0T-1.0) + 38.570*COEF) - XK8 = XK8 *EXP( -1.56*(T0T-1.0) + 16.900*COEF) - XK9 = XK9 *EXP( -8.22*(T0T-1.0) + 16.010*COEF) - XK10= XK10*EXP(-74.38*(T0T-1.0) + 6.120*COEF) ! ISORR -!CC XK10= XK10*EXP(-75.11*(T0T-1.0) + 13.460*COEF) ! SEQUIL - XK11= XK11*EXP( 0.79*(T0T-1.0) + 14.746*COEF) - XK12= XK12*EXP( -2.87*(T0T-1.0) + 15.830*COEF) - XK13= XK13*EXP( -5.19*(T0T-1.0) + 54.400*COEF) - XK14= XK14*EXP( 24.55*(T0T-1.0) + 16.900*COEF) - XKW = XKW *EXP(-22.52*(T0T-1.0) + 26.920*COEF) - ENDIF - XK2 = XK21*XK22 - XK42 = XK4/XK41 - XK32 = XK3/XK31 -! -! *** CALCULATE DELIQUESCENCE RELATIVE HUMIDITIES (UNICOMPONENT) ******** -! - DRH2SO4 = ZERO - DRNH42S4 = 0.7997D0 - DRNH4HS4 = 0.4000D0 - DRLC = 0.6900D0 - DRNACL = 0.7528D0 - DRNANO3 = 0.7379D0 - DRNH4CL = 0.7710D0 - DRNH4NO3 = 0.6183D0 - DRNA2SO4 = 0.9300D0 - DRNAHSO4 = 0.5200D0 - IF (INT(TEMP) .NE. 298) THEN - T0 = 298.15D0 - TCF = 1.0/TEMP - 1.0/T0 - DRNACL = DRNACL *EXP( 25.*TCF) - DRNANO3 = DRNANO3 *EXP(304.*TCF) - DRNA2SO4 = DRNA2SO4*EXP( 80.*TCF) - DRNH4NO3 = DRNH4NO3*EXP(852.*TCF) - DRNH42S4 = DRNH42S4*EXP( 80.*TCF) - DRNH4HS4 = DRNH4HS4*EXP(384.*TCF) - DRLC = DRLC *EXP(186.*TCF) - DRNH4CL = DRNH4Cl *EXP(239.*TCF) - DRNAHSO4 = DRNAHSO4*EXP(-45.*TCF) - ENDIF -! -! *** CALCULATE MUTUAL DELIQUESCENCE RELATIVE HUMIDITIES **************** -! - DRMLCAB = 0.378D0 ! (NH4)3H(SO4)2 & NH4HSO4 - DRMLCAS = 0.690D0 ! (NH4)3H(SO4)2 & (NH4)2SO4 - DRMASAN = 0.600D0 ! (NH4)2SO4 & NH4NO3 - DRMG1 = 0.460D0 ! (NH4)2SO4, NH4NO3, NA2SO4, NH4CL - DRMG2 = 0.691D0 ! (NH4)2SO4, NA2SO4, NH4CL - DRMG3 = 0.697D0 ! (NH4)2SO4, NA2SO4 - DRMH1 = 0.240D0 ! NA2SO4, NANO3, NACL, NH4NO3, NH4CL - DRMH2 = 0.596D0 ! NA2SO4, NANO3, NACL, NH4CL - DRMI1 = 0.240D0 ! LC, NAHSO4, NH4HSO4, NA2SO4, (NH4)2SO4 - DRMI2 = 0.363D0 ! LC, NAHSO4, NA2SO4, (NH4)2SO4 - NO DATA - - DRMI3 = 0.610D0 ! LC, NA2SO4, (NH4)2SO4 - DRMQ1 = 0.494D0 ! (NH4)2SO4, NH4NO3, NA2SO4 - DRMR1 = 0.663D0 ! NA2SO4, NANO3, NACL - DRMR2 = 0.735D0 ! NA2SO4, NACL - DRMR3 = 0.673D0 ! NANO3, NACL - DRMR4 = 0.694D0 ! NA2SO4, NACL, NH4CL - DRMR5 = 0.731D0 ! NA2SO4, NH4CL - DRMR6 = 0.596D0 ! NA2SO4, NANO3, NH4CL - DRMR7 = 0.380D0 ! NA2SO4, NANO3, NACL, NH4NO3 - DRMR8 = 0.380D0 ! NA2SO4, NACL, NH4NO3 - DRMR9 = 0.494D0 ! NA2SO4, NH4NO3 - DRMR10 = 0.476D0 ! NA2SO4, NANO3, NH4NO3 - DRMR11 = 0.340D0 ! NA2SO4, NACL, NH4NO3, NH4CL - DRMR12 = 0.460D0 ! NA2SO4, NH4NO3, NH4CL - DRMR13 = 0.438D0 ! NA2SO4, NANO3, NH4NO3, NH4CL -!CC IF (INT(TEMP) .NE. 298) THEN -!CC T0 = 298.15d0 -!CC TCF = 1.0/TEMP - 1.0/T0 -!CC DRMLCAB = DRMLCAB*EXP( 507.506*TCF) -!CC DRMLCAS = DRMLCAS*EXP( 133.865*TCF) -!CC DRMASAN = DRMASAN*EXP(1269.068*TCF) -!CC DRMG1 = DRMG1 *EXP( 572.207*TCF) -!CC DRMG2 = DRMG2 *EXP( 58.166*TCF) -!CC DRMG3 = DRMG3 *EXP( 22.253*TCF) -!CC DRMH1 = DRMH1 *EXP(2116.542*TCF) -!CC DRMH2 = DRMH2 *EXP( 650.549*TCF) -!CC DRMI1 = DRMI1 *EXP( 565.743*TCF) -!CC DRMI2 = DRMI2 *EXP( 91.745*TCF) -!CC DRMI3 = DRMI3 *EXP( 161.272*TCF) -!CC DRMQ1 = DRMQ1 *EXP(1616.621*TCF) -!CC DRMR1 = DRMR1 *EXP( 292.564*TCF) -!CC DRMR2 = DRMR2 *EXP( 14.587*TCF) -!CC DRMR3 = DRMR3 *EXP( 307.907*TCF) -!CC DRMR4 = DRMR4 *EXP( 97.605*TCF) -!CC DRMR5 = DRMR5 *EXP( 98.523*TCF) -!CC DRMR6 = DRMR6 *EXP( 465.500*TCF) -!CC DRMR7 = DRMR7 *EXP( 324.425*TCF) -!CC DRMR8 = DRMR8 *EXP(2660.184*TCF) -!CC DRMR9 = DRMR9 *EXP(1617.178*TCF) -!CC DRMR10 = DRMR10 *EXP(1745.226*TCF) -!CC DRMR11 = DRMR11 *EXP(3691.328*TCF) -!CC DRMR12 = DRMR12 *EXP(1836.842*TCF) -!CC DRMR13 = DRMR13 *EXP(1967.938*TCF) -!CC ENDIF -! -! *** LIQUID PHASE ****************************************************** -! - CHNO3 = ZERO - CHCL = ZERO - CH2SO4 = ZERO - COH = ZERO - WATER = TINY -! - DO 20 I=1,NPAIR - MOLALR(I)=ZERO - GAMA(I) =0.1 - GAMIN(I) =GREAT - GAMOU(I) =GREAT - M0(I) =1d5 - 20 CONTINUE -! - DO 30 I=1,NPAIR - GAMA(I) = 0.1d0 - 30 CONTINUE -! - DO 40 I=1,NIONS - MOLAL(I)=ZERO -40 CONTINUE - COH = ZERO -! - DO 50 I=1,NGASAQ - GASAQ(I)=ZERO -50 CONTINUE -! -! *** SOLID PHASE ******************************************************* -! - CNH42S4= ZERO - CNH4HS4= ZERO - CNACL = ZERO - CNA2SO4= ZERO - CNANO3 = ZERO - CNH4NO3= ZERO - CNH4CL = ZERO - CNAHSO4= ZERO - CLC = ZERO -! -! *** GAS PHASE ********************************************************* -! - GNH3 = ZERO - GHNO3 = ZERO - GHCL = ZERO -! -! *** CALCULATE ZSR PARAMETERS ****************************************** -! - IRH = MIN (INT(RH*NZSR+0.5),NZSR) ! Position in ZSR arrays - IRH = MAX (IRH, 1) -! - M0(01) = AWSC(IRH) ! NACl - IF (M0(01) .LT. 100.0) THEN - IC = M0(01) - CALL KMTAB(IC,298.0, GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),GII,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(01) = M0(01)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(02) = AWSS(IRH) ! (NA)2SO4 - IF (M0(02) .LT. 100.0) THEN - IC = 3.0*M0(02) - CALL KMTAB(IC,298.0, XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,GII,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(02) = M0(02)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(03) = AWSN(IRH) ! NANO3 - IF (M0(03) .LT. 100.0) THEN - IC = M0(03) - CALL KMTAB(IC,298.0, XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,GII,XX,XX,XX,XX,XX,XX,XX,XX,XX) - M0(03) = M0(03)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(04) = AWAS(IRH) ! (NH4)2SO4 - IF (M0(04) .LT. 100.0) THEN - IC = 3.0*M0(04) - CALL KMTAB(IC,298.0, XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,GII,XX,XX,XX,XX,XX,XX,XX,XX) - M0(04) = M0(04)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(05) = AWAN(IRH) ! NH4NO3 - IF (M0(05) .LT. 100.0) THEN - IC = M0(05) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,GII,XX,XX,XX,XX,XX,XX,XX) - M0(05) = M0(05)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(06) = AWAC(IRH) ! NH4CL - IF (M0(06) .LT. 100.0) THEN - IC = M0(06) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,GII,XX,XX,XX,XX,XX,XX) - M0(06) = M0(06)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(07) = AWSA(IRH) ! 2H-SO4 - IF (M0(07) .LT. 100.0) THEN - IC = 3.0*M0(07) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,GII,XX,XX,XX,XX,XX) - M0(07) = M0(07)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(08) = AWSA(IRH) ! H-HSO4 -!CC IF (M0(08) .LT. 100.0) THEN ! These are redundant, because M0(8) is not used -!CC IC = M0(08) -!CC CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX) -!CC CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX,XX) -!CCCCC CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,GII,XX,XX,XX,XX) -!CC M0(08) = M0(08)*EXP(LN10*(GI0-GII)) -!CC ENDIF -! - M0(09) = AWAB(IRH) ! NH4HSO4 - IF (M0(09) .LT. 100.0) THEN - IC = M0(09) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,XX,GI0,XX,XX,XX) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,XX,GII,XX,XX,XX) - M0(09) = M0(09)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(12) = AWSB(IRH) ! NAHSO4 - IF (M0(12) .LT. 100.0) THEN - IC = M0(12) - CALL KMTAB(IC,298.0, XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,GI0) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,GII) - M0(12) = M0(12)*EXP(LN10*(GI0-GII)) - ENDIF -! - M0(13) = AWLC(IRH) ! (NH4)3H(SO4)2 - IF (M0(13) .LT. 100.0) THEN - IC = 4.0*M0(13) - CALL KMTAB(IC,298.0, XX,XX,XX,GI0,XX,XX,XX,XX,GII,XX,XX,XX) - G130 = 0.2*(3.0*GI0+2.0*GII) - CALL KMTAB(IC,SNGL(TEMP),XX,XX,XX,GI0,XX,XX,XX,XX,GII,XX,XX,XX) - G13I = 0.2*(3.0*GI0+2.0*GII) - M0(13) = M0(13)*EXP(LN10*SNGL(G130-G13I)) - ENDIF -! -! *** OTHER INITIALIZATIONS ********************************************* -! - ICLACT = 0 - CALAOU = .TRUE. - CALAIN = .TRUE. - FRST = .TRUE. - SCASE = '?? ' - SULRATW = 2.D0 - NOFER = 0 - STKOFL =.FALSE. - DO 60 I=1,NERRMX - ERRSTK(I) =-999 - ERRMSG(I) = 'MESSAGE N/A' - 60 CONTINUE -! -! *** END OF SUBROUTINE INIT3 ******************************************* -! - IF (LHOOK) CALL DR_HOOK('INIT3',1,ZHOOK_HANDLE) - ENDSUBROUTINE INIT3 -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION GETASR -! *** CALCULATES THE LIMITING NH4+/SO4 RATIO OF A SULFATE POOR SYSTEM -! (i.e. SULFATE RATIO = 2.0) FOR GIVEN SO4 LEVEL AND RH -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! -! DOUBLE PRECISION FUNCTION GETASR (SO4I, RHI) - FUNCTION GETASR (SO4I, RHI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INTEGER :: NSO4S,NRHS,NASRD,IA1,INDS,INDR,INDSL,INDSH,IPOSL,IPOSH - REAL :: A1,RAT,WF - REAL :: ASRAT,ASSO4 - PARAMETER (NSO4S=14, NRHS=20, NASRD=NSO4S*NRHS) - COMMON /ASRC/ ASRAT(NASRD), ASSO4(NSO4S) - REAL(KIND=8) :: SO4I, RHI - REAL(KIND=8) :: GETASR -!CC -!CC *** SOLVE USING FULL COMPUTATIONS, NOT LOOK-UP TABLES ************** -!CC -!CC W(2) = WAER(2) -!CC W(3) = WAER(2)*2.0001D0 -!CC CALL CALCA2 -!CC SULRATW = MOLAL(3)/WAER(2) -!CC CALL INIT1 (WI, RHI, TEMPI) ! Re-initialize COMMON BLOCK -! -! *** CALCULATE INDICES ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('GETASR',0,ZHOOK_HANDLE) - RAT = SO4I/1.E-9 - A1 = INT(LOG10(RAT)) ! Magnitude of RAT - IA1 = INT(RAT/2.5/10.0**A1) -! - INDS = 4.0*A1 + MIN(IA1,4) - INDS = MIN(MAX(0, INDS), NSO4S-1) + 1 ! SO4 component of IPOS -! - INDR = INT(99.0-RHI*100.0) + 1 - INDR = MIN(MAX(1, INDR), NRHS) ! RH component of IPOS -! -! *** GET VALUE AND RETURN ********************************************* -! - INDSL = INDS - INDSH = MIN(INDSL+1, NSO4S) - IPOSL = (INDSL-1)*NRHS + INDR ! Low position in array - IPOSH = (INDSH-1)*NRHS + INDR ! High position in array -! - WF = (SO4I-ASSO4(INDSL))/(ASSO4(INDSH)-ASSO4(INDSL) + 1e-7) - WF = MIN(MAX(WF, 0.0), 1.0) -! - GETASR = WF*ASRAT(IPOSH) + (1.0-WF)*ASRAT(IPOSL) -! -! *** END OF FUNCTION GETASR ******************************************* -! - IF (LHOOK) CALL DR_HOOK('GETASR',1,ZHOOK_HANDLE) - ENDFUNCTION GETASR - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA AERSR -! *** CONTAINS DATA FOR AEROSOL SULFATE RATIO ARRAY NEEDED IN FUNCTION -! GETASR -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA AERSR - IMPLICIT NONE - INTEGER :: NSO4S,NRHS,NASRD,I - REAL :: ASRAT,ASSO4 - PARAMETER (NSO4S=14, NRHS=20, NASRD=NSO4S*NRHS) - COMMON /ASRC/ ASRAT(NASRD), ASSO4(NSO4S) -! - DATA ASSO4/1.0E-9, 2.5E-9, 5.0E-9, 7.5E-9, 1.0E-8, & - & 2.5E-8, 5.0E-8, 7.5E-8, 1.0E-7, 2.5E-7, & - & 5.0E-7, 7.5E-7, 1.0E-6, 5.0E-6/ -! - DATA (ASRAT(I), I=1,100)/ & - & 1.020464, 0.9998130, 0.9960167, 0.9984423, 1.004004, & - & 1.010885, 1.018356, 1.026726, 1.034268, 1.043846, & - & 1.052933, 1.062230, 1.062213, 1.080050, 1.088350, & - & 1.096603, 1.104289, 1.111745, 1.094662, 1.121594, & - & 1.268909, 1.242444, 1.233815, 1.232088, 1.234020, & - & 1.238068, 1.243455, 1.250636, 1.258734, 1.267543, & - & 1.276948, 1.286642, 1.293337, 1.305592, 1.314726, & - & 1.323463, 1.333258, 1.343604, 1.344793, 1.355571, & - & 1.431463, 1.405204, 1.395791, 1.393190, 1.394403, & - & 1.398107, 1.403811, 1.411744, 1.420560, 1.429990, & - & 1.439742, 1.449507, 1.458986, 1.468403, 1.477394, & - & 1.487373, 1.495385, 1.503854, 1.512281, 1.520394, & - & 1.514464, 1.489699, 1.480686, 1.478187, 1.479446, & - & 1.483310, 1.489316, 1.497517, 1.506501, 1.515816, & - & 1.524724, 1.533950, 1.542758, 1.551730, 1.559587, & - & 1.568343, 1.575610, 1.583140, 1.590440, 1.596481, & - & 1.567743, 1.544426, 1.535928, 1.533645, 1.535016, & - & 1.539003, 1.545124, 1.553283, 1.561886, 1.570530, & - & 1.579234, 1.587813, 1.595956, 1.603901, 1.611349, & - & 1.618833, 1.625819, 1.632543, 1.639032, 1.645276/ - - DATA (ASRAT(I), I=101,200)/ & - & 1.707390, 1.689553, 1.683198, 1.681810, 1.683490, & - & 1.687477, 1.693148, 1.700084, 1.706917, 1.713507, & - & 1.719952, 1.726190, 1.731985, 1.737544, 1.742673, & - & 1.747756, 1.752431, 1.756890, 1.761141, 1.765190, & - & 1.785657, 1.771851, 1.767063, 1.766229, 1.767901, & - & 1.771455, 1.776223, 1.781769, 1.787065, 1.792081, & - & 1.796922, 1.801561, 1.805832, 1.809896, 1.813622, & - & 1.817292, 1.820651, 1.823841, 1.826871, 1.829745, & - & 1.822215, 1.810497, 1.806496, 1.805898, 1.807480, & - & 1.810684, 1.814860, 1.819613, 1.824093, 1.828306, & - & 1.832352, 1.836209, 1.839748, 1.843105, 1.846175, & - & 1.849192, 1.851948, 1.854574, 1.857038, 1.859387, & - & 1.844588, 1.834208, 1.830701, 1.830233, 1.831727, & - & 1.834665, 1.838429, 1.842658, 1.846615, 1.850321, & - & 1.853869, 1.857243, 1.860332, 1.863257, 1.865928, & - & 1.868550, 1.870942, 1.873208, 1.875355, 1.877389, & - & 1.899556, 1.892637, 1.890367, 1.890165, 1.891317, & - & 1.893436, 1.896036, 1.898872, 1.901485, 1.903908, & - & 1.906212, 1.908391, 1.910375, 1.912248, 1.913952, & - & 1.915621, 1.917140, 1.918576, 1.919934, 1.921220/ - - DATA (ASRAT(I), I=201,280)/ & - & 1.928264, 1.923245, 1.921625, 1.921523, 1.922421, & - & 1.924016, 1.925931, 1.927991, 1.929875, 1.931614, & - & 1.933262, 1.934816, 1.936229, 1.937560, 1.938769, & - & 1.939951, 1.941026, 1.942042, 1.943003, 1.943911, & - & 1.941205, 1.937060, 1.935734, 1.935666, 1.936430, & - & 1.937769, 1.939359, 1.941061, 1.942612, 1.944041, & - & 1.945393, 1.946666, 1.947823, 1.948911, 1.949900, & - & 1.950866, 1.951744, 1.952574, 1.953358, 1.954099, & - & 1.948985, 1.945372, 1.944221, 1.944171, 1.944850, & - & 1.946027, 1.947419, 1.948902, 1.950251, 1.951494, & - & 1.952668, 1.953773, 1.954776, 1.955719, 1.956576, & - & 1.957413, 1.958174, 1.958892, 1.959571, 1.960213, & - & 1.977193, 1.975540, 1.975023, 1.975015, 1.975346, & - & 1.975903, 1.976547, 1.977225, 1.977838, 1.978401, & - & 1.978930, 1.979428, 1.979879, 1.980302, 1.980686, & - & 1.981060, 1.981401, 1.981722, 1.982025, 1.982312/ -! -! *** END OF BLOCK DATA AERSR ****************************************** -! - ENDBLOCKDATA AERSR - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCHA -! *** CALCULATES CHLORIDES SPECIATION -! -! HYDROCHLORIC ACID IN THE LIQUID PHASE IS ASSUMED A MINOR SPECIES, -! AND DOES NOT SIGNIFICANTLY PERTURB THE HSO4-SO4 EQUILIBRIUM. THE -! HYDROCHLORIC ACID DISSOLVED IS CALCULATED FROM THE -! HCL(G) <-> (H+) + (CL-) -! EQUILIBRIUM, USING THE (H+) FROM THE SULFATES. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCHA - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: ALFA,DET,DELT,DIAK,X - REAL(KIND=8) :: KAPA -!C CHARACTER ERRINF*40 -! -! *** CALCULATE HCL DISSOLUTION ***************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCHA',0,ZHOOK_HANDLE) - X = W(5) - DELT = 0.0d0 - IF (WATER.GT.TINY) THEN - KAPA = MOLAL(1) - ALFA = XK3*R*TEMP*(WATER/GAMA(11))**2.0 - DIAK = SQRT( (KAPA+ALFA)**2.0 + 4.0*ALFA*X) - DELT = 0.5*(-(KAPA+ALFA) + DIAK) -!C IF (DELT/KAPA.GT.0.1d0) THEN -!C WRITE (ERRINF,'(1PE10.3)') DELT/KAPA*100.0 -!C CALL PUSHERR (0033, ERRINF) -!C ENDIF - ENDIF -! -! *** CALCULATE HCL SPECIATION IN THE GAS PHASE ************************* -! - GHCL = MAX(X-DELT, 0.0d0) ! GAS HCL -! -! *** CALCULATE HCL SPECIATION IN THE LIQUID PHASE ********************** -! - MOLAL(4) = DELT ! CL- - MOLAL(1) = MOLAL(1) + DELT ! H+ -! - IF (LHOOK) CALL DR_HOOK('CALCHA',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCHA ****************************************** -! - ENDSUBROUTINE CALCHA - - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCHAP -! *** CALCULATES CHLORIDES SPECIATION -! -! HYDROCHLORIC ACID IN THE LIQUID PHASE IS ASSUMED A MINOR SPECIES, -! THAT DOES NOT SIGNIFICANTLY PERTURB THE HSO4-SO4 EQUILIBRIUM. -! THE HYDROCHLORIC ACID DISSOLVED IS CALCULATED FROM THE -! HCL(G) -> HCL(AQ) AND HCL(AQ) -> (H+) + (CL-) -! EQUILIBRIA, USING (H+) FROM THE SULFATES. -! -! THIS IS THE VERSION USED BY THE INVERSE PROBLEM SOVER -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCHAP - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: ALFA,DELT,DIAK,X -! -! *** IS THERE A LIQUID PHASE? ****************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCHAP',0,ZHOOK_HANDLE) - IF (WATER.LE.TINY) THEN - IF (LHOOK) CALL DR_HOOK('CALCHAP',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** CALCULATE HCL SPECIATION IN THE GAS PHASE ************************* -! - CALL CALCCLAQ (MOLAL(4), MOLAL(1), DELT) - ALFA = XK3*R*TEMP*(WATER/GAMA(11))**2.0 - GASAQ(3) = DELT - MOLAL(1) = MOLAL(1) - DELT - MOLAL(4) = MOLAL(4) - DELT - GHCL = MOLAL(1)*MOLAL(4)/ALFA -! - IF (LHOOK) CALL DR_HOOK('CALCHAP',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCHAP ***************************************** -! - ENDSUBROUTINE CALCHAP - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNA -! *** CALCULATES NITRATES SPECIATION -! -! NITRIC ACID IN THE LIQUID PHASE IS ASSUMED A MINOR SPECIES, THAT -! DOES NOT SIGNIFICANTLY PERTURB THE HSO4-SO4 EQUILIBRIUM. THE NITRIC -! ACID DISSOLVED IS CALCULATED FROM THE HNO3(G) -> (H+) + (NO3-) -! EQUILIBRIUM, USING THE (H+) FROM THE SULFATES. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNA - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: ALFA,DELT,DIAK,X - REAL(KIND=8) :: KAPA -!C CHARACTER ERRINF*40 -! -! *** CALCULATE HNO3 DISSOLUTION **************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNA',0,ZHOOK_HANDLE) - X = W(4) - DELT = 0.0d0 - IF (WATER.GT.TINY) THEN - KAPA = MOLAL(1) - ALFA = XK4*R*TEMP*(WATER/GAMA(10))**2.0 - DIAK = SQRT( (KAPA+ALFA)**2.0 + 4.0*ALFA*X) - DELT = 0.5*(-(KAPA+ALFA) + DIAK) -!C IF (DELT/KAPA.GT.0.1d0) THEN -!C WRITE (ERRINF,'(1PE10.3)') DELT/KAPA*100.0 -!C CALL PUSHERR (0019, ERRINF) ! WARNING ERROR: NO SOLUTION -!C ENDIF - ENDIF -! -! *** CALCULATE HNO3 SPECIATION IN THE GAS PHASE ************************ -! - GHNO3 = MAX(X-DELT, 0.0d0) ! GAS HNO3 -! -! *** CALCULATE HNO3 SPECIATION IN THE LIQUID PHASE ********************* -! - MOLAL(7) = DELT ! NO3- - MOLAL(1) = MOLAL(1) + DELT ! H+ -! - IF (LHOOK) CALL DR_HOOK('CALCNA',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNA ****************************************** -! - ENDSUBROUTINE CALCNA - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNAP -! *** CALCULATES NITRATES SPECIATION -! -! NITRIC ACID IN THE LIQUID PHASE IS ASSUMED A MINOR SPECIES, THAT -! DOES NOT SIGNIFICANTLY PERTURB THE HSO4-SO4 EQUILIBRIUM. THE NITRIC -! ACID DISSOLVED IS CALCULATED FROM THE HNO3(G) -> HNO3(AQ) AND -! HNO3(AQ) -> (H+) + (CL-) EQUILIBRIA, USING (H+) FROM THE SULFATES. -! -! THIS IS THE VERSION USED BY THE INVERSE PROBLEM SOVER -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNAP - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: ALFA,DELT -! -! *** IS THERE A LIQUID PHASE? ****************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNAP',0,ZHOOK_HANDLE) - IF (WATER.LE.TINY) THEN - IF (LHOOK) CALL DR_HOOK('CALCNAP',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** CALCULATE HNO3 SPECIATION IN THE GAS PHASE ************************ -! - CALL CALCNIAQ (MOLAL(7), MOLAL(1), DELT) - ALFA = XK4*R*TEMP*(WATER/GAMA(10))**2.0 - GASAQ(3) = DELT - MOLAL(1) = MOLAL(1) - DELT - MOLAL(7) = MOLAL(7) - DELT - GHNO3 = MOLAL(1)*MOLAL(7)/ALFA -! - IF (LHOOK) CALL DR_HOOK('CALCNAP',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNAP ***************************************** -! - ENDSUBROUTINE CALCNAP - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNH3 -! *** CALCULATES AMMONIA IN GAS PHASE -! -! AMMONIA IN THE GAS PHASE IS ASSUMED A MINOR SPECIES, THAT -! DOES NOT SIGNIFICANTLY PERTURB THE AEROSOL EQUILIBRIUM. -! AMMONIA GAS IS CALCULATED FROM THE NH3(g) + (H+)(l) <==> (NH4+)(l) -! EQUILIBRIUM, USING (H+), (NH4+) FROM THE AEROSOL SOLUTION. -! -! THIS IS THE VERSION USED BY THE DIRECT PROBLEM -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNH3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A1,CHI1,CHI2,BB,CC,DIAK,PSI -! -! *** IS THERE A LIQUID PHASE? ****************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNH3',0,ZHOOK_HANDLE) - IF (WATER.LE.TINY) THEN - IF (LHOOK) CALL DR_HOOK('CALCNH3',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** CALCULATE NH3 SUBLIMATION ***************************************** -! - A1 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - CHI1 = MOLAL(3) - CHI2 = MOLAL(1) -! - BB =(CHI2 + ONE/A1) ! a=1; b!=1; c!=1 - CC =-CHI1/A1 - DIAK = SQRT(BB*BB - 4.D0*CC) ! Always > 0 - PSI = 0.5*(-BB + DIAK) ! One positive root - PSI = MAX(TINY, MIN(PSI,CHI1))! Constrict in acceptible range -! -! *** CALCULATE NH3 SPECIATION IN THE GAS PHASE ************************* -! - GNH3 = PSI ! GAS HNO3 -! -! *** CALCULATE NH3 AFFECT IN THE LIQUID PHASE ************************** -! - MOLAL(3) = CHI1 - PSI ! NH4+ - MOLAL(1) = CHI2 + PSI ! H+ -! - IF (LHOOK) CALL DR_HOOK('CALCNH3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNH3 ***************************************** -! - ENDSUBROUTINE CALCNH3 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNH3P -! *** CALCULATES AMMONIA IN GAS PHASE -! -! AMMONIA GAS IS CALCULATED FROM THE NH3(g) + (H+)(l) <==> (NH4+)(l) -! EQUILIBRIUM, USING (H+), (NH4+) FROM THE AEROSOL SOLUTION. -! -! THIS IS THE VERSION USED BY THE INVERSE PROBLEM SOLVER -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNH3P - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A1 -! -! *** IS THERE A LIQUID PHASE? ****************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNH3P',0,ZHOOK_HANDLE) - IF (WATER.LE.TINY) THEN - IF (LHOOK) CALL DR_HOOK('CALCNH3P',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** CALCULATE NH3 GAS PHASE CONCENTRATION ***************************** -! - A1 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - GNH3 = MOLAL(3)/MOLAL(1)/A1 -! - IF (LHOOK) CALL DR_HOOK('CALCNH3P',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNH3P **************************************** -! - ENDSUBROUTINE CALCNH3P - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNHA -! -! THIS SUBROUTINE CALCULATES THE DISSOLUTION OF HCL, HNO3 AT -! THE PRESENCE OF (H,SO4). HCL, HNO3 ARE CONSIDERED MINOR SPECIES, -! THAT DO NOT SIGNIFICANTLY AFFECT THE EQUILIBRIUM POINT. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNHA - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A3,A4,C1,C2,C3,CHI3,CHI4,DELCL,DELNO,OMEGA - INTEGER :: ISLV - REAL(KIND=8) :: M1, M2, M3 - CHARACTER ERRINF*40 -! -! *** SPECIAL CASE; WATER=ZERO ****************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNHA',0,ZHOOK_HANDLE) - IF (WATER.LE.TINY) THEN - GOTO 55 -! -! *** SPECIAL CASE; HCL=HNO3=ZERO *************************************** -! - ELSEIF (W(5).LE.TINY .AND. W(4).LE.TINY) THEN - GOTO 60 -! -! *** SPECIAL CASE; HCL=ZERO ******************************************** -! - ELSE IF (W(5).LE.TINY) THEN - CALL CALCNA ! CALL HNO3 DISSOLUTION ROUTINE - GOTO 60 -! -! *** SPECIAL CASE; HNO3=ZERO ******************************************* -! - ELSE IF (W(4).LE.TINY) THEN - CALL CALCHA ! CALL HCL DISSOLUTION ROUTINE - GOTO 60 - ENDIF -! -! *** CALCULATE EQUILIBRIUM CONSTANTS *********************************** -! - A3 = XK4*R*TEMP*(WATER/GAMA(10))**2.0 ! HNO3 - A4 = XK3*R*TEMP*(WATER/GAMA(11))**2.0 ! HCL -! -! *** CALCULATE CUBIC EQUATION COEFFICIENTS ***************************** -! - DELCL = ZERO - DELNO = ZERO -! - OMEGA = MOLAL(1) ! H+ - CHI3 = W(4) ! HNO3 - CHI4 = W(5) ! HCL -! - C1 = A3*CHI3 - C2 = A4*CHI4 - C3 = A3 - A4 -! - M1 = (C1 + C2 + (OMEGA+A4)*C3)/C3 - M2 = ((OMEGA+A4)*C2 - A4*C3*CHI4)/C3 - M3 =-A4*C2*CHI4/C3 -! -! *** CALCULATE ROOTS *************************************************** -! - CALL POLY3 (M1, M2, M3, DELCL, ISLV) ! HCL DISSOLUTION - IF (ISLV.NE.0) THEN - DELCL = TINY ! TINY AMOUNTS OF HCL ASSUMED WHEN NO ROOT - WRITE (ERRINF,'(1PE7.1)') TINY - CALL PUSHERR (0022, ERRINF) ! WARNING ERROR: NO SOLUTION - ENDIF - DELCL = MIN(DELCL, CHI4) -! - DELNO = C1*DELCL/(C2 + C3*DELCL) - DELNO = MIN(DELNO, CHI3) -! - IF (DELCL.LT.ZERO .OR. DELNO.LT.ZERO .OR. & - & DELCL.GT.CHI4 .OR. DELNO.GT.CHI3 ) THEN - DELCL = TINY ! TINY AMOUNTS OF HCL ASSUMED WHEN NO ROOT - DELNO = TINY - WRITE (ERRINF,'(1PE7.1)') TINY - CALL PUSHERR (0022, ERRINF) ! WARNING ERROR: NO SOLUTION - ENDIF -!CC -!CC *** COMPARE DELTA TO TOTAL H+ ; ESTIMATE EFFECT TO HSO4 *************** -!CC -!C IF ((DELCL+DELNO)/MOLAL(1).GT.0.1d0) THEN -!C WRITE (ERRINF,'(1PE10.3)') (DELCL+DELNO)/MOLAL(1)*100.0 -!C CALL PUSHERR (0021, ERRINF) -!C ENDIF -! -! *** EFFECT ON LIQUID PHASE ******************************************** -! -50 MOLAL(1) = MOLAL(1) + (DELNO+DELCL) ! H+ CHANGE - MOLAL(4) = MOLAL(4) + DELCL ! CL- CHANGE - MOLAL(7) = MOLAL(7) + DELNO ! NO3- CHANGE -! -! *** EFFECT ON GAS PHASE *********************************************** -! -55 GHCL = MAX(W(5) - MOLAL(4), TINY) - GHNO3 = MAX(W(4) - MOLAL(7), TINY) -! -60 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCNHA',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNHA ***************************************** -! - ENDSUBROUTINE CALCNHA - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNHP -! -! THIS SUBROUTINE CALCULATES THE GAS PHASE NITRIC AND HYDROCHLORIC -! ACID. CONCENTRATIONS ARE CALCULATED FROM THE DISSOLUTION -! EQUILIBRIA, USING (H+), (Cl-), (NO3-) IN THE AEROSOL PHASE. -! -! THIS IS THE VERSION USED BY THE INVERSE PROBLEM SOLVER -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNHP - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A3,A4,DELT -! -! *** IS THERE A LIQUID PHASE? ****************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNHP',0,ZHOOK_HANDLE) - IF (WATER.LE.TINY) THEN - IF (LHOOK) CALL DR_HOOK('CALCNHP',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** CALCULATE EQUILIBRIUM CONSTANTS *********************************** -! - A3 = XK3*R*TEMP*(WATER/GAMA(11))**2.0 - A4 = XK4*R*TEMP*(WATER/GAMA(10))**2.0 - MOLAL(1) = MOLAL(1) + WAER(4) + WAER(5) -! -! *** CALCULATE CONCENTRATIONS ****************************************** -! *** ASSUME THAT 'DELT' FROM HNO3 >> 'DELT' FROM HCL -! - CALL CALCNIAQ (WAER(4), MOLAL(1)+MOLAL(7)+MOLAL(4), DELT) - MOLAL(1) = MOLAL(1) - DELT - MOLAL(7) = WAER(4) - DELT - GASAQ(3) = DELT -! - CALL CALCCLAQ (WAER(5), MOLAL(1)+MOLAL(7)+MOLAL(4), DELT) - MOLAL(1) = MOLAL(1) - DELT - MOLAL(4) = WAER(5) - DELT - GASAQ(2) = DELT -! - GHNO3 = MOLAL(1)*MOLAL(7)/A4 - GHCL = MOLAL(1)*MOLAL(4)/A3 -! - IF (LHOOK) CALL DR_HOOK('CALCNHP',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNHP ***************************************** -! - ENDSUBROUTINE CALCNHP - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCAMAQ -! *** THIS SUBROUTINE CALCULATES THE NH3(aq) GENERATED FROM (H,NH4+). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCAMAQ (NH4I, OHI, DELT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A22,AKW,BB,CC,DD,OM1,OM2,DEL1,DEL2 - REAL(KIND=8) :: OHI,DELT - REAL(KIND=8) :: NH4I -!C CHARACTER ERRINF*40 -! -! *** EQUILIBRIUM CONSTANTS -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCAMAQ',0,ZHOOK_HANDLE) - A22 = XK22/XKW/WATER*(GAMA(8)/GAMA(9))**2. ! GAMA(NH3) ASSUMED 1 - AKW = XKW *RH*WATER*WATER -! -! *** FIND ROOT -! - OM1 = NH4I - OM2 = OHI - BB =-(OM1+OM2+A22*AKW) - CC = OM1*OM2 - DD = SQRT(BB*BB-4.D0*CC) - - DEL1 = 0.5D0*(-BB - DD) - DEL2 = 0.5D0*(-BB + DD) -! -! *** GET APPROPRIATE ROOT. -! - IF (DEL1.LT.ZERO) THEN - IF (DEL2.GT.NH4I .OR. DEL2.GT.OHI) THEN - DELT = ZERO - ELSE - DELT = DEL2 - ENDIF - ELSE - DELT = DEL1 - ENDIF -!C -!C *** COMPARE DELTA TO TOTAL NH4+ ; ESTIMATE EFFECT ********************* -!C -!C IF (DELTA/HYD.GT.0.1d0) THEN -!C WRITE (ERRINF,'(1PE10.3)') DELTA/HYD*100.0 -!C CALL PUSHERR (0020, ERRINF) -!C ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCAMAQ',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCAMAQ **************************************** -! - ENDSUBROUTINE CALCAMAQ - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCAMAQ2 -! -! THIS SUBROUTINE CALCULATES THE NH3(aq) GENERATED FROM (H,NH4+). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCAMAQ2 (GGNH3, NH4I, OHI, NH3AQ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A22,ALF1,ALF2,AKW,BB,CC,DEL - REAL(KIND=8) :: GGNH3,OHI - REAL(KIND=8) :: NH4I, NH3AQ -! -! *** EQUILIBRIUM CONSTANTS -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCAMAQ2',0,ZHOOK_HANDLE) - A22 = XK22/XKW/WATER*(GAMA(8)/GAMA(9))**2. ! GAMA(NH3) ASSUMED 1 - AKW = XKW *RH*WATER*WATER -! -! *** FIND ROOT -! - ALF1 = NH4I - GGNH3 - ALF2 = GGNH3 - BB = ALF1 + A22*AKW - CC =-A22*AKW*ALF2 - DEL = 0.5D0*(-BB + SQRT(BB*BB-4.D0*CC)) -! -! *** ADJUST CONCENTRATIONS -! - NH4I = ALF1 + DEL - OHI = DEL - IF (OHI.LE.TINY) OHI = SQRT(AKW) ! If solution is neutral. - NH3AQ = ALF2 - DEL -! - IF (LHOOK) CALL DR_HOOK('CALCAMAQ2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCAMAQ2 **************************************** -! - ENDSUBROUTINE CALCAMAQ2 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCCLAQ -! -! THIS SUBROUTINE CALCULATES THE HCL(aq) GENERATED FROM (H+,CL-). -! -! *** COPYRIGHT 1996-98, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCCLAQ (CLI, HI, DELT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: HI,DELT - REAL(KIND=8) :: A32,BB,CC,DD,DEL1,DEL2,OM1,OM2,X - REAL(KIND=8) :: CLI -! -! *** EQUILIBRIUM CONSTANTS -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCCLAQ',0,ZHOOK_HANDLE) - A32 = XK32*WATER/(GAMA(11))**2. ! GAMA(HCL) ASSUMED 1 -! -! *** FIND ROOT -! - OM1 = CLI - OM2 = HI - BB =-(OM1+OM2+A32) - CC = OM1*OM2 - DD = SQRT(BB*BB-4.D0*CC) - - DEL1 = 0.5D0*(-BB - DD) - DEL2 = 0.5D0*(-BB + DD) -! -! *** GET APPROPRIATE ROOT. -! - IF (DEL1.LT.ZERO) THEN - IF (DEL2.LT.ZERO .OR. DEL2.GT.CLI .OR. DEL2.GT.HI) THEN - DELT = ZERO - ELSE - DELT = DEL2 - ENDIF - ELSE - DELT = DEL1 - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCCLAQ',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCCLAQ **************************************** -! - ENDSUBROUTINE CALCCLAQ - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCCLAQ2 -! -! THIS SUBROUTINE CALCULATES THE HCL(aq) GENERATED FROM (H+,CL-). -! -! *** COPYRIGHT 1996-98, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCCLAQ2 (GGCL, CLI, HI, CLAQ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A32,AKW,ALF1,ALF2,COEF,DEL1 - REAL(KIND=8) :: GGCL,HI,CLAQ - REAL(KIND=8) :: CLI -! -! *** EQUILIBRIUM CONSTANTS -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCCLAQ2',0,ZHOOK_HANDLE) - A32 = XK32*WATER/(GAMA(11))**2. ! GAMA(HCL) ASSUMED 1 - AKW = XKW *RH*WATER*WATER -! -! *** FIND ROOT -! - ALF1 = CLI - GGCL - ALF2 = GGCL - COEF = (ALF1+A32) - DEL1 = 0.5*(-COEF + SQRT(COEF*COEF+4.D0*A32*ALF2)) -! -! *** CORRECT CONCENTRATIONS -! - CLI = ALF1 + DEL1 - HI = DEL1 - IF (HI.LE.TINY) HI = SQRT(AKW) ! If solution is neutral. - CLAQ = ALF2 - DEL1 -! - IF (LHOOK) CALL DR_HOOK('CALCCLAQ2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCCLAQ2 **************************************** -! - ENDSUBROUTINE CALCCLAQ2 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNIAQ -! -! THIS SUBROUTINE CALCULATES THE HNO3(aq) GENERATED FROM (H,NO3-). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNIAQ (NO3I, HI, DELT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: HI,DELT - REAL(KIND=8) :: A42,BB,CC,DD,OM1,OM2,DEL1,DEL2 - REAL(KIND=8) :: NO3I -! -! *** EQUILIBRIUM CONSTANTS -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNIAQ',0,ZHOOK_HANDLE) - A42 = XK42*WATER/(GAMA(10))**2. ! GAMA(HNO3) ASSUMED 1 -! -! *** FIND ROOT -! - OM1 = NO3I - OM2 = HI - BB =-(OM1+OM2+A42) - CC = OM1*OM2 - DD = SQRT(BB*BB-4.D0*CC) - - DEL1 = 0.5D0*(-BB - DD) - DEL2 = 0.5D0*(-BB + DD) -! -! *** GET APPROPRIATE ROOT. -! - IF (DEL1.LT.ZERO .OR. DEL1.GT.HI .OR. DEL1.GT.NO3I) THEN - DELT = ZERO - ELSE - DELT = DEL1 - IF (LHOOK) CALL DR_HOOK('CALCNIAQ',1,ZHOOK_HANDLE) - RETURN - ENDIF -! - IF (DEL2.LT.ZERO .OR. DEL2.GT.NO3I .OR. DEL2.GT.HI) THEN - DELT = ZERO - ELSE - DELT = DEL2 - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCNIAQ',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNIAQ **************************************** -! - ENDSUBROUTINE CALCNIAQ - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCNIAQ2 -! -! THIS SUBROUTINE CALCULATES THE UNDISSOCIATED HNO3(aq) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A42,AKW,ALF1,ALF2,ALF3,BB,CC,DEL1 - REAL(KIND=8) :: GGNO3,HI - REAL(KIND=8) :: NO3I, NO3AQ -! -! *** EQUILIBRIUM CONSTANTS -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCNIAQ2',0,ZHOOK_HANDLE) - A42 = XK42*WATER/(GAMA(10))**2. ! GAMA(HNO3) ASSUMED 1 - AKW = XKW *RH*WATER*WATER -! -! *** FIND ROOT -! - ALF1 = NO3I - GGNO3 - ALF2 = GGNO3 - ALF3 = HI -! - BB = ALF3 + ALF1 + A42 - CC = ALF3*ALF1 - A42*ALF2 - DEL1 = 0.5*(-BB + SQRT(BB*BB-4.D0*CC)) -! -! *** CORRECT CONCENTRATIONS -! - NO3I = ALF1 + DEL1 - HI = ALF3 + DEL1 - IF (HI.LE.TINY) HI = SQRT(AKW) ! If solution is neutral. - NO3AQ = ALF2 - DEL1 -! - IF (LHOOK) CALL DR_HOOK('CALCNIAQ2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCNIAQ2 **************************************** -! - ENDSUBROUTINE CALCNIAQ2 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCMR -! *** THIS SUBROUTINE CALCULATES: -! 1. ION PAIR CONCENTRATIONS (FROM [MOLAR] ARRAY) -! 2. WATER CONTENT OF LIQUID AEROSOL PHASE (FROM ZSR CORRELATION) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCMR - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: AML5,FRCL,FRNH4,FRNO3,HSO4I,SO4I,TOTS4 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 - CHARACTER SC*1 -! -! *** CALCULATE ION PAIR CONCENTRATIONS ACCORDING TO SPECIFIC CASE **** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCMR',0,ZHOOK_HANDLE) - SC =SCASE(1:1) ! SULRAT & SODRAT case -! -! *** NH4-SO4 SYSTEM ; SULFATE POOR CASE -! - IF (SC.EQ.'A') THEN - MOLALR(4) = MOLAL(5)+MOLAL(6) ! (NH4)2SO4 - CORRECT FOR SO4 TO HSO4 -! -! *** NH4-SO4 SYSTEM ; SULFATE RICH CASE ; NO FREE ACID -! - ELSE IF (SC.EQ.'B') THEN - SO4I = MOLAL(5)-MOLAL(1) ! CORRECT FOR HSO4 DISSOCIATION - HSO4I = MOLAL(6)+MOLAL(1) - IF (SO4I.LT.HSO4I) THEN - MOLALR(13) = SO4I ! [LC] = [SO4] - MOLALR(9) = MAX(HSO4I-SO4I, ZERO) ! NH4HSO4 - ELSE - MOLALR(13) = HSO4I ! [LC] = [HSO4] - MOLALR(4) = MAX(SO4I-HSO4I, ZERO) ! (NH4)2SO4 - ENDIF -! -! *** NH4-SO4 SYSTEM ; SULFATE RICH CASE ; FREE ACID -! - ELSE IF (SC.EQ.'C') THEN - MOLALR(4) = MOLAL(3) ! NH4HSO4 - MOLALR(7) = MAX(W(2)-W(3), ZERO) ! H2SO4 -! -! *** NH4-SO4-NO3 SYSTEM ; SULFATE POOR CASE -! - ELSE IF (SC.EQ.'D') THEN - MOLALR(4) = MOLAL(5) + MOLAL(6) ! (NH4)2SO4 - AML5 = MOLAL(3)-2.D0*MOLALR(4) ! "free" NH4 - MOLALR(5) = MAX(MIN(AML5,MOLAL(7)), ZERO)! NH4NO3 = MIN("free", NO3) -! -! *** NH4-SO4-NO3 SYSTEM ; SULFATE RICH CASE ; NO FREE ACID -! - ELSE IF (SC.EQ.'E') THEN - SO4I = MAX(MOLAL(5)-MOLAL(1),ZERO) ! FROM HSO4 DISSOCIATION - HSO4I = MOLAL(6)+MOLAL(1) - IF (SO4I.LT.HSO4I) THEN - MOLALR(13) = SO4I ! [LC] = [SO4] - MOLALR(9) = MAX(HSO4I-SO4I, ZERO) ! NH4HSO4 - ELSE - MOLALR(13) = HSO4I ! [LC] = [HSO4] - MOLALR(4) = MAX(SO4I-HSO4I, ZERO) ! (NH4)2SO4 - ENDIF -! -! *** NH4-SO4-NO3 SYSTEM ; SULFATE RICH CASE ; FREE ACID -! - ELSE IF (SC.EQ.'F') THEN - MOLALR(4) = MOLAL(3) ! NH4HSO4 - MOLALR(7) = MAX(MOLAL(5)+MOLAL(6)-MOLAL(3),ZERO) ! H2SO4 -! -! *** NA-NH4-SO4-NO3-CL SYSTEM ; SULFATE POOR ; SODIUM POOR CASE -! - ELSE IF (SC.EQ.'G') THEN - MOLALR(2) = 0.5*MOLAL(2) ! NA2SO4 - TOTS4 = MOLAL(5)+MOLAL(6) ! Total SO4 - MOLALR(4) = MAX(TOTS4 - MOLALR(2), ZERO) ! (NH4)2SO4 - FRNH4 = MAX(MOLAL(3) - 2.D0*MOLALR(4), ZERO) - MOLALR(5) = MIN(MOLAL(7),FRNH4) ! NH4NO3 - FRNH4 = MAX(FRNH4 - MOLALR(5), ZERO) - MOLALR(6) = MIN(MOLAL(4), FRNH4) ! NH4CL -! -! *** NA-NH4-SO4-NO3-CL SYSTEM ; SULFATE POOR ; SODIUM RICH CASE -! *** RETREIVE DISSOLVED SALTS DIRECTLY FROM COMMON BLOCK /SOLUT/ -! - ELSE IF (SC.EQ.'H') THEN - MOLALR(1) = PSI7 ! NACL - MOLALR(2) = PSI1 ! NA2SO4 - MOLALR(3) = PSI8 ! NANO3 - MOLALR(4) = ZERO ! (NH4)2SO4 - FRNO3 = MAX(MOLAL(7) - MOLALR(3), ZERO) ! "FREE" NO3 - FRCL = MAX(MOLAL(4) - MOLALR(1), ZERO) ! "FREE" CL - MOLALR(5) = MIN(MOLAL(3),FRNO3) ! NH4NO3 - FRNH4 = MAX(MOLAL(3) - MOLALR(5), ZERO) ! "FREE" NH3 - MOLALR(6) = MIN(FRCL, FRNH4) ! NH4CL -! -! *** NA-NH4-SO4-NO3-CL SYSTEM ; SULFATE RICH CASE ; NO FREE ACID -! *** RETREIVE DISSOLVED SALTS DIRECTLY FROM COMMON BLOCK /SOLUT/ -! - ELSE IF (SC.EQ.'I') THEN - MOLALR(04) = PSI5 ! (NH4)2SO4 - MOLALR(02) = PSI4 ! NA2SO4 - MOLALR(09) = PSI1 ! NH4HSO4 - MOLALR(12) = PSI3 ! NAHSO4 - MOLALR(13) = PSI2 ! LC -! -! *** NA-NH4-SO4-NO3-CL SYSTEM ; SULFATE RICH CASE ; FREE ACID -! - ELSE IF (SC.EQ.'J') THEN - MOLALR(09) = MOLAL(3) ! NH4HSO4 - MOLALR(12) = MOLAL(2) ! NAHSO4 - MOLALR(07) = MOLAL(5)+MOLAL(6)-MOLAL(3)-MOLAL(2) ! H2SO4 - MOLALR(07) = MAX(MOLALR(07),ZERO) -! -! ======= REVERSE PROBLEMS =========================================== -! -! *** NH4-SO4-NO3 SYSTEM ; SULFATE POOR CASE -! - ELSE IF (SC.EQ.'N') THEN - MOLALR(4) = MOLAL(5) + MOLAL(6) ! (NH4)2SO4 - AML5 = WAER(3)-2.D0*MOLALR(4) ! "free" NH4 - MOLALR(5) = MAX(MIN(AML5,WAER(4)), ZERO) ! NH4NO3 = MIN("free", NO3) -! -! *** NH4-SO4-NO3-NA-CL SYSTEM ; SULFATE POOR, SODIUM POOR CASE -! - ELSE IF (SC.EQ.'Q') THEN - MOLALR(2) = PSI1 ! NA2SO4 - MOLALR(4) = PSI6 ! (NH4)2SO4 - MOLALR(5) = PSI5 ! NH4NO3 - MOLALR(6) = PSI4 ! NH4CL -! -! *** NH4-SO4-NO3-NA-CL SYSTEM ; SULFATE POOR, SODIUM RICH CASE -! - ELSE IF (SC.EQ.'R') THEN - MOLALR(1) = PSI3 ! NACL - MOLALR(2) = PSI1 ! NA2SO4 - MOLALR(3) = PSI2 ! NANO3 - MOLALR(4) = ZERO ! (NH4)2SO4 - MOLALR(5) = PSI5 ! NH4NO3 - MOLALR(6) = PSI4 ! NH4CL -! -! *** UNKNOWN CASE -! - ELSE - CALL PUSHERR (1001, ' ') ! FATAL ERROR: CASE NOT SUPPORTED - ENDIF -! -! *** CALCULATE WATER CONTENT ; ZSR CORRELATION *********************** -! - WATER = ZERO - DO 10 I=1,NPAIR - WATER = WATER + MOLALR(I)/M0(I) -10 CONTINUE - WATER = MAX(WATER, TINY) -! - IF (LHOOK) CALL DR_HOOK('CALCMR',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCMR ****************************************** -! - ENDSUBROUTINE CALCMR -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCMDRH -! -! THIS IS THE CASE WHERE THE RELATIVE HUMIDITY IS IN THE MUTUAL -! DRH REGION. THE SOLUTION IS ASSUMED TO BE THE SUM OF TWO WEIGHTED -! SOLUTIONS ; THE 'DRY' SOLUTION (SUBROUTINE DRYCASE) AND THE -! 'SATURATED LIQUID' SOLUTION (SUBROUTINE LIQCASE). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCMDRH (RHI, RHDRY, RHLIQ, DRYCASE, LIQCASE) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: CLCO,CNA2SO,CNACLO,CNAHSO,CNANO - REAL(KIND=8) :: CNH42SO,CNH4N3O,CNH4CLO,CNH4HSO - REAL(KIND=8) :: DAMBIS,DAMCHL,DAMG,DAMNIT,DAMSUL,DHAG,DLC,DNAG - REAL(KIND=8) :: DSOBIS,DSONIT,DSOSUL,DSOCHL - REAL(KIND=8) :: GHCLO,GHO3O,GNH3O,GHNO3O,ONEMWF,WF - INTEGER :: I - REAL(KIND=8) :: RHI,RHDRY,RHLIQ - EXTERNAL DRYCASE, LIQCASE -! -! *** FIND WEIGHT FACTOR ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCMDRH',0,ZHOOK_HANDLE) - IF (WFTYP.EQ.0) THEN - WF = ONE - ELSEIF (WFTYP.EQ.1) THEN - WF = 0.5D0 - ELSE - WF = (RHLIQ-RHI)/(RHLIQ-RHDRY) - ENDIF - ONEMWF = ONE - WF -! -! *** FIND FIRST SECTION ; DRY ONE ************************************ -! - CALL DRYCASE - IF (ABS(ONEMWF).LE.1D-5) GOTO 200 ! DRY AEROSOL -! - CNH42SO = CNH42S4 ! FIRST (DRY) SOLUTION - CNH4HSO = CNH4HS4 - CLCO = CLC - CNH4N3O = CNH4NO3 - CNH4CLO = CNH4CL - CNA2SO = CNA2SO4 - CNAHSO = CNAHSO4 - CNANO = CNANO3 - CNACLO = CNACL - GNH3O = GNH3 - GHNO3O = GHNO3 - GHCLO = GHCL -! -! *** FIND SECOND SECTION ; DRY & LIQUID ****************************** -! - CNH42S4 = ZERO - CNH4HS4 = ZERO - CLC = ZERO - CNH4NO3 = ZERO - CNH4CL = ZERO - CNA2SO4 = ZERO - CNAHSO4 = ZERO - CNANO3 = ZERO - CNACL = ZERO - GNH3 = ZERO - GHNO3 = ZERO - GHCL = ZERO - CALL LIQCASE ! SECOND (LIQUID) SOLUTION -! -! *** ADJUST THINGS FOR THE CASE THAT THE LIQUID SUB PREDICTS DRY AEROSOL -! - IF (WATER.LE.TINY) THEN - DO 100 I=1,NIONS - MOLAL(I)= ZERO ! Aqueous phase - 100 CONTINUE - WATER = ZERO -! - CNH42S4 = CNH42SO ! Solid phase - CNA2SO4 = CNA2SO - CNAHSO4 = CNAHSO - CNH4HS4 = CNH4HSO - CLC = CLCO - CNH4NO3 = CNH4N3O - CNANO3 = CNANO - CNACL = CNACLO - CNH4CL = CNH4CLO -! - GNH3 = GNH3O ! Gas phase - GHNO3 = GHNO3O - GHCL = GHCLO -! - GOTO 200 - ENDIF -! -! *** FIND SALT DISSOLUTIONS BETWEEN DRY & LIQUID SOLUTIONS. -! - DAMSUL = CNH42SO - CNH42S4 - DSOSUL = CNA2SO - CNA2SO4 - DAMBIS = CNH4HSO - CNH4HS4 - DSOBIS = CNAHSO - CNAHSO4 - DLC = CLCO - CLC - DAMNIT = CNH4N3O - CNH4NO3 - DAMCHL = CNH4CLO - CNH4CL - DSONIT = CNANO - CNANO3 - DSOCHL = CNACLO - CNACL -! -! *** FIND GAS DISSOLUTIONS BETWEEN DRY & LIQUID SOLUTIONS. -! - DAMG = GNH3O - GNH3 - DHAG = GHCLO - GHCL - DNAG = GHNO3O - GHNO3 -! -! *** FIND SOLUTION AT MDRH BY WEIGHTING DRY & LIQUID SOLUTIONS. -! -! LIQUID -! - MOLAL(1)= ONEMWF*MOLAL(1) ! H+ - MOLAL(2)= ONEMWF*(2.D0*DSOSUL + DSOBIS + DSONIT + DSOCHL) ! NA+ - MOLAL(3)= ONEMWF*(2.D0*DAMSUL + DAMG + DAMBIS + DAMCHL + & - & 3.D0*DLC + DAMNIT ) ! NH4+ - MOLAL(4)= ONEMWF*( DAMCHL + DSOCHL + DHAG) ! CL- - MOLAL(5)= ONEMWF*( DAMSUL + DSOSUL + DLC - MOLAL(6)) ! SO4-- !VB 17 Sept 2001 - MOLAL(6)= ONEMWF*( MOLAL(6) + DSOBIS + DAMBIS + DLC) ! HSO4- - MOLAL(7)= ONEMWF*( DAMNIT + DSONIT + DNAG) ! NO3- - WATER = ONEMWF*WATER -! -! SOLID -! - CNH42S4 = WF*CNH42SO + ONEMWF*CNH42S4 - CNA2SO4 = WF*CNA2SO + ONEMWF*CNA2SO4 - CNAHSO4 = WF*CNAHSO + ONEMWF*CNAHSO4 - CNH4HS4 = WF*CNH4HSO + ONEMWF*CNH4HS4 - CLC = WF*CLCO + ONEMWF*CLC - CNH4NO3 = WF*CNH4N3O + ONEMWF*CNH4NO3 - CNANO3 = WF*CNANO + ONEMWF*CNANO3 - CNACL = WF*CNACLO + ONEMWF*CNACL - CNH4CL = WF*CNH4CLO + ONEMWF*CNH4CL -! -! GAS -! - GNH3 = WF*GNH3O + ONEMWF*GNH3 - GHNO3 = WF*GHNO3O + ONEMWF*GHNO3 - GHCL = WF*GHCLO + ONEMWF*GHCL -! -! *** RETURN POINT -! -200 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCMDRH',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCMDRH **************************************** -! - ENDSUBROUTINE CALCMDRH - - - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCMDRP -! -! THIS IS THE CASE WHERE THE RELATIVE HUMIDITY IS IN THE MUTUAL -! DRH REGION. THE SOLUTION IS ASSUMED TO BE THE SUM OF TWO WEIGHTED -! SOLUTIONS ; THE 'DRY' SOLUTION (SUBROUTINE DRYCASE) AND THE -! 'SATURATED LIQUID' SOLUTION (SUBROUTINE LIQCASE). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCMDRP (RHI, RHDRY, RHLIQ, DRYCASE, LIQCASE) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A2,A3,A4,A8,CLC0,CNA2SO,CNACLO,CNAHSO,CNANO - REAL(KIND=8) :: CNH4HSO,CNH4N30,CNH42SO,CNH4CLO,CNH4SO,CNH4N3O - REAL(KIND=8) :: CLCO - REAL(KIND=8) :: DAMBIS,DLC,DSOBIS,HIEN,HIEQ - INTEGER :: I - REAL(KIND=8) :: WF,ONEMWF - REAL(KIND=8) :: RHI,RHDRY,RHLIQ - EXTERNAL DRYCASE, LIQCASE -! -! *** FIND WEIGHT FACTOR ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCMDRP',0,ZHOOK_HANDLE) - IF (WFTYP.EQ.0) THEN - WF = ONE - ELSEIF (WFTYP.EQ.1) THEN - WF = 0.5D0 - ELSE - WF = (RHLIQ-RHI)/(RHLIQ-RHDRY) - ENDIF - ONEMWF = ONE - WF -! -! *** FIND FIRST SECTION ; DRY ONE ************************************ -! - CALL DRYCASE - IF (ABS(ONEMWF).LE.1D-5) GOTO 200 ! DRY AEROSOL -! - CNH42SO = CNH42S4 ! FIRST (DRY) SOLUTION - CNH4HSO = CNH4HS4 - CLCO = CLC - CNH4N3O = CNH4NO3 - CNH4CLO = CNH4CL - CNA2SO = CNA2SO4 - CNAHSO = CNAHSO4 - CNANO = CNANO3 - CNACLO = CNACL -! -! *** FIND SECOND SECTION ; DRY & LIQUID ****************************** -! - CNH42S4 = ZERO - CNH4HS4 = ZERO - CLC = ZERO - CNH4NO3 = ZERO - CNH4CL = ZERO - CNA2SO4 = ZERO - CNAHSO4 = ZERO - CNANO3 = ZERO - CNACL = ZERO - GNH3 = ZERO - GHNO3 = ZERO - GHCL = ZERO - CALL LIQCASE ! SECOND (LIQUID) SOLUTION -! -! *** ADJUST THINGS FOR THE CASE THAT THE LIQUID SUB PREDICTS DRY AEROSOL -! - IF (WATER.LE.TINY) THEN - WATER = ZERO - DO 100 I=1,NIONS - MOLAL(I)= ZERO - 100 CONTINUE - CALL DRYCASE - GOTO 200 - ENDIF -! -! *** FIND SALT DISSOLUTIONS BETWEEN DRY & LIQUID SOLUTIONS. -! - DAMBIS = CNH4HSO - CNH4HS4 - DSOBIS = CNAHSO - CNAHSO4 - DLC = CLCO - CLC -! -! *** FIND SOLUTION AT MDRH BY WEIGHTING DRY & LIQUID SOLUTIONS. -! -! *** SOLID -! - CNH42S4 = WF*CNH42SO + ONEMWF*CNH42S4 - CNA2SO4 = WF*CNA2SO + ONEMWF*CNA2SO4 - CNAHSO4 = WF*CNAHSO + ONEMWF*CNAHSO4 - CNH4HS4 = WF*CNH4HSO + ONEMWF*CNH4HS4 - CLC = WF*CLCO + ONEMWF*CLC - CNH4NO3 = WF*CNH4N3O + ONEMWF*CNH4NO3 - CNANO3 = WF*CNANO + ONEMWF*CNANO3 - CNACL = WF*CNACLO + ONEMWF*CNACL - CNH4CL = WF*CNH4CLO + ONEMWF*CNH4CL -! -! *** LIQUID -! - WATER = ONEMWF*WATER -! - MOLAL(2)= WAER(1) - 2.D0*CNA2SO4 - CNAHSO4 - CNANO3 - & - & CNACL ! NA+ - MOLAL(3)= WAER(3) - 2.D0*CNH42S4 - CNH4HS4 - CNH4CL - & - & 3.D0*CLC - CNH4NO3 ! NH4+ - MOLAL(4)= WAER(5) - CNACL - CNH4CL ! CL- - MOLAL(7)= WAER(4) - CNANO3 - CNH4NO3 ! NO3- - MOLAL(6)= ONEMWF*(MOLAL(6) + DSOBIS + DAMBIS + DLC) ! HSO4- - MOLAL(5)= WAER(2) - MOLAL(6) - CLC - CNH42S4 - CNA2SO4 ! SO4-- -! - A8 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. - IF (MOLAL(5).LE.TINY) THEN - HIEQ = SQRT(XKW *RH*WATER*WATER) ! Neutral solution - ELSE - HIEQ = A8*MOLAL(6)/MOLAL(5) - ENDIF - HIEN = MOLAL(4) + MOLAL(7) + MOLAL(6) + 2.D0*MOLAL(5) - & - & MOLAL(2) - MOLAL(3) - MOLAL(1)= MAX (HIEQ, HIEN) ! H+ -! -! *** GAS (ACTIVITY COEFS FROM LIQUID SOLUTION) -! - A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = MOLAL(3)/MAX(MOLAL(1),TINY)/A2 - GHNO3 = MOLAL(1)*MOLAL(7)/A3 - GHCL = MOLAL(1)*MOLAL(4)/A4 -! -200 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCMDRP',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCMDRP **************************************** -! - ENDSUBROUTINE CALCMDRP -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCHS4 -! *** THIS SUBROUTINE CALCULATES THE HSO4 GENERATED FROM (H,SO4). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCHS4 (HI, SO4I, HSO4I, DELTA) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A8,BB,CC,DD,DELTA1,DELTA2,SQDD - REAL(KIND=8) :: HI,SO4I,HSO4I,DELTA -!C CHARACTER ERRINF*40 -! -! *** IF TOO LITTLE WATER, DONT SOLVE -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCHS4',0,ZHOOK_HANDLE) - IF (WATER.LE.1d1*TINY) THEN - DELTA = ZERO - IF (LHOOK) CALL DR_HOOK('CALCHS4',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** CALCULATE HSO4 SPECIATION ***************************************** -! - A8 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! - BB =-(HI + SO4I + A8) - CC = HI*SO4I - HSO4I*A8 - DD = BB*BB - 4.D0*CC -! - IF (DD.GE.ZERO) THEN - SQDD = SQRT(DD) - DELTA1 = 0.5*(-BB + SQDD) - DELTA2 = 0.5*(-BB - SQDD) - IF (HSO4I.LE.TINY) THEN - DELTA = DELTA2 - ELSEIF( HI*SO4I .GE. A8*HSO4I ) THEN - DELTA = DELTA2 - ELSEIF( HI*SO4I .LT. A8*HSO4I ) THEN - DELTA = DELTA1 - ELSE - DELTA = ZERO - ENDIF - ELSE - DELTA = ZERO - ENDIF -!CC -!CC *** COMPARE DELTA TO TOTAL H+ ; ESTIMATE EFFECT OF HSO4 *************** -!CC -!C HYD = MAX(HI, MOLAL(1)) -!C IF (HYD.GT.TINY) THEN -!C IF (DELTA/HYD.GT.0.1d0) THEN -!C WRITE (ERRINF,'(1PE10.3)') DELTA/HYD*100.0 -!C CALL PUSHERR (0020, ERRINF) -!C ENDIF -!C ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCHS4',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCHS4 ***************************************** -! - ENDSUBROUTINE CALCHS4 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCPH -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCPH (GG, HI, OHI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: AKW,BB,CC,DD,CN - REAL(KIND=8) :: GG,HI,OHI -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCPH',0,ZHOOK_HANDLE) - AKW = XKW *RH*WATER*WATER - CN = SQRT(AKW) -! -! *** GG = (negative charge) - (positive charge) -! - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = MAX(0.5D0*(-BB + SQRT(DD)),CN) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= MAX(0.5D0*(-BB + SQRT(DD)),CN) - HI = AKW/OHI - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCPH',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCPH ****************************************** -! - ENDSUBROUTINE CALCPH - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCACT -! *** CALCULATES MULTI-COMPONENET ACTIVITY COEFFICIENTS FROM BROMLEYS -! METHOD. THE BINARY ACTIVITY COEFFICIENTS ARE CALCULATED BY -! KUSIK-MEISNER RELATION (SUBROUTINE KMTAB or SUBROUTINE KMFUL). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCACT - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: I,J - REAL(KIND=8) :: ERRIN,ERROU,G -! - REAL EX10, URF - REAL G0(3,4),ZPL,ZMI,AGAMA,SION,H,CH,F1(3),F2(4) - REAL(KIND=8) :: MPL, XIJ, YJI - PARAMETER (URF=0.5) -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - G(I,J)= (F1(I)/Z(I) + F2(J)/Z(J+3)) / (Z(I)+Z(J+3)) - H - IF (LHOOK) CALL DR_HOOK('CALCACT',0,ZHOOK_HANDLE) -! -! *** SAVE ACTIVITIES IN OLD ARRAY ************************************* -! - IF (FRST) THEN ! Outer loop - DO 10 I=1,NPAIR - GAMOU(I) = GAMA(I) -10 CONTINUE - ENDIF -! - DO 20 I=1,NPAIR ! Inner loop - GAMIN(I) = GAMA(I) -20 CONTINUE -! -! *** CALCULATE IONIC ACTIVITY OF SOLUTION ***************************** -! - IONIC=0.0 - DO 30 I=1,NIONS - IONIC=IONIC + MOLAL(I)*Z(I)*Z(I) -30 CONTINUE - IONIC = MAX(MIN(0.5*IONIC/WATER,20.d0), TINY) -! -! *** CALCULATE BINARY ACTIVITY COEFFICIENTS *************************** -! -! G0(1,1)=G11;G0(1,2)=G07;G0(1,3)=G08;G0(1,4)=G10;G0(2,1)=G01;G0(2,2)=G02 -! G0(2,3)=G12;G0(2,4)=G03;G0(3,1)=G06;G0(3,2)=G04;G0(3,3)=G09;G0(3,4)=G05 -! - IF (IACALC.EQ.0) THEN ! K.M.; FULL - CALL KMFUL (IONIC, SNGL(TEMP),G0(2,1),G0(2,2),G0(2,4), & - & G0(3,2),G0(3,4),G0(3,1),G0(1,2),G0(1,3),G0(3,3), & - & G0(1,4),G0(1,1),G0(2,3)) - ELSE ! K.M.; TABULATED - CALL KMTAB (IONIC, SNGL(TEMP),G0(2,1),G0(2,2),G0(2,4), & - & G0(3,2),G0(3,4),G0(3,1),G0(1,2),G0(1,3),G0(3,3), & - & G0(1,4),G0(1,1),G0(2,3)) - ENDIF -! -! *** CALCULATE MULTICOMPONENT ACTIVITY COEFFICIENTS ******************* -! - AGAMA = 0.511*(298.0/TEMP)**1.5 ! Debye Huckel const. at T - SION = SQRT(IONIC) - H = AGAMA*SION/(1+SION) -! - DO 100 I=1,3 - F1(I)=0.0 - F2(I)=0.0 -100 CONTINUE - F2(4)=0.0 -! - DO 110 I=1,3 - ZPL = Z(I) - MPL = MOLAL(I)/WATER - DO 110 J=1,4 - ZMI = Z(J+3) - CH = 0.25*(ZPL+ZMI)*(ZPL+ZMI)/IONIC - XIJ = CH*MPL - YJI = CH*MOLAL(J+3)/WATER - F1(I) = F1(I) + SNGL(YJI*(G0(I,J) + ZPL*ZMI*H)) - F2(J) = F2(J) + SNGL(XIJ*(G0(I,J) + ZPL*ZMI*H)) -110 CONTINUE -! -! *** LOG10 OF ACTIVITY COEFFICIENTS *********************************** -! - GAMA(01) = G(2,1)*ZZ(01) ! NACL - GAMA(02) = G(2,2)*ZZ(02) ! NA2SO4 - GAMA(03) = G(2,4)*ZZ(03) ! NANO3 - GAMA(04) = G(3,2)*ZZ(04) ! (NH4)2SO4 - GAMA(05) = G(3,4)*ZZ(05) ! NH4NO3 - GAMA(06) = G(3,1)*ZZ(06) ! NH4CL - GAMA(07) = G(1,2)*ZZ(07) ! 2H-SO4 - GAMA(08) = G(1,3)*ZZ(08) ! H-HSO4 - GAMA(09) = G(3,3)*ZZ(09) ! NH4HSO4 - GAMA(10) = G(1,4)*ZZ(10) ! HNO3 - GAMA(11) = G(1,1)*ZZ(11) ! HCL - GAMA(12) = G(2,3)*ZZ(12) ! NAHSO4 - GAMA(13) = 0.20*(3.0*GAMA(04)+2.0*GAMA(09)) ! LC ; SCAPE -!C GAMA(13) = 0.50*(GAMA(04)+GAMA(09)) ! LC ; SEQUILIB -!C GAMA(13) = 0.25*(3.0*GAMA(04)+GAMA(07)) ! LC ; AIM -! -! *** CONVERT LOG (GAMA) COEFFICIENTS TO GAMA ************************** -! - DO 200 I=1,NPAIR -!C GAMA(I)=MAX(-5.0d0, MIN(GAMA(I),5.0d0) ) ! F77 LIBRARY ROUTINE -!C GAMA(I)=10.0**GAMA(I) - GAMA(I)=EX10(SNGL(GAMA(I)), 5.0) ! CUTOFF SET TO [-5,5] - GAMA(I) = GAMIN(I)*(1.0-URF) + URF*GAMA(I) ! Under-relax GAMA's - 200 CONTINUE -! -! *** SETUP ACTIVITY CALCULATION FLAGS ********************************* -! -! OUTER CALCULATION LOOP ; ONLY IF FRST=.TRUE. -! - IF (FRST) THEN - ERROU = ZERO ! CONVERGENCE CRITERION - DO 210 I=1,NPAIR - ERROU=MAX(ERROU, ABS((GAMOU(I)-GAMA(I))/GAMOU(I))) -210 CONTINUE - CALAOU = ERROU .GE. EPSACT ! SETUP FLAGS - FRST =.FALSE. - ENDIF -! -! INNER CALCULATION LOOP ; ALWAYS -! - ERRIN = ZERO ! CONVERGENCE CRITERION - DO 220 I=1,NPAIR - ERRIN = MAX (ERRIN, ABS((GAMIN(I)-GAMA(I))/GAMIN(I))) -220 CONTINUE - CALAIN = ERRIN .GE. EPSACT -! - ICLACT = ICLACT + 1 ! Increment ACTIVITY call counter -! -! *** END OF SUBROUTINE ACTIVITY **************************************** -! - IF (LHOOK) CALL DR_HOOK('CALCACT',1,ZHOOK_HANDLE) - ENDSUBROUTINE CALCACT - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE RSTGAM -! *** RESETS ACTIVITY COEFFICIENT ARRAYS TO DEFAULT VALUE OF 0.1 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE RSTGAM - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: I -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RSTGAM',0,ZHOOK_HANDLE) - DO 10 I=1, NPAIR - GAMA(I) = 0.1 -10 CONTINUE -! -! *** END OF SUBROUTINE RSTGAM ****************************************** -! - IF (LHOOK) CALL DR_HOOK('RSTGAM',1,ZHOOK_HANDLE) - ENDSUBROUTINE RSTGAM -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KMFUL -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KMFUL (IONIC,TEMP,G01,G02,G03,G04,G05,G06,G07,G08,G09, & - & G10,G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - REAL :: CF1,CF2,SION,TI - REAL Ionic, TEMP - REAL :: G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 - REAL :: Z01,Z02,Z03,Z04,Z05,Z06,Z07,Z08,Z10,Z11 - DATA Z01,Z02,Z03,Z04,Z05,Z06,Z07,Z08,Z10,Z11 & - & /1, 2, 1, 2, 1, 1, 2, 1, 1, 1/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KMFUL',0,ZHOOK_HANDLE) - SION = SQRT(IONIC) -! -! *** Coefficients at 25 oC -! - CALL MKBI(2.230, IONIC, SION, Z01, G01) - CALL MKBI(-0.19, IONIC, SION, Z02, G02) - CALL MKBI(-0.39, IONIC, SION, Z03, G03) - CALL MKBI(-0.25, IONIC, SION, Z04, G04) - CALL MKBI(-1.15, IONIC, SION, Z05, G05) - CALL MKBI(0.820, IONIC, SION, Z06, G06) - CALL MKBI(-.100, IONIC, SION, Z07, G07) - CALL MKBI(8.000, IONIC, SION, Z08, G08) - CALL MKBI(2.600, IONIC, SION, Z10, G10) - CALL MKBI(6.000, IONIC, SION, Z11, G11) -! -! *** Correct for T other than 298 K -! - TI = TEMP-273.0 - IF (ABS(TI) .GT. 1.0) THEN - CF1 = 1.125-0.005*TI - CF2 = (0.125-0.005*TI)*(0.039*IONIC**0.92-0.41*SION/(1.+SION)) - G01 = CF1*G01 - CF2*Z01 - G02 = CF1*G02 - CF2*Z02 - G03 = CF1*G03 - CF2*Z03 - G04 = CF1*G04 - CF2*Z04 - G05 = CF1*G05 - CF2*Z05 - G06 = CF1*G06 - CF2*Z06 - G07 = CF1*G07 - CF2*Z07 - G08 = CF1*G08 - CF2*Z08 - G10 = CF1*G10 - CF2*Z10 - G11 = CF1*G11 - CF2*Z11 - ENDIF -! - G09 = G06 + G08 - G11 - G12 = G01 + G08 - G11 -! -! *** Return point ; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KMFUL',1,ZHOOK_HANDLE) - ENDSUBROUTINE KMFUL - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE MKBI -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE MKBI(Q,IONIC,SION,ZIP,BI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! - REAL :: Q,SION,ZIP,BI - REAL :: B,C,XX - REAL IONIC -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MKBI',0,ZHOOK_HANDLE) - B=.75-.065*Q - C= 1.0 - IF (IONIC.LT.6.0) C=1.+.055*Q*EXP(-.023*IONIC*IONIC*IONIC) - XX=-0.5107*SION/(1.+C*SION) - BI=(1.+B*(1.+.1*IONIC)**Q-B) - BI=ZIP*LOG10(BI) + ZIP*XX -! - IF (LHOOK) CALL DR_HOOK('MKBI',1,ZHOOK_HANDLE) - ENDSUBROUTINE MKBI -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KMTAB -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! THE COMPUTATIONS HAVE BEEN PERFORMED AND THE RESULTS ARE STORED IN -! LOOKUP TABLES. THE IONIC ACTIVITY 'IONIC' IS INPUT, AND THE ARRAY -! 'BINARR' IS RETURNED WITH THE BINARY COEFFICIENTS. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KMTAB (IN,TEMP,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,& - & G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INTEGER :: IND - REAL :: IN,TEMP,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 -! -! *** Find temperature range -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KMTAB',0,ZHOOK_HANDLE) - IND = NINT((TEMP-198.0)/25.0) + 1 - IND = MIN(MAX(IND,1),6) -! -! *** Call appropriate routine -! - IF (IND.EQ.1) THEN - CALL KM198 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12) - ELSEIF (IND.EQ.2) THEN - CALL KM223 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12) - ELSEIF (IND.EQ.3) THEN - CALL KM248 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12) - ELSEIF (IND.EQ.4) THEN - CALL KM273 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12) - ELSEIF (IND.EQ.5) THEN - CALL KM298 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12) - ELSE - CALL KM323 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12) - ENDIF -! -! *** Return point; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KMTAB',1,ZHOOK_HANDLE) - ENDSUBROUTINE KMTAB - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KM198 -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! THE COMPUTATIONS HAVE BEEN PERFORMED AND THE RESULTS ARE STORED IN -! LOOKUP TABLES. THE IONIC ACTIVITY 'IN' IS INPUT, AND THE ARRAY -! 'BINARR' IS RETURNED WITH THE BINARY COEFFICIENTS. -! -! TEMPERATURE IS 198K -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KM198 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10, & - & G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INTEGER :: IPOS - REAL :: IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M -! -! *** Common block definition -! - COMMON /KMC198/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! REAL IN -! -! *** Find position in arrays for bincoef -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KM198',0,ZHOOK_HANDLE) - IF (IN.LE. 0.300000E+02) THEN - ipos = NINT( 0.200000E+02*IN) + 1 - ELSE - ipos = 600+NINT( 0.200000E+01*IN- 0.300000E+02) - ENDIF - ipos = min(ipos, 741) -! -! *** Assign values to return array -! - G01 = BNC01M(ipos) - G02 = BNC02M(ipos) - G03 = BNC03M(ipos) - G04 = BNC04M(ipos) - G05 = BNC05M(ipos) - G06 = BNC06M(ipos) - G07 = BNC07M(ipos) - G08 = BNC08M(ipos) - G09 = BNC09M(ipos) - G10 = BNC10M(ipos) - G11 = BNC11M(ipos) - G12 = BNC12M(ipos) -! -! *** Return point ; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KM198',1,ZHOOK_HANDLE) - ENDSUBROUTINE KM198 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KM223 -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! THE COMPUTATIONS HAVE BEEN PERFORMED AND THE RESULTS ARE STORED IN -! LOOKUP TABLES. THE IONIC ACTIVITY 'IN' IS INPUT, AND THE ARRAY -! 'BINARR' IS RETURNED WITH THE BINARY COEFFICIENTS. -! -! TEMPERATURE IS 223K -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KM223 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10, & - & G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! - REAL :: IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 -! -! *** Common block definition -! - INTEGER :: IPOS - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M - COMMON /KMC223/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! REAL IN -! -! *** Find position in arrays for bincoef -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KM223',0,ZHOOK_HANDLE) - IF (IN.LE. 0.300000E+02) THEN - ipos = NINT( 0.200000E+02*IN) + 1 - ELSE - ipos = 600+NINT( 0.200000E+01*IN- 0.300000E+02) - ENDIF - ipos = min(ipos, 741) -! -! *** Assign values to return array -! - G01 = BNC01M(ipos) - G02 = BNC02M(ipos) - G03 = BNC03M(ipos) - G04 = BNC04M(ipos) - G05 = BNC05M(ipos) - G06 = BNC06M(ipos) - G07 = BNC07M(ipos) - G08 = BNC08M(ipos) - G09 = BNC09M(ipos) - G10 = BNC10M(ipos) - G11 = BNC11M(ipos) - G12 = BNC12M(ipos) -! -! *** Return point ; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KM223',1,ZHOOK_HANDLE) - ENDSUBROUTINE KM223 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KM248 -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! THE COMPUTATIONS HAVE BEEN PERFORMED AND THE RESULTS ARE STORED IN -! LOOKUP TABLES. THE IONIC ACTIVITY 'IN' IS INPUT, AND THE ARRAY -! 'BINARR' IS RETURNED WITH THE BINARY COEFFICIENTS. -! -! TEMPERATURE IS 248K -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KM248 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10, & - & G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! - INTEGER :: IPOS - REAL :: IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 -! -! *** Common block definition -! - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M - COMMON /KMC248/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! REAL IN -! -! *** Find position in arrays for bincoef -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KM248',0,ZHOOK_HANDLE) - IF (IN.LE. 0.300000E+02) THEN - ipos = NINT( 0.200000E+02*IN) + 1 - ELSE - ipos = 600+NINT( 0.200000E+01*IN- 0.300000E+02) - ENDIF - ipos = min(ipos, 741) -! -! *** Assign values to return array -! - G01 = BNC01M(ipos) - G02 = BNC02M(ipos) - G03 = BNC03M(ipos) - G04 = BNC04M(ipos) - G05 = BNC05M(ipos) - G06 = BNC06M(ipos) - G07 = BNC07M(ipos) - G08 = BNC08M(ipos) - G09 = BNC09M(ipos) - G10 = BNC10M(ipos) - G11 = BNC11M(ipos) - G12 = BNC12M(ipos) -! -! *** Return point ; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KM248',1,ZHOOK_HANDLE) - ENDSUBROUTINE KM248 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KMTAB273 -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! THE COMPUTATIONS HAVE BEEN PERFORMED AND THE RESULTS ARE STORED IN -! LOOKUP TABLES. THE IONIC ACTIVITY 'IN' IS INPUT, AND THE ARRAY -! 'BINARR' IS RETURNED WITH THE BINARY COEFFICIENTS. -! -! TEMPERATURE IS 273K -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KM273 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10, & - & G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! - INTEGER :: IPOS - REAL :: IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 -! -! *** Common block definition -! - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M - COMMON /KMC273/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! REAL IN -! -! *** Find position in arrays for bincoef -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KM273',0,ZHOOK_HANDLE) - IF (IN.LE. 0.300000E+02) THEN - ipos = NINT( 0.200000E+02*IN) + 1 - ELSE - ipos = 600+NINT( 0.200000E+01*IN- 0.300000E+02) - ENDIF - ipos = min(ipos, 741) -! -! *** Assign values to return array -! - G01 = BNC01M(ipos) - G02 = BNC02M(ipos) - G03 = BNC03M(ipos) - G04 = BNC04M(ipos) - G05 = BNC05M(ipos) - G06 = BNC06M(ipos) - G07 = BNC07M(ipos) - G08 = BNC08M(ipos) - G09 = BNC09M(ipos) - G10 = BNC10M(ipos) - G11 = BNC11M(ipos) - G12 = BNC12M(ipos) -! -! *** Return point ; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KM273',1,ZHOOK_HANDLE) - ENDSUBROUTINE KM273 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KM298 -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! THE COMPUTATIONS HAVE BEEN PERFORMED AND THE RESULTS ARE STORED IN -! LOOKUP TABLES. THE IONIC ACTIVITY 'IN' IS INPUT, AND THE ARRAY -! 'BINARR' IS RETURNED WITH THE BINARY COEFFICIENTS. -! -! TEMPERATURE IS 298K -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KM298 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10, & - & G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! - INTEGER :: IPOS - REAL :: IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 -! -! *** Common block definition -! - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M - COMMON /KMC298/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! REAL IN -! -! *** Find position in arrays for bincoef -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KM298',0,ZHOOK_HANDLE) - IF (IN.LE. 0.300000E+02) THEN - ipos = NINT( 0.200000E+02*IN) + 1 - ELSE - ipos = 600+NINT( 0.200000E+01*IN- 0.300000E+02) - ENDIF - ipos = min(ipos, 741) -! -! *** Assign values to return array -! - G01 = BNC01M(ipos) - G02 = BNC02M(ipos) - G03 = BNC03M(ipos) - G04 = BNC04M(ipos) - G05 = BNC05M(ipos) - G06 = BNC06M(ipos) - G07 = BNC07M(ipos) - G08 = BNC08M(ipos) - G09 = BNC09M(ipos) - G10 = BNC10M(ipos) - G11 = BNC11M(ipos) - G12 = BNC12M(ipos) -! -! *** Return point ; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KM298',1,ZHOOK_HANDLE) - ENDSUBROUTINE KM298 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE KM323 -! *** CALCULATES BINARY ACTIVITY COEFFICIENTS BY KUSIK-MEISSNER METHOD. -! THE COMPUTATIONS HAVE BEEN PERFORMED AND THE RESULTS ARE STORED IN -! LOOKUP TABLES. THE IONIC ACTIVITY 'IN' IS INPUT, AND THE ARRAY -! 'BINARR' IS RETURNED WITH THE BINARY COEFFICIENTS. -! -! TEMPERATURE IS 323K -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE KM323 (IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10, & - & G11,G12) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! - INTEGER :: IPOS - REAL :: IN,G01,G02,G03,G04,G05,G06,G07,G08,G09,G10,G11,G12 -! -! *** Common block definition -! - REAL :: BNC01M,BNC02M,BNC03M,BNC04M,BNC05M,BNC06M,BNC07M - REAL :: BNC08M,BNC09M,BNC10M,BNC11M,BNC12M,BNC13M - COMMON /KMC323/ & - &BNC01M( 741),BNC02M( 741),BNC03M( 741),BNC04M( 741), & - &BNC05M( 741),BNC06M( 741),BNC07M( 741),BNC08M( 741), & - &BNC09M( 741),BNC10M( 741),BNC11M( 741),BNC12M( 741), & - &BNC13M( 741) -! REAL IN -! -! *** Find position in arrays for bincoef -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('KM323',0,ZHOOK_HANDLE) - IF (IN.LE. 0.300000E+02) THEN - ipos = NINT( 0.200000E+02*IN) + 1 - ELSE - ipos = 600+NINT( 0.200000E+01*IN- 0.300000E+02) - ENDIF - ipos = min(ipos, 741) -! -! *** Assign values to return array -! - G01 = BNC01M(ipos) - G02 = BNC02M(ipos) - G03 = BNC03M(ipos) - G04 = BNC04M(ipos) - G05 = BNC05M(ipos) - G06 = BNC06M(ipos) - G07 = BNC07M(ipos) - G08 = BNC08M(ipos) - G09 = BNC09M(ipos) - G10 = BNC10M(ipos) - G11 = BNC11M(ipos) - G12 = BNC12M(ipos) -! -! *** Return point ; End of subroutine -! - IF (LHOOK) CALL DR_HOOK('KM323',1,ZHOOK_HANDLE) - ENDSUBROUTINE KM323 - -!C************************************************************************* -!C -!C TOOLBOX LIBRARY v.1.0 (May 1995) -!C -!C Program unit : SUBROUTINE CHRBLN -!C Purpose : Position of last non-blank character in a string -!C Author : Athanasios Nenes -!C -!C ======================= ARGUMENTS / USAGE ============================= -!C -!C STR is the CHARACTER variable containing the string examined -!C IBLK is a INTEGER variable containing the position of last non -!C blank character. If string is all spaces (ie ' '), then -!C the value returned is 1. -!C -!C EXAMPLE: -!C STR = 'TEST1.DAT ' -!C CALL CHRBLN (STR, IBLK) -!C -!C after execution of this code segment, "IBLK" has the value "9", which -!C is the position of the last non-blank character of "STR". -!C -!C*********************************************************************** -!C - SUBROUTINE CHRBLN (STR, IBLK) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -!C -!C*********************************************************************** - INTEGER :: IBLK - INTEGER ::I,ILEN - CHARACTER*(*) STR -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CHRBLN',0,ZHOOK_HANDLE) - IBLK = 1 ! Substring pointer (default=1) - ILEN = LEN(STR) ! Length of string - DO 10 i=ILEN,1,-1 - IF (STR(i:i).NE.' ' .AND. STR(i:i).NE.CHAR(0)) THEN - IBLK = i - IF (LHOOK) CALL DR_HOOK('CHRBLN',1,ZHOOK_HANDLE) - RETURN - ENDIF -10 CONTINUE - IF (LHOOK) CALL DR_HOOK('CHRBLN',1,ZHOOK_HANDLE) -! - ENDSUBROUTINE CHRBLN - - - - -!C************************************************************************* -!C -!C TOOLBOX LIBRARY v.1.0 (May 1995) -!C -!C Program unit : SUBROUTINE SHFTRGHT -!C Purpose : RIGHT-JUSTIFICATION FUNCTION ON A STRING -!C Author : Athanasios Nenes -!C -!C ======================= ARGUMENTS / USAGE ============================= -!C -!C STRING is the CHARACTER variable with the string to be justified -!C -!C EXAMPLE: -!C STRING = 'AAAA ' -!C CALL SHFTRGHT (STRING) -!C -!C after execution of this code segment, STRING contains the value -!C ' AAAA'. -!C -!C************************************************************************* -!C - SUBROUTINE SHFTRGHT (CHR) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -!C -!C*********************************************************************** - INTEGER :: I,I1,I2 - CHARACTER CHR*(*) -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SHFTRGHT',0,ZHOOK_HANDLE) - I1 = LEN(CHR) ! Total length of string - CALL CHRBLN(CHR,I2) ! Position of last non-blank character - IF (I2.EQ.I1) THEN - IF (LHOOK) CALL DR_HOOK('SHFTRGHT',1,ZHOOK_HANDLE) - RETURN - ENDIF -! - DO 10 I=I2,1,-1 ! Shift characters - CHR(I1+I-I2:I1+I-I2) = CHR(I:I) - CHR(I:I) = ' ' -10 CONTINUE - IF (LHOOK) CALL DR_HOOK('SHFTRGHT',1,ZHOOK_HANDLE) -! - ENDSUBROUTINE SHFTRGHT - - - - -!C************************************************************************* -!C -!C TOOLBOX LIBRARY v.1.0 (May 1995) -!C -!C Program unit : SUBROUTINE RPLSTR -!C Purpose : REPLACE CHARACTERS OCCURING IN A STRING -!C Author : Athanasios Nenes -!C -!C ======================= ARGUMENTS / USAGE ============================= -!C -!C STRING is the CHARACTER variable with the string to be edited -!C OLD is the old character which is to be replaced -!C NEW is the new character which OLD is to be replaced with -!C IERR is 0 if everything went well, is 1 if 'NEW' contains 'OLD'. -!C In this case, this is invalid, and no change is done. -!C -!C EXAMPLE: -!C STRING = 'AAAA' -!C OLD = 'A' -!C NEW = 'B' -!C CALL RPLSTR (STRING, OLD, NEW) -!C -!C after execution of this code segment, STRING contains the value -!C 'BBBB'. -!C -!C************************************************************************* -!C - SUBROUTINE RPLSTR (STRING, OLD, NEW, IERR) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -!C -!C*********************************************************************** - INTEGER :: IERR - INTEGER :: IP,ILO - CHARACTER STRING*(*), OLD*(*), NEW*(*) -! -! *** INITIALIZE ******************************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RPLSTR',0,ZHOOK_HANDLE) - ILO = LEN(OLD) -! -! *** CHECK AND SEE IF 'NEW' CONTAINS 'OLD', WHICH CANNOT *************** -! - IP = INDEX(NEW,OLD) - IF (IP.NE.0) THEN - IERR = 1 - IF (LHOOK) CALL DR_HOOK('RPLSTR',1,ZHOOK_HANDLE) - RETURN - ELSE - IERR = 0 - ENDIF -! -! *** PROCEED WITH REPLACING ******************************************* -! -10 IP = INDEX(STRING,OLD) ! SEE IF 'OLD' EXISTS IN 'STRING' - IF (IP.EQ.0) THEN ! 'OLD' DOES NOT EXIST ; RETURN - IF (LHOOK) CALL DR_HOOK('RPLSTR',1,ZHOOK_HANDLE) - RETURN - ENDIF - STRING(IP:IP+ILO-1) = NEW ! REPLACE SUBSTRING 'OLD' WITH 'NEW' - GOTO 10 ! GO FOR NEW OCCURANCE OF 'OLD' -! - IF (LHOOK) CALL DR_HOOK('RPLSTR',1,ZHOOK_HANDLE) - ENDSUBROUTINE RPLSTR - - -!C************************************************************************* -!C -!C TOOLBOX LIBRARY v.1.0 (May 1995) -!C -!C Program unit : SUBROUTINE INPTD -!C Purpose : Prompts user for a value (DOUBLE). A default value -!C is provided, so if user presses <Enter>, the default -!C is used. -!C Author : Athanasios Nenes -!C -!C ======================= ARGUMENTS / USAGE ============================= -!C -!C VAR is the DOUBLE PRECISION variable which value is to be saved -!C DEF is a DOUBLE PRECISION variable, with the default value of VAR. -!C PROMPT is a CHARACTER varible containing the prompt string. -!C PRFMT is a CHARACTER variable containing the FORMAT specifier -!C for the default value DEF. -!C IERR is an INTEGER error flag, and has the values: -!C 0 - No error detected. -!C 1 - Invalid FORMAT and/or Invalid default value. -!C 2 - Bad value specified by user -!C -!C EXAMPLE: -!C CALL INPTD (VAR, 1.0D0, 'Give value for A ', '*', Ierr) -!C -!C after execution of this code segment, the user is prompted for the -!C value of variable VAR. If <Enter> is pressed (ie no value is specified) -!C then 1.0 is assigned to VAR. The default value is displayed in free- -!C format. The error status is specified by variable Ierr -!C -!C*********************************************************************** -!C - SUBROUTINE INPTD (VAR, DEF, PROMPT, PRFMT, IERR) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -!C -!C*********************************************************************** - INTEGER :: IEND - CHARACTER PROMPT*(*), PRFMT*(*), BUFFER*128 - REAL(KIND=8) :: DEF, VAR - INTEGER IERR -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('INPTD',0,ZHOOK_HANDLE) - IERR = 0 -! -! *** WRITE DEFAULT VALUE TO WORK BUFFER ******************************* -! - WRITE (BUFFER, FMT=PRFMT, ERR=10) DEF - CALL CHRBLN (BUFFER, IEND) -! -! *** PROMPT USER FOR INPUT AND READ IT ******************************** -! - WRITE (*,*) PROMPT,' [',BUFFER(1:IEND),']: ' - READ (*, '(A)', ERR=20, END=20) BUFFER - CALL CHRBLN (BUFFER,IEND) -! -! *** READ DATA OR SET DEFAULT ? **************************************** -! - IF (IEND.EQ.1 .AND. BUFFER(1:1).EQ.' ') THEN - VAR = DEF - ELSE - READ (BUFFER, *, ERR=20, END=20) VAR - ENDIF -! -! *** RETURN POINT ****************************************************** -! -30 CONTINUE - IF (LHOOK) CALL DR_HOOK('INPTD',1,ZHOOK_HANDLE) - RETURN -! -! *** ERROR HANDLER ***************************************************** -! -10 IERR = 1 ! Bad FORMAT and/or bad default value - GOTO 30 -! -20 IERR = 2 ! Bad number given by user - GOTO 30 -! - IF (LHOOK) CALL DR_HOOK('INPTD',1,ZHOOK_HANDLE) - ENDSUBROUTINE INPTD - - -!C************************************************************************* -!C -!C TOOLBOX LIBRARY v.1.0 (May 1995) -!C -!C Program unit : SUBROUTINE Pushend -!C Purpose : Positions the pointer of a sequential file at its end -!C Simulates the ACCESS='APPEND' clause of a F77L OPEN -!C statement with Standard Fortran commands. -!C -!C ======================= ARGUMENTS / USAGE ============================= -!C -!C Iunit is a INTEGER variable, the file unit which the file is -!C connected to. -!C -!C EXAMPLE: -!C CALL PUSHEND (10) -!C -!C after execution of this code segment, the pointer of unit 10 is -!C pushed to its end. -!C -!C*********************************************************************** -!C - SUBROUTINE Pushend (Iunit) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -!C -!C*********************************************************************** -! - INTEGER :: IUNIT - LOGICAL OPNED -! -! *** INQUIRE IF Iunit CONNECTED TO FILE ******************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('PUSHEND',0,ZHOOK_HANDLE) - INQUIRE (UNIT=Iunit, OPENED=OPNED) - IF (.NOT.OPNED) GOTO 25 -! -! *** Iunit CONNECTED, PUSH POINTER TO END ****************************** -! -10 READ (Iunit,'()', ERR=20, END=20) - GOTO 10 -! -! *** RETURN POINT ****************************************************** -! -20 BACKSPACE (Iunit) -25 CONTINUE - IF (LHOOK) CALL DR_HOOK('PUSHEND',1,ZHOOK_HANDLE) - ENDSUBROUTINE PUSHEND - - - -!C************************************************************************* -!C -!C TOOLBOX LIBRARY v.1.0 (May 1995) -!C -!C Program unit : SUBROUTINE APPENDEXT -!C Purpose : Fix extension in file name string -!C -!C ======================= ARGUMENTS / USAGE ============================= -!C -!C Filename is the CHARACTER variable with the file name -!C Defext is the CHARACTER variable with extension (including '.', -!C ex. '.DAT') -!C Overwrite is a LOGICAL value, .TRUE. overwrites any existing extension -!C in "Filename" with "Defext", .FALSE. puts "Defext" only if -!C there is no extension in "Filename". -!C -!C EXAMPLE: -!C FILENAME1 = 'TEST.DAT' -!C FILENAME2 = 'TEST.DAT' -!C CALL APPENDEXT (FILENAME1, '.TXT', .FALSE.) -!C CALL APPENDEXT (FILENAME2, '.TXT', .TRUE. ) -!C -!C after execution of this code segment, "FILENAME1" has the value -!C 'TEST.DAT', while "FILENAME2" has the value 'TEST.TXT' -!C -!C*********************************************************************** -!C - SUBROUTINE Appendext (Filename, Defext, Overwrite) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -!C -!C*********************************************************************** - INTEGER :: IDOT,IEND - CHARACTER*(*) Filename, Defext - LOGICAL Overwrite -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('APPENDEXT',0,ZHOOK_HANDLE) - CALL CHRBLN (Filename, Iend) - IF (Filename(1:1).EQ.' ' .AND. Iend.EQ.1) THEN ! Filename empty - IF (LHOOK) CALL DR_HOOK('APPENDEXT',1,ZHOOK_HANDLE) - RETURN - ENDIF - Idot = INDEX (Filename, '.') ! Append extension ? - IF (Idot.EQ.0) Filename = Filename(1:Iend)//Defext - IF (Overwrite .AND. Idot.NE.0) & - & Filename = Filename(:Idot-1)//Defext - IF (LHOOK) CALL DR_HOOK('APPENDEXT',1,ZHOOK_HANDLE) - ENDSUBROUTINE APPENDEXT - - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE POLY3 -! *** FINDS THE REAL ROOTS OF THE THIRD ORDER ALGEBRAIC EQUATION: -! X**3 + A1*X**2 + A2*X + A3 = 0.0 -! THE EQUATION IS SOLVED ANALYTICALLY. -! -! PARAMETERS A1, A2, A3 ARE SPECIFIED BY THE USER. THE MINIMUM -! NONEGATIVE ROOT IS RETURNED IN VARIABLE 'ROOT'. IF NO ROOT IS -! FOUND (WHICH IS GREATER THAN ZERO), ROOT HAS THE VALUE 1D30. -! AND THE FLAG ISLV HAS A VALUE GREATER THAN ZERO. -! -! SOLUTION FORMULA IS FOUND IN PAGE 32 OF: -! MATHEMATICAL HANDBOOK OF FORMULAS AND TABLES -! SCHAUM'S OUTLINE SERIES -! MURRAY SPIEGER, McGRAW-HILL, NEW YORK, 1968 -! (GREEK TRANSLATION: BY SOTIRIOS PERSIDES, ESPI, ATHENS, 1976) -! -! A SPECIAL CASE IS CONSIDERED SEPERATELY ; WHEN A3 = 0, THEN -! ONE ROOT IS X=0.0, AND THE OTHER TWO FROM THE SOLUTION OF THE -! QUADRATIC EQUATION X**2 + A1*X + A2 = 0.0 -! THIS SPECIAL CASE IS CONSIDERED BECAUSE THE ANALYTICAL FORMULA -! DOES NOT YIELD ACCURATE RESULTS (DUE TO NUMERICAL ROUNDOFF ERRORS) -! -! *** COPYRIGHT 1996-98, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE POLY3 (A1, A2, A3, ROOT, ISLV) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! -! IMPLICIT DOUBLE PRECISION (A-H, O-Z) - REAL(KIND=8) :: A1,A2,A3,ROOT,COEF,D,SQD,Q,R,S,SSIG,T,THET,TSIG - INTEGER :: ISLV,IX,I - REAL(KIND=8) :: EXPON,ZERO,THET1,THET2,PI,EPS - PARAMETER (EXPON=1.D0/3.D0, ZERO=0.D0, THET1=120.D0/180.D0, & - & THET2=240.D0/180.D0, PI=3.14159265358932, EPS=1D-50) - REAL(KIND=8) :: X(3) -! -! *** SPECIAL CASE : QUADRATIC*X EQUATION ***************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('POLY3',0,ZHOOK_HANDLE) - IF (ABS(A3).LE.EPS) THEN - ISLV = 1 - IX = 1 - X(1) = ZERO - D = A1*A1-4.D0*A2 - IF (D.GE.ZERO) THEN - IX = 3 - SQD = SQRT(D) - X(2) = 0.5*(-A1+SQD) - X(3) = 0.5*(-A1-SQD) - ENDIF - ELSE -! -! *** NORMAL CASE : CUBIC EQUATION ************************************ -! -! DEFINE PARAMETERS Q, R, S, T, D -! - ISLV= 1 - Q = (3.D0*A2 - A1*A1)/9.D0 - R = (9.D0*A1*A2 - 27.D0*A3 - 2.D0*A1*A1*A1)/54.D0 - D = Q*Q*Q + R*R -! -! *** CALCULATE ROOTS ************************************************* -! -! D < 0, THREE REAL ROOTS -! - IF (D.LT.-EPS) THEN ! D < -EPS : D < ZERO - IX = 3 - THET = EXPON*ACOS(R/SQRT(-Q*Q*Q)) - COEF = 2.D0*SQRT(-Q) - X(1) = COEF*COS(THET) - EXPON*A1 - X(2) = COEF*COS(THET + THET1*PI) - EXPON*A1 - X(3) = COEF*COS(THET + THET2*PI) - EXPON*A1 -! -! D = 0, THREE REAL (ONE DOUBLE) ROOTS -! - ELSE IF (D.LE.EPS) THEN ! -EPS <= D <= EPS : D = ZERO - IX = 2 - SSIG = SIGN (1._8, R) - S = SSIG*(ABS(R))**EXPON - X(1) = 2.D0*S - EXPON*A1 - X(2) = -S - EXPON*A1 -! -! D > 0, ONE REAL ROOT -! - ELSE ! D > EPS : D > ZERO - IX = 1 - SQD = SQRT(D) - SSIG = SIGN (1._8, R+SQD) ! TRANSFER SIGN TO SSIG - TSIG = SIGN (1._8, R-SQD) - S = SSIG*(ABS(R+SQD))**EXPON ! EXPONENTIATE ABS() - T = TSIG*(ABS(R-SQD))**EXPON - X(1) = S + T - EXPON*A1 - ENDIF - ENDIF -! -! *** SELECT APPROPRIATE ROOT ***************************************** -! - ROOT = 1.D30 - DO 10 I=1,IX - IF (X(I).GT.ZERO) THEN - ROOT = MIN (ROOT, X(I)) - ISLV = 0 - ENDIF -10 CONTINUE -! -! *** END OF SUBROUTINE POLY3 ***************************************** -! - IF (LHOOK) CALL DR_HOOK('POLY3',1,ZHOOK_HANDLE) - ENDSUBROUTINE POLY3 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE POLY3B -! *** FINDS A REAL ROOT OF THE THIRD ORDER ALGEBRAIC EQUATION: -! X**3 + A1*X**2 + A2*X + A3 = 0.0 -! THE EQUATION IS SOLVED NUMERICALLY (BISECTION). -! -! PARAMETERS A1, A2, A3 ARE SPECIFIED BY THE USER. THE MINIMUM -! NONEGATIVE ROOT IS RETURNED IN VARIABLE 'ROOT'. IF NO ROOT IS -! FOUND (WHICH IS GREATER THAN ZERO), ROOT HAS THE VALUE 1D30. -! AND THE FLAG ISLV HAS A VALUE GREATER THAN ZERO. -! -! RTLW, RTHI DEFINE THE INTERVAL WHICH THE ROOT IS LOOKED FOR. -! -!======================================================================= -! - SUBROUTINE POLY3B (A1, A2, A3, RTLW, RTHI, ROOT, ISLV) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE -! -! IMPLICIT DOUBLE PRECISION (A-H, O-Z) - REAL(KIND=8) :: A1,A2,A3,RTLW,RTHI,ROOT - INTEGER :: ISLV - REAL(KIND=8) :: DX,X1,X2,X3,Y1,Y2,Y3,X,FUNC - INTEGER :: I - REAL(KIND=8) :: ZERO,EPS - INTEGER :: MAXIT,NDIV - PARAMETER (ZERO=0.D0, EPS=1D-15, MAXIT=100, NDIV=5) -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - FUNC(X) = X**3.d0 + A1*X**2.0 + A2*X + A3 - IF (LHOOK) CALL DR_HOOK('POLY3B',0,ZHOOK_HANDLE) -! -! *** INITIAL VALUES FOR BISECTION ************************************* -! - X1 = RTLW - Y1 = FUNC(X1) - IF (ABS(Y1).LE.EPS) THEN ! Is low a root? - ROOT = RTLW - GOTO 50 - ENDIF -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO *********************** -! - DX = (RTHI-RTLW)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNC (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2) .LT. ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION FOUND -! - IF (ABS(Y2) .LT. EPS) THEN ! X2 is a root - ROOT = X2 - ELSE - ROOT = 1.d30 - ISLV = 1 - ENDIF - GOTO 50 -! -! *** BISECTION ******************************************************* -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNC (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE -! -! *** CONVERGED ; RETURN *********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNC (X3) - ROOT = X3 - ISLV = 0 -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('POLY3B',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE POLY3B ***************************************** -! - ENDSUBROUTINE POLY3B - - - -!cc PROGRAM DRIVER -!cc DOUBLE PRECISION ROOT -!ccC -!cc CALL POLY3 (-1.d0, 1.d0, -1.d0, ROOT, ISLV) -!cc IF (ISLV.NE.0) STOP 'Error in POLY3' -!cc WRITE (*,*) 'Root=', ROOT -!ccC -!cc CALL POLY3B (-1.d0, 1.d0, -1.d0, -10.d0, 10.d0, ROOT, ISLV) -!cc IF (ISLV.NE.0) STOP 'Error in POLY3B' -!cc WRITE (*,*) 'Root=', ROOT -!ccC -!cc END -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION EX10 -! *** 10^X FUNCTION ; ALTERNATE OF LIBRARY ROUTINE ; USED BECAUSE IT IS -! MUCH FASTER BUT WITHOUT GREAT LOSS IN ACCURACY. , -! MAXIMUM ERROR IS 2%, EXECUTION TIME IS 42% OF THE LIBRARY ROUTINE -! (ON A 80286/80287 MACHINE, using Lahey FORTRAN 77 v.3.0). -! -! EXPONENT RANGE IS BETWEEN -K AND K (K IS THE REAL ARGUMENT 'K') -! MAX VALUE FOR K: 9.999 -! IF X < -K, X IS SET TO -K, IF X > K, X IS SET TO K -! -! THE EXPONENT IS CALCULATED BY THE PRODUCT ADEC*AINT, WHERE ADEC -! IS THE MANTISSA AND AINT IS THE MAGNITUDE (EXPONENT). BOTH -! MANTISSA AND MAGNITUDE ARE PRE-CALCULATED AND STORED IN LOOKUP -! TABLES ; THIS LEADS TO THE INCREASED SPEED. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION EX10(X,K) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - REAL X, EX10, Y, AINT10, ADEC10, K - INTEGER K1, K2 - COMMON /EXPNC/ AINT10(20), ADEC10(200) -! -! *** LIMIT X TO [-K, K] RANGE ***************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('EX10',0,ZHOOK_HANDLE) - Y = MAX(-K, MIN(X,K)) ! MIN: -9.999, MAX: 9.999 -! -! *** GET INTEGER AND DECIMAL PART ************************************* -! - K1 = INT(Y) - K2 = INT(100*(Y-K1)) -! -! *** CALCULATE EXP FUNCTION ******************************************* -! - EX10 = AINT10(K1+10)*ADEC10(K2+100) -! -! *** END OF EXP FUNCTION ********************************************** -! - IF (LHOOK) CALL DR_HOOK('EX10',1,ZHOOK_HANDLE) - ENDFUNCTION EX10 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** BLOCK DATA EXPON -! *** CONTAINS DATA FOR EXPONENT ARRAYS NEEDED IN FUNCTION EXP10 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - BLOCK DATA EXPON - IMPLICIT NONE -! -! *** Common block definition -! - INTEGER :: I - REAL AINT10, ADEC10 - COMMON /EXPNC/ AINT10(20), ADEC10(200) -! -! *** Integer part -! - DATA AINT10/ & - & 0.1000E-08, 0.1000E-07, 0.1000E-06, 0.1000E-05, 0.1000E-04, & - & 0.1000E-03, 0.1000E-02, 0.1000E-01, 0.1000E+00, 0.1000E+01, & - & 0.1000E+02, 0.1000E+03, 0.1000E+04, 0.1000E+05, 0.1000E+06, & - & 0.1000E+07, 0.1000E+08, 0.1000E+09, 0.1000E+10, 0.1000E+11 & - & / -! -! *** decimal part -! - DATA (ADEC10(I),I=1,100)/ & - & 0.1023E+00, 0.1047E+00, 0.1072E+00, 0.1096E+00, 0.1122E+00, & - & 0.1148E+00, 0.1175E+00, 0.1202E+00, 0.1230E+00, 0.1259E+00, & - & 0.1288E+00, 0.1318E+00, 0.1349E+00, 0.1380E+00, 0.1413E+00, & - & 0.1445E+00, 0.1479E+00, 0.1514E+00, 0.1549E+00, 0.1585E+00, & - & 0.1622E+00, 0.1660E+00, 0.1698E+00, 0.1738E+00, 0.1778E+00, & - & 0.1820E+00, 0.1862E+00, 0.1905E+00, 0.1950E+00, 0.1995E+00, & - & 0.2042E+00, 0.2089E+00, 0.2138E+00, 0.2188E+00, 0.2239E+00, & - & 0.2291E+00, 0.2344E+00, 0.2399E+00, 0.2455E+00, 0.2512E+00, & - & 0.2570E+00, 0.2630E+00, 0.2692E+00, 0.2754E+00, 0.2818E+00, & - & 0.2884E+00, 0.2951E+00, 0.3020E+00, 0.3090E+00, 0.3162E+00, & - & 0.3236E+00, 0.3311E+00, 0.3388E+00, 0.3467E+00, 0.3548E+00, & - & 0.3631E+00, 0.3715E+00, 0.3802E+00, 0.3890E+00, 0.3981E+00, & - & 0.4074E+00, 0.4169E+00, 0.4266E+00, 0.4365E+00, 0.4467E+00, & - & 0.4571E+00, 0.4677E+00, 0.4786E+00, 0.4898E+00, 0.5012E+00, & - & 0.5129E+00, 0.5248E+00, 0.5370E+00, 0.5495E+00, 0.5623E+00, & - & 0.5754E+00, 0.5888E+00, 0.6026E+00, 0.6166E+00, 0.6310E+00, & - & 0.6457E+00, 0.6607E+00, 0.6761E+00, 0.6918E+00, 0.7079E+00, & - & 0.7244E+00, 0.7413E+00, 0.7586E+00, 0.7762E+00, 0.7943E+00, & - & 0.8128E+00, 0.8318E+00, 0.8511E+00, 0.8710E+00, 0.8913E+00, & - & 0.9120E+00, 0.9333E+00, 0.9550E+00, 0.9772E+00, 0.1000E+01/ - - DATA (ADEC10(I),I=101,200)/ & - & 0.1023E+01, 0.1047E+01, 0.1072E+01, 0.1096E+01, 0.1122E+01, & - & 0.1148E+01, 0.1175E+01, 0.1202E+01, 0.1230E+01, 0.1259E+01, & - & 0.1288E+01, 0.1318E+01, 0.1349E+01, 0.1380E+01, 0.1413E+01, & - & 0.1445E+01, 0.1479E+01, 0.1514E+01, 0.1549E+01, 0.1585E+01, & - & 0.1622E+01, 0.1660E+01, 0.1698E+01, 0.1738E+01, 0.1778E+01, & - & 0.1820E+01, 0.1862E+01, 0.1905E+01, 0.1950E+01, 0.1995E+01, & - & 0.2042E+01, 0.2089E+01, 0.2138E+01, 0.2188E+01, 0.2239E+01, & - & 0.2291E+01, 0.2344E+01, 0.2399E+01, 0.2455E+01, 0.2512E+01, & - & 0.2570E+01, 0.2630E+01, 0.2692E+01, 0.2754E+01, 0.2818E+01, & - & 0.2884E+01, 0.2951E+01, 0.3020E+01, 0.3090E+01, 0.3162E+01, & - & 0.3236E+01, 0.3311E+01, 0.3388E+01, 0.3467E+01, 0.3548E+01, & - & 0.3631E+01, 0.3715E+01, 0.3802E+01, 0.3890E+01, 0.3981E+01, & - & 0.4074E+01, 0.4169E+01, 0.4266E+01, 0.4365E+01, 0.4467E+01, & - & 0.4571E+01, 0.4677E+01, 0.4786E+01, 0.4898E+01, 0.5012E+01, & - & 0.5129E+01, 0.5248E+01, 0.5370E+01, 0.5495E+01, 0.5623E+01, & - & 0.5754E+01, 0.5888E+01, 0.6026E+01, 0.6166E+01, 0.6310E+01, & - & 0.6457E+01, 0.6607E+01, 0.6761E+01, 0.6918E+01, 0.7079E+01, & - & 0.7244E+01, 0.7413E+01, 0.7586E+01, 0.7762E+01, 0.7943E+01, & - & 0.8128E+01, 0.8318E+01, 0.8511E+01, 0.8710E+01, 0.8913E+01, & - & 0.9120E+01, 0.9333E+01, 0.9550E+01, 0.9772E+01, 0.1000E+02 & - & / -! -! *** END OF BLOCK DATA EXPON ****************************************** -! - ENDBLOCKDATA EXPON -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISOPLUS -! *** THIS SUBROUTINE IS THE MASTER ROUTINE FOR THE ISORROPIA-PLUS -! THERMODYNAMIC EQUILIBRIUM AEROSOL MODEL (VERSION 1.0) -! -! *** NOTE: THIS SUBROUTINE IS INCLUDED FOR BACKWARD COMPATABILITY ONLY. -! A PROGRAMMER SHOULD USE THE MORE COMPLETE SUBROUTINE ISOROPIA INSTEAD -! -! ======================== ARGUMENTS / USAGE =========================== -! -! INPUT: -! 1. [WI] -! DOUBLE PRECISION array of length [5]. -! Concentrations, expressed in moles/m3. Depending on the type of -! problem solved, WI contains either GAS+AEROSOL or AEROSOL only -! concentratios. -! WI(1) - sodium -! WI(2) - sulfate -! WI(3) - ammonium -! WI(4) - nitrate -! WI(5) - chloride -! -! 2. [RHI] -! DOUBLE PRECISION variable. -! Ambient relative humidity expressed in a (0,1) scale. -! -! 3. [TEMPI] -! DOUBLE PRECISION variable. -! Ambient temperature expressed in Kelvins. -! -! 4. [IPROB] -! INTEGER variable. -! The type of problem solved. -! IPROB = 0 - Forward problem is solved. In this case, array WI -! contains GAS and AEROSOL concentrations together. -! IPROB = 1 - Reverse problem is solved. In this case, array WI -! contains AEROSOL concentrations only. -! -! OUTPUT: -! 1. [GAS] -! DOUBLE PRECISION array of length [03]. -! Gaseous species concentrations, expressed in moles/m3. -! GAS(1) - NH3 -! GAS(2) - HNO3 -! GAS(3) - HCl -! -! 2. [AERLIQ] -! DOUBLE PRECISION array of length [11]. -! Liquid aerosol species concentrations, expressed in moles/m3. -! AERLIQ(01) - H+(aq) -! AERLIQ(02) - Na+(aq) -! AERLIQ(03) - NH4+(aq) -! AERLIQ(04) - Cl-(aq) -! AERLIQ(05) - SO4--(aq) -! AERLIQ(06) - HSO4-(aq) -! AERLIQ(07) - NO3-(aq) -! AERLIQ(08) - H2O -! AERLIQ(09) - NH3(aq) (undissociated) -! AERLIQ(10) - HNCl(aq) (undissociated) -! AERLIQ(11) - HNO3(aq) (undissociated) -! -! 3. [AERSLD] -! DOUBLE PRECISION array of length [09]. -! Solid aerosol species concentrations, expressed in moles/m3. -! AERSLD(01) - NaNO3(s) -! AERSLD(02) - NH4NO3(s) -! AERSLD(03) - NaCl(s) -! AERSLD(04) - NH4Cl(s) -! AERSLD(05) - Na2SO4(s) -! AERSLD(06) - (NH4)2SO4(s) -! AERSLD(07) - NaHSO4(s) -! AERSLD(08) - NH4HSO4(s) -! AERSLD(09) - (NH4)4H(SO4)2(s) -! -! 4. [DRY] -! LOGICAL variable. -! Contains information about the physical state of the system. -! .TRUE. - There is no aqueous phase present -! .FALSE.- There is an aqueous phase present -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISOPLUS (WI, RHI, TEMPI, IPROBI, & - & GAS, AERLIQ, AERSLD, DRYI ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI,GAS,AERLIQ,AERSLD,DRVI - INTEGER :: IPROBI - INTEGER :: I - DIMENSION WI(NCOMP), GAS(NGASAQ), AERLIQ(NIONS+NGASAQ+1), & - & AERSLD(NSLDS) - LOGICAL DRYI -! -! *** PROBLEM TYPE (0=FOREWARD, 1=REVERSE) ****************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISOPLUS',0,ZHOOK_HANDLE) - IPROB = IPROBI -! -! *** SOLVE FOREWARD PROBLEM ******************************************** -! - IF (IPROB.EQ.0) THEN - IF (WI(1)+WI(2)+WI(3)+WI(4)+WI(5) .LE. TINY) THEN ! Everything=0 - CALL INIT1 (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(4)+WI(5) .LE. TINY) THEN ! Na,Cl,NO3=0 - CALL ISRP1F (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(5) .LE. TINY) THEN ! Na,Cl=0 - CALL ISRP2F (WI, RHI, TEMPI) - ELSE - CALL ISRP3F (WI, RHI, TEMPI) - ENDIF -! -! *** SOLVE REVERSE PROBLEM ********************************************* -! - ELSE - IF (WI(1)+WI(2)+WI(3)+WI(4)+WI(5) .LE. TINY) THEN ! Everything=0 - CALL INIT1 (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(4)+WI(5) .LE. TINY) THEN ! Na,Cl,NO3=0 - CALL ISRP1R (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(5) .LE. TINY) THEN ! Na,Cl=0 - CALL ISRP2R (WI, RHI, TEMPI) - ELSE - CALL ISRP3R (WI, RHI, TEMPI) - ENDIF - ENDIF -! -! *** SAVE RESULTS TO ARRAYS (units = mole/m3, kg/m3 for water) ********* -! - GAS(1) = GNH3 - GAS(2) = GHNO3 - GAS(3) = GHCL -! - DO 10 I=1,NIONS - AERLIQ(I) = MOLAL(I) - 10 CONTINUE - AERLIQ(NIONS+1) = WATER*1.0D3/18.0D0 - DO 20 I=1,NGASAQ - AERLIQ(NIONS+1+I) = GASAQ(I) - 20 CONTINUE -! - AERSLD(1) = CNANO3 - AERSLD(2) = CNH4NO3 - AERSLD(3) = CNACL - AERSLD(4) = CNH4CL - AERSLD(5) = CNA2SO4 - AERSLD(6) = CNH42S4 - AERSLD(7) = CNAHSO4 - AERSLD(8) = CNH4HS4 - AERSLD(9) = CLC -! - DRYI = WATER.LE.TINY -! - IF (LHOOK) CALL DR_HOOK('ISOPLUS',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISOPLUS ****************************************** -! - ENDSUBROUTINE ISOPLUS - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISRPIA -! *** THIS SUBROUTINE IS THE MASTER ROUTINE FOR THE ISORROPIA-PLUS -! THERMODYNAMIC EQUILIBRIUM AEROSOL MODEL (VERSIONS 0.x) -! -! *** NOTE: THIS SUBROUTINE IS INCLUDED FOR BACKWARD COMPATABILITY ONLY. -! A PROGRAMMER SHOULD USE THE MORE COMPLETE SUBROUTINE ISOROPIA INSTEAD -! -! -! DEPENDING ON THE INPUT VALUES PROVIDED, THE FOLLOWING MODEL -! SUBVERSIONS ARE CALLED: -! -! FOREWARD PROBLEM (IPROB=0): -! Na SO4 NH4 NO3 CL SUBROUTINE CALLED -! ---- ---- ---- ---- ---- ----------------- -! 0.0 >0.0 >0.0 0.0 0.0 SUBROUTINE ISRP1F -! 0.0 >0.0 >0.0 >0.0 0.0 SUBROUTINE ISRP2F -! >0.0 >0.0 >0.0 >0.0 >0.0 SUBROUTINE ISRP3F -! -! REVERSE PROBLEM (IPROB=1): -! Na SO4 NH4 NO3 CL SUBROUTINE CALLED -! ---- ---- ---- ---- ---- ----------------- -! 0.0 >0.0 >0.0 0.0 0.0 SUBROUTINE ISRP1R -! 0.0 >0.0 >0.0 >0.0 0.0 SUBROUTINE ISRP2R -! >0.0 >0.0 >0.0 >0.0 >0.0 SUBROUTINE ISRP3R -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISRPIA (WI, RHI, TEMPI, IPROBI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - INTEGER :: IPROBI - DIMENSION WI(NCOMP) -! -! *** PROBLEM TYPE (0=FOREWARD, 1=REVERSE) ****************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISRPIA',0,ZHOOK_HANDLE) - IPROB = IPROBI -! -! *** SOLVE FOREWARD PROBLEM ******************************************** -! - IF (IPROB.EQ.0) THEN - IF (WI(1)+WI(2)+WI(3)+WI(4)+WI(5) .LE. TINY) THEN ! Everything=0 - CALL INIT1 (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(4)+WI(5) .LE. TINY) THEN ! Na,Cl,NO3=0 - CALL ISRP1F (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(5) .LE. TINY) THEN ! Na,Cl=0 - CALL ISRP2F (WI, RHI, TEMPI) - ELSE - CALL ISRP3F (WI, RHI, TEMPI) - ENDIF -! -! *** SOLVE REVERSE PROBLEM ********************************************* -! - ELSE - IF (WI(1)+WI(2)+WI(3)+WI(4)+WI(5) .LE. TINY) THEN ! Everything=0 - CALL INIT1 (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(4)+WI(5) .LE. TINY) THEN ! Na,Cl,NO3=0 - CALL ISRP1R (WI, RHI, TEMPI) - ELSE IF (WI(1)+WI(5) .LE. TINY) THEN ! Na,Cl=0 - CALL ISRP2R (WI, RHI, TEMPI) - ELSE - CALL ISRP3R (WI, RHI, TEMPI) - ENDIF - ENDIF -! -! *** SETUP 'DRY' FLAG *************************************************** -! - DRYF = WATER.LE.TINY -! -! *** FIND TOTALS ******************************************************* -! - IF (IPROB.EQ.0) THEN - CONTINUE - ELSE - W(1) = WAER(1) - W(2) = WAER(2) - W(3) = WAER(3) - W(4) = WAER(4) - W(5) = WAER(5) -! - IF (.NOT.DRYF) THEN - W(3) = W(3) + GNH3 - W(4) = W(4) + GHNO3 - W(5) = W(5) + GHCL - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('ISRPIA',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISRPIA ******************************************* -! - ENDSUBROUTINE ISRPIA -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE PUSHERR -! *** THIS SUBROUTINE SAVES AN ERROR MESSAGE IN THE ERROR STACK -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE PUSHERR (IERR,ERRINF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: IERR - CHARACTER ERRINF*(*) -! -! *** SAVE ERROR CODE IF THERE IS ANY SPACE *************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('PUSHERR',0,ZHOOK_HANDLE) - IF (NOFER.LT.NERRMX) THEN - NOFER = NOFER + 1 - ERRSTK(NOFER) = IERR - ERRMSG(NOFER) = ERRINF - STKOFL =.FALSE. - ELSE - STKOFL =.TRUE. ! STACK OVERFLOW - ENDIF -! -! *** END OF SUBROUTINE PUSHERR **************************************** -! - IF (LHOOK) CALL DR_HOOK('PUSHERR',1,ZHOOK_HANDLE) - ENDSUBROUTINE PUSHERR - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISERRINF -! *** THIS SUBROUTINE OBTAINS A COPY OF THE ERROR STACK (& MESSAGES) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISERRINF (ERRSTKI, ERRMSGI, NOFERI, STKOFLI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: I,NOFERI - CHARACTER ERRMSGI*40 - INTEGER ERRSTKI - LOGICAL STKOFLI - DIMENSION ERRMSGI(NERRMX), ERRSTKI(NERRMX) -! -! *** OBTAIN WHOLE ERROR STACK **************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISERRINF',0,ZHOOK_HANDLE) - DO 10 I=1,NOFER ! Error messages & codes - ERRSTKI(I) = ERRSTK(I) - ERRMSGI(I) = ERRMSG(I) - 10 CONTINUE -! - STKOFLI = STKOFL - NOFERI = NOFER -! - IF (LHOOK) CALL DR_HOOK('ISERRINF',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISERRINF *************************************** -! - ENDSUBROUTINE ISERRINF - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISORINF -! *** THIS SUBROUTINE PROVIDES INFORMATION ABOUT ISORROPIA -! -! ======================== ARGUMENTS / USAGE =========================== -! -! OUTPUT: -! 1. [VERSI] -! CHARACTER*14 variable. -! Contains version-date information of ISORROPIA -! -! 2. [NCMP] -! INTEGER variable. -! The number of components needed in input array WI -! (or, the number of major species accounted for by ISORROPIA) -! -! 3. [NION] -! INTEGER variable -! The number of ions considered in the aqueous phase -! -! 4. [NAQGAS] -! INTEGER variable -! The number of undissociated species found in aqueous aerosol -! phase -! -! 5. [NSOL] -! INTEGER variable -! The number of solids considered in the solid aerosol phase -! -! 6. [NERR] -! INTEGER variable -! The size of the error stack (maximum number of errors that can -! be stored before the stack exhausts). -! -! 7. [TIN] -! DOUBLE PRECISION variable -! The value used for a very small number. -! -! 8. [GRT] -! DOUBLE PRECISION variable -! The value used for a very large number. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISORINF (VERSI, NCMP, NION, NAQGAS, NSOL, NERR, TIN, & - & GRT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: TIN,GRT - INTEGER :: NCMP,NION,NAQGAS,NSOL,NERR - CHARACTER*14 VERSI -! -! *** ASSIGN INFO ******************************************************* -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISORINF',0,ZHOOK_HANDLE) - VERSI = VERSION - NCMP = NCOMP - NION = NIONS - NAQGAS = NGASAQ - NSOL = NSLDS - NERR = NERRMX - TIN = TINY - GRT = GREAT -! - IF (LHOOK) CALL DR_HOOK('ISORINF',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISORINF ******************************************* -! - ENDSUBROUTINE ISORINF diff --git a/src/arome/chem/internals/isofwd.F b/src/arome/chem/internals/isofwd.F deleted file mode 100644 index dc89b4c04050ee9d87e46d46c87ef7916bab8fbf..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/isofwd.F +++ /dev/null @@ -1,7097 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/isofwd.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:31 $ -!----------------------------------------------------------------- -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISRP1F -! *** THIS SUBROUTINE IS THE DRIVER ROUTINE FOR THE FOREWARD PROBLEM OF -! AN AMMONIUM-SULFATE AEROSOL SYSTEM. -! THE COMPOSITION REGIME IS DETERMINED BY THE SULFATE RATIO AND BY -! THE AMBIENT RELATIVE HUMIDITY. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISRP1F (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - REAL(KIND=8) :: DC - DIMENSION WI(NCOMP) -! -! *** INITIALIZE ALL VARIABLES IN COMMON BLOCK ************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISRP1F',0,ZHOOK_HANDLE) - CALL INIT1 (WI, RHI, TEMPI) -! -! *** CALCULATE SULFATE RATIO ******************************************* -! - SULRAT = W(3)/W(2) -! -! *** FIND CALCULATION REGIME FROM (SULRAT,RH) ************************** -! -! *** SULFATE POOR -! - IF (2.0.LE.SULRAT) THEN - DC = W(3) - 2.001D0*W(2) ! For numerical stability - W(3) = W(3) + MAX(-DC, ZERO) -! - IF(METSTBL.EQ.1) THEN - SCASE = 'A2' - CALL CALCA2 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH42S4) THEN - SCASE = 'A1' - CALL CALCA1 ! NH42SO4 ; case A1 -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'A2' - CALL CALCA2 ! Only liquid ; case A2 - ENDIF - ENDIF -! -! *** SULFATE RICH (NO ACID) -! - ELSEIF (1.0.LE.SULRAT .AND. SULRAT.LT.2.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'B1' - CALL CALCB1 ! NH4HSO4,LC,NH42SO4 ; case B1 -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRLC) THEN - SCASE = 'B2' - CALL CALCB2 ! LC,NH42S4 ; case B2 -! - ELSEIF (DRLC.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'B3' - CALL CALCB3 ! NH42S4 ; case B3 -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid ; case B4 - ENDIF - ENDIF - CALL CALCNH3 -! -! *** SULFATE RICH (FREE ACID) -! - ELSEIF (SULRAT.LT.1.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'C1' - CALL CALCC1 ! NH4HSO4 ; case C1 -! - ELSEIF (DRNH4HS4.LE.RH) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid ; case C2 -! - ENDIF - ENDIF - CALL CALCNH3 - ENDIF -! -! *** RETURN POINT -! - IF (LHOOK) CALL DR_HOOK('ISRP1F',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISRP1F ***************************************** -! - ENDSUBROUTINE ISRP1F -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISRP2F -! *** THIS SUBROUTINE IS THE DRIVER ROUTINE FOR THE FOREWARD PROBLEM OF -! AN AMMONIUM-SULFATE-NITRATE AEROSOL SYSTEM. -! THE COMPOSITION REGIME IS DETERMINED BY THE SULFATE RATIO AND BY -! THE AMBIENT RELATIVE HUMIDITY. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISRP2F (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - DIMENSION WI(NCOMP) -! -! *** INITIALIZE ALL VARIABLES IN COMMON BLOCK ************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISRP2F',0,ZHOOK_HANDLE) - CALL INIT2 (WI, RHI, TEMPI) -! -! *** CALCULATE SULFATE RATIO ******************************************* -! - SULRAT = W(3)/W(2) -! -! *** FIND CALCULATION REGIME FROM (SULRAT,RH) ************************** -! -! *** SULFATE POOR -! - IF (2.0.LE.SULRAT) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'D3' - CALL CALCD3 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4NO3) THEN - SCASE = 'D1' - CALL CALCD1 ! NH42SO4,NH4NO3 ; case D1 -! - ELSEIF (DRNH4NO3.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'D2' - CALL CALCD2 ! NH42S4 ; case D2 -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'D3' - CALL CALCD3 ! Only liquid ; case D3 - ENDIF - ENDIF -! -! *** SULFATE RICH (NO ACID) -! FOR SOLVING THIS CASE, NITRIC ACID IS ASSUMED A MINOR SPECIES, -! THAT DOES NOT SIGNIFICANTLY PERTURB THE HSO4-SO4 EQUILIBRIUM. -! SUBROUTINES CALCB? ARE CALLED, AND THEN THE NITRIC ACID IS DISSOLVED -! FROM THE HNO3(G) -> (H+) + (NO3-) EQUILIBRIUM. -! - ELSEIF (1.0.LE.SULRAT .AND. SULRAT.LT.2.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid (metastable) - SCASE = 'E4' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'B1' - CALL CALCB1 ! NH4HSO4,LC,NH42SO4 ; case E1 - SCASE = 'E1' -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRLC) THEN - SCASE = 'B2' - CALL CALCB2 ! LC,NH42S4 ; case E2 - SCASE = 'E2' -! - ELSEIF (DRLC.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'B3' - CALL CALCB3 ! NH42S4 ; case E3 - SCASE = 'E3' -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid ; case E4 - SCASE = 'E4' - ENDIF - ENDIF -! - CALL CALCNA ! HNO3(g) DISSOLUTION -! -! *** SULFATE RICH (FREE ACID) -! FOR SOLVING THIS CASE, NITRIC ACID IS ASSUMED A MINOR SPECIES, -! THAT DOES NOT SIGNIFICANTLY PERTURB THE HSO4-SO4 EQUILIBRIUM -! SUBROUTINE CALCC? IS CALLED, AND THEN THE NITRIC ACID IS DISSOLVED -! FROM THE HNO3(G) -> (H+) + (NO3-) EQUILIBRIUM. -! - ELSEIF (SULRAT.LT.1.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid (metastable) - SCASE = 'F2' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'C1' - CALL CALCC1 ! NH4HSO4 ; case F1 - SCASE = 'F1' -! - ELSEIF (DRNH4HS4.LE.RH) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid ; case F2 - SCASE = 'F2' - ENDIF - ENDIF -! - CALL CALCNA ! HNO3(g) DISSOLUTION - ENDIF -! -! *** RETURN POINT -! - IF (LHOOK) CALL DR_HOOK('ISRP2F',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISRP2F ***************************************** -! - ENDSUBROUTINE ISRP2F -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISRP3F -! *** THIS SUBROUTINE IS THE DRIVER ROUTINE FOR THE FORWARD PROBLEM OF -! AN AMMONIUM-SULFATE-NITRATE-CHLORIDE-SODIUM AEROSOL SYSTEM. -! THE COMPOSITION REGIME IS DETERMINED BY THE SULFATE & SODIUM -! RATIOS AND BY THE AMBIENT RELATIVE HUMIDITY. -! -! *** COPYRIGHT 1996-2000 UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISRP3F (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI,REST - DIMENSION WI(NCOMP) -! -! *** ADJUST FOR TOO LITTLE AMMONIUM AND CHLORIDE *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISRP3F',0,ZHOOK_HANDLE) - WI(3) = MAX (WI(3), 1.D-10) ! NH4+ : 1e-4 umoles/m3 - WI(5) = MAX (WI(5), 1.D-10) ! Cl- : 1e-4 umoles/m3 -! -! *** ADJUST FOR TOO LITTLE SODIUM, SULFATE AND NITRATE COMBINED ******** -! - IF (WI(1)+WI(2)+WI(4) .LE. 1d-10) THEN - WI(1) = 1.D-10 ! Na+ : 1e-4 umoles/m3 - WI(2) = 1.D-10 ! SO4- : 1e-4 umoles/m3 - ENDIF -! -! *** INITIALIZE ALL VARIABLES IN COMMON BLOCK ************************** -! - CALL INIT3 (WI, RHI, TEMPI) -! -! *** CHECK IF TOO MUCH SODIUM ; ADJUST AND ISSUE ERROR MESSAGE ********* -! - REST = 2.D0*W(2) + W(4) + W(5) - IF (W(1).GT.REST) THEN ! NA > 2*SO4+CL+NO3 ? - W(1) = (ONE-1D-6)*REST ! Adjust Na amount - CALL PUSHERR (0050, 'ISRP3F') ! Warning error: Na adjusted - ENDIF -! -! *** CALCULATE SULFATE & SODIUM RATIOS ********************************* -! - SULRAT = (W(1)+W(3))/W(2) - SODRAT = W(1)/W(2) -! -! *** FIND CALCULATION REGIME FROM (SULRAT,RH) ************************** -! -! *** SULFATE POOR ; SODIUM POOR -! - IF (2.0.LE.SULRAT .AND. SODRAT.LT.2.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'G5' - CALL CALCG5 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4NO3) THEN - SCASE = 'G1' - CALL CALCG1 ! NH42SO4,NH4NO3,NH4CL,NA2SO4 -! - ELSEIF (DRNH4NO3.LE.RH .AND. RH.LT.DRNH4CL) THEN - SCASE = 'G2' - CALL CALCG2 ! NH42SO4,NH4CL,NA2SO4 -! - ELSEIF (DRNH4CL.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'G3' - CALL CALCG3 ! NH42SO4,NA2SO4 -! - ELSEIF (DRNH42S4.LE.RH .AND. RH.LT.DRNA2SO4) THEN - SCASE = 'G4' - CALL CALCG4 ! NA2SO4 -! - ELSEIF (DRNA2SO4.LE.RH) THEN - SCASE = 'G5' - CALL CALCG5 ! Only liquid - ENDIF - ENDIF -! -! *** SULFATE POOR ; SODIUM RICH -! - ELSE IF (SULRAT.GE.2.0 .AND. SODRAT.GE.2.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'H6' - CALL CALCH6 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4NO3) THEN - SCASE = 'H1' - CALL CALCH1 ! NH4NO3,NH4CL,NA2SO4,NACL,NANO3 -! - ELSEIF (DRNH4NO3.LE.RH .AND. RH.LT.DRNANO3) THEN - SCASE = 'H2' - CALL CALCH2 ! NH4CL,NA2SO4,NACL,NANO3 -! - ELSEIF (DRNANO3.LE.RH .AND. RH.LT.DRNACL) THEN - SCASE = 'H3' - CALL CALCH3 ! NH4CL,NA2SO4,NACL -! - ELSEIF (DRNACL.LE.RH .AND. RH.LT.DRNH4Cl) THEN - SCASE = 'H4' - CALL CALCH4 ! NH4CL,NA2SO4 -! - ELSEIF (DRNH4Cl.LE.RH .AND. RH.LT.DRNA2SO4) THEN - SCASE = 'H5' - CALL CALCH5 ! NA2SO4 -! - ELSEIF (DRNA2SO4.LE.RH) THEN - SCASE = 'H6' - CALL CALCH6 ! NO SOLID - ENDIF - ENDIF -! -! *** SULFATE RICH (NO ACID) -! - ELSEIF (1.0.LE.SULRAT .AND. SULRAT.LT.2.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'I6' - CALL CALCI6 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'I1' - CALL CALCI1 ! NA2SO4,(NH4)2SO4,NAHSO4,NH4HSO4,LC -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRNAHSO4) THEN - SCASE = 'I2' - CALL CALCI2 ! NA2SO4,(NH4)2SO4,NAHSO4,LC -! - ELSEIF (DRNAHSO4.LE.RH .AND. RH.LT.DRLC) THEN - SCASE = 'I3' - CALL CALCI3 ! NA2SO4,(NH4)2SO4,LC -! - ELSEIF (DRLC.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'I4' - CALL CALCI4 ! NA2SO4,(NH4)2SO4 -! - ELSEIF (DRNH42S4.LE.RH .AND. RH.LT.DRNA2SO4) THEN - SCASE = 'I5' - CALL CALCI5 ! NA2SO4 -! - ELSEIF (DRNA2SO4.LE.RH) THEN - SCASE = 'I6' - CALL CALCI6 ! NO SOLIDS - ENDIF - ENDIF -! - CALL CALCNHA ! MINOR SPECIES: HNO3, HCl - CALL CALCNH3 ! NH3 -! -! *** SULFATE RICH (FREE ACID) -! - ELSEIF (SULRAT.LT.1.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'J3' - CALL CALCJ3 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'J1' - CALL CALCJ1 ! NH4HSO4,NAHSO4 -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRNAHSO4) THEN - SCASE = 'J2' - CALL CALCJ2 ! NAHSO4 -! - ELSEIF (DRNAHSO4.LE.RH) THEN - SCASE = 'J3' - CALL CALCJ3 - ENDIF - ENDIF -! - CALL CALCNHA ! MINOR SPECIES: HNO3, HCl - CALL CALCNH3 ! NH3 - ENDIF -! -! *** RETURN POINT -! - IF (LHOOK) CALL DR_HOOK('ISRP3F',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISRP3F ***************************************** -! - ENDSUBROUTINE ISRP3F -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCA2 -! *** CASE A2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. LIQUID AEROSOL PHASE ONLY POSSIBLE -! -! FOR CALCULATIONS, A BISECTION IS PERFORMED TOWARDS X, THE -! AMOUNT OF HYDROGEN IONS (H+) FOUND IN THE LIQUID PHASE. -! FOR EACH ESTIMATION OF H+, FUNCTION FUNCB2A CALCULATES THE -! CONCENTRATION OF IONS FROM THE NH3(GAS) - NH4+(LIQ) EQUILIBRIUM. -! ELECTRONEUTRALITY IS USED AS THE OBJECTIVE FUNCTION. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCA2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,OMEHI,OMELO - REAL(KIND=8) :: X1,X2,X3,Y1,Y2,Y3,FUNCA2 - INTEGER :: I -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCA2',0,ZHOOK_HANDLE) - CALAOU =.TRUE. ! Outer loop activity calculation flag - OMELO = TINY ! Low limit: SOLUTION IS VERY BASIC - OMEHI = 2.0D0*W(2) ! High limit: FROM NH4+ -> NH3(g) + H+(aq) -! -! *** CALCULATE WATER CONTENT ***************************************** -! - MOLAL(5) = W(2) - MOLAL(6) = ZERO - CALL CALCMR -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = OMEHI - Y1 = FUNCA2 (X1) - IF (ABS(Y1).LE.EPS) THEN - IF (LHOOK) CALL DR_HOOK('CALCA2',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (OMEHI-OMELO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = MAX(X1-DX, OMELO) - Y2 = FUNCA2 (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE - IF (ABS(Y2).LE.EPS) THEN - IF (LHOOK) CALL DR_HOOK('CALCA2',1,ZHOOK_HANDLE) - RETURN - ELSE - CALL PUSHERR (0001, 'CALCA2') ! WARNING ERROR: NO SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCA2',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCA2 (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCA2') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCA2 (X3) - IF (LHOOK) CALL DR_HOOK('CALCA2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCA2 **************************************** -! - ENDSUBROUTINE CALCA2 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCA2 -! *** CASE A2 -! FUNCTION THAT SOLVES THE SYSTEM OF EQUATIONS FOR CASE A2 ; -! AND RETURNS THE VALUE OF THE ZEROED FUNCTION IN FUNCA2. -! -!======================================================================= -! - FUNCTION FUNCA2 (OMEGI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A1,A2,A3,DENOM,PSI,ZETA - INTEGER :: I - REAL(KIND=8) :: OMEGI - REAL(KIND=8) :: FUNCA2 - REAL(KIND=8) :: LAMDA -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCA2',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - PSI = W(2) ! INITIAL AMOUNT OF (NH4)2SO4 IN SOLUTION -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A1 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. - A2 = XK2*R*TEMP/XKW*(GAMA(8)/GAMA(9))**2. - A3 = XKW*RH*WATER*WATER -! - LAMDA = PSI/(A1/OMEGI+ONE) - ZETA = A3/OMEGI -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL (1) = OMEGI ! HI - MOLAL (3) = W(3)/(ONE/A2/OMEGI + ONE) ! NH4I - MOLAL (5) = MAX(PSI-LAMDA,TINY) ! SO4I - MOLAL (6) = LAMDA ! HSO4I - GNH3 = MAX (W(3)-MOLAL(3), TINY) ! NH3GI - COH = ZETA ! OHI -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 DENOM = (2.0*MOLAL(5)+MOLAL(6)) - FUNCA2= (MOLAL(3)/DENOM - ONE) + MOLAL(1)/DENOM - IF (LHOOK) CALL DR_HOOK('FUNCA2',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCA2 ******************************************** -! - ENDFUNCTION FUNCA2 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCA1 -! *** CASE A1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4 -! -! A SIMPLE MATERIAL BALANCE IS PERFORMED, AND THE SOLID (NH4)2SO4 -! IS CALCULATED FROM THE SULFATES. THE EXCESS AMMONIA REMAINS IN -! THE GAS PHASE. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCA1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCA1',0,ZHOOK_HANDLE) - CNH42S4 = W(2) - GNH3 = MAX (W(3)-2.0*CNH42S4, ZERO) - IF (LHOOK) CALL DR_HOOK('CALCA1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCA1 ****************************************** -! - ENDSUBROUTINE CALCA1 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB4 -! *** CASE B4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. LIQUID AEROSOL PHASE ONLY POSSIBLE -! -! FOR CALCULATIONS, A BISECTION IS PERFORMED WITH RESPECT TO H+. -! THE OBJECTIVE FUNCTION IS THE DIFFERENCE BETWEEN THE ESTIMATED H+ -! AND THAT CALCULATED FROM ELECTRONEUTRALITY. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB4 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: AK1,AA,BB,CC,DD,GAM,BET - INTEGER :: I -! -! *** SOLVE EQUATIONS ************************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB4',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - CALAOU = .TRUE. -! -! *** CALCULATE WATER CONTENT ****************************************** -! - CALL CALCB1A ! GET DRY SALT CONTENT, AND USE FOR WATER. - MOLALR(13) = CLC - MOLALR(9) = CNH4HS4 - MOLALR(4) = CNH42S4 - CLC = ZERO - CNH4HS4 = ZERO - CNH42S4 = ZERO - WATER = MOLALR(13)/M0(13)+MOLALR(9)/M0(9)+MOLALR(4)/M0(4) -! - MOLAL(3) = W(3) ! NH4I -! - DO 20 I=1,NSWEEP - AK1 = XK1*((GAMA(8)/GAMA(7))**2.)*(WATER/GAMA(7)) - BET = W(2) - GAM = MOLAL(3) -! - BB = BET + AK1 - GAM - CC =-AK1*BET - DD = BB*BB - 4.D0*CC -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL (5) = MIN(0.5*(-BB + SQRT(DD)), W(2)) ! SO4I - MOLAL (6) = MAX(TINY,MIN(W(2)-MOLAL(5),W(2))) ! HSO4I - MOLAL (1) = MAX(TINY,MIN(AK1*MOLAL(6)/MOLAL(5),W(2))) ! HI - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (.NOT.CALAIN) GOTO 30 - CALL CALCACT -20 CONTINUE -! -30 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCB4',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB4 ****************************************** -! - ENDSUBROUTINE CALCB4 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB3 -! *** CASE B3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. BOTH LIQUID & SOLID PHASE IS POSSIBLE -! 3. SOLIDS POSSIBLE: (NH4)2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: X,Y,TLC,TNH42S4,TNH4HS4 -! -! *** CALCULATE EQUIVALENT AMOUNT OF HSO4 AND SO4 *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB3',0,ZHOOK_HANDLE) - X = MAX(2*W(2)-W(3), ZERO) ! Equivalent NH4HSO4 - Y = MAX(W(3) -W(2), ZERO) ! Equivalent NH42SO4 -! -! *** CALCULATE SPECIES ACCORDING TO RELATIVE ABUNDANCE OF HSO4 ********* -! - IF (X.LT.Y) THEN ! LC is the MIN (x,y) - SCASE = 'B3 ; SUBCASE 1' - TLC = X - TNH42S4 = Y-X - CALL CALCB3A (TLC,TNH42S4) ! LC + (NH4)2SO4 - ELSE - SCASE = 'B3 ; SUBCASE 2' - TLC = Y - TNH4HS4 = X-Y - CALL CALCB3B (TLC,TNH4HS4) ! LC + NH4HSO4 - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCB3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB3 ****************************************** -! - ENDSUBROUTINE CALCB3 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB3A -! *** CASE B3 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH (1.0 < SULRAT < 2.0) -! 2. BOTH LIQUID & SOLID PHASE IS POSSIBLE -! 3. SOLIDS POSSIBLE: (NH4)2SO4 -! -! FOR CALCULATIONS, A BISECTION IS PERFORMED TOWARDS ZETA, THE -! AMOUNT OF SOLID (NH4)2SO4 DISSOLVED IN THE LIQUID PHASE. -! FOR EACH ESTIMATION OF ZETA, FUNCTION FUNCB3A CALCULATES THE -! AMOUNT OF H+ PRODUCED (BASED ON THE SO4 RELEASED INTO THE -! SOLUTION). THE SOLUBILITY PRODUCT OF (NH4)2SO4 IS USED AS THE -! OBJECTIVE FUNCTION. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB3A (TLC, TNH42S4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: TLC,TNH42S4 - REAL(KIND=8) :: ZLO,ZHI,YLO,DZ,Y1,Y2,Y3,YHI,Z1,Z2,Z3,ZK - REAL(KIND=8) :: FUNCB3A - INTEGER :: I -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB3A',0,ZHOOK_HANDLE) - CALAOU = .TRUE. ! Outer loop activity calculation flag - ZLO = ZERO ! MIN DISSOLVED (NH4)2SO4 - ZHI = TNH42S4 ! MAX DISSOLVED (NH4)2SO4 -! -! *** INITIAL VALUES FOR BISECTION (DISSOLVED (NH4)2SO4 **************** -! - Z1 = ZLO - Y1 = FUNCB3A (Z1, TLC, TNH42S4) - IF (ABS(Y1).LE.EPS) THEN - IF (LHOOK) CALL DR_HOOK('CALCB3A',1,ZHOOK_HANDLE) - RETURN - ENDIF - YLO= Y1 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO *********************** -! - DZ = (ZHI-ZLO)/FLOAT(NDIV) - DO 10 I=1,NDIV - Z2 = Z1+DZ - Y2 = FUNCB3A (Z2, TLC, TNH42S4) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - Z1 = Z2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION FOUND -! - YHI= Y1 ! Save Y-value at HI position - IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCB3A',1,ZHOOK_HANDLE) - RETURN -! -! *** { YLO, YHI } < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH LC -! - ELSE IF (YLO.LT.ZERO .AND. YHI.LT.ZERO) THEN - Z1 = ZHI - Z2 = ZHI - GOTO 40 -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH LC -! - ELSE IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - Z1 = ZLO - Z2 = ZLO - GOTO 40 - ELSE - CALL PUSHERR (0001, 'CALCB3A') ! WARNING ERROR: NO SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCB3A',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - Z3 = 0.5*(Z1+Z2) - Y3 = FUNCB3A (Z3, TLC, TNH42S4) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - Z2 = Z3 - ELSE - Y1 = Y3 - Z1 = Z3 - ENDIF - IF (ABS(Z2-Z1) .LE. EPS*Z1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCB3A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ************************************************ -! -40 ZK = 0.5*(Z1+Z2) - Y3 = FUNCB3A (ZK, TLC, TNH42S4) -! - IF (LHOOK) CALL DR_HOOK('CALCB3A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB3A ****************************************** -! - ENDSUBROUTINE CALCB3A - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCB3A -! *** CASE B3 ; SUBCASE 1 -! FUNCTION THAT SOLVES THE SYSTEM OF EQUATIONS FOR CASE B3 -! AND RETURNS THE VALUE OF THE ZEROED FUNCTION IN FUNCA3. -! -!======================================================================= -! - FUNCTION FUNCB3A (ZK, Y, X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: ZK,Y,X - REAL(KIND=8) :: FUNCB3A - REAL(KIND=8) :: KK - REAL(KIND=8) :: DD,GRAT1 - INTEGER :: I -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCB3A',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - DO 20 I=1,NSWEEP - GRAT1 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. - DD = SQRT( (ZK+GRAT1+Y)**2. + 4.0*Y*GRAT1) - KK = 0.5*(-(ZK+GRAT1+Y) + DD ) -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL (1) = KK ! HI - MOLAL (5) = KK+ZK+Y ! SO4I - MOLAL (6) = MAX (Y-KK, TINY) ! HSO4I - MOLAL (3) = 3.0*Y+2*ZK ! NH4I - CNH42S4 = X-ZK ! Solid (NH4)2SO4 - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 30 - ENDIF -20 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -!CC30 FUNCB3A= ( SO4I*NH4I**2.0 )/( XK7*(WATER/GAMA(4))**3.0 ) -30 FUNCB3A= MOLAL(5)*MOLAL(3)**2.0 - FUNCB3A= FUNCB3A/(XK7*(WATER/GAMA(4))**3.0) - ONE - IF (LHOOK) CALL DR_HOOK('FUNCB3A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCB3A ******************************************** -! - ENDFUNCTION FUNCB3A - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB3B -! *** CASE B3 ; SUBCASE 2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH (1.0 < SULRAT < 2.0) -! 2. LIQUID PHASE ONLY IS POSSIBLE -! -! SPECIATION CALCULATIONS IS BASED ON THE HSO4 <--> SO4 EQUILIBRIUM. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB3B (Y, X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: Y,X - REAL(KIND=8) :: KK - REAL(KIND=8) :: DD,GRAT1 - INTEGER :: I -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB3B',0,ZHOOK_HANDLE) - CALAOU = .FALSE. ! Outer loop activity calculation flag - FRST = .FALSE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 20 I=1,NSWEEP - GRAT1 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. - DD = SQRT( (GRAT1+Y)**2. + 4.0*(X+Y)*GRAT1) - KK = 0.5*(-(GRAT1+Y) + DD ) -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL (1) = KK ! HI - MOLAL (5) = Y+KK ! SO4I - MOLAL (6) = MAX (X+Y-KK, TINY) ! HSO4I - MOLAL (3) = 3.0*Y+X ! NH4I - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (.NOT.CALAIN) GOTO 30 - CALL CALCACT -20 CONTINUE -! -30 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCB3B',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB3B ****************************************** -! - ENDSUBROUTINE CALCB3B -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB2 -! *** CASE B2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : LC, (NH4)2SO4 -! -! THERE ARE TWO POSSIBLE REGIMES HERE, DEPENDING ON THE SULFATE RATIO: -! 1. WHEN BOTH LC AND (NH4)2SO4 ARE POSSIBLE (SUBROUTINE CALCB2A) -! 2. WHEN ONLY LC IS POSSIBLE (SUBROUTINE CALCB2B). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: X,Y -! -! *** CALCULATE EQUIVALENT AMOUNT OF HSO4 AND SO4 *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB2',0,ZHOOK_HANDLE) - X = MAX(2*W(2)-W(3), TINY) ! Equivalent NH4HSO4 - Y = MAX(W(3) -W(2), TINY) ! Equivalent NH42SO4 -! -! *** CALCULATE SPECIES ACCORDING TO RELATIVE ABUNDANCE OF HSO4 ********* -! - IF (X.LE.Y) THEN ! LC is the MIN (x,y) - SCASE = 'B2 ; SUBCASE 1' - CALL CALCB2A (X,Y-X) ! LC + (NH4)2SO4 POSSIBLE - ELSE - SCASE = 'B2 ; SUBCASE 2' - CALL CALCB2B (Y,X-Y) ! LC ONLY POSSIBLE - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCB2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB2 ****************************************** -! - ENDSUBROUTINE CALCB2 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB2 -! *** CASE B2 ; SUBCASE A. -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH (1.0 < SULRAT < 2.0) -! 2. SOLID PHASE ONLY POSSIBLE -! 3. SOLIDS POSSIBLE: LC, (NH4)2SO4 -! -! THERE ARE TWO POSSIBLE REGIMES HERE, DEPENDING ON RELATIVE HUMIDITY: -! 1. WHEN RH >= MDRH ; LIQUID PHASE POSSIBLE (MDRH REGION) -! 2. WHEN RH < MDRH ; ONLY SOLID PHASE POSSIBLE -! -! FOR SOLID CALCULATIONS, A MATERIAL BALANCE BASED ON THE STOICHIMETRIC -! PROPORTION OF AMMONIUM AND SULFATE IS DONE TO CALCULATE THE AMOUNT -! OF LC AND (NH4)2SO4 IN THE SOLID PHASE. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB2A (TLC, TNH42S4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: TLC,TNH42S4 -! -! *** REGIME DEPENDS UPON THE AMBIENT RELATIVE HUMIDITY ***************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB2A',0,ZHOOK_HANDLE) - IF (RH.LT.DRMLCAS) THEN - SCASE = 'B2 ; SUBCASE A1' ! SOLIDS POSSIBLE ONLY - CLC = TLC - CNH42S4 = TNH42S4 - SCASE = 'B2 ; SUBCASE A1' - ELSE - SCASE = 'B2 ; SUBCASE A2' - CALL CALCB2A2 (TLC, TNH42S4) ! LIQUID & SOLID PHASE POSSIBLE - SCASE = 'B2 ; SUBCASE A2' - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCB2A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB2A ***************************************** -! - ENDSUBROUTINE CALCB2A - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB2A2 -! *** CASE B2 ; SUBCASE A2. -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH (1.0 < SULRAT < 2.0) -! 2. SOLID PHASE ONLY POSSIBLE -! 3. SOLIDS POSSIBLE: LC, (NH4)2SO4 -! -! THIS IS THE CASE WHERE THE RELATIVE HUMIDITY IS IN THE MUTUAL -! DRH REGION. THE SOLUTION IS ASSUMED TO BE THE SUM OF TWO WEIGHTED -! SOLUTIONS ; THE SOLID PHASE ONLY (SUBROUTINE CALCB2A1) AND THE -! THE SOLID WITH LIQUID PHASE (SUBROUTINE CALCB3). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB2A2 (TLC, TNH42S4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: TLC,TNH42S4 - REAL(KIND=8) :: CLCO,CNH42SO,ONEMWF,WF -! -! *** FIND WEIGHT FACTOR ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB2A2',0,ZHOOK_HANDLE) - IF (WFTYP.EQ.0) THEN - WF = ZERO - ELSEIF (WFTYP.EQ.1) THEN - WF = 0.5D0 - ELSE - WF = (DRLC-RH)/(DRLC-DRMLCAS) - ENDIF - ONEMWF = ONE - WF -! -! *** FIND FIRST SECTION ; DRY ONE ************************************ -! - CLCO = TLC ! FIRST (DRY) SOLUTION - CNH42SO = TNH42S4 -! -! *** FIND SECOND SECTION ; DRY & LIQUID ****************************** -! - CLC = ZERO - CNH42S4 = ZERO - CALL CALCB3 ! SECOND (LIQUID) SOLUTION -! -! *** FIND SOLUTION AT MDRH BY WEIGHTING DRY & LIQUID SOLUTIONS. -! - MOLAL(1)= ONEMWF*MOLAL(1) ! H+ - MOLAL(3)= ONEMWF*(2.D0*(CNH42SO-CNH42S4) + 3.D0*(CLCO-CLC)) ! NH4+ - MOLAL(5)= ONEMWF*(CNH42SO-CNH42S4 + CLCO-CLC) ! SO4-- - MOLAL(6)= ONEMWF*(CLCO-CLC) ! HSO4- -! - WATER = ONEMWF*WATER -! - CLC = WF*CLCO + ONEMWF*CLC - CNH42S4 = WF*CNH42SO + ONEMWF*CNH42S4 -! - IF (LHOOK) CALL DR_HOOK('CALCB2A2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB2A2 **************************************** -! - ENDSUBROUTINE CALCB2A2 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB2 -! *** CASE B2 ; SUBCASE B -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH (1.0 < SULRAT < 2.0) -! 2. BOTH LIQUID & SOLID PHASE IS POSSIBLE -! 3. SOLIDS POSSIBLE: LC -! -! FOR CALCULATIONS, A BISECTION IS PERFORMED TOWARDS ZETA, THE -! AMOUNT OF SOLID LC DISSOLVED IN THE LIQUID PHASE. -! FOR EACH ESTIMATION OF ZETA, FUNCTION FUNCB2A CALCULATES THE -! AMOUNT OF H+ PRODUCED (BASED ON THE HSO4, SO4 RELEASED INTO THE -! SOLUTION). THE SOLUBILITY PRODUCT OF LC IS USED AS THE OBJECTIVE -! FUNCTION. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB2B (TLC,TNH4HS4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: TLC,TNH4HS4 - REAL(KIND=8) :: DX,X1,X2,X3,Y1,Y2,Y3,YHI,YLO,ZHI,ZLO - REAL(KIND=8) :: FUNCB2B - INTEGER ::I -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB2B',0,ZHOOK_HANDLE) - CALAOU = .TRUE. ! Outer loop activity calculation flag - ZLO = ZERO - ZHI = TLC ! High limit: all of it in liquid phase -! -! *** INITIAL VALUES FOR BISECTION ************************************** -! - X1 = ZHI - Y1 = FUNCB2B (X1,TNH4HS4,TLC) - IF (ABS(Y1).LE.EPS) THEN - IF (LHOOK) CALL DR_HOOK('CALCB2B',1,ZHOOK_HANDLE) - RETURN - ENDIF - YHI= Y1 ! Save Y-value at Hi position -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ************************ -! - DX = (ZHI-ZLO)/NDIV - DO 10 I=1,NDIV - X2 = X1-DX - Y2 = FUNCB2B (X2,TNH4HS4,TLC) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION FOUND -! - YLO= Y1 ! Save Y-value at LO position - IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCB2B',1,ZHOOK_HANDLE) - RETURN -! -! *** { YLO, YHI } < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH LC -! - ELSE IF (YLO.LT.ZERO .AND. YHI.LT.ZERO) THEN - X1 = ZHI - X2 = ZHI - GOTO 40 -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH LC -! - ELSE IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - X1 = ZLO - X2 = ZLO - GOTO 40 - ELSE - CALL PUSHERR (0001, 'CALCB2B') ! WARNING ERROR: NO SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCB2B',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** PERFORM BISECTION ************************************************* -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCB2B (X3,TNH4HS4,TLC) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCB2B') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ************************************************ -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCB2B (X3,TNH4HS4,TLC) -! - IF (LHOOK) CALL DR_HOOK('CALCB2B',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB2B ***************************************** -! - ENDSUBROUTINE CALCB2B - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCB2B -! *** CASE B2 ; -! FUNCTION THAT SOLVES THE SYSTEM OF EQUATIONS FOR CASE B2 ; SUBCASE 2 -! AND RETURNS THE VALUE OF THE ZEROED FUNCTION IN FUNCB2B. -! -!======================================================================= -! - FUNCTION FUNCB2B (X,TNH4HS4,TLC) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCB2B - REAL(KIND=8) :: X,TNH4HS4,TLC - REAL(KIND=8) :: DELTA,GRAT2,OMEGA,PARM - INTEGER :: I -! -! *** SOLVE EQUATIONS ************************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCB2B',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - DO 20 I=1,NSWEEP - GRAT2 = XK1*WATER*(GAMA(8)/GAMA(7))**2./GAMA(7) - PARM = X+GRAT2 - DELTA = PARM*PARM + 4.0*(X+TNH4HS4)*GRAT2 ! Diakrinousa - OMEGA = 0.5*(-PARM + SQRT(DELTA)) ! Thetiki riza (ie:H+>0) -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL (1) = OMEGA ! HI - MOLAL (3) = 3.0*X+TNH4HS4 ! NH4I - MOLAL (5) = X+OMEGA ! SO4I - MOLAL (6) = MAX (X+TNH4HS4-OMEGA, TINY) ! HSO4I - CLC = MAX(TLC-X,ZERO) ! Solid LC - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ****************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 30 - ENDIF -20 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************** -! -!CC30 FUNCB2B= ( NH4I**3.*SO4I*HSO4I )/( XK13*(WATER/GAMA(13))**5. ) -30 FUNCB2B= (MOLAL(3)**3.)*MOLAL(5)*MOLAL(6) - FUNCB2B= FUNCB2B/(XK13*(WATER/GAMA(13))**5.) - ONE - IF (LHOOK) CALL DR_HOOK('FUNCB2B',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCB2B ******************************************* -! - ENDFUNCTION FUNCB2B - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB1 -! *** CASE B1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : LC, (NH4)2SO4, NH4HSO4 -! -! THERE ARE TWO POSSIBLE REGIMES HERE, DEPENDING ON RELATIVE HUMIDITY: -! 1. WHEN RH >= MDRH ; LIQUID PHASE POSSIBLE (MDRH REGION) -! 2. WHEN RH < MDRH ; ONLY SOLID PHASE POSSIBLE (SUBROUTINE CALCB1A) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! -! *** REGIME DEPENDS UPON THE AMBIENT RELATIVE HUMIDITY ***************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB1',0,ZHOOK_HANDLE) - IF (RH.LT.DRMLCAB) THEN - SCASE = 'B1 ; SUBCASE 1' - CALL CALCB1A ! SOLID PHASE ONLY POSSIBLE - SCASE = 'B1 ; SUBCASE 1' - ELSE - SCASE = 'B1 ; SUBCASE 2' - CALL CALCB1B ! LIQUID & SOLID PHASE POSSIBLE - SCASE = 'B1 ; SUBCASE 2' - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCB1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB1 ****************************************** -! - ENDSUBROUTINE CALCB1 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB1A -! *** CASE B1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH -! 2. THERE IS NO LIQUID PHASE -! 3. SOLIDS POSSIBLE: LC, { (NH4)2SO4 XOR NH4HSO4 } (ONE OF TWO -! BUT NOT BOTH) -! -! A SIMPLE MATERIAL BALANCE IS PERFORMED, AND THE AMOUNT OF LC -! IS CALCULATED FROM THE (NH4)2SO4 AND NH4HSO4 WHICH IS LEAST -! ABUNDANT (STOICHIMETRICALLY). THE REMAINING EXCESS OF SALT -! IS MIXED WITH THE LC. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: X,Y -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB1A',0,ZHOOK_HANDLE) - X = 2*W(2)-W(3) ! Equivalent NH4HSO4 - Y = W(3)-W(2) ! Equivalent (NH4)2SO4 -! -! *** CALCULATE COMPOSITION ******************************************* -! - IF (X.LE.Y) THEN ! LC is the MIN (x,y) - CLC = X ! NH4HSO4 >= (NH4)2S04 - CNH4HS4 = ZERO - CNH42S4 = Y-X - ELSE - CLC = Y ! NH4HSO4 < (NH4)2S04 - CNH4HS4 = X-Y - CNH42S4 = ZERO - ENDIF - IF (LHOOK) CALL DR_HOOK('CALCB1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB1 ****************************************** -! - ENDSUBROUTINE CALCB1A - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCB1B -! *** CASE B1 ; SUBCASE 2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE: LC, { (NH4)2SO4 XOR NH4HSO4 } (ONE OF TWO -! BUT NOT BOTH) -! -! THIS IS THE CASE WHERE THE RELATIVE HUMIDITY IS IN THE MUTUAL -! DRH REGION. THE SOLUTION IS ASSUMED TO BE THE SUM OF TWO WEIGHTED -! SOLUTIONS ; THE SOLID PHASE ONLY (SUBROUTINE CALCB1A) AND THE -! THE SOLID WITH LIQUID PHASE (SUBROUTINE CALCB2). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCB1B - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: CLCO,CNH42SO,CNH4HSO,ONEMWF,WF -! -! *** FIND WEIGHT FACTOR ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCB1B',0,ZHOOK_HANDLE) - IF (WFTYP.EQ.0) THEN - WF = ZERO - ELSEIF (WFTYP.EQ.1) THEN - WF = 0.5D0 - ELSE - WF = (DRNH4HS4-RH)/(DRNH4HS4-DRMLCAB) - ENDIF - ONEMWF = ONE - WF -! -! *** FIND FIRST SECTION ; DRY ONE ************************************ -! - CALL CALCB1A - CLCO = CLC ! FIRST (DRY) SOLUTION - CNH42SO = CNH42S4 - CNH4HSO = CNH4HS4 -! -! *** FIND SECOND SECTION ; DRY & LIQUID ****************************** -! - CLC = ZERO - CNH42S4 = ZERO - CNH4HS4 = ZERO - CALL CALCB2 ! SECOND (LIQUID) SOLUTION -! -! *** FIND SOLUTION AT MDRH BY WEIGHTING DRY & LIQUID SOLUTIONS. -! - MOLAL(1)= ONEMWF*MOLAL(1) ! H+ - MOLAL(3)= ONEMWF*(2.D0*(CNH42SO-CNH42S4) + (CNH4HSO-CNH4HS4) & - & + 3.D0*(CLCO-CLC)) ! NH4+ - MOLAL(5)= ONEMWF*(CNH42SO-CNH42S4 + CLCO-CLC) ! SO4-- - MOLAL(6)= ONEMWF*(CNH4HSO-CNH4HS4 + CLCO-CLC) ! HSO4- -! - WATER = ONEMWF*WATER -! - CLC = WF*CLCO + ONEMWF*CLC - CNH42S4 = WF*CNH42SO + ONEMWF*CNH42S4 - CNH4HS4 = WF*CNH4HSO + ONEMWF*CNH4HS4 -! - IF (LHOOK) CALL DR_HOOK('CALCB1B',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCB1B ***************************************** -! - ENDSUBROUTINE CALCB1B - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCC2 -! *** CASE C2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, FREE ACID (SULRAT < 1.0) -! 2. THERE IS ONLY A LIQUID PHASE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCC2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: LAMDA, KAPA - REAL(KIND=8) :: BB,CC,PARM,PSI - INTEGER :: I -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCC2',0,ZHOOK_HANDLE) - CALAOU =.TRUE. ! Outer loop activity calculation flag - FRST =.TRUE. - CALAIN =.TRUE. -! -! *** SOLVE EQUATIONS ************************************************** -! - LAMDA = W(3) ! NH4HSO4 INITIALLY IN SOLUTION - PSI = W(2)-W(3) ! H2SO4 IN SOLUTION - DO 20 I=1,NSWEEP - PARM = WATER*XK1/GAMA(7)*(GAMA(8)/GAMA(7))**2. - BB = PSI+PARM - CC =-PARM*(LAMDA+PSI) - KAPA = 0.5*(-BB+SQRT(BB*BB-4.0*CC)) -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL(1) = PSI+KAPA ! HI - MOLAL(3) = LAMDA ! NH4I - MOLAL(5) = KAPA ! SO4I - MOLAL(6) = MAX(LAMDA+PSI-KAPA, TINY) ! HSO4I - CH2SO4 = MAX(MOLAL(5)+MOLAL(6)-MOLAL(3), ZERO) ! Free H2SO4 - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (.NOT.CALAIN) GOTO 30 - CALL CALCACT -20 CONTINUE -! -30 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCC2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCC2 ***************************************** -! - ENDSUBROUTINE CALCC2 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCC1 -! *** CASE C1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, FREE ACID (SULRAT < 1.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE: NH4HSO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCC1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: KLO, KHI - REAL(KIND=8) :: DX,X1,X2,X3,Y1,Y2,Y3,YHI,YLO - REAL(KIND=8) :: FUNCC1 - INTEGER :: I -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCC1',0,ZHOOK_HANDLE) - CALAOU = .TRUE. ! Outer loop activity calculation flag - KLO = TINY - KHI = W(3) -! -! *** INITIAL VALUES FOR BISECTION ************************************* -! - X1 = KLO - Y1 = FUNCC1 (X1) - IF (ABS(Y1).LE.EPS) GOTO 50 - YLO= Y1 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO *********************** -! - DX = (KHI-KLO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCC1 (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2) .LT. ZERO) GOTO 20 ! (Y1*Y2 .LT. ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION FOUND -! - YHI= Y2 ! Save Y-value at HI position - IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - GOTO 50 -! -! *** { YLO, YHI } < 0.0 SOLUTION IS ALWAYS UNDERSATURATED WITH NH4HS04 -! - ELSE IF (YLO.LT.ZERO .AND. YHI.LT.ZERO) THEN - GOTO 50 -! -! *** { YLO, YHI } > 0.0 SOLUTION IS ALWAYS SUPERSATURATED WITH NH4HS04 -! - ELSE IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - X1 = KLO - X2 = KLO - GOTO 40 - ELSE - CALL PUSHERR (0001, 'CALCC1') ! WARNING ERROR: NO SOLUTION - GOTO 50 - ENDIF -! -! *** PERFORM BISECTION OF DISSOLVED NH4HSO4 ************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCC1 (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCC1') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN *********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCC1 (X3) -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCC1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCC1 ***************************************** -! - ENDSUBROUTINE CALCC1 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCC1 -! *** CASE C1 ; -! FUNCTION THAT SOLVES THE SYSTEM OF EQUATIONS FOR CASE C1 -! AND RETURNS THE VALUE OF THE ZEROED FUNCTION IN FUNCC1. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CANREGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCC1 (KAPA) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCC1 - REAL(KIND=8) :: KAPA, LAMDA - REAL(KIND=8) :: BB,CC,PAR1,PAR2,PSI - INTEGER :: I -! -! *** SOLVE EQUATIONS ************************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCC1',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. -! - PSI = W(2)-W(3) - DO 20 I=1,NSWEEP - PAR1 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2.0 - PAR2 = XK12*(WATER/GAMA(9))**2.0 - BB = PSI + PAR1 - CC =-PAR1*(PSI+KAPA) - LAMDA = 0.5*(-BB+SQRT(BB*BB-4*CC)) -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ******************************* -! - MOLAL(1) = PSI+LAMDA ! HI - MOLAL(3) = KAPA ! NH4I - MOLAL(5) = LAMDA ! SO4I - MOLAL(6) = MAX (ZERO, PSI+KAPA-LAMDA) ! HSO4I - CNH4HS4 = MAX(W(3)-MOLAL(3), ZERO) ! Solid NH4HSO4 - CH2SO4 = MAX(PSI, ZERO) ! Free H2SO4 - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 30 - ENDIF -20 CONTINUE -! -! *** CALCULATE ZERO FUNCTION ******************************************* -! -!CC30 FUNCC1= (NH4I*HSO4I/PAR2) - ONE -30 FUNCC1= (MOLAL(3)*MOLAL(6)/PAR2) - ONE - IF (LHOOK) CALL DR_HOOK('FUNCC1',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCC1 ******************************************** -! - ENDFUNCTION FUNCC1 - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCD3 -! *** CASE D3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. THERE IS OLNY A LIQUID PHASE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCD3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DELTA,DX,P4,PSI4HI,PSI4LO,YHI,YLO,YY - REAL(KIND=8) :: FUNCD3,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: i - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCD3',0,ZHOOK_HANDLE) - CALL CALCD1A -! -! *** SETUP PARAMETERS ************************************************ -! - CHI1 = CNH4NO3 ! Save from CALCD1 run - CHI2 = CNH42S4 - CHI3 = GHNO3 - CHI4 = GNH3 -! - PSI1 = CNH4NO3 ! ASSIGN INITIAL PSI's - PSI2 = CHI2 - PSI3 = ZERO - PSI4 = ZERO -! - MOLAL(5) = ZERO - MOLAL(6) = ZERO - MOLAL(3) = PSI1 - MOLAL(7) = PSI1 - CALL CALCMR ! Initial water -! - CALAOU = .TRUE. ! Outer loop activity calculation flag - PSI4LO = TINY ! Low limit - PSI4HI = CHI4 ! High limit -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! -60 X1 = PSI4LO - Y1 = FUNCD3 (X1) - IF (ABS(Y1).LE.EPS) THEN - IF (LHOOK) CALL DR_HOOK('CALCD3',1,ZHOOK_HANDLE) - RETURN - ENDIF - YLO= Y1 ! Save Y-value at HI position -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI4HI-PSI4LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCD3 (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION FOUND -! - YHI= Y1 ! Save Y-value at Hi position - IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCD3',1,ZHOOK_HANDLE) - RETURN -! -! *** { YLO, YHI } < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NH3 -! Physically I dont know when this might happen, but I have put this -! branch in for completeness. I assume there is no solution; all NO3 goes to the -! gas phase. -! - ELSE IF (YLO.LT.ZERO .AND. YHI.LT.ZERO) THEN - P4 = TINY ! PSI4LO ! CHI4 - YY = FUNCD3(P4) - GOTO 50 -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NH3 -! This happens when Sul.Rat. = 2.0, so some NH4+ from sulfate evaporates -! and goes to the gas phase ; so I redefine the LO and HI limits of PSI4 -! and proceed again with root tracking. -! - ELSE IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - PSI4HI = PSI4LO - PSI4LO = PSI4LO - 0.1*(PSI1+PSI2) ! No solution; some NH3 evaporates - IF (PSI4LO.LT.-(PSI1+PSI2)) THEN - CALL PUSHERR (0001, 'CALCD3') ! WARNING ERROR: NO SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCD3',1,ZHOOK_HANDLE) - RETURN - ELSE - MOLAL(5) = ZERO - MOLAL(6) = ZERO - MOLAL(3) = PSI1 - MOLAL(7) = PSI1 - CALL CALCMR ! Initial water - GOTO 60 ! Redo root tracking - ENDIF - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCD3 (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*ABS(X1)) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCD3') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCD3 (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF - IF (LHOOK) CALL DR_HOOK('CALCD3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCD3 ****************************************** -! - ENDSUBROUTINE CALCD3 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCD3 -! *** CASE D3 -! FUNCTION THAT SOLVES THE SYSTEM OF EQUATIONS FOR CASE D3 ; -! AND RETURNS THE VALUE OF THE ZEROED FUNCTION IN FUNCD3. -! -!======================================================================= -! - FUNCTION FUNCD3 (P4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: P4,ABB,AHI,BB,DENM,DELTA - INTEGER :: I - REAL(KIND=8) :: FUNCD3 - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCD3',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - PSI4 = P4 -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A2 = XK7*(WATER/GAMA(4))**3.0 - A3 = XK4*R*TEMP*(WATER/GAMA(10))**2.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A7 = XKW *RH*WATER*WATER -! - PSI3 = A3*A4*CHI3*(CHI4-PSI4) - PSI1*(2.D0*PSI2+PSI1+PSI4) - PSI3 = PSI3/(A3*A4*(CHI4-PSI4) + 2.D0*PSI2+PSI1+PSI4) - PSI3 = MIN(MAX(PSI3, ZERO), CHI3) -! - BB = PSI4 - PSI3 -!CCOLD AHI = 0.5*(-BB + SQRT(BB*BB + 4._8*A7)) ! This is correct also -!CC AHI =2.0*A7/(BB+SQRT(BB*BB + 4._8*A7)) ! Avoid overflow when HI->0 - DENM = BB+SQRT(BB*BB + 4._8*A7) - IF (DENM.LE.TINY) THEN ! Avoid overflow when HI->0 - ABB = ABS(BB) - DENM = (BB+ABB) + 2.0*A7/ABB ! Taylor expansion of SQRT - ENDIF - AHI = 2.0*A7/DENM -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL (1) = AHI ! HI - MOLAL (3) = PSI1 + PSI4 + 2.D0*PSI2 ! NH4I - MOLAL (5) = PSI2 ! SO4I - MOLAL (6) = ZERO ! HSO4I - MOLAL (7) = PSI3 + PSI1 ! NO3I - CNH42S4 = CHI2 - PSI2 ! Solid (NH4)2SO4 - CNH4NO3 = ZERO ! Solid NH4NO3 - GHNO3 = CHI3 - PSI3 ! Gas HNO3 - GNH3 = CHI4 - PSI4 ! Gas NH3 - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 CONTINUE -!CC FUNCD3= NH4I/HI/MAX(GNH3,TINY)/A4 - ONE - FUNCD3= MOLAL(3)/MOLAL(1)/MAX(GNH3,TINY)/A4 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCD3',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCD3 ******************************************** -! - ENDFUNCTION FUNCD3 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCD2 -! *** CASE D2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCD2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DELTA,DX,P4,PSI4HI,PSI4LO,YHI,YLO,YY - INTEGER :: I - REAL(KIND=8) :: FUNCD2,X1,X2,X3,Y1,Y2,Y3 - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCD2',0,ZHOOK_HANDLE) - CALL CALCD1A -! -! *** SETUP PARAMETERS ************************************************ -! - CHI1 = CNH4NO3 ! Save from CALCD1 run - CHI2 = CNH42S4 - CHI3 = GHNO3 - CHI4 = GNH3 -! - PSI1 = CNH4NO3 ! ASSIGN INITIAL PSI's - PSI2 = CNH42S4 - PSI3 = ZERO - PSI4 = ZERO -! - MOLAL(5) = ZERO - MOLAL(6) = ZERO - MOLAL(3) = PSI1 - MOLAL(7) = PSI1 - CALL CALCMR ! Initial water -! - CALAOU = .TRUE. ! Outer loop activity calculation flag - PSI4LO = TINY ! Low limit - PSI4HI = CHI4 ! High limit -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! -60 X1 = PSI4LO - Y1 = FUNCD2 (X1) - IF (ABS(Y1).LE.EPS) THEN - IF (LHOOK) CALL DR_HOOK('CALCD2',1,ZHOOK_HANDLE) - RETURN - ENDIF - YLO= Y1 ! Save Y-value at HI position -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI4HI-PSI4LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCD2 (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) THEN -! -! This is done, in case if Y(PSI4LO)>0, but Y(PSI4LO+DX) < 0 (i.e.undersat) -! - IF (Y1 .LE. Y2) GOTO 20 ! (Y1*Y2.LT.ZERO) - ENDIF - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION FOUND -! - YHI= Y1 ! Save Y-value at Hi position - IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCD2',1,ZHOOK_HANDLE) - RETURN -! -! *** { YLO, YHI } < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NH3 -! Physically I dont know when this might happen, but I have put this -! branch in for completeness. I assume there is no solution; all NO3 goes to the -! gas phase. -! - ELSE IF (YLO.LT.ZERO .AND. YHI.LT.ZERO) THEN - P4 = TINY ! PSI4LO ! CHI4 - YY = FUNCD2(P4) - GOTO 50 -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NH3 -! This happens when Sul.Rat. = 2.0, so some NH4+ from sulfate evaporates -! and goes to the gas phase ; so I redefine the LO and HI limits of PSI4 -! and proceed again with root tracking. -! - ELSE IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - PSI4HI = PSI4LO - PSI4LO = PSI4LO - 0.1*(PSI1+PSI2) ! No solution; some NH3 evaporates - IF (PSI4LO.LT.-(PSI1+PSI2)) THEN - CALL PUSHERR (0001, 'CALCD2') ! WARNING ERROR: NO SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCD2',1,ZHOOK_HANDLE) - RETURN - ELSE - MOLAL(5) = ZERO - MOLAL(6) = ZERO - MOLAL(3) = PSI1 - MOLAL(7) = PSI1 - CALL CALCMR ! Initial water - GOTO 60 ! Redo root tracking - ENDIF - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCD2 (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*ABS(X1)) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCD2') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = MIN(X1,X2) ! 0.5*(X1+X2) ! Get "low" side, it's acidic soln. - Y3 = FUNCD2 (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF - IF (LHOOK) CALL DR_HOOK('CALCD2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCD2 ****************************************** -! - ENDSUBROUTINE CALCD2 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCD2 -! *** CASE D2 -! FUNCTION THAT SOLVES THE SYSTEM OF EQUATIONS FOR CASE D2 ; -! AND RETURNS THE VALUE OF THE ZEROED FUNCTION IN FUNCD2. -! -!======================================================================= -! - FUNCTION FUNCD2 (P4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: ABB,AHI,DENM,BB,PSI14 - INTEGER :: I,ISLV - REAL(KIND=8) :: P4 - REAL(KIND=8) :: FUNCD2 - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCD2',0,ZHOOK_HANDLE) - CALL RSTGAM ! Reset activity coefficients to 0.1 - FRST = .TRUE. - CALAIN = .TRUE. - PSI4 = P4 - PSI2 = CHI2 -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A2 = XK7*(WATER/GAMA(4))**3.0 - A3 = XK4*R*TEMP*(WATER/GAMA(10))**2.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A7 = XKW *RH*WATER*WATER -! - IF (CHI2.GT.TINY .AND. WATER.GT.TINY) THEN - PSI14 = PSI1+PSI4 - CALL POLY3 (PSI14,0.25*PSI14**2.,-A2/4.D0, PSI2, ISLV) ! PSI2 - IF (ISLV.EQ.0) THEN - PSI2 = MIN (PSI2, CHI2) - ELSE - PSI2 = ZERO - ENDIF - ENDIF -! - PSI3 = A3*A4*CHI3*(CHI4-PSI4) - PSI1*(2.D0*PSI2+PSI1+PSI4) - PSI3 = PSI3/(A3*A4*(CHI4-PSI4) + 2.D0*PSI2+PSI1+PSI4) -!cc PSI3 = MIN(MAX(PSI3, ZERO), CHI3) -! - BB = PSI4-PSI3 ! (BB > 0, acidic solution, <0 alkaline) -! -! Do not change computation scheme for H+, all others did not work well. -! - DENM = BB+SQRT(BB*BB + 4._8*A7) - IF (DENM.LE.TINY) THEN ! Avoid overflow when HI->0 - ABB = ABS(BB) - DENM = (BB+ABB) + 2._8*A7/ABB ! Taylor expansion of SQRT - ENDIF - AHI = 2._8*A7/DENM -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL (1) = AHI ! HI - MOLAL (3) = PSI1 + PSI4 + 2.D0*PSI2 ! NH4 - MOLAL (5) = PSI2 ! SO4 - MOLAL (6) = ZERO ! HSO4 - MOLAL (7) = PSI3 + PSI1 ! NO3 - CNH42S4 = CHI2 - PSI2 ! Solid (NH4)2SO4 - CNH4NO3 = ZERO ! Solid NH4NO3 - GHNO3 = CHI3 - PSI3 ! Gas HNO3 - GNH3 = CHI4 - PSI4 ! Gas NH3 - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 CONTINUE -!CC FUNCD2= NH4I/HI/MAX(GNH3,TINY)/A4 - ONE - FUNCD2= MOLAL(3)/MOLAL(1)/MAX(GNH3,TINY)/A4 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCD2',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCD2 ******************************************** -! - ENDFUNCTION FUNCD2 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCD1 -! *** CASE D1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4NO3 -! -! THERE ARE TWO REGIMES DEFINED BY RELATIVE HUMIDITY: -! 1. RH < MDRH ; ONLY SOLID PHASE POSSIBLE (SUBROUTINE CALCD1A) -! 2. RH >= MDRH ; LIQUID PHASE POSSIBLE (MDRH REGION) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCD1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - EXTERNAL CALCD1A, CALCD2 -! -! *** REGIME DEPENDS UPON THE AMBIENT RELATIVE HUMIDITY ***************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCD1',0,ZHOOK_HANDLE) - IF (RH.LT.DRMASAN) THEN - SCASE = 'D1 ; SUBCASE 1' ! SOLID PHASE ONLY POSSIBLE - CALL CALCD1A - SCASE = 'D1 ; SUBCASE 1' - ELSE - SCASE = 'D1 ; SUBCASE 2' ! LIQUID & SOLID PHASE POSSIBLE - CALL CALCMDRH (RH, DRMASAN, DRNH4NO3, CALCD1A, CALCD2) - SCASE = 'D1 ; SUBCASE 2' - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCD1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCD1 ****************************************** -! - ENDSUBROUTINE CALCD1 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCD1A -! *** CASE D1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4NO3 -! -! THE SOLID (NH4)2SO4 IS CALCULATED FROM THE SULFATES, WHILE NH4NO3 -! IS CALCULATED FROM NH3-HNO3 EQUILIBRIUM. 'ZE' IS THE AMOUNT OF -! NH4NO3 THAT VOLATIZES WHEN ALL POSSILBE NH4NO3 IS INITIALLY IN -! THE SOLID PHASE. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCD1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: PARM,X,PS,OM,OMPS,DIAK,ZE -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCD1A',0,ZHOOK_HANDLE) - PARM = XK10/(R*TEMP)/(R*TEMP) -! -! *** CALCULATE NH4NO3 THAT VOLATIZES ********************************* -! - CNH42S4 = W(2) - X = MAX(ZERO, MIN(W(3)-2.0*CNH42S4, W(4))) ! MAX NH4NO3 - PS = MAX(W(3) - X - 2.0*CNH42S4, ZERO) - OM = MAX(W(4) - X, ZERO) -! - OMPS = OM+PS - DIAK = SQRT(OMPS*OMPS + 4.0*PARM) ! DIAKRINOUSA - ZE = MIN(X, 0.5*(-OMPS + DIAK)) ! THETIKI RIZA -! -! *** SPECIATION ******************************************************* -! - CNH4NO3 = X - ZE ! Solid NH4NO3 - GNH3 = PS + ZE ! Gas NH3 - GHNO3 = OM + ZE ! Gas HNO3 -! - IF (LHOOK) CALL DR_HOOK('CALCD1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCD1A ***************************************** -! - ENDSUBROUTINE CALCD1A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG5 -! *** CASE G5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG5 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,PSI6HI,PSI6LO - REAL(KIND=8) :: FUNCG5A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: LAMDA - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG5',0,ZHOOK_HANDLE) - CALAOU = .TRUE. - CHI1 = 0.5*W(1) - CHI2 = MAX (W(2)-CHI1, ZERO) - CHI3 = ZERO - CHI4 = MAX (W(3)-2.D0*CHI2, ZERO) - CHI5 = W(4) - CHI6 = W(5) -! - PSI1 = CHI1 - PSI2 = CHI2 - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! - WATER = CHI2/M0(4) + CHI1/M0(2) -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCG5A (X1) - IF (CHI6.LE.TINY) GOTO 50 -!cc IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY) GOTO 50 -!cc IF (WATER .LE. TINY) RETURN ! No water -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCG5A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) Y2 = FUNCG5A (PSI6HI) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCG5A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCG5') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCG5A (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN ! If quadrat.called - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCG5',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG5 ******************************************* -! - ENDSUBROUTINE CALCG5 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCG5A -! *** CASE G5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCG5A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCG5A -! - REAL(KIND=8) :: X,AKK,BB,CC,DD,HI,OHI,SMIN - INTEGER :: I - REAL(KIND=8) :: LAMDA - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCG5A',0,ZHOOK_HANDLE) - PSI6 = X - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A2 = XK7 *(WATER/GAMA(4))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 - AKK = A4*A6 -! -! CALCULATE DISSOCIATION QUANTITIES -! - IF (CHI5.GE.TINY) THEN - PSI5 = PSI6*CHI5/(A6/A5*(CHI6-PSI6) + PSI6) - ELSE - PSI5 = TINY - ENDIF -! -!CC IF(CHI4.GT.TINY) THEN - IF(W(2).GT.TINY) THEN ! Accounts for NH3 evaporation - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - 2._8*PSI2/A4 - DD = MAX(BB*BB-4._8*CC,ZERO) ! Patch proposed by Uma Shankar, 19/11/01 - PSI4 =0.5_8*(-BB - SQRT(DD)) - ELSE - PSI4 = TINY - ENDIF -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (2) = 2.0D0*PSI1 ! NAI - MOLAL (3) = 2.0*PSI2 + PSI4 ! NH4I - MOLAL (4) = PSI6 ! CLI - MOLAL (5) = PSI2 + PSI1 ! SO4I - MOLAL (6) = ZERO - MOLAL (7) = PSI5 ! NO3I -! - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! - GNH3 = MAX(CHI4 - PSI4, TINY) ! Gas NH3 - GHNO3 = MAX(CHI5 - PSI5, TINY) ! Gas HNO3 - GHCL = MAX(CHI6 - PSI6, TINY) ! Gas HCl -! - CNH42S4 = ZERO ! Solid (NH4)2SO4 - CNH4NO3 = ZERO ! Solid NH4NO3 - CNH4CL = ZERO ! Solid NH4Cl -! - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCG5A = MOLAL(1)*MOLAL(4)/GHCL/A6 - ONE -!CC FUNCG5A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCG5A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCG5A ******************************************* -! - ENDFUNCTION FUNCG5A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG4 -! *** CASE G4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG4 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,PSI6LO,PSI6HI - REAL(KIND=8) :: FUNCG4A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: LAMDA - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG4',0,ZHOOK_HANDLE) - CALAOU = .TRUE. - CHI1 = 0.5*W(1) - CHI2 = MAX (W(2)-CHI1, ZERO) - CHI3 = ZERO - CHI4 = MAX (W(3)-2.D0*CHI2, ZERO) - CHI5 = W(4) - CHI6 = W(5) -! - PSI2 = CHI2 - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! - WATER = CHI2/M0(4) + CHI1/M0(2) -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCG4A (X1) - IF (CHI6.LE.TINY) GOTO 50 -!CC IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY .OR. WATER .LE. TINY) GOTO 50 -!CC IF (WATER .LE. TINY) RETURN ! No water -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCG4A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) Y2 = FUNCG4A (PSI6LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCG4A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCG4') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCG4A (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCG4',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG4 ******************************************* -! - ENDSUBROUTINE CALCG4 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCG4A -! *** CASE G4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCG4A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCG4A -! - REAL(KIND=8) :: BB,CC,CLI,DD,HI - REAL(KIND=8) :: X,OHI,SO4I - INTEGER :: I,ISLV - REAL(KIND=8) :: LAMDA, NAI, NH4I, NO3I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCG4A',0,ZHOOK_HANDLE) - PSI6 = X - PSI1 = CHI1 - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A2 = XK7 *(WATER/GAMA(4))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 -! -! CALCULATE DISSOCIATION QUANTITIES -! - IF (CHI5.GE.TINY) THEN - PSI5 = PSI6*CHI5/(A6/A5*(CHI6-PSI6) + PSI6) - ELSE - PSI5 = TINY - ENDIF -! -!CC IF(CHI4.GT.TINY) THEN - IF(W(2).GT.TINY) THEN ! Accounts for NH3 evaporation - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - 2._8*PSI2/A4 - DD = MAX(BB*BB-4._8*CC,ZERO) ! Patch proposed by Uma shankar, 19/11/2001 - PSI4 =0.5_8*(-BB - SQRT(DD)) - ELSE - PSI4 = TINY - ENDIF -! -! CALCULATE CONCENTRATIONS -! - NH4I = 2.0*PSI2 + PSI4 - CLI = PSI6 - SO4I = PSI2 + PSI1 - NO3I = PSI5 - NAI = 2.0D0*PSI1 -! - CALL CALCPH(2._8*SO4I+NO3I+CLI-NAI-NH4I, HI, OHI) -! -! *** Na2SO4 DISSOLUTION -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! PSI1 - CALL POLY3 (PSI2, ZERO, -A1/4.D0, PSI1, ISLV) - IF (ISLV.EQ.0) THEN - PSI1 = MIN (PSI1, CHI1) - ELSE - PSI1 = ZERO - ENDIF - ELSE - PSI1 = ZERO - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL (1) = HI - MOLAL (2) = NAI - MOLAL (3) = NH4I - MOLAL (4) = CLI - MOLAL (5) = SO4I - MOLAL (6) = ZERO - MOLAL (7) = NO3I -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(CHI4 - PSI4, TINY) - GHNO3 = MAX(CHI5 - PSI5, TINY) - GHCL = MAX(CHI6 - PSI6, TINY) -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = ZERO -! -! *** CALCULATE MOLALR ARRAY, WATER AND ACTIVITIES ********************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCG4A = MOLAL(1)*MOLAL(4)/GHCL/A6 - ONE -!CC FUNCG4A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCG4A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCG4A ******************************************* -! - ENDFUNCTION FUNCG4A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG3 -! *** CASE G3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. LIQUID & SOLID PHASE ARE BOTH POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: I - EXTERNAL CALCG1A, CALCG4 -! -! *** REGIME DEPENDS ON THE EXISTANCE OF WATER AND OF THE RH ************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG3',0,ZHOOK_HANDLE) - IF (W(4).GT.TINY .AND. W(5).GT.TINY) THEN ! NO3,CL EXIST, WATER POSSIBLE - SCASE = 'G3 ; SUBCASE 1' - CALL CALCG3A - SCASE = 'G3 ; SUBCASE 1' - ELSE ! NO3, CL NON EXISTANT - SCASE = 'G1 ; SUBCASE 1' - CALL CALCG1A - SCASE = 'G1 ; SUBCASE 1' - ENDIF -! - IF (WATER.LE.TINY) THEN - IF (RH.LT.DRMG3) THEN ! ONLY SOLIDS - WATER = TINY - DO 10 I=1,NIONS - MOLAL(I) = ZERO -10 CONTINUE - CALL CALCG1A - SCASE = 'G3 ; SUBCASE 2' - IF (LHOOK) CALL DR_HOOK('CALCG3',1,ZHOOK_HANDLE) - RETURN - ELSE - SCASE = 'G3 ; SUBCASE 3' ! MDRH REGION (NA2SO4, NH42S4) - CALL CALCMDRH (RH, DRMG3, DRNH42S4, CALCG1A, CALCG4) - SCASE = 'G3 ; SUBCASE 3' - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCG3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG3 ****************************************** -! - ENDSUBROUTINE CALCG3 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG3A -! *** CASE G3 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG3A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,PSI6HI,PSI6LO - REAL(KIND=8) :: FUNCG3A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I,ISLV - REAL(KIND=8) :: LAMDA - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG3A',0,ZHOOK_HANDLE) - CALAOU = .TRUE. - CHI1 = 0.5*W(1) - CHI2 = MAX (W(2)-CHI1, ZERO) - CHI3 = ZERO - CHI4 = MAX (W(3)-2.D0*CHI2, ZERO) - CHI5 = W(4) - CHI6 = W(5) -! - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! - WATER = TINY -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCG3A (X1) - IF (CHI6.LE.TINY) GOTO 50 -!CC IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY .OR. WATER .LE. TINY) GOTO 50 -!CC IF (WATER .LE. TINY) RETURN ! No water -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCG3A (X2) -! - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) Y2 = FUNCG3A (PSI6LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCG3A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCG3A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCG3A (X3) -! -! *** FINAL CALCULATIONS ************************************************* -! -50 CONTINUE -! -! *** Na2SO4 DISSOLUTION -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! PSI1 - CALL POLY3 (PSI2, ZERO, -A1/4.D0, PSI1, ISLV) - IF (ISLV.EQ.0) THEN - PSI1 = MIN (PSI1, CHI1) - ELSE - PSI1 = ZERO - ENDIF - ELSE - PSI1 = ZERO - ENDIF - MOLAL(2) = 2.0D0*PSI1 ! Na+ EFFECT - MOLAL(5) = MOLAL(5) + PSI1 ! SO4 EFFECT - CNA2SO4 = MAX(CHI1 - PSI1, ZERO) ! NA2SO4(s) depletion -! -! *** HSO4 equilibrium -! - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCG3A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG3A ****************************************** -! - ENDSUBROUTINE CALCG3A - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCG3A -! *** CASE G3 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCG3A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCG3A -! - REAL(KIND=8) :: X,BB,CC,DD,HI,OHI,PSI20,SMIN - INTEGER :: I,ISLV - REAL(KIND=8) :: LAMDA - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCG3A',0,ZHOOK_HANDLE) - PSI6 = X - PSI2 = CHI2 - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A2 = XK7 *(WATER/GAMA(4))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 -! -! CALCULATE DISSOCIATION QUANTITIES -! - IF (CHI5.GE.TINY) THEN - PSI5 = PSI6*CHI5/(A6/A5*(CHI6-PSI6) + PSI6) - ELSE - PSI5 = TINY - ENDIF -! -!CC IF(CHI4.GT.TINY) THEN - IF(W(2).GT.TINY) THEN ! Accounts for NH3 evaporation - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - 2._8*PSI2/A4 - DD = MAX(BB*BB-4._8*CC,ZERO) ! Patch proposed by Uma Shankar, 19/11/01 - PSI4 =0.5_8*(-BB - SQRT(DD)) - ELSE - PSI4 = TINY - ENDIF -! - IF (CHI2.GT.TINY .AND. WATER.GT.TINY) THEN - CALL POLY3 (PSI4, PSI4*PSI4/4.D0, -A2/4.D0, PSI20, ISLV) - IF (ISLV.EQ.0) PSI2 = MIN (PSI20, CHI2) - ENDIF -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - MOLAL (2) = ZERO ! Na - MOLAL (3) = 2.0*PSI2 + PSI4 ! NH4I - MOLAL (4) = PSI6 ! CLI - MOLAL (5) = PSI2 ! SO4I - MOLAL (6) = ZERO ! HSO4 - MOLAL (7) = PSI5 ! NO3I -! - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! - GNH3 = MAX(CHI4 - PSI4, TINY) ! Gas NH3 - GHNO3 = MAX(CHI5 - PSI5, TINY) ! Gas HNO3 - GHCL = MAX(CHI6 - PSI6, TINY) ! Gas HCl -! - CNH42S4 = CHI2 - PSI2 ! Solid (NH4)2SO4 - CNH4NO3 = ZERO ! Solid NH4NO3 - CNH4CL = ZERO ! Solid NH4Cl -! - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCG3A = MOLAL(1)*MOLAL(4)/GHCL/A6 - ONE -!CC FUNCG3A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCG3A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCG3A ******************************************* -! - ENDFUNCTION FUNCG3A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG2 -! *** CASE G2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. LIQUID & SOLID PHASE ARE BOTH POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: I - EXTERNAL CALCG1A, CALCG3A, CALCG4 -! -! *** REGIME DEPENDS ON THE EXISTANCE OF NITRATES *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG2',0,ZHOOK_HANDLE) - IF (W(4).GT.TINY) THEN ! NO3 EXISTS, WATER POSSIBLE - SCASE = 'G2 ; SUBCASE 1' - CALL CALCG2A - SCASE = 'G2 ; SUBCASE 1' - ELSE ! NO3 NON EXISTANT, WATER NOT POSSIBLE - SCASE = 'G1 ; SUBCASE 1' - CALL CALCG1A - SCASE = 'G1 ; SUBCASE 1' - ENDIF -! -! *** REGIME DEPENDS ON THE EXISTANCE OF WATER AND OF THE RH ************ -! - IF (WATER.LE.TINY) THEN - IF (RH.LT.DRMG2) THEN ! ONLY SOLIDS - WATER = TINY - DO 10 I=1,NIONS - MOLAL(I) = ZERO -10 CONTINUE - CALL CALCG1A - SCASE = 'G2 ; SUBCASE 2' - ELSE - IF (W(5).GT. TINY) THEN - SCASE = 'G2 ; SUBCASE 3' ! MDRH (NH4CL, NA2SO4, NH42S4) - CALL CALCMDRH (RH, DRMG2, DRNH4CL, CALCG1A, CALCG3A) - SCASE = 'G2 ; SUBCASE 3' - ENDIF - IF (WATER.LE.TINY .AND. RH.GE.DRMG3) THEN - SCASE = 'G2 ; SUBCASE 4' ! MDRH (NA2SO4, NH42S4) - CALL CALCMDRH (RH, DRMG3, DRNH42S4, CALCG1A, CALCG4) - SCASE = 'G2 ; SUBCASE 4' - ELSE - WATER = TINY - DO 20 I=1,NIONS - MOLAL(I) = ZERO -20 CONTINUE - CALL CALCG1A - SCASE = 'G2 ; SUBCASE 2' - ENDIF - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCG2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG2 ****************************************** -! - ENDSUBROUTINE CALCG2 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG2A -! *** CASE G2 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG2A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,PSI6HI,PSI6LO - REAL(KIND=8) :: FUNCG2A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I,ISLV - REAL(KIND=8) :: LAMDA - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG2A',0,ZHOOK_HANDLE) - CALAOU = .TRUE. - CHI1 = 0.5*W(1) - CHI2 = MAX (W(2)-CHI1, ZERO) - CHI3 = ZERO - CHI4 = MAX (W(3)-2.D0*CHI2, ZERO) - CHI5 = W(4) - CHI6 = W(5) -! - PSI6LO = TINY - PSI6HI = CHI6-TINY -! - WATER = TINY -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCG2A (X1) - IF (CHI6.LE.TINY) GOTO 50 -!CC IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY) GOTO 50 -!CC IF (WATER .LE. TINY) GOTO 50 ! No water -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCG2A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) WATER = TINY - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCG2A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCG2A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - IF (X3.LE.TINY2) THEN ! PRACTICALLY NO NITRATES, SO DRY SOLUTION - WATER = TINY - ELSE - Y3 = FUNCG2A (X3) - ENDIF -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE -! -! *** Na2SO4 DISSOLUTION -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! PSI1 - CALL POLY3 (PSI2, ZERO, -A1/4.D0, PSI1, ISLV) - IF (ISLV.EQ.0) THEN - PSI1 = MIN (PSI1, CHI1) - ELSE - PSI1 = ZERO - ENDIF - ELSE - PSI1 = ZERO - ENDIF - MOLAL(2) = 2.0D0*PSI1 ! Na+ EFFECT - MOLAL(5) = MOLAL(5) + PSI1 ! SO4 EFFECT - CNA2SO4 = MAX(CHI1 - PSI1, ZERO) ! NA2SO4(s) depletion -! -! *** HSO4 equilibrium -! - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ AFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 AFFECT - MOLAL(6) = DELTA ! HSO4 AFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCG2A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG2A ****************************************** -! - ENDSUBROUTINE CALCG2A - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCG2A -! *** CASE G2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCG2A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCG2A -! - REAL(KIND=8) :: X,BB,CC,DD,DELT,DENO,HI,OHI,SMIN - REAL(KIND=8) :: PSI20,PSI31,PSI32 - INTEGER :: I,ISLV - REAL(KIND=8) :: LAMDA - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7 - COMMON /CASEG/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, LAMDA, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, & - & A1, A2, A3, A4, A5, A6, A7 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCG2A',0,ZHOOK_HANDLE) - PSI6 = X - PSI2 = CHI2 - PSI3 = ZERO - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A2 = XK7 *(WATER/GAMA(4))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 -! - DENO = MAX(CHI6-PSI6-PSI3, ZERO) - PSI5 = CHI5/((A6/A5)*(DENO/PSI6) + ONE) -! - PSI4 = MIN(PSI5+PSI6,CHI4) -! - IF (CHI2.GT.TINY .AND. WATER.GT.TINY) THEN - CALL POLY3 (PSI4, PSI4*PSI4/4.D0, -A2/4.D0, PSI20, ISLV) - IF (ISLV.EQ.0) PSI2 = MIN (PSI20, CHI2) - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL (2) = ZERO ! NA - MOLAL (3) = 2.0*PSI2 + PSI4 ! NH4I - MOLAL (4) = PSI6 ! CLI - MOLAL (5) = PSI2 ! SO4I - MOLAL (6) = ZERO ! HSO4 - MOLAL (7) = PSI5 ! NO3I -! -!CC MOLAL (1) = MAX(CHI5 - PSI5, TINY)*A5/PSI5 ! HI - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(CHI4 - PSI4, TINY) - GHNO3 = MAX(CHI5 - PSI5, TINY) - GHCL = MAX(CHI6 - PSI6, TINY) -! - CNH42S4 = MAX(CHI2 - PSI2, ZERO) - CNH4NO3 = ZERO -! -! *** NH4Cl(s) calculations -! - A3 = XK6 /(R*TEMP*R*TEMP) - IF (GNH3*GHCL.GT.A3) THEN - DELT = MIN(GNH3, GHCL) - BB = -(GNH3+GHCL) - CC = GNH3*GHCL-A3 - DD = BB*BB - 4.D0*CC - PSI31 = 0.5D0*(-BB + SQRT(DD)) - PSI32 = 0.5D0*(-BB - SQRT(DD)) - IF (DELT-PSI31.GT.ZERO .AND. PSI31.GT.ZERO) THEN - PSI3 = PSI31 - ELSEIF (DELT-PSI32.GT.ZERO .AND. PSI32.GT.ZERO) THEN - PSI3 = PSI32 - ELSE - PSI3 = ZERO - ENDIF - ELSE - PSI3 = ZERO - ENDIF -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(GNH3 - PSI3, TINY) - GHCL = MAX(GHCL - PSI3, TINY) - CNH4CL = PSI3 -! -! *** CALCULATE MOLALR ARRAY, WATER AND ACTIVITIES ********************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 IF (CHI4.LE.TINY) THEN - FUNCG2A = MOLAL(1)*MOLAL(4)/GHCL/A6 - ONE - ELSE - FUNCG2A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE - ENDIF -! - IF (LHOOK) CALL DR_HOOK('FUNCG2A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCG2A ******************************************* -! - ENDFUNCTION FUNCG2A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG1 -! *** CASE G1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4NO3, NH4CL, NA2SO4 -! -! THERE ARE TWO POSSIBLE REGIMES HERE, DEPENDING ON RELATIVE HUMIDITY: -! 1. WHEN RH >= MDRH ; LIQUID PHASE POSSIBLE (MDRH REGION) -! 2. WHEN RH < MDRH ; ONLY SOLID PHASE POSSIBLE (SUBROUTINE CALCG1A) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - EXTERNAL CALCG1A, CALCG2A -! -! *** REGIME DEPENDS UPON THE AMBIENT RELATIVE HUMIDITY ***************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG1',0,ZHOOK_HANDLE) - IF (RH.LT.DRMG1) THEN - SCASE = 'G1 ; SUBCASE 1' - CALL CALCG1A ! SOLID PHASE ONLY POSSIBLE - SCASE = 'G1 ; SUBCASE 1' - ELSE - SCASE = 'G1 ; SUBCASE 2' ! LIQUID & SOLID PHASE POSSIBLE - CALL CALCMDRH (RH, DRMG1, DRNH4NO3, CALCG1A, CALCG2A) - SCASE = 'G1 ; SUBCASE 2' - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCG1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG1 ****************************************** -! - ENDSUBROUTINE CALCG1 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCG1A -! *** CASE G1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4NO3 -! -! SOLID (NH4)2SO4 IS CALCULATED FROM THE SULFATES, WHILE NH4NO3 -! IS CALCULATED FROM NH3-HNO3 EQUILIBRIUM. 'ZE' IS THE AMOUNT OF -! NH4NO3 THAT VOLATIZES WHEN ALL POSSILBE NH4NO3 IS INITIALLY IN -! THE SOLID PHASE. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCG1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A1,A2,ALF,BB,BET,CC,DD,DD1,DD2 - REAL(KIND=8) :: GAM,RTSQ,SQDD,SQDD1,SQDD2,THETA1,THETA2 - REAL(KIND=8) :: LAMDA, LAMDA1, LAMDA2, KAPA, KAPA1, KAPA2 -! -! *** CALCULATE NON VOLATILE SOLIDS *********************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCG1A',0,ZHOOK_HANDLE) - CNA2SO4 = 0.5*W(1) - CNH42S4 = W(2) - CNA2SO4 -! -! *** CALCULATE VOLATILE SPECIES ************************************** -! - ALF = W(3) - 2.0*CNH42S4 - BET = W(5) - GAM = W(4) -! - RTSQ = R*TEMP*R*TEMP - A1 = XK6/RTSQ - A2 = XK10/RTSQ -! - THETA1 = GAM - BET*(A2/A1) - THETA2 = A2/A1 -! -! QUADRATIC EQUATION SOLUTION -! - BB = (THETA1-ALF-BET*(ONE+THETA2))/(ONE+THETA2) - CC = (ALF*BET-A1-BET*THETA1)/(ONE+THETA2) - DD = BB*BB - 4.0D0*CC - IF (DD.LT.ZERO) GOTO 100 ! Solve each reaction seperately -! -! TWO ROOTS FOR KAPA, CHECK AND SEE IF ANY VALID -! - SQDD = SQRT(DD) - KAPA1 = 0.5D0*(-BB+SQDD) - KAPA2 = 0.5D0*(-BB-SQDD) - LAMDA1 = THETA1 + THETA2*KAPA1 - LAMDA2 = THETA1 + THETA2*KAPA2 -! - IF (KAPA1.GE.ZERO .AND. LAMDA1.GE.ZERO) THEN - IF (ALF-KAPA1-LAMDA1.GE.ZERO .AND. & - & BET-KAPA1.GE.ZERO .AND. GAM-LAMDA1.GE.ZERO) THEN - KAPA = KAPA1 - LAMDA= LAMDA1 - GOTO 200 - ENDIF - ENDIF -! - IF (KAPA2.GE.ZERO .AND. LAMDA2.GE.ZERO) THEN - IF (ALF-KAPA2-LAMDA2.GE.ZERO .AND. & - & BET-KAPA2.GE.ZERO .AND. GAM-LAMDA2.GE.ZERO) THEN - KAPA = KAPA2 - LAMDA= LAMDA2 - GOTO 200 - ENDIF - ENDIF -! -! SEPERATE SOLUTION OF NH4CL & NH4NO3 EQUILIBRIA -! -100 KAPA = ZERO - LAMDA = ZERO - DD1 = (ALF+BET)*(ALF+BET) - 4.0D0*(ALF*BET-A1) - DD2 = (ALF+GAM)*(ALF+GAM) - 4.0D0*(ALF*GAM-A2) -! -! NH4CL EQUILIBRIUM -! - IF (DD1.GE.ZERO) THEN - SQDD1 = SQRT(DD1) - KAPA1 = 0.5D0*(ALF+BET + SQDD1) - KAPA2 = 0.5D0*(ALF+BET - SQDD1) -! - IF (KAPA1.GE.ZERO .AND. KAPA1.LE.MIN(ALF,BET)) THEN - KAPA = KAPA1 - ELSE IF (KAPA2.GE.ZERO .AND. KAPA2.LE.MIN(ALF,BET)) THEN - KAPA = KAPA2 - ELSE - KAPA = ZERO - ENDIF - ENDIF -! -! NH4NO3 EQUILIBRIUM -! - IF (DD2.GE.ZERO) THEN - SQDD2 = SQRT(DD2) - LAMDA1= 0.5D0*(ALF+GAM + SQDD2) - LAMDA2= 0.5D0*(ALF+GAM - SQDD2) -! - IF (LAMDA1.GE.ZERO .AND. LAMDA1.LE.MIN(ALF,GAM)) THEN - LAMDA = LAMDA1 - ELSE IF (LAMDA2.GE.ZERO .AND. LAMDA2.LE.MIN(ALF,GAM)) THEN - LAMDA = LAMDA2 - ELSE - LAMDA = ZERO - ENDIF - ENDIF -! -! IF BOTH KAPA, LAMDA ARE > 0, THEN APPLY EXISTANCE CRITERION -! - IF (KAPA.GT.ZERO .AND. LAMDA.GT.ZERO) THEN - IF (BET .LT. LAMDA/THETA1) THEN - KAPA = ZERO - ELSE - LAMDA= ZERO - ENDIF - ENDIF -! -! *** CALCULATE COMPOSITION OF VOLATILE SPECIES *********************** -! -200 CONTINUE - CNH4NO3 = LAMDA - CNH4CL = KAPA -! - GNH3 = MAX(ALF - KAPA - LAMDA, ZERO) - GHNO3 = MAX(GAM - LAMDA, ZERO) - GHCL = MAX(BET - KAPA, ZERO) -! - IF (LHOOK) CALL DR_HOOK('CALCG1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCG1A ***************************************** -! - ENDSUBROUTINE CALCG1A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH6 -! *** CASE H6 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH6 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,FRNA,PSI6HI,PSI6LO - REAL(KIND=8) :: FUNCH6A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH6',0,ZHOOK_HANDLE) - CALAOU = .TRUE. - CHI1 = W(2) ! CNA2SO4 - CHI2 = ZERO ! CNH42S4 - CHI3 = ZERO ! CNH4CL - FRNA = MAX (W(1)-2.D0*CHI1, ZERO) - CHI8 = MIN (FRNA, W(4)) ! CNANO3 - CHI4 = W(3) ! NH3(g) - CHI5 = MAX (W(4)-CHI8, ZERO) ! HNO3(g) - CHI7 = MIN (MAX(FRNA-CHI8, ZERO), W(5)) ! CNACL - CHI6 = MAX (W(5)-CHI7, ZERO) ! HCL(g) -! - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCH6A (X1) - IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCH6A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) Y2 = FUNCH6A (PSI6LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCH6A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCH6') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCH6A (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCH6',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH6 ****************************************** -! - ENDSUBROUTINE CALCH6 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCH6A -! *** CASE H6 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCH6A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCH6A -! - REAL(KIND=8) :: X,A9,BB,CC,DD,HI,OHI,SMIN - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCH6A',0,ZHOOK_HANDLE) - PSI6 = X - PSI1 = CHI1 - PSI2 = ZERO - PSI3 = ZERO - PSI7 = CHI7 - PSI8 = CHI8 - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 - A7 = XK8 *(WATER/GAMA(1))**2.0 - A8 = XK9 *(WATER/GAMA(3))**2.0 - A9 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! -! CALCULATE DISSOCIATION QUANTITIES -! - PSI5 = CHI5*(PSI6+PSI7) - A6/A5*PSI8*(CHI6-PSI6-PSI3) - PSI5 = PSI5/(A6/A5*(CHI6-PSI6-PSI3) + PSI6 + PSI7) - PSI5 = MAX(PSI5, TINY) -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! First try 3rd order soln - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - DD = BB*BB-4._8*CC - PSI4 =0.5_8*(-BB - SQRT(DD)) - PSI4 = MIN(PSI4,CHI4) - ELSE - PSI4 = TINY - ENDIF -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (2) = PSI8 + PSI7 + 2.D0*PSI1 ! NAI - MOLAL (3) = PSI4 ! NH4I - MOLAL (4) = PSI6 + PSI7 ! CLI - MOLAL (5) = PSI2 + PSI1 ! SO4I - MOLAL (6) = ZERO ! HSO4I - MOLAL (7) = PSI5 + PSI8 ! NO3I -! - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! - GNH3 = MAX(CHI4 - PSI4, TINY) - GHNO3 = MAX(CHI5 - PSI5, TINY) - GHCL = MAX(CHI6 - PSI6, TINY) -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNACL = MAX(CHI7 - PSI7, ZERO) - CNANO3 = MAX(CHI8 - PSI8, ZERO) - CNA2SO4 = MAX(CHI1 - PSI1, ZERO) -! - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCH6A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCH6A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCH6A ******************************************* -! - ENDFUNCTION FUNCH6A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH5 -! *** CASE H5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH5 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,FRNA,PSI6HI,PSI6LO - REAL(KIND=8) :: FUNCH5A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** REGIME DEPENDS ON THE EXISTANCE OF NITRATES *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH5',0,ZHOOK_HANDLE) - IF (W(4).LE.TINY .AND. W(5).LE.TINY) THEN - SCASE = 'H5' - CALL CALCH1A - SCASE = 'H5' - IF (LHOOK) CALL DR_HOOK('CALCH5',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** SETUP PARAMETERS ************************************************ -! - CALAOU = .TRUE. - CHI1 = W(2) ! CNA2SO4 - CHI2 = ZERO ! CNH42S4 - CHI3 = ZERO ! CNH4CL - FRNA = MAX (W(1)-2.D0*CHI1, ZERO) - CHI8 = MIN (FRNA, W(4)) ! CNANO3 - CHI4 = W(3) ! NH3(g) - CHI5 = MAX (W(4)-CHI8, ZERO) ! HNO3(g) - CHI7 = MIN (MAX(FRNA-CHI8, ZERO), W(5)) ! CNACL - CHI6 = MAX (W(5)-CHI7, ZERO) ! HCL(g) -! - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCH5A (X1) - IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCH5A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) Y2 = FUNCH5A (PSI6LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCH5A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCH5') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCH5A (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCH5',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH5 ****************************************** -! - ENDSUBROUTINE CALCH5 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCH5A -! *** CASE H5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : NONE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCH5A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCH5A -! - REAL(KIND=8) :: X,A9,AA,BB,CC,DD,HI,OHI,SMIN - INTEGER :: I,ISLV - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCH5A',0,ZHOOK_HANDLE) - PSI6 = X - PSI1 = CHI1 - PSI2 = ZERO - PSI3 = ZERO - PSI7 = CHI7 - PSI8 = CHI8 - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 - A7 = XK8 *(WATER/GAMA(1))**2.0 - A8 = XK9 *(WATER/GAMA(3))**2.0 - A9 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! -! CALCULATE DISSOCIATION QUANTITIES -! - PSI5 = CHI5*(PSI6+PSI7) - A6/A5*PSI8*(CHI6-PSI6-PSI3) - PSI5 = PSI5/(A6/A5*(CHI6-PSI6-PSI3) + PSI6 + PSI7) - PSI5 = MAX(PSI5, TINY) -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! First try 3rd order soln - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - DD = BB*BB-4._8*CC - PSI4 =0.5_8*(-BB - SQRT(DD)) - PSI4 = MIN(PSI4,CHI4) - ELSE - PSI4 = TINY - ENDIF -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! NA2SO4 DISSOLUTION - AA = PSI7+PSI8 - BB = AA*AA - CC =-A1/4.D0 - CALL POLY3 (AA, BB, CC, PSI1, ISLV) - IF (ISLV.EQ.0) THEN - PSI1 = MIN (PSI1, CHI1) - ELSE - PSI1 = ZERO - ENDIF - ENDIF -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (2) = PSI8 + PSI7 + 2.D0*PSI1 ! NAI - MOLAL (3) = PSI4 ! NH4I - MOLAL (4) = PSI6 + PSI7 ! CLI - MOLAL (5) = PSI2 + PSI1 ! SO4I - MOLAL (6) = ZERO - MOLAL (7) = PSI5 + PSI8 ! NO3I -! - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! - GNH3 = MAX(CHI4 - PSI4, TINY) - GHNO3 = MAX(CHI5 - PSI5, TINY) - GHCL = MAX(CHI6 - PSI6, TINY) -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNACL = MAX(CHI7 - PSI7, ZERO) - CNANO3 = MAX(CHI8 - PSI8, ZERO) - CNA2SO4 = MAX(CHI1 - PSI1, ZERO) -! - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCH5A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCH5A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCH5A ******************************************* -! - ENDFUNCTION FUNCH5A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH4 -! *** CASE H4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH4 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,FRNA,PSI6LO,PSI6HI - REAL(KIND=8) :: FUNCH4A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** REGIME DEPENDS ON THE EXISTANCE OF NITRATES *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH4',0,ZHOOK_HANDLE) - IF (W(4).LE.TINY .AND. W(5).LE.TINY) THEN - SCASE = 'H4' - CALL CALCH1A - SCASE = 'H4' - IF (LHOOK) CALL DR_HOOK('CALCH4',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** SETUP PARAMETERS ************************************************ -! - CALAOU = .TRUE. - CHI1 = W(2) ! CNA2SO4 - CHI2 = ZERO ! CNH42S4 - CHI3 = ZERO ! CNH4CL - FRNA = MAX (W(1)-2.D0*CHI1, ZERO) - CHI8 = MIN (FRNA, W(4)) ! CNANO3 - CHI4 = W(3) ! NH3(g) - CHI5 = MAX (W(4)-CHI8, ZERO) ! HNO3(g) - CHI7 = MIN (MAX(FRNA-CHI8, ZERO), W(5)) ! CNACL - CHI6 = MAX (W(5)-CHI7, ZERO) ! HCL(g) -! - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCH4A (X1) - IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCH4A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) Y2 = FUNCH4A (PSI6LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCH4A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCH4') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCH4A (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCH4',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH4 ****************************************** -! - ENDSUBROUTINE CALCH4 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCH4A -! *** CASE H4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCH4A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCH4A -! - REAL(KIND=8) :: X,A9,AA,BB,CC,DD,DELT,HI,OHI,PSI31,PSI32,SMIN - INTEGER :: I,ISLV - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCH4A',0,ZHOOK_HANDLE) - PSI6 = X - PSI1 = CHI1 - PSI2 = ZERO - PSI3 = ZERO - PSI7 = CHI7 - PSI8 = CHI8 - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 - A7 = XK8 *(WATER/GAMA(1))**2.0 - A8 = XK9 *(WATER/GAMA(3))**2.0 - A9 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! -! CALCULATE DISSOCIATION QUANTITIES -! - PSI5 = CHI5*(PSI6+PSI7) - A6/A5*PSI8*(CHI6-PSI6-PSI3) - PSI5 = PSI5/(A6/A5*(CHI6-PSI6-PSI3) + PSI6 + PSI7) - PSI5 = MAX(PSI5, TINY) -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! First try 3rd order soln - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - DD = BB*BB-4._8*CC - PSI4 =0.5_8*(-BB - SQRT(DD)) - PSI4 = MIN(PSI4,CHI4) - ELSE - PSI4 = TINY - ENDIF -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! NA2SO4 DISSOLUTION - AA = PSI7+PSI8 - BB = AA*AA - CC =-A1/4.D0 - CALL POLY3 (AA, BB, CC, PSI1, ISLV) - IF (ISLV.EQ.0) THEN - PSI1 = MIN (PSI1, CHI1) - ELSE - PSI1 = ZERO - ENDIF - ENDIF -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (2) = PSI8 + PSI7 + 2.D0*PSI1 ! NAI - MOLAL (3) = PSI4 ! NH4I - MOLAL (4) = PSI6 + PSI7 ! CLI - MOLAL (5) = PSI2 + PSI1 ! SO4I - MOLAL (6) = ZERO - MOLAL (7) = PSI5 + PSI8 ! NO3I -! - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(CHI4 - PSI4, TINY) - GHNO3 = MAX(CHI5 - PSI5, TINY) - GHCL = MAX(CHI6 - PSI6, TINY) -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNACL = MAX(CHI7 - PSI7, ZERO) - CNANO3 = MAX(CHI8 - PSI8, ZERO) - CNA2SO4 = MAX(CHI1 - PSI1, ZERO) -! -! *** NH4Cl(s) calculations -! - A3 = XK6 /(R*TEMP*R*TEMP) - DELT = MIN(GNH3, GHCL) - BB = -(GNH3+GHCL) - CC = GNH3*GHCL-A3 - DD = BB*BB - 4.D0*CC - PSI31 = 0.5D0*(-BB + SQRT(DD)) - PSI32 = 0.5D0*(-BB - SQRT(DD)) - IF (DELT-PSI31.GT.ZERO .AND. PSI31.GT.ZERO) THEN - PSI3 = PSI31 - ELSEIF (DELT-PSI32.GT.ZERO .AND. PSI32.GT.ZERO) THEN - PSI3 = PSI32 - ELSE - PSI3 = ZERO - ENDIF -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(GNH3 - PSI3, TINY) - GHCL = MAX(GHCL - PSI3, TINY) - CNH4CL = PSI3 -! - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCH4A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCH4A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCH4A ******************************************* -! - ENDFUNCTION FUNCH4A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH3 -! *** CASE H3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,FRNA,PSI6HI,PSI6LO - REAL(KIND=8) :: FUNCH3A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** REGIME DEPENDS ON THE EXISTANCE OF NITRATES *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH3',0,ZHOOK_HANDLE) - IF (W(4).LE.TINY) THEN ! NO3 NOT EXIST, WATER NOT POSSIBLE - SCASE = 'H3' - CALL CALCH1A - SCASE = 'H3' - IF (LHOOK) CALL DR_HOOK('CALCH3',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** SETUP PARAMETERS ************************************************ -! - CALAOU = .TRUE. - CHI1 = W(2) ! CNA2SO4 - CHI2 = ZERO ! CNH42S4 - CHI3 = ZERO ! CNH4CL - FRNA = MAX (W(1)-2.D0*CHI1, ZERO) - CHI8 = MIN (FRNA, W(4)) ! CNANO3 - CHI4 = W(3) ! NH3(g) - CHI5 = MAX (W(4)-CHI8, ZERO) ! HNO3(g) - CHI7 = MIN (MAX(FRNA-CHI8, ZERO), W(5)) ! CNACL - CHI6 = MAX (W(5)-CHI7, ZERO) ! HCL(g) -! - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCH3A (X1) - IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCH3A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (ABS(Y2) .GT. EPS) Y2 = FUNCH3A (PSI6LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCH3A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCH3') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCH3A (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCH3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH3 ****************************************** -! - ENDSUBROUTINE CALCH3 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCH3A -! *** CASE H3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCH3A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCH3A -! - REAL(KIND=8) :: X,A9,AA,BB,CC,DD,DELT,DIAK,HI,OHI - REAL(KIND=8) :: PSI31,PSI32,SMIN - INTEGER :: I,ISLV - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCH3A',0,ZHOOK_HANDLE) - PSI6 = X - PSI1 = CHI1 - PSI2 = ZERO - PSI3 = ZERO - PSI7 = CHI7 - PSI8 = CHI8 - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 - A7 = XK8 *(WATER/GAMA(1))**2.0 - A8 = XK9 *(WATER/GAMA(3))**2.0 - A9 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! -! CALCULATE DISSOCIATION QUANTITIES -! - PSI5 = CHI5*(PSI6+PSI7) - A6/A5*PSI8*(CHI6-PSI6-PSI3) - PSI5 = PSI5/(A6/A5*(CHI6-PSI6-PSI3) + PSI6 + PSI7) - PSI5 = MAX(PSI5, TINY) -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! First try 3rd order soln - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - DD = BB*BB-4._8*CC - PSI4 =0.5_8*(-BB - SQRT(DD)) - PSI4 = MIN(PSI4,CHI4) - ELSE - PSI4 = TINY - ENDIF -! - IF (CHI7.GT.TINY .AND. WATER.GT.TINY) THEN ! NACL DISSOLUTION - DIAK = (PSI8-PSI6)**2.D0 + 4.D0*A7 - PSI7 = 0.5D0*( -(PSI8+PSI6) + SQRT(DIAK) ) - PSI7 = MAX(MIN(PSI7, CHI7), ZERO) - ENDIF -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! NA2SO4 DISSOLUTION - AA = PSI7+PSI8 - BB = AA*AA - CC =-A1/4.D0 - CALL POLY3 (AA, BB, CC, PSI1, ISLV) - IF (ISLV.EQ.0) THEN - PSI1 = MIN (PSI1, CHI1) - ELSE - PSI1 = ZERO - ENDIF - ENDIF -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (2) = PSI8 + PSI7 + 2.D0*PSI1 ! NAI - MOLAL (3) = PSI4 ! NH4I - MOLAL (4) = PSI6 + PSI7 ! CLI - MOLAL (5) = PSI2 + PSI1 ! SO4I - MOLAL (6) = ZERO - MOLAL (7) = PSI5 + PSI8 ! NO3I -! - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(CHI4 - PSI4, TINY) - GHNO3 = MAX(CHI5 - PSI5, TINY) - GHCL = MAX(CHI6 - PSI6, TINY) -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNACL = MAX(CHI7 - PSI7, ZERO) - CNANO3 = MAX(CHI8 - PSI8, ZERO) - CNA2SO4 = MAX(CHI1 - PSI1, ZERO) -! -! *** NH4Cl(s) calculations -! - A3 = XK6 /(R*TEMP*R*TEMP) - DELT = MIN(GNH3, GHCL) - BB = -(GNH3+GHCL) - CC = GNH3*GHCL-A3 - DD = BB*BB - 4.D0*CC - PSI31 = 0.5D0*(-BB + SQRT(DD)) - PSI32 = 0.5D0*(-BB - SQRT(DD)) - IF (DELT-PSI31.GT.ZERO .AND. PSI31.GT.ZERO) THEN - PSI3 = PSI31 - ELSEIF (DELT-PSI32.GT.ZERO .AND. PSI32.GT.ZERO) THEN - PSI3 = PSI32 - ELSE - PSI3 = ZERO - ENDIF -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(GNH3 - PSI3, TINY) - GHCL = MAX(GHCL - PSI3, TINY) - CNH4CL = PSI3 -! - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCH3A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A6/A4 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCH3A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCH3A ******************************************* -! - ENDFUNCTION FUNCH3A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH2 -! *** CASE H2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : NH4Cl, NA2SO4, NANO3, NACL -! -! THERE ARE THREE REGIMES IN THIS CASE: -! 1. NH4NO3(s) POSSIBLE. LIQUID & SOLID AEROSOL (SUBROUTINE CALCH2A) -! 2. NH4NO3(s) NOT POSSIBLE, AND RH < MDRH. SOLID AEROSOL ONLY -! 3. NH4NO3(s) NOT POSSIBLE, AND RH >= MDRH. (MDRH REGION) -! -! REGIMES 2. AND 3. ARE CONSIDERED TO BE THE SAME AS CASES H1A, H2B -! RESPECTIVELY (BECAUSE MDRH POINTS COINCIDE). -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - EXTERNAL CALCH1A, CALCH3 -! -! *** REGIME DEPENDS ON THE EXISTANCE OF NITRATES *********************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH2',0,ZHOOK_HANDLE) - IF (W(4).GT.TINY) THEN ! NO3 EXISTS, WATER POSSIBLE - SCASE = 'H2 ; SUBCASE 1' - CALL CALCH2A - SCASE = 'H2 ; SUBCASE 1' - ELSE ! NO3 NON EXISTANT, WATER NOT POSSIBLE - SCASE = 'H2 ; SUBCASE 1' - CALL CALCH1A - SCASE = 'H2 ; SUBCASE 1' - ENDIF -! - IF (WATER.LE.TINY .AND. RH.LT.DRMH2) THEN ! DRY AEROSOL - SCASE = 'H2 ; SUBCASE 2' -! - ELSEIF (WATER.LE.TINY .AND. RH.GE.DRMH2) THEN ! MDRH OF H2 - SCASE = 'H2 ; SUBCASE 3' - CALL CALCMDRH (RH, DRMH2, DRNANO3, CALCH1A, CALCH3) - SCASE = 'H2 ; SUBCASE 3' - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCH2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH2 ****************************************** -! - ENDSUBROUTINE CALCH2 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH2A -! *** CASE H2 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH2A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DELTA,DX,FRNA,PSI6HI,PSI6LO - REAL(KIND=8) :: FUNCH2A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH2A',0,ZHOOK_HANDLE) - CALAOU = .TRUE. - CHI1 = W(2) ! CNA2SO4 - CHI2 = ZERO ! CNH42S4 - CHI3 = ZERO ! CNH4CL - FRNA = MAX (W(1)-2.D0*CHI1, ZERO) - CHI8 = MIN (FRNA, W(4)) ! CNANO3 - CHI4 = W(3) ! NH3(g) - CHI5 = MAX (W(4)-CHI8, ZERO) ! HNO3(g) - CHI7 = MIN (MAX(FRNA-CHI8, ZERO), W(5)) ! CNACL - CHI6 = MAX (W(5)-CHI7, ZERO) ! HCL(g) -! - PSI6LO = TINY - PSI6HI = CHI6-TINY ! MIN(CHI6-TINY, CHI4) -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI6LO - Y1 = FUNCH2A (X1) - IF (ABS(Y1).LE.EPS .OR. CHI6.LE.TINY) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI6HI-PSI6LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1+DX - Y2 = FUNCH2A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION; IF ABS(Y2)<EPS SOLUTION IS ASSUMED -! - IF (Y2 .GT. EPS) Y2 = FUNCH2A (PSI6LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCH2A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCH2A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCH2A (X3) -! -! *** CALCULATE HSO4 SPECIATION AND RETURN ******************************* -! -50 CONTINUE - IF (MOLAL(1).GT.TINY .AND. MOLAL(5).GT.TINY) THEN - CALL CALCHS4 (MOLAL(1), MOLAL(5), ZERO, DELTA) - MOLAL(1) = MOLAL(1) - DELTA ! H+ EFFECT - MOLAL(5) = MOLAL(5) - DELTA ! SO4 EFFECT - MOLAL(6) = DELTA ! HSO4 EFFECT - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCH2A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH2A ****************************************** -! - ENDSUBROUTINE CALCH2A - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCH2A -! *** CASE H2 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCH2A (X) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCH2A -! - REAL(KIND=8) :: X,A64,A9,AA,BB,CC,DD,DELT,DIAK,HI,OHI - REAL(KIND=8) :: PSI31,PSI32,SMIN - INTEGER :: I,ISLV - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCH2A',0,ZHOOK_HANDLE) - PSI6 = X - PSI1 = CHI1 - PSI2 = ZERO - PSI3 = ZERO - PSI7 = CHI7 - PSI8 = CHI8 - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK5 *(WATER/GAMA(2))**3.0 - A4 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2.0 - A5 = XK4 *R*TEMP*(WATER/GAMA(10))**2.0 - A6 = XK3 *R*TEMP*(WATER/GAMA(11))**2.0 - A7 = XK8 *(WATER/GAMA(1))**2.0 - A8 = XK9 *(WATER/GAMA(3))**2.0 - A64 = (XK3*XK2/XKW)*(GAMA(10)/GAMA(5)/GAMA(11))**2.0 - A64 = A64*(R*TEMP*WATER)**2.0 - A9 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! -! CALCULATE DISSOCIATION QUANTITIES -! - PSI5 = CHI5*(PSI6+PSI7) - A6/A5*PSI8*(CHI6-PSI6-PSI3) - PSI5 = PSI5/(A6/A5*(CHI6-PSI6-PSI3) + PSI6 + PSI7) - PSI5 = MAX(PSI5, TINY) -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! First try 3rd order soln - BB =-(CHI4 + PSI6 + PSI5 + 1._8/A4) - CC = CHI4*(PSI5+PSI6) - DD = BB*BB-4._8*CC - PSI4 =0.5_8*(-BB - SQRT(DD)) - PSI4 = MIN(PSI4,CHI4) - ELSE - PSI4 = TINY - ENDIF -! - IF (CHI7.GT.TINY .AND. WATER.GT.TINY) THEN ! NACL DISSOLUTION - DIAK = (PSI8-PSI6)**2.D0 + 4.D0*A7 - PSI7 = 0.5D0*( -(PSI8+PSI6) + SQRT(DIAK) ) - PSI7 = MAX(MIN(PSI7, CHI7), ZERO) - ENDIF -! - IF (CHI8.GT.TINY .AND. WATER.GT.TINY) THEN ! NANO3 DISSOLUTION - DIAK = (PSI7-PSI5)**2.D0 + 4.D0*A8 - PSI8 = 0.5D0*( -(PSI7+PSI5) + SQRT(DIAK) ) - PSI8 = MAX(MIN(PSI8, CHI8), ZERO) - ENDIF -! - IF (CHI1.GT.TINY .AND. WATER.GT.TINY) THEN ! NA2SO4 DISSOLUTION - AA = PSI7+PSI8 - BB = AA*AA - CC =-A1/4.D0 - CALL POLY3 (AA, BB, CC, PSI1, ISLV) - IF (ISLV.EQ.0) THEN - PSI1 = MIN (PSI1, CHI1) - ELSE - PSI1 = ZERO - ENDIF - ENDIF -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (2) = PSI8 + PSI7 + 2.D0*PSI1 ! NAI - MOLAL (3) = PSI4 ! NH4I - MOLAL (4) = PSI6 + PSI7 ! CLI - MOLAL (5) = PSI2 + PSI1 ! SO4I - MOLAL (6) = ZERO ! HSO4I - MOLAL (7) = PSI5 + PSI8 ! NO3I -! - SMIN = 2._8*MOLAL(5)+MOLAL(7)+MOLAL(4)-MOLAL(2)-MOLAL(3) - CALL CALCPH (SMIN, HI, OHI) - MOLAL (1) = HI -! - GNH3 = MAX(CHI4 - PSI4, TINY) - GHNO3 = MAX(CHI5 - PSI5, TINY) - GHCL = MAX(CHI6 - PSI6, TINY) -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNACL = MAX(CHI7 - PSI7, ZERO) - CNANO3 = MAX(CHI8 - PSI8, ZERO) - CNA2SO4 = MAX(CHI1 - PSI1, ZERO) -! -! *** NH4Cl(s) calculations -! - A3 = XK6 /(R*TEMP*R*TEMP) - DELT = MIN(GNH3, GHCL) - BB = -(GNH3+GHCL) - CC = GNH3*GHCL-A3 - DD = BB*BB - 4.D0*CC - PSI31 = 0.5D0*(-BB + SQRT(DD)) - PSI32 = 0.5D0*(-BB - SQRT(DD)) - IF (DELT-PSI31.GT.ZERO .AND. PSI31.GT.ZERO) THEN - PSI3 = PSI31 - ELSEIF (DELT-PSI32.GT.ZERO .AND. PSI32.GT.ZERO) THEN - PSI3 = PSI32 - ELSE - PSI3 = ZERO - ENDIF -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! - GNH3 = MAX(GNH3 - PSI3, TINY) - GHCL = MAX(GHCL - PSI3, TINY) - CNH4CL = PSI3 -! - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 FUNCH2A = MOLAL(3)*MOLAL(4)/GHCL/GNH3/A64 - ONE -! - IF (LHOOK) CALL DR_HOOK('FUNCH2A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCH2A ******************************************* -! - ENDFUNCTION FUNCH2A - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH1 -! *** CASE H1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NA2SO4 -! -! THERE ARE TWO POSSIBLE REGIMES HERE, DEPENDING ON RELATIVE HUMIDITY: -! 1. WHEN RH >= MDRH ; LIQUID PHASE POSSIBLE (MDRH REGION) -! 2. WHEN RH < MDRH ; ONLY SOLID PHASE POSSIBLE (SUBROUTINE CALCH1A) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - EXTERNAL CALCH1A, CALCH2A -! -! *** REGIME DEPENDS UPON THE AMBIENT RELATIVE HUMIDITY ***************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH1',0,ZHOOK_HANDLE) - IF (RH.LT.DRMH1) THEN - SCASE = 'H1 ; SUBCASE 1' - CALL CALCH1A ! SOLID PHASE ONLY POSSIBLE - SCASE = 'H1 ; SUBCASE 1' - ELSE - SCASE = 'H1 ; SUBCASE 2' ! LIQUID & SOLID PHASE POSSIBLE - CALL CALCMDRH (RH, DRMH1, DRNH4NO3, CALCH1A, CALCH2A) - SCASE = 'H1 ; SUBCASE 2' - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCH1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH1 ****************************************** -! - ENDSUBROUTINE CALCH1 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCH1A -! *** CASE H1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NANO3, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCH1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A1,A2,ALF,BB,BET,CC,CLFR,DD,DD1,DD2,GAM,RTSQ - REAL(KIND=8) :: SQDD,SQDD1,SQDD2,THETA1,THETA2 - REAL(KIND=8) :: LAMDA, LAMDA1, LAMDA2, KAPA, KAPA1, KAPA2, NAFR, & - & NO3FR -! -! *** CALCULATE NON VOLATILE SOLIDS *********************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCH1A',0,ZHOOK_HANDLE) - CNA2SO4 = W(2) - CNH42S4 = ZERO - NAFR = MAX (W(1)-2*CNA2SO4, ZERO) - CNANO3 = MIN (NAFR, W(4)) - NO3FR = MAX (W(4)-CNANO3, ZERO) - CNACL = MIN (MAX(NAFR-CNANO3, ZERO), W(5)) - CLFR = MAX (W(5)-CNACL, ZERO) -! -! *** CALCULATE VOLATILE SPECIES ************************************** -! - ALF = W(3) ! FREE NH3 - BET = CLFR ! FREE CL - GAM = NO3FR ! FREE NO3 -! - RTSQ = R*TEMP*R*TEMP - A1 = XK6/RTSQ - A2 = XK10/RTSQ -! - THETA1 = GAM - BET*(A2/A1) - THETA2 = A2/A1 -! -! QUADRATIC EQUATION SOLUTION -! - BB = (THETA1-ALF-BET*(ONE+THETA2))/(ONE+THETA2) - CC = (ALF*BET-A1-BET*THETA1)/(ONE+THETA2) - DD = BB*BB - 4.0D0*CC - IF (DD.LT.ZERO) GOTO 100 ! Solve each reaction seperately -! -! TWO ROOTS FOR KAPA, CHECK AND SEE IF ANY VALID -! - SQDD = SQRT(DD) - KAPA1 = 0.5D0*(-BB+SQDD) - KAPA2 = 0.5D0*(-BB-SQDD) - LAMDA1 = THETA1 + THETA2*KAPA1 - LAMDA2 = THETA1 + THETA2*KAPA2 -! - IF (KAPA1.GE.ZERO .AND. LAMDA1.GE.ZERO) THEN - IF (ALF-KAPA1-LAMDA1.GE.ZERO .AND. & - & BET-KAPA1.GE.ZERO .AND. GAM-LAMDA1.GE.ZERO) THEN - KAPA = KAPA1 - LAMDA= LAMDA1 - GOTO 200 - ENDIF - ENDIF -! - IF (KAPA2.GE.ZERO .AND. LAMDA2.GE.ZERO) THEN - IF (ALF-KAPA2-LAMDA2.GE.ZERO .AND. & - & BET-KAPA2.GE.ZERO .AND. GAM-LAMDA2.GE.ZERO) THEN - KAPA = KAPA2 - LAMDA= LAMDA2 - GOTO 200 - ENDIF - ENDIF -! -! SEPERATE SOLUTION OF NH4CL & NH4NO3 EQUILIBRIA -! -100 KAPA = ZERO - LAMDA = ZERO - DD1 = (ALF+BET)*(ALF+BET) - 4.0D0*(ALF*BET-A1) - DD2 = (ALF+GAM)*(ALF+GAM) - 4.0D0*(ALF*GAM-A2) -! -! NH4CL EQUILIBRIUM -! - IF (DD1.GE.ZERO) THEN - SQDD1 = SQRT(DD1) - KAPA1 = 0.5D0*(ALF+BET + SQDD1) - KAPA2 = 0.5D0*(ALF+BET - SQDD1) -! - IF (KAPA1.GE.ZERO .AND. KAPA1.LE.MIN(ALF,BET)) THEN - KAPA = KAPA1 - ELSE IF (KAPA2.GE.ZERO .AND. KAPA2.LE.MIN(ALF,BET)) THEN - KAPA = KAPA2 - ELSE - KAPA = ZERO - ENDIF - ENDIF -! -! NH4NO3 EQUILIBRIUM -! - IF (DD2.GE.ZERO) THEN - SQDD2 = SQRT(DD2) - LAMDA1= 0.5D0*(ALF+GAM + SQDD2) - LAMDA2= 0.5D0*(ALF+GAM - SQDD2) -! - IF (LAMDA1.GE.ZERO .AND. LAMDA1.LE.MIN(ALF,GAM)) THEN - LAMDA = LAMDA1 - ELSE IF (LAMDA2.GE.ZERO .AND. LAMDA2.LE.MIN(ALF,GAM)) THEN - LAMDA = LAMDA2 - ELSE - LAMDA = ZERO - ENDIF - ENDIF -! -! IF BOTH KAPA, LAMDA ARE > 0, THEN APPLY EXISTANCE CRITERION -! - IF (KAPA.GT.ZERO .AND. LAMDA.GT.ZERO) THEN - IF (BET .LT. LAMDA/THETA1) THEN - KAPA = ZERO - ELSE - LAMDA= ZERO - ENDIF - ENDIF -! -! *** CALCULATE COMPOSITION OF VOLATILE SPECIES *********************** -! -200 CONTINUE - CNH4NO3 = LAMDA - CNH4CL = KAPA -! - GNH3 = ALF - KAPA - LAMDA - GHNO3 = GAM - LAMDA - GHCL = BET - KAPA -! - IF (LHOOK) CALL DR_HOOK('CALCH1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCH1A ***************************************** -! - ENDSUBROUTINE CALCH1A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI6 -! *** CASE I6 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI6 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: BB,CC,DD - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI6',0,ZHOOK_HANDLE) - CALL CALCI1A -! -! *** SETUP PARAMETERS ************************************************ -! - CHI1 = CNH4HS4 ! Save from CALCI1 run - CHI2 = CLC - CHI3 = CNAHSO4 - CHI4 = CNA2SO4 - CHI5 = CNH42S4 -! - PSI1 = CNH4HS4 ! ASSIGN INITIAL PSI's - PSI2 = CLC - PSI3 = CNAHSO4 - PSI4 = CNA2SO4 - PSI5 = CNH42S4 -! - CALAOU = .TRUE. ! Outer loop activity calculation flag - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A6 = XK1 *WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! -! CALCULATE DISSOCIATION QUANTITIES -! - BB = PSI2 + PSI4 + PSI5 + A6 ! PSI6 - CC =-A6*(PSI2 + PSI3 + PSI1) - DD = BB*BB - 4.D0*CC - PSI6 = 0.5D0*(-BB + SQRT(DD)) -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (1) = PSI6 ! HI - MOLAL (2) = 2.D0*PSI4 + PSI3 ! NAI - MOLAL (3) = 3.D0*PSI2 + 2.D0*PSI5 + PSI1 ! NH4I - MOLAL (5) = PSI2 + PSI4 + PSI5 + PSI6 ! SO4I - MOLAL (6) = PSI2 + PSI3 + PSI1 - PSI6 ! HSO4I - CLC = ZERO - CNAHSO4 = ZERO - CNA2SO4 = CHI4 - PSI4 - CNH42S4 = ZERO - CNH4HS4 = ZERO - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -20 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCI6',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCI6 ***************************************** -! - ENDSUBROUTINE CALCI6 - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI5 -! *** CASE I5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI5 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,PSI4LO,PSI4HI,YHI,YLO - REAL(KIND=8) :: FUNCI5A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI5',0,ZHOOK_HANDLE) - CALL CALCI1A -! -! *** SETUP PARAMETERS ************************************************ -! - CHI1 = CNH4HS4 ! Save from CALCI1 run - CHI2 = CLC - CHI3 = CNAHSO4 - CHI4 = CNA2SO4 - CHI5 = CNH42S4 -! - PSI1 = CNH4HS4 ! ASSIGN INITIAL PSI's - PSI2 = CLC - PSI3 = CNAHSO4 - PSI4 = ZERO - PSI5 = CNH42S4 -! - CALAOU =.TRUE. ! Outer loop activity calculation flag - PSI4LO = ZERO ! Low limit - PSI4HI = CHI4 ! High limit -! -! *** IF NA2SO4(S) =0, CALL FUNCI5B FOR Y4=0 *************************** -! - IF (CHI4.LE.TINY) THEN - Y1 = FUNCI5A (ZERO) - GOTO 50 - ENDIF -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI4HI - Y1 = FUNCI5A (X1) - YHI= Y1 ! Save Y-value at HI position -! -! *** YHI < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NA2SO4 ** -! - IF (ABS(Y1).LE.EPS .OR. YHI.LT.ZERO) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI4HI-PSI4LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1-DX - Y2 = FUNCI5A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NH4CL -! - YLO= Y1 ! Save Y-value at Hi position - IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - Y3 = FUNCI5A (ZERO) - GOTO 50 - ELSE IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - GOTO 50 - ELSE - CALL PUSHERR (0001, 'CALCI5') ! WARNING ERROR: NO SOLUTION - GOTO 50 - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCI5A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCI5') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCI5A (X3) -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCI5',1,ZHOOK_HANDLE) - -! *** END OF SUBROUTINE CALCI5 ***************************************** -! - ENDSUBROUTINE CALCI5 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCI5A -! *** CASE I5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCI5A (P4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: P4,BB,CC,DD - INTEGER :: I - REAL(KIND=8) :: FUNCI5A - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCI5A',0,ZHOOK_HANDLE) - PSI4 = P4 ! PSI3 already assigned in FUNCI5A - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A4 = XK5 *(WATER/GAMA(2))**3.0 - A5 = XK7 *(WATER/GAMA(4))**3.0 - A6 = XK1 *WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. -! -! CALCULATE DISSOCIATION QUANTITIES -! - BB = PSI2 + PSI4 + PSI5 + A6 ! PSI6 - CC =-A6*(PSI2 + PSI3 + PSI1) - DD = BB*BB - 4.D0*CC - PSI6 = 0.5D0*(-BB + SQRT(DD)) -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (1) = PSI6 ! HI - MOLAL (2) = 2.D0*PSI4 + PSI3 ! NAI - MOLAL (3) = 3.D0*PSI2 + 2.D0*PSI5 + PSI1 ! NH4I - MOLAL (5) = PSI2 + PSI4 + PSI5 + PSI6 ! SO4I - MOLAL (6) = PSI2 + PSI3 + PSI1 - PSI6 ! HSO4I - CLC = ZERO - CNAHSO4 = ZERO - CNA2SO4 = CHI4 - PSI4 - CNH42S4 = ZERO - CNH4HS4 = ZERO - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 A4 = XK5 *(WATER/GAMA(2))**3.0 - FUNCI5A= MOLAL(5)*MOLAL(2)*MOLAL(2)/A4 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCI5A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCI5A ******************************************** -! - ENDFUNCTION FUNCI5A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI4 -! *** CASE I4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI4 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,PSI4HI,PSI4LO,YHI,YLO - REAL(KIND=8) :: FUNCI4A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI4',0,ZHOOK_HANDLE) - CALL CALCI1A -! -! *** SETUP PARAMETERS ************************************************ -! - CHI1 = CNH4HS4 ! Save from CALCI1 run - CHI2 = CLC - CHI3 = CNAHSO4 - CHI4 = CNA2SO4 - CHI5 = CNH42S4 -! - PSI1 = CNH4HS4 ! ASSIGN INITIAL PSI's - PSI2 = CLC - PSI3 = CNAHSO4 - PSI4 = ZERO - PSI5 = ZERO -! - CALAOU = .TRUE. ! Outer loop activity calculation flag - PSI4LO = ZERO ! Low limit - PSI4HI = CHI4 ! High limit -! -! *** IF NA2SO4(S) =0, CALL FUNCI4B FOR Y4=0 *************************** -! - IF (CHI4.LE.TINY) THEN - Y1 = FUNCI4A (ZERO) - GOTO 50 - ENDIF -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI4HI - Y1 = FUNCI4A (X1) - YHI= Y1 ! Save Y-value at HI position -! -! *** YHI < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NA2SO4 ** -! - IF (ABS(Y1).LE.EPS .OR. YHI.LT.ZERO) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI4HI-PSI4LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1-DX - Y2 = FUNCI4A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NH4CL -! - YLO= Y1 ! Save Y-value at Hi position - IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - Y3 = FUNCI4A (ZERO) - GOTO 50 - ELSE IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - GOTO 50 - ELSE - CALL PUSHERR (0001, 'CALCI4') ! WARNING ERROR: NO SOLUTION - GOTO 50 - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCI4A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCI4') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCI4A (X3) -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCI4',1,ZHOOK_HANDLE) - -! *** END OF SUBROUTINE CALCI4 ***************************************** -! - ENDSUBROUTINE CALCI4 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCI4A -! *** CASE I4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCI4A (P4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCI4A - REAL(KIND=8) :: P4,BB,CC,DD - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCI4A',0,ZHOOK_HANDLE) - PSI4 = P4 ! PSI3 already assigned in FUNCI4A - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A4 = XK5 *(WATER/GAMA(2))**3.0 - A5 = XK7 *(WATER/GAMA(4))**3.0 - A6 = XK1 *WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. - A7 = SQRT(A4/A5) -! -! CALCULATE DISSOCIATION QUANTITIES -! - BB = PSI2 + PSI4 + PSI5 + A6 ! PSI6 - CC =-A6*(PSI2 + PSI3 + PSI1) - DD = BB*BB - 4.D0*CC - PSI6 = 0.5D0*(-BB + SQRT(DD)) -! - PSI5 = (PSI3 + 2.D0*PSI4 - A7*(3.D0*PSI2 + PSI1))/2.D0/A7 - PSI5 = MIN (PSI5, CHI5) -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (1) = PSI6 ! HI - MOLAL (2) = 2.D0*PSI4 + PSI3 ! NAI - MOLAL (3) = 3.D0*PSI2 + 2.D0*PSI5 + PSI1 ! NH4I - MOLAL (5) = PSI2 + PSI4 + PSI5 + PSI6 ! SO4I - MOLAL (6) = PSI2 + PSI3 + PSI1 - PSI6 ! HSO4I - CLC = ZERO - CNAHSO4 = ZERO - CNA2SO4 = CHI4 - PSI4 - CNH42S4 = CHI5 - PSI5 - CNH4HS4 = ZERO - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 A4 = XK5 *(WATER/GAMA(2))**3.0 - FUNCI4A= MOLAL(5)*MOLAL(2)*MOLAL(2)/A4 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCI4A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCI4A ******************************************** -! - ENDFUNCTION FUNCI4A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI3 -! *** CASE I3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4, NAHSO4, LC -! -! THERE ARE THREE REGIMES IN THIS CASE: -! 1.(NA,NH4)HSO4(s) POSSIBLE. LIQUID & SOLID AEROSOL (SUBROUTINE CALCI3A) -! 2.(NA,NH4)HSO4(s) NOT POSSIBLE, AND RH < MDRH. SOLID AEROSOL ONLY -! 3.(NA,NH4)HSO4(s) NOT POSSIBLE, AND RH >= MDRH. SOLID & LIQUID AEROSOL -! -! REGIMES 2. AND 3. ARE CONSIDERED TO BE THE SAME AS CASES I1A, I2B -! RESPECTIVELY -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: I - EXTERNAL CALCI1A, CALCI4 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI3',0,ZHOOK_HANDLE) - CALL CALCI1A -! -! *** REGIME DEPENDS UPON THE POSSIBLE SOLIDS & RH ********************** -! - IF (CNH4HS4.GT.TINY .OR. CNAHSO4.GT.TINY) THEN - SCASE = 'I3 ; SUBCASE 1' - CALL CALCI3A ! FULL SOLUTION - SCASE = 'I3 ; SUBCASE 1' - ENDIF -! - IF (WATER.LE.TINY) THEN - IF (RH.LT.DRMI3) THEN ! SOLID SOLUTION - WATER = TINY - DO 10 I=1,NIONS - MOLAL(I) = ZERO -10 CONTINUE - CALL CALCI1A - SCASE = 'I3 ; SUBCASE 2' -! - ELSEIF (RH.GE.DRMI3) THEN ! MDRH OF I3 - SCASE = 'I3 ; SUBCASE 3' - CALL CALCMDRH (RH, DRMI3, DRLC, CALCI1A, CALCI4) - SCASE = 'I3 ; SUBCASE 3' - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCI3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCI3 ****************************************** -! - ENDSUBROUTINE CALCI3 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI3A -! *** CASE I3 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4, LC -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI3A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,PSI2HI,PSI2LO,YHI - REAL(KIND=8) :: FUNCI3A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI3A',0,ZHOOK_HANDLE) - CALL CALCI1A ! Needed when called from CALCMDRH -! -! *** SETUP PARAMETERS ************************************************ -! - CHI1 = CNH4HS4 ! Save from CALCI1 run - CHI2 = CLC - CHI3 = CNAHSO4 - CHI4 = CNA2SO4 - CHI5 = CNH42S4 -! - PSI1 = CNH4HS4 ! ASSIGN INITIAL PSI's - PSI2 = ZERO - PSI3 = CNAHSO4 - PSI4 = ZERO - PSI5 = ZERO -! - CALAOU = .TRUE. ! Outer loop activity calculation flag - PSI2LO = ZERO ! Low limit - PSI2HI = CHI2 ! High limit -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI2HI - Y1 = FUNCI3A (X1) - YHI= Y1 ! Save Y-value at HI position -! -! *** YHI < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH LC ********* -! - IF (YHI.LT.EPS) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI2HI-PSI2LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = MAX(X1-DX, PSI2LO) - Y2 = FUNCI3A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH LC -! - IF (Y2.GT.EPS) Y2 = FUNCI3A (ZERO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCI3A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCI3A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCI3A (X3) -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCI3A',1,ZHOOK_HANDLE) - -! *** END OF SUBROUTINE CALCI3A ***************************************** -! - ENDSUBROUTINE CALCI3A - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCI3A -! *** CASE I3 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4, LC -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCI3A (P2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,PSI4HI,PSI4LO,YHI - REAL(KIND=8) :: FUNCI3B,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! - REAL(KIND=8) :: FUNCI3A - REAL(KIND=8) :: P2 -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCI3A',0,ZHOOK_HANDLE) - PSI2 = P2 ! Save PSI2 in COMMON BLOCK - PSI4LO = ZERO ! Low limit for PSI4 - PSI4HI = CHI4 ! High limit for PSI4 -! -! *** IF NH3 =0, CALL FUNCI3B FOR Y4=0 ******************************** -! - IF (CHI4.LE.TINY) THEN - FUNCI3A = FUNCI3B (ZERO) - GOTO 50 - ENDIF -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI4HI - Y1 = FUNCI3B (X1) - IF (ABS(Y1).LE.EPS) GOTO 50 - YHI= Y1 ! Save Y-value at HI position -! -! *** YHI < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NA2SO4 ***** -! - IF (YHI.LT.ZERO) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI4HI-PSI4LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = MAX(X1-DX, PSI4LO) - Y2 = FUNCI3B (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NA2SO4 -! - IF (Y2.GT.EPS) Y2 = FUNCI3B (PSI4LO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCI3B (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0004, 'FUNCI3A') ! WARNING ERROR: NO CONVERGENCE -! -! *** INNER LOOP CONVERGED ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCI3B (X3) -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -50 A2 = XK13*(WATER/GAMA(13))**5.0 - FUNCI3A = MOLAL(5)*MOLAL(6)*MOLAL(3)**3.D0/A2 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCI3A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCI3A ******************************************* -! - ENDFUNCTION FUNCI3A - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCI3B -! *** CASE I3 ; SUBCASE 2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4, LC -! -! SOLUTION IS SAVED IN COMMON BLOCK /CASE/ -! -!======================================================================= -! - FUNCTION FUNCI3B (P4) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FUNCI3B -! - REAL(KIND=8) :: P4,BB,CC,DD - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCI3B',0,ZHOOK_HANDLE) - PSI4 = P4 -! -! *** SETUP PARAMETERS ************************************************ -! - FRST = .TRUE. - CALAIN = .TRUE. -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A4 = XK5*(WATER/GAMA(2))**3.0 - A5 = XK7*(WATER/GAMA(4))**3.0 - A6 = XK1*WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. - A7 = SQRT(A4/A5) -! -! CALCULATE DISSOCIATION QUANTITIES -! - BB = PSI2 + PSI4 + PSI5 + A6 ! PSI6 - CC =-A6*(PSI2 + PSI3 + PSI1) - DD = BB*BB - 4.D0*CC - PSI6 = 0.5D0*(-BB + SQRT(DD)) -! - PSI5 = (PSI3 + 2.D0*PSI4 - A7*(3.D0*PSI2 + PSI1))/2.D0/A7 - PSI5 = MIN (PSI5, CHI5) -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL(1) = PSI6 ! HI - MOLAL(2) = 2.D0*PSI4 + PSI3 ! NAI - MOLAL(3) = 3.D0*PSI2 + 2.D0*PSI5 + PSI1 ! NH4I - MOLAL(5) = PSI2 + PSI4 + PSI5 + PSI6 ! SO4I - MOLAL(6) = MAX(PSI2 + PSI3 + PSI1 - PSI6, TINY) ! HSO4I - CLC = MAX(CHI2 - PSI2, ZERO) - CNAHSO4 = ZERO - CNA2SO4 = MAX(CHI4 - PSI4, ZERO) - CNH42S4 = MAX(CHI5 - PSI5, ZERO) - CNH4HS4 = ZERO - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 A4 = XK5 *(WATER/GAMA(2))**3.0 - FUNCI3B= MOLAL(5)*MOLAL(2)*MOLAL(2)/A4 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCI3B',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCI3B ******************************************** -! - ENDFUNCTION FUNCI3B -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI2 -! *** CASE I2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4, NAHSO4, LC -! -! THERE ARE THREE REGIMES IN THIS CASE: -! 1. NH4HSO4(s) POSSIBLE. LIQUID & SOLID AEROSOL (SUBROUTINE CALCI2A) -! 2. NH4HSO4(s) NOT POSSIBLE, AND RH < MDRH. SOLID AEROSOL ONLY -! 3. NH4HSO4(s) NOT POSSIBLE, AND RH >= MDRH. SOLID & LIQUID AEROSOL -! -! REGIMES 2. AND 3. ARE CONSIDERED TO BE THE SAME AS CASES I1A, I2B -! RESPECTIVELY -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - INTEGER :: I - EXTERNAL CALCI1A, CALCI3A -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI2',0,ZHOOK_HANDLE) - CALL CALCI1A -! -! *** REGIME DEPENDS UPON THE POSSIBLE SOLIDS & RH ********************** -! - IF (CNH4HS4.GT.TINY) THEN - SCASE = 'I2 ; SUBCASE 1' - CALL CALCI2A - SCASE = 'I2 ; SUBCASE 1' - ENDIF -! - IF (WATER.LE.TINY) THEN - IF (RH.LT.DRMI2) THEN ! SOLID SOLUTION ONLY - WATER = TINY - DO 10 I=1,NIONS - MOLAL(I) = ZERO -10 CONTINUE - CALL CALCI1A - SCASE = 'I2 ; SUBCASE 2' -! - ELSEIF (RH.GE.DRMI2) THEN ! MDRH OF I2 - SCASE = 'I2 ; SUBCASE 3' - CALL CALCMDRH (RH, DRMI2, DRNAHSO4, CALCI1A, CALCI3A) - SCASE = 'I2 ; SUBCASE 3' - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCI2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCI2 ****************************************** -! - ENDSUBROUTINE CALCI2 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI2A -! *** CASE I2 ; SUBCASE A -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4, NAHSO4, LC -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI2A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,PSI2HI,PSI2LO,YHI - REAL(KIND=8) :: FUNCI2A,FUNCI3A,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** FIND DRY COMPOSITION ********************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI2A',0,ZHOOK_HANDLE) - CALL CALCI1A ! Needed when called from CALCMDRH -! -! *** SETUP PARAMETERS ************************************************ -! - CHI1 = CNH4HS4 ! Save from CALCI1 run - CHI2 = CLC - CHI3 = CNAHSO4 - CHI4 = CNA2SO4 - CHI5 = CNH42S4 -! - PSI1 = CNH4HS4 ! ASSIGN INITIAL PSI's - PSI2 = ZERO - PSI3 = ZERO - PSI4 = ZERO - PSI5 = ZERO -! - CALAOU = .TRUE. ! Outer loop activity calculation flag - PSI2LO = ZERO ! Low limit - PSI2HI = CHI2 ! High limit -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI2HI - Y1 = FUNCI2A (X1) - YHI= Y1 ! Save Y-value at HI position -! -! *** YHI < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH LC ********* -! - IF (YHI.LT.EPS) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI2HI-PSI2LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = MAX(X1-DX, PSI2LO) - Y2 = FUNCI2A (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH LC -! - IF (Y2.GT.EPS) Y2 = FUNCI3A (ZERO) - GOTO 50 -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCI2A (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCI2A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCI2A (X3) -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCI2A',1,ZHOOK_HANDLE) - -! *** END OF SUBROUTINE CALCI2A ***************************************** -! - ENDSUBROUTINE CALCI2A - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCI2A -! *** CASE I2 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NA2SO4, NAHSO4, LC -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCI2A (P2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: P2,AA,BB,CC,DD - INTEGER :: I,ISLV - REAL(KIND=8) :: FUNCI2A - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCI2A',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - PSI2 = P2 ! Save PSI2 in COMMON BLOCK - PSI3 = CHI3 - PSI4 = CHI4 - PSI5 = CHI5 - PSI6 = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A3 = XK11*(WATER/GAMA(9))**2.0 - A4 = XK5 *(WATER/GAMA(2))**3.0 - A5 = XK7 *(WATER/GAMA(4))**3.0 - A6 = XK1 *WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2. - A7 = SQRT(A4/A5) -! -! CALCULATE DISSOCIATION QUANTITIES -! - IF (CHI5.GT.TINY .AND. WATER.GT.TINY) THEN - PSI5 = (PSI3 + 2.D0*PSI4 - A7*(3.D0*PSI2 + PSI1))/2.D0/A7 - PSI5 = MAX(MIN (PSI5, CHI5), TINY) - ENDIF -! - IF (CHI4.GT.TINY .AND. WATER.GT.TINY) THEN - AA = PSI2+PSI5+PSI6+PSI3 - BB = PSI3*AA - CC = 0.25D0*(PSI3*PSI3*(PSI2+PSI5+PSI6)-A4) - CALL POLY3 (AA, BB, CC, PSI4, ISLV) - IF (ISLV.EQ.0) THEN - PSI4 = MIN (PSI4, CHI4) - ELSE - PSI4 = ZERO - ENDIF - ENDIF -! - IF (CHI3.GT.TINY .AND. WATER.GT.TINY) THEN - AA = 2.D0*PSI4 + PSI2 + PSI1 - PSI6 - BB = 2.D0*PSI4*(PSI2 + PSI1 - PSI6) - A3 - CC = ZERO - CALL POLY3 (AA, BB, CC, PSI3, ISLV) - IF (ISLV.EQ.0) THEN - PSI3 = MIN (PSI3, CHI3) - ELSE - PSI3 = ZERO - ENDIF - ENDIF -! - BB = PSI2 + PSI4 + PSI5 + A6 ! PSI6 - CC =-A6*(PSI2 + PSI3 + PSI1) - DD = BB*BB - 4.D0*CC - PSI6 = 0.5D0*(-BB + SQRT(DD)) -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (1) = PSI6 ! HI - MOLAL (2) = 2.D0*PSI4 + PSI3 ! NAI - MOLAL (3) = 3.D0*PSI2 + 2.D0*PSI5 + PSI1 ! NH4I - MOLAL (5) = PSI2 + PSI4 + PSI5 + PSI6 ! SO4I - MOLAL (6) = PSI2 + PSI3 + PSI1 - PSI6 ! HSO4I - CLC = CHI2 - PSI2 - CNAHSO4 = CHI3 - PSI3 - CNA2SO4 = CHI4 - PSI4 - CNH42S4 = CHI5 - PSI5 - CNH4HS4 = ZERO - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE FUNCTION VALUE FOR OUTER LOOP *************************** -! -20 A2 = XK13*(WATER/GAMA(13))**5.0 - FUNCI2A = MOLAL(5)*MOLAL(6)*MOLAL(3)**3.D0/A2 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCI2A',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCI2A ******************************************* -! - ENDFUNCTION FUNCI2A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI1 -! *** CASE I1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NA2SO4 -! -! THERE ARE TWO POSSIBLE REGIMES HERE, DEPENDING ON RELATIVE HUMIDITY: -! 1. WHEN RH >= MDRH ; LIQUID PHASE POSSIBLE (MDRH REGION) -! 2. WHEN RH < MDRH ; ONLY SOLID PHASE POSSIBLE (SUBROUTINE CALCI1A) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - EXTERNAL CALCI1A, CALCI2A -! -! *** REGIME DEPENDS UPON THE AMBIENT RELATIVE HUMIDITY ***************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI1',0,ZHOOK_HANDLE) - IF (RH.LT.DRMI1) THEN - SCASE = 'I1 ; SUBCASE 1' - CALL CALCI1A ! SOLID PHASE ONLY POSSIBLE - SCASE = 'I1 ; SUBCASE 1' - ELSE - SCASE = 'I1 ; SUBCASE 2' ! LIQUID & SOLID PHASE POSSIBLE - CALL CALCMDRH (RH, DRMI1, DRNH4HS4, CALCI1A, CALCI2A) - SCASE = 'I1 ; SUBCASE 2' - ENDIF -! -! *** AMMONIA IN GAS PHASE ********************************************** -! - CALL CALCNH3 -! - IF (LHOOK) CALL DR_HOOK('CALCI1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCI1 ****************************************** -! - ENDSUBROUTINE CALCI1 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCI1A -! *** CASE I1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, NO FREE ACID (1.0 <= SULRAT < 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4HSO4, NAHSO4, (NH4)2SO4, NA2SO4, LC -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCI1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FRNH4,FRSO4 -! -! *** CALCULATE NON VOLATILE SOLIDS *********************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCI1A',0,ZHOOK_HANDLE) - CNA2SO4 = 0.5D0*W(1) - CNH4HS4 = ZERO - CNAHSO4 = ZERO - CNH42S4 = ZERO - FRSO4 = MAX(W(2)-CNA2SO4, ZERO) -! - CLC = MIN(W(3)/3.D0, FRSO4/2.D0) - FRSO4 = MAX(FRSO4-2.D0*CLC, ZERO) - FRNH4 = MAX(W(3)-3.D0*CLC, ZERO) -! - IF (FRSO4.LE.TINY) THEN - CLC = MAX(CLC - FRNH4, ZERO) - CNH42S4 = 2.D0*FRNH4 - - ELSEIF (FRNH4.LE.TINY) THEN - CNH4HS4 = 3.D0*MIN(FRSO4, CLC) - CLC = MAX(CLC-FRSO4, ZERO) - IF (CNA2SO4.GT.TINY) THEN - FRSO4 = MAX(FRSO4-CNH4HS4/3.D0, ZERO) - CNAHSO4 = 2.D0*FRSO4 - CNA2SO4 = MAX(CNA2SO4-FRSO4, ZERO) - ENDIF - ENDIF -! -! *** CALCULATE GAS SPECIES ********************************************* -! - GHNO3 = W(4) - GHCL = W(5) - GNH3 = ZERO -! - IF (LHOOK) CALL DR_HOOK('CALCI1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCI1A ***************************************** -! - ENDSUBROUTINE CALCI1A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCJ3 -! *** CASE J3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, FREE ACID (SULRAT < 1.0) -! 2. THERE IS ONLY A LIQUID PHASE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCJ3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A3,BB,CC,CHI1,CHI2,DD,PSI1,PSI2,DX - INTEGER :: I -! - REAL(KIND=8) :: LAMDA, KAPA -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCJ3',0,ZHOOK_HANDLE) - CALAOU = .TRUE. ! Outer loop activity calculation flag - FRST = .TRUE. - CALAIN = .TRUE. -! - LAMDA = MAX(W(2) - W(3) - W(1), TINY) ! FREE H2SO4 - CHI1 = W(1) ! NA TOTAL as NaHSO4 - CHI2 = W(3) ! NH4 TOTAL as NH4HSO4 - PSI1 = CHI1 - PSI2 = CHI2 ! ALL NH4HSO4 DELIQUESCED -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A3 = XK1 *WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2.0 -! -! CALCULATE DISSOCIATION QUANTITIES -! - BB = A3+LAMDA ! KAPA - CC =-A3*(LAMDA + PSI1 + PSI2) - DD = BB*BB-4.D0*CC - KAPA = 0.5D0*(-BB+SQRT(DD)) -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (1) = LAMDA + KAPA ! HI - MOLAL (2) = PSI1 ! NAI - MOLAL (3) = PSI2 ! NH4I - MOLAL (4) = ZERO ! CLI - MOLAL (5) = KAPA ! SO4I - MOLAL (6) = LAMDA + PSI1 + PSI2 - KAPA ! HSO4I - MOLAL (7) = ZERO ! NO3I - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 50 - ENDIF -10 CONTINUE -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCJ3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCJ3 ****************************************** -! - ENDSUBROUTINE CALCJ3 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCJ2 -! *** CASE J2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, FREE ACID (SULRAT < 1.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : NAHSO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCJ2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: DX,PSI1HI,PSI1LO,YHI,YLO - REAL(KIND=8) :: FUNCJ2,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: LAMDA, KAPA - REAL(KIND=8) :: CHI1,CHI2,CHI3,PSI1,PSI2,PSI3,A1,A2,A3 - COMMON /CASEJ/ CHI1, CHI2, CHI3, LAMDA, KAPA, PSI1, PSI2, PSI3, & - & A1, A2, A3 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCJ2',0,ZHOOK_HANDLE) - CALAOU = .TRUE. ! Outer loop activity calculation flag - CHI1 = W(1) ! NA TOTAL - CHI2 = W(3) ! NH4 TOTAL - PSI1LO = TINY ! Low limit - PSI1HI = CHI1 ! High limit -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI1HI - Y1 = FUNCJ2 (X1) - YHI= Y1 ! Save Y-value at HI position -! -! *** YHI < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NH42SO4 **** -! - IF (ABS(Y1).LE.EPS .OR. YHI.LT.ZERO) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI1HI-PSI1LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1-DX - Y2 = FUNCJ2 (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NH42SO4 -! - YLO= Y1 ! Save Y-value at Hi position - IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - Y3 = FUNCJ2 (ZERO) - GOTO 50 - ELSE IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - GOTO 50 - ELSE - CALL PUSHERR (0001, 'CALCJ2') ! WARNING ERROR: NO SOLUTION - GOTO 50 - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCJ2 (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCJ2') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCJ2 (X3) -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCJ2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCJ2 ****************************************** -! - ENDSUBROUTINE CALCJ2 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCJ2 -! *** CASE J2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, FREE ACID (SULRAT < 1.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCJ2 (P1) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: P1,BB,CC,DD - INTEGER :: I - REAL(KIND=8) :: FUNCJ2 - REAL(KIND=8) :: LAMDA, KAPA - REAL(KIND=8) :: CHI1,CHI2,CHI3,PSI1,PSI2,PSI3,A1,A2,A3 - COMMON /CASEJ/ CHI1, CHI2, CHI3, LAMDA, KAPA, PSI1, PSI2, PSI3, & - & A1, A2, A3 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCJ2',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. -! - LAMDA = MAX(W(2) - W(3) - W(1), TINY) ! FREE H2SO4 - PSI1 = P1 - PSI2 = CHI2 ! ALL NH4HSO4 DELIQUESCED -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK11 *(WATER/GAMA(12))**2.0 - A3 = XK1 *WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2.0 -! -! CALCULATE DISSOCIATION QUANTITIES -! - BB = A3+LAMDA ! KAPA - CC =-A3*(LAMDA + PSI1 + PSI2) - DD = BB*BB-4.D0*CC - KAPA = 0.5D0*(-BB+SQRT(DD)) -! -! *** CALCULATE SPECIATION ******************************************** -! - MOLAL (1) = LAMDA + KAPA ! HI - MOLAL (2) = PSI1 ! NAI - MOLAL (3) = PSI2 ! NH4I - MOLAL (4) = ZERO ! CLI - MOLAL (5) = KAPA ! SO4I - MOLAL (6) = LAMDA + PSI1 + PSI2 - KAPA ! HSO4I - MOLAL (7) = ZERO ! NO3I - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 FUNCJ2 = MOLAL(2)*MOLAL(6)/A1 - ONE -! -! *** END OF FUNCTION FUNCJ2 ******************************************* -! - IF (LHOOK) CALL DR_HOOK('FUNCJ2',1,ZHOOK_HANDLE) - ENDFUNCTION FUNCJ2 - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCJ1 -! *** CASE J1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, FREE ACID (SULRAT < 1.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : NH4HSO4, NAHSO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCJ1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,PSI1HI,PSI1LO,YHI,YLO - REAL(KIND=8) :: FUNCJ1,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I -! - REAL(KIND=8) :: LAMDA, KAPA - REAL(KIND=8) :: CHI1,CHI2,CHI3,PSI1,PSI2,PSI3,A1,A2,A3 - COMMON /CASEJ/ CHI1, CHI2, CHI3, LAMDA, KAPA, PSI1, PSI2, PSI3, & - & A1, A2, A3 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCJ1',0,ZHOOK_HANDLE) - CALAOU =.TRUE. ! Outer loop activity calculation flag - CHI1 = W(1) ! Total NA initially as NaHSO4 - CHI2 = W(3) ! Total NH4 initially as NH4HSO4 -! - PSI1LO = TINY ! Low limit - PSI1HI = CHI1 ! High limit -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI1HI - Y1 = FUNCJ1 (X1) - YHI= Y1 ! Save Y-value at HI position -! -! *** YHI < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NH42SO4 **** -! - IF (ABS(Y1).LE.EPS .OR. YHI.LT.ZERO) GOTO 50 -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI1HI-PSI1LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = X1-DX - Y2 = FUNCJ1 (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NH42SO4 -! - YLO= Y1 ! Save Y-value at Hi position - IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - Y3 = FUNCJ1 (ZERO) - GOTO 50 - ELSE IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - GOTO 50 - ELSE - CALL PUSHERR (0001, 'CALCJ1') ! WARNING ERROR: NO SOLUTION - GOTO 50 - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCJ1 (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCJ1') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCJ1 (X3) -! -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCJ1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCJ1 ****************************************** -! - ENDSUBROUTINE CALCJ1 - - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE FUNCJ1 -! *** CASE J1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE RICH, FREE ACID (SULRAT < 1.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4CL, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - FUNCTION FUNCJ1 (P1) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: P1,BB,CC,DD - INTEGER :: I - REAL(KIND=8) :: FUNCJ1 - REAL(KIND=8) :: LAMDA, KAPA - REAL(KIND=8) :: CHI1,CHI2,CHI3,PSI1,PSI2,PSI3,A1,A2,A3 - COMMON /CASEJ/ CHI1, CHI2, CHI3, LAMDA, KAPA, PSI1, PSI2, PSI3, & - & A1, A2, A3 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCJ1',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. -! - LAMDA = MAX(W(2) - W(3) - W(1), TINY) ! FREE H2SO4 - PSI1 = P1 -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -! - A1 = XK11 *(WATER/GAMA(12))**2.0 - A2 = XK12 *(WATER/GAMA(09))**2.0 - A3 = XK1 *WATER/GAMA(7)*(GAMA(8)/GAMA(7))**2.0 -! - PSI2 = 0.5*(-(LAMDA+PSI1) + SQRT((LAMDA+PSI1)**2.D0+4.D0*A2)) ! PSI2 - PSI2 = MIN (PSI2, CHI2) -! - BB = A3+LAMDA ! KAPA - CC =-A3*(LAMDA + PSI2 + PSI1) - DD = BB*BB-4.D0*CC - KAPA = 0.5D0*(-BB+SQRT(DD)) -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL (1) = LAMDA + KAPA ! HI - MOLAL (2) = PSI1 ! NAI - MOLAL (3) = PSI2 ! NH4I - MOLAL (4) = ZERO - MOLAL (5) = KAPA ! SO4I - MOLAL (6) = LAMDA + PSI1 + PSI2 - KAPA ! HSO4I - MOLAL (7) = ZERO - CALL CALCMR ! Water content -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 FUNCJ1 = MOLAL(2)*MOLAL(6)/A1 - ONE -! -! *** END OF FUNCTION FUNCJ1 ******************************************* -! - IF (LHOOK) CALL DR_HOOK('FUNCJ1',1,ZHOOK_HANDLE) - ENDFUNCTION FUNCJ1 diff --git a/src/arome/chem/internals/isorev.F b/src/arome/chem/internals/isorev.F deleted file mode 100644 index 1f0ff517d390ad01a2d288c852083cbd82deaeef..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/isorev.F +++ /dev/null @@ -1,3744 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/isorev.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:31 $ -!----------------------------------------------------------------- -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISRP1R -! *** THIS SUBROUTINE IS THE DRIVER ROUTINE FOR THE REVERSE PROBLEM OF -! AN AMMONIUM-SULFATE AEROSOL SYSTEM. -! THE COMPOSITION REGIME IS DETERMINED BY THE SULFATE RATIO AND BY -! THE AMBIENT RELATIVE HUMIDITY. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISRP1R (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - REAL(KIND=8),EXTERNAL :: GETASR - DIMENSION WI(NCOMP) -! -! *** INITIALIZE COMMON BLOCK VARIABLES ********************************* -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISRP1R',0,ZHOOK_HANDLE) - CALL INIT1 (WI, RHI, TEMPI) -! -! *** CALCULATE SULFATE RATIO ******************************************* -! - IF (RH.GE.DRNH42S4) THEN ! WET AEROSOL, NEED NH4 AT SRATIO=2.0 - SULRATW = GETASR(WAER(2), RHI) ! AEROSOL SULFATE RATIO - ELSE - SULRATW = 2.0D0 ! DRY AEROSOL SULFATE RATIO - ENDIF - SULRAT = WAER(3)/WAER(2) ! SULFATE RATIO -! -! *** FIND CALCULATION REGIME FROM (SULRAT,RH) ************************** -! -! *** SULFATE POOR -! - IF (SULRATW.LE.SULRAT) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'K2' - CALL CALCK2 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH42S4) THEN - SCASE = 'K1' - CALL CALCK1 ! NH42SO4 ; case K1 -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'K2' - CALL CALCK2 ! Only liquid ; case K2 - ENDIF - ENDIF -! -! *** SULFATE RICH (NO ACID) -! - ELSEIF (1.0.LE.SULRAT .AND. SULRAT.LT.SULRATW) THEN - W(2) = WAER(2) - W(3) = WAER(3) -! - IF(METSTBL.EQ.1) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid (metastable) - SCASE = 'L4' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'B1' - CALL CALCB1 ! NH4HSO4,LC,NH42SO4 ; case B1 - SCASE = 'L1' -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRLC) THEN - SCASE = 'B2' - CALL CALCB2 ! LC,NH42S4 ; case B2 - SCASE = 'L2' -! - ELSEIF (DRLC.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'B3' - CALL CALCB3 ! NH42S4 ; case B3 - SCASE = 'L3' -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid ; case B4 - SCASE = 'L4' - ENDIF - ENDIF -! - CALL CALCNH3P -! -! *** SULFATE RICH (FREE ACID) -! - ELSEIF (SULRAT.LT.1.0) THEN - W(2) = WAER(2) - W(3) = WAER(3) -! - IF(METSTBL.EQ.1) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid (metastable) - SCASE = 'M2' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'C1' - CALL CALCC1 ! NH4HSO4 ; case C1 - SCASE = 'M1' -! - ELSEIF (DRNH4HS4.LE.RH) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid ; case C2 - SCASE = 'M2' - ENDIF - ENDIF -! - CALL CALCNH3P -! - ENDIF - IF (LHOOK) CALL DR_HOOK('ISRP1R',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISRP1R ***************************************** -! - ENDSUBROUTINE ISRP1R - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISRP2R -! *** THIS SUBROUTINE IS THE DRIVER ROUTINE FOR THE REVERSE PROBLEM OF -! AN AMMONIUM-SULFATE-NITRATE AEROSOL SYSTEM. -! THE COMPOSITION REGIME IS DETERMINED BY THE SULFATE RATIO AND BY -! THE AMBIENT RELATIVE HUMIDITY. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISRP2R (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - REAL(KIND=8),EXTERNAL :: GETASR - DIMENSION WI(NCOMP) - LOGICAL TRYLIQ -! -! *** INITIALIZE ALL VARIABLES IN COMMON BLOCK ************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISRP2R',0,ZHOOK_HANDLE) - TRYLIQ = .TRUE. ! Assume liquid phase, sulfate poor limit -! -10 CALL INIT2 (WI, RHI, TEMPI) -! -! *** CALCULATE SULFATE RATIO ******************************************* -! - IF (TRYLIQ .AND. RH.GE.DRNH4NO3) THEN ! *** WET AEROSOL - SULRATW = GETASR(WAER(2), RHI) ! LIMITING SULFATE RATIO - ELSE - SULRATW = 2.0D0 ! *** DRY AEROSOL - ENDIF - SULRAT = WAER(3)/WAER(2) -! -! *** FIND CALCULATION REGIME FROM (SULRAT,RH) ************************** -! -! *** SULFATE POOR -! - IF (SULRATW.LE.SULRAT) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'N3' - CALL CALCN3 ! Only liquid (metastable) - ELSE -! - IF (RH.LT.DRNH4NO3) THEN - SCASE = 'N1' - CALL CALCN1 ! NH42SO4,NH4NO3 ; case N1 -! - ELSEIF (DRNH4NO3.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'N2' - CALL CALCN2 ! NH42S4 ; case N2 -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'N3' - CALL CALCN3 ! Only liquid ; case N3 - ENDIF - ENDIF -! -! *** SULFATE RICH (NO ACID) -! -! FOR SOLVING THIS CASE, NITRIC ACID AND AMMONIA IN THE GAS PHASE ARE -! ASSUMED A MINOR SPECIES, THAT DO NOT SIGNIFICANTLY AFFECT THE -! AEROSOL EQUILIBRIUM. -! - ELSEIF (1.0.LE.SULRAT .AND. SULRAT.LT.SULRATW) THEN - W(2) = WAER(2) - W(3) = WAER(3) - W(4) = WAER(4) -! - IF(METSTBL.EQ.1) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid (metastable) - SCASE = 'O4' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'B1' - CALL CALCB1 ! NH4HSO4,LC,NH42SO4 ; case O1 - SCASE = 'O1' -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRLC) THEN - SCASE = 'B2' - CALL CALCB2 ! LC,NH42S4 ; case O2 - SCASE = 'O2' -! - ELSEIF (DRLC.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'B3' - CALL CALCB3 ! NH42S4 ; case O3 - SCASE = 'O3' -! - ELSEIF (DRNH42S4.LE.RH) THEN - SCASE = 'B4' - CALL CALCB4 ! Only liquid ; case O4 - SCASE = 'O4' - ENDIF - ENDIF -! - CALL CALCNAP ! HNO3, NH3 dissolved - CALL CALCNH3P -! -! *** SULFATE RICH (FREE ACID) -! -! FOR SOLVING THIS CASE, NITRIC ACID AND AMMONIA IN THE GAS PHASE ARE -! ASSUMED A MINOR SPECIES, THAT DO NOT SIGNIFICANTLY AFFECT THE -! AEROSOL EQUILIBRIUM. -! - ELSEIF (SULRAT.LT.1.0) THEN - W(2) = WAER(2) - W(3) = WAER(3) - W(4) = WAER(4) -! - IF(METSTBL.EQ.1) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid (metastable) - SCASE = 'P2' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'C1' - CALL CALCC1 ! NH4HSO4 ; case P1 - SCASE = 'P1' -! - ELSEIF (DRNH4HS4.LE.RH) THEN - SCASE = 'C2' - CALL CALCC2 ! Only liquid ; case P2 - SCASE = 'P2' - ENDIF - ENDIF -! - CALL CALCNAP ! HNO3, NH3 dissolved - CALL CALCNH3P - ENDIF -! -! *** IF SULRATW < SULRAT < 2.0 and WATER = 0 => SULFATE RICH CASE. -! - IF (SULRATW.LE.SULRAT .AND. SULRAT.LT.2.0 & - & .AND. WATER.LE.TINY) THEN - TRYLIQ = .FALSE. - GOTO 10 - ENDIF -! - IF (LHOOK) CALL DR_HOOK('ISRP2R',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISRP2R ***************************************** -! - ENDSUBROUTINE ISRP2R -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE ISRP3R -! *** THIS SUBROUTINE IS THE DRIVER ROUTINE FOR THE REVERSE PROBLEM OF -! AN AMMONIUM-SULFATE-NITRATE-CHLORIDE-SODIUM AEROSOL SYSTEM. -! THE COMPOSITION REGIME IS DETERMINED BY THE SULFATE & SODIUM -! RATIOS AND BY THE AMBIENT RELATIVE HUMIDITY. -! -! *** COPYRIGHT 1996-2000 UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE ISRP3R (WI, RHI, TEMPI) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: WI,RHI,TEMPI - REAL(KIND=8) :: FRSO4,SRI - REAL(KIND=8),EXTERNAL :: GETASR - INTEGER :: I - DIMENSION WI(NCOMP) - LOGICAL TRYLIQ -!cC -!cC *** ADJUST FOR TOO LITTLE AMMONIUM AND CHLORIDE *********************** -!cC -!c WI(3) = MAX (WI(3), 1.D-10) ! NH4+ : 1e-4 umoles/m3 -!c WI(5) = MAX (WI(5), 1.D-10) ! Cl- : 1e-4 umoles/m3 -! -! *** INITIALIZE ALL VARIABLES ****************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ISRP3R',0,ZHOOK_HANDLE) - TRYLIQ = .TRUE. ! Use liquid phase sulfate poor limit -! -10 CALL INIT3 (WI, RHI, TEMPI) ! COMMON block variables -!cC -!cC *** CHECK IF TOO MUCH SODIUM ; ADJUST AND ISSUE ERROR MESSAGE ********* -!cC -!c REST = 2.D0*WAER(2) + WAER(4) + WAER(5) -!c IF (WAER(1).GT.REST) THEN ! NA > 2*SO4+CL+NO3 ? -!c WAER(1) = (ONE-1D-6)*REST ! Adjust Na amount -!c CALL PUSHERR (0050, 'ISRP3R') ! Warning error: Na adjusted -!c ENDIF -! -! *** CALCULATE SULFATE & SODIUM RATIOS ********************************* -! - IF (TRYLIQ .AND. RH.GE.DRNH4NO3) THEN ! ** WET AEROSOL - FRSO4 = WAER(2) - WAER(1)/2.0D0 ! SULFATE UNBOUND BY SODIUM - FRSO4 = MAX(FRSO4, TINY) - SRI = GETASR(FRSO4, RHI) ! SULFATE RATIO FOR NH4+ - SULRATW = (WAER(1)+FRSO4*SRI)/WAER(2) ! LIMITING SULFATE RATIO - SULRATW = MIN (SULRATW, 2.0D0) - ELSE - SULRATW = 2.0D0 ! ** DRY AEROSOL - ENDIF - SULRAT = (WAER(1)+WAER(3))/WAER(2) - SODRAT = WAER(1)/WAER(2) -! -! *** FIND CALCULATION REGIME FROM (SULRAT,RH) ************************** -! -! *** SULFATE POOR ; SODIUM POOR -! - IF (SULRATW.LE.SULRAT .AND. SODRAT.LT.2.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'Q5' - CALL CALCQ5 ! Only liquid (metastable) - SCASE = 'Q5' - ELSE -! - IF (RH.LT.DRNH4NO3) THEN - SCASE = 'Q1' - CALL CALCQ1 ! NH42SO4,NH4NO3,NH4CL,NA2SO4 -! - ELSEIF (DRNH4NO3.LE.RH .AND. RH.LT.DRNH4CL) THEN - SCASE = 'Q2' - CALL CALCQ2 ! NH42SO4,NH4CL,NA2SO4 -! - ELSEIF (DRNH4CL.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'Q3' - CALL CALCQ3 ! NH42SO4,NA2SO4 -! - ELSEIF (DRNH42S4.LE.RH .AND. RH.LT.DRNA2SO4) THEN - SCASE = 'Q4' - CALL CALCQ4 ! NA2SO4 - SCASE = 'Q4' -! - ELSEIF (DRNA2SO4.LE.RH) THEN - SCASE = 'Q5' - CALL CALCQ5 ! Only liquid - SCASE = 'Q5' - ENDIF - ENDIF -! -! *** SULFATE POOR ; SODIUM RICH -! - ELSE IF (SULRAT.GE.SULRATW .AND. SODRAT.GE.2.0) THEN -! - IF(METSTBL.EQ.1) THEN - SCASE = 'R6' - CALL CALCR6 ! Only liquid (metastable) - SCASE = 'R6' - ELSE -! - IF (RH.LT.DRNH4NO3) THEN - SCASE = 'R1' - CALL CALCR1 ! NH4NO3,NH4CL,NA2SO4,NACL,NANO3 -! - ELSEIF (DRNH4NO3.LE.RH .AND. RH.LT.DRNANO3) THEN - SCASE = 'R2' - CALL CALCR2 ! NH4CL,NA2SO4,NACL,NANO3 -! - ELSEIF (DRNANO3.LE.RH .AND. RH.LT.DRNACL) THEN - SCASE = 'R3' - CALL CALCR3 ! NH4CL,NA2SO4,NACL -! - ELSEIF (DRNACL.LE.RH .AND. RH.LT.DRNH4CL) THEN - SCASE = 'R4' - CALL CALCR4 ! NH4CL,NA2SO4 -! - ELSEIF (DRNH4CL.LE.RH .AND. RH.LT.DRNA2SO4) THEN - SCASE = 'R5' - CALL CALCR5 ! NA2SO4 - SCASE = 'R5' -! - ELSEIF (DRNA2SO4.LE.RH) THEN - SCASE = 'R6' - CALL CALCR6 ! NO SOLID - SCASE = 'R6' - ENDIF - ENDIF -! -! *** SULFATE RICH (NO ACID) -! - ELSEIF (1.0.LE.SULRAT .AND. SULRAT.LT.SULRATW) THEN - DO 100 I=1,NCOMP - W(I) = WAER(I) -100 CONTINUE -! - IF(METSTBL.EQ.1) THEN - SCASE = 'I6' - CALL CALCI6 ! Only liquid (metastable) - SCASE = 'S6' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'I1' - CALL CALCI1 ! NA2SO4,(NH4)2SO4,NAHSO4,NH4HSO4,LC - SCASE = 'S1' -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRNAHSO4) THEN - SCASE = 'I2' - CALL CALCI2 ! NA2SO4,(NH4)2SO4,NAHSO4,LC - SCASE = 'S2' -! - ELSEIF (DRNAHSO4.LE.RH .AND. RH.LT.DRLC) THEN - SCASE = 'I3' - CALL CALCI3 ! NA2SO4,(NH4)2SO4,LC - SCASE = 'S3' -! - ELSEIF (DRLC.LE.RH .AND. RH.LT.DRNH42S4) THEN - SCASE = 'I4' - CALL CALCI4 ! NA2SO4,(NH4)2SO4 - SCASE = 'S4' -! - ELSEIF (DRNH42S4.LE.RH .AND. RH.LT.DRNA2SO4) THEN - SCASE = 'I5' - CALL CALCI5 ! NA2SO4 - SCASE = 'S5' -! - ELSEIF (DRNA2SO4.LE.RH) THEN - SCASE = 'I6' - CALL CALCI6 ! NO SOLIDS - SCASE = 'S6' - ENDIF - ENDIF -! - CALL CALCNHP ! HNO3, NH3, HCL in gas phase - CALL CALCNH3P -! -! *** SULFATE RICH (FREE ACID) -! - ELSEIF (SULRAT.LT.1.0) THEN - DO 200 I=1,NCOMP - W(I) = WAER(I) -200 CONTINUE -! - IF(METSTBL.EQ.1) THEN - SCASE = 'J3' - CALL CALCJ3 ! Only liquid (metastable) - SCASE = 'T3' - ELSE -! - IF (RH.LT.DRNH4HS4) THEN - SCASE = 'J1' - CALL CALCJ1 ! NH4HSO4,NAHSO4 - SCASE = 'T1' -! - ELSEIF (DRNH4HS4.LE.RH .AND. RH.LT.DRNAHSO4) THEN - SCASE = 'J2' - CALL CALCJ2 ! NAHSO4 - SCASE = 'T2' -! - ELSEIF (DRNAHSO4.LE.RH) THEN - SCASE = 'J3' - CALL CALCJ3 - SCASE = 'T3' - ENDIF - ENDIF -! - CALL CALCNHP ! HNO3, NH3, HCL in gas phase - CALL CALCNH3P -! - ENDIF -! -! *** IF AFTER CALCULATIONS, SULRATW < SULRAT < 2.0 -! and WATER = 0 => SULFATE RICH CASE. -! - IF (SULRATW.LE.SULRAT .AND. SULRAT.LT.2.0 & - & .AND. WATER.LE.TINY) THEN - TRYLIQ = .FALSE. - GOTO 10 - ENDIF -! - IF (LHOOK) CALL DR_HOOK('ISRP3R',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE ISRP3R ***************************************** -! - ENDSUBROUTINE ISRP3R -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCK2 -! *** CASE K2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. LIQUID AEROSOL PHASE ONLY POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCK2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: A2,AKW,DEL,HI,OHI,HSO4I,SO4I - INTEGER :: I - REAL(KIND=8) :: NH4I, NH3GI, NH3AQ -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCK2',0,ZHOOK_HANDLE) - CALAOU =.TRUE. ! Outer loop activity calculation flag - FRST =.TRUE. - CALAIN =.TRUE. -! -! *** CALCULATE WATER CONTENT ***************************************** -! - MOLALR(4)= MIN(WAER(2), 0.5d0*WAER(3)) - WATER = MOLALR(4)/M0(4) ! ZSR correlation -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP -!C A21 = XK21*WATER*R*TEMP - A2 = XK2 *R*TEMP/XKW/RH*(GAMA(8)/GAMA(9))**2. - AKW = XKW *RH*WATER*WATER -! - NH4I = WAER(3) - SO4I = WAER(2) - HSO4I= ZERO -! - CALL CALCPH (2.D0*SO4I - NH4I, HI, OHI) ! Get pH -! - NH3AQ = ZERO ! AMMONIA EQUILIBRIUM - IF (HI.LT.OHI) THEN - CALL CALCAMAQ (NH4I, OHI, DEL) - NH4I = MAX (NH4I-DEL, ZERO) - OHI = MAX (OHI -DEL, TINY) - NH3AQ = DEL - HI = AKW/OHI - ENDIF -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) ! SULFATE EQUILIBRIUM - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL -! - NH3GI = NH4I/HI/A2 ! NH3AQ/A21 -! -! *** SPECIATION & WATER CONTENT *************************************** -! - MOLAL(1) = HI - MOLAL(3) = NH4I - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - COH = OHI - GASAQ(1) = NH3AQ - GNH3 = NH3GI -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -20 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCK2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCK2 **************************************** -! - ENDSUBROUTINE CALCK2 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCK1 -! *** CASE K1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4 -! -! A SIMPLE MATERIAL BALANCE IS PERFORMED, AND THE SOLID (NH4)2SO4 -! IS CALCULATED FROM THE SULFATES. THE EXCESS AMMONIA REMAINS IN -! THE GAS PHASE. -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCK1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCK1',0,ZHOOK_HANDLE) - CNH42S4 = MIN(WAER(2),0.5d0*WAER(3)) ! For bad input problems - GNH3 = ZERO -! - W(2) = CNH42S4 - W(3) = 2.D0*CNH42S4 + GNH3 -! - IF (LHOOK) CALL DR_HOOK('CALCK1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCK1 ****************************************** -! - ENDSUBROUTINE CALCK1 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCN3 -! *** CASE N3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. THERE IS ONLY A LIQUID PHASE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCN3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: AKW,AML5,DEL,GG,HI,HSO4I,OHI,SO4I - INTEGER :: I - REAL(KIND=8) :: NH4I, NO3I, NH3AQ, NO3AQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCN3',0,ZHOOK_HANDLE) - CALAOU =.TRUE. ! Outer loop activity calculation flag - FRST =.TRUE. - CALAIN =.TRUE. -! -! *** AEROSOL WATER CONTENT -! - MOLALR(4) = MIN(WAER(2),0.5d0*WAER(3)) ! (NH4)2SO4 - AML5 = MAX(WAER(3)-2.D0*MOLALR(4),ZERO) ! "free" NH4 - MOLALR(5) = MAX(MIN(AML5,WAER(4)), ZERO) ! NH4NO3=MIN("free",NO3) - WATER = MOLALR(4)/M0(4) + MOLALR(5)/M0(5) - WATER = MAX(WATER, TINY) -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A2 = XK2 *R*TEMP/XKW/RH*(GAMA(8)/GAMA(9))**2. -!C A21 = XK21*WATER*R*TEMP - A3 = XK4*R*TEMP*(WATER/GAMA(10))**2.0 - A4 = XK7*(WATER/GAMA(4))**3.0 - AKW = XKW *RH*WATER*WATER -! -! ION CONCENTRATIONS -! - NH4I = WAER(3) - NO3I = WAER(4) - SO4I = WAER(2) - HSO4I = ZERO -! - CALL CALCPH (2.D0*SO4I + NO3I - NH4I, HI, OHI) -! -! AMMONIA ASSOCIATION EQUILIBRIUM -! - NH3AQ = ZERO - NO3AQ = ZERO - GG = 2.D0*SO4I + NO3I - NH4I - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - ELSE - HI = ZERO - CALL CALCNIAQ2 (GG, NO3I, HI, NO3AQ) ! HNO3 -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL (1) = HI - MOLAL (3) = NH4I - MOLAL (5) = SO4I - MOLAL (6) = HSO4I - MOLAL (7) = NO3I - COH = OHI -! - CNH42S4 = ZERO - CNH4NO3 = ZERO -! - GASAQ(1) = NH3AQ - GASAQ(3) = NO3AQ -! - GHNO3 = HI*NO3I/A3 - GNH3 = NH4I/HI/A2 ! NH3AQ/A21 -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ****************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** RETURN *********************************************************** -! -20 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCN3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCN3 ***************************************** -! - ENDSUBROUTINE CALCN3 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCN2 -! *** CASE N2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. THERE IS BOTH A LIQUID & SOLID PHASE -! 3. SOLIDS POSSIBLE : (NH4)2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCN2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: DX,P4,PSI1LO,PSI1HI,YHI,YLO,YY - REAL(KIND=8) :: FUNCN2,X1,X2,X3,Y1,Y2,Y3 - INTEGER :: I - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCN2',0,ZHOOK_HANDLE) - CHI1 = MIN(WAER(2),0.5d0*WAER(3)) ! (NH4)2SO4 - CHI2 = MAX(WAER(3) - 2.D0*CHI1, ZERO) ! "Free" NH4+ - CHI3 = MAX(WAER(4) - CHI2, ZERO) ! "Free" NO3 -! - PSI2 = CHI2 - PSI3 = CHI3 -! - CALAOU = .TRUE. ! Outer loop activity calculation flag - PSI1LO = TINY ! Low limit - PSI1HI = CHI1 ! High limit -! -! *** INITIAL VALUES FOR BISECTION ************************************ -! - X1 = PSI1HI - Y1 = FUNCN2 (X1) - IF (Y1.LE.EPS) THEN ! IF (ABS(Y1).LE.EPS .OR. Y1.LE.ZERO) RETURN - IF (LHOOK) CALL DR_HOOK('CALCN2',1,ZHOOK_HANDLE) - RETURN - ENDIF - YHI= Y1 ! Save Y-value at HI position -! -! *** ROOT TRACKING ; FOR THE RANGE OF HI AND LO ********************** -! - DX = (PSI1HI-PSI1LO)/FLOAT(NDIV) - DO 10 I=1,NDIV - X2 = MAX(X1-DX, ZERO) - Y2 = FUNCN2 (X2) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y2).LT.ZERO) GOTO 20 ! (Y1*Y2.LT.ZERO) - X1 = X2 - Y1 = Y2 -10 CONTINUE -! -! *** NO SUBDIVISION WITH SOLUTION FOUND -! - YLO= Y1 ! Save Y-value at Hi position - IF (ABS(Y2) .LT. EPS) THEN ! X2 IS A SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCN2',1,ZHOOK_HANDLE) - RETURN -! -! *** { YLO, YHI } < 0.0 THE SOLUTION IS ALWAYS UNDERSATURATED WITH NH3 -! - ELSE IF (YLO.LT.ZERO .AND. YHI.LT.ZERO) THEN - P4 = CHI4 - YY = FUNCN2(P4) - GOTO 50 -! -! *** { YLO, YHI } > 0.0 THE SOLUTION IS ALWAYS SUPERSATURATED WITH NH3 -! - ELSE IF (YLO.GT.ZERO .AND. YHI.GT.ZERO) THEN - P4 = TINY - YY = FUNCN2(P4) - GOTO 50 - ELSE - CALL PUSHERR (0001, 'CALCN2') ! WARNING ERROR: NO SOLUTION - IF (LHOOK) CALL DR_HOOK('CALCN2',1,ZHOOK_HANDLE) - RETURN - ENDIF -! -! *** PERFORM BISECTION *********************************************** -! -20 DO 30 I=1,MAXIT - X3 = 0.5*(X1+X2) - Y3 = FUNCN2 (X3) - IF (SIGN(1._8,Y1)*SIGN(1._8,Y3) .LE. ZERO) THEN ! (Y1*Y3 .LE. ZERO) - Y2 = Y3 - X2 = X3 - ELSE - Y1 = Y3 - X1 = X3 - ENDIF - IF (ABS(X2-X1) .LE. EPS*X1) GOTO 40 -30 CONTINUE - CALL PUSHERR (0002, 'CALCN2') ! WARNING ERROR: NO CONVERGENCE -! -! *** CONVERGED ; RETURN ********************************************** -! -40 X3 = 0.5*(X1+X2) - Y3 = FUNCN2 (X3) -50 CONTINUE - IF (LHOOK) CALL DR_HOOK('CALCN2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCN2 ****************************************** -! - ENDSUBROUTINE CALCN2 - - - -!====================================================================== -! -! *** ISORROPIA CODE -! *** FUNCTION FUNCN2 -! *** CASE D2 -! FUNCTION THAT SOLVES THE SYSTEM OF EQUATIONS FOR CASE D2 ; -! AND RETURNS THE VALUE OF THE ZEROED FUNCTION IN FUNCN2. -! -!======================================================================= -! - FUNCTION FUNCN2 (P1) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: P1,AKW,DEL,GG,HI,HSO4I,OHI,SO4I - INTEGER :: I - REAL(KIND=8) :: FUNCN2 - REAL(KIND=8) :: NH4I, NO3I, NH3AQ, NO3AQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('FUNCN2',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - PSI1 = P1 -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A2 = XK2 *R*TEMP/XKW/RH*(GAMA(8)/GAMA(9))**2. -!C A21 = XK21*WATER*R*TEMP - A3 = XK4*R*TEMP*(WATER/GAMA(10))**2.0 - A4 = XK7*(WATER/GAMA(4))**3.0 - AKW = XKW *RH*WATER*WATER -! -! ION CONCENTRATIONS -! - NH4I = 2.D0*PSI1 + PSI2 - NO3I = PSI2 + PSI3 - SO4I = PSI1 - HSO4I = ZERO -! - CALL CALCPH (2.D0*SO4I + NO3I - NH4I, HI, OHI) -! -! AMMONIA ASSOCIATION EQUILIBRIUM -! - NH3AQ = ZERO - NO3AQ = ZERO - GG = 2.D0*SO4I + NO3I - NH4I - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - ELSE - HI = ZERO - CALL CALCNIAQ2 (GG, NO3I, HI, NO3AQ) ! HNO3 -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL (1) = HI - MOLAL (3) = NH4I - MOLAL (5) = SO4I - MOLAL (6) = HSO4I - MOLAL (7) = NO3I - COH = OHI -! - CNH42S4 = CHI1 - PSI1 - CNH4NO3 = ZERO -! - GASAQ(1) = NH3AQ - GASAQ(3) = NO3AQ -! - GHNO3 = HI*NO3I/A3 - GNH3 = NH4I/HI/A2 ! NH3AQ/A21 -! -! *** CALCULATE MOLALR ARRAY, WATER AND ACTIVITIES ********************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -! -! *** CALCULATE OBJECTIVE FUNCTION ************************************ -! -20 FUNCN2= NH4I*NH4I*SO4I/A4 - ONE - IF (LHOOK) CALL DR_HOOK('FUNCN2',1,ZHOOK_HANDLE) -! -! *** END OF FUNCTION FUNCN2 ******************************************** -! - ENDFUNCTION FUNCN2 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCN1 -! *** CASE N1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4NO3 -! -! THERE ARE TWO REGIMES DEFINED BY RELATIVE HUMIDITY: -! 1. RH < MDRH ; ONLY SOLID PHASE POSSIBLE (SUBROUTINE CALCN1A) -! 2. RH >= MDRH ; LIQUID PHASE POSSIBLE (MDRH REGION) -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCN1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - EXTERNAL CALCN1A, CALCN2 -! -! *** REGIME DEPENDS UPON THE AMBIENT RELATIVE HUMIDITY ***************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCN1',0,ZHOOK_HANDLE) - IF (RH.LT.DRMASAN) THEN - SCASE = 'N1 ; SUBCASE 1' - CALL CALCN1A ! SOLID PHASE ONLY POSSIBLE - SCASE = 'N1 ; SUBCASE 1' - ELSE - SCASE = 'N1 ; SUBCASE 2' - CALL CALCMDRP (RH, DRMASAN, DRNH4NO3, CALCN1A, CALCN2) - SCASE = 'N1 ; SUBCASE 2' - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCN1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCN1 ****************************************** -! - ENDSUBROUTINE CALCN1 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCN1A -! *** CASE N1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : (NH4)2SO4, NH4NO3 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCN1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: PSI1,PSI2 -! -! *** SETUP PARAMETERS ************************************************* -! -!CC A1 = XK10/R/TEMP/R/TEMP -! -! *** CALCULATE AEROSOL COMPOSITION ************************************ -! -!CC CHI1 = 2.D0*WAER(4) ! Free parameter ; arbitrary value. - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCN1A',0,ZHOOK_HANDLE) - PSI1 = WAER(4) -! -! *** The following statment is here to avoid negative NH4+ values in -! CALCN? routines that call CALCN1A -! - PSI2 = MAX(MIN(WAER(2),0.5d0*(WAER(3)-PSI1)),TINY) -! - CNH4NO3 = PSI1 - CNH42S4 = PSI2 -! -!CC GNH3 = CHI1 + PSI1 + 2.0*PSI2 -!CC GHNO3 = A1/(CHI1-PSI1) + PSI1 - GNH3 = ZERO - GHNO3 = ZERO -! - W(2) = PSI2 - W(3) = GNH3 + PSI1 + 2.0*PSI2 - W(4) = GHNO3 + PSI1 -! - IF (LHOOK) CALL DR_HOOK('CALCN1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCN1A ***************************************** -! - ENDSUBROUTINE CALCN1A - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ5 -! *** CASE Q5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM POOR (SODRAT < 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ5 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: AKW,BB,CC,CLI,DD,DEL - REAL(KIND=8) :: GG,GGCL,GGNO3,HI,HSO4I,OHI,SO4I - INTEGER :: I - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ5',0,ZHOOK_HANDLE) - FRST =.TRUE. - CALAIN =.TRUE. - CALAOU =.TRUE. -! -! *** CALCULATE INITIAL SOLUTION *************************************** -! - CALL CALCQ1A -! - PSI1 = CNA2SO4 ! SALTS DISSOLVED - PSI4 = CNH4CL - PSI5 = CNH4NO3 - PSI6 = CNH42S4 -! - CALL CALCMR ! WATER -! - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! ION CONCENTRATIONS -! - NAI = WAER(1) - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - HSO4I = ZERO - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCQ5') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1)= NH3AQ - GASAQ(2)= CLAQ - GASAQ(3)= NO3AQ -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = ZERO - CNACL = ZERO - CNANO3 = ZERO - CNA2SO4 = ZERO -! - IF (LHOOK) CALL DR_HOOK('CALCQ5',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ5 ****************************************** -! - ENDSUBROUTINE CALCQ5 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ4 -! *** CASE Q4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM POOR (SODRAT < 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ4 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: AKW,BB,CC,CLI,DD,DEL,HI,OHI - REAL(KIND=8) :: GG,GGCL,GGNO3,HSO4I,SO4I - REAL(KIND=8) :: PSI1O,ROOT3 - INTEGER :: I,ISLV - LOGICAL PSCONV1 - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ4',0,ZHOOK_HANDLE) - FRST =.TRUE. - CALAIN =.TRUE. - CALAOU =.TRUE. -! - PSCONV1 =.TRUE. - PSI1O =-GREAT - ROOT3 = ZERO -! -! *** CALCULATE INITIAL SOLUTION *************************************** -! - CALL CALCQ1A -! - CHI1 = CNA2SO4 ! SALTS -! - PSI1 = CNA2SO4 ! AMOUNT DISSOLVED - PSI4 = CNH4CL - PSI5 = CNH4NO3 - PSI6 = CNH42S4 -! - CALL CALCMR ! WATER -! - NAI = WAER(1) ! LIQUID CONCENTRATIONS - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A5 = XK5 *(WATER/GAMA(2))**3. ! Na2SO4 <==> Na+ - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! SODIUM SULFATE -! - IF (NAI*NAI*SO4I .GT. A5) THEN - BB =-(WAER(2) + WAER(1)) - CC = WAER(1)*WAER(2) + 0.25*WAER(1)*WAER(1) - DD =-0.25*(WAER(1)*WAER(1)*WAER(2) - A5) - CALL POLY3(BB, CC, DD, ROOT3, ISLV) - IF (ISLV.NE.0) ROOT3 = TINY - ROOT3 = MIN (ROOT3, WAER(1)/2.0, WAER(2), CHI1) - ROOT3 = MAX (ROOT3, ZERO) - PSI1 = CHI1-ROOT3 - ENDIF - PSCONV1 = ABS(PSI1-PSI1O) .LE. EPS*PSI1O - PSI1O = PSI1 -! -! ION CONCENTRATIONS ; CORRECTIONS -! - NAI = WAER(1) - 2.D0*ROOT3 - SO4I= WAER(2) - ROOT3 - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - HSO4I = ZERO - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - IF (PSCONV1) GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCQ4') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1)= NH3AQ - GASAQ(2)= CLAQ - GASAQ(3)= NO3AQ -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = ZERO - CNACL = ZERO - CNANO3 = ZERO - CNA2SO4 = CHI1 - PSI1 -! - IF (LHOOK) CALL DR_HOOK('CALCQ4',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ4 ****************************************** -! - ENDSUBROUTINE CALCQ4 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ3 -! *** CASE Q3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : NH4CL, NA2SO4, NANO3, NACL -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - LOGICAL EXNO, EXCL - EXTERNAL CALCQ1A, CALCQ4 -! -! *** REGIME DEPENDS ON AMBIENT RELATIVE HUMIDITY & POSSIBLE SPECIES *** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ3',0,ZHOOK_HANDLE) - EXNO = WAER(4).GT.TINY - EXCL = WAER(5).GT.TINY -! - IF (EXNO .OR. EXCL) THEN ! *** NITRATE OR CHLORIDE EXISTS - SCASE = 'Q3 ; SUBCASE 1' - CALL CALCQ3A - SCASE = 'Q3 ; SUBCASE 1' -! - ELSE ! *** NO CHLORIDE AND NITRATE - IF (RH.LT.DRMG3) THEN - SCASE = 'Q3 ; SUBCASE 2' - CALL CALCQ1A ! SOLID - SCASE = 'Q3 ; SUBCASE 2' - ELSE - SCASE = 'Q3 ; SUBCASE 3' ! MDRH (NH4)2SO4, NA2SO4 - CALL CALCMDRP (RH, DRMG3, DRNH42S4, CALCQ1A, CALCQ4) - SCASE = 'Q3 ; SUBCASE 3' - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCQ3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ3 ****************************************** -! - ENDSUBROUTINE CALCQ3 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ3A -! *** CASE Q3 ; SUBCASE A -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM POOR (SODRAT < 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ3A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: AKW,BB,CC,CLI,DD,DEL,HI,OHI - REAL(KIND=8) :: PSI1O,PSI6O,ROOT1,ROOT3 - REAL(KIND=8) :: GG,GGCL,GGNO3,HSO4I,SO4I - INTEGER :: I,ISLV - LOGICAL PSCONV1, PSCONV6 - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ3A',0,ZHOOK_HANDLE) - FRST =.TRUE. - CALAIN =.TRUE. - CALAOU =.TRUE. -! - PSCONV1 =.TRUE. - PSCONV6 =.TRUE. -! - PSI1O =-GREAT - PSI6O =-GREAT -! - ROOT1 = ZERO - ROOT3 = ZERO -! -! *** CALCULATE INITIAL SOLUTION *************************************** -! - CALL CALCQ1A -! - CHI1 = CNA2SO4 ! SALTS - CHI4 = CNH4CL - CHI6 = CNH42S4 -! - PSI1 = CNA2SO4 ! AMOUNT DISSOLVED - PSI4 = CNH4CL - PSI5 = CNH4NO3 - PSI6 = CNH42S4 -! - CALL CALCMR ! WATER -! - NAI = WAER(1) ! LIQUID CONCENTRATIONS - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A5 = XK5 *(WATER/GAMA(2))**3. ! Na2SO4 <==> Na+ - A7 = XK7 *(WATER/GAMA(4))**3. ! (NH4)2SO4 <==> Na+ - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! SODIUM SULFATE -! - IF (NAI*NAI*SO4I .GT. A5) THEN - BB =-(WAER(2) + WAER(1) - ROOT1) - CC = WAER(1)*(WAER(2) - ROOT1) + 0.25*WAER(1)*WAER(1) - DD =-0.25*(WAER(1)*WAER(1)*(WAER(2) - ROOT1) - A5) - CALL POLY3(BB, CC, DD, ROOT3, ISLV) - IF (ISLV.NE.0) ROOT3 = TINY - ROOT3 = MIN (ROOT3, WAER(1)/2.0, WAER(2) - ROOT1, CHI1) - ROOT3 = MAX (ROOT3, ZERO) - PSI1 = CHI1-ROOT3 - ENDIF - PSCONV1 = ABS(PSI1-PSI1O) .LE. EPS*PSI1O - PSI1O = PSI1 -! -! AMMONIUM SULFATE -! - IF (NH4I*NH4I*SO4I .GT. A4) THEN - BB =-(WAER(2)+WAER(3)-ROOT3) - CC = WAER(3)*(WAER(2)-ROOT3+0.5D0*WAER(3)) - DD =-((WAER(2)-ROOT3)*WAER(3)**2.D0 + A4)/4.D0 - CALL POLY3(BB, CC, DD, ROOT1, ISLV) - IF (ISLV.NE.0) ROOT1 = TINY - ROOT1 = MIN(ROOT1, WAER(3), WAER(2)-ROOT3, CHI6) - ROOT1 = MAX(ROOT1, ZERO) - PSI6 = CHI6-ROOT1 - ENDIF - PSCONV6 = ABS(PSI6-PSI6O) .LE. EPS*PSI6O - PSI6O = PSI6 -! -! ION CONCENTRATIONS -! - NAI = WAER(1) - 2.D0*ROOT3 - SO4I= WAER(2) - ROOT1 - ROOT3 - NH4I= WAER(3) - 2.D0*ROOT1 - NO3I= WAER(4) - CLI = WAER(5) -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - HSO4I = ZERO - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - IF (PSCONV1 .AND. PSCONV6) GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCQ3A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1)= NH3AQ - GASAQ(2)= CLAQ - GASAQ(3)= NO3AQ -! - CNH42S4 = CHI6 - PSI6 - CNH4NO3 = ZERO - CNH4CL = ZERO - CNACL = ZERO - CNANO3 = ZERO - CNA2SO4 = CHI1 - PSI1 -! - IF (LHOOK) CALL DR_HOOK('CALCQ3A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ3A ***************************************** -! - ENDSUBROUTINE CALCQ3A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ2 -! *** CASE Q2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID & LIQUID AEROSOL POSSIBLE -! 3. SOLIDS POSSIBLE : NH4CL, NA2SO4, NANO3, NACL -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - LOGICAL EXNO, EXCL - EXTERNAL CALCQ1A, CALCQ3A, CALCQ4 -! -! *** REGIME DEPENDS ON AMBIENT RELATIVE HUMIDITY & POSSIBLE SPECIES *** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ2',0,ZHOOK_HANDLE) - EXNO = WAER(4).GT.TINY - EXCL = WAER(5).GT.TINY -! - IF (EXNO) THEN ! *** NITRATE EXISTS - SCASE = 'Q2 ; SUBCASE 1' - CALL CALCQ2A - SCASE = 'Q2 ; SUBCASE 1' -! - ELSEIF (.NOT.EXNO .AND. EXCL) THEN ! *** ONLY CHLORIDE EXISTS - IF (RH.LT.DRMG2) THEN - SCASE = 'Q2 ; SUBCASE 2' - CALL CALCQ1A ! SOLID - SCASE = 'Q2 ; SUBCASE 2' - ELSE - SCASE = 'Q2 ; SUBCASE 3' ! MDRH (NH4)2SO4, NA2SO4, NH4CL - CALL CALCMDRP (RH, DRMG2, DRNH4CL, CALCQ1A, CALCQ3A) - SCASE = 'Q2 ; SUBCASE 3' - ENDIF -! - ELSE ! *** NO CHLORIDE AND NITRATE - IF (RH.LT.DRMG3) THEN - SCASE = 'Q2 ; SUBCASE 2' - CALL CALCQ1A ! SOLID - SCASE = 'Q2 ; SUBCASE 2' - ELSE - SCASE = 'Q2 ; SUBCASE 4' ! MDRH (NH4)2SO4, NA2SO4 - CALL CALCMDRP (RH, DRMG3, DRNH42S4, CALCQ1A, CALCQ4) - SCASE = 'Q2 ; SUBCASE 4' - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCQ2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ2 ****************************************** -! - ENDSUBROUTINE CALCQ2 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ2A -! *** CASE Q2 ; SUBCASE A -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM POOR (SODRAT < 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ2A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: A14,AKW,BB,CC,CLI,DD,DEL,HI,OHI - REAL(KIND=8) :: PSI1O,PSI4O,PSI6O - REAL(KIND=8) :: ROOT1,ROOT2,ROOT2A,ROOT2B,ROOT3 - REAL(KIND=8) :: GG,GGCL,GGNO3,HSO4I,SO4I - INTEGER :: I,ISLV - LOGICAL PSCONV1, PSCONV4, PSCONV6 - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ2A',0,ZHOOK_HANDLE) - FRST =.TRUE. - CALAIN =.TRUE. - CALAOU =.TRUE. -! - PSCONV1 =.TRUE. - PSCONV4 =.TRUE. - PSCONV6 =.TRUE. -! - PSI1O =-GREAT - PSI4O =-GREAT - PSI6O =-GREAT -! - ROOT1 = ZERO - ROOT2 = ZERO - ROOT3 = ZERO -! -! *** CALCULATE INITIAL SOLUTION *************************************** -! - CALL CALCQ1A -! - CHI1 = CNA2SO4 ! SALTS - CHI4 = CNH4CL - CHI6 = CNH42S4 -! - PSI1 = CNA2SO4 ! AMOUNT DISSOLVED - PSI4 = CNH4CL - PSI5 = CNH4NO3 - PSI6 = CNH42S4 -! - CALL CALCMR ! WATER -! - NAI = WAER(1) ! LIQUID CONCENTRATIONS - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A5 = XK5 *(WATER/GAMA(2))**3. ! Na2SO4 <==> Na+ - A14 = XK14*(WATER/GAMA(6))**2. ! NH4Cl <==> NH4+ - A7 = XK7 *(WATER/GAMA(4))**3. ! (NH4)2SO4 <==> Na+ - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! AMMONIUM CHLORIDE -! - IF (NH4I*CLI .GT. A14) THEN - BB =-(WAER(3) + WAER(5) - 2.D0*ROOT1) - CC = WAER(5)*(WAER(3) - 2.D0*ROOT1) - A14 - DD = BB*BB - 4.D0*CC - IF (DD.LT.ZERO) THEN - ROOT2 = ZERO - ELSE - DD = SQRT(DD) - ROOT2A= 0.5D0*(-BB+DD) - ROOT2B= 0.5D0*(-BB-DD) - IF (ZERO.LE.ROOT2A) THEN - ROOT2 = ROOT2A - ELSE - ROOT2 = ROOT2B - ENDIF - ROOT2 = MIN(ROOT2, WAER(5), WAER(3) - 2.D0*ROOT1, CHI4) - ROOT2 = MAX(ROOT2, ZERO) - PSI4 = CHI4 - ROOT2 - ENDIF - ENDIF - PSCONV4 = ABS(PSI4-PSI4O) .LE. EPS*PSI4O - PSI4O = PSI4 -! -! SODIUM SULFATE -! - IF (NAI*NAI*SO4I .GT. A5) THEN - BB =-(WAER(2) + WAER(1) - ROOT1) - CC = WAER(1)*(WAER(2) - ROOT1) + 0.25*WAER(1)*WAER(1) - DD =-0.25*(WAER(1)*WAER(1)*(WAER(2) - ROOT1) - A5) - CALL POLY3(BB, CC, DD, ROOT3, ISLV) - IF (ISLV.NE.0) ROOT3 = TINY - ROOT3 = MIN (ROOT3, WAER(1)/2.0, WAER(2) - ROOT1, CHI1) - ROOT3 = MAX (ROOT3, ZERO) - PSI1 = CHI1-ROOT3 - ENDIF - PSCONV1 = ABS(PSI1-PSI1O) .LE. EPS*PSI1O - PSI1O = PSI1 -! -! AMMONIUM SULFATE -! - IF (NH4I*NH4I*SO4I .GT. A4) THEN - BB =-(WAER(2)+WAER(3)-ROOT2-ROOT3) - CC = (WAER(3)-ROOT2)*(WAER(2)-ROOT3+0.5D0*(WAER(3)-ROOT2)) - DD =-((WAER(2)-ROOT3)*(WAER(3)-ROOT2)**2.D0 + A4)/4.D0 - CALL POLY3(BB, CC, DD, ROOT1, ISLV) - IF (ISLV.NE.0) ROOT1 = TINY - ROOT1 = MIN(ROOT1, WAER(3)-ROOT2, WAER(2)-ROOT3, CHI6) - ROOT1 = MAX(ROOT1, ZERO) - PSI6 = CHI6-ROOT1 - ENDIF - PSCONV6 = ABS(PSI6-PSI6O) .LE. EPS*PSI6O - PSI6O = PSI6 -! -! ION CONCENTRATIONS -! - NAI = WAER(1) - 2.D0*ROOT3 - SO4I= WAER(2) - ROOT1 - ROOT3 - NH4I= WAER(3) - ROOT2 - 2.D0*ROOT1 - NO3I= WAER(4) - CLI = WAER(5) - ROOT2 -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - HSO4I = ZERO - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - IF (PSCONV1 .AND. PSCONV4 .AND. PSCONV6) GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCQ2A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1)= NH3AQ - GASAQ(2)= CLAQ - GASAQ(3)= NO3AQ -! - CNH42S4 = CHI6 - PSI6 - CNH4NO3 = ZERO - CNH4CL = CHI4 - PSI4 - CNACL = ZERO - CNANO3 = ZERO - CNA2SO4 = CHI1 - PSI1 -! - IF (LHOOK) CALL DR_HOOK('CALCQ2A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ2A ***************************************** -! - ENDSUBROUTINE CALCQ2A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ1 -! *** CASE Q1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, (NH4)2SO4, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - LOGICAL EXNO, EXCL - EXTERNAL CALCQ1A, CALCQ2A, CALCQ3A, CALCQ4 -! -! *** REGIME DEPENDS ON AMBIENT RELATIVE HUMIDITY & POSSIBLE SPECIES *** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ1',0,ZHOOK_HANDLE) - EXNO = WAER(4).GT.TINY - EXCL = WAER(5).GT.TINY -! - IF (EXNO .AND. EXCL) THEN ! *** NITRATE & CHLORIDE EXIST - IF (RH.LT.DRMG1) THEN - SCASE = 'Q1 ; SUBCASE 1' - CALL CALCQ1A ! SOLID - SCASE = 'Q1 ; SUBCASE 1' - ELSE - SCASE = 'Q1 ; SUBCASE 2' ! MDRH (NH4)2SO4, NA2SO4, NH4CL, NH4NO3 - CALL CALCMDRP (RH, DRMG1, DRNH4NO3, CALCQ1A, CALCQ2A) - SCASE = 'Q1 ; SUBCASE 2' - ENDIF -! - ELSE IF (EXNO .AND. .NOT.EXCL) THEN ! *** ONLY NITRATE EXISTS - IF (RH.LT.DRMQ1) THEN - SCASE = 'Q1 ; SUBCASE 1' - CALL CALCQ1A ! SOLID - SCASE = 'Q1 ; SUBCASE 1' - ELSE - SCASE = 'Q1 ; SUBCASE 3' ! MDRH (NH4)2SO4, NA2SO4, NH4NO3 - CALL CALCMDRP (RH, DRMQ1, DRNH4NO3, CALCQ1A, CALCQ2A) - SCASE = 'Q1 ; SUBCASE 3' - ENDIF -! - ELSE IF (.NOT.EXNO .AND. EXCL) THEN ! *** ONLY CHLORIDE EXISTS - IF (RH.LT.DRMG2) THEN - SCASE = 'Q1 ; SUBCASE 1' - CALL CALCQ1A ! SOLID - SCASE = 'Q1 ; SUBCASE 1' - ELSE - SCASE = 'Q1 ; SUBCASE 4' ! MDRH (NH4)2SO4, NA2SO4, NH4CL - CALL CALCMDRP (RH, DRMG2, DRNH4CL, CALCQ1A, CALCQ3A) - SCASE = 'Q1 ; SUBCASE 4' - ENDIF -! - ELSE ! *** NO CHLORIDE AND NITRATE - IF (RH.LT.DRMG3) THEN - SCASE = 'Q1 ; SUBCASE 1' - CALL CALCQ1A ! SOLID - SCASE = 'Q1 ; SUBCASE 1' - ELSE - SCASE = 'Q1 ; SUBCASE 5' ! MDRH (NH4)2SO4, NA2SO4 - CALL CALCMDRP (RH, DRMG3, DRNH42S4, CALCQ1A, CALCQ4) - SCASE = 'Q1 ; SUBCASE 5' - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCQ1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ1 ****************************************** -! - ENDSUBROUTINE CALCQ1 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCQ1A -! *** CASE Q1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM POOR (SODRAT < 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, (NH4)2SO4, NA2SO4 -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCQ1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FRNH3,FRSO4 -! -! *** CALCULATE SOLIDS ************************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCQ1A',0,ZHOOK_HANDLE) - CNA2SO4 = 0.5d0*WAER(1) - FRSO4 = MAX (WAER(2)-CNA2SO4, ZERO) -! - CNH42S4 = MAX (MIN(FRSO4,0.5d0*WAER(3)), TINY) - FRNH3 = MAX (WAER(3)-2.D0*CNH42S4, ZERO) -! - CNH4NO3 = MIN (FRNH3, WAER(4)) -!CC FRNO3 = MAX (WAER(4)-CNH4NO3, ZERO) - FRNH3 = MAX (FRNH3-CNH4NO3, ZERO) -! - CNH4CL = MIN (FRNH3, WAER(5)) -!CC FRCL = MAX (WAER(5)-CNH4CL, ZERO) - FRNH3 = MAX (FRNH3-CNH4CL, ZERO) -! -! *** OTHER PHASES ****************************************************** -! - WATER = ZERO -! - GNH3 = ZERO - GHNO3 = ZERO - GHCL = ZERO -! - IF (LHOOK) CALL DR_HOOK('CALCQ1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCQ1A ***************************************** -! - ENDSUBROUTINE CALCQ1A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR6 -! *** CASE R6 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM RICH (SODRAT >= 2.0) -! 2. THERE IS ONLY A LIQUID PHASE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR6 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: AKW,BB,CC,CLI,DD,DEL,HI,OHI - REAL(KIND=8) :: GG,GGCL,GGNO3,HSO4I,SO4I - INTEGER :: I - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR6',0,ZHOOK_HANDLE) - CALL CALCR1A -! - PSI1 = CNA2SO4 - PSI2 = CNANO3 - PSI3 = CNACL - PSI4 = CNH4CL - PSI5 = CNH4NO3 -! - FRST = .TRUE. - CALAIN = .TRUE. - CALAOU = .TRUE. -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** SETUP LIQUID CONCENTRATIONS ************************************** -! - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! - NAI = WAER(1) - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*WAER(2) + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCR6') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1) = NH3AQ - GASAQ(2) = CLAQ - GASAQ(3) = NO3AQ -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = ZERO - CNACL = ZERO - CNANO3 = ZERO - CNA2SO4 = ZERO -! - IF (LHOOK) CALL DR_HOOK('CALCR6',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR6 ****************************************** -! - ENDSUBROUTINE CALCR6 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR5 -! *** CASE R5 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM RICH (SODRAT >= 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR5 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: AKW,BB,CC,CLI,DD,DEL,GG,HI,OHI - REAL(KIND=8) :: GGCL,GGNO3,HSO4I,SO4I,PSIO,ROOT - INTEGER :: I,ISLV - LOGICAL PSCONV - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! - LOGICAL NEAN, NEAC, NESN, NESC -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR5',0,ZHOOK_HANDLE) - CALL CALCR1A ! DRY SOLUTION -! - NEAN = CNH4NO3.LE.TINY ! NH4NO3 ! Water exists? - NEAC = CNH4CL .LE.TINY ! NH4CL - NESN = CNANO3 .LE.TINY ! NANO3 - NESC = CNACL .LE.TINY ! NACL - IF (NEAN .AND. NEAC .AND. NESN .AND. NESC) THEN - IF (LHOOK) CALL DR_HOOK('CALCR5',1,ZHOOK_HANDLE) - RETURN - ENDIF -! - CHI1 = CNA2SO4 -! - PSI1 = CNA2SO4 - PSI2 = CNANO3 - PSI3 = CNACL - PSI4 = CNH4CL - PSI5 = CNH4NO3 -! - PSIO =-GREAT -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! - FRST = .TRUE. - CALAIN = .TRUE. - CALAOU = .TRUE. - PSCONV = .FALSE. -! -! *** SETUP LIQUID CONCENTRATIONS ************************************** -! - NAI = WAER(1) - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A5 = XK5*(WATER/GAMA(2))**3. ! Na2SO4 <==> Na+ - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! SODIUM SULFATE -! - ROOT = ZERO - IF (NAI*NAI*SO4I .GT. A5) THEN - BB =-3.D0*CHI1 - CC = 3.D0*CHI1**2.0 - DD =-CHI1**3.0 + 0.25D0*A5 - CALL POLY3(BB, CC, DD, ROOT, ISLV) - IF (ISLV.NE.0) ROOT = TINY - ROOT = MIN (MAX(ROOT,ZERO), CHI1) - PSI1 = CHI1-ROOT - ENDIF - PSCONV = ABS(PSI1-PSIO) .LE. EPS*PSIO - PSIO = PSI1 -! -! ION CONCENTRATIONS -! - NAI = WAER(1) - 2.D0*ROOT - SO4I = WAER(2) - ROOT - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - IF (PSCONV) GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCR5') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ -!C A21 = XK21*WATER*R*TEMP - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 ! NH4I*OHI/A2/AKW - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1) = NH3AQ - GASAQ(2) = CLAQ - GASAQ(3) = NO3AQ -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = ZERO - CNACL = ZERO - CNANO3 = ZERO - CNA2SO4 = CHI1 - PSI1 -! - IF (LHOOK) CALL DR_HOOK('CALCR5',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR5 ****************************************** -! - ENDSUBROUTINE CALCR5 -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR4 -! *** CASE R4 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NA2SO4, NANO3, NACL -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR4 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - LOGICAL EXAN, EXAC, EXSN, EXSC - EXTERNAL CALCR1A, CALCR5 -! -! *** SOLVE FOR DRY CASE AND SEE WHICH SOLIDS ARE POSSIBLE ************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR4',0,ZHOOK_HANDLE) - SCASE = 'R4 ; SUBCASE 2' - CALL CALCR1A ! SOLID - SCASE = 'R4 ; SUBCASE 2' -! - EXAN = CNH4NO3.GT.TINY ! NH4NO3 - EXAC = CNH4CL .GT.TINY ! NH4CL - EXSN = CNANO3 .GT.TINY ! NANO3 - EXSC = CNACL .GT.TINY ! NACL -! -! *** REGIME DEPENDS ON RELATIVE HUMIDITY AND POSSIBLE SPECIES ********** -! - IF (EXAN .OR. EXSN .OR. EXSC) THEN ! *** NH4NO3,NANO3 EXIST - IF (RH.GE.DRMH1) THEN - SCASE = 'R4 ; SUBCASE 1' - CALL CALCR4A - SCASE = 'R4 ; SUBCASE 1' - ENDIF -! - ELSE IF (EXAC) THEN ! *** NH4CL EXISTS ONLY - IF (RH.GE.DRMR5) THEN - SCASE = 'R4 ; SUBCASE 3' - CALL CALCMDRP (RH, DRMR5, DRNH4CL, CALCR1A, CALCR5) - SCASE = 'R4 ; SUBCASE 3' - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCR4',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR4 ****************************************** -! - ENDSUBROUTINE CALCR4 - - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR4A -! *** CASE R4A -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM RICH (SODRAT >= 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR4A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: A14,AKW,BB,CC,CLI,DD,DEL,GG,HI,OHI - REAL(KIND=8) :: GGCL,GGNO3,HSO4I,SO4I - REAL(KIND=8) :: PSIO1,PSIO4,ROOT - INTEGER :: I,ISLV - LOGICAL PSCONV1, PSCONV4 - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR4A',0,ZHOOK_HANDLE) - FRST = .TRUE. - CALAIN = .TRUE. - CALAOU = .TRUE. - PSCONV1 = .FALSE. - PSCONV4 = .FALSE. - PSIO1 =-GREAT - PSIO4 =-GREAT -! -! *** CALCULATE INITIAL SOLUTION *************************************** -! - CALL CALCR1A -! - CHI1 = CNA2SO4 ! SALTS - CHI4 = CNH4CL -! - PSI1 = CNA2SO4 - PSI2 = CNANO3 - PSI3 = CNACL - PSI4 = CNH4CL - PSI5 = CNH4NO3 -! - CALL CALCMR ! WATER -! - NAI = WAER(1) ! LIQUID CONCENTRATIONS - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A5 = XK5 *(WATER/GAMA(2))**3. ! Na2SO4 <==> Na+ - A14 = XK14*(WATER/GAMA(6))**2. ! NH4Cl <==> NH4+ - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! SODIUM SULFATE -! - ROOT = ZERO - IF (NAI*NAI*SO4I .GT. A5) THEN - BB =-3.D0*CHI1 - CC = 3.D0*CHI1**2.0 - DD =-CHI1**3.0 + 0.25D0*A5 - CALL POLY3(BB, CC, DD, ROOT, ISLV) - IF (ISLV.NE.0) ROOT = TINY - ROOT = MIN (MAX(ROOT,ZERO), CHI1) - PSI1 = CHI1-ROOT - NAI = WAER(1) - 2.D0*ROOT - SO4I = WAER(2) - ROOT - ENDIF - PSCONV1 = ABS(PSI1-PSIO1) .LE. EPS*PSIO1 - PSIO1 = PSI1 -! -! AMMONIUM CHLORIDE -! - ROOT = ZERO - IF (NH4I*CLI .GT. A14) THEN - BB =-(NH4I + CLI) - CC =-A14 + NH4I*CLI - DD = BB*BB - 4.D0*CC - ROOT = 0.5D0*(-BB-SQRT(DD)) - IF (ROOT.GT.TINY) THEN - ROOT = MIN(ROOT, CHI4) - PSI4 = CHI4 - ROOT - NH4I = WAER(3) - ROOT - CLI = WAER(5) - ROOT - ENDIF - ENDIF - PSCONV4 = ABS(PSI4-PSIO4) .LE. EPS*PSIO4 - PSIO4 = PSI4 -! - NO3I = WAER(4) -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - IF (PSCONV1 .AND. PSCONV4) GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCR4A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1)= NH3AQ - GASAQ(2)= CLAQ - GASAQ(3)= NO3AQ -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = CHI4 - PSI4 - CNACL = ZERO - CNANO3 = ZERO - CNA2SO4 = CHI1 - PSI1 -! - IF (LHOOK) CALL DR_HOOK('CALCR4A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR4A ***************************************** -! - ENDSUBROUTINE CALCR4A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR3 -! *** CASE R3 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NA2SO4, NANO3, NACL -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR3 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - LOGICAL EXAN, EXAC, EXSN, EXSC - EXTERNAL CALCR1A, CALCR4A, CALCR5 -! -! *** SOLVE FOR DRY CASE AND SEE WHICH SOLIDS ARE POSSIBLE ************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR3',0,ZHOOK_HANDLE) - SCASE = 'R3 ; SUBCASE 2' - CALL CALCR1A ! SOLID - SCASE = 'R3 ; SUBCASE 2' -! - EXAN = CNH4NO3.GT.TINY ! NH4NO3 - EXAC = CNH4CL .GT.TINY ! NH4CL - EXSN = CNANO3 .GT.TINY ! NANO3 - EXSC = CNACL .GT.TINY ! NACL -! -! *** REGIME DEPENDS ON RELATIVE HUMIDITY AND POSSIBLE SPECIES ********** -! - IF (EXAN .OR. EXSN) THEN ! *** NH4NO3,NANO3 EXIST - IF (RH.GE.DRMH1) THEN - SCASE = 'R3 ; SUBCASE 1' - CALL CALCR3A - SCASE = 'R3 ; SUBCASE 1' - ENDIF -! - ELSE IF (.NOT.EXAN .AND. .NOT.EXSN) THEN ! *** NH4NO3,NANO3 = 0 - IF ( EXAC .AND. EXSC) THEN - IF (RH.GE.DRMR4) THEN - SCASE = 'R3 ; SUBCASE 3' - CALL CALCMDRP (RH, DRMR4, DRNACL, CALCR1A, CALCR4A) - SCASE = 'R3 ; SUBCASE 3' - ENDIF - - ELSE IF (.NOT.EXAC .AND. EXSC) THEN - IF (RH.GE.DRMR2) THEN - SCASE = 'R3 ; SUBCASE 4' - CALL CALCMDRP (RH, DRMR2, DRNACL, CALCR1A, CALCR4A) - SCASE = 'R3 ; SUBCASE 4' - ENDIF - - ELSE IF ( EXAC .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR5) THEN - SCASE = 'R3 ; SUBCASE 5' - CALL CALCMDRP (RH, DRMR5, DRNACL, CALCR1A, CALCR5) - SCASE = 'R3 ; SUBCASE 5' - ENDIF - ENDIF -! - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCR3',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR3 ****************************************** -! - ENDSUBROUTINE CALCR3 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR3A -! *** CASE R3A -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM RICH (SODRAT >= 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR3A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: A14,AKW,BB,CC,CLI,DD,DEL,GG,HI,OHI - REAL(KIND=8) :: GGCL,GGNO3,HSO4I,SO4I - REAL(KIND=8) :: PSI1O,PSI3O,PSI4O - REAL(KIND=8) :: ROOT1,ROOT2,ROOT2A,ROOT2B,ROOT3,ROOT3A,ROOT3B - INTEGER :: I,ISLV - LOGICAL PSCONV1, PSCONV3, PSCONV4 - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR3A',0,ZHOOK_HANDLE) - FRST =.TRUE. - CALAIN =.TRUE. - CALAOU =.TRUE. - PSCONV1 =.TRUE. - PSCONV3 =.TRUE. - PSCONV4 =.TRUE. - PSI1O =-GREAT - PSI3O =-GREAT - PSI4O =-GREAT - ROOT1 = ZERO - ROOT2 = ZERO - ROOT3 = ZERO -! -! *** CALCULATE INITIAL SOLUTION *************************************** -! - CALL CALCR1A -! - CHI1 = CNA2SO4 ! SALTS - CHI4 = CNH4CL - CHI3 = CNACL -! - PSI1 = CNA2SO4 - PSI2 = CNANO3 - PSI3 = CNACL - PSI4 = CNH4CL - PSI5 = CNH4NO3 -! - CALL CALCMR ! WATER -! - NAI = WAER(1) ! LIQUID CONCENTRATIONS - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! - MOLAL(1) = ZERO - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! - CALL CALCACT ! CALCULATE ACTIVITY COEFFICIENTS -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A5 = XK5 *(WATER/GAMA(2))**3. ! Na2SO4 <==> Na+ - A8 = XK8 *(WATER/GAMA(1))**2. ! NaCl <==> Na+ - A14 = XK14*(WATER/GAMA(6))**2. ! NH4Cl <==> NH4+ - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! AMMONIUM CHLORIDE -! - IF (NH4I*CLI .GT. A14) THEN - BB =-(WAER(3) + WAER(5) - ROOT3) - CC =-A14 + NH4I*(WAER(5) - ROOT3) - DD = MAX(BB*BB - 4.D0*CC, ZERO) - ROOT2A= 0.5D0*(-BB+SQRT(DD)) - ROOT2B= 0.5D0*(-BB-SQRT(DD)) - IF (ZERO.LE.ROOT2A) THEN - ROOT2 = ROOT2A - ELSE - ROOT2 = ROOT2B - ENDIF - ROOT2 = MIN(MAX(ZERO, ROOT2), MAX(WAER(5)-ROOT3,ZERO), & - & CHI4, WAER(3)) - PSI4 = CHI4 - ROOT2 - ENDIF - PSCONV4 = ABS(PSI4-PSI4O) .LE. EPS*PSI4O - PSI4O = PSI4 -! -! SODIUM SULFATE -! - IF (NAI*NAI*SO4I .GT. A5) THEN - BB =-(CHI1 + WAER(1) - ROOT3) - CC = 0.25D0*(WAER(1) - ROOT3)*(4.D0*CHI1+WAER(1)-ROOT3) - DD =-0.25D0*(CHI1*(WAER(1)-ROOT3)**2.D0 - A5) - CALL POLY3(BB, CC, DD, ROOT1, ISLV) - IF (ISLV.NE.0) ROOT1 = TINY - ROOT1 = MIN (MAX(ROOT1,ZERO), MAX(WAER(1)-ROOT3,ZERO), & - & CHI1, WAER(2)) - PSI1 = CHI1-ROOT1 - ENDIF - PSCONV1 = ABS(PSI1-PSI1O) .LE. EPS*PSI1O - PSI1O = PSI1 -! -! ION CONCENTRATIONS -! - NAI = WAER(1) - (2.D0*ROOT1 + ROOT3) - SO4I= WAER(2) - ROOT1 - NH4I= WAER(3) - ROOT2 - CLI = WAER(5) - (ROOT3 + ROOT2) - NO3I= WAER(4) -! -! SODIUM CHLORIDE ; To obtain new value for ROOT3 -! - IF (NAI*CLI .GT. A8) THEN - BB =-((CHI1-2.D0*ROOT1) + (WAER(5) - ROOT2)) - CC = (CHI1-2.D0*ROOT1)*(WAER(5) - ROOT2) - A8 - DD = SQRT(MAX(BB*BB - 4.D0*CC, TINY)) - ROOT3A= 0.5D0*(-BB-SQRT(DD)) - ROOT3B= 0.5D0*(-BB+SQRT(DD)) - IF (ZERO.LE.ROOT3A) THEN - ROOT3 = ROOT3A - ELSE - ROOT3 = ROOT3B - ENDIF - ROOT3 = MIN(MAX(ROOT3, ZERO), CHI3) - PSI3 = CHI3-ROOT3 - ENDIF - PSCONV3 = ABS(PSI3-PSI3O) .LE. EPS*PSI3O - PSI3O = PSI3 -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - IF (PSCONV1.AND.PSCONV3.AND.PSCONV4) GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCR3A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 IF (CLI.LE.TINY .AND. WAER(5).GT.TINY) THEN !No disslv Cl-;solid only - DO 30 I=1,NIONS - MOLAL(I) = ZERO -30 CONTINUE - DO 40 I=1,NGASAQ - GASAQ(I) = ZERO -40 CONTINUE - CALL CALCR1A - ELSE - A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1)= NH3AQ - GASAQ(2)= CLAQ - GASAQ(3)= NO3AQ -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = CHI4 - PSI4 - CNACL = CHI3 - PSI3 - CNANO3 = ZERO - CNA2SO4 = CHI1 - PSI1 - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCR3A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR3A ***************************************** -! - ENDSUBROUTINE CALCR3A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR2 -! *** CASE R2 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NA2SO4, NANO3, NACL -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR2 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - LOGICAL EXAN, EXAC, EXSN, EXSC - EXTERNAL CALCR1A, CALCR3A, CALCR4A, CALCR5 -! -! *** SOLVE FOR DRY CASE AND SEE WHICH SOLIDS ARE POSSIBLE ************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR2',0,ZHOOK_HANDLE) - SCASE = 'R2 ; SUBCASE 2' - CALL CALCR1A ! SOLID - SCASE = 'R2 ; SUBCASE 2' -! - EXAN = CNH4NO3.GT.TINY ! NH4NO3 - EXAC = CNH4CL .GT.TINY ! NH4CL - EXSN = CNANO3 .GT.TINY ! NANO3 - EXSC = CNACL .GT.TINY ! NACL -! -! *** REGIME DEPENDS ON RELATIVE HUMIDITY AND POSSIBLE SPECIES ********** -! - IF (EXAN) THEN ! *** NH4NO3 EXISTS - IF (RH.GE.DRMH1) THEN - SCASE = 'R2 ; SUBCASE 1' - CALL CALCR2A - SCASE = 'R2 ; SUBCASE 1' - ENDIF -! - ELSE IF (.NOT.EXAN) THEN ! *** NH4NO3 = 0 - IF ( EXAC .AND. EXSN .AND. EXSC) THEN - IF (RH.GE.DRMH2) THEN - SCASE = 'R2 ; SUBCASE 3' - CALL CALCMDRP (RH, DRMH2, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R2 ; SUBCASE 3' - ENDIF - - ELSE IF (.NOT.EXAC .AND. EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR1) THEN - SCASE = 'R2 ; SUBCASE 4' - CALL CALCMDRP (RH, DRMR1, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R2 ; SUBCASE 4' - ENDIF - - ELSE IF (.NOT.EXAC .AND. .NOT.EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR2) THEN - SCASE = 'R2 ; SUBCASE 5' - CALL CALCMDRP (RH, DRMR2, DRNACL, CALCR1A, CALCR4A) - SCASE = 'R2 ; SUBCASE 5' - ENDIF - - ELSE IF (.NOT.EXAC .AND. EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR3) THEN - SCASE = 'R2 ; SUBCASE 6' - CALL CALCMDRP (RH, DRMR3, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R2 ; SUBCASE 6' - ENDIF - - ELSE IF ( EXAC .AND. .NOT.EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR4) THEN - SCASE = 'R2 ; SUBCASE 7' - CALL CALCMDRP (RH, DRMR4, DRNACL, CALCR1A, CALCR4A) - SCASE = 'R2 ; SUBCASE 7' - ENDIF - - ELSE IF ( EXAC .AND. .NOT.EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR5) THEN - SCASE = 'R2 ; SUBCASE 8' - CALL CALCMDRP (RH, DRMR5, DRNH4CL, CALCR1A, CALCR5) - SCASE = 'R2 ; SUBCASE 8' - ENDIF - - ELSE IF ( EXAC .AND. EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR6) THEN - SCASE = 'R2 ; SUBCASE 9' - CALL CALCMDRP (RH, DRMR6, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R2 ; SUBCASE 9' - ENDIF - ENDIF -! - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCR2',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR2 ****************************************** -! - ENDSUBROUTINE CALCR2 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR2A -! *** CASE R2A -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0); SODIUM RICH (SODRAT >= 2.0) -! 2. LIQUID AND SOLID PHASES ARE POSSIBLE -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR2A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' -! - REAL(KIND=8) :: A14,A9,AKW,BB,CC,CLI,DD,DEL,GG,HI,OHI - REAL(KIND=8) :: GGCL,GGNO3,HSO4I,SO4I - REAL(KIND=8) :: PSI1O,PSI2O,PSI3O,PSI4O - REAL(KIND=8) :: ROOT1,ROOT2,ROOT2A,ROOT2B - REAL(KIND=8) :: ROOT3,ROOT3A,ROOT3B,ROOT4,ROOT4A,ROOT4B - INTEGER :: I,ISLV - LOGICAL PSCONV1, PSCONV2, PSCONV3, PSCONV4 - REAL(KIND=8) :: NH4I, NAI, NO3I, NH3AQ, NO3AQ, CLAQ - REAL(KIND=8) :: CHI1,CHI2,CHI3,CHI4,CHI5,CHI6,CHI7,CHI8 - REAL(KIND=8) :: PSI1,PSI2,PSI3,PSI4,PSI5,PSI6,PSI7,PSI8 - REAL(KIND=8) :: A1,A2,A3,A4,A5,A6,A7,A8 - COMMON /SOLUT/ CHI1, CHI2, CHI3, CHI4, CHI5, CHI6, CHI7, CHI8, & - & PSI1, PSI2, PSI3, PSI4, PSI5, PSI6, PSI7, PSI8, & - & A1, A2, A3, A4, A5, A6, A7, A8 -! -! *** SETUP PARAMETERS ************************************************ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR2A',0,ZHOOK_HANDLE) - FRST =.TRUE. - CALAIN =.TRUE. - CALAOU =.TRUE. -! - PSCONV1 =.TRUE. - PSCONV2 =.TRUE. - PSCONV3 =.TRUE. - PSCONV4 =.TRUE. -! - PSI1O =-GREAT - PSI2O =-GREAT - PSI3O =-GREAT - PSI4O =-GREAT -! - ROOT1 = ZERO - ROOT2 = ZERO - ROOT3 = ZERO - ROOT4 = ZERO -! -! *** CALCULATE INITIAL SOLUTION *************************************** -! - CALL CALCR1A -! - CHI1 = CNA2SO4 ! SALTS - CHI2 = CNANO3 - CHI3 = CNACL - CHI4 = CNH4CL -! - PSI1 = CNA2SO4 - PSI2 = CNANO3 - PSI3 = CNACL - PSI4 = CNH4CL - PSI5 = CNH4NO3 -! - CALL CALCMR ! WATER -! - NAI = WAER(1) ! LIQUID CONCENTRATIONS - SO4I = WAER(2) - NH4I = WAER(3) - NO3I = WAER(4) - CLI = WAER(5) - HSO4I = ZERO - NH3AQ = ZERO - NO3AQ = ZERO - CLAQ = ZERO -! - MOLAL(1) = ZERO - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! - CALL CALCACT ! CALCULATE ACTIVITY COEFFICIENTS -! -! *** SOLVE EQUATIONS ; WITH ITERATIONS FOR ACTIVITY COEF. ************ -! - DO 10 I=1,NSWEEP - A5 = XK5 *(WATER/GAMA(2))**3. ! Na2SO4 <==> Na+ - A8 = XK8 *(WATER/GAMA(1))**2. ! NaCl <==> Na+ - A9 = XK9 *(WATER/GAMA(3))**2. ! NaNO3 <==> Na+ - A14 = XK14*(WATER/GAMA(6))**2. ! NH4Cl <==> NH4+ - AKW = XKW*RH*WATER*WATER ! H2O <==> H+ -! -! AMMONIUM CHLORIDE -! - IF (NH4I*CLI .GT. A14) THEN - BB =-(WAER(3) + WAER(5) - ROOT3) - CC = NH4I*(WAER(5) - ROOT3) - A14 - DD = MAX(BB*BB - 4.D0*CC, ZERO) - DD = SQRT(DD) - ROOT2A= 0.5D0*(-BB+DD) - ROOT2B= 0.5D0*(-BB-DD) - IF (ZERO.LE.ROOT2A) THEN - ROOT2 = ROOT2A - ELSE - ROOT2 = ROOT2B - ENDIF - ROOT2 = MIN(MAX(ROOT2, ZERO), CHI4) - PSI4 = CHI4 - ROOT2 - ENDIF - PSCONV4 = ABS(PSI4-PSI4O) .LE. EPS*PSI4O - PSI4O = PSI4 -! -! SODIUM SULFATE -! - IF (NAI*NAI*SO4I .GT. A5) THEN - BB =-(WAER(2) + WAER(1) - ROOT3 - ROOT4) - CC = WAER(1)*(2.D0*ROOT3 + 2.D0*ROOT4 - 4.D0*WAER(2) - ONE) & - & -(ROOT3 + ROOT4)**2.0 + 4.D0*WAER(2)*(ROOT3 + ROOT4) - CC =-0.25*CC - DD = WAER(1)*WAER(2)*(ONE - 2.D0*ROOT3 - 2.D0*ROOT4) + & - & WAER(2)*(ROOT3 + ROOT4)**2.0 - A5 - DD =-0.25*DD - CALL POLY3(BB, CC, DD, ROOT1, ISLV) - IF (ISLV.NE.0) ROOT1 = TINY - ROOT1 = MIN (MAX(ROOT1,ZERO), CHI1) - PSI1 = CHI1-ROOT1 - ENDIF - PSCONV1 = ABS(PSI1-PSI1O) .LE. EPS*PSI1O - PSI1O = PSI1 -! -! SODIUM NITRATE -! - IF (NAI*NO3I .GT. A9) THEN - BB =-(WAER(4) + WAER(1) - 2.D0*ROOT1 - ROOT3) - CC = WAER(4)*(WAER(1) - 2.D0*ROOT1 - ROOT3) - A9 - DD = SQRT(MAX(BB*BB - 4.D0*CC, TINY)) - ROOT4A= 0.5D0*(-BB-DD) - ROOT4B= 0.5D0*(-BB+DD) - IF (ZERO.LE.ROOT4A) THEN - ROOT4 = ROOT4A - ELSE - ROOT4 = ROOT4B - ENDIF - ROOT4 = MIN(MAX(ROOT4, ZERO), CHI2) - PSI2 = CHI2-ROOT4 - ENDIF - PSCONV2 = ABS(PSI2-PSI2O) .LE. EPS*PSI2O - PSI2O = PSI2 -! -! ION CONCENTRATIONS -! - NAI = WAER(1) - (2.D0*ROOT1 + ROOT3 + ROOT4) - SO4I= WAER(2) - ROOT1 - NH4I= WAER(3) - ROOT2 - NO3I= WAER(4) - ROOT4 - CLI = WAER(5) - (ROOT3 + ROOT2) -! -! SODIUM CHLORIDE ; To obtain new value for ROOT3 -! - IF (NAI*CLI .GT. A8) THEN - BB =-(WAER(1) - 2.D0*ROOT1 + WAER(5) - ROOT2 - ROOT4) - CC = (WAER(5) + ROOT2)*(WAER(1) - 2.D0*ROOT1 - ROOT4) - A8 - DD = SQRT(MAX(BB*BB - 4.D0*CC, TINY)) - ROOT3A= 0.5D0*(-BB-DD) - ROOT3B= 0.5D0*(-BB+DD) - IF (ZERO.LE.ROOT3A) THEN - ROOT3 = ROOT3A - ELSE - ROOT3 = ROOT3B - ENDIF - ROOT3 = MIN(MAX(ROOT3, ZERO), CHI3) - PSI3 = CHI3-ROOT3 - ENDIF - PSCONV3 = ABS(PSI3-PSI3O) .LE. EPS*PSI3O - PSI3O = PSI3 -! -! SOLUTION ACIDIC OR BASIC? -! - GG = 2.D0*SO4I + NO3I + CLI - NAI - NH4I - IF (GG.GT.TINY) THEN ! H+ in excess - BB =-GG - CC =-AKW - DD = BB*BB - 4.D0*CC - HI = 0.5D0*(-BB + SQRT(DD)) - OHI= AKW/HI - ELSE ! OH- in excess - BB = GG - CC =-AKW - DD = BB*BB - 4.D0*CC - OHI= 0.5D0*(-BB + SQRT(DD)) - HI = AKW/OHI - ENDIF -! -! UNDISSOCIATED SPECIES EQUILIBRIA -! - IF (HI.LT.OHI) THEN - CALL CALCAMAQ2 (-GG, NH4I, OHI, NH3AQ) - HI = AKW/OHI - ELSE - GGNO3 = MAX(2.D0*SO4I + NO3I - NAI - NH4I, ZERO) - GGCL = MAX(GG-GGNO3, ZERO) - IF (GGCL .GT.TINY) CALL CALCCLAQ2 (GGCL, CLI, HI, CLAQ) ! HCl - IF (GGNO3.GT.TINY) THEN - IF (GGCL.LE.TINY) HI = ZERO - CALL CALCNIAQ2 (GGNO3, NO3I, HI, NO3AQ) ! HNO3 - ENDIF -! -! CONCENTRATION ADJUSTMENTS ; HSO4 minor species. -! - CALL CALCHS4 (HI, SO4I, ZERO, DEL) - SO4I = SO4I - DEL - HI = HI - DEL - HSO4I = DEL - OHI = AKW/HI - ENDIF -! -! *** SAVE CONCENTRATIONS IN MOLAL ARRAY ****************************** -! - MOLAL(1) = HI - MOLAL(2) = NAI - MOLAL(3) = NH4I - MOLAL(4) = CLI - MOLAL(5) = SO4I - MOLAL(6) = HSO4I - MOLAL(7) = NO3I -! -! *** CALCULATE WATER ************************************************** -! - CALL CALCMR -! -! *** CALCULATE ACTIVITIES OR TERMINATE INTERNAL LOOP ***************** -! - IF (FRST.AND.CALAOU .OR. .NOT.FRST.AND.CALAIN) THEN - CALL CALCACT - ELSE - IF (PSCONV1.AND.PSCONV2.AND.PSCONV3.AND.PSCONV4) GOTO 20 - ENDIF -10 CONTINUE -!cc CALL PUSHERR (0002, 'CALCR2A') ! WARNING ERROR: NO CONVERGENCE -! -! *** CALCULATE GAS / SOLID SPECIES (LIQUID IN MOLAL ALREADY) ********* -! -20 IF (CLI.LE.TINY .AND. WAER(5).GT.TINY) THEN !No disslv Cl-;solid only - DO 30 I=1,NIONS - MOLAL(I) = ZERO -30 CONTINUE - DO 40 I=1,NGASAQ - GASAQ(I) = ZERO -40 CONTINUE - CALL CALCR1A - ELSE ! OK, aqueous phase present - A2 = (XK2/XKW)*R*TEMP*(GAMA(10)/GAMA(5))**2. ! NH3 <==> NH4+ - A3 = XK4 *R*TEMP*(WATER/GAMA(10))**2. ! HNO3 <==> NO3- - A4 = XK3 *R*TEMP*(WATER/GAMA(11))**2. ! HCL <==> CL- -! - GNH3 = NH4I/HI/A2 - GHNO3 = HI*NO3I/A3 - GHCL = HI*CLI /A4 -! - GASAQ(1)= NH3AQ - GASAQ(2)= CLAQ - GASAQ(3)= NO3AQ -! - CNH42S4 = ZERO - CNH4NO3 = ZERO - CNH4CL = CHI4 - PSI4 - CNACL = CHI3 - PSI3 - CNANO3 = CHI2 - PSI2 - CNA2SO4 = CHI1 - PSI1 - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCR2A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR2A ***************************************** -! - ENDSUBROUTINE CALCR2A -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR1 -! *** CASE R1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NA2SO4, NANO3, NACL -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR1 - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - LOGICAL EXAN, EXAC, EXSN, EXSC - EXTERNAL CALCR1A, CALCR2A, CALCR3A, CALCR4A, CALCR5 -! -! *** SOLVE FOR DRY CASE AND SEE WHICH SOLIDS ARE POSSIBLE ************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR1',0,ZHOOK_HANDLE) - SCASE = 'R1 ; SUBCASE 1' - CALL CALCR1A ! SOLID - SCASE = 'R1 ; SUBCASE 1' -! - EXAN = CNH4NO3.GT.TINY ! NH4NO3 - EXAC = CNH4CL .GT.TINY ! NH4CL - EXSN = CNANO3 .GT.TINY ! NANO3 - EXSC = CNACL .GT.TINY ! NACL -! -! *** REGIME DEPENDS ON RELATIVE HUMIDITY AND POSSIBLE SPECIES ********** -! - IF (EXAN.AND.EXAC.AND.EXSC.AND.EXSN) THEN ! *** ALL EXIST - IF (RH.GE.DRMH1) THEN - SCASE = 'R1 ; SUBCASE 2' ! MDRH - CALL CALCMDRP (RH, DRMH1, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 2' - ENDIF -! - ELSE IF (.NOT.EXAN) THEN ! *** NH4NO3 = 0 - IF ( EXAC .AND. EXSN .AND. EXSC) THEN - IF (RH.GE.DRMH2) THEN - SCASE = 'R1 ; SUBCASE 3' - CALL CALCMDRP (RH, DRMH2, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R1 ; SUBCASE 3' - ENDIF - - ELSE IF (.NOT.EXAC .AND. EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR1) THEN - SCASE = 'R1 ; SUBCASE 4' - CALL CALCMDRP (RH, DRMR1, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R1 ; SUBCASE 4' - ENDIF - - ELSE IF (.NOT.EXAC .AND. .NOT.EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR2) THEN - SCASE = 'R1 ; SUBCASE 5' - CALL CALCMDRP (RH, DRMR2, DRNACL, CALCR1A, CALCR3A) !, CALCR4A) - SCASE = 'R1 ; SUBCASE 5' - ENDIF - - ELSE IF (.NOT.EXAC .AND. EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR3) THEN - SCASE = 'R1 ; SUBCASE 6' - CALL CALCMDRP (RH, DRMR3, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R1 ; SUBCASE 6' - ENDIF - - ELSE IF ( EXAC .AND. .NOT.EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR4) THEN - SCASE = 'R1 ; SUBCASE 7' - CALL CALCMDRP (RH, DRMR4, DRNACL, CALCR1A, CALCR3A) !, CALCR4A) - SCASE = 'R1 ; SUBCASE 7' - ENDIF - - ELSE IF ( EXAC .AND. .NOT.EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR5) THEN - SCASE = 'R1 ; SUBCASE 8' - CALL CALCMDRP (RH, DRMR5, DRNH4CL, CALCR1A, CALCR3A) !, CALCR5) - SCASE = 'R1 ; SUBCASE 8' - ENDIF - - ELSE IF ( EXAC .AND. EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR6) THEN - SCASE = 'R1 ; SUBCASE 9' - CALL CALCMDRP (RH, DRMR6, DRNANO3, CALCR1A, CALCR3A) - SCASE = 'R1 ; SUBCASE 9' - ENDIF - ENDIF -! - ELSE IF (.NOT.EXAC) THEN ! *** NH4CL = 0 - IF ( EXAN .AND. EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR7) THEN - SCASE = 'R1 ; SUBCASE 10' - CALL CALCMDRP (RH, DRMR7, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 10' - ENDIF - - ELSE IF ( EXAN .AND. .NOT.EXSN .AND. EXSC) THEN - IF (RH.GE.DRMR8) THEN - SCASE = 'R1 ; SUBCASE 11' - CALL CALCMDRP (RH, DRMR8, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 11' - ENDIF - - ELSE IF ( EXAN .AND. .NOT.EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR9) THEN - SCASE = 'R1 ; SUBCASE 12' - CALL CALCMDRP (RH, DRMR9, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 12' - ENDIF - - ELSE IF ( EXAN .AND. EXSN .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR10) THEN - SCASE = 'R1 ; SUBCASE 13' - CALL CALCMDRP (RH, DRMR10, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 13' - ENDIF - ENDIF -! - ELSE IF (.NOT.EXSN) THEN ! *** NANO3 = 0 - IF ( EXAN .AND. EXAC .AND. EXSC) THEN - IF (RH.GE.DRMR11) THEN - SCASE = 'R1 ; SUBCASE 14' - CALL CALCMDRP (RH, DRMR11, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 14' - ENDIF - - ELSE IF ( EXAN .AND. EXAC .AND. .NOT.EXSC) THEN - IF (RH.GE.DRMR12) THEN - SCASE = 'R1 ; SUBCASE 15' - CALL CALCMDRP (RH, DRMR12, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 15' - ENDIF - ENDIF -! - ELSE IF (.NOT.EXSC) THEN ! *** NACL = 0 - IF ( EXAN .AND. EXAC .AND. EXSN) THEN - IF (RH.GE.DRMR13) THEN - SCASE = 'R1 ; SUBCASE 16' - CALL CALCMDRP (RH, DRMR13, DRNH4NO3, CALCR1A, CALCR2A) - SCASE = 'R1 ; SUBCASE 16' - ENDIF - ENDIF - ENDIF -! - IF (LHOOK) CALL DR_HOOK('CALCR1',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR1 ****************************************** -! - ENDSUBROUTINE CALCR1 - - -!======================================================================= -! -! *** ISORROPIA CODE -! *** SUBROUTINE CALCR1A -! *** CASE R1 ; SUBCASE 1 -! -! THE MAIN CHARACTERISTICS OF THIS REGIME ARE: -! 1. SULFATE POOR (SULRAT > 2.0) ; SODIUM RICH (SODRAT >= 2.0) -! 2. SOLID AEROSOL ONLY -! 3. SOLIDS POSSIBLE : NH4NO3, NH4CL, NANO3, NA2SO4, NANO3, NACL -! -! *** COPYRIGHT 1996-2000, UNIVERSITY OF MIAMI, CARNEGIE MELLON UNIVERSITY -! *** WRITTEN BY ATHANASIOS NENES -! -!======================================================================= -! - SUBROUTINE CALCR1A - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - INCLUDE 'isrpia.inc' - REAL(KIND=8) :: FRCL,FRNA,FRNH3,FRNO3 -! -! *** CALCULATE SOLIDS ************************************************** -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('CALCR1A',0,ZHOOK_HANDLE) - CNA2SO4 = WAER(2) - FRNA = MAX (WAER(1)-2*CNA2SO4, ZERO) -! - CNH42S4 = ZERO -! - CNANO3 = MIN (FRNA, WAER(4)) - FRNO3 = MAX (WAER(4)-CNANO3, ZERO) - FRNA = MAX (FRNA-CNANO3, ZERO) -! - CNACL = MIN (FRNA, WAER(5)) - FRCL = MAX (WAER(5)-CNACL, ZERO) - FRNA = MAX (FRNA-CNACL, ZERO) -! - CNH4NO3 = MIN (FRNO3, WAER(3)) - FRNO3 = MAX (FRNO3-CNH4NO3, ZERO) - FRNH3 = MAX (WAER(3)-CNH4NO3, ZERO) -! - CNH4CL = MIN (FRCL, FRNH3) - FRCL = MAX (FRCL-CNH4CL, ZERO) - FRNH3 = MAX (FRNH3-CNH4CL, ZERO) -! -! *** OTHER PHASES ****************************************************** -! - WATER = ZERO -! - GNH3 = ZERO - GHNO3 = ZERO - GHCL = ZERO -! - IF (LHOOK) CALL DR_HOOK('CALCR1A',1,ZHOOK_HANDLE) -! -! *** END OF SUBROUTINE CALCR1A ***************************************** -! - ENDSUBROUTINE CALCR1A diff --git a/src/arome/chem/internals/jspec1.F b/src/arome/chem/internals/jspec1.F deleted file mode 100644 index 910ae54e2ffef74e3e385f115b512d55674fed09..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/jspec1.F +++ /dev/null @@ -1,2872 +0,0 @@ -! ######spl - SUBROUTINE jspec1(nw,wl,nz,tlev,airlev, & - & j,sq,jlabel) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=16000) - -! input - - INTEGER nw - REAL wl(kw), wc(kw) - - INTEGER nz - - REAL tlev(kz) - REAL airlev(kz) - -! weighting functions - - CHARACTER*40 jlabel(kj) - REAL sq(kj,kz,kw) - -! input/output: - INTEGER j - -! data arrays - - INTEGER n1, n2, n3, n4, n5 - REAL x1(kdata), x2(kdata), x3(kdata), x4(kdata), x5(kdata) - REAL y1(kdata), y2(kdata), y3(kdata), y4(kdata), y5(kdata) - -! local - - REAL yg(kw), yg1(kw), yg2(kw), yg3(kw), yg4(kw), yg5(kw) - REAL xso3(kw),s226(kw),s263(kw),s298(kw) - REAL xsno2(kz,kw) - REAL qy, qy1d, qy3p - REAL p298, p230 - REAL phi1, phi2, phi20 - REAL tau, tau2, tau3 - REAL ak300, akt, temp - REAL a, b, c - REAL a0, a1, a2, a3, a4, a5, a6, a7 - REAL b0, b1, b2, b3, b4 - REAL xl, xl0 - REAL so3 - REAL sigma - REAL xs - REAL t - REAL dum - INTEGER iyld - INTEGER kmich, kjpl87, kjpl92, kshet - INTEGER irow, icol - INTEGER i, irev, iw, n, idum - INTEGER ierr - INTEGER iz, k - REAL slope,lambda, sum - REAL sumA, sumB, chi - CHARACTER*120 inline - - REAL coeff(4,3), TBar, LBar - -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('JSPEC1',0,ZHOOK_HANDLE) - DO 5, iw = 1, nw - 1 - wc(iw) = (wl(iw) + wl(iw+1))/2. - 5 CONTINUE - -!*************************************************************** -!*************** NO2 photodissociation - - j = j + 1 - jlabel(j) = 'NO2 -> NO + O(3P)' - -! cross section -! measurements of Davidson et al. (198x) at 273K -! from 263.8 to 648.8 nm in approximately 0.5 nm intervals - -! OPEN(UNIT=kin,FILE='DATAE1/NO2/NO2_ncar_00.abs',STATUS='old') -! n = 750 -! DO i = 1, n -! READ(kin,*) x1(i), y1(i), dum, dum, idum -! ENDDO -! CLOSE(kin) - -! CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 0.,0.) -! CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) -! CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -! cross section data from JPL 94 recommendation - - OPEN(UNIT=kin,FILE='DATAE1/NO2/NO2_jpl94.abs',STATUS='old') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO -! read in wavelength bins, cross section at T0 and temperature correction -! coefficient a; see input file for details. -! data need to be scaled to total area per bin so that they can be used with -! inter3 - DO i = 1, n - READ(kin,*) x1(i), x3(i), y1(i), dum, y2(i) - y1(i) = (x3(i)-x1(i)) * y1(i)*1E-20 - y2(i) = (x3(i)-x1(i)) * y2(i)*1E-22 - x2(i) = x1(i) - ENDDO - CLOSE(kin) - - x1(n+1) = x3(n) - x2(n+1) = x3(n) - n = n+1 - n1 = n - - CALL inter3(nw,wl,yg1,n,x1,y1,0) - - CALL inter3(nw,wl,yg2,n1,x2,y2,0) - -! yg1, yg2 are per nm, so rescale by bin widths - DO iw = 1, nw-1 - yg1(iw) = yg1(iw)/(wl(iw+1)-wl(iw)) - yg2(iw) = yg2(iw)/(wl(iw+1)-wl(iw)) - ENDDO - - DO iw = 1, nw-1 - DO i = 1, nz - xsno2(i,iw) = yg1(iw) + yg2(iw)*(tlev(i)-273.15) - ENDDO - ENDDO - -! quantum yield -! from Gardiner, Sperry, and Calvert - - OPEN(UNIT=kin,FILE='DATAJ1/YLD/NO2_calvert.yld',STATUS='old') - DO i = 1, 8 - READ(kin,*) - ENDDO - n = 66 - DO i = 1, n - READ(kin,*) x1(i),y1(i) - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),y1(1)) - CALL addpnt(x1,y1,kdata,n, 0.,y1(1)) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax), 0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38, 0.) - CALL ch_inter2(nw,wl,yg1,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! combine - - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = xsno2(i,iw)*yg1(iw) - ENDDO - ENDDO - - -!************ jlabel(j) = 'O3 -> O2 + O(1D)' -!************ jlabel(j) = 'O3 -> O2 + O(3P)' - - j = j + 1 - jlabel(j) = 'O3 -> O2 + O(1D)' - - j = j + 1 - jlabel(j) = 'O3 -> O2 + O(3P)' - -! cross sections: -! from WMO 1985 Ozone Assessment -! from 175.439 to 847.500 nm -! use value at 273 K - - OPEN(UNIT=kin,FILE='DATAE1/wmo85',STATUS='old') - DO i = 1, 3 - read(kin,*) - ENDDO - n = 158 - DO i = 1, n - READ(kin,*) idum, a1, a2, dum, dum, dum, dum, y1(i) - x1(i) = (a1+a2)/2. - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - DO iw = 1, nw-1 - xso3(iw) = yg(iw) - ENDDO - -! For Hartley and Huggins bands, use temperature-dependent values from -! Molina, L. T., and M. J. Molina, Absolute absorption cross sections -! of ozone in the 185- to 350-nm wavelength range, -! J. Geophys. Res., vol. 91, 14501-14508, 1986. - - OPEN(UNIT=kin,FILE='DATAE1/O3/O3.molina.abs',STATUS='old') - DO i = 1, 5 - READ(kin,*) - ENDDO - n1 = 220 - n2 = 220 - n3 = 220 - DO i = 1, n1 - READ(kin,*) x1(i), y1(i), y2(i), y3(i) - x2(i) = x1(i) - x3(i) = x1(i) - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n1,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n1,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - DO iw = 1, nw-1 - s226(iw) = yg(iw)*1.E-20 - ENDDO - - CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n2,x2,y2,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - DO iw = 1, nw-1 - s263(iw) = yg(iw)*1.E-20 - ENDDO - - CALL addpnt(x3,y3,kdata,n3,x3(1)*(1.-deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 0.,0.) - CALL addpnt(x3,y3,kdata,n3,x3(n3)*(1.+deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n3,x3,y3,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - DO iw = 1, nw-1 - s298(iw) = yg(iw)*1.E-20 - ENDDO - -! quantum yield: - - kmich = 1 - kjpl87 = 2 - kjpl92 = 3 - kshet = 4 - -! choose quantum yield recommendation: -! kjpl87: JPL recommendation 1987 - JPL 87, 90, 92 do not -! kjpl92: JPL recommendation 1990/92 (identical) - include "tail" region -! kmich : Michelsen et al., 1994 -! kshet : Shetter et al., 1996 - - iyld = kjpl87 - iyld = kjpl92 - iyld = kmich - iyld = kshet - -! read parameters from Michelsen, H. A., R.J. Salawitch, P. O. Wennber, -! and J. G. Anderson, Geophys. Res. Lett., 21, 2227-2230, 1994. - - IF (iyld .EQ. kmich) THEN - OPEN(UNIT=kin,FILE='DATAJ1/YLD/O3.param.yld',STATUS='old') - READ(kin,*) - READ(kin,*) - READ(kin,*) - n1 = 21 - n2 = n1 - DO i = 1, n1 - READ(kin,*) x1(i), y1(i), y2(i) - x2(i) = x1(i) - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n1,x1(1)*(1.-deltax),y1(1)) - CALL addpnt(x1,y1,kdata,n1, 0.,y1(1)) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),y1(n1)) - CALL addpnt(x1,y1,kdata,n1, 1.e+38,y1(n1)) - CALL ch_inter2(nw,wl,yg1,n1,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax),y2(1)) - CALL addpnt(x2,y2,kdata,n2, 0.,y2(1)) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),y2(n2)) - CALL addpnt(x2,y2,kdata,n2, 1.e+38,y2(n2)) - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - ENDIF - -! quantum yield data from -! Shetter et al, J.Geophys.Res., v 101 (D9), pg. 14,631-14,641, June 20, 1996 - - IF (iyld .EQ. kshet) THEN - OPEN(UNIT=kin,FILE='DATAJ1/YLD/O3_shetter.yld',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - n = n-2 - DO i = 1, n - READ(kin,*) x1(i),y3(i),y4(i),y1(i),y2(i) - x2(i) = x1(i) - x3(i) = x1(i) - x4(i) = x1(i) - ENDDO - DO i = n+1, n+2 - READ(kin,*) x3(i),y3(i),y4(i) - x4(i) = x3(i) - ENDDO - CLOSE(kin) - - n1 = n - n2 = n - n3 = n+2 - n4 = n+2 - -! coefficients for exponential fit: - - CALL addpnt(x1,y1,kdata,n1,x1(1)*(1.-deltax), y1(1)) - CALL addpnt(x1,y1,kdata,n1, 0., y1(1)) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1E38,0.) - - CALL ch_inter2(nw,wl,yg1, n1,x1,y1, ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax),y2(1)) - CALL addpnt(x2,y2,kdata,n2, 0.,y2(1)) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1E38,0.) - - CALL ch_inter2(nw,wl,yg2, n2,x2,y2, ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! phi data at 298 and 230 K - - CALL addpnt(x3,y3,kdata,n3,x3(1)*(1.-deltax),y3(1)) - CALL addpnt(x3,y3,kdata,n3, 0.,y3(1)) - CALL addpnt(x3,y3,kdata,n3,x3(n3)*(1.+deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 1E38,0.) - - CALL ch_inter2(nw,wl,yg3, n3,x3,y3, ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr,jlabel(j) - STOP - ENDIF - - CALL addpnt(x4,y4,kdata,n4,x4(1)*(1.-deltax),y4(1)) - CALL addpnt(x4,y4,kdata,n4, 0.,y4(1)) - CALL addpnt(x4,y4,kdata,n4,x4(n4)*(1.+deltax),0.) - CALL addpnt(x4,y4,kdata,n4, 1E38,0.) - - CALL ch_inter2(nw,wl,yg4, n4,x4,y4, ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr,jlabel(j) - STOP - ENDIF - ENDIF - -! compute cross sections and yields at different wavelengths, altitudes: - - DO iw = 1, nw-1 - - so3 = xso3(iw) - - DO i = 1, nz - - IF ( wl(iw) .GT. 240.5 .AND. wl(iw+1) .LT. 350. ) THEN - IF (tlev(i) .LT. 263.) THEN - so3 = s226(iw) + (s263(iw)-s226(iw)) / (263.-226.) * & - & (tlev(i)-226.) - ELSE - so3 = s263(iw) + (s298(iw)-s263(iw)) / (298.-263.) * & - & (tlev(i)-263.) - ENDIF - ENDIF - -! quantum yields -! coefficients from jpl 87: - - IF (iyld .EQ. kjpl87) THEN - tau = tlev(i) - 230. - tau2 = tau*tau - tau3 = tau2*tau - xl = wc(iw) - xl0 = 308.2 + 4.4871e-2*tau + 6.938e-5*tau2 - & - & 2.5452e-6*tau3 - a = 0.9*(0.369 + 2.85e-4*tau + 1.28e-5*tau2 + & - & 2.57e-8*tau3) - b = -0.575 + 5.59e-3*tau - 1.439e-5*tau2 - & - & 3.27e-8*tau3 - c = 0.9*(0.518 + 9.87e-4*tau - 3.94e-5*tau2 + & - & 3.91e-7*tau3) - qy1d = a*atan(b*(xl-xl0)) + c - qy1d = max(0.,qy1d) - qy1d = min(0.9,qy1d) - ENDIF - -! from jpl90, jpl92: -! (caution: error in JPL92 for first term of a3) - - IF (iyld .EQ. kjpl92) THEN - tau = 298. - tlev(i) - tau2 = tau*tau - xl0 = wc(iw) - 305. - a0 = .94932 - 1.7039e-4*tau + 1.4072E-6*tau2 - a1 = -2.4052e-2 + 1.0479e-3*tau - 1.0655e-5*tau2 - a2 = 1.8771e-2 - 3.6401e-4*tau - 1.8587e-5*tau2 - a3 = -1.4540e-2 - 4.7787e-5*tau + 8.1277e-6*tau2 - a4 = 2.3287e-3 + 1.9891e-5*tau - 1.1801e-6*tau2 - a5 = -1.4471e-4 - 1.7188e-6*tau + 7.2661e-8*tau2 - a6 = 3.1830e-6 + 4.6209e-8*tau - 1.6266e-9*tau2 - qy1d = a0 + a1*xl0 + a2*(xl0)**2 + a3*(xl0)**3 + & - & a4*(xl0)**4 + a5*(xl0)**5 + a6*(xl0)**6 - IF (wc(iw) .LT. 305.) qy1d = 0.95 - IF (wc(iw) .GT. 320.) qy1d = 0. - IF (qy1d .LT. 0.02) qy1d = 0. - ENDIF - -! from Michelsen, H. A., R.J. Salawitch, P. O. Wennber, and J. G. Anderson -! Geophys. Res. Lett., 21, 2227-2230, 1994. - - IF (iyld .EQ. kmich) THEN - IF (wc(iw) .LT. 271.) THEN - qy1d = 0.87 - ELSE IF (wc(iw) .GE. 271. .AND. wc(iw) .LT. 305.) THEN - qy1d = 1.98 - 301./wc(iw) - ELSE IF (wc(iw) .GE. 305. .AND. wc(iw) .LE. 325.) THEN - qy1d = yg1(iw) * EXP (-yg2(iw) /(0.6951*tlev(i))) - ELSE - qy1d = 0. - ENDIF - ENDIF - -! Shetter et al.: -! phi = A * exp(-B/T), A and B are based on meas. at 298 and 230 K -! do linear interpolation between phi(298) and phi(230) for wavelengths > 321 -! as phi(230)=0. for those wavelengths, so there are no A and B factors - - IF (iyld .EQ. kshet) THEN - IF (wl(iw+1) .LE. 321.) THEN - qy1d = yg1(iw) * EXP(-1. * yg2(iw)/tlev(i)) - ELSE - qy1d = (yg3(iw) - yg4(iw))/(298.-230.) * (tlev(i)-230.) +& - & yg4(iw) - ENDIF - ENDIF - - sq(j-1,i,iw) = qy1d*so3 - qy3p = 1.0 - qy1d - sq(j,i,iw) = qy3p*so3 - - ENDDO - ENDDO - -!*************** jlabel(j) = 'NO3 -> NO2 + O(3P)' -!*************** jlabel(j) = 'NO3 -> NO + O2' - -! cross section -! measurements of Graham and Johnston 1978 - - OPEN(UNIT=kin,FILE='DATAJ1/ABS/NO3_gj78.abs',STATUS='old') - DO i = 1, 9 - READ(kin,*) - ENDDO - n = 305 - DO irow = 1, 30 - READ(kin,*) ( y1(10*(irow-1) + icol), icol = 1, 10 ) - ENDDO - READ(kin,*) ( y1(300 + icol), icol = 1, 5 ) - CLOSE (kin) - DO i = 1, n - y1(i) = y1(i) * 1.E-19 - x1(i) = 400. + 1.*FLOAT(i-1) - ENDDO - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! cross section from JPL94: - - OPEN(UNIT=kin,FILE='DATAJ1/ABS/NO3_jpl94.abs',STATUS='old') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i)*1E-20 - ENDDO - CLOSE (kin) - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg1,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! use JPL94 for wavelengths longer than 600 nm - - DO iw = 1, nw-1 - IF(wl(iw) .GT. 600.) yg(iw) = yg1(iw) - ENDDO - -! quantum yield: -! from Madronich (1988) see CEC NO3 book. - -! for NO3 ->NO+O2 - - j = j + 1 - jlabel(j) = 'NO3 -> NO + O2' - DO iw = 1, nw - 1 - IF (wc(iw).LT.584.) THEN - qy = 0. - ELSEIF (wc(iw).GE.640.) THEN - qy = 0. - ELSEIF (wc(iw).GE.595.) THEN - qy = 0.35*(1.-(wc(iw)-595.)/45.) - ELSE - qy = 0.35*(wc(iw)-584.)/11. - ENDIF - DO i = 1, nz - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - -! for NO3 ->NO2+O - j = j + 1 - jlabel(j) = 'NO3 -> NO2 + O(3P)' - DO iw = 1, nw - 1 - IF (wc(iw).LT.584.) THEN - qy = 1. - ELSEIF (wc(iw).GT.640.) THEN - qy = 0. - ELSEIF (wc(iw).GT.595.) THEN - qy = 0.65*(1-(wc(iw)-595.)/45.) - ELSE - qy = 1.-0.35*(wc(iw)-584.)/11. - ENDIF - DO i = 1, nz - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - -!*************** N2O5 photodissociation - - j = j + 1 - jlabel(j) = 'N2O5 -> NO3 + NO + O(3P)' - - j = j + 1 - jlabel(j) = 'N2O5 -> NO3 + NO2' - -! cross section from jpl94, table up to 280 nm - - OPEN(UNIT=kin,FILE='DATAJ1/ABS/N2O5.abs',STATUS='old') - DO i = 1, 21 - READ(kin,*) - ENDDO - n = 17 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1.E-20 - ENDDO - CLOSE(kin) - -! fill in from 281 nm trough 400 nm with value at 262.5 K: -! this will be overwritten in most cases. - - DO i = 1, 120 - n = n + 1 - x1(n) = 281. + 1.*FLOAT(i-1) - y1(n) = 1.E-20*EXP( 2.735 + (4728.5-17.127*x1(n)) / 262.5 ) - ENDDO - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n,0. ,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield : see DATAJ1/YLD/N2O5.qy for explanation -! correct for T-dependence of cross section - - DO iw = 1, nw - 1 - - qy = MIN( 1., 3.832441 - 0.012809638 * wc(iw) ) - qy = MAX( 0., qy ) - - DO i = 1, nz - IF (wc(iw) .GE. 285. .AND. wc(iw) .LE. 380.) THEN - t = MAX(225.,MIN(tlev(i),300.)) - sq(j-1,i,iw) = qy * & - & 1.E-20*EXP( 2.735 + (4728.5-17.127*wc(iw)) / t ) - sq(j,i,iw) = (1.-qy) * & - & 1.E-20*EXP( 2.735 + (4728.5-17.127*wc(iw)) / t ) - ELSE - sq(j-1,i,iw) = qy * yg(iw) - sq(j,i,iw) = (1.-qy) * yg(iw) - ENDIF - ENDDO - ENDDO - -!*************** HNO2 photodissociation - -! cross section from JPL92 -! (from Bongartz et al., identical to JPL94 recommendation) - - j = j + 1 - jlabel(j) = 'HNO2 -> OH + NO' -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/HNO2_jpl85.abs',STATUS='old') - OPEN(UNIT=kin,FILE='DATAJ1/ABS/HNO2_jpl92.abs',STATUS='old') - DO i = 1, 13 - READ(kin,*) - ENDDO -! n = 86 - n = 91 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1.E-20 - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield = 1 - - qy = 1. - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - -!*************** HNO3 photodissociation - - j = j + 1 - jlabel(j) = 'HNO3 -> OH + NO2' - -!* cross section from JPL85 -! -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/HNO3.abs',STATUS='old') -! DO i = 1, 9 -! READ(kin,*) -! ENDDO -! n = 29 -! DO i = 1, n -! READ(kin,*) x1(i), y1(i) -! y1(i) = y1(i) * 1.E-20 -! ENDDO -! CLOSE (kin) -! -! CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 0.,0.) -! CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) -! CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF -! -!* quantum yield = 1 -! -! qy = 1. -! DO iw = 1, nw - 1 -! DO i = 1, nz -! sq(j,i,iw) = yg(iw)*qy -! ENDDO -! ENDDO - - -! HNO3 cross section parameters from Burkholder et al. 1993 - - OPEN(UNIT=kin,FILE='DATAJ1/ABS/HNO3_burk.abs',STATUS='old') - DO i = 1, 6 - READ(kin,*) - END DO - n1 = 83 - n2 = n1 - DO i = 1, n1 - READ(kin,*) y1(i), y2(i) - x1(i) = 184. + i*2. - x2(i) = x1(i) - END DO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n1,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg1,n1,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - - CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax),y2(1)) - CALL addpnt(x2,y2,kdata,n2, 0.,y2(1)) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),y2(n2)) - CALL addpnt(x2,y2,kdata,n2, 1.e+38,y2(n2)) - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield = 1 -! correct for temperature dependence - - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = yg1(iw) * 1.E-20 & - & * exp( yg2(iw)/1.e3*(tlev(i)-298.) ) - END DO - END DO - - -!*************** HNO4 photodissociation - -! cross section from JPL85 (identical to JPL92 and JPL94) - - j = j + 1 - jlabel(j) = 'HNO4 -> HO2 + NO2' -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/HNO4.abs',STATUS='old') - OPEN(UNIT=kin,FILE='DATAJ1/ABS/HNO4_jpl92.abs',STATUS='old') - DO i = 1, 4 - READ(kin,*) - ENDDO - n = 31 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1.E-20 - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield = 1 - - qy = 1. - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - -!*************** H2O2 photodissociation - -! cross section from Lin et al. 1978 - - j = j + 1 - jlabel(j) = 'H2O2 -> 2 OH' -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/H2O2_lin.abs',STATUS='old') -! DO i = 1, 7 -! READ(kin,*) -! ENDDO -! n = 32 -! DO i = 1, n -! READ(kin,*) x1(i), y1(i) -! y1(i) = y1(i) * 1.E-20 -! ENDDO -! CLOSE (kin) -! -! CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 0.,0.) -! CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) -! CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -! cross section from JPL94 -! tabulated data up to 260 nm - OPEN(UNIT=kin,FILE='DATAJ1/ABS/H2O2_jpl94.abs',STATUS='old') - READ(kin,*) idum,n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1.E-20 - ENDDO - CLOSE (kin) - - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - - A0 = 6.4761E+04 - A1 = -9.2170972E+02 - A2 = 4.535649 - A3 = -4.4589016E-03 - A4 = -4.035101E-05 - A5 = 1.6878206E-07 - A6 = -2.652014E-10 - A7 = 1.5534675E-13 - - B0 = 6.8123E+03 - B1 = -5.1351E+01 - B2 = 1.1522E-01 - B3 = -3.0493E-05 - B4 = -1.0924E-07 - -! quantum yield = 1 - qy = 1. - - DO iw = 1, nw - 1 - -! Parameterization (JPL94) -! Range 260-350 nm; 200-400 K - - IF ((wl(iw) .GE. 260.) .AND. (wl(iw) .LT. 350.)) THEN - - lambda = wc(iw) - sumA = ((((((A7*lambda + A6)*lambda + A5)*lambda + & - & A4)*lambda +A3)*lambda + A2)*lambda + & - & A1)*lambda + A0 - sumB = (((B4*lambda + B3)*lambda + B2)*lambda + & - & B1)*lambda + B0 - - DO i = 1, nz - t = MIN(MAX(tlev(i),200.),400.) - chi = 1./(1.+EXP(-1265./t)) - xs = (chi * sumA + (1.-chi)*sumB)*1E-21 - sq(j,i,iw) = xs*qy - ENDDO - ELSE - DO i = 1, nz - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDIF - - ENDDO - -!*************** CH2O photodissociatation - - j = j+1 - jlabel(j) = 'CH2O -> H + HCO' - - j = j+1 - jlabel(j) = 'CH2O -> H2 + CO' - -! cross section data from Cantrell et al., as recommended in JPL 94. -! JPL recommended values are averaged over 2.5 nm intervals from 301.25-356.25 -! nm; a temperature dependence is given between -50 and +20 degrees C. - - -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/CH2O_jpl94.abs',STATUS='OLD') -! READ(kin,*) idum, n -! DO i = 1, idum-2 -! READ(kin,*) -! ENDDO -! DO i = 1, n -! READ(kin,*) x1(i),dum,dum,y1(i),y2(i) -! x1(i) = x1(i)-1.25 -! x2(i) = x1(i) -! y1(i) = y1(i)*2.5 -! y2(i) = y2(i)*2.5 -! ENDDO -! x1(n+1) = x1(n)+1.25 -! x2(n+1) = x1(n+1) -! n = n+1 -! n1 = n -! n2 = n -! CLOSE(kin) - -! CALL addpnt(x1,y1,kdata,n1,x1(1)*(1.-deltax), 0.) -! CALL addpnt(x1,y1,kdata,n1, 0., 0.) -! CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n1, 1.e+38, 0.) -! CALL inter3(nw,wl,yg1,n1,x1,y1,ierr) -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -! CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax), 0.) -! CALL addpnt(x2,y2,kdata,n2, 0., 0.) -! CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) -! CALL addpnt(x2,y2,kdata,n2, 1.e+38,0.) -! CALL inter3(nw,wl,yg2,n2,x2,y2,ierr) -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -! DO iw = 1, nw-1 -! yg1(iw) = yg1(iw)/(wl(iw+1)-wl(iw)) -! yg2(iw) = yg2(iw)/(wl(iw+1)-wl(iw)) -! ENDDO - - -! cross section (Cantrell et al., 199?, original data set) - - OPEN(kin,FILE='DATAJ1/ABS/CH2O_can.abs',STATUS='old') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i), y2(i) -! data are on wavenumber grid (cm-1), so convert to wavelength in nm: - x1(i) = 1./x1(i) * 1E7 -! cross section assumed to be zero for wavelengths longer than 360 nm - IF (x1(i) .GT. 360.) THEN - y1(i) = 0. - y2(i) = 0. - ENDIF - ENDDO - CLOSE(kin) - - -! grid was on increasing wavenumbers, so need to reverse to get increasing -! wavelengths - - DO i = 1, n/2 - - irev = n+1-i - - dum = x1(i) - x1(i) = x1(irev) - x1(irev) = dum - - dum = y1(i) - y1(i) = y1(irev) - y1(irev) = dum - - dum = y2(i) - y2(i) = y2(irev) - y2(irev) = dum - - ENDDO - - DO i = 1, n - x2(i) = x1(i) - ENDDO - - n1 = n - n2 = n - - CALL addpnt(x1,y1,kdata,n1,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1E38,0.) - - CALL ch_inter2(nw,wl,yg3,n1,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1E38,0.) - - CALL ch_inter2(nw,wl,yg4,n2,x2,y2,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - -! quantum yields - - OPEN(UNIT=kin,FILE='DATAJ1/YLD/CH2O_i_mad.yld',STATUS='old') - DO i = 1, 11 - READ(kin,*) - ENDDO - n = 20 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),y1(1)) - CALL addpnt(x1,y1,kdata,n, 0.,y1(1)) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg1,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j-1) - STOP - ENDIF - DO iw = 1, nw - 1 - DO i = 1, nz -! sq(j-1,i,iw) = yg(iw)*yg1(iw) - t = Max(223.15,MIN(tlev(i),293.15))-273.15 - xs = Max(yg3(iw)+yg4(iw)*t,0.) - sq(j-1,i,iw) = xs * yg1(iw) - ENDDO - ENDDO - - OPEN(UNIT=kin,FILE='DATAJ1/YLD/CH2O_ii_mad.yld',STATUS='old') - DO i = 1, 9 - READ(kin,*) - ENDDO - n = 33 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),y1(1)) - CALL addpnt(x1,y1,kdata,n, 0.,y1(1)) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg2,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! pressure and temmperature dependent for w > 330. - DO iw = 1, nw - 1 - DO i = 1, nz - IF ( (wc(iw) .GE. 330.) .AND. (yg2(iw) .GT. 0.) ) THEN - phi1 = yg1(iw) - phi2 = yg2(iw) - phi20 = 1. - phi1 - ak300=((1./phi2)-(1./phi20))/2.54E+19 - akt=ak300*(1.+61.69*(1.-tlev(i)/300.)*(wc(iw)/329.-1.)) - qy = 1. / ( (1./phi20) + airlev(i)*akt) - ELSE - qy = yg2(iw) - ENDIF - qy = MAX(0.,qy) - qy = MIN(1.,qy) -! sq(j,i,iw) = yg(iw)*qy - t = Max(223.15,MIN(tlev(i),293.15))-273.15 - xs = Max(yg3(iw)+yg4(iw)*t,0.) - sq(j,i,iw) = xs * qy - ENDDO - ENDDO - -!*************** CH3OOH photodissociation - -! cross section from JPL 94 (identical to JPL92) - - j = j + 1 - jlabel(j) = 'CH3OOH -> CH3O + OH' -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/h011_jpl85.abs',STATUS='old') -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/h011_jpl92.abs',STATUS='old') - OPEN(UNIT=kin,FILE='DATAJ1/ABS/CH3OOH_jpl94.abs',STATUS='old') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1.E-20 - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield = 1 - - qy = 1. - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - -!*************** CH3ONO2 photodissociation - -! cross section from Calvert and Pitts - - j = j + 1 - jlabel(j) = 'CH3ONO2 -> CH3O+NO2' - OPEN(UNIT=kin,FILE='DATAJ1/ABS/n011_cp.abs',STATUS='old') - DO i = 1, 3 - READ(kin,*) - ENDDO - n = 15 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield = 1 - - qy = 1. - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - -!*************** CH3CHO photodissociation - -! cross section from Calvert and Pitts - - OPEN(UNIT=kin,FILE='DATAJ1/ABS/d021_cp.abs',STATUS='old') - DO i = 1, 14 - READ(kin,*) - ENDDO - n = 54 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - x1(i) = x1(i)/10. - y1(i) = y1(i) * 3.82E-21 - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield - - j = j + 1 - jlabel(j) = 'CH3CHO -> CH3+CHO' - OPEN(UNIT=kin,FILE='DATAJ1/YLD/d021_i.yld',STATUS='old') - DO i = 1, 18 - READ(kin,*) - ENDDO - n = 10 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),y1(1)) - CALL addpnt(x1,y1,kdata,n, 0.,y1(1)) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg1,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - DO iw = 1, nw - 1 - DO i = 1, nz - IF (yg1(iw).NE.0.) THEN - qy = 1./(1.+ (1./yg1(iw) -1.)*airlev(i)/2.465E19) - ELSE - qy = 0. - ENDIF - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - - j = j + 1 - jlabel(j) = 'CH3CHO -> ii' - OPEN(UNIT=kin,FILE='DATAJ1/YLD/d021_ii.yld',STATUS='old') - DO i = 1, 10 - READ(kin,*) - ENDDO - n = 9 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),y1(1)) - CALL addpnt(x1,y1,kdata,n, 0.,y1(1)) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg1,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = yg(iw)*yg1(iw) - ENDDO - ENDDO - - j = j + 1 - jlabel(j) = 'CH3CHO -> iii' - OPEN(UNIT=kin,FILE='DATAJ1/YLD/d021_iii.yld',STATUS='old') - DO i = 1, 10 - READ(kin,*) - ENDDO - n = 9 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),y1(1)) - CALL addpnt(x1,y1,kdata,n, 0.,y1(1)) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg1,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - DO iw = 1, nw - 1 - DO i = 1, nz - sq(j,i,iw) = yg(iw)*yg1(iw) - ENDDO - ENDDO - -!*************** CH3COCH3 photodissociation - -! cross section from Calvert and Pitts - - j = j + 1 - jlabel(j) = 'CH3COCH3 ' - OPEN(UNIT=kin,FILE='DATAJ1/ABS/k031_cp.abs',STATUS='old') - DO i = 1, 6 - READ(kin,*) - ENDDO - n = 35 - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 3.82E-21 - ENDDO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF -! quantum yield from Gardiner et al. 1984: - - DO iw = 1, nw - 1 - DO i = 1, nz - qy = 0.0766 + 0.09415*EXP(-airlev(i)/3.222e18) - sq(j,i,iw) = yg(iw)*qy - ENDDO - ENDDO - -!*************** PAN photodissociation - - j = j+1 - jlabel(j) = 'PAN + hv -> products' - -! cross section from Senum et al., 1984, J.Phys.Chem. 88/7, 1269-1270 - -! OPEN(UNIT=kin,FILE='DATAJ1/ABS/PAN_senum.abs',STATUS='OLD') -! DO i = 1, 14 -! READ(kin,*) -! ENDDO -! n = 21 -! DO i = 1, n -! READ(kin,*) x1(i), y1(i) -! y1(i) = y1(i) * 1.E-20 -! ENDDO -! CLOSE(kin) - -! CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 0.,0.) -! CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) -! CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -! cross section from -! Talukdar et al., 1995, J.Geophys.Res. 100/D7, 14163-14174 - - OPEN(UNIT=kin,FILE='DATAJ1/ABS/PAN_talukdar.abs',STATUS='OLD') - DO i = 1, 14 - READ(kin,*) - ENDDO - n = 78 - DO i = 1, n - READ(kin,*) x1(i), y1(i), y2(i) - y1(i) = y1(i) * 1.E-20 - y2(i) = y2(i) * 1E-3 - x2(i) = x1(i) - ENDDO - n2 = n - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - - CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! quantum yield -! yet unknown, but assumed to be 1.0 (Talukdar et al., 1995) - - qy = 1.0 - - DO iw = 1, nw-1 - DO i = 1, nz - xs = yg(iw) * EXP(yg2(iw)*(tlev(i)-298.)) - sq(j,i,iw) = qy * xs - ENDDO - ENDDO - -!************************************************************* -!************ CCl2O photodissociation - - j = j+1 - jlabel(j) = 'CCl2O + hv -> Products' - -!** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CCl2O_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!** quantum yield unity (Calvert and Pitts) - qy = 1. - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CCl4 photodissociation - - j = j+1 - jlabel(j) = 'CCl4 + hv -> Products' - -!** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CCl4_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!** quantum yield assumed to be unity - qy = 1. - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CClFO photodissociation - - j = j+1 - jlabel(j) = 'CClFO + hv -> Products' - -!** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CClFO_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!** quantum yield unity - qy = 1. - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF2O photodissociation - - j = j+1 - jlabel(j) = 'CF2O + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CF2O_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!** quantum yield unity (Nolle et al.) - qy = 1. - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF2ClCFCl2 (CFC-113) photodissociation - - j = j+1 - jlabel(j) = 'CF2ClCFCl2 (CFC-113) + hv -> Products' - -!** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CFC-113_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i), y2(i) - y1(i) = y1(i) * 1E-20 - y2(i) = y2(i) * 1E-20 - x2(i) = x1(i) - ENDDO - CLOSE(kin) - - n1 = n - n2 = n - -!* sigma @ 295 K - - CALL addpnt(x1,y1,kdata,n1, x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1E38,0.) - - CALL ch_inter2(nw,wl,yg1,n1,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! sigma @ 210 K - - CALL addpnt(x2,y2,kdata,n2, x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1E38,0.) - - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!** quantum yield assumed to be unity - qy = 1. - - DO iz = 1, nz - t = MAX(210.,MIN(tlev(iz),295.)) - slope = (t-210.)/(295.-210.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg2(iw) + slope*(yg1(iw)-yg2(iw))) - ENDDO - ENDDO - -!************************************************************* -!************ CF2ClCF2Cl (CFC-114) photodissociation - - j = j+1 - jlabel(j) = 'CF2ClCF2Cl (CFC-114) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CFC-114_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i), y2(i) - y1(i) = y1(i) * 1E-20 - y2(i) = y2(i) * 1E-20 - x2(i) = x1(i) - ENDDO - CLOSE(kin) - - n1 = n - n2 = n - -!* sigma @ 295 K - - CALL addpnt(x1,y1,kdata,n1, x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1E38,0.) - - CALL ch_inter2(nw,wl,yg1,n1,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -! sigma @ 210 K - - CALL addpnt(x2,y2,kdata,n2, x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1E38,0.) - - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!** quantum yield assumed to be unity - qy = 1. - - DO iz = 1, nz - t = MAX(210.,MIN(tlev(iz),295.)) - slope = (t-210.)/(295.-210.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg2(iw) + slope*(yg1(iw)-yg2(iw))) - ENDDO - ENDDO - -!************************************************************* -!************ CF3CF2Cl (CFC-115) photodissociation - - j = j+1 - jlabel(j) = 'CF3CF2Cl (CFC-115) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CFC-115_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - - -!************************************************************* -!************ CCl3F (CFC-11) photodissociation - - j = j+1 - jlabel(j) = 'CCl3F (CFC-11) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CFC-11_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - -!* sigma @ 298 K - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iz = 1, nz - t = 1E-04 * (tlev(iz)-298.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * yg(iw) * EXP((wc(iw)-184.9) * t) - ENDDO - ENDDO - -!************************************************************* -!************ CCl2F2 (CFC-12) photodissociation - - j = j+1 - jlabel(j) = 'CCl2F2 (CFC-12) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CFC-12_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - -!* sigma @ 298 K - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iz = 1, nz - t = 1E-04 * (tlev(i)-298.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * yg(iw) * EXP((wc(iw)-184.9) * t) - ENDDO - ENDDO - -!************************************************************* -!************ CH3Br photodissociation - - j = j+1 - jlabel(j) = 'CH3Br + hv -> Products' - OPEN(kin,FILE='DATAJ1/ABS/CH3Br_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CH3CCl3 photodissociation - - j = j+1 - jlabel(j) = 'CH3CCl3 + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CH3CCl3_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i), y2(i), y3(i) - y1(i) = y1(i) * 1E-20 - y2(i) = y2(i) * 1E-20 - y3(i) = y3(i) * 1E-20 - x2(i) = x1(i) - x3(i) = x1(i) - ENDDO - CLOSE(kin) - - n1 = n - n2 = n - n3 = n - -!* sigma @ 295 K - - CALL addpnt(x1,y1,kdata,n1, x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1E38,0.) - - CALL ch_inter2(nw,wl,yg1,n1,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 250 K - - CALL addpnt(x2,y2,kdata,n2, x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1E38,0.) - - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 210 K - - CALL addpnt(x3,y3,kdata,n3, x3(1)*(1.-deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 0.,0.) - CALL addpnt(x3,y3,kdata,n3,x3(n3)*(1.+deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 1E38,0.) - - CALL ch_inter2(nw,wl,yg3,n3,x3,y3,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iz = 1, nz - t = MIN(295.,MAX(tlev(iz),210.)) - IF (t .LE. 250.) THEN - slope = (t-210.)/(250.-210.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg3(iw) + slope*(yg2(iw)-yg3(iw))) - ENDDO - ELSE - slope = (t-250.)/(295.-250.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg2(iw) + slope*(yg1(iw)-yg2(iw))) - ENDDO - ENDIF - ENDDO - -!************************************************************* -!************ CH3Cl photodissociation - - j = j+1 - jlabel(j) = 'CH3Cl + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/CH3Cl_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i), y2(i), y3(i) - y1(i) = y1(i) * 1E-20 - y2(i) = y2(i) * 1E-20 - y3(i) = y3(i) * 1E-20 - x2(i) = x1(i) - x3(i) = x1(i) - ENDDO - CLOSE(kin) - - n1 = n - n2 = n - n3 = n - -!* sigma @ 296 K - - CALL addpnt(x1,y1,kdata,n1, x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1E38,0.) - - CALL ch_inter2(nw,wl,yg1,n1,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 279 K - - CALL addpnt(x2,y2,kdata,n2, x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1E38,0.) - - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 255 K - - CALL addpnt(x3,y3,kdata,n3, x3(1)*(1.-deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 0.,0.) - CALL addpnt(x3,y3,kdata,n3,x3(n3)*(1.+deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 1E38,0.) - - CALL ch_inter2(nw,wl,yg3,n3,x3,y3,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iz = 1, nz - t = MAX(255.,MIN(tlev(i),296.)) - IF (t .LE. 279.) THEN - slope = (t-255.)/(279.-255.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg3(iw)+slope*(yg2(iw)-yg3(iw))) - ENDDO - ELSE - slope = (t-279.)/(296.-279.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg2(iw)+slope*(yg1(iw)-yg2(iw))) - ENDDO - ENDIF - ENDDO - -!************************************************************* -!************ ClOO photodissociation - - j = j+1 - jlabel(j) = 'ClOO + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/ClOO_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF3CHCl2 (HCFC-123) photodissociation - - j = j+1 - jlabel(j) = 'CF3CHCl2 (HCFC-123) + hv -> Products' - -!*** cross sections from JPL94 recommendation - -! OPEN(kin,FILE='DATAJ1/ABS/HCFC-123_jpl94.abs',STATUS='OLD') -! READ(kin,*) idum, n -! DO i = 1, idum-2 -! READ(kin,*) -! ENDDO -! DO i = 1, n -! READ(kin,*) x1(i), y1(i) -! y1(i) = y1(i) * 1E-20 -! ENDDO -! CLOSE(kin) - -! CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 0.,0.) -! CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 1E38,0.) - -! CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -!*** quantum yield assumed to be unity -! qy = 1. - -! DO iw = 1, nw-1 -! DO iz = 1, nz -! sq(j,iz,iw) = qy * yg(iw) -! ENDDO -! ENDDO - - -!*** cross section from Orlando et al., 1991 - - OPEN(kin,FILE='DATAJ1/ABS/HCFCs_orl.abs',STATUS='OLD') - READ(kin,*) idum - DO i = 1, idum-2 - READ(kin,*) - ENDDO - READ(kin,('(A)')) inline - READ(inline(6:),*) TBar,i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - CLOSE(kin) - - LBar = 206.214 - -!*** quantum yield assumed to be unity - - qy = 1. - - DO iw = 1, nw-1 - lambda = wc(iw) - IF (lambda .GE. 190. .AND. lambda .LE. 230.) THEN - DO iz = 1, nz - t = MIN(295.,MAX(tlev(i),203.))-TBar - sum = 0. - DO i = 1, 4 - sum = (coeff(i,1)+t*(coeff(i,2)+t*coeff(i,3))) * & - & (lambda-LBar)**(i-1) + sum - ENDDO - sq(j,iz,iw) = qy * EXP(sum) - ENDDO - ELSE - DO iz = 1, nz - sq(j,iz,iw) = 0. - ENDDO - ENDIF - ENDDO - -!************************************************************* -!************ CF3CHFCl (HCFC-124) photodissociation - - j = j+1 - jlabel(j) = 'CF3CHFCl (HCFC-124) + hv -> Products' - -!*** cross sections from JPL94 recommendation - -! OPEN(kin,FILE='DATAJ1/ABS/HCFC-124_jpl94.abs',STATUS='OLD') -! READ(kin,*) idum, n -! DO i = 1, idum-2 -! READ(kin,*) -! ENDDO -! DO i = 1, n -! READ(kin,*) x1(i), y1(i) -! y1(i) = y1(i) * 1E-20 -! ENDDO -! CLOSE(kin) - -! CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 0.,0.) -! CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 1E38,0.) - -! CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -!*** quantum yield assumed to be unity -! qy = 1. - -! DO iw = 1, nw-1 -! DO iz = 1, nz -! sq(j,iz,iw) = qy * yg(iw) -! ENDDO -! ENDDO - -!*** cross section from Orlando et al., 1991 - - OPEN(kin,FILE='DATAJ1/ABS/HCFCs_orl.abs',STATUS='OLD') - READ(kin,*) idum - idum = idum+5 - DO i = 1, idum-2 - READ(kin,*) - ENDDO - READ(kin,('(A)')) inline - READ(inline(6:),*) TBar,i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - CLOSE(kin) - - LBar = 206.214 - -!*** quantum yield assumed to be unity - - qy = 1. - - DO iw = 1, nw-1 - lambda = wc(iw) - IF (lambda .GE. 190. .AND. lambda .LE. 230.) THEN - DO iz = 1, nz - t = MIN(295.,MAX(tlev(i),203.))-TBar - sum = 0. - DO i = 1, 4 - sum = (coeff(i,1)+t*(coeff(i,2)+t*coeff(i,3))) * & - & (lambda-LBar)**(i-1) + sum - ENDDO - sq(j,iz,iw) = qy * EXP(sum) - ENDDO - ELSE - DO iz = 1, nz - sq(j,iz,iw) = 0. - ENDDO - ENDIF - ENDDO - -!************************************************************* -!************ CH3CFCl2 (HCFC-141b) photodissociation - - j = j+1 - jlabel(j) = 'CH3CFCl2 (HCFC-141b) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/HCFC-141b_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CH3CF2Cl (HCFC-142b) photodissociation - - j = j+1 - jlabel(j) = 'CH3CF2Cl (HCFC-142b) + hv -> Products' - -!*** cross sections from JPL94 recommendation - -! OPEN(kin,FILE='DATAJ1/ABS/HCFC-142b_jpl94.abs',STATUS='OLD') -! READ(kin,*) idum, n -! DO i = 1, idum-2 -! READ(kin,*) -! ENDDO -! DO i = 1, n -! READ(kin,*) x1(i), y1(i) -! y1(i) = y1(i) * 1E-20 -! ENDDO -! CLOSE(kin) - -! CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 0.,0.) -! CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) -! CALL addpnt(x1,y1,kdata,n, 1E38,0.) - -! CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - -! IF (ierr .NE. 0) THEN -! WRITE(*,*) ierr, jlabel(j) -! STOP -! ENDIF - -!*** quantum yield assumed to be unity -! qy = 1. - -! DO iw = 1, nw-1 -! DO iz = 1, nz -! sq(j,iz,iw) = qy * yg(iw) -! ENDDO -! ENDDO - -!*** cross section from Orlando et al., 1991 - - OPEN(kin,FILE='DATAJ1/ABS/HCFCs_orl.abs',STATUS='OLD') - READ(kin,*) idum - idum = idum+10 - DO i = 1, idum-2 - READ(kin,*) - ENDDO - READ(kin,('(A)')) inline - READ(inline(6:),*) TBar,i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - READ(kin,*) i,(coeff(i,k),k=1,3) - CLOSE(kin) - - LBar = 206.214 - -!*** quantum yield assumed to be unity - - qy = 1. - - DO iw = 1, nw-1 - lambda = wc(iw) - IF (lambda .GE. 190. .AND. lambda .LE. 230.) THEN - DO iz = 1, nz - t = MIN(295.,MAX(tlev(i),203.))-TBar - sum = 0. - DO i = 1, 4 - sum = (coeff(i,1)+t*(coeff(i,2)+t*coeff(i,3))) * & - & (lambda-LBar)**(i-1) + sum - ENDDO - sq(j,iz,iw) = qy * EXP(sum) - ENDDO - ELSE - DO iz = 1, nz - sq(j,iz,iw) = 0. - ENDDO - ENDIF - ENDDO - -!************************************************************* -!************ CF3CF2CHCl2 (HCFC-225ca) photodissociation - - j = j+1 - jlabel(j) = 'CF3CF2CHCl2 (HCFC-225ca) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/HCFC-225ca_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF2ClCF2CHFCl (HCFC-225cb) photodissociation - - j = j+1 - jlabel(j) = 'CF2ClCF2CHFCl (HCFC-225cb) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/HCFC-225cb_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CHClF2 (HCFC-22) photodissociation - - j = j+1 - jlabel(j) = 'CHClF2 (HCFC-22) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/HCFC-22_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i), y2(i), y3(i), y4(i), y5(i) - y1(i) = y1(i) * 1E-20 - y2(i) = y2(i) * 1E-20 - y3(i) = y3(i) * 1E-20 - y4(i) = y4(i) * 1E-20 - y5(i) = y5(i) * 1E-20 - x2(i) = x1(i) - x3(i) = x1(i) - x4(i) = x1(i) - x5(i) = x1(i) - ENDDO - CLOSE(kin) - - n1 = n - n2 = n - n3 = n - n4 = n - n5 = n - -!* sigma @ 295 K - - CALL addpnt(x1,y1,kdata,n1, x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1E38,0.) - - CALL ch_inter2(nw,wl,yg1,n1,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 270 K - - CALL addpnt(x2,y2,kdata,n2, x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1E38,0.) - - CALL ch_inter2(nw,wl,yg2,n2,x2,y2,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 250 K - - CALL addpnt(x3,y3,kdata,n3, x3(1)*(1.-deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 0.,0.) - CALL addpnt(x3,y3,kdata,n3,x3(n3)*(1.+deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 1E38,0.) - - CALL ch_inter2(nw,wl,yg3,n3,x3,y3,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 230 K - - CALL addpnt(x4,y4,kdata,n4, x4(1)*(1.-deltax),0.) - CALL addpnt(x4,y4,kdata,n4, 0.,0.) - CALL addpnt(x4,y4,kdata,n4,x4(n4)*(1.+deltax),0.) - CALL addpnt(x4,y4,kdata,n4, 1E38,0.) - - CALL ch_inter2(nw,wl,yg4,n4,x4,y4,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!* sigma @ 210 K - - CALL addpnt(x5,y5,kdata,n5, x5(1)*(1.-deltax),0.) - CALL addpnt(x5,y5,kdata,n5, 0.,0.) - CALL addpnt(x5,y5,kdata,n5,x5(n5)*(1.+deltax),0.) - CALL addpnt(x5,y5,kdata,n5, 1E38,0.) - - CALL ch_inter2(nw,wl,yg5,n5,x5,y5,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iz = 1, nz - t = MIN(295.,MAX(tlev(iz),210.)) - IF (t .LE. 230.) THEN - slope = (t-210.)/(230.-210.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg5(iw)+slope*(yg4(iw)-yg5(iw))) - ENDDO - ELSEIF (t .LE. 250.) THEN - slope = (t-230.)/(250.-230.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg4(iw)+slope*(yg3(iw)-yg4(iw))) - ENDDO - ELSEIF (t .LE. 270.) THEN - slope = (t-250.)/(270.-250.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg3(iw)+slope*(yg2(iw)-yg3(iw))) - ENDDO - ELSE - slope = (t-270.)/(295.-270.) - DO iw = 1, nw-1 - sq(j,iz,iw) = qy * (yg2(iw)+slope*(yg1(iw)-yg2(iw))) - ENDDO - ENDIF - ENDDO - -!************************************************************* -!************ HO2 photodissociation - - j = j+1 - jlabel(j) = 'HO2 + hv -> OH + O' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/HO2_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield: absolute quantum yield has not been reported yet, but -!*** Lee measured a quantum yield for O(1D) production at 248 -!*** nm that was 15 time larger than at 193 nm -!*** here: a quantum yield of unity is assumed at 248 nm and beyond, for -!*** shorter wavelengths a linear decrease with lambda is assumed - - DO iw = 1, nw-1 - IF (wc(iw) .GE. 248.) THEN - qy = 1. - ELSE - qy = 1./15. + (wc(iw)-193.)*(14./15.)/(248.-193.) - qy = MAX(qy,0.) - ENDIF - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF2Br2 (Halon-1202) photodissociation - - j = j+1 - jlabel(j) = 'CF2Br2 (Halon-1202) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/Halon-1202_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield unity (Molina and Molina) - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF2BrCl (Halon-1211) photodissociation - - j = j+1 - jlabel(j) = 'CF2BrCl (Halon-1211) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/Halon-1211_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF3Br (Halon-1301) photodissociation - - j = j+1 - jlabel(j) = 'CF3Br (Halon-1301) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/Halon-1301_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ CF2BrCF2Br (Halon-2402) photodissociation - - j = j+1 - jlabel(j) = 'CF2BrCF2Br (Halon-2402) + hv -> Products' - -!*** cross sections from JPL94 recommendation - - OPEN(kin,FILE='DATAJ1/ABS/Halon-2402_jpl94.abs',STATUS='OLD') - READ(kin,*) idum, n - DO i = 1, idum-2 - READ(kin,*) - ENDDO - DO i = 1, n - READ(kin,*) x1(i), y1(i) - y1(i) = y1(i) * 1E-20 - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)+deltax,0.) - CALL addpnt(x1,y1,kdata,n, 1E38,0.) - - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, jlabel(j) - STOP - ENDIF - -!*** quantum yield assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - DO iz = 1, nz - sq(j,iz,iw) = qy * yg(iw) - ENDDO - ENDDO - -!************************************************************* -!************ N2O photodissociation - - j = j+1 - jlabel(j) = 'N2O + hv -> N2 + O(1D)' - -!*** cross sections according to JPL94 recommendation -!*** see file DATAJ1/ABS/N2O_jpl94.abs for detail - - A0 = 68.21023 - A1 = -4.071805 - A2 = 4.301146E-02 - A3 = -1.777846E-04 - A4 = 2.520672E-07 - - B0 = 123.4014 - B1 = -2.116255 - B2 = 1.111572E-02 - B3 = -1.881058E-05 - -!*** quantum yield of N(4s) and NO(2Pi) is less than 1% (Greenblatt and -!*** Ravishankara), so quantum yield of O(1D) is assumed to be unity - qy = 1. - - DO iw = 1, nw-1 - lambda = wc(iw) - IF (lambda .GE. 173. .AND. lambda .LE. 240.) THEN - DO iz = 1, nz - t = MAX(194.,MIN(tlev(iz),320.)) - A = (((A4*lambda+A3)*lambda+A2)*lambda+A1)*lambda+A0 - B = (((B3*lambda+B2)*lambda+B1)*lambda+B0) - B = (t-300.)*EXP(B) - sq(j,iz,iw) = qy * EXP(A+B) - ENDDO - ELSE - DO iz = 1, nz - sq(j,iz,iw) = 0. - ENDDO - ENDIF - ENDDO - - - - -!*************************************************************** -!*************************************************************** - - IF (j .GT. kj) STOP '1002' - IF (LHOOK) CALL DR_HOOK('JSPEC1',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE JSPEC1 diff --git a/src/arome/chem/internals/lunsav.F b/src/arome/chem/internals/lunsav.F deleted file mode 100644 index bc24aa9e6d13263d4b29ac1dc76e1aedc6cc8993..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/lunsav.F +++ /dev/null @@ -1,52 +0,0 @@ -! ######spl - FUNCTION LUNSAV (IVALUE, ISET) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - INTEGER LUNSAV - LOGICAL ISET - INTEGER IVALUE -!----------------------------------------------------------------------- -! LUNSAV saves and recalls the parameter LUNIT which is the logical -! unit number to which error messages are printed. -! -! Saved local variable.. -! -! LUNIT = Logical unit number for messages. -! The default is 6 (machine-dependent). -! -! On input.. -! -! IVALUE = The value to be set for the LUNIT parameter, -! if ISET is .TRUE. . -! -! ISET = Logical flag to indicate whether to read or write. -! If ISET=.TRUE., the LUNIT parameter will be given -! the value IVALUE. If ISET=.FALSE., the LUNIT -! parameter will be unchanged, and IVALUE is a dummy -! parameter. -! -! On return.. -! -! The (old) value of the LUNIT parameter will be returned -! in the function value, LUNSAV. -! -! This is a modification of the SLATEC library routine J4SAVE. -! -! Subroutines/functions called by LUNSAV.. None -!----------------------------------------------------------------------- - INTEGER LUNIT -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE LUNIT - DATA LUNIT/6/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('LUNSAV',0,ZHOOK_HANDLE) - LUNSAV = LUNIT - IF (ISET) LUNIT = IVALUE - IF (LHOOK) CALL DR_HOOK('LUNSAV',1,ZHOOK_HANDLE) - RETURN -!----------------------- End of Function LUNSAV ------------------------ - ENDFUNCTION LUNSAV diff --git a/src/arome/chem/internals/mflgsv.F b/src/arome/chem/internals/mflgsv.F deleted file mode 100644 index ef9efd236d4420c01e1775d9a8d376554a40f7c2..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/mflgsv.F +++ /dev/null @@ -1,53 +0,0 @@ -! ######spl - FUNCTION MFLGSV (IVALUE, ISET) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - INTEGER MFLGSV - LOGICAL ISET - INTEGER IVALUE -!----------------------------------------------------------------------- -! MFLGSV saves and recalls the parameter MESFLG which controls the -! printing of the error messages. -! -! Saved local variable.. -! -! MESFLG = Print control flag.. -! 1 means print all messages (the default). -! 0 means no printing. -! -! On input.. -! -! IVALUE = The value to be set for the MESFLG parameter, -! if ISET is .TRUE. . -! -! ISET = Logical flag to indicate whether to read or write. -! If ISET=.TRUE., the MESFLG parameter will be given -! the value IVALUE. If ISET=.FALSE., the MESFLG -! parameter will be unchanged, and IVALUE is a dummy -! parameter. -! -! On return.. -! -! The (old) value of the MESFLG parameter will be returned -! in the function value, MFLGSV. -! -! This is a modification of the SLATEC library routine J4SAVE. -! -! Subroutines/functions called by MFLGSV.. None -!----------------------------------------------------------------------- - INTEGER MESFLG -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE MESFLG - DATA MESFLG/1/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MFLGSV',0,ZHOOK_HANDLE) - MFLGSV = MESFLG - IF (ISET) MESFLG = IVALUE - IF (LHOOK) CALL DR_HOOK('MFLGSV',1,ZHOOK_HANDLE) - RETURN -!----------------------- End of Function MFLGSV ------------------------ - ENDFUNCTION MFLGSV diff --git a/src/arome/chem/internals/nn.F90 b/src/arome/chem/internals/nn.F90 deleted file mode 100644 index c98ae89941a30d5b19caf97f7012b15fadc1526a..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/nn.F90 +++ /dev/null @@ -1,56 +0,0 @@ -! ######spl - SUBROUTINE NN( X, Y, PRH, TEMP, A, B, C, KVECTN ) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! .. call the neural net .. -USE MODD_CH_AEROSOL - IMPLICIT NONE - -! .. parameters -INTEGER, INTENT(IN) :: KVECTN -REAL, DIMENSION(KVECTN), INTENT(INOUT) :: X, Y, A, B, C -REAL, DIMENSION(KVECTN), INTENT(IN) :: PRH, TEMP - -REAL, DIMENSION(KVECTN) :: ZRH, ZTEMP -REAL, DIMENSION(KVECTN) :: X1,X2 -REAL, DIMENSION(KVECTN) :: A1,A2,B2,C1,C2 -REAL,DIMENSION(KVECTN,100) :: XIN,YOUT - - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('NN',0,ZHOOK_HANDLE) -X(:)=MAX(0.1,X(:)) -X(:)=MIN(3.999,X(:)) -Y(:)=MAX(0.05,Y(:)) -Y(:)=MIN(0.99,Y(:)) -ZRH(:)=MAX(0.5,PRH(:)) -ZRH(:)=MIN(0.9,PRH(:)) -ZTEMP(:)=MAX(275.,TEMP(:)) -ZTEMP(:)=MIN(315.,TEMP(:)) - -X2(:)=REAL(INT(X(:)/2.)) -X1(:)=REAL(INT(2.-X(:)/2.)) - -XIN(:,1) = X(:) -XIN(:,2) = Y(:) -XIN(:,3) = ZRH(:) -XIN(:,4) = ZTEMP(:) - -CALL FCTRESO(I1IA,J1JA,K1KA,W1IJA,W1JKA,X1MAXA,X1MINA,X1MODA,XIN,YOUT,KVECTN) -A1(:) = (YOUT(:,1)) -CALL FCTRESO(I1IC,J1JC,K1KC,W1IJC,W1JKC,X1MAXC,X1MINC,X1MODC,XIN,YOUT,KVECTN) -C1(:) = (YOUT(:,1)) -CALL FCTRESO(I2IA,J2JA,K2KA,W2IJA,W2JKA,X2MAXA,X2MINA,X2MODA,XIN,YOUT,KVECTN) -A2(:) = (YOUT(:,1)) -CALL FCTRESO(I2IB,J2JB,K2KB,W2IJB,W2JKB,X2MAXB,X2MINB,X2MODB,XIN,YOUT,KVECTN) -B2(:) = exp(YOUT(:,1)) -CALL FCTRESO(I2IC,J2JC,K2KC,W2IJC,W2JKC,X2MAXC,X2MINC,X2MODC,XIN,YOUT,KVECTN) -C2(:) = (YOUT(:,1)) - -A(:)=X1(:)*A1(:)+X2(:)*A2(:) -B(:)=X2(:)*B2(:) -C(:)=X1(:)*C1(:)+X2(:)*C2(:) - -IF (LHOOK) CALL DR_HOOK('NN',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE NN diff --git a/src/arome/chem/internals/o2spec.F b/src/arome/chem/internals/o2spec.F deleted file mode 100644 index 5745b71822a19e57a33b3ff0bf8977f27366e866..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/o2spec.F +++ /dev/null @@ -1,69 +0,0 @@ -! ######spl - SUBROUTINE o2spec(j,jlabel) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! calling parameters - - INTEGER j - CHARACTER*40 jlabel(kj) -!____________________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('O2SPEC',0,ZHOOK_HANDLE) - j = j+1 - jlabel(j) = 'O2 + hv -> Products' -!____________________________________________________________________________ - - IF (j .GT. kj) STOP '1004' - - IF (LHOOK) CALL DR_HOOK('O2SPEC',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE O2SPEC diff --git a/src/arome/chem/internals/ps2str.F b/src/arome/chem/internals/ps2str.F deleted file mode 100644 index d33d3dd88353523b67acb72ee2e275399fc95b53..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/ps2str.F +++ /dev/null @@ -1,461 +0,0 @@ -! ######spl - SUBROUTINE ps2str(nlevel,zen,rsfc,tauu,omu,gu, & - & dsdh, nid, delta, & - & fdr, fup, fdn, edr, eup, edn) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER nrows - PARAMETER(nrows=2*kz) - -!****** -! input: -!****** - INTEGER nlevel - REAL zen, rsfc - REAL tauu(kz), omu(kz), gu(kz) - REAL dsdh(0:kz,kz) - INTEGER nid(0:kz) - LOGICAL delta - -!****** -! output: -!****** - REAL fup(kz),fdn(kz),fdr(kz) - REAL eup(kz),edn(kz),edr(kz) - -!****** -! local: -!****** - REAL tausla(0:kz), tauc(0:kz) - REAL mu2(0:kz), mu, sum - -! internal coefficients and matrix - REAL lam(kz),taun(kz),bgam(kz) - REAL e1(kz),e2(kz),e3(kz),e4(kz) - REAL cup(kz),cdn(kz),cuptn(kz),cdntn(kz) - REAL mu1(kz) - INTEGER row - REAL a(nrows),b(nrows),d(nrows),e(nrows),y(nrows) - -!****** -! other: -!****** - REAL pifs, fdn0 - REAL gi(kz), omi(kz), tempg - REAL f, g, om - REAL gam1, gam2, gam3, gam4 - -! For calculations of Associated Legendre Polynomials for GAMA1,2,3,4 -! in delta-function, modified quadrature, hemispheric constant, -! Hybrid modified Eddington-delta function metods, p633,Table1. -! W.E.Meador and W.R.Weaver, GAS,1980,v37,p.630 -! W.J.Wiscombe and G.W. Grams, GAS,1976,v33,p2440, -! uncomment the following two lines and the appropriate statements further -! down. -! REAL YLM0, YLM2, YLM4, YLM6, YLM8, YLM10, YLM12, YLMS, BETA0, -! > BETA1, BETAn, amu1, subd - - REAL expon, expon0, expon1, divisr, temp, up, dn - REAL ssfc - INTEGER nlayer, mrows, lev - - INTEGER i, j - -! Some additional program constants: - REAL eps, precis - PARAMETER (eps = 1.E-3, precis = 1.E-7) -!_______________________________________________________________________ - -! MU = cosine of solar zenith angle -! RSFC = surface albedo -! TAUU = unscaled optical depth of each layer -! OMU = unscaled single scattering albedo -! GU = unscaled asymmetry factor -! KLEV = max dimension of number of layers in atmosphere -! NLAYER = number of layers in the atmosphere -! NLEVEL = nlayer + 1 = number of levels - -! initial conditions: pi*solar flux = 1; diffuse incidence = 0 - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('PS2STR',0,ZHOOK_HANDLE) - pifs = 1. - fdn0 = 0. - - nlayer = nlevel - 1 - - mu = COS(zen*pi/180.) - -!************* compute coefficients for each layer: -! GAM1 - GAM4 = 2-stream coefficients, different for different approximations -! EXPON0 = calculation of e when TAU is zero -! EXPON1 = calculation of e when TAU is TAUN -! CUP and CDN = calculation when TAU is zero -! CUPTN and CDNTN = calc. when TAU is TAUN -! DIVISR = prevents division by zero - - do j = 0, kz - tauc(j) = 0. - tausla(j) = 0. - mu2(j) = 1./SQRT(largest) - - end do - - IF( .NOT. delta ) THEN - DO i = 1, nlayer - gi(i) = gu(i) - omi(i) = omu(i) - taun(i) = tauu(i) - ENDDO - ELSE -! delta-scaling. Have to be done for delta-Eddington approximation, -! delta discrete ordinate, Practical Improved Flux Method, delta function, -! and Hybrid modified Eddington-delta function methods approximations - DO i = 1, nlayer - f = gu(i)*gu(i) - gi(i) = (gu(i) - f)/(1 - f) - omi(i) = (1 - f)*omu(i)/(1 - omu(i)*f) - taun(i) = (1 - omu(i)*f)*tauu(i) - ENDDO - END IF - -! -! calculate slant optical depth at the top of the atmosphere when zen>90. -! in this case, higher altitude of the top layer is recommended which can -! be easily changed in gridz.f. -! - IF(zen .GT. 90.0) THEN - IF(nid(0) .LT. 0) THEN - tausla(0) = largest - ELSE - sum = 0.0 - DO j = 1, nid(0) - sum = sum + 2.*taun(j)*dsdh(0,j) - END DO - tausla(0) = sum - END IF - END IF - -! - DO 11, i = 1, nlayer - - g = gi(i) - om = omi(i) - tauc(i) = tauc(i-1) + taun(i) - -! stay away from 1 by precision. For g, also stay away from -1 - - tempg = AMIN1(abs(g),1. - precis) - g = SIGN(tempg,g) - om = AMIN1(om,1.-precis) - - -! calculate slant optical depth -! - IF(nid(i) .LT. 0) THEN - tausla(i) = largest - ELSE - sum = 0.0 - DO j = 1, MIN(nid(i),i) - sum = sum + taun(j)*dsdh(i,j) - ENDDO - DO j = MIN(nid(i),i)+1,nid(i) - sum = sum + 2.*taun(j)*dsdh(i,j) - ENDDO - tausla(i) = sum - IF(tausla(i) .EQ. tausla(i-1)) THEN - mu2(i) = SQRT(largest) - ELSE - mu2(i) = (tauc(i)-tauc(i-1))/(tausla(i)-tausla(i-1)) - mu2(i) = SIGN( AMAX1(ABS(mu2(i)),1./SQRT(largest)), & - & mu2(i) ) - END IF - END IF -! -!** the following gamma equations are from pg 16,289, Table 1 -!** save mu1 for each approx. for use in converting irradiance to actinic flux - -! Eddington approximation(Joseph et al., 1976, JAS, 33, 2452): - - gam1 = (7. - om*(4. + 3.*g))/4. - gam2 = -(1. - om*(4. - 3.*g))/4. - gam3 = (2. - 3.*g*mu)/4. - gam4 = 1. - gam3 - mu1(i) = 0.5 - -! quadrature (Liou, 1973, JAS, 30, 1303-1326; 1974, JAS, 31, 1473-1475): - -! gam1 = 1.7320508*(2. - om*(1. + g))/2. -! gam2 = 1.7320508*om*(1. - g)/2. -! gam3 = (1. - 1.7320508*g*mu)/2. -! gam4 = 1. - gam3 -! mu1(i) = 1./sqrt(3.) - -! hemispheric mean (Toon et al., 1089, JGR, 94, 16287): - -! gam1 = 2. - om*(1. + g) -! gam2 = om*(1. - g) -! gam3 = (2. - g*mu)/4. -! gam4 = 1. - gam3 -! mu1(i) = 0.5 - -! PIFM (Zdunkovski et al.,1980, Conrib.Atmos.Phys., 53, 147-166): -! GAM1 = 0.25*(8. - OM*(5. + 3.*G)) -! GAM2 = 0.75*OM*(1.-G) -! GAM3 = 0.25*(2.-3.*G*MU) -! GAM4 = 1. - GAM3 -! mu1(i) = 0.5 - -! delta discrete ordinates (Schaller, 1979, Contrib.Atmos.Phys, 52, 17-26): -! GAM1 = 0.5*1.7320508*(2. - OM*(1. + G)) -! GAM2 = 0.5*1.7320508*OM*(1.-G) -! GAM3 = 0.5*(1.-1.7320508*G*MU) -! GAM4 = 1. - GAM3 -! mu1(i) = 1./sqrt(3.) - -! Calculations of Associated Legendre Polynomials for GAMA1,2,3,4 -! in delta-function, modified quadrature, hemispheric constant, -! Hybrid modified Eddington-delta function metods, p633,Table1. -! W.E.Meador and W.R.Weaver, GAS,1980,v37,p.630 -! W.J.Wiscombe and G.W. Grams, GAS,1976,v33,p2440 -! YLM0 = 2. -! YLM2 = -3.*G*MU -! YLM4 = 0.875*G**3*MU*(5.*MU**2-3.) -! YLM6=-0.171875*G**5*MU*(15.-70.*MU**2+63.*MU**4) -! YLM8=+0.073242*G**7*MU*(-35.+315.*MU**2-693.*MU**4 -! *+429.*MU**6) -! YLM10=-0.008118*G**9*MU*(315.-4620.*MU**2+18018.*MU**4 -! *-25740.*MU**6+12155.*MU**8) -! YLM12=0.003685*G**11*MU*(-693.+15015.*MU**2-90090.*MU**4 -! *+218790.*MU**6-230945.*MU**8+88179.*MU**10) -! YLMS=YLM0+YLM2+YLM4+YLM6+YLM8+YLM10+YLM12 -! YLMS=0.25*YLMS -! BETA0 = YLMS -! -! amu1=1./1.7320508 -! YLM0 = 2. -! YLM2 = -3.*G*amu1 -! YLM4 = 0.875*G**3*amu1*(5.*amu1**2-3.) -! YLM6=-0.171875*G**5*amu1*(15.-70.*amu1**2+63.*amu1**4) -! YLM8=+0.073242*G**7*amu1*(-35.+315.*amu1**2-693.*amu1**4 -! *+429.*amu1**6) -! YLM10=-0.008118*G**9*amu1*(315.-4620.*amu1**2+18018.*amu1**4 -! *-25740.*amu1**6+12155.*amu1**8) -! YLM12=0.003685*G**11*amu1*(-693.+15015.*amu1**2-90090.*amu1**4 -! *+218790.*amu1**6-230945.*amu1**8+88179.*amu1**10) -! YLMS=YLM0+YLM2+YLM4+YLM6+YLM8+YLM10+YLM12 -! YLMS=0.25*YLMS -! BETA1 = YLMS -! -! BETAn = 0.25*(2. - 1.5*G-0.21875*G**3-0.085938*G**5 -! *-0.045776*G**7) - - -! Hybrid modified Eddington-delta function(Meador and Weaver,1980,JAS,37,630): -! subd=4.*(1.-G*G*(1.-MU)) -! GAM1 = (7.-3.*G*G-OM*(4.+3.*G)+OM*G*G*(4.*BETA0+3.*G))/subd -! GAM2 =-(1.-G*G-OM*(4.-3.*G)-OM*G*G*(4.*BETA0+3.*G-4.))/subd -! GAM3 = BETA0 -! GAM4 = 1. - GAM3 -! mu1(i) = (1. - g*g*(1.- mu) )/(2. - g*g) - -!**** -! delta function (Meador, and Weaver, 1980, JAS, 37, 630): -! GAM1 = (1. - OM*(1. - beta0))/MU -! GAM2 = OM*BETA0/MU -! GAM3 = BETA0 -! GAM4 = 1. - GAM3 -! mu1(i) = mu -!**** -! modified quadrature (Meador, and Weaver, 1980, JAS, 37, 630): -! GAM1 = 1.7320508*(1. - OM*(1. - beta1)) -! GAM2 = 1.7320508*OM*beta1 -! GAM3 = BETA0 -! GAM4 = 1. - GAM3 -! mu1(i) = 1./sqrt(3.) - -! hemispheric constant (Toon et al., 1989, JGR, 94, 16287): -! GAM1 = 2.*(1. - OM*(1. - betan)) -! GAM2 = 2.*OM*BETAn -! GAM3 = BETA0 -! GAM4 = 1. - GAM3 -! mu1(i) = 0.5 - -!**** - -! lambda = pg 16,290 equation 21 -! big gamma = pg 16,290 equation 22 - - lam(i) = sqrt(gam1*gam1 - gam2*gam2) - bgam(i) = (gam1 - lam(i))/gam2 - - expon = EXP(-lam(i)*taun(i)) - -! e1 - e4 = pg 16,292 equation 44 - - e1(i) = 1. + bgam(i)*expon - e2(i) = 1. - bgam(i)*expon - e3(i) = bgam(i) + expon - e4(i) = bgam(i) - expon - -! the following sets up for the C equations 23, and 24 -! found on page 16,290 -! prevent division by zero (if LAMBDA=1/MU, shift 1/MU^2 by EPS = 1.E-3 -! which is approx equiv to shifting MU by 0.5*EPS* (MU)**3 - - expon0 = EXP(-tausla(i-1)) - expon1 = EXP(-tausla(i)) - - divisr = lam(i)*lam(i) - 1./(mu2(i)*mu2(i)) - temp = AMAX1(eps,abs(divisr)) - divisr = SIGN(temp,divisr) - - up = om*pifs*((gam1 - 1./mu2(i))*gam3 + gam4*gam2)/divisr - dn = om*pifs*((gam1 + 1./mu2(i))*gam4 + gam2*gam3)/divisr - -! cup and cdn are when tau is equal to zero -! cuptn and cdntn are when tau is equal to taun - - cup(i) = up*expon0 - cdn(i) = dn*expon0 - cuptn(i) = up*expon1 - cdntn(i) = dn*expon1 - - 11 CONTINUE - -!**************** set up matrix ****** -! ssfc = pg 16,292 equation 37 where pi Fs is one (unity). - - ssfc = rsfc*mu*EXP(-tausla(nlayer))*pifs - -! MROWS = the number of rows in the matrix - - mrows = 2*nlayer - -! the following are from pg 16,292 equations 39 - 43. -! set up first row of matrix: - - i = 1 - a(1) = 0. - b(1) = e1(i) - d(1) = -e2(i) - e(1) = fdn0 - cdn(i) - - row=1 - -! set up odd rows 3 thru (MROWS - 1): - - i = 0 - DO 20, row = 3, mrows - 1, 2 - i = i + 1 - a(row) = e2(i)*e3(i) - e4(i)*e1(i) - b(row) = e1(i)*e1(i + 1) - e3(i)*e3(i + 1) - d(row) = e3(i)*e4(i + 1) - e1(i)*e2(i + 1) - e(row) = e3(i)*(cup(i + 1) - cuptn(i)) + & - & e1(i)*(cdntn(i) - cdn(i + 1)) - 20 CONTINUE - -! set up even rows 2 thru (MROWS - 2): - - i = 0 - DO 30, row = 2, mrows - 2, 2 - i = i + 1 - a(row) = e2(i + 1)*e1(i) - e3(i)*e4(i + 1) - b(row) = e2(i)*e2(i + 1) - e4(i)*e4(i + 1) - d(row) = e1(i + 1)*e4(i + 1) - e2(i + 1)*e3(i + 1) - e(row) = (cup(i + 1) - cuptn(i))*e2(i + 1) - & - & (cdn(i + 1) - cdntn(i))*e4(i + 1) - 30 CONTINUE - -! set up last row of matrix at MROWS: - - row = mrows - i = nlayer - - a(row) = e1(i) - rsfc*e3(i) - b(row) = e2(i) - rsfc*e4(i) - d(row) = 0. - e(row) = ssfc - cuptn(i) + rsfc*cdntn(i) - -! solve tri-diagonal matrix: - - CALL tridag(a, b, d, e, y, mrows) - -!*** unfold solution of matrix, compute output fluxes: - - row = 1 - lev = 1 - j = 1 - -! the following equations are from pg 16,291 equations 31 & 32 - - fdr(lev) = EXP( -tausla(0) ) - edr(lev) = mu * fdr(lev) - edn(lev) = fdn0 - eup(lev) = y(row)*e3(j) - y(row + 1)*e4(j) + cup(j) - fdn(lev) = edn(lev)/mu1(lev) - fup(lev) = eup(lev)/mu1(lev) - - DO 60, lev = 2, nlayer + 1 - fdr(lev) = EXP(-tausla(lev-1)) - edr(lev) = mu *fdr(lev) - edn(lev) = y(row)*e3(j) + y(row + 1)*e4(j) + cdntn(j) - eup(lev) = y(row)*e1(j) + y(row + 1)*e2(j) + cuptn(j) - fdn(lev) = edn(lev)/mu1(j) - fup(lev) = eup(lev)/mu1(j) - - row = row + 2 - j = j + 1 - 60 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('PS2STR',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE PS2STR diff --git a/src/arome/chem/internals/qgaus.F90 b/src/arome/chem/internals/qgaus.F90 deleted file mode 100644 index 40374d0079f5d06c96bcf6c54f7612a1a25943fb..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/qgaus.F90 +++ /dev/null @@ -1,24 +0,0 @@ -! ######spl - subroutine qgaus(func,a,b,ss) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - IMPLICIT NONE - real a, b, ss, func - INTEGER :: J - external func - real dx,xm,xr,w(5),x(5) - data w/.2955242247,.2692667193,.2190863625,.1494513491,.066671344/ - data x/.1488743389,.4333953941,.6794095682,.8650633666,.973906529/ - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('QGAUS',0,ZHOOK_HANDLE) - xm = 0.5*(b+a) - xr = 0.5*(b-a) - ss = 0. - do 11 j = 1, 5 - dx = xr*x(j) - ss = ss + w(j)*(func(xm+dx)+func(xm-dx)) - 11 continue - ss = xr*ss - IF (LHOOK) CALL DR_HOOK('QGAUS',1,ZHOOK_HANDLE) - return - endsubroutine qgaus diff --git a/src/arome/chem/internals/r1mach.F b/src/arome/chem/internals/r1mach.F deleted file mode 100644 index a47cf5123aa914ba0bd8fd20ba7918b8738cd567..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/r1mach.F +++ /dev/null @@ -1,25 +0,0 @@ -! ######spl - FUNCTION R1MACH (IDUM) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ########################### - REAL R1MACH - INTEGER IDUM -!----------------------------------------------------------------------- -! This routine computes the unit roundoff of the machine. -! This is defined as the smallest positive machine number -! u such that 1.0 + u .ne. 1.0 -! -! Subroutines/functions called by R1MACH.. None -!----------------------------------------------------------------------- - REAL U, COMP - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('R1MACH',0,ZHOOK_HANDLE) - U = 1.0E0 - 10 U = U*0.5E0 - COMP = 1.0E0 + U - IF (COMP .NE. 1.0E0) GO TO 10 - R1MACH = U*2.0E0 - IF (LHOOK) CALL DR_HOOK('R1MACH',1,ZHOOK_HANDLE) - RETURN - ENDFUNCTION R1MACH diff --git a/src/arome/chem/internals/rdetfl.F b/src/arome/chem/internals/rdetfl.F deleted file mode 100644 index 7c7530b8e9f391c04dc22163b8940718e5403bb0..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/rdetfl.F +++ /dev/null @@ -1,171 +0,0 @@ -! ######spl - SUBROUTINE rdetfl(nw,wl,f) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - integer kdata - parameter(kdata=20000) - -! input: (wavelength grid) - INTEGER nw - REAL wl(kw) - INTEGER iw - -! output: (extra terrestrial solar flux) - REAL f(kw) - -! INTERNAL: - -! work arrays for input data files: - - CHARACTER*40 fil - REAL x1(kdata), x2(kdata) - REAL y1(kdata), y2(kdata) - INTEGER nhead, n, i, ierr - -! data gridded onto wl(kw) grid: - - REAL yg1(kw) - REAL yg2(kw) - - REAL hc - PARAMETER(hc = 6.62E-34 * 2.998E8) - -!_______________________________________________________________________ -! simple files are read and interpolated here in-line. Reading of -! more complex files may be done with longer code in a read#.f subroutine. - -!****** SUSIM irradiance - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RDETFL',0,ZHOOK_HANDLE) - fil = 'DATAE1/SUN/susim_hr.flx' - CALL read1(nw,wl,yg1) - -! fil = 'DATAE1/SUN/wmo85.flx' -! CALL read2(nw,wl,yg1) - -! fil = 'DATAE1/SUN/extsol.flx' -! nhead = 3 -! n =121 - -! fil = 'DATAE1/SUN/lowsun3.flx' -! nhead = 3 -! n = 4327 - -! fil = 'DATAE1/SUN/modtran1.flx' -! nhead = 6 -! n = 14980 - -! fil = 'DATAE1/SUN/nicolarv.flx' -! nhead = 8 -! n = 1260 - -! fil = 'DATAE2/SUN/solstice.flx' -! unofficial - do not use -! nhead = 11 -! n = 2047 - -! fil = 'DATAE2/SUN/suntoms.flx' -! unofficial - do not use -! nhead = 3 -! n = 1200 -!* suntoms.flx: original data is in milli-Watts m-2 nm-1 -!* y1(i) = y1(i) / 1000. - - fil = 'DATAE1/SUN/neckel.flx' - nhead = 11 - n = 496 -! neckel.flx: convert from quanta cm-2 s-1 to watts m-2 nm-1 -! y1(i) = y1(i) * 1.E4 * hc / (x1(i) * 1.E-9) - - write(kout,*) fil - OPEN(UNIT=kin,FILE=fil,STATUS='old') - DO i = 1, nhead - READ(kin,*) - ENDDO - DO 12, i = 1, n - -! do file-specific read, and apply conversions here - - READ(kin,*) x1(i), y1(i) - -! neckel.flx: convert from quanta cm-2 s-1 to watts m-2 nm-1 - y1(i) = y1(i) * 1.E4 * hc / (x1(i) * 1.E-9) - - 12 CONTINUE - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg2,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - -! Adjoin susim and neckel - - DO 10, iw = 1, nw-1 - IF (wl(iw) .GT. 350.) THEN - f(iw) = yg2(iw) - ELSE - f(iw) = yg1(iw) - ENDIF - 10 CONTINUE - - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('RDETFL',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE RDETFL diff --git a/src/arome/chem/internals/rdno2xs.F b/src/arome/chem/internals/rdno2xs.F deleted file mode 100644 index 23892c5d0b38514b08dbbfcf884b722c36f85e30..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/rdno2xs.F +++ /dev/null @@ -1,106 +0,0 @@ -! ######spl - SUBROUTINE rdno2xs(nw,wl,xsno2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=1000) - -! input: (altitude working grid) - INTEGER nw - REAL wl(kw) - -! output: - - REAL xsno2(kw) - -! local: - REAL x1(kdata) - REAL y1(kdata),y2(kdata),y3(kdata) - REAL yg(kw) - REAL a1, a2, dum - INTEGER ierr - INTEGER i, l, n, idum - CHARACTER*40 fil -!_______________________________________________________________________ - -!************ absorption cross sections: -! measurements of Davidson et al. (198x) at 273K -! from 263.8 to 648.8 nm in approximately 0.5 nm intervals - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RDNO2XS',0,ZHOOK_HANDLE) - fil = 'DATAE1/NO2/NO2_ncar_00.abs' - OPEN(UNIT=kin,FILE=fil,STATUS='old') - n = 750 - DO i = 1, n - READ(kin,*) x1(i), y1(i), dum, dum, idum - ENDDO - CLOSE(kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - - DO 13, l = 1, nw-1 - xsno2(l) = yg(l) - 13 CONTINUE - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('RDNO2XS',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE RDNO2XS diff --git a/src/arome/chem/internals/rdo2xs.F b/src/arome/chem/internals/rdo2xs.F deleted file mode 100644 index 9c7a1f852bfcde817e6fd29b81a06d0bbffd5228..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/rdo2xs.F +++ /dev/null @@ -1,128 +0,0 @@ -! ######spl - SUBROUTINE rdo2xs(nw,wl,xso2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=1000) - -! input: (altitude working grid) - INTEGER nw - REAL wl(kw) - -! output: -! O2 absorption cross section. Units are cm2 molecule-1 - - REAL xso2(kw) - -! local: - REAL x1(kdata), x - REAL y1(kdata), y - REAL yg(kw) - INTEGER i, iw, n, ifirst - INTEGER icount - INTEGER ierr - CHARACTER*40 fil - -!_______________________________________________________________________ - -!************ O2 absorption cross sections: -! from 116 nm to 245 nm, including Schumann-Runge continumm -! from Brasseur and Solomon 1986. - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RDO2XS',0,ZHOOK_HANDLE) - fil = 'DATAE1/O2/O2_src.abs' - OPEN(UNIT=kin,FILE='DATAE1/O2/O2_src.abs') - READ(kin,*) ifirst, n - DO i = 1, ifirst-2 - READ(kin,*) - ENDDO - icount = 0 - DO i = 1, n - READ(kin,*) x, y - IF (x .LT. 204.) THEN - icount = icount+1 - x1(icount) = x - y1(icount) = y - ENDIF - ENDDO - CLOSE(kin) - -! overwrite from 204 to 241 nm (Herzberg continuum) - - OPEN(UNIT=kin,FILE='DATAE1/O2/O2_jpl94.abs',STATUS='old') - read(kin,*) - n = 40 - DO i = 1, n - icount = icount+1 - READ(kin,*) y - y1(icount) = y*1E-24 - x1(icount) = 204. + FLOAT(i-1) - END DO - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,icount,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,icount, 0.,0.) - CALL addpnt(x1,y1,kdata,icount,x1(icount)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,icount, 1.e38,0.) - - CALL ch_inter2(nw,wl,yg,icount,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - - DO iw = 1, nw-1 - xso2(iw) = yg(iw) - END DO - - IF (LHOOK) CALL DR_HOOK('RDO2XS',1,ZHOOK_HANDLE) - ENDSUBROUTINE RDO2XS diff --git a/src/arome/chem/internals/rdo3xs.F b/src/arome/chem/internals/rdo3xs.F deleted file mode 100644 index ce21c8b3fbe91c673ecbce46a2b015e4a0e8c26f..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/rdo3xs.F +++ /dev/null @@ -1,184 +0,0 @@ -! ######spl - SUBROUTINE rdo3xs(nw,wl,xso3,s226,s263,s298) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=1000) - -! input: (altitude working grid) - INTEGER nw - REAL wl(kw) - -! output: -! ozone absorption cross section at three different -! temperatures: 226, 263, 298 Kelvin. Can interpolate -! to different temperatures. Units are cm2 molecule-1 - - REAL xso3(kw), s226(kw),s263(kw),s298(kw) - -! local: - REAL x1(kdata),x2(kdata),x3(kdata) - REAL y1(kdata),y2(kdata),y3(kdata) - REAL yg(kw) - REAL a1, a2, dum - INTEGER ierr - INTEGER i, iw, n, idum, n1, n2, n3 - - character*40 fil - -!_______________________________________________________________________ - - -!*********** from WMO 1985 Ozone Assessment -! from 175.439 to 847.500 nm -! use value at 273 K - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RDO3XS',0,ZHOOK_HANDLE) - fil = 'DATAE1/wmo85' - OPEN(UNIT=kin,FILE='DATAE1/wmo85',STATUS='old') - DO 11, i = 1, 3 - read(kin,*) - 11 CONTINUE - n = 158 - DO 12, i = 1, n - READ(kin,*) idum, a1, a2, dum, dum, dum, dum, y1(i) - x1(i) = (a1+a2)/2. - 12 CONTINUE - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - - DO 13, iw = 1, nw-1 - xso3(iw) = yg(iw) - 13 CONTINUE - -!************ ozone absorption cross sections: -! For Hartley aand Huggins bands, use temperature-dependent values from -! Molina, L. T., and M. J. Molina, Absolute absorption cross sections -! of ozone in the 185- to 350-nm wavelength range, -! J. Geophys. Res., vol. 91, 14501-14508, 1986. - - fil = 'DATAE1/O3/O3.molina.abs' - OPEN(UNIT=kin,FILE='DATAE1/O3/O3.molina.abs',STATUS='old') - DO 14, i = 1, 5 - READ(kin,*) - 14 CONTINUE - - n1 = 220 - n2 = 220 - n3 = 220 - DO 15, i = 1, n1 - READ(kin,*) x1(i), y1(i), y2(i), y3(i) - x2(i) = x1(i) - x3(i) = x1(i) - 15 CONTINUE - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n1,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 0.,0.) - CALL addpnt(x1,y1,kdata,n1,x1(n1)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n1, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n1,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - - DO 16, iw = 1, nw-1 - s226(iw) = yg(iw)*1.E-20 - 16 CONTINUE - - CALL addpnt(x2,y2,kdata,n2,x2(1)*(1.-deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 0.,0.) - CALL addpnt(x2,y2,kdata,n2,x2(n2)*(1.+deltax),0.) - CALL addpnt(x2,y2,kdata,n2, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n2,x2,y2,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - DO 17, iw = 1, nw-1 - s263(iw) = yg(iw)*1.E-20 - 17 CONTINUE - - CALL addpnt(x3,y3,kdata,n3,x3(1)*(1.-deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 0.,0.) - CALL addpnt(x3,y3,kdata,n3,x3(n3)*(1.+deltax),0.) - CALL addpnt(x3,y3,kdata,n3, 1.e+38,0.) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - CALL ch_inter2(nw,wl,yg,n3,x3,y3,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - - DO 18, iw = 1, nw-1 - s298(iw) = yg(iw)*1.E-20 - 18 CONTINUE - - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('RDO3XS',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE RDO3XS diff --git a/src/arome/chem/internals/rdso2xs.F b/src/arome/chem/internals/rdso2xs.F deleted file mode 100644 index 9b976b9cd35d65424f878a8ffc1b75787079a3d5..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/rdso2xs.F +++ /dev/null @@ -1,112 +0,0 @@ -! ######spl - SUBROUTINE rdso2xs(nw,wl,xsso2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=1000) - -! input: (altitude working grid) - INTEGER nw - REAL wl(kw) - -! output: - - REAL xsso2(kw) - -! local: - REAL x1(kdata) - REAL y1(kdata),y2(kdata),y3(kdata) - REAL yg(kw) - REAL a1, a2, dum - INTEGER ierr - INTEGER i, l, n, idum - CHARACTER*40 fil -!_______________________________________________________________________ - -!************ absorption cross sections: -! SO2 absorption cross sections from J. Quant. Spectrosc. Radiat. Transfer -! 37, 165-182, 1987, T. J. McGee and J. Burris Jr. -! Angstrom vs. cm2/molecule, value at 221 K - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RDSO2XS',0,ZHOOK_HANDLE) - fil = 'DATA/McGee87' - OPEN(UNIT=kin,FILE='DATAE1/SO2/SO2xs.all',STATUS='old') - DO 11, i = 1,3 - read(kin,*) - 11 CONTINUE -! n = 681 - n = 704 - DO 12, i = 1, n - READ(kin,*) x1(i), y1(i) - x1(i) = x1(i)/10. - 12 CONTINUE - CLOSE (kin) - - CALL addpnt(x1,y1,kdata,n,x1(1)*(1.-deltax),0.) - CALL addpnt(x1,y1,kdata,n, 0.,0.) - CALL addpnt(x1,y1,kdata,n,x1(n)*(1.+deltax),0.) - CALL addpnt(x1,y1,kdata,n, 1.e+38,0.) - CALL ch_inter2(nw,wl,yg,n,x1,y1,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - - DO 13, l = 1, nw-1 - xsso2(l) = yg(l) - 13 CONTINUE - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('RDSO2XS',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE RDSO2XS diff --git a/src/arome/chem/internals/read1.F b/src/arome/chem/internals/read1.F deleted file mode 100644 index 62426df8c4814466cd845b15689807193866a0e8..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/read1.F +++ /dev/null @@ -1,127 +0,0 @@ -! ######spl - SUBROUTINE read1(nw,wl,f) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! input: (wavelength grid) - INTEGER nw - REAL wl(kw) - INTEGER iw - -! output: (extra terrestrial solar flux) - REAL f(kw) - -! local: - - REAL lambda_hi(10000),irrad_hi(10000) - REAL lambda - INTEGER ierr - INTEGER i, j, n - CHARACTER*40 FIL - -!_______________________________________________________________________ - -!****** SUSIM irradiance -!_______________________________________________________________________ -! VanHoosier, M. E., J.-D. F. Bartoe, G. E. Brueckner, and -! D. K. Prinz, Absolute solar spectral irradiance 120 nm - -! 400 nm (Results from the Solar Ultraviolet Spectral Irradiance -! Monitor - SUSIM- Experiment on board Spacelab 2), -! Astro. Lett. and Communications, 1988, vol. 27, pp. 163-168. -! SUSIM SL2 high resolution (0.15nm) Solar Irridance data. -! Irradiance values are given in milliwatts/m^2/nanomenters -! and are listed at 0.05nm intervals. The wavelength given is -! the center wavelength of the 0.15nm triangular bandpass. -! Normalized to 1 astronomical unit. -! DATA for wavelengths > 350 nm are unreliable -! (Van Hoosier, personal communication, 1994). -!_______________________________________________________________________ - -!* high resolution - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('READ1',0,ZHOOK_HANDLE) - fil = 'DATAE1/SUN/susim_hi.flx' - write(kout,*) fil - OPEN(UNIT=kin,FILE=fil,STATUS='old') - DO 11, i = 1, 7 - READ(kin,*) - 11 CONTINUE - DO 12, i = 1, 559 - READ(kin,*)lambda,(irrad_hi(10*(i-1)+j), j=1, 10) - 12 CONTINUE - CLOSE (kin) - -! compute wavelengths, convert from mW to W - - n = 559*10 - DO 13, i = 1, n - lambda_hi(i)=120.5 + FLOAT(i-1)*.05 - irrad_hi(i) = irrad_hi(i) / 1000. - 13 CONTINUE -!_______________________________________________________________________ - - CALL addpnt(lambda_hi,irrad_hi,10000,n, & - & lambda_hi(1)*(1.-deltax),0.) - CALL addpnt(lambda_hi,irrad_hi,10000,n, 0.,0.) - CALL addpnt(lambda_hi,irrad_hi,10000,n, & - & lambda_hi(n)*(1.+deltax),0.) - CALL addpnt(lambda_hi,irrad_hi,10000,n, 1.e38,0.) - CALL ch_inter2(nw,wl,f,n,lambda_hi,irrad_hi,ierr) - IF (ierr .NE. 0) THEN - WRITE(*,*) ierr, fil - STOP - ENDIF - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('READ1',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE READ1 diff --git a/src/arome/chem/internals/read2.F b/src/arome/chem/internals/read2.F deleted file mode 100644 index 9c4b89ebf48d920a22dda2bb951a910212cc7c7c..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/read2.F +++ /dev/null @@ -1,123 +0,0 @@ -! ######spl - SUBROUTINE read2(nw,wl,f) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! input: (wavelength grid) - INTEGER nw - REAL wl(kw) - REAL yg(kw) - -! - INTEGER iw - -! output: (extra terrestrial solar flux) - REAL f(kw) - -! local: - - REAL x1(1000), y1(1000) - REAL x2(1000), y2(1000) - REAL x3(1000), y3(1000) - INTEGER i, n - REAL DUM - INTEGER IDUM - -!_______________________________________________________________________ - -!********WMO 85 irradiance - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('READ2',0,ZHOOK_HANDLE) - WRITE(kout,*) 'DATAE1/SUN/wmo85.flx' - OPEN(UNIT=kin,FILE='DATAE1/SUN/wmo85.flx',STATUS='old') - DO 11, i = 1, 3 - READ(kin,*) - 11 CONTINUE - n = 158 - DO 12, i = 1, n - READ(kin,*) idum, x1(i),x2(i),y1(i), dum, dum, dum - x3(i) = 0.5 * (x1(i) + x2(i)) - -! average value needs to be calculated only if inter2 is -! used to interpolate onto wavelength grid (see below) -! y1(i) = y1(i) / (x2(i) - x1(i)) - - 12 CONTINUE - CLOSE (kin) - - x1(n+1) = x2(n) - -! inter2: INPUT : average value in each bin -! OUTPUT: average value in each bin -! inter3: INPUT : total area in each bin -! OUTPUT: total area in each bin - - CALL inter3(nw,wl,yg, n+1,x1,y1,0) -! CALL ch_inter2(nw,wl,yg,n,x3,y1,ierr) - - DO 10, iw = 1, nw-1 -! from quanta s-1 cm-2 bin-1 to watts m-2 nm-1 -! 1.e4 * ([hc =] 6.62E-34 * 2.998E8)/(wc*1e-9) - -! the scaling by bin width needs to be done only if -! inter3 is used for interpolation - - yg(iw) = yg(iw) / (wl(iw+1)-wl(iw)) - f(iw) = yg(iw) * 1.e4 * (6.62E-34 * 2.998E8) / & - & ( 0.5 * (wl(iw+1)+wl(iw)) * 1.e-9) - - 10 CONTINUE - -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('READ2',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE READ2 diff --git a/src/arome/chem/internals/rtlink.F b/src/arome/chem/internals/rtlink.F deleted file mode 100644 index e37f21a6915f2c13dc63e9934eebac0e6d06e698..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/rtlink.F +++ /dev/null @@ -1,159 +0,0 @@ -! ######spl - SUBROUTINE rtlink(nz,z, & - & iw, ag, zen, & - & dsdh, nid, & - & dtrl, & - & dto3, & - & dto2, & - & dtso2, & - & dtno2, & - & dtcld, omcld, gcld, & - & dtaer,omaer,gaer, & - & edir, edn, eup, fdir, fdn, fup) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!_______________________________________________________________________ - - IMPLICIT NONE - -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! input: - - INTEGER nz, iw - REAL z(kz) - REAL ag - REAL zen - REAL dtrl(kz,kw) - REAL dto3(kz,kw), dto2(kz,kw), dtso2(kz,kw), dtno2(kz,kw) - REAL dtcld(kz,kw), omcld(kz,kw), gcld(kz,kw) - REAL dtaer(kz,kw), omaer(kz,kw), gaer(kz,kw) - REAL dsdh(0:kz,kz) - INTEGER nid(0:kz) - - -! output - REAL edir(kz), edn(kz), eup(kz) - REAL fdir(kz), fdn(kz), fup(kz) - -! more program constants: - REAL dr - PARAMETER (dr = pi/180.) - -! local: - REAL dt(kz), om(kz), g(kz) - REAL ediri(kz), edni(kz), eupi(kz) - REAL fdiri(kz), fdni(kz), fupi(kz) - REAL daaer, dtsct, dtabs, dsaer, dscld, dacld - INTEGER i, ii - LOGICAL delta - - DATA delta /.true./ -!_______________________________________________________________________ - -! initialize: - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('RTLINK',0,ZHOOK_HANDLE) - DO 5 i = 1, nz - fdir(i) = 0. - fup(i) = 0. - fdn(i) = 0. - edir(i) = 0. - eup(i) = 0. - edn(i) = 0. - 5 CONTINUE - -! set here any coefficients specific to rt scheme, -! ---- - - DO 10, i = 1, nz - 1 - - dscld = dtcld(i,iw)*omcld(i,iw) - dacld = dtcld(i,iw)*(1.-omcld(i,iw)) - - dsaer = dtaer(i,iw)*omaer(i,iw) - daaer = dtaer(i,iw)*(1.-omaer(i,iw)) - - dtsct = dtrl(i,iw) + dscld + dsaer - dtabs = dto3(i,iw) + dto2(i,iw) + dtso2(i,iw) + & - & dtno2(i,iw) + dacld + daaer - - dtabs = MAX(dtabs,1./largest) - dtsct = MAX(dtsct,1./largest) - -! invert z-coordinate: - - ii = nz - i - dt(ii) = dtsct + dtabs - om(ii) = dtsct/(dtsct + dtabs) - IF(dtsct .EQ. 1./largest) om(ii) = 1./largest - g(ii) = (gcld(i,iw)*dscld + gaer(i,iw)*dsaer)/dtsct - - 10 CONTINUE - -! call rt routine: - - CALL ps2str(nz,zen,ag,dt,om,g, & - & dsdh, nid, delta, & - & fdiri, fupi, fdni, ediri, eupi, edni) - -! put on upright z-coordinate - - DO 20, i = 1, nz - ii = nz - i + 1 - fdir(i) = fdiri(ii) - fup(i) = fupi(ii) - fdn(i) = fdni(ii) - edir(i) = ediri(ii) - eup(i) = eupi(ii) - edn(i) = edni(ii) - 20 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('RTLINK',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE RTLINK diff --git a/src/arome/chem/internals/sacopy.F b/src/arome/chem/internals/sacopy.F deleted file mode 100644 index 5f46845a27303ace96b1933a8c2cb540e37aa18f..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sacopy.F +++ /dev/null @@ -1,31 +0,0 @@ -! ######spl - SUBROUTINE SACOPY (NROW, NCOL, A, NROWA, B, NROWB) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################################## - REAL A, B - INTEGER NROW, NCOL, NROWA, NROWB - DIMENSION A(NROWA,NCOL), B(NROWB,NCOL) -!----------------------------------------------------------------------- -! Call sequence input -- NROW, NCOL, A, NROWA, NROWB -! Call sequence output -- B -! COMMON block variables accessed -- None -! -! Subroutines called by SACOPY.. CH_SCOPY -! Function routines called by SACOPY.. None -!----------------------------------------------------------------------- -! This routine copies one rectangular array, A, to another, B, -! where A and B may have different row dimensions, NROWA and NROWB. -! The data copied consists of NROW rows and NCOL columns. -!----------------------------------------------------------------------- - INTEGER IC -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SACOPY',0,ZHOOK_HANDLE) - DO 20 IC = 1,NCOL - CALL CH_SCOPY (NROW, A(1,IC), 1, B(1,IC), 1) - 20 CONTINUE -! - IF (LHOOK) CALL DR_HOOK('SACOPY',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SACOPY diff --git a/src/arome/chem/internals/salt_filter.F90 b/src/arome/chem/internals/salt_filter.F90 deleted file mode 100644 index 68f50b40aef7192608f8615e85e304ecaf37ef10..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/salt_filter.F90 +++ /dev/null @@ -1,79 +0,0 @@ -! ######spl - SUBROUTINE SALT_FILTER(PSV, PRHODREF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -! Entry variables: -! -! PRSVS(INOUT) -Array of moments included in PRSVS -! -!************************************************************* -! Exit variables: -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! ZVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -! IMPLICIT ARGUMENTS -! -USE MODD_SALT -USE MODD_CSTS_SALT -! -USE MODE_SALT_PSD -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -! -!* 0.2 Declarations of local variables : -! -INTEGER :: JN -INTEGER :: IMODEIDX -REAL, DIMENSION(NMODE_SLT*3) :: ZPMIN -REAL, DIMENSION(NMODE_SLT) :: ZINIRADIUS -REAL, DIMENSION(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_SLT*3) :: ZM ! [aerosol units] local array which goes to output later - -REAL :: ZRGMIN, ZSIGMIN -REAL :: ZRHOP, ZMI -INTEGER,DIMENSION(NMODE_SLT) :: NM0, NM3, NM6 -! -!* 0.3 initialize constant -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('SALT_FILTER',0,ZHOOK_HANDLE) -ZRHOP = XDENSITY_SALT -ZMI = XMOLARWEIGHT_SALT ! molecular mass in kg/mol -! -!------------------------------------------------------------------------------- - -! -PSV(:,:,:,:) = MAX(PSV(:,:,:,:), 1.E-80) -! - -IF (LHOOK) CALL DR_HOOK('SALT_FILTER',1,ZHOOK_HANDLE) -END SUBROUTINE SALT_FILTER diff --git a/src/arome/chem/internals/salt_velgrav.F90 b/src/arome/chem/internals/salt_velgrav.F90 deleted file mode 100644 index 399a31319de0460353cfe611063848b177e76ccf..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/salt_velgrav.F90 +++ /dev/null @@ -1,108 +0,0 @@ -! ######spl - SUBROUTINE SALT_VELGRAV(PSIG, PRG, PTHT, PABST, PRHODREF, PRHOP, PMU, PVGK,PDPK, PVGG) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! P. Tulet (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -! Entry variables: -! -! PM(IN) -Array of moments -! -!************************************************************* -! Exit variables: -! -! PFSED(IN) -Array of moment variation due to dry deposition -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! PDPK -Polydisperse diffusivity (m2/s) -! PVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!----------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_SALT -USE MODD_CSTS_SALT -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, INTENT(IN) :: PRHOP -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG, PRG -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST, PRHODREF -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGK,PDPK -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PMU -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGG -! -!* 0.2 declaration of local variables -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3)) :: ZTEMP,ZLAMBDA -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3)) :: ZRG,ZLN2S -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3)) :: ZKNG -! -REAL, DIMENSION(SIZE(PSIG,1),SIZE(PSIG,2),SIZE(PSIG,3),NMODE_SLT) :: ZDPG -! -! -REAL, PARAMETER :: gasmw=28.9644d0 -REAL :: ZK -! -INTEGER :: JI,JJ -! -!----------------------------------------------------------------- -!temperature -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('SALT_VELGRAV',0,ZHOOK_HANDLE) -ZTEMP(:,:,:)=PTHT(:,:,:)*(PABST(:,:,:)/XP00)**(XRD/XCPD) -! -! Sutherland's equation for viscosity -PMU(:,:,:)=1.8325d-5*416.16/(ZTEMP(:,:,:)+120)*(ZTEMP(:,:,:)/296.16)*SQRT(ZTEMP(:,:,:)/296.16) -! -! Mean free path (Seinfeld and Pandis p455) -ZLAMBDA(:,:,:)=PMU(:,:,:)/PRHODREF(:,:,:)*SQRT(1.89d-4*gasmw/ZTEMP(:,:,:))*1.e6 -! -! -DO JI=1,NMODE_SLT - ZRG(:,:,:)=PRG(:,:,:,JI) * 1E-6 - ZLN2S(:,:,:)=LOG(PSIG(:,:,:,JI))**2 - ! - ZKNG(:,:,:)=ZLAMBDA(:,:,:) / PRG(:,:,:,JI) - ! - PVGG(:,:,:,JI)= 2.*XG*PRHOP*ZRG(:,:,:)**2 /(9.*PMU(:,:,:)) - ZDPG(:,:,:,JI)=XBOLTZ*ZTEMP(:,:,:)/ (6.*XPI* ZRG(:,:,:)*PMU(:,:,:)) - ! - ! - DO JJ=0,2 - ZK=REAL(3*JJ) - PDPK(:,:,:,3*JI+JJ-2)=ZDPG(:,:,:,JI)*(exp((-2.*ZK+1.)/2.*ZLN2S(:,:,:))+1.246*ZKNG(:,:,:)*& - exp((-4.*ZK+4)/2.*ZLN2S(:,:,:))) - ! - PVGK(:,:,:,3*JI+JJ-2)=PVGG(:,:,:,JI)*& - (exp((4.*ZK+4.)/2.*ZLN2S(:,:,:)) + 1.246*ZKNG(:,:,:)* exp((2.*ZK+1.)/2.*ZLN2S(:,:,:))) - ENDDO - ! -ENDDO -! -! -IF (LHOOK) CALL DR_HOOK('SALT_VELGRAV',1,ZHOOK_HANDLE) -END SUBROUTINE SALT_VELGRAV diff --git a/src/arome/chem/internals/saltlfi_n.F90 b/src/arome/chem/internals/saltlfi_n.F90 deleted file mode 100644 index bcfd2f3a1b64e499ad620c3afc41846a42ecaead..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/saltlfi_n.F90 +++ /dev/null @@ -1,171 +0,0 @@ -! ######spl - SUBROUTINE SALTLFI_n(PSV, PRHODREF) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################################ -! -!! PURPOSE -!! ------- -!! Realise l'équilibre des moments à partir du sigma et du diametre moyen -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! none -!! -!! EXTERNAL -!! -------- -!! None -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_SALT -USE MODD_NSV -USE MODD_CSTS_SALT -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -! -! -!* 0.2 declarations local variables -! -REAL :: ZDEN2MOL, ZRHOI, ZMI, ZFAC, ZRGMIN -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZCTOTA -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM -REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZSIGMA -INTEGER,DIMENSION(:), ALLOCATABLE :: IM0, IM3, IM6 -REAL,DIMENSION(:), ALLOCATABLE :: ZMMIN -REAL,DIMENSION(:), ALLOCATABLE :: ZINIRADIUS, ZINISIGMA -INTEGER :: IKU -INTEGER :: JJ, JN, JK ! loop counter -INTEGER :: IMODEIDX ! index mode -REAL, PARAMETER :: ZMMR_SALT=1.d-7 !kg_{sea salt}/kg_{air} -REAL :: ZMMR_SALTN -! -!------------------------------------------------------------------------------- -! -!* 1. TRANSFER FROM GAS TO AEROSOL MODULE -! ----------------------------------- -! -! 1.1 initialisation -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('SALTLFI_N',0,ZHOOK_HANDLE) -IKU=SIZE(PSV,3) -! -ALLOCATE (IM0(NMODE_SLT)) -ALLOCATE (IM3(NMODE_SLT)) -ALLOCATE (IM6(NMODE_SLT)) -ALLOCATE (ZCTOTA(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_SLT)) -ALLOCATE (ZM(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3), NMODE_SLT*3)) -ALLOCATE (ZSIGMA(SIZE(PSV,1), SIZE(PSV,2), SIZE(PSV,3))) -ALLOCATE (ZINIRADIUS(NMODE_SLT)) -ALLOCATE (ZINISIGMA(NMODE_SLT)) -ALLOCATE (ZMMIN(NMODE_SLT*3)) -! -! -DO JN = 1, NMODE_SLT - IM0(JN) = 1+(JN-1)*3 - IM3(JN) = 2+(JN-1)*3 - IM6(JN) = 3+(JN-1)*3 - ! - !Get the sea salt mode we are talking about, MODE 2 is treated first, then mode 3, then 1 - !This index is only needed to get the right radius out of the XINIRADIUS_SLT array and the - !right XINISIG_SLT out of the XINISIG_SLT-array - IMODEIDX = JPSALTORDER(JN) - ! - !Convert initial mass median radius to number median radius - IF (CRGUNITS=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) * EXP(-3.*(LOG(XINISIG_SLT(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) - END IF - ZINISIGMA(JN) = XINISIG_SLT(IMODEIDX) - ! - ZMMIN(IM0(JN)) = XN0MIN_SLT(IMODEIDX) -! ZRGMIN = XCOEFRADMIN * ZINIRADIUS(JN) - ZRGMIN = ZINIRADIUS(JN) - ZMMIN(IM3(JN)) = XN0MIN_SLT(IMODEIDX) * (ZRGMIN**3)*EXP(4.5 * LOG(ZINISIGMA(JN))**2) - ZMMIN(IM6(JN)) = XN0MIN_SLT(IMODEIDX) * (ZRGMIN**6)*EXP(18. * LOG(ZINISIGMA(JN))**2) -ENDDO -! -! -ZRHOI = XDENSITY_SALT !1.8e3 !++changed alfgr -!ZMI = XMOLARWEIGHT_SALT*1.D3 !100. !++changed alfgr -ZMI = XMOLARWEIGHT_SALT -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD -ZFAC=(4./3.)*XPI*ZRHOI*1.e-9 - -! conversion into mol.cm-3 -DO JJ=1,SIZE(PSV,4) - PSV(:,:,:,JJ) = PSV(:,:,:,JJ) * ZDEN2MOL * PRHODREF(:,:,:) -END DO -! -DO JN=1,NMODE_SLT - -!* 1.1 calculate moment 0 from XN0MIN_SLT -! -! change initial proportion - IF (JN == 1) ZMMR_SALTN = 0.80 * ZMMR_SALT - IF (JN == 2) ZMMR_SALTN = 0.10 * ZMMR_SALT - IF (JN == 3) ZMMR_SALTN = 0.10 * ZMMR_SALT - DO JK=1,IKU - ZM(:,:,JK,IM0(JN)) = & - ZMMR_SALTN &![kg_{sea salt}/kg_{air} - *PRHODREF(:,:,JK) &![kg_{air}/m3_{air}]==> kg/m3 - /XDENSITY_SALT &![kg__{sea salt}/m3_{sea salt}==>m3_{sea salt}/m3{air} - *(6.d0/XPI) & - /(2.d0*ZINIRADIUS(JN)*1.d-6)**3 &![particle/m_sea salt^{-3}]==> particle/m3 - *EXP(-4.5*(LOG(XINISIG_SLT(JPSALTORDER(JN))))**2) !Take into account distribution - END DO - ZM(:,:,:,IM0(JN)) = MAX(ZMMIN(IM0(JN)), ZM(:,:,:,IM0(JN))) -! -!* 1.2 calculate moment 3 from m0, RG and SIG -! - ZM(:,:,:,IM3(JN)) = ZM(:,:,:,IM0(JN)) * & - (ZINIRADIUS(JN)**3)*EXP(4.5 * LOG(ZINISIGMA(JN))**2) - ZM(:,:,:,IM3(JN)) = MAX(ZMMIN(IM3(JN)), ZM(:,:,:,IM3(JN))) -! -!* 1.3 calculate moment 6 from m0, RG and SIG -! - ZM(:,:,:,IM6(JN))= ZM(:,:,:,IM0(JN)) * ((ZINIRADIUS(JN)**6)*& - EXP(18. * (LOG(ZINISIGMA(JN)))**2)) - ZM(:,:,:,IM6(JN)) = MAX(ZMMIN(IM6(JN)), ZM(:,:,:,IM6(JN))) -! -!* 1.4 output concentration -! - PSV(:,:,:,1+(JN-1)*3) = ZM(:,:,:,IM0(JN)) * XMD / (XAVOGADRO*PRHODREF(:,:,:)) - PSV(:,:,:,2+(JN-1)*3) = ZM(:,:,:,IM3(JN)) * XMD*XPI * 4./3. / & - (ZMI*PRHODREF(:,:,:)*(1.d0/ZRHOI)*XM3TOUM3_SALT) - - PSV(:,:,:,3+(JN-1)*3) = ZM(:,:,:,IM6(JN)) * XMD / (XAVOGADRO*PRHODREF(:,:,:)*1.d-6) -! -END DO -! -DEALLOCATE(ZMMIN) -DEALLOCATE(ZINISIGMA) -DEALLOCATE(ZINIRADIUS) -DEALLOCATE(ZSIGMA) -DEALLOCATE(ZM) -DEALLOCATE(ZCTOTA) -DEALLOCATE(IM6) -DEALLOCATE(IM3) -DEALLOCATE(IM0) -! -! -IF (LHOOK) CALL DR_HOOK('SALTLFI_N',1,ZHOOK_HANDLE) -END SUBROUTINE SALTLFI_n diff --git a/src/arome/chem/internals/schu.F b/src/arome/chem/internals/schu.F deleted file mode 100644 index a4e1dd5d0ceb99958afb506d607f821fc38dec72..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/schu.F +++ /dev/null @@ -1,269 +0,0 @@ -! ######spl - SUBROUTINE schu(nz,o2col,iw,secchi,dto2,xscho2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - REAL o2col(kz),dto2(kz,16), xscho2(kz,16) -! REAL dsdh(kz,kz) - REAL secchi - DOUBLE PRECISION a(16,12),b(16,12),rjm(kz),rjo2(kz) - integer iw, nz, i, j, lev - -! a(16,12) coefficients for Rj(M) (Table 1 in Kockarts 1994) -! b(16,12) Rj(O2)(Table 2 in Kockarts 1994) -! rjm attenuation coefficients Rj(M) -! rjo2 Rj(O2) - - data((a(i,j),j=1,12),i=1,16)/ & -!a 57000-56500.5 cm-1 - & 1.13402D-01,1.00088D-20,3.48747D-01,2.76282D-20,3.47322D-01 & - &,1.01267D-19 & - &,1.67351D-01,5.63588D-19,2.31433D-02,1.68267D-18,0.00000D+00 & - &,0.00000D+00 & -!a 56500-56000.5 cm-1 - &,2.55268D-03,1.64489D-21,1.85483D-01,2.03591D-21,2.60603D-01 & - &,4.62276D-21 & - &,2.50337D-01,1.45106D-20,1.92340D-01,7.57381D-20,1.06363D-01 & - &,7.89634D-19 & -!a 56000-55500.5 cm-1 - &,4.21594D-03,8.46639D-22,8.91886D-02,1.12935D-21,2.21334D-01 & - &,1.67868D-21 & - &,2.84446D-01,3.94782D-21,2.33442D-01,1.91554D-20,1.63433D-01 & - &,2.25346D-19 & -!a 55500-55000.5 cm-1 - &,3.93529D-03,6.79660D-22,4.46906D-02,9.00358D-22,1.33060D-01 & - &,1.55952D-21 & - &,3.25506D-01,3.43763D-21,2.79405D-01,1.62086D-20,2.10316D-01 & - &,1.53883D-19 & -!a 55000-54500.5 cm-1 - &,2.60939D-03,2.33791D-22,2.08101D-02,3.21734D-22,1.67186D-01 & - &,5.77191D-22 & - &,2.80694D-01,1.33362D-21,3.26867D-01,6.10533D-21,1.96539D-01 & - &,7.83142D-20 & -!a 54500-54000.5 cm-1 - &,9.33711D-03,1.32897D-22,3.63980D-02,1.78786D-22,1.46182D-01 & - &,3.38285D-22 & - &,3.81762D-01,8.93773D-22,2.58549D-01,4.28115D-21,1.64773D-01 & - &,4.67537D-20 & -!a 54000-53500.5 cm-1 - &,9.51799D-03,1.00252D-22,3.26320D-02,1.33766D-22,1.45962D-01 & - &,2.64831D-22 & - &,4.49823D-01,6.42879D-22,2.14207D-01,3.19594D-21,1.45616D-01 & - &,2.77182D-20 & -!a 53500-53000.5 cm-1 - &,7.87331D-03,3.38291D-23,6.91451D-02,4.77708D-23,1.29786D-01 & - &,8.30805D-23 & - &,3.05103D-01,2.36167D-22,3.35007D-01,8.59109D-22,1.49766D-01 & - &,9.63516D-21 & -!a 53000-52500.5 cm-1 - &,6.92175D-02,1.56323D-23,1.44403D-01,3.03795D-23,2.94489D-01 & - &,1.13219D-22 & - &,3.34773D-01,3.48121D-22,9.73632D-02,2.10693D-21,5.94308D-02 & - &,1.26195D-20 & -!a 52500-52000.5 cm-1 - &,1.47873D-01,8.62033D-24,3.15881D-01,3.51859D-23,4.08077D-01 & - &,1.90524D-22 & - &,8.08029D-02,9.93062D-22,3.90399D-02,6.38738D-21,8.13330D-03 & - &,9.93644D-22 & -!a 52000-51500.5 cm-1 - &,1.50269D-01,1.02621D-23,2.39823D-01,3.48120D-23,3.56408D-01 & - &,1.69494D-22 & - &,1.61277D-01,6.59294D-22,8.89713D-02,2.94571D-21,3.25063D-03 & - &,1.25548D-20 & -!a 51500-51000.5 cm-1 - &,2.55746D-01,8.49877D-24,2.94733D-01,2.06878D-23,2.86382D-01 & - &,9.30992D-23 & - &,1.21011D-01,3.66239D-22,4.21105D-02,1.75700D-21,0.00000D+00 & - &,0.00000D+00 & -!a 51000-50500.5 cm-1 - &,5.40111D-01,7.36085D-24,2.93263D-01,2.46742D-23,1.63417D-01 & - &,1.37832D-22 & - &,3.23781D-03,2.15052D-21,0.00000D+00,0.00000D+00,0.00000D+00 & - &,0.00000D+00 & -!a 50500-50000.5 cm-1 - &,8.18514D-01,7.17937D-24,1.82262D-01,4.17496D-23,0.00000D+00 & - &,0.00000D+00 & - &,0.00000D+00,0.00000D+00,0.00000D+00,0.00000D+00,0.00000D+00 & - &,0.00000D+00 & -!a 50000-49500.5 cm-1 - &,8.73680D-01,7.13444D-24,1.25583D-01,2.77819D-23,0.00000D+00 & - &,0.00000D+00 & - &,0.00000D+00,0.00000D+00,0.00000D+00,0.00000D+00,0.00000D+00 & - &,0.00000D+00 & -!a 49500-49000.5 cm-1 - &,3.32476D-04,7.00362D-24,9.89000D-01,6.99600D-24,0.00000D+00 & - &,0.00000D+00 & - &,0.00000D+00,0.00000D+00,0.00000D+00,0.00000D+00,0.00000D+00 & - &,0.00000D+00/ - - - data((b(i,j),j=1,12),i=1,16)/ & -! 57000-56500.5 cm-1 - & 1.07382D-21,9.95029D-21,7.19430D-21,2.48960D-20,2.53735D-20 & - &,7.54467D-20 & - &,4.48987D-20,2.79981D-19,9.72535D-20,9.29745D-19,2.30892D-20 & - &,4.08009D-17 & -! 56500-56000.5 cm-1 - &,3.16903D-22,1.98251D-21,5.87326D-22,3.44057D-21,2.53094D-21 & - &,8.81484D-21 & - &,8.82299D-21,4.17179D-20,2.64703D-20,2.43792D-19,8.73831D-20 & - &,1.46371D-18 & -! 56000-55500.5 cm-1 - &,1.64421D-23,9.26011D-22,2.73137D-22,1.33640D-21,9.79188D-22 & - &,2.99706D-21 & - &,3.37768D-21,1.39438D-20,1.47898D-20,1.04322D-19,4.08014D-20 & - &,6.31023D-19 & -! 55500-55000.5 cm-1 - &,8.68729D-24,7.31056D-22,8.78313D-23,1.07173D-21,8.28170D-22 & - &,2.54986D-21 & - &,2.57643D-21,9.42698D-21,9.92377D-21,5.21402D-20,3.34301D-20 & - &,2.91785D-19 & -! 55000-54500.5 cm-1 - &,1.20679D-24,2.44092D-22,2.64326D-23,4.03998D-22,2.53514D-22 & - &,8.53166D-22 & - &,1.29834D-21,3.74482D-21,5.12103D-21,2.65798D-20,2.10948D-20 & - &,2.35315D-19 & -! 54500-54000.5 cm-1 - &,2.79656D-24,1.40820D-22,3.60824D-23,2.69510D-22,4.02850D-22 & - &,8.83735D-22 & - &,1.77198D-21,6.60221D-21,9.60992D-21,8.13558D-20,4.95591D-21 & - &,1.22858D-17 & -! 54000-53500.5 cm-1 - &,2.36959D-24,1.07535D-22,2.83333D-23,2.16789D-22,3.35242D-22 & - &,6.42753D-22 & - &,1.26395D-21,5.43183D-21,4.88083D-21,5.42670D-20,3.27481D-21 & - &,1.58264D-17 & -! 53500-53000.5 cm-1 - &,8.65018D-25,3.70310D-23,1.04351D-23,6.43574D-23,1.17431D-22 & - &,2.70904D-22 & - &,4.88705D-22,1.65505D-21,2.19776D-21,2.71172D-20,2.65257D-21 & - &,2.13945D-17 & -! 53000-52500.5 cm-1 - &,9.63263D-25,1.54249D-23,4.78065D-24,2.97642D-23,6.40637D-23 & - &,1.46464D-22 & - &,1.82634D-22,7.12786D-22,1.64805D-21,2.37376D-17,9.33059D-22 & - &,1.13741D-20 & -! 52500-52000.5 cm-1 - &,1.08414D-24,8.37560D-24,9.15550D-24,2.99295D-23,9.38405D-23 & - &,1.95845D-22 & - &,2.84356D-22,3.39699D-21,1.94524D-22,2.72227D-19,1.18924D-21 & - &,3.20246D-17 & -! 52000-51500.5 cm-1 - &,1.52817D-24,1.01885D-23,1.22946D-23,4.16517D-23,9.01287D-23 & - &,2.34869D-22 & - &,1.93510D-22,1.44956D-21,1.81051D-22,5.17773D-21,9.82059D-22 & - &,6.22768D-17 & -! 51500-51000.5 cm-1 - &,2.12813D-24,8.48035D-24,5.23338D-24,1.93052D-23,1.99464D-23 & - &,7.48997D-23 & - &,4.96642D-22,6.15691D-17,4.47504D-23,2.76004D-22,8.26788D-23 & - &,1.65278D-21 & -! 51000-50500.5 cm-1 - &,3.81336D-24,7.32307D-24,5.60549D-24,2.04651D-23,3.36883D-22 & - &,6.15708D-17 & - &,2.09877D-23,1.07474D-22,9.13562D-24,8.41252D-22,0.00000D+00 & - &,0.00000D+00 & -! 50500-50000.5 cm-1 - &,5.75373D-24,7.15986D-24,5.90031D-24,3.05375D-23,2.97196D-22 & - &,8.92000D-17 & - &,8.55920D-24,1.66709D-17,0.00000D+00,0.00000D+00,0.00000D+00 & - &,0.00000D+00 & -! 50000-49500.5 cm-1 - &,6.21281D-24,7.13108D-24,3.30780D-24,2.61196D-23,1.30783D-22 & - &,9.42550D-17 & - &,2.69241D-24,1.46500D-17,0.00000D+00,0.00000D+00,0.00000D+00 & - &,0.00000D+00 & -! 49500-49000.5 cm-1 - &,6.81118D-24,6.98767D-24,7.55667D-25,2.75124D-23,1.94044D-22 & - &,1.45019D-16 & - &,1.92236D-24,3.73223D-17,0.00000D+00,0.00000D+00,0.00000D+00 & - &,0.00000D+00/ - -! initialize R(M) - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SCHU',0,ZHOOK_HANDLE) - do lev = 1, nz - rjm(lev) = 0.D+00 - rjo2(lev) = 0.D+00 - end do - -! calculate sum of exponentials (eqs 7 and 8 of Kockarts 1994) - do j=1,11,2 - do lev = 1, nz-1 - rjm(lev) = rjm(lev) + a(iw,j)*dexp(-a(iw,j+1)* & - & DBLE(o2col(lev))) - rjo2(lev) = rjo2(lev) + b(iw,j)*dexp(-b(iw,j+1)* & - & DBLE(o2col(lev))) - end do -! do the last level seperate, as it is implied that o2col(nz) = 0. - lev = nz - rjm(lev) = rjm(lev) + a(iw,j) - rjo2(lev) = rjo2(lev) + b(iw,j) - end do - - do lev = 1, nz-1 - IF (rjm(lev) .GT. 1.D-100) THEN - xscho2(lev,iw) = rjo2(lev)/rjm(lev) - IF (rjm(lev+1) .GT. 0.) THEN - dto2(lev,iw) = (LOG(rjm(lev+1))-LOG(rjm(lev))) / secchi - ELSE - dto2(lev,iw) = 100. - ENDIF - ELSE - xscho2(lev,iw) = 0. - dto2(lev,iw) = 100. - ENDIF - end do - - dto2(nz,iw) = 0. - xscho2(nz,iw) = rjo2(nz)/rjm(nz) - - IF (LHOOK) CALL DR_HOOK('SCHU',1,ZHOOK_HANDLE) - ENDSUBROUTINE SCHU diff --git a/src/arome/chem/internals/sedim_dust.F90 b/src/arome/chem/internals/sedim_dust.F90 deleted file mode 100644 index 25b0c54ecd9b7dae5a8f44c56f550505ece8d8cb..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sedim_dust.F90 +++ /dev/null @@ -1,268 +0,0 @@ -! ######spl - SUBROUTINE SEDIM_DUST(PTHT,PDTMONITOR,& - PRHODREF,PPABST,PZZ,PSVT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! M. Mokhtari & A. Ambar 09/2016: return to the old version compatible with -!! arome and aladin version -!! -! Entry variables: -! -! PSVTS(INOUT) -Array of moments included in PSVTS -! -!************************************************************* -! Exit variables: -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! ZVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!! IMPLICIT ARGUMENTS -! -USE MODD_DUST -USE MODD_CSTS_DUST -USE MODI_DUST_VELGRAV -USE MODE_DUST_PSD -! -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, INTENT(IN) :: PDTMONITOR -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !scalar variable -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT,PRHODREF, PZZ -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST -! -!* 0.2 declarations of local variables -! -INTEGER :: JK, JN, JT -INTEGER :: IMODEIDX -INTEGER :: ISPLITA -REAL :: ZTSPLITR -REAL, DIMENSION(NMODE_DST*3) :: ZPMIN -REAL, DIMENSION(NMODE_DST) :: ZINIRADIUS -REAL :: ZRGMIN, ZSIGMIN -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),NMODE_DST) :: ZRG, ZSIG -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),3*NMODE_DST) :: ZPM, ZPMOLD -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)+1,3*NMODE_DST) :: ZFLUXSED, ZFLUXMAX -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZH,ZMU, ZW, ZVSNUMMAX -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),3*NMODE_DST) :: ZVGK, ZDPK -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),NMODE_DST) :: ZVG -REAL :: ZVSMAX, ZHMIN, ZRHOI, ZFAC -INTEGER :: ILU ! indice K End in z direction -INTEGER,DIMENSION(NMODE_DST) :: NM0, NM3, NM6 -REAL :: ZDEN2MOL, ZAVOGADRO, ZMD, ZMI -LOGICAL, SAVE :: LSEDFIX = .TRUE. -! -!* 0.3 initialize constant -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('SEDIM_DUST',0,ZHOOK_HANDLE) -ZRHOI = XDENSITY_DUST - -ZMU(:,:,:) = 0. -ZH(:,:,:) = 0. -ZVGK(:,:,:,:) = 0. -ZVG(:,:,:,:) = 0. -ZDPK(:,:,:,:) = 0. -ZW(:,:,:) = 0. -ZFLUXSED(:,:,:,:) = 0. -ILU = SIZE(PSVT,3) -ZFAC = (4./3.)*XPI*ZRHOI*1.e-9 -ZAVOGADRO = 6.0221367E+23 -ZMD = 28.9644E-3 -ZDEN2MOL = 1E-6 * ZAVOGADRO / ZMD -ZMI = XMOLARWEIGHT_DUST ! molecular mass in kg/mol -! -!* 1. compute dimensions of arrays -! -DO JN=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JN) - !Calculations here are for one mode only - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) - END IF - - !Set counter for number, M3 and M6 - NM0(JN) = 1+(JN-1)*3 - NM3(JN) = 2+(JN-1)*3 - NM6(JN) = 3+(JN-1)*3 - !Get minimum values possible - ZPMIN(NM0(JN)) = XN0MIN(IMODEIDX) - ZRGMIN = ZINIRADIUS(JN) - IF (LVARSIG) THEN - ZSIGMIN = XSIGMIN - ELSE - ZSIGMIN = XINISIG(IMODEIDX) - ENDIF - ZPMIN(NM3(JN)) = XN0MIN(IMODEIDX) * (ZRGMIN**3)*EXP(4.5 * LOG(ZSIGMIN)**2) - ZPMIN(NM6(JN)) = XN0MIN(IMODEIDX) * (ZRGMIN**6)*EXP(18. * LOG(ZSIGMIN)**2) -END DO -! -!* 2. compute SIG, RG and moments -! -CALL PPP2DUST(PSVT, PRHODREF, PSIG3D=ZSIG, PRG3D=ZRG, PM3D=ZPM) - -ZPMOLD(:,:,:,:)=ZPM(:,:,:,:) -! -!* 3. compute gravitational velocities -! -CALL DUST_VELGRAV(ZSIG(:,:,1:ILU,:), ZRG(:,:,1:ILU,:), & - PTHT(:,:,1:ILU), PPABST(:,:,1:ILU),& - PRHODREF(:,:,1:ILU), ZRHOI, & - ZMU(:,:,1:ILU), ZVGK(:,:,1:ILU,:), & - ZDPK(:,:,1:ILU,:),ZVG(:,:,1:ILU,:)) -! -!* 4. Compute time-splitting condition -! -ZH=9999. -ZVSNUMMAX(:,:,:) = 0. - -DO JK=1,ILU - ZH(:,:,JK)=PZZ(:,:,JK+1)-PZZ(:,:,JK) - ! Maximum velocity - ZVSNUMMAX(:,:,JK) = MIN(10. *ZH(:,:,JK) / PDTMONITOR,20.) -ENDDO -! -ZHMIN=MINVAL(ZH(:,:,1:ILU)) - -ZFLUXSED(:,:,:,:) = 0. -ZFLUXMAX(:,:,:,:) = 0. - -!Get loss rate [1/s] instead of [m/s] -DO JN=1,NMODE_DST*3 - !ZVGK(:,:,:,JN)=ZVGK(:,:,:,JN)/ZH(:,:,:) - ZVGK(:,:,1:ILU,JN) = MIN(ZVGK(:,:,1:ILU,JN), ZVSNUMMAX(:,:,1:ILU)) - ZVSMAX=MAXVAL(ZVGK(:,:,1:ILU,JN)) - ZVSMAX=MAX(ZVSMAX,5.) - ! - ISPLITA = INT(ZVSMAX*PDTMONITOR/ZHMIN)+1 - ISPLITA = MIN(20, ISPLITA) - ! - ZTSPLITR = PDTMONITOR / FLOAT(ISPLITA) - ! - ZFLUXSED(:,:,ILU+1,JN) = 0. - - DO JT=1,ISPLITA - ZFLUXSED(:,:,1:ILU,JN)= ZVGK(:,:,1:ILU,JN)* ZPM(:,:,1:ILU,JN) - DO JK=1,ILU - ZW(:,:,JK) = ZTSPLITR /(PZZ(:,:,JK+1)-PZZ(:,:,JK)) - END DO - ! - ! -! - DO JK=1,ILU - ZPM(:,:,JK,JN)= ZPM(:,:,JK,JN) + & - ZW(:,:,JK)*(ZFLUXSED(:,:,JK+1,JN)- ZFLUXSED(:,:,JK,JN)) - - END DO - ENDDO - -ENDDO -! -DO JN=1,NMODE_DST -!! Calcul pour maintenir le rayon fixe pour la sedimentation : - IF (LRGFIX_DST) THEN - ZPM(:,:,:,NM3(JN)) = ZPM(:,:,:,NM0(JN)) *& - (ZRG(:,:,:,JN)**3)*EXP(4.5 * LOG(ZSIG(:,:,:,JN))**2) - ENDIF -! Calcul pour maintenir la dispersion fixe pour la sedimentation : -! sinon Rg augmente lors de la reconstruction d'une loi log-normale -! a partir des nouveau Mk (sigma diminue plus vite que Rg) -! calcul de M6 en conservant sigma - ZPM(:,:,:, NM6(JN)) = ZPM(:,:,:,NM0(JN)) & - * ( (ZPM(:,:,:,NM3(JN))/ZPM(:,:,:,NM0(JN)))**(1./3.) & - * exp(-(3./2.)*LOG(ZSIG(:,:,:,JN))**2))**6 & - * exp(18.*LOG(ZSIG(:,:,:,JN))**2) - - IF ((LSEDFIX).AND.(LVARSIG)) THEN - ! calcul de M6 en conservant Rg - - ZPM(:,:,:,NM6(JN)) = ZPM(:,:,:,NM3(JN)) ** 4 / & - (ZRG(:,:,:,JN)**6 * ZPM(:,:,:,NM0(JN))**3) - - END IF -ENDDO -! -IF (LSEDFIX) THEN - LSEDFIX = .FALSE. -ELSE - LSEDFIX = .TRUE. -END IF -! -!* 5. Return to concentration in ppp (#/molec_{air}) -! -DO JN=1,NMODE_DST -IF (LVARSIG) THEN -WHERE ((ZPM(:,:,:,NM0(JN)) .GT. 100.*ZPMIN(NM0(JN))).AND.& - (ZPM(:,:,:,NM3(JN)) .GT. 100.*ZPMIN(NM3(JN))).AND.& - (ZPM(:,:,:,NM6(JN)) .GT. 100.*ZPMIN(NM6(JN)))) - PSVT(:,:,:,1+(JN-1)*3) = ZPM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*3) = ZPM(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - PSVT(:,:,:,3+(JN-1)*3) = ZPM(:,:,:,NM6(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)*1.d-6) -ELSEWHERE - PSVT(:,:,:,1+(JN-1)*3) = ZPMOLD(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*3) = ZPMOLD(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - PSVT(:,:,:,3+(JN-1)*3) = ZPMOLD(:,:,:,NM6(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)*1.d-6) -ENDWHERE -ELSE IF (LRGFIX_DST) THEN - -WHERE ((ZPM(:,:,:,NM3(JN)) .GT. 100*ZPMIN(NM3(JN)))) - PSVT(:,:,:,JN) = ZPM(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) -ELSEWHERE - PSVT(:,:,:,JN) = ZPMOLD(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) -ENDWHERE - -ELSE - - -WHERE ((ZPM(:,:,:,NM0(JN)) .GT. 100*ZPMIN(NM0(JN))).AND.& - (ZPM(:,:,:,NM3(JN)) .GT. 100*ZPMIN(NM3(JN)))) - PSVT(:,:,:,1+(JN-1)*2) = ZPM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*2) = ZPM(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) -ELSEWHERE - PSVT(:,:,:,1+(JN-1)*2) = ZPMOLD(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*2) = ZPMOLD(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) -ENDWHERE - -END IF -ENDDO - -CALL PPP2DUST(PSVT, PRHODREF, PSIG3D=ZSIG, PRG3D=ZRG, PM3D=ZPM) - -! -IF (LHOOK) CALL DR_HOOK('SEDIM_DUST',1,ZHOOK_HANDLE) -END SUBROUTINE SEDIM_DUST diff --git a/src/arome/chem/internals/sedim_salt.F90 b/src/arome/chem/internals/sedim_salt.F90 deleted file mode 100644 index 969ba102235aa3bfd5875d89fe263cf71da2b310..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sedim_salt.F90 +++ /dev/null @@ -1,265 +0,0 @@ -! ######spl - SUBROUTINE SEDIM_SALT(PTHT,PDTMONITOR,& - PRHODREF,PPABST,PZZ,PSVT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ####################################### -!! -!! PURPOSE -!! ------- -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! Original -!! -! Entry variables: -! -! PSVTS(INOUT) -Array of moments included in PSVTS -! -!************************************************************* -! Exit variables: -! -!************************************************************* -! Variables used during the deposition velocity calculation -! -! ZVGK -Polydisperse settling velocity of the kth moment (m/s) -!************************************************************ -!! -!! IMPLICIT ARGUMENTS -! -USE MODD_SALT -USE MODD_CSTS_SALT -USE MODI_SALT_VELGRAV -USE MODE_SALT_PSD -! -! -IMPLICIT NONE -! -!* 0.1 declarations of arguments -! -REAL, INTENT(IN) :: PDTMONITOR -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !scalar variable -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT,PRHODREF, PZZ -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST -! -!* 0.2 declarations of local variables -! -INTEGER :: JK, JN, JT -INTEGER :: IMODEIDX -INTEGER :: ISPLITA -REAL :: ZTSPLITR -REAL, DIMENSION(NMODE_SLT*3) :: ZPMIN -REAL, DIMENSION(NMODE_SLT) :: ZINIRADIUS -REAL :: ZRGMIN, ZSIGMIN -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),NMODE_SLT) :: ZRG, ZSIG -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),3*NMODE_SLT) :: ZPM, ZPMOLD -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)+1,3*NMODE_SLT) :: ZFLUXSED, ZFLUXMAX -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3)) :: ZH,ZMU, ZW, ZVSNUMMAX -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),3*NMODE_SLT) :: ZVGK, ZDPK -REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),NMODE_SLT) :: ZVG -REAL :: ZVSMAX, ZHMIN, ZRHOI, ZFAC -INTEGER :: ILU ! indice K End in z direction -INTEGER,DIMENSION(NMODE_SLT) :: NM0, NM3, NM6 -REAL :: ZDEN2MOL, ZAVOGADRO, ZMD, ZMI -LOGICAL, SAVE :: LSEDFIX = .TRUE. -! -!* 0.3 initialize constant -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('SEDIM_SALT',0,ZHOOK_HANDLE) -ZRHOI = XDENSITY_SALT - -ZMU(:,:,:) = 0. -ZH(:,:,:) = 0. -ZVGK(:,:,:,:) = 0. -ZVG(:,:,:,:) = 0. -ZDPK(:,:,:,:) = 0. -ZW(:,:,:) = 0. -ZFLUXSED(:,:,:,:) = 0. -ILU = SIZE(PSVT,3) -ZFAC = (4./3.)*XPI*ZRHOI*1.e-9 -ZAVOGADRO = 6.0221367E+23 -ZMD = 28.9644E-3 -ZDEN2MOL = 1E-6 * ZAVOGADRO / ZMD -ZMI = XMOLARWEIGHT_SALT ! molecular mass in kg/mol -! -!* 1. compute dimensions of arrays -! -DO JN=1,NMODE_SLT - IMODEIDX = JPSALTORDER(JN) - !Calculations here are for one mode only - IF (CRGUNITS=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) * EXP(-3.*(LOG(XINISIG_SLT(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) - END IF - - !Set counter for number, M3 and M6 - NM0(JN) = 1+(JN-1)*3 - NM3(JN) = 2+(JN-1)*3 - NM6(JN) = 3+(JN-1)*3 - !Get minimum values possible - ZPMIN(NM0(JN)) = XN0MIN_SLT(IMODEIDX) - ZRGMIN = ZINIRADIUS(JN) - IF (LVARSIG_SLT) THEN - ZSIGMIN = XSIGMIN_SLT - ELSE - ZSIGMIN = XINISIG_SLT(IMODEIDX) - ENDIF - ZPMIN(NM3(JN)) = XN0MIN_SLT(IMODEIDX) * (ZRGMIN**3)*EXP(4.5 * LOG(ZSIGMIN)**2) - ZPMIN(NM6(JN)) = XN0MIN_SLT(IMODEIDX) * (ZRGMIN**6)*EXP(18. * LOG(ZSIGMIN)**2) -END DO -! -!* 2. compute SIG, RG and moments -! -CALL PPP2SALT(PSVT, PRHODREF, PSIG3D=ZSIG, PRG3D=ZRG, PM3D=ZPM) - -ZPMOLD(:,:,:,:)=ZPM(:,:,:,:) -! -!* 3. compute gravitational velocities -! -CALL SALT_VELGRAV(ZSIG(:,:,1:ILU,:), ZRG(:,:,1:ILU,:), & - PTHT(:,:,1:ILU), PPABST(:,:,1:ILU),& - PRHODREF(:,:,1:ILU), ZRHOI, & - ZMU(:,:,1:ILU), ZVGK(:,:,1:ILU,:), & - ZDPK(:,:,1:ILU,:),ZVG(:,:,1:ILU,:)) -! -!* 4. Compute time-splitting condition -! -ZH=9999. -ZVSNUMMAX(:,:,:) = 0. - -DO JK=1,ILU - ZH(:,:,JK)=PZZ(:,:,JK+1)-PZZ(:,:,JK) - ! Maximum velocity - ZVSNUMMAX(:,:,JK) = MIN(10. *ZH(:,:,JK) / PDTMONITOR,20.) -ENDDO -! -ZHMIN=MINVAL(ZH(:,:,1:ILU)) - -ZFLUXSED(:,:,:,:) = 0. -ZFLUXMAX(:,:,:,:) = 0. - -!Get loss rate [1/s] instead of [m/s] -DO JN=1,NMODE_SLT*3 - !ZVGK(:,:,:,JN)=ZVGK(:,:,:,JN)/ZH(:,:,:) - ZVGK(:,:,1:ILU,JN) = MIN(ZVGK(:,:,1:ILU,JN), ZVSNUMMAX(:,:,1:ILU)) - ZVSMAX=MAXVAL(ZVGK(:,:,1:ILU,JN)) - ZVSMAX=MAX(ZVSMAX,5.) - ! - ISPLITA = INT(ZVSMAX*PDTMONITOR/ZHMIN)+1 - ISPLITA = MIN(20, ISPLITA) - ! - ZTSPLITR = PDTMONITOR / FLOAT(ISPLITA) - ! - ZFLUXSED(:,:,ILU+1,JN) = 0. - - DO JT=1,ISPLITA - ZFLUXSED(:,:,1:ILU,JN)= ZVGK(:,:,1:ILU,JN)* ZPM(:,:,1:ILU,JN) - DO JK=1,ILU - ZW(:,:,JK) = ZTSPLITR /(PZZ(:,:,JK+1)-PZZ(:,:,JK)) - END DO - ! - ! -! - DO JK=1,ILU - ZPM(:,:,JK,JN)= ZPM(:,:,JK,JN) + & - ZW(:,:,JK)*(ZFLUXSED(:,:,JK+1,JN)- ZFLUXSED(:,:,JK,JN)) - - END DO - ENDDO - -ENDDO -! -DO JN=1,NMODE_SLT -!! Calcul pour maintenir le rayon fixe pour la sedimentation : - IF (LRGFIX_SLT) THEN - ZPM(:,:,:,NM3(JN)) = ZPM(:,:,:,NM0(JN)) *& - (ZRG(:,:,:,JN)**3)*EXP(4.5 * LOG(ZSIG(:,:,:,JN))**2) - ENDIF -! Calcul pour maintenir la dispersion fixe pour la sedimentation : -! sinon Rg augmente lors de la reconstruction d'une loi log-normale -! a partir des nouveau Mk (sigma diminue plus vite que Rg) -! calcul de M6 en conservant sigma - ZPM(:,:,:, NM6(JN)) = ZPM(:,:,:,NM0(JN)) & - * ( (ZPM(:,:,:,NM3(JN))/ZPM(:,:,:,NM0(JN)))**(1./3.) & - * exp(-(3./2.)*LOG(ZSIG(:,:,:,JN))**2))**6 & - * exp(18.*LOG(ZSIG(:,:,:,JN))**2) - - IF ((LSEDFIX).AND.(LVARSIG_SLT)) THEN - ! calcul de M6 en conservant Rg - - ZPM(:,:,:,NM6(JN)) = ZPM(:,:,:,NM3(JN)) ** 4 / & - (ZRG(:,:,:,JN)**6 * ZPM(:,:,:,NM0(JN))**3) - - END IF -ENDDO -! -IF (LSEDFIX) THEN - LSEDFIX = .FALSE. -ELSE - LSEDFIX = .TRUE. -END IF -! -!* 5. Return to concentration in ppp (#/molec_{air}) -! -DO JN=1,NMODE_SLT -IF (LVARSIG_SLT) THEN -WHERE ((ZPM(:,:,:,NM0(JN)) .GT. 100.*ZPMIN(NM0(JN))).AND.& - (ZPM(:,:,:,NM3(JN)) .GT. 100.*ZPMIN(NM3(JN))).AND.& - (ZPM(:,:,:,NM6(JN)) .GT. 100.*ZPMIN(NM6(JN)))) - PSVT(:,:,:,1+(JN-1)*3) = ZPM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*3) = ZPM(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) - PSVT(:,:,:,3+(JN-1)*3) = ZPM(:,:,:,NM6(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)*1.d-6) -ELSEWHERE - PSVT(:,:,:,1+(JN-1)*3) = ZPMOLD(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*3) = ZPMOLD(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) - PSVT(:,:,:,3+(JN-1)*3) = ZPMOLD(:,:,:,NM6(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)*1.d-6) -ENDWHERE -ELSE IF (LRGFIX_SLT) THEN -WHERE ((ZPM(:,:,:,NM3(JN)) .GT. 100*ZPMIN(NM3(JN)))) - PSVT(:,:,:,JN) = ZPM(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) -ELSEWHERE - PSVT(:,:,:,JN) = ZPMOLD(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) -ENDWHERE - -ELSE - - -WHERE ((ZPM(:,:,:,NM0(JN)) .GT. 100*ZPMIN(NM0(JN))).AND.& - (ZPM(:,:,:,NM3(JN)) .GT. 100*ZPMIN(NM3(JN)))) - PSVT(:,:,:,1+(JN-1)*2) = ZPM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*2) = ZPM(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) -ELSEWHERE - PSVT(:,:,:,1+(JN-1)*2) = ZPMOLD(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - PSVT(:,:,:,2+(JN-1)*2) = ZPMOLD(:,:,:,NM3(JN)) * XMD*XPI * 4./3.*ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) -ENDWHERE - -END IF -ENDDO - -CALL PPP2SALT(PSVT, PRHODREF, PSIG3D=ZSIG, PRG3D=ZRG, PM3D=ZPM) - -! -IF (LHOOK) CALL DR_HOOK('SEDIM_SALT',1,ZHOOK_HANDLE) -END SUBROUTINE SEDIM_SALT diff --git a/src/arome/chem/internals/setaer.F b/src/arome/chem/internals/setaer.F deleted file mode 100644 index 7f7dc00e4acbbffbf63945100677e7f5737bf17d..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/setaer.F +++ /dev/null @@ -1,188 +0,0 @@ -! ######spl - SUBROUTINE setaer(nz,z,nw,wl,dtaer,omaer,gaer) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=51) - -! input: (grids) - REAL wl(kw) - REAL z(kz) - INTEGER nz - INTEGER nw - -! output: (on converted grid) - REAL dtaer(kz,kw), omaer(kz,kw), gaer(kz,kw) - -! local: - REAL zd(kdata), aer(kdata) - REAL cd(kdata), omd(kdata), gd(kdata) - REAL womd(kdata), wgd(kdata) - - REAL cz(kz) - REAL omz(kz) - REAL gz(kz) - - REAL wc, wscale - INTEGER i, iw, nd - - LOGICAL aerosl - - REAL fsum - EXTERNAL fsum - -!_______________________________________________________________________ - -! Aerosol data from Elterman (1968) -! These are verical optical depths per km, in 1 km -! intervals from 0 km to 50 km, at 340 nm. -! This is one option. User can specify different data set. - - DATA aer/ & - & 2.40E-01,1.06E-01,4.56E-02,1.91E-02,1.01E-02,7.63E-03, & - & 5.38E-03,5.00E-03,5.15E-03,4.94E-03,4.82E-03,4.51E-03, & - & 4.74E-03,4.37E-03,4.28E-03,4.03E-03,3.83E-03,3.78E-03, & - & 3.88E-03,3.08E-03,2.26E-03,1.64E-03,1.23E-03,9.45E-04, & - & 7.49E-04,6.30E-04,5.50E-04,4.21E-04,3.22E-04,2.48E-04, & - & 1.90E-04,1.45E-04,1.11E-04,8.51E-05,6.52E-05,5.00E-05, & - & 3.83E-05,2.93E-05,2.25E-05,1.72E-05,1.32E-05,1.01E-05, & - & 7.72E-06,5.91E-06,4.53E-06,3.46E-06,2.66E-06,2.04E-06, & - & 1.56E-06,1.19E-06,9.14E-07/ -!_______________________________________________________________________ - -! initialize - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETAER',0,ZHOOK_HANDLE) - DO 15, iw = 1, nw - 1 - DO 10, i = 1, nz - 1 - dtaer(i,iw) = 0. - omaer(i,iw) = 1. - gaer(i,iw) = 0. - 10 CONTINUE - 15 CONTINUE - -! if dont want any aerosols, set AEROSL = .FALSE. - -! aerosl = .FALSE. - aerosl = .TRUE. - IF (.NOT. aerosl) THEN - WRITE(kout,*) 'no aerosols' - IF (LHOOK) CALL DR_HOOK('SETAER',1,ZHOOK_HANDLE) - RETURN - ENDIF - -! Altitudes corresponding to Elterman profile, from bottom to top: - - WRITE(kout,*)'aerosols: Elterman (1968)' - nd = 51 - DO 22, i = 1, nd - zd(i) = FLOAT(i-1) - 22 CONTINUE - -! assume these are point values (at each level), so find column -! increments - - DO 27, i = 1, nd - 1 - cd(i) = (aer(i+1) + aer(i)) / 2. - omd(i) = .99 - gd(i) = .61 - 27 CONTINUE - -!********** end data input. - -! Compute integrals and averages over grid layers: -! for g and omega, use averages weigthed by optical depth - - DO 29, i = 1, nd-1 - womd(i) = omd(i) * cd(i) - wgd(i) = gd(i) * cd(i) - 29 CONTINUE - CALL inter3(nz,z,cz, nd,zd,cd, 1) - CALL inter3(nz,z,omz, nd, zd,womd, 1) - CALL inter3(nz,z,gz , nd, zd,wgd, 1) - DO 30, i = 1, nz-1 - IF (cz(i) .GT. 0.) THEN - omz(i) = omz(i)/cz(i) - gz(i) = gz(i) /cz(i) - ELSE - omz(i) = 1. - gz(i) = 0. - ENDIF - 30 CONTINUE - - WRITE(kout,*) ' Total aerosol od at 340 nm = ', fsum(nz-1,cz) - -! assign at all wavelengths -! (can move wavelength loop outside if want to vary with wavelength) - - DO 50, iw = 1, nw - 1 - wc = (wl(iw)+wl(iw+1))/2. - -! Elterman's data are for 340 nm, so assume optical depth scales -! inversely with first power of wavelength. - - wscale = 340./wc - -! optical depths: - - DO 40, i = 1, nz - 1 - dtaer(i,iw) = cz(i) * wscale - omaer(i,iw) = omz(i) - gaer(i,iw) = gz(i) - 40 CONTINUE - - 50 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETAER',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETAER diff --git a/src/arome/chem/internals/setair.F b/src/arome/chem/internals/setair.F deleted file mode 100644 index 834e416651268c4d1385d3ce25f8a8355d240a09..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/setair.F +++ /dev/null @@ -1,208 +0,0 @@ -! ######spl - SUBROUTINE setair(pmbnew, & - & nz,z,nw,wl, & - & airlev,dtrl,cz) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=150) - -! input: (grids) - REAL wl(kw) - REAL z(kz) - INTEGER nw - INTEGER nz - REAL pmbnew - -! output: -! air density (molec cm-3) at each grid level -! Rayleigh optical depths - - REAL airlev(kz) - REAL dtrl(kz,kw) - -! local: - REAL scale - real airnew(kdata) - REAL colold, colnew, pmbold - REAL pconv - PARAMETER(pconv = 980.665 * 1.E-3 * 28.9644 / 6.022169E23) -! specified data: - REAL zd(kdata), air(kdata) - REAL hscale - REAL cd(kdata) - -! other: - REAL cz(kz) - REAL srayl(kw) - REAL deltaz - REAL colz, pressz - REAL wc, wmicrn, xx - INTEGER i, iw, nd - - -! External functions: - REAL fsum - EXTERNAL fsum - -!_______________________________________________________________________ - -! read in air density profile - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETAIR',0,ZHOOK_HANDLE) - WRITE(kout,*) 'air density: USSA, 1976' - - OPEN(kin,FILE='DATAE1/ATM/ussa.dens',STATUS='old') - DO i = 1, 3 - READ(kin,*) - ENDDO - nd = 1 - 4 CONTINUE - READ(kin,*,END=5) zd(nd), air(nd) - nd = nd+1 - GOTO 4 - 5 CONTINUE - CLOSE(kin) - nd = nd-1 - -! compute column increments (logarithmic integrals) - - DO 6, i = 1, nd - 1 - deltaz = 1.E5 * (zd(i+1)-zd(i)) - cd(i) = (air(i+1)-air(i)) /LOG(air(i+1)/air(i)) * deltaz -! cd(i) = (air(i+1)+air(i)) * deltaz / 2. - 6 CONTINUE - -! Include exponential tail integral from infinity to 50 km, -! fold tail integral into top layer -! specify scale height near top of data. - - hscale = 8.05e5 - cd(nd-1) = cd(nd-1) + hscale * air(nd) - -! alternative input air density data could include, e.g., a read file here: - -! If want, can rescale to any total pressure: - - colold = fsum(nd-1,cd) - pmbold = colold * pconv - WRITE(kout,100) colold, pmbold - 100 FORMAT(5x,'old sea level air column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2,' mbar') - -! assign new sea level pressure - - if (pmbnew .lt. 0.) then - scale = 1. - else - scale = pmbnew/pmbold - endif - - DO i = 1, nd-1 - cd(i) = cd(i) * scale - airnew(i) = air(i) * scale - ENDDO - airnew(nd) = air(nd) * scale - - colnew = fsum(nd-1,cd) - WRITE(kout,105) colnew, colnew * pconv - 105 FORMAT(5x,'new sea level air column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2,' mbar') - -!********************* end data input. - -! Compute air density at each level - - CALL ch_inter1(nz,z,airlev,nd,zd,airnew) - -! Compute column increments on standard z-grid. - - CALL inter3(nz,z,cz, nd,zd,cd, 1) - - colz = fsum(nz-1,cz) - pressz = colz * pconv - write(kout,110) colz, pressz - 110 FORMAT(5x,'surface air column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2,' mbar') - - -! compute Rayleigh cross sections and depths: - - DO 30, iw = 1, nw - 1 - wc = (wl(iw) + wl(iw+1))/2. - -! Rayleigh scattering cross section -! from WMO 1985 (originally from Nicolet) - - wmicrn = wc/1.E3 - IF( wmicrn .LE. 0.55) THEN - xx = 3.677 + 0.389*wmicrn + 0.09426/wmicrn - ELSE - xx = 4. + 0.04 - ENDIF - srayl(iw) = 4.02e-28/(wmicrn)**xx - -! alternate (older) expression from -! Frohlich and Shaw, Appl.Opt. v.11, p.1773 (1980). -! xx = 3.916 + 0.074*wmicrn + 0.050/wmicrn -! srayl(iw) = 3.90e-28/(wmicrn)**xx - - DO 40, i = 1, nz - 1 - dtrl(i,iw) = cz(i)*srayl(iw) - 40 CONTINUE - - 30 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETAIR',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETAIR diff --git a/src/arome/chem/internals/setalb.F b/src/arome/chem/internals/setalb.F deleted file mode 100644 index e587e251ec4cf3ff983a00a6552a6e772be18a85..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/setalb.F +++ /dev/null @@ -1,80 +0,0 @@ -! ######spl - SUBROUTINE setalb(nw,wl,albedo) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! input: (wavelength working grid data) - INTEGER nw - REAL wl(kw) - -! output: - REAL albedo(kw) - -! local: - INTEGER iw - REAL alb -!_______________________________________________________________________ - -! set - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETALB',0,ZHOOK_HANDLE) - alb = 0.10 - WRITE(kout,*)'wavelength-independent albedo = ', alb - DO 10, iw = 1, nw - 1 - - albedo(iw) = alb - - 10 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETALB',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETALB diff --git a/src/arome/chem/internals/setcld.F b/src/arome/chem/internals/setcld.F deleted file mode 100644 index 8a7a5f8365d308cc8f90cc4dd68102021f90361f..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/setcld.F +++ /dev/null @@ -1,193 +0,0 @@ -! ######spl - SUBROUTINE setcld(nz,z,nw,wl, & - & lwc, nlevel, & - & dtcld,omcld,gcld) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!XXX SUBROUTINE setcld(nz,z,nw,wl,dtcld,omcld,gcld) -!KS:11=================================================================== - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata -!KS:12=================================================================== -!XXX PARAMETER(kdata=51) - PARAMETER(kdata=151) -!KS:12=================================================================== - - -! input: (grids) - REAL wl(kw) - REAL z(kz) - INTEGER nz - INTEGER nw -!KS:13=================================================================== -! LWC is the liquid water content (!! kg/m3 !!) on the calling model -! grid (which has NLEVEL points: Z(1:NLEVEL) = AZ(*) - REAL lwc(*) - INTEGER nlevel -!KS:13=================================================================== - - -! Output: - REAL dtcld(kz,kw), omcld(kz,kw), gcld(kz,kw) - -! local: - -! specified data: - REAL zd(kdata), cd(kdata), omd(kdata), gd(kdata) - REAL womd(kdata), wgd(kdata) - -! other: - REAL cz(kz) - REAL omz(kz) - REAL gz(kz) - INTEGER i, iw, n - -! External functions: - REAL fsum - EXTERNAL fsum -!_______________________________________________________________________ - - -! cloud properties are set for each layer (not each level) - -! Set as many clouds as want here: -! First choose a cloud grid, zd(n), in km above sea level -! Can allow altitude variation of omega, g: - -!KS:14=================================================================== -!XXX n = 4 -!XXX -!XXX zd(1) = 5. -!XXX cd(1) = 0. -!XXX omd(1) = .9999 -!XXX gd(1) = .85 -!XXX -!XXX zd(2) = 7. -!XXX cd(2) = 0. -!XXX omd(2) = .5 -!XXX gd(2) = .5 -!XXX -!XXX zd(3) = 9. -!XXX cd(3) = 0. -!XXX omd(3) = .9999 -!XXX gd(3) = .85 -!XXX -!XXX zd(4) = 11. -!XXX - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETCLD',0,ZHOOK_HANDLE) - n = nlevel + 1 - if (n .gt. kdata) stop "SETCLD: not enough memory: KDATA" - zd(1) = 0 - do 110, i = 2, n - zd(i) = 0.5*( z(i-1) + z(i) ) -110 continue -! -! calculate cloud optical properties - do 120, i = 1, nlevel -! -! reference: Fouquart et al., Rev. Geophys., 1990 -! TAU = 3/2 LWC*DZ / (RHOWATER * Reff) -! RHOWATER = 1E3 kg/m3 -! Reff = (11 w + 4) 1E-6 -! w = LWC * 1E+3 (in g/cm3, since LWC is given in kg/m3) -! - cd(i) = 1.5 * ( lwc(i) * 1E3*(zd(i+1) - zd(i)) ) & - & / ( 1E3 * (11.*lwc(i)*1E+3+4.) * 1E-6) - omd(i) = .9999 - gd(i) = .85 -! print '(A,I5,99E12.5)', "I,TAU,LWC,REFF(um)" -! + , i, cd(i), lwc(i) -! + , ((11.*lwc(i)*1E+3+4.)) -120 continue -!KS:14=================================================================== - -!***************** - -! compute integrals and averages over grid layers: -! for g and omega, use averages weigthed by optical depth - -! DO 11, i = 1, n !***** CHANGED!!See header!!***** - DO 11, i = 1, n-1 - womd(i) = omd(i) * cd(i) - wgd(i) = gd(i) * cd(i) - 11 CONTINUE - CALL inter3(nz,z,cz, n, zd,cd, 0) - CALL inter3(nz,z,omz, n, zd,womd, 0) - CALL inter3(nz,z,gz , n, zd,wgd, 0) - - DO 15, i = 1, nz-1 - IF (cz(i) .GT. 0.) THEN - omz(i) = omz(i)/cz(i) - gz(i) = gz(i) /cz(i) - ELSE - omz(i) = 1. - gz(i) = 0. - ENDIF - 15 CONTINUE - -! WRITE(kout,*) 'Cloud: ', n, 'levels, tot opt. dep. = ', -! $ fsum(nz-1,cz) - -! assign at all wavelengths -! (can move wavelength loop outside if want to vary with wavelength) - - DO 17, iw = 1, nw-1 - DO 16, i = 1, nz-1 - dtcld(i,iw) = cz(i) - omcld(i,iw) = omz(i) - gcld (i,iw) = gz(i) - 16 CONTINUE - 17 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETCLD',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETCLD diff --git a/src/arome/chem/internals/setno2.F b/src/arome/chem/internals/setno2.F deleted file mode 100644 index 4f97a1860a793600d40af2d8e5bfaf32b63eee25..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/setno2.F +++ /dev/null @@ -1,187 +0,0 @@ -! ######spl - SUBROUTINE setno2(no2new, & - & nz,z,nw,wl, & - & xsno2, tlay, & - & dtno2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=51) - -!******* -! input: -!******* - -! grids: - - REAL wl(kw) - REAL z(kz) - INTEGER nw - INTEGER nz - REAL no2new - -! mid-layer temperature: - - REAL tlay(kz) - -!******* -! output: -!******* - - REAL dtno2(kz,kw) - -!******* -! local: -!******* - -! absorption cross sections - - REAL xsno2(kw) - REAL cz(kz) - -! nitrogen dioxide profile data: - - REAL zd(kdata), no2(kdata) - REAL cd(kdata) - REAL hscale - REAL colold, colnew - REAL scale - REAL sno2 - -! other: - - INTEGER i, l, nd - -!******* -! External functions: -!******* - REAL fsum - EXTERNAL fsum - -!_______________________________________________________________________ -! Data input: - -! Example: set to 1 ppb in lowest 1 km, set to zero above that. -! - do by specifying concentration at 3 altitudes. - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETNO2',0,ZHOOK_HANDLE) - write(kout,*) 'NO2: 1 ppb in lowest 1 km, 0 above' - - nd = 3 - zd(1) = 0. - no2(1) = 1. * 2.69e10 - - zd(2) = 1. - no2(2) = 1. * 2.69e10 - - zd(3) = zd(2)* 1.000001 - no2(3) = 0. - -! zd(4) = zd(3)*1.1 -! no2(4) = 0. - -! compute column increments (alternatively, can specify these directly) - - DO 11, i = 1, nd - 1 - cd(i) = (no2(i+1)+no2(i)) * 1.E5 * (zd(i+1)-zd(i)) / 2. - 11 CONTINUE - -! Include exponential tail integral from top level to infinity. -! fold tail integral into top layer -! specify scale height near top of data (use ozone value) - - hscale = 4.50e5 - cd(nd-1) = cd(nd-1) + hscale * no2(nd) - -!********** -!********** end data input. - -! Compute column increments on standard z-grid. - - CALL inter3(nz,z,cz, nd,zd,cd, 1) - -! scale values of cz(i) - - colold = fsum(nz-1,cz) - WRITE(kout,100) colold, colold/2.687E16 - 100 FORMAT(5x,'old NO2 Column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2, ' Dobson Units ') - - if ( (no2new .lt. 0.) .or. (colold .le. 0.) ) then - scale = 1. - else - scale = no2new/colold - endif - - do i = 1, nz-1 - cz(i) = cz(i) * scale - enddo - colnew = fsum(nz-1,cz) - WRITE(kout,105) colnew, colnew/2.687E16 - 105 format(5x,'new NO2 Column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2, ' Dobson Units ') - -!*********************************** -! calculate optical depth for each layer, with temperature -! correction. Output, dtno2(kz,kw) - - DO 20, l = 1, nw-1 - sno2 = xsno2(l) - DO 10, i = 1, nz-1 - dtno2(i,l) = cz(i)*sno2 - 10 CONTINUE - 20 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETNO2',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETNO2 diff --git a/src/arome/chem/internals/seto2.F b/src/arome/chem/internals/seto2.F deleted file mode 100644 index 8b6e3e2c95a875c94b63d2d92ec26618da4ded7b..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/seto2.F +++ /dev/null @@ -1,272 +0,0 @@ -! ######spl - SUBROUTINE seto2(nz,z,nw,wl,cz,zen,dto2,xso2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - REAL wl(kw) - REAL z(kz), cz(kz) - INTEGER nz, nw - REAL zen - REAL dto2(kz,kw), xso2(kz,kw) - -! grid on which Kockarts' parameterization is defined - INTEGER ngast - PARAMETER (ngast = 17) - REAL wlgast(ngast) - SAVE wlgast - - -! O2 optical depth and equivalent cross section on Kockarts' grid - REAL dto2k(kz,ngast-1), xso2k(kz,ngast-1) - - -! internal grid and O2 cross section on internal grid - INTEGER kdata - PARAMETER (kdata = 200) - REAL wlint(kdata), xso2int(kdata) - SAVE wlint, xso2int - INTEGER nwint - SAVE nwint - -! temporary one-dimensional storage for optical depth and cross section values -! XXtmp - on internal grid -! XXuser - on user defined grid - REAL dttmp(2*kw), xstmp(2*kw) - REAL dtuser(kw), xsuser(kw) - - REAL o2col(kz) - - REAL secchi - REAL fchap - EXTERNAL fchap - -! cross section data for use outside the SR-Bands (combined from -! Brasseur and Solomon and the JPL 1994 recommendation) - INTEGER nosr - PARAMETER (nosr = 105) - REAL x1(nosr), y1(nosr) - -! auxiliaries - REAL x, y - REAL dr - PARAMETER (dr = pi/180.) - INTEGER i, iw, igast, ierr, icount - INTEGER iz - INTEGER ifirst, n - - LOGICAL call1 - SAVE call1, icount - DATA call1/.TRUE./ - - - -! check, whether user grid is in the O2 absorption band at all... -! if not, set cross section and optical depth values to zero and return - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETO2',0,ZHOOK_HANDLE) - IF (wl(1) .GT. 243.) THEN - DO iw = 1, nw-1 - DO i = 1, nz - dto2(i,iw) = 0. - xso2(i,iw) = 0. - ENDDO - ENDDO - IF (LHOOK) CALL DR_HOOK('SETO2',1,ZHOOK_HANDLE) - RETURN - ENDIF - -! sec Xhi or Chapman calculation - IF (zen .LE. 75.) THEN - secchi = 1./COS(zen*dr) - ELSEIF (zen .LE. 95. ) THEN - secchi = fchap(zen) - ELSE - IF (LHOOK) CALL DR_HOOK('SETO2',1,ZHOOK_HANDLE) - RETURN - ENDIF - -! O2 overhead columns calculation - o2col(nz-1) = 0.2095 * cz(nz-1) * secchi - DO i = nz-2, 1, -1 - o2col(i) = o2col(i+1) + 0.2095*cz(i)*secchi - END DO - -! read O2 cross section data outside SR-bands only in the very first call - IF (call1) THEN -!************ O2 absorption cross sections: -! from 116 nm to 245 nm, including Schumann-Runge continumm -! from Brasseur and Solomon 1986. - - OPEN(UNIT=kin,FILE='DATAE1/O2/O2_src.abs') - READ(kin,*) ifirst, n - DO i = 1, ifirst-2 - READ(kin,*) - ENDDO - icount = 0 - DO i = 1, n - READ(kin,*) x, y - IF (x .LT. 204.) THEN - icount = icount+1 - x1(icount) = x - y1(icount) = y - ENDIF - ENDDO - CLOSE(kin) - -! overwrite from 204 to 241 nm (Herzberg continuum) - - OPEN(UNIT=kin,FILE='DATAE1/O2/O2_jpl94.abs',STATUS='old') - read(kin,*) - n = 40 - DO i = 1, n - icount = icount+1 - READ(kin,*) y - y1(icount) = y*1E-24 - x1(icount) = 204. + FLOAT(i-1) - END DO - CLOSE (kin) - -! set values to zero outside the wavelength range defined by the data files - - CALL addpnt(x1,y1,nosr,icount, x1(1)-deltax,0.) - CALL addpnt(x1,y1,nosr,icount, 0.,0.) - CALL addpnt(x1,y1,nosr,icount,x1(icount)+deltax,0.) - CALL addpnt(x1,y1,nosr,icount, 1.e38,0.) - - -! set up the internal grid, use full resolution of the cross section data -! outside the SR bands, use Kockarts' grid inside the SR bands - -! define Kockarts' grid points - DO iw = 1, ngast - wlgast(iw) = 1E7/(57000.-(iw-1)*500.) - ENDDO - - nwint = 0 - DO iw = 1, 47 - nwint = nwint + 1 - wlint(nwint) = x1(iw) - ENDDO - DO iw = 1, ngast - nwint = nwint+1 - wlint(nwint) = wlgast(iw) - ENDDO - DO iw = 65, 105 - nwint = nwint+1 - wlint(nwint) = x1(iw) - ENDDO - -! interpolate Brasseur/Solomon and JPL data onto internal grid - CALL ch_inter2(nwint,wlint,xso2int, icount,x1,y1, ierr) - - IF (call1) call1 = .FALSE. - - ENDIF - -! if necessary: -! do Kockarts' parameterization of the SR bands, output values of O2 -! optical depth and O2 equivalent cross section are on his grid - IF ((wl(1) .LT. wlgast(ngast)) .AND. & - & (wl(nw) .GT. wlgast(1))) THEN - DO iw = 1, ngast-1 - CALL schu(nz,o2col,iw,secchi,dto2k,xso2k) - ENDDO - ENDIF - - -! loop through the altitude levels - DO iz = 1, nz - - igast = 0 - -! loop through the internal wavelength grid - DO iw = 1, nwint-1 - -! if outside Kockarts' grid, use the JPL/Brasseur+Solomon data, if inside -! Kockarts' grid, use the parameterized values from the call to SCHU - IF ((wlint(iw) .LT. wlgast(1)) .OR. & - & (wlint(iw) .GT. wlgast(ngast-1))) THEN - IF (iz .EQ. nz) THEN - dttmp(iw) = 0. - ELSE - dttmp(iw) = xso2int(iw) * 0.2095*cz(iz) - ENDIF - xstmp(iw) = xso2int(iw) - ELSE - igast = igast+1 - dttmp(iw) = dto2k(iz,igast) - xstmp(iw) = xso2k(iz,igast) - ENDIF - -! compute the area in each bin (for correct interpolation purposes only!) - dttmp(iw) = dttmp(iw) * (wlint(iw+1)-wlint(iw)) - xstmp(iw) = xstmp(iw) * (wlint(iw+1)-wlint(iw)) - - ENDDO - -! interpolate O2 optical depth from the internal grid onto the user grid - CALL inter3(nw,wl,dtuser, nwint,wlint,dttmp, 0) - DO iw = 1, nw-1 - dto2(iz,iw) = dtuser(iw)/(wl(iw+1)-wl(iw)) - ENDDO - -! interpolate O2 cross section from the internal grid onto the user grid - CALL inter3(nw,wl,xsuser, nwint,wlint,xstmp, 0) - - DO iw = 1, nw-1 - xso2(iz,iw) = xsuser(iw)/(wl(iw+1)-wl(iw)) - ENDDO - - ENDDO - - IF (LHOOK) CALL DR_HOOK('SETO2',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETO2 diff --git a/src/arome/chem/internals/setozo.F b/src/arome/chem/internals/setozo.F deleted file mode 100644 index 14ee5c62a6f64de535a0323fe70009843eb0d313..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/setozo.F +++ /dev/null @@ -1,196 +0,0 @@ -! ######spl - SUBROUTINE setozo(dobnew, & - & nz,z,nw,wl, & - & xso3,s226,s263,s298,tlay, & - & dto3) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=150) - -!******* -! input: -!******* - -! grids: - REAL wl(kw) - REAL z(kz) - INTEGER nw - INTEGER nz -! ozone absorption cross sections at 226, 263, and 298 K: - REAL xso3(kw), s226(kw),s263(kw),s298(kw) - REAL dobnew -! mid-layer temperature: - REAL tlay(kz) - -!******* -! output: -!******* - REAL dto3(kz,kw) - - -!******* -! local: -!******* - - REAL cz(kz) - -! ozone profile data: - - REAL zd(kdata), o3(kdata) - REAL cd(kdata) - REAL hscale - REAL dobold, scale - REAL colold, colnew - REAL so3 - -! other: - INTEGER i, iw, nd - -!******* -! External functions: -!******* - REAL fsum - EXTERNAL fsum -!_______________________________________________________________________ - - -! read in ozone profile - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETOZO',0,ZHOOK_HANDLE) - WRITE(kout,*) 'ozone profile: USSA, 1976' - - OPEN(kin,FILE='DATAE1/ATM/ussa.ozone',STATUS='old') - DO i = 1, 7 - READ(kin,*) - ENDDO - nd = 1 - 4 CONTINUE - READ(kin,*,END=5) zd(nd), o3(nd) - nd = nd+1 - GOTO 4 - 5 CONTINUE - CLOSE(kin) - nd = nd-1 - -! compute column increments - - DO 11, i = 1, nd - 1 - cd(i) = (o3(i+1)+o3(i)) * 1.E5 * (zd(i+1)-zd(i)) / 2. - 11 CONTINUE - -! Include exponential tail integral from infinity to 50 km, -! fold tail integral into top layer -! specify scale height near top of data. - - hscale = 4.50e5 - cd(nd-1) = cd(nd-1) + hscale * o3(nd) - -! alternative input ozone concentration data could include, e.g., -! a read file here: - -!********** -!********** end data input. - -! Compute column increments on standard z-grid. - - CALL inter3(nz,z,cz, nd,zd,cd, 1) - -! scale values of cz(i) by any dobson unit - - colold = fsum(nz-1,cz) - dobold = colold/2.687e16 - WRITE(kout,100) colold, dobold - 100 FORMAT(5x,'old O3 Column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2, ' Dobson Units ') - - if (dobnew .lt. 0.) then - scale = 1. - else - scale = dobnew/dobold - endif - - do i = 1, nz-1 - cz(i) = cz(i) * scale - enddo - colnew = fsum(nz-1,cz) - WRITE(kout,105) colnew, colnew/2.687E16 - 105 format(5x,'new O3 Column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2, ' Dobson Units ') - -!*********************************** -! calculate ozone optical depth for each layer, with temperature -! correction. Output, dto3(kz,kw) - - DO 20, iw = 1, nw-1 - so3 = xso3(iw) - DO 10, i = 1, nz - 1 - - IF ( wl(iw) .GT. 240.5 .AND. wl(iw+1) .LT. 350. ) THEN - IF (tlay(i) .LT. 263.) THEN - so3 = s226(iw) + (s263(iw)-s226(iw)) / (263.-226.) * & - & (tlay(i)-226.) - ELSE - so3 = s263(iw) + (s298(iw)-s263(iw)) / (298.-263.) * & - & (tlay(i)-263.) - ENDIF - ENDIF - - dto3(i,iw) = cz(i)*so3 - - 10 CONTINUE - 20 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETOZO',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE setozo diff --git a/src/arome/chem/internals/setso2.F b/src/arome/chem/internals/setso2.F deleted file mode 100644 index ec749a3260234e597d1958f76ad9b80faaf64ab6..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/setso2.F +++ /dev/null @@ -1,202 +0,0 @@ -! ######spl - SUBROUTINE setso2(so2new, & - & nz,z,nw,wl, & - & xsso2, tlay, & - & dtso2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=51) - -!******* -! input: -!******* - -! grids: - - REAL wl(kw) - REAL z(kz) - INTEGER nw - INTEGER nz - REAL so2new - -! mid-layer temperature: - - REAL tlay(kz) - -!******* -! output: -!******* - - REAL dtso2(kz,kw) - -!******* -! local: -!******* - -! absorption cross sections - - REAL xsso2(kw) - REAL cz(kz) - -! sulfur dioxide profile data: - - REAL zd(kdata), so2(kdata) - REAL cd(kdata) - REAL hscale - REAL colold, colnew - REAL scale - REAL sso2 - -! other: - - INTEGER i, l, nd - -!******* -! External functions: -!******* - REAL fsum - EXTERNAL fsum - -!_______________________________________________________________________ -! Data input: - -! Example: set to 1 ppb in lowest 1 km, set to zero above that. -! - do by specifying concentration at 3 altitudes. - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETSO2',0,ZHOOK_HANDLE) - write(kout,*) 'SO2: 1 ppb in lowest 1 km, 0 above' - - nd = 3 - zd(1) = 0. - so2(1) = 1. * 2.69e10 - - zd(2) = 1. - so2(2) = 1. * 2.69e10 - - zd(3) = zd(2)* 1.000001 - so2(3) = 0. - -! zd(4) = zd(3)*1.1 -! so2(4) = 0. - -! compute column increments (alternatively, can specify these directly) - - DO 11, i = 1, nd - 1 - cd(i) = (so2(i+1)+so2(i)) * 1.E5 * (zd(i+1)-zd(i)) / 2. - 11 CONTINUE - -! Include exponential tail integral from top level to infinity. -! fold tail integral into top layer -! specify scale height near top of data (use ozone value) - - hscale = 4.50e5 - cd(nd-1) = cd(nd-1) + hscale * so2(nd) - -!********** -!********** end data input. - -! Compute column increments on standard z-grid. - - CALL inter3(nz,z,cz, nd,zd,cd, 1) - -! scale values of cz(i) - - colold = fsum(nz-1,cz) - WRITE(kout,100) colold, colold/2.687E16 - 100 FORMAT(5x,'old SO2 Column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2, ' Dobson Units ') - - if ( (so2new .lt. 0.) .or. (colold .le. 0.) ) then - scale = 1. - else - scale = so2new/colold - endif - - do i = 1, nz-1 - cz(i) = cz(i) * scale - enddo - colnew = fsum(nz-1,cz) - WRITE(kout,105) colnew, colnew/2.687E16 - 105 format(5x,'new SO2 Column = ', 1pe11.4,1x,'# cm-2 = ', & - & 0pf8.2, ' Dobson Units ') - -!*********************************** -! calculate sulfur optical depth for each layer, with temperature -! correction. Output, dtso2(kz,kw) - - DO 20, l = 1, nw-1 - sso2 = xsso2(l) - DO 10, i = 1, nz - 1 - -! Leaving this part in in case i want to interpolate between -! the 221K and 298K data. -! -! IF ( wl(l) .GT. 240.5 .AND. wl(l+1) .LT. 350. ) THEN -! IF (tlay(i) .LT. 263.) THEN -! sso2 = s221(l) + (s263(l)-s226(l)) / (263.-226.) * -! $ (tlay(i)-226.) -! ELSE -! sso2 = s263(l) + (s298(l)-s263(l)) / (298.-263.) * -! $ (tlay(i)-263.) -! ENDIF -! ENDIF - - dtso2(i,l) = cz(i)*sso2 - - 10 CONTINUE - 20 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETSO2',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETSO2 diff --git a/src/arome/chem/internals/settmp.F b/src/arome/chem/internals/settmp.F deleted file mode 100644 index 01222e3542eac2566e9ad1d6ff2919eec3935f5e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/settmp.F +++ /dev/null @@ -1,110 +0,0 @@ -! ######spl - SUBROUTINE settmp(nz,z,tlev,tlay) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - - INTEGER kdata - PARAMETER(kdata=150) - -! input: (altitude working grid) - REAL z(kz) - INTEGER nz - -! output: - REAL tlev(kz), tlay(kz) - -! local: - REAL zd(kdata), td(kdata) - INTEGER i, nd -!_______________________________________________________________________ - - -! read in temperature profile - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SETTMP',0,ZHOOK_HANDLE) - WRITE(kout,*) 'air temperature: USSA, 1976' - - OPEN(kin,FILE='DATAE1/ATM/ussa.temp',STATUS='old') - DO i = 1, 3 - READ(kin,*) - ENDDO - nd = 1 - 4 CONTINUE - READ(kin,*,END=5) zd(nd), td(nd) - nd = nd+1 - GOTO 4 - 5 CONTINUE - CLOSE(kin) - nd = nd-1 - -! use constant temperature to infinity: - - zd(nd) = 1.E10 - -! alternative input temperature data could include, e.g., a read file here: - -!********** -!********** end data input. - -! interpolate onto z-grid - - CALL ch_inter1(nz,z,tlev,nd,zd,td) - -! compute layer-averages - - DO 20, i = 1, nz - 1 - tlay(i) = (tlev(i+1) + tlev(i))/2. - 20 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SETTMP',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SETTMP diff --git a/src/arome/chem/internals/sewset.F b/src/arome/chem/internals/sewset.F deleted file mode 100644 index 47a9280c49ec7e32cfd9cfa0cd69cb4eb1180c3a..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sewset.F +++ /dev/null @@ -1,46 +0,0 @@ -! ######spl - SUBROUTINE SEWSET (N, ITOL, RTOL, ATOL, YCUR, EWT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################################## - REAL RTOL, ATOL, YCUR, EWT - INTEGER N, ITOL - DIMENSION RTOL(*), ATOL(*), YCUR(N), EWT(N) -!----------------------------------------------------------------------- -! Call sequence input -- N, ITOL, RTOL, ATOL, YCUR -! Call sequence output -- EWT -! COMMON block variables accessed -- None -! -! Subroutines/functions called by SEWSET.. None -!----------------------------------------------------------------------- -! This subroutine sets the error weight vector EWT according to -! EWT(i) = RTOL(i)*abs(YCUR(i)) + ATOL(i), i = 1,...,N, -! with the subscript on RTOL and/or ATOL possibly replaced by 1 above, -! depending on the value of ITOL. -!----------------------------------------------------------------------- - INTEGER I - REAL(KIND=JPRB) :: ZHOOK_HANDLE -! - IF (LHOOK) CALL DR_HOOK('SEWSET',0,ZHOOK_HANDLE) - GO TO (10, 20, 30, 40), ITOL - 10 CONTINUE - DO 15 I = 1, N - 15 EWT(I) = RTOL(1)*ABS(YCUR(I)) + ATOL(1) - IF (LHOOK) CALL DR_HOOK('SEWSET',1,ZHOOK_HANDLE) - RETURN - 20 CONTINUE - DO 25 I = 1, N - 25 EWT(I) = RTOL(1)*ABS(YCUR(I)) + ATOL(I) - IF (LHOOK) CALL DR_HOOK('SEWSET',1,ZHOOK_HANDLE) - RETURN - 30 CONTINUE - DO 35 I = 1, N - 35 EWT(I) = RTOL(I)*ABS(YCUR(I)) + ATOL(1) - IF (LHOOK) CALL DR_HOOK('SEWSET',1,ZHOOK_HANDLE) - RETURN - 40 CONTINUE - DO 45 I = 1, N - 45 EWT(I) = RTOL(I)*ABS(YCUR(I)) + ATOL(I) - IF (LHOOK) CALL DR_HOOK('SEWSET',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SEWSET diff --git a/src/arome/chem/internals/sgbfa.F b/src/arome/chem/internals/sgbfa.F deleted file mode 100644 index e14d6d2487b717ae2d368ad697f9d1ac02fdb0a7..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sgbfa.F +++ /dev/null @@ -1,180 +0,0 @@ -! ######spl - subroutine sgbfa(abd,lda,n,ml,mu,ipvt,info) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - integer lda,n,ml,mu,ipvt(1),info - real abd(lda,1) -! -! sgbfa factors a real band matrix by elimination. -! -! sgbfa is usually called by sgbco, but it can be called -! directly with a saving in time if rcond is not needed. -! -! on entry -! -! abd real(lda, n) -! contains the matrix in band storage. the columns -! of the matrix are stored in the columns of abd and -! the diagonals of the matrix are stored in rows -! ml+1 through 2*ml+mu+1 of abd . -! see the comments below for details. -! -! lda integer -! the leading dimension of the array abd . -! lda must be .ge. 2*ml + mu + 1 . -! -! n integer -! the order of the original matrix. -! -! ml integer -! number of diagonals below the main diagonal. -! 0 .le. ml .lt. n . -! -! mu integer -! number of diagonals above the main diagonal. -! 0 .le. mu .lt. n . -! more efficient if ml .le. mu . -! on return -! -! abd an upper triangular matrix in band storage and -! the multipliers which were used to obtain it. -! the factorization can be written a = l*u where -! l is a product of permutation and unit lower -! triangular matrices and u is upper triangular. -! -! ipvt integer(n) -! an integer vector of pivot indices. -! -! info integer -! = 0 normal value. -! = k if u(k,k) .eq. 0.0 . this is not an error -! condition for this subroutine, but it does -! indicate that sgbsl will divide by zero if -! called. use rcond in sgbco for a reliable -! indication of singularity. -! -! band storage -! -! if a is a band matrix, the following program segment -! will set up the input. -! -! ml = (band width below the diagonal) -! mu = (band width above the diagonal) -! m = ml + mu + 1 -! do 20 j = 1, n -! i1 = max0(1, j-mu) -! i2 = min0(n, j+ml) -! do 10 i = i1, i2 -! k = i - j + m -! abd(k,j) = a(i,j) -! 10 continue -! 20 continue -! -! this uses rows ml+1 through 2*ml+mu+1 of abd . -! in addition, the first ml rows in abd are used for -! elements generated during the triangularization. -! the total number of rows needed in abd is 2*ml+mu+1 . -! the ml+mu by ml+mu upper left triangle and the -! ml by ml lower right triangle are not referenced. -! -! linpack. this version dated 08/14/78 . -! cleve moler, university of new mexico, argonne national lab. -! -! subroutines and functions -! -! blas saxpy,sscal,ichsamax -! fortran max0,min0 -! -! internal variables -! - real t - integer i,ichsamax,i0,j,ju,jz,j0,j1,k,kp1,l,lm,m,mm,nm1 -! -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SGBFA',0,ZHOOK_HANDLE) - m = ml + mu + 1 - info = 0 -! -! zero initial fill-in columns -! - j0 = mu + 2 - j1 = min0(n,m) - 1 - if (j1 .lt. j0) go to 30 - do 20 jz = j0, j1 - i0 = m + 1 - jz - do 10 i = i0, ml - abd(i,jz) = 0.0e0 - 10 continue - 20 continue - 30 continue - jz = j1 - ju = 0 -! -! gaussian elimination with partial pivoting -! - nm1 = n - 1 - if (nm1 .lt. 1) go to 130 - do 120 k = 1, nm1 - kp1 = k + 1 -! -! zero next fill-in column -! - jz = jz + 1 - if (jz .gt. n) go to 50 - if (ml .lt. 1) go to 50 - do 40 i = 1, ml - abd(i,jz) = 0.0e0 - 40 continue - 50 continue -! -! find l = pivot index -! - lm = min0(ml,n-k) - l = ichsamax(lm+1,abd(m,k),1) + m - 1 - ipvt(k) = l + k - m -! -! zero pivot implies this column already triangularized -! - if (abd(l,k) .eq. 0.0e0) go to 100 -! -! interchange if necessary -! - if (l .eq. m) go to 60 - t = abd(l,k) - abd(l,k) = abd(m,k) - abd(m,k) = t - 60 continue -! -! compute multipliers -! - t = -1.0e0/abd(m,k) - call sscal(lm,t,abd(m+1,k),1) -! -! row elimination with column indexing -! - ju = min0(max0(ju,mu+ipvt(k)),n) - mm = m - if (ju .lt. kp1) go to 90 - do 80 j = kp1, ju - l = l - 1 - mm = mm - 1 - t = abd(l,j) - if (l .eq. mm) go to 70 - abd(l,j) = abd(mm,j) - abd(mm,j) = t - 70 continue - call saxpy(lm,t,abd(m+1,k),1,abd(mm+1,j),1) - 80 continue - 90 continue - go to 110 - 100 continue - info = k - 110 continue - 120 continue - 130 continue - ipvt(n) = n - if (abd(m,n) .eq. 0.0e0) info = n - IF (LHOOK) CALL DR_HOOK('SGBFA',1,ZHOOK_HANDLE) - return - endsubroutine sgbfa diff --git a/src/arome/chem/internals/sgbsl.F b/src/arome/chem/internals/sgbsl.F deleted file mode 100644 index 808df0b43373dab718a867ee537267ce944fdf01..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sgbsl.F +++ /dev/null @@ -1,141 +0,0 @@ -! ######spl - subroutine sgbsl(abd,lda,n,ml,mu,ipvt,b,job) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - integer lda,n,ml,mu,ipvt(1),job - real abd(lda,1),b(1) -! -! sgbsl solves the real band system -! a * x = b or trans(a) * x = b -! using the factors computed by sgbco or sgbfa. -! -! on entry -! -! abd real(lda, n) -! the output from sgbco or sgbfa. -! -! lda integer -! the leading dimension of the array abd . -! -! n integer -! the order of the original matrix. -! -! ml integer -! number of diagonals below the main diagonal. -! -! mu integer -! number of diagonals above the main diagonal. -! -! ipvt integer(n) -! the pivot vector from sgbco or sgbfa. -! -! b real(n) -! the right hand side vector. -! -! job integer -! = 0 to solve a*x = b , -! = nonzero to solve trans(a)*x = b , where -! trans(a) is the transpose. -! -! on return -! -! b the solution vector x . -! -! error condition -! -! a division by zero will occur if the input factor contains a -! zero on the diagonal. technically this indicates singularity -! but it is often caused by improper arguments or improper -! setting of lda . it will not occur if the subroutines are -! called correctly and if sgbco has set rcond .gt. 0.0 -! or sgbfa has set info .eq. 0 . -! -! to compute inverse(a) * c where c is a matrix -! with p columns -! call sgbco(abd,lda,n,ml,mu,ipvt,rcond,z) -! if (rcond is too small) go to ... -! do 10 j = 1, p -! call sgbsl(abd,lda,n,ml,mu,ipvt,c(1,j),0) -! 10 continue -! -! linpack. this version dated 08/14/78 . -! cleve moler, university of new mexico, argonne national lab. -! -! subroutines and functions -! -! blas saxpy,sdot -! fortran min0 -! -! internal variables -! - real sdot,t - integer k,kb,l,la,lb,lm,m,nm1 -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SGBSL',0,ZHOOK_HANDLE) - m = mu + ml + 1 - nm1 = n - 1 - if (job .ne. 0) go to 50 -! -! job = 0 , solve a * x = b -! first solve l*y = b -! - if (ml .eq. 0) go to 30 - if (nm1 .lt. 1) go to 30 - do 20 k = 1, nm1 - lm = min0(ml,n-k) - l = ipvt(k) - t = b(l) - if (l .eq. k) go to 10 - b(l) = b(k) - b(k) = t - 10 continue - call saxpy(lm,t,abd(m+1,k),1,b(k+1),1) - 20 continue - 30 continue -! -! now solve u*x = y -! - do 40 kb = 1, n - k = n + 1 - kb - b(k) = b(k)/abd(m,k) - lm = min0(k,m) - 1 - la = m - lm - lb = k - lm - t = -b(k) - call saxpy(lm,t,abd(la,k),1,b(lb),1) - 40 continue - go to 100 - 50 continue -! -! job = nonzero, solve trans(a) * x = b -! first solve trans(u)*y = b -! - do 60 k = 1, n - lm = min0(k,m) - 1 - la = m - lm - lb = k - lm - t = sdot(lm,abd(la,k),1,b(lb),1) - b(k) = (b(k) - t)/abd(m,k) - 60 continue -! -! now solve trans(l)*x = y -! - if (ml .eq. 0) go to 90 - if (nm1 .lt. 1) go to 90 - do 80 kb = 1, nm1 - k = n - kb - lm = min0(ml,n-k) - b(k) = b(k) + sdot(lm,abd(m+1,k),1,b(k+1),1) - l = ipvt(k) - if (l .eq. k) go to 70 - t = b(l) - b(l) = b(k) - b(k) = t - 70 continue - 80 continue - 90 continue - 100 continue - IF (LHOOK) CALL DR_HOOK('SGBSL',1,ZHOOK_HANDLE) - return - endsubroutine sgbsl diff --git a/src/arome/chem/internals/sgefa.F b/src/arome/chem/internals/sgefa.F deleted file mode 100644 index f359027529129f49249979d4172e8dbca5e5ddb3..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sgefa.F +++ /dev/null @@ -1,109 +0,0 @@ -! ######spl - subroutine sgefa(a,lda,n,ipvt,info) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - integer lda,n,ipvt(1),info - real a(lda,1) -! -! sgefa factors a real matrix by gaussian elimination. -! -! sgefa is usually called by sgeco, but it can be called -! directly with a saving in time if rcond is not needed. -! (time for sgeco) = (1 + 9/n)*(time for sgefa) . -! -! on entry -! -! a real(lda, n) -! the matrix to be factored. -! -! lda integer -! the leading dimension of the array a . -! -! n integer -! the order of the matrix a . -! -! on return -! -! a an upper triangular matrix and the multipliers -! which were used to obtain it. -! the factorization can be written a = l*u where -! l is a product of permutation and unit lower -! triangular matrices and u is upper triangular. -! -! ipvt integer(n) -! an integer vector of pivot indices. -! -! info integer -! = 0 normal value. -! = k if u(k,k) .eq. 0.0 . this is not an error -! condition for this subroutine, but it does -! indicate that sgesl or sgedi will divide by zero -! if called. use rcond in sgeco for a reliable -! indication of singularity. -! -! linpack. this version dated 08/14/78 . -! cleve moler, university of new mexico, argonne national lab. -! -! subroutines and functions -! -! blas saxpy,sscal,ichsamx -! -! internal variables -! - real t - integer ichsamx,j,k,kp1,l,nm1 -! -! -! gaussian elimination with partial pivoting -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SGEFA',0,ZHOOK_HANDLE) - info = 0 - nm1 = n - 1 - if (nm1 .lt. 1) go to 70 - do 60 k = 1, nm1 - kp1 = k + 1 -! -! find l = pivot index -! - l = ichsamx(n-k+1,a(k,k),1) + k - 1 - ipvt(k) = l -! -! zero pivot implies this column already triangularized -! - if (a(l,k) .eq. 0.0e0) go to 40 -! -! interchange if necessary -! - if (l .eq. k) go to 10 - t = a(l,k) - a(l,k) = a(k,k) - a(k,k) = t - 10 continue -! -! compute multipliers -! - t = -1.0e0/a(k,k) - call sscal(n-k,t,a(k+1,k),1) -! -! row elimination with column indexing -! - do 30 j = kp1, n - t = a(l,j) - if (l .eq. k) go to 20 - a(l,j) = a(k,j) - a(k,j) = t - 20 continue - call saxpy(n-k,t,a(k+1,k),1,a(k+1,j),1) - 30 continue - go to 50 - 40 continue - info = k - 50 continue - 60 continue - 70 continue - ipvt(n) = n - if (a(n,n) .eq. 0.0e0) info = n - IF (LHOOK) CALL DR_HOOK('SGEFA',1,ZHOOK_HANDLE) - return - endsubroutine sgefa diff --git a/src/arome/chem/internals/sgesl.F b/src/arome/chem/internals/sgesl.F deleted file mode 100644 index 2acfd9d6cf8b155753f771e457ceca1601c99bf6..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sgesl.F +++ /dev/null @@ -1,123 +0,0 @@ -! ######spl - subroutine sgesl(a,lda,n,ipvt,b,job) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - integer lda,n,ipvt(1),job - real a(lda,1),b(1) -! -! sgesl solves the real system -! a * x = b or trans(a) * x = b -! using the factors computed by sgeco or sgefa. -! -! on entry -! -! a real(lda, n) -! the output from sgeco or sgefa. -! -! lda integer -! the leading dimension of the array a . -! -! n integer -! the order of the matrix a . -! -! ipvt integer(n) -! the pivot vector from sgeco or sgefa. -! -! b real(n) -! the right hand side vector. -! -! job integer -! = 0 to solve a*x = b , -! = nonzero to solve trans(a)*x = b where -! trans(a) is the transpose. -! -! on return -! -! b the solution vector x . -! -! error condition -! -! a division by zero will occur if the input factor contains a -! zero on the diagonal. technically this indicates singularity -! but it is often caused by improper arguments or improper -! setting of lda . it will not occur if the subroutines are -! called correctly and if sgeco has set rcond .gt. 0.0 -! or sgefa has set info .eq. 0 . -! -! to compute inverse(a) * c where c is a matrix -! with p columns -! call sgeco(a,lda,n,ipvt,rcond,z) -! if (rcond is too small) go to ... -! do 10 j = 1, p -! call sgesl(a,lda,n,ipvt,c(1,j),0) -! 10 continue -! -! linpack. this version dated 08/14/78 . -! cleve moler, university of new mexico, argonne national lab. -! -! subroutines and functions -! -! blas saxpy,sdot -! -! internal variables -! - real sdot,t - integer k,kb,l,nm1 -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SGESL',0,ZHOOK_HANDLE) - nm1 = n - 1 - if (job .ne. 0) go to 50 -! -! job = 0 , solve a * x = b -! first solve l*y = b -! - if (nm1 .lt. 1) go to 30 - do 20 k = 1, nm1 - l = ipvt(k) - t = b(l) - if (l .eq. k) go to 10 - b(l) = b(k) - b(k) = t - 10 continue - call saxpy(n-k,t,a(k+1,k),1,b(k+1),1) - 20 continue - 30 continue -! -! now solve u*x = y -! - do 40 kb = 1, n - k = n + 1 - kb - b(k) = b(k)/a(k,k) - t = -b(k) - call saxpy(k-1,t,a(1,k),1,b(1),1) - 40 continue - go to 100 - 50 continue -! -! job = nonzero, solve trans(a) * x = b -! first solve trans(u)*y = b -! - do 60 k = 1, n - t = sdot(k-1,a(1,k),1,b(1),1) - b(k) = (b(k) - t)/a(k,k) - 60 continue -! -! now solve trans(l)*x = y -! - if (nm1 .lt. 1) go to 90 - do 80 kb = 1, nm1 - k = n - kb - b(k) = b(k) + sdot(n-k,a(k+1,k),1,b(k+1),1) - l = ipvt(k) - if (l .eq. k) go to 70 - t = b(l) - b(l) = b(k) - b(k) = t - 70 continue - 80 continue - 90 continue - 100 continue - IF (LHOOK) CALL DR_HOOK('SGESL',1,ZHOOK_HANDLE) - return - endsubroutine sgesl diff --git a/src/arome/chem/internals/sphers.F b/src/arome/chem/internals/sphers.F deleted file mode 100644 index fba7cbeb6478364fcac6d30534a54f50d503edd6..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sphers.F +++ /dev/null @@ -1,158 +0,0 @@ -! ######spl - SUBROUTINE sphers(nz, z, zen, dsdh, nid) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! input - INTEGER nz - REAL zen, z(kz) - -! output - INTEGER nid(0:kz) - REAL dsdh(0:kz,kz) - -! more program constants - REAL re, ze(kz) - REAL dr - PARAMETER ( dr = pi/180.) - -! local - - REAL zenrad, rpsinz, rj, rjp1, dsj, dhj, ga, gb, sm - INTEGER i, j, k - INTEGER id - - INTEGER nlayer - REAL zd(0:kz-1) - - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SPHERS',0,ZHOOK_HANDLE) - zenrad = zen*dr - -! number of layers: - nlayer = nz - 1 - -! include the elevation above sea level to the radius of the earth: - re = radius + z(1) -! correspondingly z changed to the elevation above earth surface: - DO k = 1, nz - ze(k) = z(k) - z(1) - END DO - -! inverse coordinate of z - zd(0) = ze(nz) - DO k = 1, nlayer - zd(k) = ze(nz - k) - END DO - -! initialize dsdh(i,j), nid(i) - DO i = 0, kz - nid(i) = 0 - DO j = 1, kz - dsdh(i,j) = 0. - END DO - END DO - -! calculate ds/dh of every layer - DO 100 i = 0, nlayer - - rpsinz = (re + zd(i)) * SIN(zenrad) - - IF ( (zen .GT. 90.0) .AND. (rpsinz .LT. re) ) THEN - nid(i) = -1 - ELSE - -! -! Find index of layer in which the screening height lies -! - id = i - IF( zen .GT. 90.0 ) THEN - DO 10 j = 1, nlayer - IF( (rpsinz .LT. ( zd(j-1) + re ) ) .AND. & - & (rpsinz .GE. ( zd(j) + re )) ) id = j - 10 CONTINUE - END IF - - DO 20 j = 1, id - - sm = 1.0 - IF(j .EQ. id .AND. id .EQ. i .AND. zen .GT. 90.0) & - & sm = -1.0 - - rj = re + zd(j-1) - rjp1 = re + zd(j) - - dhj = zd(j-1) - zd(j) - - ga = rj*rj - rpsinz*rpsinz - gb = rjp1*rjp1 - rpsinz*rpsinz - IF (ga .LT. 0.0) ga = 0.0 - IF (gb .LT. 0.0) gb = 0.0 - - IF(id.GT.i .AND. j.EQ.id) THEN - dsj = SQRT( ga ) - ELSE - dsj = SQRT( ga ) - sm*SQRT( gb ) - END IF - dsdh(i,j) = dsj / dhj - - 20 CONTINUE - - nid(i) = id - - END IF - - 100 CONTINUE - - - IF (LHOOK) CALL DR_HOOK('SPHERS',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SPHERS diff --git a/src/arome/chem/internals/sto2xs.F b/src/arome/chem/internals/sto2xs.F deleted file mode 100644 index 48761a85a0e87ae185c8e5d56f9f16df2a49eef5..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sto2xs.F +++ /dev/null @@ -1,81 +0,0 @@ -! ######spl - SUBROUTINE sto2xs(nz,nw,xso2,nj,sq) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! calling parameters - - INTEGER nz, nw - REAL xso2(kz,kw) - INTEGER nj - REAL sq(kj,kz,kw) - -! local - - REAL qy - INTEGER iw, iz -!______________________________________________________________________________ - -! quantum yield assumed to be unity - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('STO2XS',0,ZHOOK_HANDLE) - qy = 1. - -! assign cross section values at all wavelengths and at all altitudes - DO iw = 1, nw-1 - DO iz = 1, nz - sq(nj,iz,iw) = qy * xso2(iz,iw) - ENDDO - ENDDO -!______________________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('STO2XS',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE STO2XS diff --git a/src/arome/chem/internals/sundis.F b/src/arome/chem/internals/sundis.F deleted file mode 100644 index 64ea230d177baf4f74103dbe98c44a7887ffcc36..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/sundis.F +++ /dev/null @@ -1,69 +0,0 @@ -! ######spl - SUBROUTINE sundis(idate,esrm2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - INTEGER idate - -! output: - REAL esrm2 - -! internal: - INTEGER iyear, imonth, iday, mday, month, jday - REAL dayn, thet0 - REAL sinth, costh, sin2th, cos2th - INTEGER imn(12) - - REAL pi - PARAMETER(pi=3.1415926535898) -!_______________________________________________________________________ - - DATA imn/31,28,31,30,31,30,31,31,30,31,30,31/ -!_______________________________________________________________________ - -! parse date to find day number (Julian day) - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SUNDIS',0,ZHOOK_HANDLE) - iyear = int(idate/10000) - imonth = int( (idate-10000*iyear)/100 ) - iday = idate - (10000*iyear + 100*imonth) - IF ( MOD(iyear,4) .EQ. 0) THEN - imn(2) = 29 - ELSE - imn(2) = 28 - ENDIF - - mday = 0 - DO 12, month = 1, imonth-1 - mday = mday + imn(month) - 12 CONTINUE - jday = mday + iday - dayn = FLOAT(jday - 1) + 0.5 - -! define angular day number and compute esrm2: - - thet0 = 2.*pi*dayn/365. - -! calculate SIN(2*thet0), COS(2*thet0) from -! addition theoremes for trig functions for better -! performance; the computation of sin2th, cos2th -! is about 5-6 times faster than the evaluation -! of the intrinsic functions SIN and COS -! - sinth = SIN(thet0) - costh = COS(thet0) - sin2th = 2.*sinth*costh - cos2th = costh*costh - sinth*sinth - esrm2 = 1.000110 + & - & 0.034221*costh + 0.001280*sinth + & - & 0.000719*cos2th + 0.000077*sin2th -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('SUNDIS',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SUNDIS diff --git a/src/arome/chem/internals/svhin.F b/src/arome/chem/internals/svhin.F deleted file mode 100644 index 645b994f0b3410e2d498dd3078294ad97fa4b5dc..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svhin.F +++ /dev/null @@ -1,150 +0,0 @@ -! ######spl - SUBROUTINE SVHIN (N, T0, Y0, YDOT, F, RPAR, IPAR, TOUT, UROUND, & - & EWT, ITOL, ATOL, Y, TEMP, H0, NITER, IER, KMI, KINDEX) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################################### - EXTERNAL F - REAL T0, Y0, YDOT, RPAR, TOUT, UROUND, EWT, ATOL, Y, & - & TEMP, H0 - INTEGER N, IPAR, ITOL, NITER, IER - DIMENSION Y0(*), YDOT(*), EWT(*), ATOL(*), Y(*), & - & TEMP(*), RPAR(*), IPAR(*) - INTEGER KMI, KINDEX -!----------------------------------------------------------------------- -! Call sequence input -- N, T0, Y0, YDOT, F, RPAR, IPAR, TOUT, UROUND, -! EWT, ITOL, ATOL, Y, TEMP -! Call sequence output -- H0, NITER, IER -! COMMON block variables accessed -- None -! -! Subroutines called by SVHIN.. F -! Function routines called by SVHIN.. SVNORM -!----------------------------------------------------------------------- -! This routine computes the step size, H0, to be attempted on the -! first step, when the user has not supplied a value for this. -! -! First we check that TOUT - T0 differs significantly from zero. Then -! an iteration is done to approximate the initial second derivative -! and this is used to define h from w.r.m.s.norm(h**2 * yddot / 2) = 1. -! A bias factor of 1/2 is applied to the resulting h. -! The sign of H0 is inferred from the initial values of TOUT and T0. -! -! Communication with SVHIN is done with the following variables.. -! -! N = Size of ODE system, input. -! T0 = Initial value of independent variable, input. -! Y0 = Vector of initial conditions, input. -! YDOT = Vector of initial first derivatives, input. -! F = Name of subroutine for right-hand side f(t,y), input. -! RPAR, IPAR = Dummy names for user's real and integer work arrays. -! TOUT = First output value of independent variable -! UROUND = Machine unit roundoff -! EWT, ITOL, ATOL = Error weights and tolerance parameters -! as described in the driver routine, input. -! Y, TEMP = Work arrays of length N. -! H0 = Step size to be attempted, output. -! NITER = Number of iterations (and of f evaluations) to compute H0, -! output. -! IER = The error flag, returned with the value -! IER = 0 if no trouble occurred, or -! IER = -1 if TOUT and T0 are considered too close to proceed. -!----------------------------------------------------------------------- -! -! Type declarations for local variables -------------------------------- -! - REAL AFI, ATOLI, DELYI, HALF, HG, HLB, HNEW, HRAT, & - & HUB, HUN, PT1, T1, TDIST, TROUND, TWO, YDDNRM - INTEGER I, ITER -! -! Type declaration for function subroutines called --------------------- -! - REAL SVNORM -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE HALF, HUN, PT1, TWO - DATA HALF /0.5E0/, HUN /100.0E0/, PT1 /0.1E0/, TWO /2.0E0/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVHIN',0,ZHOOK_HANDLE) - NITER = 0 - TDIST = ABS(TOUT - T0) - TROUND = UROUND*MAX(ABS(T0),ABS(TOUT)) - IF (TDIST .LT. TWO*TROUND) GO TO 100 -! -! Set a lower bound on h based on the roundoff level in T0 and TOUT. --- - HLB = HUN*TROUND -! Set an upper bound on h based on TOUT-T0 and the initial Y and YDOT. - - HUB = PT1*TDIST - ATOLI = ATOL(1) - DO 10 I = 1, N - IF (ITOL .EQ. 2 .OR. ITOL .EQ. 4) ATOLI = ATOL(I) - DELYI = PT1*ABS(Y0(I)) + ATOLI - AFI = ABS(YDOT(I)) - IF (AFI*HUB .GT. DELYI) HUB = DELYI/AFI - 10 CONTINUE -! -! Set initial guess for h as geometric mean of upper and lower bounds. - - ITER = 0 - HG = SQRT(HLB*HUB) -! If the bounds have crossed, exit with the mean value. ---------------- - IF (HUB .LT. HLB) THEN - H0 = HG - GO TO 90 - ENDIF -! -! Looping point for iteration. ----------------------------------------- - 50 CONTINUE -! Estimate the second derivative as a difference quotient in f. -------- - T1 = T0 + HG - DO 60 I = 1, N - 60 Y(I) = Y0(I) + HG*YDOT(I) -! -!*UPG*MNH -! - CALL F (N, T1, Y, TEMP, RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - DO 70 I = 1, N - 70 TEMP(I) = (TEMP(I) - YDOT(I))/HG - YDDNRM = SVNORM (N, TEMP, EWT) -! Get the corresponding new value of h. -------------------------------- - IF (YDDNRM*HUB*HUB .GT. TWO) THEN - HNEW = SQRT(TWO/YDDNRM) - ELSE - HNEW = SQRT(HG*HUB) - ENDIF - ITER = ITER + 1 -!----------------------------------------------------------------------- -! Test the stopping conditions. -! Stop if the new and previous h values differ by a factor of .lt. 2. -! Stop if four iterations have been done. Also, stop with previous h -! if HNEW/HG .gt. 2 after first iteration, as this probably means that -! the second derivative value is bad because of cancellation error. -!----------------------------------------------------------------------- - IF (ITER .GE. 4) GO TO 80 - HRAT = HNEW/HG - IF ( (HRAT .GT. HALF) .AND. (HRAT .LT. TWO) ) GO TO 80 - IF ( (ITER .GE. 2) .AND. (HNEW .GT. TWO*HG) ) THEN - HNEW = HG - GO TO 80 - ENDIF - HG = HNEW - GO TO 50 -! -! Iteration done. Apply bounds, bias factor, and sign. Then exit. ---- - 80 H0 = HNEW*HALF - IF (H0 .LT. HLB) H0 = HLB - IF (H0 .GT. HUB) H0 = HUB - 90 H0 = SIGN(H0, TOUT - T0) - NITER = ITER - IER = 0 - IF (LHOOK) CALL DR_HOOK('SVHIN',1,ZHOOK_HANDLE) - RETURN -! Error return for TOUT - T0 too small. -------------------------------- - 100 IER = -1 - IF (LHOOK) CALL DR_HOOK('SVHIN',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVHIN diff --git a/src/arome/chem/internals/svindy.F b/src/arome/chem/internals/svindy.F deleted file mode 100644 index e354c105d1b6cb8dba830c779e4969050f3c07bf..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svindy.F +++ /dev/null @@ -1,133 +0,0 @@ -! ######spl - SUBROUTINE SVINDY (T, K, YH, LDYH, DKY, IFLAG) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################## - REAL T, YH, DKY - INTEGER K, LDYH, IFLAG - DIMENSION YH(LDYH,*), DKY(*) -!----------------------------------------------------------------------- -! Call sequence input -- T, K, YH, LDYH -! Call sequence output -- DKY, IFLAG -! COMMON block variables accessed.. -! /SVOD01/ -- H, TN, UROUND, L, N, NQ -! /SVOD02/ -- HU -! -! Subroutines called by SVINDY.. SSCAL, XERRWV -! Function routines called by SVINDY.. None -!----------------------------------------------------------------------- -! SVINDY computes interpolated values of the K-th derivative of the -! dependent variable vector y, and stores it in DKY. This routine -! is called within the package with K = 0 and T = TOUT, but may -! also be called by the user for any K up to the current order. -! (See detailed instructions in the usage documentation.) -!----------------------------------------------------------------------- -! The computed values in DKY are gotten by interpolation using the -! Nordsieck history array YH. This array corresponds uniquely to a -! vector-valued polynomial of degree NQCUR or less, and DKY is set -! to the K-th derivative of this polynomial at T. -! The formula for DKY is.. -! q -! DKY(i) = sum c(j,K) * (T - TN)**(j-K) * H**(-j) * YH(i,j+1) -! j=K -! where c(j,K) = j*(j-1)*...*(j-K+1), q = NQCUR, TN = TCUR, H = HCUR. -! The quantities NQ = NQCUR, L = NQ+1, N, TN, and H are -! communicated by COMMON. The above sum is done in reverse order. -! IFLAG is returned negative if either K or T is out of bounds. -! -! Discussion above and comments in driver explain all variables. -!----------------------------------------------------------------------- -! -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for labeled COMMON block SVOD02 -------------------- -! - REAL HU - INTEGER NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! -! Type declarations for local variables -------------------------------- -! - REAL C, HUN, R, S, TFUZZ, TN1, TP, ZERO - INTEGER I, IC, J, JB, JB2, JJ, JJ1, JP1 - CHARACTER*80 MSG -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE HUN, ZERO -! - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH - COMMON /SVOD02/ HU, NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! - DATA HUN /100.0E0/, ZERO /0.0E0/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVINDY',0,ZHOOK_HANDLE) - IFLAG = 0 - IF (K .LT. 0 .OR. K .GT. NQ) GO TO 80 - TFUZZ = HUN*UROUND*(TN + HU) - TP = TN - HU - TFUZZ - TN1 = TN + TFUZZ - IF ((T-TP)*(T-TN1) .GT. ZERO) GO TO 90 -! - S = (T - TN)/H - IC = 1 - IF (K .EQ. 0) GO TO 15 - JJ1 = L - K - DO 10 JJ = JJ1, NQ - 10 IC = IC*JJ - 15 C = REAL(IC) - DO 20 I = 1, N - 20 DKY(I) = C*YH(I,L) - IF (K .EQ. NQ) GO TO 55 - JB2 = NQ - K - DO 50 JB = 1, JB2 - J = NQ - JB - JP1 = J + 1 - IC = 1 - IF (K .EQ. 0) GO TO 35 - JJ1 = JP1 - K - DO 30 JJ = JJ1, J - 30 IC = IC*JJ - 35 C = REAL(IC) - DO 40 I = 1, N - 40 DKY(I) = C*YH(I,JP1) + S*DKY(I) - 50 CONTINUE - IF (K .EQ. 0) THEN - IF (LHOOK) CALL DR_HOOK('SVINDY',1,ZHOOK_HANDLE) - RETURN - ENDIF - 55 R = H**(-K) - CALL SSCAL (N, R, DKY, 1) - IF (LHOOK) CALL DR_HOOK('SVINDY',1,ZHOOK_HANDLE) - RETURN -! - 80 MSG = 'SVINDY-- K (=I1) illegal ' - CALL XERRWV (MSG, 30, 51, 1, 1, K, 0, 0, ZERO, ZERO) - IFLAG = -1 - IF (LHOOK) CALL DR_HOOK('SVINDY',1,ZHOOK_HANDLE) - RETURN - 90 MSG = 'SVINDY-- T (=R1) illegal ' - CALL XERRWV (MSG, 30, 52, 1, 0, 0, 0, 1, T, ZERO) - MSG=' T not in interval TCUR - HU (= R1) to TCUR (=R2) ' - CALL XERRWV (MSG, 60, 52, 1, 0, 0, 0, 2, TP, TN) - IFLAG = -2 - IF (LHOOK) CALL DR_HOOK('SVINDY',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVINDY diff --git a/src/arome/chem/internals/svjac.F b/src/arome/chem/internals/svjac.F deleted file mode 100644 index 40397a940fe6af2323891c309e6e2a7a809d45b0..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svjac.F +++ /dev/null @@ -1,318 +0,0 @@ -! ######spl - SUBROUTINE SVJAC (Y, YH, LDYH, EWT, FTEM, SAVF, WM, IWM, F, JAC, & - & IERPJ, RPAR, IPAR, KMI, KINDEX) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################################################ - EXTERNAL F, JAC - REAL Y, YH, EWT, FTEM, SAVF, WM, RPAR - INTEGER LDYH, IWM, IERPJ, IPAR - DIMENSION Y(*), YH(LDYH,*), EWT(*), FTEM(*), SAVF(*), & - & WM(*), IWM(*), RPAR(*), IPAR(*) - INTEGER KMI, KINDEX -!----------------------------------------------------------------------- -! Call sequence input -- Y, YH, LDYH, EWT, FTEM, SAVF, WM, IWM, -! F, JAC, RPAR, IPAR -! Call sequence output -- WM, IWM, IERPJ -! COMMON block variables accessed.. -! /SVOD01/ CCMXJ, DRC, H, RL1, TN, UROUND, ICF, JCUR, LOCJS, -! MSBJ, NSLJ -! /SVOD02/ NFE, NST, NJE, NLU -! -! Subroutines called by SVJAC.. F, JAC, SACOPY, CH_SCOPY, SGBFA, SGEFA, -! SSCAL -! Function routines called by SVJAC.. SVNORM -!----------------------------------------------------------------------- -! SVJAC is called by SVSTEP to compute and process the matrix -! P = I - h*rl1*J , where J is an approximation to the Jacobian. -! Here J is computed by the user-supplied routine JAC if -! MITER = 1 or 4, or by finite differencing if MITER = 2, 3, or 5. -! If MITER = 3, a diagonal approximation to J is used. -! If JSV = -1, J is computed from scratch in all cases. -! If JSV = 1 and MITER = 1, 2, 4, or 5, and if the saved value of J is -! considered acceptable, then P is constructed from the saved J. -! J is stored in wm and replaced by P. If MITER .ne. 3, P is then -! subjected to LU decomposition in preparation for later solution -! of linear systems with P as coefficient matrix. This is done -! by SGEFA if MITER = 1 or 2, and by SGBFA if MITER = 4 or 5. -! -! Communication with SVJAC is done with the following variables. (For -! more details, please see the comments in the driver subroutine.) -! Y = Vector containing predicted values on entry. -! YH = The Nordsieck array, an LDYH by LMAX array, input. -! LDYH = A constant .ge. N, the first dimension of YH, input. -! EWT = An error weight vector of length N. -! SAVF = Array containing f evaluated at predicted y, input. -! WM = Real work space for matrices. In the output, it containS -! the inverse diagonal matrix if MITER = 3 and the LU -! decomposition of P if MITER is 1, 2 , 4, or 5. -! Storage of matrix elements starts at WM(3). -! Storage of the saved Jacobian starts at WM(LOCJS). -! WM also contains the following matrix-related data.. -! WM(1) = SQRT(UROUND), used in numerical Jacobian step. -! WM(2) = H*RL1, saved for later use if MITER = 3. -! IWM = Integer work space containing pivot information, -! starting at IWM(31), if MITER is 1, 2, 4, or 5. -! IWM also contains band parameters ML = IWM(1) and -! MU = IWM(2) if MITER is 4 or 5. -! F = Dummy name for the user supplied subroutine for f. -! JAC = Dummy name for the user supplied Jacobian subroutine. -! RPAR, IPAR = Dummy names for user's real and integer work arrays. -! RL1 = 1/EL(2) (input). -! IERPJ = Output error flag, = 0 if no trouble, 1 if the P -! matrix is found to be singular. -! JCUR = Output flag to indicate whether the Jacobian matrix -! (or approximation) is now current. -! JCUR = 0 means J is not current. -! JCUR = 1 means J is current. -!----------------------------------------------------------------------- -! -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for labeled COMMON block SVOD02 -------------------- -! - REAL HU - INTEGER NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! -! Type declarations for local variables -------------------------------- -! - REAL CON, DI, FAC, HRL1, ONE, PT1, R, R0, SRUR, THOU, & - & YI, YJ, YJJ, ZERO - INTEGER I, I1, I2, IER, II, J, J1, JJ, JOK, LENP, MBA, MBAND, & - & MEB1, MEBAND, ML, ML3, MU, NP1 -! -! Type declaration for function subroutines called --------------------- -! - REAL SVNORM -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this subroutine. -!----------------------------------------------------------------------- - SAVE ONE, PT1, THOU, ZERO -!----------------------------------------------------------------------- - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH - COMMON /SVOD02/ HU, NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! - DATA ONE /1.0E0/, THOU /1000.0E0/, ZERO /0.0E0/, PT1 /0.1E0/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVJAC',0,ZHOOK_HANDLE) - IERPJ = 0 - HRL1 = H*RL1 -! See whether J should be evaluated (JOK = -1) or not (JOK = 1). ------- - JOK = JSV - IF (JSV .EQ. 1) THEN - IF (NST .EQ. 0 .OR. NST .GT. NSLJ+MSBJ) JOK = -1 - IF (ICF .EQ. 1 .AND. DRC .LT. CCMXJ) JOK = -1 - IF (ICF .EQ. 2) JOK = -1 - ENDIF -! End of setting JOK. -------------------------------------------------- -! - IF (JOK .EQ. -1 .AND. MITER .EQ. 1) THEN -! If JOK = -1 and MITER = 1, call JAC to evaluate Jacobian. ------------ - NJE = NJE + 1 - NSLJ = NST - JCUR = 1 - LENP = N*N - DO 110 I = 1,LENP - 110 WM(I+2) = ZERO -! -!*UPG*MNH -! - CALL JAC (N, TN, Y, 0, 0, WM(3), N, RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - IF (JSV .EQ. 1) CALL CH_SCOPY (LENP, WM(3), 1, WM(LOCJS), 1) - ENDIF -! - IF (JOK .EQ. -1 .AND. MITER .EQ. 2) THEN -! If MITER = 2, make N calls to F to approximate the Jacobian. --------- - NJE = NJE + 1 - NSLJ = NST - JCUR = 1 - FAC = SVNORM (N, SAVF, EWT) - R0 = THOU*ABS(H)*UROUND*REAL(N)*FAC - IF (R0 .EQ. ZERO) R0 = ONE - SRUR = WM(1) - J1 = 2 - DO 230 J = 1,N - YJ = Y(J) - R = MAX(SRUR*ABS(YJ),R0/EWT(J)) - Y(J) = Y(J) + R - FAC = ONE/R -! -!*UPG*MNH -! - CALL F (N, TN, Y, FTEM, RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - DO 220 I = 1,N - 220 WM(I+J1) = (FTEM(I) - SAVF(I))*FAC - Y(J) = YJ - J1 = J1 + N - 230 CONTINUE - NFE = NFE + N - LENP = N*N - IF (JSV .EQ. 1) CALL CH_SCOPY (LENP, WM(3), 1, WM(LOCJS), 1) - ENDIF -! - IF (JOK .EQ. 1 .AND. (MITER .EQ. 1 .OR. MITER .EQ. 2)) THEN - JCUR = 0 - LENP = N*N - CALL CH_SCOPY (LENP, WM(LOCJS), 1, WM(3), 1) - ENDIF -! - IF (MITER .EQ. 1 .OR. MITER .EQ. 2) THEN -! Multiply Jacobian by scalar, add identity, and do LU decomposition. -- - CON = -HRL1 - CALL SSCAL (LENP, CON, WM(3), 1) - J = 3 - NP1 = N + 1 - DO 250 I = 1,N - WM(J) = WM(J) + ONE - 250 J = J + NP1 - NLU = NLU + 1 - CALL SGEFA (WM(3), N, N, IWM(31), IER) - IF (IER .NE. 0) IERPJ = 1 - IF (LHOOK) CALL DR_HOOK('SVJAC',1,ZHOOK_HANDLE) - RETURN - ENDIF -! End of code block for MITER = 1 or 2. -------------------------------- -! - IF (MITER .EQ. 3) THEN -! If MITER = 3, construct a diagonal approximation to J and P. --------- - NJE = NJE + 1 - JCUR = 1 - WM(2) = HRL1 - R = RL1*PT1 - DO 310 I = 1,N - 310 Y(I) = Y(I) + R*(H*SAVF(I) - YH(I,2)) -! -!*UPG*MNH -! - CALL F (N, TN, Y, WM(3), RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - NFE = NFE + 1 - DO 320 I = 1,N - R0 = H*SAVF(I) - YH(I,2) - DI = PT1*R0 - H*(WM(I+2) - SAVF(I)) - WM(I+2) = ONE - IF (ABS(R0) .LT. UROUND/EWT(I)) GO TO 320 - IF (ABS(DI) .EQ. ZERO) GO TO 330 - WM(I+2) = PT1*R0/DI - 320 CONTINUE - IF (LHOOK) CALL DR_HOOK('SVJAC',1,ZHOOK_HANDLE) - RETURN - 330 IERPJ = 1 - IF (LHOOK) CALL DR_HOOK('SVJAC',1,ZHOOK_HANDLE) - RETURN - ENDIF -! End of code block for MITER = 3. ------------------------------------- -! -! Set constants for MITER = 4 or 5. ------------------------------------ - ML = IWM(1) - MU = IWM(2) - ML3 = ML + 3 - MBAND = ML + MU + 1 - MEBAND = MBAND + ML - LENP = MEBAND*N -! - IF (JOK .EQ. -1 .AND. MITER .EQ. 4) THEN -! If JOK = -1 and MITER = 4, call JAC to evaluate Jacobian. ------------ - NJE = NJE + 1 - NSLJ = NST - JCUR = 1 - DO 410 I = 1,LENP - 410 WM(I+2) = ZERO -! -!*UPG*MNH -! - CALL JAC (N, TN, Y, ML, MU, WM(ML3), MEBAND, RPAR, IPAR, & - & KMI, KINDEX) -! -!*UPG*MNH -! - IF (JSV .EQ. 1) & - & CALL SACOPY (MBAND, N, WM(ML3), MEBAND, WM(LOCJS), MBAND) - ENDIF -! - IF (JOK .EQ. -1 .AND. MITER .EQ. 5) THEN -! If MITER = 5, make N calls to F to approximate the Jacobian. --------- - NJE = NJE + 1 - NSLJ = NST - JCUR = 1 - MBA = MIN(MBAND,N) - MEB1 = MEBAND - 1 - SRUR = WM(1) - FAC = SVNORM (N, SAVF, EWT) - R0 = THOU*ABS(H)*UROUND*REAL(N)*FAC - IF (R0 .EQ. ZERO) R0 = ONE - DO 560 J = 1,MBA - DO 530 I = J,N,MBAND - YI = Y(I) - R = MAX(SRUR*ABS(YI),R0/EWT(I)) - 530 Y(I) = Y(I) + R -! -!*UPG*MNH -! - CALL F (N, TN, Y, FTEM, RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - DO 550 JJ = J,N,MBAND - Y(JJ) = YH(JJ,1) - YJJ = Y(JJ) - R = MAX(SRUR*ABS(YJJ),R0/EWT(JJ)) - FAC = ONE/R - I1 = MAX(JJ-MU,1) - I2 = MIN(JJ+ML,N) - II = JJ*MEB1 - ML + 2 - DO 540 I = I1,I2 - 540 WM(II+I) = (FTEM(I) - SAVF(I))*FAC - 550 CONTINUE - 560 CONTINUE - NFE = NFE + MBA - IF (JSV .EQ. 1) & - & CALL SACOPY (MBAND, N, WM(ML3), MEBAND, WM(LOCJS), MBAND) - ENDIF -! - IF (JOK .EQ. 1) THEN - JCUR = 0 - CALL SACOPY (MBAND, N, WM(LOCJS), MBAND, WM(ML3), MEBAND) - ENDIF -! -! Multiply Jacobian by scalar, add identity, and do LU decomposition. - CON = -HRL1 - CALL SSCAL (LENP, CON, WM(3), 1 ) - II = MBAND + 2 - DO 580 I = 1,N - WM(II) = WM(II) + ONE - 580 II = II + MEBAND - NLU = NLU + 1 - CALL SGBFA (WM(3), MEBAND, N, ML, MU, IWM(31), IER) - IF (IER .NE. 0) IERPJ = 1 - IF (LHOOK) CALL DR_HOOK('SVJAC',1,ZHOOK_HANDLE) - RETURN -! End of code block for MITER = 4 or 5. -------------------------------- -! - END SUBROUTINE SVJAC diff --git a/src/arome/chem/internals/svjust.F b/src/arome/chem/internals/svjust.F deleted file mode 100644 index b67ca222e492dccd3234fb9ba4404ad1bdb92e26..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svjust.F +++ /dev/null @@ -1,171 +0,0 @@ -! ######spl - SUBROUTINE SVJUST (YH, LDYH, IORD) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################## - REAL YH - INTEGER LDYH, IORD - DIMENSION YH(LDYH,*) -!----------------------------------------------------------------------- -! Call sequence input -- YH, LDYH, IORD -! Call sequence output -- YH -! COMMON block input -- NQ, METH, LMAX, HSCAL, TAU(13), N -! COMMON block variables accessed.. -! /SVOD01/ -- HSCAL, TAU(13), LMAX, METH, N, NQ, -! -! Subroutines called by SVJUST.. SAXPY -! Function routines called by SVJUST.. None -!----------------------------------------------------------------------- -! This subroutine adjusts the YH array on reduction of order, -! and also when the order is increased for the stiff option (METH = 2). -! Communication with SVJUST uses the following.. -! IORD = An integer flag used when METH = 2 to indicate an order -! increase (IORD = +1) or an order decrease (IORD = -1). -! HSCAL = Step size H used in scaling of Nordsieck array YH. -! (If IORD = +1, SVJUST assumes that HSCAL = TAU(1).) -! See References 1 and 2 for details. -!----------------------------------------------------------------------- -! -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for local variables -------------------------------- -! - REAL ALPH0, ALPH1, HSUM, ONE, PROD, T1, XI,XIOLD, ZERO - INTEGER I, IBACK, J, JP1, LP1, NQM1, NQM2, NQP1 -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE ONE, ZERO -! - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! - DATA ONE /1.0E0/, ZERO /0.0E0/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVJUST',0,ZHOOK_HANDLE) - IF ((NQ .EQ. 2) .AND. (IORD .NE. 1)) THEN - IF (LHOOK) CALL DR_HOOK('SVJUST',1,ZHOOK_HANDLE) - RETURN - ENDIF - NQM1 = NQ - 1 - NQM2 = NQ - 2 - GO TO (100, 200), METH -!----------------------------------------------------------------------- -! Nonstiff option... -! Check to see if the order is being increased or decreased. -!----------------------------------------------------------------------- - 100 CONTINUE - IF (IORD .EQ. 1) GO TO 180 -! Order decrease. ------------------------------------------------------ - DO 110 J = 1, LMAX - 110 EL(J) = ZERO - EL(2) = ONE - HSUM = ZERO - DO 130 J = 1, NQM2 -! Construct coefficients of x*(x+xi(1))*...*(x+xi(j)). ----------------- - HSUM = HSUM + TAU(J) - XI = HSUM/HSCAL - JP1 = J + 1 - DO 120 IBACK = 1, JP1 - I = (J + 3) - IBACK - 120 EL(I) = EL(I)*XI + EL(I-1) - 130 CONTINUE -! Construct coefficients of integrated polynomial. --------------------- - DO 140 J = 2, NQM1 - 140 EL(J+1) = REAL(NQ)*EL(J)/REAL(J) -! Subtract correction terms from YH array. ----------------------------- - DO 170 J = 3, NQ - DO 160 I = 1, N - 160 YH(I,J) = YH(I,J) - YH(I,L)*EL(J) - 170 CONTINUE - IF (LHOOK) CALL DR_HOOK('SVJUST',1,ZHOOK_HANDLE) - RETURN -! Order increase. ------------------------------------------------------ -! Zero out next column in YH array. ------------------------------------ - 180 CONTINUE - LP1 = L + 1 - DO 190 I = 1, N - 190 YH(I,LP1) = ZERO - IF (LHOOK) CALL DR_HOOK('SVJUST',1,ZHOOK_HANDLE) - RETURN -!----------------------------------------------------------------------- -! Stiff option... -! Check to see if the order is being increased or decreased. -!----------------------------------------------------------------------- - 200 CONTINUE - IF (IORD .EQ. 1) GO TO 300 -! Order decrease. ------------------------------------------------------ - DO 210 J = 1, LMAX - 210 EL(J) = ZERO - EL(3) = ONE - HSUM = ZERO - DO 230 J = 1,NQM2 -! Construct coefficients of x*x*(x+xi(1))*...*(x+xi(j)). --------------- - HSUM = HSUM + TAU(J) - XI = HSUM/HSCAL - JP1 = J + 1 - DO 220 IBACK = 1, JP1 - I = (J + 4) - IBACK - 220 EL(I) = EL(I)*XI + EL(I-1) - 230 CONTINUE -! Subtract correction terms from YH array. ----------------------------- - DO 250 J = 3,NQ - DO 240 I = 1, N - 240 YH(I,J) = YH(I,J) - YH(I,L)*EL(J) - 250 CONTINUE - IF (LHOOK) CALL DR_HOOK('SVJUST',1,ZHOOK_HANDLE) - RETURN -! Order increase. ------------------------------------------------------ - 300 DO 310 J = 1, LMAX - 310 EL(J) = ZERO - EL(3) = ONE - ALPH0 = -ONE - ALPH1 = ONE - PROD = ONE - XIOLD = ONE - HSUM = HSCAL - IF (NQ .EQ. 1) GO TO 340 - DO 330 J = 1, NQM1 -! Construct coefficients of x*x*(x+xi(1))*...*(x+xi(j)). --------------- - JP1 = J + 1 - HSUM = HSUM + TAU(JP1) - XI = HSUM/HSCAL - PROD = PROD*XI - ALPH0 = ALPH0 - ONE/REAL(JP1) - ALPH1 = ALPH1 + ONE/XI - DO 320 IBACK = 1, JP1 - I = (J + 4) - IBACK - 320 EL(I) = EL(I)*XIOLD + EL(I-1) - XIOLD = XI - 330 CONTINUE - 340 CONTINUE - T1 = (-ALPH0 - ALPH1)/PROD -! Load column L + 1 in YH array. --------------------------------------- - LP1 = L + 1 - DO 350 I = 1, N - 350 YH(I,LP1) = T1*YH(I,LMAX) -! Add correction terms to YH array. ------------------------------------ - NQP1 = NQ + 1 - DO 370 J = 3, NQP1 - CALL SAXPY (N, EL(J), YH(1,LP1), 1, YH(1,J), 1 ) - 370 CONTINUE - IF (LHOOK) CALL DR_HOOK('SVJUST',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVJUST diff --git a/src/arome/chem/internals/svnlsd.F b/src/arome/chem/internals/svnlsd.F deleted file mode 100644 index 842301806ab9bff60877e471c0d49ad1a32637c3..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svnlsd.F +++ /dev/null @@ -1,248 +0,0 @@ -! ######spl - SUBROUTINE SVNLSD (Y, YH, LDYH, VSAV, SAVF, EWT, ACOR, IWM, WM, & - & F, JAC, PDUM, NFLAG, RPAR, IPAR, KMI, KINDEX) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################################################### - EXTERNAL F, JAC, PDUM - REAL Y, YH, VSAV, SAVF, EWT, ACOR, WM, RPAR - INTEGER LDYH, IWM, NFLAG, IPAR - DIMENSION Y(*), YH(LDYH,*), VSAV(*), SAVF(*), EWT(*), ACOR(*), & - & IWM(*), WM(*), RPAR(*), IPAR(*) - INTEGER KMI,KINDEX -!----------------------------------------------------------------------- -! Call sequence input -- Y, YH, LDYH, SAVF, EWT, ACOR, IWM, WM, -! F, JAC, NFLAG, RPAR, IPAR -! Call sequence output -- YH, ACOR, WM, IWM, NFLAG -! COMMON block variables accessed.. -! /SVOD01/ ACNRM, CRATE, DRC, H, RC, RL1, TQ(5), TN, ICF, -! JCUR, METH, MITER, N, NSLP -! /SVOD02/ HU, NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! -! Subroutines called by SVNLSD.. F, SAXPY, CH_SCOPY, SSCAL, SVJAC, SVSOL -! Function routines called by SVNLSD.. SVNORM -!----------------------------------------------------------------------- -! Subroutine SVNLSD is a nonlinear system solver, which uses functional -! iteration or a chord (modified Newton) method. For the chord method -! direct linear algebraic system solvers are used. Subroutine SVNLSD -! then handles the corrector phase of this integration package. -! -! Communication with SVNLSD is done with the following variables. (For -! more details, please see the comments in the driver subroutine.) -! -! Y = The dependent variable, a vector of length N, input. -! YH = The Nordsieck (Taylor) array, LDYH by LMAX, input -! and output. On input, it contains predicted values. -! LDYH = A constant .ge. N, the first dimension of YH, input. -! VSAV = Unused work array. -! SAVF = A work array of length N. -! EWT = An error weight vector of length N, input. -! ACOR = A work array of length N, used for the accumulated -! corrections to the predicted y vector. -! WM,IWM = Real and integer work arrays associated with matrix -! operations in chord iteration (MITER .ne. 0). -! F = Dummy name for user supplied routine for f. -! JAC = Dummy name for user supplied Jacobian routine. -! PDUM = Unused dummy subroutine name. Included for uniformity -! over collection of integrators. -! NFLAG = Input/output flag, with values and meanings as follows.. -! INPUT -! 0 first call for this time step. -! -1 convergence failure in previous call to SVNLSD. -! -2 error test failure in SVSTEP. -! OUTPUT -! 0 successful completion of nonlinear solver. -! -1 convergence failure or singular matrix. -! -2 unrecoverable error in matrix preprocessing -! (cannot occur here). -! -3 unrecoverable error in solution (cannot occur -! here). -! RPAR, IPAR = Dummy names for user's real and integer work arrays. -! -! IPUP = Own variable flag with values and meanings as follows.. -! 0, do not update the Newton matrix. -! MITER .ne. 0, update Newton matrix, because it is the -! initial step, order was changed, the error -! test failed, or an update is indicated by -! the scalar RC or step counter NST. -! -! For more details, see comments in driver subroutine. -!----------------------------------------------------------------------- -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for labeled COMMON block SVOD02 -------------------- -! - REAL HU - INTEGER NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! -! Type declarations for local variables -------------------------------- -! - REAL CCMAX, CRDOWN, CSCALE, DCON, DEL, DELP, ONE, & - & RDIV, TWO, ZERO - INTEGER I, IERPJ, IERSL, M, MAXCOR, MSBP -! -! Type declaration for function subroutines called --------------------- -! - REAL SVNORM -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE CCMAX, CRDOWN, MAXCOR, MSBP, RDIV, ONE, TWO, ZERO -! - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH - COMMON /SVOD02/ HU, NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! - DATA CCMAX /0.3E0/, CRDOWN /0.3E0/, MAXCOR /3/, MSBP /20/, & - & RDIV /2.0E0/ - DATA ONE /1.0E0/, TWO /2.0E0/, ZERO /0.0E0/ -!----------------------------------------------------------------------- -! On the first step, on a change of method order, or after a -! nonlinear convergence failure with NFLAG = -2, set IPUP = MITER -! to force a Jacobian update when MITER .ne. 0. -!----------------------------------------------------------------------- - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVNLSD',0,ZHOOK_HANDLE) - IF (JSTART .EQ. 0) NSLP = 0 - IF (NFLAG .EQ. 0) ICF = 0 - IF (NFLAG .EQ. -2) IPUP = MITER - IF ( (JSTART .EQ. 0) .OR. (JSTART .EQ. -1) ) IPUP = MITER -! If this is functional iteration, set CRATE .eq. 1 and drop to 220 - IF (MITER .EQ. 0) THEN - CRATE = ONE - GO TO 220 - ENDIF -!----------------------------------------------------------------------- -! RC is the ratio of new to old values of the coefficient H/EL(2)=h/l1. -! When RC differs from 1 by more than CCMAX, IPUP is set to MITER -! to force SVJAC to be called, if a Jacobian is involved. -! In any case, SVJAC is called at least every MSBP steps. -!----------------------------------------------------------------------- - DRC = ABS(RC-ONE) - IF (DRC .GT. CCMAX .OR. NST .GE. NSLP+MSBP) IPUP = MITER -!----------------------------------------------------------------------- -! Up to MAXCOR corrector iterations are taken. A convergence test is -! made on the r.m.s. norm of each correction, weighted by the error -! weight vector EWT. The sum of the corrections is accumulated in the -! vector ACOR(i). The YH array is not altered in the corrector loop. -!----------------------------------------------------------------------- - 220 M = 0 - DELP = ZERO - CALL CH_SCOPY (N, YH(1,1), 1, Y, 1 ) -! -!*UPG*MNH -! - CALL F (N, TN, Y, SAVF, RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - NFE = NFE + 1 - IF (IPUP .LE. 0) GO TO 250 -!----------------------------------------------------------------------- -! If indicated, the matrix P = I - h*rl1*J is reevaluated and -! preprocessed before starting the corrector iteration. IPUP is set -! to 0 as an indicator that this has been done. -!----------------------------------------------------------------------- - CALL SVJAC (Y, YH, LDYH, EWT, ACOR, SAVF, WM, IWM, F, JAC, IERPJ, & - & RPAR, IPAR, KMI, KINDEX) - IPUP = 0 - RC = ONE - DRC = ZERO - CRATE = ONE - NSLP = NST -! If matrix is singular, take error return to force cut in step size. -- - IF (IERPJ .NE. 0) GO TO 430 - 250 DO 260 I = 1,N - 260 ACOR(I) = ZERO -! This is a looping point for the corrector iteration. ----------------- - 270 IF (MITER .NE. 0) GO TO 350 -!----------------------------------------------------------------------- -! In the case of functional iteration, update Y directly from -! the result of the last function evaluation. -!----------------------------------------------------------------------- - DO 280 I = 1,N - 280 SAVF(I) = RL1*(H*SAVF(I) - YH(I,2)) - DO 290 I = 1,N - 290 Y(I) = SAVF(I) - ACOR(I) - DEL = SVNORM (N, Y, EWT) - DO 300 I = 1,N - 300 Y(I) = YH(I,1) + SAVF(I) - CALL CH_SCOPY (N, SAVF, 1, ACOR, 1) - GO TO 400 -!----------------------------------------------------------------------- -! In the case of the chord method, compute the corrector error, -! and solve the linear system with that as right-hand side and -! P as coefficient matrix. The correction is scaled by the factor -! 2/(1+RC) to account for changes in h*rl1 since the last SVJAC call. -!----------------------------------------------------------------------- - 350 DO 360 I = 1,N - 360 Y(I) = (RL1*H)*SAVF(I) - (RL1*YH(I,2) + ACOR(I)) - CALL SVSOL (WM, IWM, Y, IERSL) - NNI = NNI + 1 - IF (IERSL .GT. 0) GO TO 410 - IF (METH .EQ. 2 .AND. RC .NE. ONE) THEN - CSCALE = TWO/(ONE + RC) - CALL SSCAL (N, CSCALE, Y, 1) - ENDIF - DEL = SVNORM (N, Y, EWT) - CALL SAXPY (N, ONE, Y, 1, ACOR, 1) - DO 380 I = 1,N - 380 Y(I) = YH(I,1) + ACOR(I) -!----------------------------------------------------------------------- -! Test for convergence. If M .gt. 0, an estimate of the convergence -! rate constant is stored in CRATE, and this is used in the test. -!----------------------------------------------------------------------- - 400 IF (M .NE. 0) CRATE = MAX(CRDOWN*CRATE,DEL/DELP) - DCON = DEL*MIN(ONE,CRATE)/TQ(4) - IF (DCON .LE. ONE) GO TO 450 - M = M + 1 - IF (M .EQ. MAXCOR) GO TO 410 - IF (M .GE. 2 .AND. DEL .GT. RDIV*DELP) GO TO 410 - DELP = DEL -! -!*UPG*MNH -! - CALL F (N, TN, Y, SAVF, RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - NFE = NFE + 1 - GO TO 270 -! - 410 IF (MITER .EQ. 0 .OR. JCUR .EQ. 1) GO TO 430 - ICF = 1 - IPUP = MITER - GO TO 220 -! - 430 CONTINUE - NFLAG = -1 - ICF = 2 - IPUP = MITER - IF (LHOOK) CALL DR_HOOK('SVNLSD',1,ZHOOK_HANDLE) - RETURN -! -! Return for successful step. ------------------------------------------ - 450 NFLAG = 0 - JCUR = 0 - ICF = 0 - IF (M .EQ. 0) ACNRM = DEL - IF (M .GT. 0) ACNRM = SVNORM (N, ACOR, EWT) - IF (LHOOK) CALL DR_HOOK('SVNLSD',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVNLSD diff --git a/src/arome/chem/internals/svnorm.F b/src/arome/chem/internals/svnorm.F deleted file mode 100644 index cc8c46a643755aed18f0e2fd27a3687ed57a7661..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svnorm.F +++ /dev/null @@ -1,33 +0,0 @@ -! ######spl - FUNCTION SVNORM (N, V, W) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ############################## - REAL SVNORM - REAL V, W - INTEGER N - DIMENSION V(N), W(N) -!----------------------------------------------------------------------- -! Call sequence input -- N, V, W -! Call sequence output -- None -! COMMON block variables accessed -- None -! -! Subroutines/functions called by SVNORM.. None -!----------------------------------------------------------------------- -! This function routine computes the weighted root-mean-square norm -! of the vector of length N contained in the array V, with weights -! contained in the array W of length N.. -! SVNORM = sqrt( (1/N) * sum( V(i)*W(i) )**2 ) -!----------------------------------------------------------------------- - REAL SUM - INTEGER I -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVNORM',0,ZHOOK_HANDLE) - SUM = 0.0E0 - DO 10 I = 1, N - 10 SUM = SUM + (V(I)*W(I))**2 - SVNORM = SQRT(SUM/REAL(N)) - IF (LHOOK) CALL DR_HOOK('SVNORM',1,ZHOOK_HANDLE) - RETURN - ENDFUNCTION SVNORM diff --git a/src/arome/chem/internals/svode.F b/src/arome/chem/internals/svode.F deleted file mode 100644 index 80a50d6043ddde6956f95c60aaded560ed88b084..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svode.F +++ /dev/null @@ -1,1704 +0,0 @@ -! ######spl - SUBROUTINE SVODE (F, NEQ, Y, T, TOUT, ITOL, RTOL, ATOL, ITASK, & - & ISTATE, IOPT, RWORK, LRW, IWORK, LIW, JAC, MF, & - & RPAR, IPAR, KMI, KINDEX) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! -! - EXTERNAL F, JAC - ! -! -!*UPG*MNH -! - INTEGER KMI, KINDEX -! -!*UPG*MNH -! - REAL Y, T, TOUT, RTOL, ATOL, RWORK, RPAR - INTEGER NEQ, ITOL, ITASK, ISTATE, IOPT, LRW, IWORK, LIW, & - & MF, IPAR - DIMENSION Y(*), RTOL(*), ATOL(*), RWORK(LRW), IWORK(LIW), & - & RPAR(*), IPAR(*) -!----------------------------------------------------------------------- -! SVODE.. Variable-coefficient Ordinary Differential Equation solver, -! with fixed-leading coefficient implementation. -! This version is in single precision. -! -! SVODE solves the initial value problem for stiff or nonstiff -! systems of first order ODEs, -! dy/dt = f(t,y) , or, in component form, -! dy(i)/dt = f(i) = f(i,t,y(1),y(2),...,y(NEQ)) (i = 1,...,NEQ). -! SVODE is a package based on the EPISODE and EPISODEB packages, and -! on the ODEPACK user interface standard, with minor modifications. -!----------------------------------------------------------------------- -! Revision History (YYMMDD) -! 890615 Date Written -! 890922 Added interrupt/restart ability, minor changes throughout. -! 910228 Minor revisions in line format, prologue, etc. -! 920227 Modifications by D. Pang: -! (1) Applied subgennam to get generic intrinsic names. -! (2) Changed intrinsic names to generic in comments. -! (3) Added *DECK lines before each routine. -! 920721 Names of routines and labeled Common blocks changed, so as -! to be unique in combined single/double precision code (ACH). -! 920722 Minor revisions to prologue (ACH). -!----------------------------------------------------------------------- -! References.. -! -! 1. P. N. Brown, G. D. Byrne, and A. C. Hindmarsh, "VODE: A Variable -! Coefficient ODE Solver," SIAM J. Sci. Stat. Comput., 10 (1989), -! pp. 1038-1051. Also, LLNL Report UCRL-98412, June 1988. -! 2. G. D. Byrne and A. C. Hindmarsh, "A Polyalgorithm for the -! Numerical Solution of Ordinary Differential Equations," -! ACM Trans. Math. Software, 1 (1975), pp. 71-96. -! 3. A. C. Hindmarsh and G. D. Byrne, "EPISODE: An Effective Package -! for the Integration of Systems of Ordinary Differential -! Equations," LLNL Report UCID-30112, Rev. 1, April 1977. -! 4. G. D. Byrne and A. C. Hindmarsh, "EPISODEB: An Experimental -! Package for the Integration of Systems of Ordinary Differential -! Equations with Banded Jacobians," LLNL Report UCID-30132, April -! 1976. -! 5. A. C. Hindmarsh, "ODEPACK, a Systematized Collection of ODE -! Solvers," in Scientific Computing, R. S. Stepleman et al., eds., -! North-Holland, Amsterdam, 1983, pp. 55-64. -! 6. K. R. Jackson and R. Sacks-Davis, "An Alternative Implementation -! of Variable Step-Size Multistep Formulas for Stiff ODEs," ACM -! Trans. Math. Software, 6 (1980), pp. 295-318. -!----------------------------------------------------------------------- -! Authors.. -! -! Peter N. Brown and Alan C. Hindmarsh -! Computing and Mathematics Research Division, L-316 -! Lawrence Livermore National Laboratory -! Livermore, CA 94550 -! and -! George D. Byrne -! Exxon Research and Engineering Co. -! Clinton Township -! Route 22 East -! Annandale, NJ 08801 -!----------------------------------------------------------------------- -! Summary of usage. -! -! Communication between the user and the SVODE package, for normal -! situations, is summarized here. This summary describes only a subset -! of the full set of options available. See the full description for -! details, including optional communication, nonstandard options, -! and instructions for special situations. See also the example -! problem (with program and output) following this summary. -! -! A. First provide a subroutine of the form.. -! -! SUBROUTINE F (NEQ, T, Y, YDOT, RPAR, IPAR) -! REAL T, Y, YDOT, RPAR -! DIMENSION Y(NEQ), YDOT(NEQ) -! -! which supplies the vector function f by loading YDOT(i) with f(i). -! -! B. Next determine (or guess) whether or not the problem is stiff. -! Stiffness occurs when the Jacobian matrix df/dy has an eigenvalue -! whose real part is negative and large in magnitude, compared to the -! reciprocal of the t span of interest. If the problem is nonstiff, -! use a method flag MF = 10. If it is stiff, there are four standard -! choices for MF (21, 22, 24, 25), and SVODE requires the Jacobian -! matrix in some form. In these cases (MF .gt. 0), SVODE will use a -! saved copy of the Jacobian matrix. If this is undesirable because of -! storage limitations, set MF to the corresponding negative value -! (-21, -22, -24, -25). (See full description of MF below.) -! The Jacobian matrix is regarded either as full (MF = 21 or 22), -! or banded (MF = 24 or 25). In the banded case, SVODE requires two -! half-bandwidth parameters ML and MU. These are, respectively, the -! widths of the lower and upper parts of the band, excluding the main -! diagonal. Thus the band consists of the locations (i,j) with -! i-ML .le. j .le. i+MU, and the full bandwidth is ML+MU+1. -! -! C. If the problem is stiff, you are encouraged to supply the Jacobian -! directly (MF = 21 or 24), but if this is not feasible, SVODE will -! compute it internally by difference quotients (MF = 22 or 25). -! If you are supplying the Jacobian, provide a subroutine of the form.. -! -! SUBROUTINE JAC (NEQ, T, Y, ML, MU, PD, NROWPD, RPAR, IPAR) -! REAL T, Y, PD, RPAR -! DIMENSION Y(NEQ), PD(NROWPD,NEQ) -! -! which supplies df/dy by loading PD as follows.. -! For a full Jacobian (MF = 21), load PD(i,j) with df(i)/dy(j), -! the partial derivative of f(i) with respect to y(j). (Ignore the -! ML and MU arguments in this case.) -! For a banded Jacobian (MF = 24), load PD(i-j+MU+1,j) with -! df(i)/dy(j), i.e. load the diagonal lines of df/dy into the rows of -! PD from the top down. -! In either case, only nonzero elements need be loaded. -! -! D. Write a main program which calls subroutine SVODE once for -! each point at which answers are desired. This should also provide -! for possible use of logical unit 6 for output of error messages -! by SVODE. On the first call to SVODE, supply arguments as follows.. -! F = Name of subroutine for right-hand side vector f. -! This name must be declared external in calling program. -! NEQ = Number of first order ODE-s. -! Y = Array of initial values, of length NEQ. -! T = The initial value of the independent variable. -! TOUT = First point where output is desired (.ne. T). -! ITOL = 1 or 2 according as ATOL (below) is a scalar or array. -! RTOL = Relative tolerance parameter (scalar). -! ATOL = Absolute tolerance parameter (scalar or array). -! The estimated local error in Y(i) will be controlled so as -! to be roughly less (in magnitude) than -! EWT(i) = RTOL*abs(Y(i)) + ATOL if ITOL = 1, or -! EWT(i) = RTOL*abs(Y(i)) + ATOL(i) if ITOL = 2. -! Thus the local error test passes if, in each component, -! either the absolute error is less than ATOL (or ATOL(i)), -! or the relative error is less than RTOL. -! Use RTOL = 0.0 for pure absolute error control, and -! use ATOL = 0.0 (or ATOL(i) = 0.0) for pure relative error -! control. Caution.. Actual (global) errors may exceed these -! local tolerances, so choose them conservatively. -! ITASK = 1 for normal computation of output values of Y at t = TOUT. -! ISTATE = Integer flag (input and output). Set ISTATE = 1. -! IOPT = 0 to indicate no optional input used. -! RWORK = Real work array of length at least.. -! 20 + 16*NEQ for MF = 10, -! 22 + 9*NEQ + 2*NEQ**2 for MF = 21 or 22, -! 22 + 11*NEQ + (3*ML + 2*MU)*NEQ for MF = 24 or 25. -! LRW = Declared length of RWORK (in user's DIMENSION statement). -! IWORK = Integer work array of length at least.. -! 30 for MF = 10, -! 30 + NEQ for MF = 21, 22, 24, or 25. -! If MF = 24 or 25, input in IWORK(1),IWORK(2) the lower -! and upper half-bandwidths ML,MU. -! LIW = Declared length of IWORK (in user's DIMENSION). -! JAC = Name of subroutine for Jacobian matrix (MF = 21 or 24). -! If used, this name must be declared external in calling -! program. If not used, pass a dummy name. -! MF = Method flag. Standard values are.. -! 10 for nonstiff (Adams) method, no Jacobian used. -! 21 for stiff (BDF) method, user-supplied full Jacobian. -! 22 for stiff method, internally generated full Jacobian. -! 24 for stiff method, user-supplied banded Jacobian. -! 25 for stiff method, internally generated banded Jacobian. -! RPAR,IPAR = user-defined real and integer arrays passed to F and JAC. -! Note that the main program must declare arrays Y, RWORK, IWORK, -! and possibly ATOL, RPAR, and IPAR. -! -! E. The output from the first call (or any call) is.. -! Y = Array of computed values of y(t) vector. -! T = Corresponding value of independent variable (normally TOUT). -! ISTATE = 2 if SVODE was successful, negative otherwise. -! -1 means excess work done on this call. (Perhaps wrong MF.) -! -2 means excess accuracy requested. (Tolerances too small.) -! -3 means illegal input detected. (See printed message.) -! -4 means repeated error test failures. (Check all input.) -! -5 means repeated convergence failures. (Perhaps bad -! Jacobian supplied or wrong choice of MF or tolerances.) -! -6 means error weight became zero during problem. (Solution -! component i vanished, and ATOL or ATOL(i) = 0.) -! -! F. To continue the integration after a successful return, simply -! reset TOUT and call SVODE again. No other parameters need be reset. -! -!----------------------------------------------------------------------- -! EXAMPLE PROBLEM -! -! The following is a simple example problem, with the coding -! needed for its solution by SVODE. The problem is from chemical -! kinetics, and consists of the following three rate equations.. -! dy1/dt = -.04*y1 + 1.e4*y2*y3 -! dy2/dt = .04*y1 - 1.e4*y2*y3 - 3.e7*y2**2 -! dy3/dt = 3.e7*y2**2 -! on the interval from t = 0.0 to t = 4.e10, with initial conditions -! y1 = 1.0, y2 = y3 = 0. The problem is stiff. -! -! The following coding solves this problem with SVODE, using MF = 21 -! and printing results at t = .4, 4., ..., 4.e10. It uses -! ITOL = 2 and ATOL much smaller for y2 than y1 or y3 because -! y2 has much smaller values. -! At the end of the run, statistical quantities of interest are -! printed. (See optional output in the full description below.) -! To generate Fortran source code, replace C in column 1 with a blank -! in the coding below. -! -! EXTERNAL FEX, JEX -! REAL ATOL, RPAR, RTOL, RWORK, T, TOUT, Y -! DIMENSION Y(3), ATOL(3), RWORK(67), IWORK(33) -! NEQ = 3 -! Y(1) = 1.0E0 -! Y(2) = 0.0E0 -! Y(3) = 0.0E0 -! T = 0.0E0 -! TOUT = 0.4E0 -! ITOL = 2 -! RTOL = 1.E-4 -! ATOL(1) = 1.E-8 -! ATOL(2) = 1.E-14 -! ATOL(3) = 1.E-6 -! ITASK = 1 -! ISTATE = 1 -! IOPT = 0 -! LRW = 67 -! LIW = 33 -! MF = 21 -! DO 40 IOUT = 1,12 -! CALL SVODE(FEX,NEQ,Y,T,TOUT,ITOL,RTOL,ATOL,ITASK,ISTATE, -! 1 IOPT,RWORK,LRW,IWORK,LIW,JEX,MF,RPAR,IPAR) -! WRITE(6,20)T,Y(1),Y(2),Y(3) -! 20 FORMAT(' At t =',E12.4,' y =',3E14.6) -! IF (ISTATE .LT. 0) GO TO 80 -! 40 TOUT = TOUT*10. -! WRITE(6,60) IWORK(11),IWORK(12),IWORK(13),IWORK(19), -! 1 IWORK(20),IWORK(21),IWORK(22) -! 60 FORMAT(/' No. steps =',I4,' No. f-s =',I4, -! 1 ' No. J-s =',I4,' No. LU-s =',I4/ -! 2 ' No. nonlinear iterations =',I4/ -! 3 ' No. nonlinear convergence failures =',I4/ -! 4 ' No. error test failures =',I4/) -! STOP -! 80 WRITE(6,90)ISTATE -! 90 FORMAT(///' Error halt.. ISTATE =',I3) -! STOP -! END -! -! SUBROUTINE FEX (NEQ, T, Y, YDOT, RPAR, IPAR) -! REAL RPAR, T, Y, YDOT -! DIMENSION Y(NEQ), YDOT(NEQ) -! YDOT(1) = -.04E0*Y(1) + 1.E4*Y(2)*Y(3) -! YDOT(3) = 3.E7*Y(2)*Y(2) -! YDOT(2) = -YDOT(1) - YDOT(3) -! RETURN -! END -! -! SUBROUTINE JEX (NEQ, T, Y, ML, MU, PD, NRPD, RPAR, IPAR) -! REAL PD, RPAR, T, Y -! DIMENSION Y(NEQ), PD(NRPD,NEQ) -! PD(1,1) = -.04E0 -! PD(1,2) = 1.E4*Y(3) -! PD(1,3) = 1.E4*Y(2) -! PD(2,1) = .04E0 -! PD(2,3) = -PD(1,3) -! PD(3,2) = 6.E7*Y(2) -! PD(2,2) = -PD(1,2) - PD(3,2) -! RETURN -! END -! -! The following output was obtained from the above program on a -! Cray-1 computer with the CFT compiler. -! -! At t = 4.0000e-01 y = 9.851680e-01 3.386314e-05 1.479817e-02 -! At t = 4.0000e+00 y = 9.055255e-01 2.240539e-05 9.445214e-02 -! At t = 4.0000e+01 y = 7.158108e-01 9.184883e-06 2.841800e-01 -! At t = 4.0000e+02 y = 4.505032e-01 3.222940e-06 5.494936e-01 -! At t = 4.0000e+03 y = 1.832053e-01 8.942690e-07 8.167938e-01 -! At t = 4.0000e+04 y = 3.898560e-02 1.621875e-07 9.610142e-01 -! At t = 4.0000e+05 y = 4.935882e-03 1.984013e-08 9.950641e-01 -! At t = 4.0000e+06 y = 5.166183e-04 2.067528e-09 9.994834e-01 -! At t = 4.0000e+07 y = 5.201214e-05 2.080593e-10 9.999480e-01 -! At t = 4.0000e+08 y = 5.213149e-06 2.085271e-11 9.999948e-01 -! At t = 4.0000e+09 y = 5.183495e-07 2.073399e-12 9.999995e-01 -! At t = 4.0000e+10 y = 5.450996e-08 2.180399e-13 9.999999e-01 -! -! No. steps = 595 No. f-s = 832 No. J-s = 13 No. LU-s = 112 -! No. nonlinear iterations = 831 -! No. nonlinear convergence failures = 0 -! No. error test failures = 22 -!----------------------------------------------------------------------- -! Full description of user interface to SVODE. -! -! The user interface to SVODE consists of the following parts. -! -! i. The call sequence to subroutine SVODE, which is a driver -! routine for the solver. This includes descriptions of both -! the call sequence arguments and of user-supplied routines. -! Following these descriptions is -! * a description of optional input available through the -! call sequence, -! * a description of optional output (in the work arrays), and -! * instructions for interrupting and restarting a solution. -! -! ii. Descriptions of other routines in the SVODE package that may be -! (optionally) called by the user. These provide the ability to -! alter error message handling, save and restore the internal -! COMMON, and obtain specified derivatives of the solution y(t). -! -! iii. Descriptions of COMMON blocks to be declared in overlay -! or similar environments. -! -! iv. Description of two routines in the SVODE package, either of -! which the user may replace with his own version, if desired. -! these relate to the measurement of errors. -! -!----------------------------------------------------------------------- -! Part i. Call Sequence. -! -! The call sequence parameters used for input only are -! F, NEQ, TOUT, ITOL, RTOL, ATOL, ITASK, IOPT, LRW, LIW, JAC, MF, -! and those used for both input and output are -! Y, T, ISTATE. -! The work arrays RWORK and IWORK are also used for conditional and -! optional input and optional output. (The term output here refers -! to the return from subroutine SVODE to the user's calling program.) -! -! The legality of input parameters will be thoroughly checked on the -! initial call for the problem, but not checked thereafter unless a -! change in input parameters is flagged by ISTATE = 3 in the input. -! -! The descriptions of the call arguments are as follows. -! -! F = The name of the user-supplied subroutine defining the -! ODE system. The system must be put in the first-order -! form dy/dt = f(t,y), where f is a vector-valued function -! of the scalar t and the vector y. Subroutine F is to -! compute the function f. It is to have the form -! SUBROUTINE F (NEQ, T, Y, YDOT, RPAR, IPAR) -! REAL T, Y, YDOT, RPAR -! DIMENSION Y(NEQ), YDOT(NEQ) -! where NEQ, T, and Y are input, and the array YDOT = f(t,y) -! is output. Y and YDOT are arrays of length NEQ. -! (In the DIMENSION statement above, NEQ can be replaced by -! * to make Y and YDOT assumed size arrays.) -! Subroutine F should not alter Y(1),...,Y(NEQ). -! F must be declared EXTERNAL in the calling program. -! -! Subroutine F may access user-defined real and integer -! work arrays RPAR and IPAR, which are to be dimensioned -! in the main program. -! -! If quantities computed in the F routine are needed -! externally to SVODE, an extra call to F should be made -! for this purpose, for consistent and accurate results. -! If only the derivative dy/dt is needed, use SVINDY instead. -! -! NEQ = The size of the ODE system (number of first order -! ordinary differential equations). Used only for input. -! NEQ may not be increased during the problem, but -! can be decreased (with ISTATE = 3 in the input). -! -! Y = A real array for the vector of dependent variables, of -! length NEQ or more. Used for both input and output on the -! first call (ISTATE = 1), and only for output on other calls. -! On the first call, Y must contain the vector of initial -! values. In the output, Y contains the computed solution -! evaluated at T. If desired, the Y array may be used -! for other purposes between calls to the solver. -! -! This array is passed as the Y argument in all calls to -! F and JAC. -! -! T = The independent variable. In the input, T is used only on -! the first call, as the initial point of the integration. -! In the output, after each call, T is the value at which a -! computed solution Y is evaluated (usually the same as TOUT). -! On an error return, T is the farthest point reached. -! -! TOUT = The next value of t at which a computed solution is desired. -! Used only for input. -! -! When starting the problem (ISTATE = 1), TOUT may be equal -! to T for one call, then should .ne. T for the next call. -! For the initial T, an input value of TOUT .ne. T is used -! in order to determine the direction of the integration -! (i.e. the algebraic sign of the step sizes) and the rough -! scale of the problem. Integration in either direction -! (forward or backward in t) is permitted. -! -! If ITASK = 2 or 5 (one-step modes), TOUT is ignored after -! the first call (i.e. the first call with TOUT .ne. T). -! Otherwise, TOUT is required on every call. -! -! If ITASK = 1, 3, or 4, the values of TOUT need not be -! monotone, but a value of TOUT which backs up is limited -! to the current internal t interval, whose endpoints are -! TCUR - HU and TCUR. (See optional output, below, for -! TCUR and HU.) -! -! ITOL = An indicator for the type of error control. See -! description below under ATOL. Used only for input. -! -! RTOL = A relative error tolerance parameter, either a scalar or -! an array of length NEQ. See description below under ATOL. -! Input only. -! -! ATOL = An absolute error tolerance parameter, either a scalar or -! an array of length NEQ. Input only. -! -! The input parameters ITOL, RTOL, and ATOL determine -! the error control performed by the solver. The solver will -! control the vector e = (e(i)) of estimated local errors -! in Y, according to an inequality of the form -! rms-norm of ( e(i)/EWT(i) ) .le. 1, -! where EWT(i) = RTOL(i)*abs(Y(i)) + ATOL(i), -! and the rms-norm (root-mean-square norm) here is -! rms-norm(v) = sqrt(sum v(i)**2 / NEQ). Here EWT = (EWT(i)) -! is a vector of weights which must always be positive, and -! the values of RTOL and ATOL should all be non-negative. -! The following table gives the types (scalar/array) of -! RTOL and ATOL, and the corresponding form of EWT(i). -! -! ITOL RTOL ATOL EWT(i) -! 1 scalar scalar RTOL*ABS(Y(i)) + ATOL -! 2 scalar array RTOL*ABS(Y(i)) + ATOL(i) -! 3 array scalar RTOL(i)*ABS(Y(i)) + ATOL -! 4 array array RTOL(i)*ABS(Y(i)) + ATOL(i) -! -! When either of these parameters is a scalar, it need not -! be dimensioned in the user's calling program. -! -! If none of the above choices (with ITOL, RTOL, and ATOL -! fixed throughout the problem) is suitable, more general -! error controls can be obtained by substituting -! user-supplied routines for the setting of EWT and/or for -! the norm calculation. See Part iv below. -! -! If global errors are to be estimated by making a repeated -! run on the same problem with smaller tolerances, then all -! components of RTOL and ATOL (i.e. of EWT) should be scaled -! down uniformly. -! -! ITASK = An index specifying the task to be performed. -! Input only. ITASK has the following values and meanings. -! 1 means normal computation of output values of y(t) at -! t = TOUT (by overshooting and interpolating). -! 2 means take one step only and return. -! 3 means stop at the first internal mesh point at or -! beyond t = TOUT and return. -! 4 means normal computation of output values of y(t) at -! t = TOUT but without overshooting t = TCRIT. -! TCRIT must be input as RWORK(1). TCRIT may be equal to -! or beyond TOUT, but not behind it in the direction of -! integration. This option is useful if the problem -! has a singularity at or beyond t = TCRIT. -! 5 means take one step, without passing TCRIT, and return. -! TCRIT must be input as RWORK(1). -! -! Note.. If ITASK = 4 or 5 and the solver reaches TCRIT -! (within roundoff), it will return T = TCRIT (exactly) to -! indicate this (unless ITASK = 4 and TOUT comes before TCRIT, -! in which case answers at T = TOUT are returned first). -! -! ISTATE = an index used for input and output to specify the -! the state of the calculation. -! -! In the input, the values of ISTATE are as follows. -! 1 means this is the first call for the problem -! (initializations will be done). See note below. -! 2 means this is not the first call, and the calculation -! is to continue normally, with no change in any input -! parameters except possibly TOUT and ITASK. -! (If ITOL, RTOL, and/or ATOL are changed between calls -! with ISTATE = 2, the new values will be used but not -! tested for legality.) -! 3 means this is not the first call, and the -! calculation is to continue normally, but with -! a change in input parameters other than -! TOUT and ITASK. Changes are allowed in -! NEQ, ITOL, RTOL, ATOL, IOPT, LRW, LIW, MF, ML, MU, -! and any of the optional input except H0. -! (See IWORK description for ML and MU.) -! Note.. A preliminary call with TOUT = T is not counted -! as a first call here, as no initialization or checking of -! input is done. (Such a call is sometimes useful to include -! the initial conditions in the output.) -! Thus the first call for which TOUT .ne. T requires -! ISTATE = 1 in the input. -! -! In the output, ISTATE has the following values and meanings. -! 1 means nothing was done, as TOUT was equal to T with -! ISTATE = 1 in the input. -! 2 means the integration was performed successfully. -! -1 means an excessive amount of work (more than MXSTEP -! steps) was done on this call, before completing the -! requested task, but the integration was otherwise -! successful as far as T. (MXSTEP is an optional input -! and is normally 500.) To continue, the user may -! simply reset ISTATE to a value .gt. 1 and call again. -! (The excess work step counter will be reset to 0.) -! In addition, the user may increase MXSTEP to avoid -! this error return. (See optional input below.) -! -2 means too much accuracy was requested for the precision -! of the machine being used. This was detected before -! completing the requested task, but the integration -! was successful as far as T. To continue, the tolerance -! parameters must be reset, and ISTATE must be set -! to 3. The optional output TOLSF may be used for this -! purpose. (Note.. If this condition is detected before -! taking any steps, then an illegal input return -! (ISTATE = -3) occurs instead.) -! -3 means illegal input was detected, before taking any -! integration steps. See written message for details. -! Note.. If the solver detects an infinite loop of calls -! to the solver with illegal input, it will cause -! the run to stop. -! -4 means there were repeated error test failures on -! one attempted step, before completing the requested -! task, but the integration was successful as far as T. -! The problem may have a singularity, or the input -! may be inappropriate. -! -5 means there were repeated convergence test failures on -! one attempted step, before completing the requested -! task, but the integration was successful as far as T. -! This may be caused by an inaccurate Jacobian matrix, -! if one is being used. -! -6 means EWT(i) became zero for some i during the -! integration. Pure relative error control (ATOL(i)=0.0) -! was requested on a variable which has now vanished. -! The integration was successful as far as T. -! -! Note.. Since the normal output value of ISTATE is 2, -! it does not need to be reset for normal continuation. -! Also, since a negative input value of ISTATE will be -! regarded as illegal, a negative output value requires the -! user to change it, and possibly other input, before -! calling the solver again. -! -! IOPT = An integer flag to specify whether or not any optional -! input is being used on this call. Input only. -! The optional input is listed separately below. -! IOPT = 0 means no optional input is being used. -! Default values will be used in all cases. -! IOPT = 1 means optional input is being used. -! -! RWORK = A real working array (single precision). -! The length of RWORK must be at least -! 20 + NYH*(MAXORD + 1) + 3*NEQ + LWM where -! NYH = the initial value of NEQ, -! MAXORD = 12 (if METH = 1) or 5 (if METH = 2) (unless a -! smaller value is given as an optional input), -! LWM = length of work space for matrix-related data.. -! LWM = 0 if MITER = 0, -! LWM = 2*NEQ**2 + 2 if MITER = 1 or 2, and MF.gt.0, -! LWM = NEQ**2 + 2 if MITER = 1 or 2, and MF.lt.0, -! LWM = NEQ + 2 if MITER = 3, -! LWM = (3*ML+2*MU+2)*NEQ + 2 if MITER = 4 or 5, and MF.gt.0, -! LWM = (2*ML+MU+1)*NEQ + 2 if MITER = 4 or 5, and MF.lt.0. -! (See the MF description for METH and MITER.) -! Thus if MAXORD has its default value and NEQ is constant, -! this length is.. -! 20 + 16*NEQ for MF = 10, -! 22 + 16*NEQ + 2*NEQ**2 for MF = 11 or 12, -! 22 + 16*NEQ + NEQ**2 for MF = -11 or -12, -! 22 + 17*NEQ for MF = 13, -! 22 + 18*NEQ + (3*ML+2*MU)*NEQ for MF = 14 or 15, -! 22 + 17*NEQ + (2*ML+MU)*NEQ for MF = -14 or -15, -! 20 + 9*NEQ for MF = 20, -! 22 + 9*NEQ + 2*NEQ**2 for MF = 21 or 22, -! 22 + 9*NEQ + NEQ**2 for MF = -21 or -22, -! 22 + 10*NEQ for MF = 23, -! 22 + 11*NEQ + (3*ML+2*MU)*NEQ for MF = 24 or 25. -! 22 + 10*NEQ + (2*ML+MU)*NEQ for MF = -24 or -25. -! The first 20 words of RWORK are reserved for conditional -! and optional output. -! -! The following word in RWORK is a conditional input.. -! RWORK(1) = TCRIT = critical value of t which the solver -! is not to overshoot. Required if ITASK is -! 4 or 5, and ignored otherwise. (See ITASK.) -! -! LRW = The length of the array RWORK, as declared by the user. -! (This will be checked by the solver.) -! -! IWORK = An integer work array. The length of IWORK must be at least -! 30 if MITER = 0 or 3 (MF = 10, 13, 20, 23), or -! 30 + NEQ otherwise (abs(MF) = 11,12,14,15,21,22,24,25). -! The first 30 words of IWORK are reserved for conditional and -! optional input and optional output. -! -! The following 2 words in IWORK are conditional input.. -! IWORK(1) = ML These are the lower and upper -! IWORK(2) = MU half-bandwidths, respectively, of the -! banded Jacobian, excluding the main diagonal. -! The band is defined by the matrix locations -! (i,j) with i-ML .le. j .le. i+MU. ML and MU -! must satisfy 0 .le. ML,MU .le. NEQ-1. -! These are required if MITER is 4 or 5, and -! ignored otherwise. ML and MU may in fact be -! the band parameters for a matrix to which -! df/dy is only approximately equal. -! -! LIW = the length of the array IWORK, as declared by the user. -! (This will be checked by the solver.) -! -! Note.. The work arrays must not be altered between calls to SVODE -! for the same problem, except possibly for the conditional and -! optional input, and except for the last 3*NEQ words of RWORK. -! The latter space is used for internal scratch space, and so is -! available for use by the user outside SVODE between calls, if -! desired (but not for use by F or JAC). -! -! JAC = The name of the user-supplied routine (MITER = 1 or 4) to -! compute the Jacobian matrix, df/dy, as a function of -! the scalar t and the vector y. It is to have the form -! SUBROUTINE JAC (NEQ, T, Y, ML, MU, PD, NROWPD, -! RPAR, IPAR) -! REAL T, Y, PD, RPAR -! DIMENSION Y(NEQ), PD(NROWPD, NEQ) -! where NEQ, T, Y, ML, MU, and NROWPD are input and the array -! PD is to be loaded with partial derivatives (elements of the -! Jacobian matrix) in the output. PD must be given a first -! dimension of NROWPD. T and Y have the same meaning as in -! Subroutine F. (In the DIMENSION statement above, NEQ can -! be replaced by * to make Y and PD assumed size arrays.) -! In the full matrix case (MITER = 1), ML and MU are -! ignored, and the Jacobian is to be loaded into PD in -! columnwise manner, with df(i)/dy(j) loaded into PD(i,j). -! In the band matrix case (MITER = 4), the elements -! within the band are to be loaded into PD in columnwise -! manner, with diagonal lines of df/dy loaded into the rows -! of PD. Thus df(i)/dy(j) is to be loaded into PD(i-j+MU+1,j). -! ML and MU are the half-bandwidth parameters. (See IWORK). -! The locations in PD in the two triangular areas which -! correspond to nonexistent matrix elements can be ignored -! or loaded arbitrarily, as they are overwritten by SVODE. -! JAC need not provide df/dy exactly. A crude -! approximation (possibly with a smaller bandwidth) will do. -! In either case, PD is preset to zero by the solver, -! so that only the nonzero elements need be loaded by JAC. -! Each call to JAC is preceded by a call to F with the same -! arguments NEQ, T, and Y. Thus to gain some efficiency, -! intermediate quantities shared by both calculations may be -! saved in a user COMMON block by F and not recomputed by JAC, -! if desired. Also, JAC may alter the Y array, if desired. -! JAC must be declared external in the calling program. -! Subroutine JAC may access user-defined real and integer -! work arrays, RPAR and IPAR, whose dimensions are set by the -! user in the main program. -! -! MF = The method flag. Used only for input. The legal values of -! MF are 10, 11, 12, 13, 14, 15, 20, 21, 22, 23, 24, 25, -! -11, -12, -14, -15, -21, -22, -24, -25. -! MF is a signed two-digit integer, MF = JSV*(10*METH + MITER). -! JSV = SIGN(MF) indicates the Jacobian-saving strategy.. -! JSV = 1 means a copy of the Jacobian is saved for reuse -! in the corrector iteration algorithm. -! JSV = -1 means a copy of the Jacobian is not saved -! (valid only for MITER = 1, 2, 4, or 5). -! METH indicates the basic linear multistep method.. -! METH = 1 means the implicit Adams method. -! METH = 2 means the method based on backward -! differentiation formulas (BDF-s). -! MITER indicates the corrector iteration method.. -! MITER = 0 means functional iteration (no Jacobian matrix -! is involved). -! MITER = 1 means chord iteration with a user-supplied -! full (NEQ by NEQ) Jacobian. -! MITER = 2 means chord iteration with an internally -! generated (difference quotient) full Jacobian -! (using NEQ extra calls to F per df/dy value). -! MITER = 3 means chord iteration with an internally -! generated diagonal Jacobian approximation -! (using 1 extra call to F per df/dy evaluation). -! MITER = 4 means chord iteration with a user-supplied -! banded Jacobian. -! MITER = 5 means chord iteration with an internally -! generated banded Jacobian (using ML+MU+1 extra -! calls to F per df/dy evaluation). -! If MITER = 1 or 4, the user must supply a subroutine JAC -! (the name is arbitrary) as described above under JAC. -! For other values of MITER, a dummy argument can be used. -! -! RPAR User-specified array used to communicate real parameters -! to user-supplied subroutines. If RPAR is a vector, then -! it must be dimensioned in the user's main program. If it -! is unused or it is a scalar, then it need not be -! dimensioned. -! -! IPAR User-specified array used to communicate integer parameter -! to user-supplied subroutines. The comments on dimensioning -! RPAR apply to IPAR. -!----------------------------------------------------------------------- -! Optional Input. -! -! The following is a list of the optional input provided for in the -! call sequence. (See also Part ii.) For each such input variable, -! this table lists its name as used in this documentation, its -! location in the call sequence, its meaning, and the default value. -! The use of any of this input requires IOPT = 1, and in that -! case all of this input is examined. A value of zero for any -! of these optional input variables will cause the default value to be -! used. Thus to use a subset of the optional input, simply preload -! locations 5 to 10 in RWORK and IWORK to 0.0 and 0 respectively, and -! then set those of interest to nonzero values. -! -! NAME LOCATION MEANING AND DEFAULT VALUE -! -! H0 RWORK(5) The step size to be attempted on the first step. -! The default value is determined by the solver. -! -! HMAX RWORK(6) The maximum absolute step size allowed. -! The default value is infinite. -! -! HMIN RWORK(7) The minimum absolute step size allowed. -! The default value is 0. (This lower bound is not -! enforced on the final step before reaching TCRIT -! when ITASK = 4 or 5.) -! -! MAXORD IWORK(5) The maximum order to be allowed. The default -! value is 12 if METH = 1, and 5 if METH = 2. -! If MAXORD exceeds the default value, it will -! be reduced to the default value. -! If MAXORD is changed during the problem, it may -! cause the current order to be reduced. -! -! MXSTEP IWORK(6) Maximum number of (internally defined) steps -! allowed during one call to the solver. -! The default value is 500. -! -! MXHNIL IWORK(7) Maximum number of messages printed (per problem) -! warning that T + H = T on a step (H = step size). -! This must be positive to result in a non-default -! value. The default value is 10. -! -!----------------------------------------------------------------------- -! Optional Output. -! -! As optional additional output from SVODE, the variables listed -! below are quantities related to the performance of SVODE -! which are available to the user. These are communicated by way of -! the work arrays, but also have internal mnemonic names as shown. -! Except where stated otherwise, all of this output is defined -! on any successful return from SVODE, and on any return with -! ISTATE = -1, -2, -4, -5, or -6. On an illegal input return -! (ISTATE = -3), they will be unchanged from their existing values -! (if any), except possibly for TOLSF, LENRW, and LENIW. -! On any error return, output relevant to the error will be defined, -! as noted below. -! -! NAME LOCATION MEANING -! -! HU RWORK(11) The step size in t last used (successfully). -! -! HCUR RWORK(12) The step size to be attempted on the next step. -! -! TCUR RWORK(13) The current value of the independent variable -! which the solver has actually reached, i.e. the -! current internal mesh point in t. In the output, -! TCUR will always be at least as far from the -! initial value of t as the current argument T, -! but may be farther (if interpolation was done). -! -! TOLSF RWORK(14) A tolerance scale factor, greater than 1.0, -! computed when a request for too much accuracy was -! detected (ISTATE = -3 if detected at the start of -! the problem, ISTATE = -2 otherwise). If ITOL is -! left unaltered but RTOL and ATOL are uniformly -! scaled up by a factor of TOLSF for the next call, -! then the solver is deemed likely to succeed. -! (The user may also ignore TOLSF and alter the -! tolerance parameters in any other way appropriate.) -! -! NST IWORK(11) The number of steps taken for the problem so far. -! -! NFE IWORK(12) The number of f evaluations for the problem so far. -! -! NJE IWORK(13) The number of Jacobian evaluations so far. -! -! NQU IWORK(14) The method order last used (successfully). -! -! NQCUR IWORK(15) The order to be attempted on the next step. -! -! IMXER IWORK(16) The index of the component of largest magnitude in -! the weighted local error vector ( e(i)/EWT(i) ), -! on an error return with ISTATE = -4 or -5. -! -! LENRW IWORK(17) The length of RWORK actually required. -! This is defined on normal returns and on an illegal -! input return for insufficient storage. -! -! LENIW IWORK(18) The length of IWORK actually required. -! This is defined on normal returns and on an illegal -! input return for insufficient storage. -! -! NLU IWORK(19) The number of matrix LU decompositions so far. -! -! NNI IWORK(20) The number of nonlinear (Newton) iterations so far. -! -! NCFN IWORK(21) The number of convergence failures of the nonlinear -! solver so far. -! -! NETF IWORK(22) The number of error test failures of the integrator -! so far. -! -! The following two arrays are segments of the RWORK array which -! may also be of interest to the user as optional output. -! For each array, the table below gives its internal name, -! its base address in RWORK, and its description. -! -! NAME BASE ADDRESS DESCRIPTION -! -! YH 21 The Nordsieck history array, of size NYH by -! (NQCUR + 1), where NYH is the initial value -! of NEQ. For j = 0,1,...,NQCUR, column j+1 -! of YH contains HCUR**j/factorial(j) times -! the j-th derivative of the interpolating -! polynomial currently representing the -! solution, evaluated at t = TCUR. -! -! ACOR LENRW-NEQ+1 Array of size NEQ used for the accumulated -! corrections on each step, scaled in the output -! to represent the estimated local error in Y -! on the last step. This is the vector e in -! the description of the error control. It is -! defined only on a successful return from SVODE. -! -!----------------------------------------------------------------------- -! Interrupting and Restarting -! -! If the integration of a given problem by SVODE is to be -! interrrupted and then later continued, such as when restarting -! an interrupted run or alternating between two or more ODE problems, -! the user should save, following the return from the last SVODE call -! prior to the interruption, the contents of the call sequence -! variables and internal COMMON blocks, and later restore these -! values before the next SVODE call for that problem. To save -! and restore the COMMON blocks, use subroutine SVSRCO, as -! described below in part ii. -! -! In addition, if non-default values for either LUN or MFLAG are -! desired, an extra call to XSETUN and/or XSETF should be made just -! before continuing the integration. See Part ii below for details. -! -!----------------------------------------------------------------------- -! Part ii. Other Routines Callable. -! -! The following are optional calls which the user may make to -! gain additional capabilities in conjunction with SVODE. -! (The routines XSETUN and XSETF are designed to conform to the -! SLATEC error handling package.) -! -! FORM OF CALL FUNCTION -! CALL XSETUN(LUN) Set the logical unit number, LUN, for -! output of messages from SVODE, if -! the default is not desired. -! The default value of LUN is 6. -! -! CALL XSETF(MFLAG) Set a flag to control the printing of -! messages by SVODE. -! MFLAG = 0 means do not print. (Danger.. -! This risks losing valuable information.) -! MFLAG = 1 means print (the default). -! -! Either of the above calls may be made at -! any time and will take effect immediately. -! -! CALL SVSRCO(RSAV,ISAV,JOB) Saves and restores the contents of -! the internal COMMON blocks used by -! SVODE. (See Part iii below.) -! RSAV must be a real array of length 49 -! or more, and ISAV must be an integer -! array of length 40 or more. -! JOB=1 means save COMMON into RSAV/ISAV. -! JOB=2 means restore COMMON from RSAV/ISAV. -! SVSRCO is useful if one is -! interrupting a run and restarting -! later, or alternating between two or -! more problems solved with SVODE. -! -! CALL SVINDY(,,,,,) Provide derivatives of y, of various -! (See below.) orders, at a specified point T, if -! desired. It may be called only after -! a successful return from SVODE. -! -! The detailed instructions for using SVINDY are as follows. -! The form of the call is.. -! -! CALL SVINDY (T, K, RWORK(21), NYH, DKY, IFLAG) -! -! The input parameters are.. -! -! T = Value of independent variable where answers are desired -! (normally the same as the T last returned by SVODE). -! For valid results, T must lie between TCUR - HU and TCUR. -! (See optional output for TCUR and HU.) -! K = Integer order of the derivative desired. K must satisfy -! 0 .le. K .le. NQCUR, where NQCUR is the current order -! (see optional output). The capability corresponding -! to K = 0, i.e. computing y(T), is already provided -! by SVODE directly. Since NQCUR .ge. 1, the first -! derivative dy/dt is always available with SVINDY. -! RWORK(21) = The base address of the history array YH. -! NYH = Column length of YH, equal to the initial value of NEQ. -! -! The output parameters are.. -! -! DKY = A real array of length NEQ containing the computed value -! of the K-th derivative of y(t). -! IFLAG = Integer flag, returned as 0 if K and T were legal, -! -1 if K was illegal, and -2 if T was illegal. -! On an error return, a message is also written. -!----------------------------------------------------------------------- -! Part iii. COMMON Blocks. -! If SVODE is to be used in an overlay situation, the user -! must declare, in the primary overlay, the variables in.. -! (1) the call sequence to SVODE, -! (2) the two internal COMMON blocks -! /SVOD01/ of length 81 (48 single precision words -! followed by 33 integer words), -! /SVOD02/ of length 9 (1 single precision word -! followed by 8 integer words), -! -! If SVODE is used on a system in which the contents of internal -! COMMON blocks are not preserved between calls, the user should -! declare the above two COMMON blocks in his main program to insure -! that their contents are preserved. -! -!----------------------------------------------------------------------- -! Part iv. Optionally Replaceable Solver Routines. -! -! Below are descriptions of two routines in the SVODE package which -! relate to the measurement of errors. Either routine can be -! replaced by a user-supplied version, if desired. However, since such -! a replacement may have a major impact on performance, it should be -! done only when absolutely necessary, and only with great caution. -! (Note.. The means by which the package version of a routine is -! superseded by the user's version may be system-dependent.) -! -! (a) SEWSET. -! The following subroutine is called just before each internal -! integration step, and sets the array of error weights, EWT, as -! described under ITOL/RTOL/ATOL above.. -! SUBROUTINE SEWSET (NEQ, ITOL, RTOL, ATOL, YCUR, EWT) -! where NEQ, ITOL, RTOL, and ATOL are as in the SVODE call sequence, -! YCUR contains the current dependent variable vector, and -! EWT is the array of weights set by SEWSET. -! -! If the user supplies this subroutine, it must return in EWT(i) -! (i = 1,...,NEQ) a positive quantity suitable for comparison with -! errors in Y(i). The EWT array returned by SEWSET is passed to the -! SVNORM routine (See below.), and also used by SVODE in the computation -! of the optional output IMXER, the diagonal Jacobian approximation, -! and the increments for difference quotient Jacobians. -! -! In the user-supplied version of SEWSET, it may be desirable to use -! the current values of derivatives of y. Derivatives up to order NQ -! are available from the history array YH, described above under -! Optional Output. In SEWSET, YH is identical to the YCUR array, -! extended to NQ + 1 columns with a column length of NYH and scale -! factors of h**j/factorial(j). On the first call for the problem, -! given by NST = 0, NQ is 1 and H is temporarily set to 1.0. -! NYH is the initial value of NEQ. The quantities NQ, H, and NST -! can be obtained by including in SEWSET the statements.. -! REAL RVOD, H, HU -! COMMON /SVOD01/ RVOD(48), IVOD(33) -! COMMON /SVOD02/ HU, NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! NQ = IVOD(28) -! H = RVOD(21) -! Thus, for example, the current value of dy/dt can be obtained as -! YCUR(NYH+i)/H (i=1,...,NEQ) (and the division by H is -! unnecessary when NST = 0). -! -! (b) SVNORM. -! The following is a real function routine which computes the weighted -! root-mean-square norm of a vector v.. -! D = SVNORM (N, V, W) -! where.. -! N = the length of the vector, -! V = real array of length N containing the vector, -! W = real array of length N containing weights, -! D = sqrt( (1/N) * sum(V(i)*W(i))**2 ). -! SVNORM is called with N = NEQ and with W(i) = 1.0/EWT(i), where -! EWT is as set by subroutine SEWSET. -! -! If the user supplies this function, it should return a non-negative -! value of SVNORM suitable for use in the error control in SVODE. -! None of the arguments should be altered by SVNORM. -! For example, a user-supplied SVNORM routine might.. -! -substitute a max-norm of (V(i)*W(i)) for the rms-norm, or -! -ignore some components of V in the norm, with the effect of -! suppressing the error control on those components of Y. -!----------------------------------------------------------------------- -! Other Routines in the SVODE Package. -! -! In addition to subroutine SVODE, the SVODE package includes the -! following subroutines and function routines.. -! SVHIN computes an approximate step size for the initial step. -! SVINDY computes an interpolated value of the y vector at t = TOUT. -! SVSTEP is the core integrator, which does one step of the -! integration and the associated error control. -! SVSET sets all method coefficients and test constants. -! SVNLSD solves the underlying nonlinear system -- the corrector. -! SVJAC computes and preprocesses the Jacobian matrix J = df/dy -! and the Newton iteration matrix P = I - (h/l1)*J. -! SVSOL manages solution of linear system in chord iteration. -! SVJUST adjusts the history array on a change of order. -! SEWSET sets the error weight vector EWT before each step. -! SVNORM computes the weighted r.m.s. norm of a vector. -! SVSRCO is a user-callable routines to save and restore -! the contents of the internal COMMON blocks. -! SACOPY is a routine to copy one two-dimensional array to another. -! SGEFA and SGESL are routines from LINPACK for solving full -! systems of linear algebraic equations. -! SGBFA and SGBSL are routines from LINPACK for solving banded -! linear systems. -! SAXPY, SSCAL, and CH_SCOPY are basic linear algebra modules (BLAS). -! R1MACH sets the unit roundoff of the machine. -! XERRWV, XSETUN, XSETF, LUNSAV, and MFLGSV handle the printing of all -! error messages and warnings. XERRWV is machine-dependent. -! Note.. SVNORM, R1MACH, LUNSAV, and MFLGSV are function routines. -! All the others are subroutines. -! -! The intrinsic and external routines used by the SVODE package are.. -! ABS, MAX, MIN, REAL, SIGN, SQRT, and WRITE. -! -!----------------------------------------------------------------------- -! -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for labeled COMMON block SVOD02 -------------------- -! - REAL HU - INTEGER NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! -! Type declarations for local variables -------------------------------- -! - EXTERNAL SVNLSD - LOGICAL IHIT - REAL ATOLI, BIG, EWTI, FOUR, H0, HMAX, HMX, HUN, ONE, & - & PT2, RH, RTOLI, SIZE, TCRIT, TNEXT, TOLSF, TP, TWO, ZERO - INTEGER I, IER, IFLAG, IMXER, JCO, KGO, LENIW, LENJ, LENP, LENRW, & - & LENWM, LF0, MBAND, ML, MORD, MU, MXHNL0, MXSTP0, NITER, NSLAST - CHARACTER*80 MSG -! -! Type declaration for function subroutines called --------------------- -! - REAL R1MACH, SVNORM -! - DIMENSION MORD(2) -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to SVODE. -!----------------------------------------------------------------------- - SAVE MORD, MXHNL0, MXSTP0 - SAVE ZERO, ONE, TWO, FOUR, PT2, HUN -!----------------------------------------------------------------------- -! The following internal COMMON blocks contain variables which are -! communicated between subroutines in the SVODE package, or which are -! to be saved between calls to SVODE. -! In each block, real variables precede integers. -! The block /SVOD01/ appears in subroutines SVODE, SVINDY, SVSTEP, -! SVSET, SVNLSD, SVJAC, SVSOL, SVJUST and SVSRCO. -! The block /SVOD02/ appears in subroutines SVODE, SVINDY, SVSTEP, -! SVNLSD, SVJAC, and SVSRCO. -! -! The variables stored in the internal COMMON blocks are as follows.. -! -! ACNRM = Weighted r.m.s. norm of accumulated correction vectors. -! CCMXJ = Threshhold on DRC for updating the Jacobian. (See DRC.) -! CONP = The saved value of TQ(5). -! CRATE = Estimated corrector convergence rate constant. -! DRC = Relative change in H*RL1 since last SVJAC call. -! EL = Real array of integration coefficients. See SVSET. -! ETA = Saved tentative ratio of new to old H. -! ETAMAX = Saved maximum value of ETA to be allowed. -! H = The step size. -! HMIN = The minimum absolute value of the step size H to be used. -! HMXI = Inverse of the maximum absolute value of H to be used. -! HMXI = 0.0 is allowed and corresponds to an infinite HMAX. -! HNEW = The step size to be attempted on the next step. -! HSCAL = Stepsize in scaling of YH array. -! PRL1 = The saved value of RL1. -! RC = Ratio of current H*RL1 to value on last SVJAC call. -! RL1 = The reciprocal of the coefficient EL(1). -! TAU = Real vector of past NQ step sizes, length 13. -! TQ = A real vector of length 5 in which SVSET stores constants -! used for the convergence test, the error test, and the -! selection of H at a new order. -! TN = The independent variable, updated on each step taken. -! UROUND = The machine unit roundoff. The smallest positive real number -! such that 1.0 + UROUND .ne. 1.0 -! ICF = Integer flag for convergence failure in SVNLSD.. -! 0 means no failures. -! 1 means convergence failure with out of date Jacobian -! (recoverable error). -! 2 means convergence failure with current Jacobian or -! singular matrix (unrecoverable error). -! INIT = Saved integer flag indicating whether initialization of the -! problem has been done (INIT = 1) or not. -! IPUP = Saved flag to signal updating of Newton matrix. -! JCUR = Output flag from SVJAC showing Jacobian status.. -! JCUR = 0 means J is not current. -! JCUR = 1 means J is current. -! JSTART = Integer flag used as input to SVSTEP.. -! 0 means perform the first step. -! 1 means take a new step continuing from the last. -! -1 means take the next step with a new value of MAXORD, -! HMIN, HMXI, N, METH, MITER, and/or matrix parameters. -! On return, SVSTEP sets JSTART = 1. -! JSV = Integer flag for Jacobian saving, = sign(MF). -! KFLAG = A completion code from SVSTEP with the following meanings.. -! 0 the step was succesful. -! -1 the requested error could not be achieved. -! -2 corrector convergence could not be achieved. -! -3, -4 fatal error in VNLS (can not occur here). -! KUTH = Input flag to SVSTEP showing whether H was reduced by the -! driver. KUTH = 1 if H was reduced, = 0 otherwise. -! L = Integer variable, NQ + 1, current order plus one. -! LMAX = MAXORD + 1 (used for dimensioning). -! LOCJS = A pointer to the saved Jacobian, whose storage starts at -! WM(LOCJS), if JSV = 1. -! LYH, LEWT, LACOR, LSAVF, LWM, LIWM = Saved integer pointers -! to segments of RWORK and IWORK. -! MAXORD = The maximum order of integration method to be allowed. -! METH/MITER = The method flags. See MF. -! MSBJ = The maximum number of steps between J evaluations, = 50. -! MXHNIL = Saved value of optional input MXHNIL. -! MXSTEP = Saved value of optional input MXSTEP. -! N = The number of first-order ODEs, = NEQ. -! NEWH = Saved integer to flag change of H. -! NEWQ = The method order to be used on the next step. -! NHNIL = Saved counter for occurrences of T + H = T. -! NQ = Integer variable, the current integration method order. -! NQNYH = Saved value of NQ*NYH. -! NQWAIT = A counter controlling the frequency of order changes. -! An order change is about to be considered if NQWAIT = 1. -! NSLJ = The number of steps taken as of the last Jacobian update. -! NSLP = Saved value of NST as of last Newton matrix update. -! NYH = Saved value of the initial value of NEQ. -! HU = The step size in t last used. -! NCFN = Number of nonlinear convergence failures so far. -! NETF = The number of error test failures of the integrator so far. -! NFE = The number of f evaluations for the problem so far. -! NJE = The number of Jacobian evaluations so far. -! NLU = The number of matrix LU decompositions so far. -! NNI = Number of nonlinear iterations so far. -! NQU = The method order last used. -! NST = The number of steps taken for the problem so far. -!----------------------------------------------------------------------- - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH - COMMON /SVOD02/ HU, NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! - DATA MORD(1) /12/, MORD(2) /5/, MXSTP0 /500/, MXHNL0 /10/ - DATA ZERO /0.0E0/, ONE /1.0E0/, TWO /2.0E0/, FOUR /4.0E0/, & - & PT2 /0.2E0/, HUN /100.0E0/ -!----------------------------------------------------------------------- -! Block A. -! This code block is executed on every call. -! It tests ISTATE and ITASK for legality and branches appropriately. -! If ISTATE .gt. 1 but the flag INIT shows that initialization has -! not yet been done, an error return occurs. -! If ISTATE = 1 and TOUT = T, return immediately. -!----------------------------------------------------------------------- - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVODE',0,ZHOOK_HANDLE) - IF (ISTATE .LT. 1 .OR. ISTATE .GT. 3) GO TO 601 - IF (ITASK .LT. 1 .OR. ITASK .GT. 5) GO TO 602 - IF (ISTATE .EQ. 1) GO TO 10 - IF (INIT .NE. 1) GO TO 603 - IF (ISTATE .EQ. 2) GO TO 200 - GO TO 20 - 10 INIT = 0 - IF (TOUT .EQ. T) THEN - IF (LHOOK) CALL DR_HOOK('SVODE',1,ZHOOK_HANDLE) - RETURN - ENDIF -!----------------------------------------------------------------------- -! Block B. -! The next code block is executed for the initial call (ISTATE = 1), -! or for a continuation call with parameter changes (ISTATE = 3). -! It contains checking of all input and various initializations. -! -! First check legality of the non-optional input NEQ, ITOL, IOPT, -! MF, ML, and MU. -!----------------------------------------------------------------------- - 20 IF (NEQ .LE. 0) GO TO 604 - IF (ISTATE .EQ. 1) GO TO 25 - IF (NEQ .GT. N) GO TO 605 - 25 N = NEQ - IF (ITOL .LT. 1 .OR. ITOL .GT. 4) GO TO 606 - IF (IOPT .LT. 0 .OR. IOPT .GT. 1) GO TO 607 - JSV = SIGN(1,MF) - MF = ABS(MF) - METH = MF/10 - MITER = MF - 10*METH - IF (METH .LT. 1 .OR. METH .GT. 2) GO TO 608 - IF (MITER .LT. 0 .OR. MITER .GT. 5) GO TO 608 - IF (MITER .LE. 3) GO TO 30 - ML = IWORK(1) - MU = IWORK(2) - IF (ML .LT. 0 .OR. ML .GE. N) GO TO 609 - IF (MU .LT. 0 .OR. MU .GE. N) GO TO 610 - 30 CONTINUE -! Next process and check the optional input. --------------------------- - IF (IOPT .EQ. 1) GO TO 40 - MAXORD = MORD(METH) - MXSTEP = MXSTP0 - MXHNIL = MXHNL0 - IF (ISTATE .EQ. 1) H0 = ZERO - HMXI = ZERO - HMIN = ZERO - GO TO 60 - 40 MAXORD = IWORK(5) - IF (MAXORD .LT. 0) GO TO 611 - IF (MAXORD .EQ. 0) MAXORD = 100 - MAXORD = MIN(MAXORD,MORD(METH)) - MXSTEP = IWORK(6) - IF (MXSTEP .LT. 0) GO TO 612 - IF (MXSTEP .EQ. 0) MXSTEP = MXSTP0 - MXHNIL = IWORK(7) - IF (MXHNIL .LT. 0) GO TO 613 - IF (MXHNIL .EQ. 0) MXHNIL = MXHNL0 - IF (ISTATE .NE. 1) GO TO 50 - H0 = RWORK(5) - IF ((TOUT - T)*H0 .LT. ZERO) GO TO 614 - 50 HMAX = RWORK(6) - IF (HMAX .LT. ZERO) GO TO 615 - HMXI = ZERO - IF (HMAX .GT. ZERO) HMXI = ONE/HMAX - HMIN = RWORK(7) - IF (HMIN .LT. ZERO) GO TO 616 -!----------------------------------------------------------------------- -! Set work array pointers and check lengths LRW and LIW. -! Pointers to segments of RWORK and IWORK are named by prefixing L to -! the name of the segment. E.g., the segment YH starts at RWORK(LYH). -! Segments of RWORK (in order) are denoted YH, WM, EWT, SAVF, ACOR. -! Within WM, LOCJS is the location of the saved Jacobian (JSV .gt. 0). -!----------------------------------------------------------------------- - 60 LYH = 21 - IF (ISTATE .EQ. 1) NYH = N - LWM = LYH + (MAXORD + 1)*NYH - JCO = MAX(0,JSV) - IF (MITER .EQ. 0) LENWM = 0 - IF (MITER .EQ. 1 .OR. MITER .EQ. 2) THEN - LENWM = 2 + (1 + JCO)*N*N - LOCJS = N*N + 3 - ENDIF - IF (MITER .EQ. 3) LENWM = 2 + N - IF (MITER .EQ. 4 .OR. MITER .EQ. 5) THEN - MBAND = ML + MU + 1 - LENP = (MBAND + ML)*N - LENJ = MBAND*N - LENWM = 2 + LENP + JCO*LENJ - LOCJS = LENP + 3 - ENDIF - LEWT = LWM + LENWM - LSAVF = LEWT + N - LACOR = LSAVF + N - LENRW = LACOR + N - 1 - IWORK(17) = LENRW - LIWM = 1 - LENIW = 30 + N - IF (MITER .EQ. 0 .OR. MITER .EQ. 3) LENIW = 30 - IWORK(18) = LENIW - IF (LENRW .GT. LRW) GO TO 617 - IF (LENIW .GT. LIW) GO TO 618 -! Check RTOL and ATOL for legality. ------------------------------------ - RTOLI = RTOL(1) - ATOLI = ATOL(1) - DO 70 I = 1,N - IF (ITOL .GE. 3) RTOLI = RTOL(I) - IF (ITOL .EQ. 2 .OR. ITOL .EQ. 4) ATOLI = ATOL(I) - IF (RTOLI .LT. ZERO) GO TO 619 - IF (ATOLI .LT. ZERO) GO TO 620 - 70 CONTINUE - IF (ISTATE .EQ. 1) GO TO 100 -! If ISTATE = 3, set flag to signal parameter changes to SVSTEP. ------- - JSTART = -1 - IF (NQ .LE. MAXORD) GO TO 90 -! MAXORD was reduced below NQ. Copy YH(*,MAXORD+2) into SAVF. --------- - CALL CH_SCOPY (N, RWORK(LWM), 1, RWORK(LSAVF), 1) -! Reload WM(1) = RWORK(LWM), since LWM may have changed. --------------- - 90 IF (MITER .GT. 0) RWORK(LWM) = SQRT(UROUND) -!----------------------------------------------------------------------- -! Block C. -! The next block is for the initial call only (ISTATE = 1). -! It contains all remaining initializations, the initial call to F, -! and the calculation of the initial step size. -! The error weights in EWT are inverted after being loaded. -!----------------------------------------------------------------------- - 100 UROUND = R1MACH(4) - TN = T - IF (ITASK .NE. 4 .AND. ITASK .NE. 5) GO TO 110 - TCRIT = RWORK(1) - IF ((TCRIT - TOUT)*(TOUT - T) .LT. ZERO) GO TO 625 - IF (H0 .NE. ZERO .AND. (T + H0 - TCRIT)*H0 .GT. ZERO) & - & H0 = TCRIT - T - 110 JSTART = 0 - IF (MITER .GT. 0) RWORK(LWM) = SQRT(UROUND) - CCMXJ = PT2 - MSBJ = 50 - NHNIL = 0 - NST = 0 - NJE = 0 - NNI = 0 - NCFN = 0 - NETF = 0 - NLU = 0 - NSLJ = 0 - NSLAST = 0 - HU = ZERO - NQU = 0 -! Initial call to F. (LF0 points to YH(*,2).) ------------------------- - LF0 = LYH + NYH -! -!*UPG*MNH -! - CALL F (N, T, Y, RWORK(LF0), RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - NFE = 1 -! Load the initial value vector in YH. --------------------------------- - CALL CH_SCOPY (N, Y, 1, RWORK(LYH), 1) -! Load and invert the EWT array. (H is temporarily set to 1.0.) ------- - NQ = 1 - H = ONE - CALL SEWSET (N, ITOL, RTOL, ATOL, RWORK(LYH), RWORK(LEWT)) - DO 120 I = 1,N - IF (RWORK(I+LEWT-1) .LE. ZERO) GO TO 621 - 120 RWORK(I+LEWT-1) = ONE/RWORK(I+LEWT-1) - IF (H0 .NE. ZERO) GO TO 180 -! Call SVHIN to set initial step size H0 to be attempted. -------------- - CALL SVHIN (N, T, RWORK(LYH), RWORK(LF0), F, RPAR, IPAR, TOUT, & - & UROUND, RWORK(LEWT), ITOL, ATOL, Y, RWORK(LACOR), H0, & - & NITER, IER, KMI, KINDEX) - NFE = NFE + NITER - IF (IER .NE. 0) GO TO 622 -! Adjust H0 if necessary to meet HMAX bound. --------------------------- - 180 RH = ABS(H0)*HMXI - IF (RH .GT. ONE) H0 = H0/RH -! Load H with H0 and scale YH(*,2) by H0. ------------------------------ - H = H0 - CALL SSCAL (N, H0, RWORK(LF0), 1) - GO TO 270 -!----------------------------------------------------------------------- -! Block D. -! The next code block is for continuation calls only (ISTATE = 2 or 3) -! and is to check stop conditions before taking a step. -!----------------------------------------------------------------------- - 200 NSLAST = NST - KUTH = 0 - GO TO (210, 250, 220, 230, 240), ITASK - 210 IF ((TN - TOUT)*H .LT. ZERO) GO TO 250 - CALL SVINDY (TOUT, 0, RWORK(LYH), NYH, Y, IFLAG) - IF (IFLAG .NE. 0) GO TO 627 - T = TOUT - GO TO 420 - 220 TP = TN - HU*(ONE + HUN*UROUND) - IF ((TP - TOUT)*H .GT. ZERO) GO TO 623 - IF ((TN - TOUT)*H .LT. ZERO) GO TO 250 - GO TO 400 - 230 TCRIT = RWORK(1) - IF ((TN - TCRIT)*H .GT. ZERO) GO TO 624 - IF ((TCRIT - TOUT)*H .LT. ZERO) GO TO 625 - IF ((TN - TOUT)*H .LT. ZERO) GO TO 245 - CALL SVINDY (TOUT, 0, RWORK(LYH), NYH, Y, IFLAG) - IF (IFLAG .NE. 0) GO TO 627 - T = TOUT - GO TO 420 - 240 TCRIT = RWORK(1) - IF ((TN - TCRIT)*H .GT. ZERO) GO TO 624 - 245 HMX = ABS(TN) + ABS(H) - IHIT = ABS(TN - TCRIT) .LE. HUN*UROUND*HMX - IF (IHIT) GO TO 400 - TNEXT = TN + HNEW*(ONE + FOUR*UROUND) - IF ((TNEXT - TCRIT)*H .LE. ZERO) GO TO 250 - H = (TCRIT - TN)*(ONE - FOUR*UROUND) - KUTH = 1 -!----------------------------------------------------------------------- -! Block E. -! The next block is normally executed for all calls and contains -! the call to the one-step core integrator SVSTEP. -! -! This is a looping point for the integration steps. -! -! First check for too many steps being taken, update EWT (if not at -! start of problem), check for too much accuracy being requested, and -! check for H below the roundoff level in T. -!----------------------------------------------------------------------- - 250 CONTINUE - IF ((NST-NSLAST) .GE. MXSTEP) GO TO 500 - CALL SEWSET (N, ITOL, RTOL, ATOL, RWORK(LYH), RWORK(LEWT)) - DO 260 I = 1,N - IF (RWORK(I+LEWT-1) .LE. ZERO) GO TO 510 - 260 RWORK(I+LEWT-1) = ONE/RWORK(I+LEWT-1) - 270 TOLSF = UROUND*SVNORM (N, RWORK(LYH), RWORK(LEWT)) - IF (TOLSF .LE. ONE) GO TO 280 - TOLSF = TOLSF*TWO - IF (NST .EQ. 0) GO TO 626 - GO TO 520 - 280 IF ((TN + H) .NE. TN) GO TO 290 -!KS: strange things happen on HP f90 (this error message is -!KS: often printed but results are the same than on Linux) -!KS: let's jump over these prints - GOTO 290 - NHNIL = NHNIL + 1 - IF (NHNIL .GT. MXHNIL) GO TO 290 - MSG = 'SVODE-- Warning..internal T (=R1) and H (=R2) are' - CALL XERRWV (MSG, 50, 101, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG=' such that in the machine, T + H = T on the next step ' - CALL XERRWV (MSG, 60, 101, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG = ' (H = step size). solver will continue anyway' - CALL XERRWV (MSG, 50, 101, 1, 0, 0, 0, 2, TN, H) - IF (NHNIL .LT. MXHNIL) GO TO 290 - MSG = 'SVODE-- Above warning has been issued I1 times. ' - CALL XERRWV (MSG, 50, 102, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG = ' it will not be issued again for this problem' - CALL XERRWV (MSG, 50, 102, 1, 1, MXHNIL, 0, 0, ZERO, ZERO) - 290 CONTINUE -!----------------------------------------------------------------------- -! CALL SVSTEP (Y, YH, NYH, YH, EWT, SAVF, VSAV, ACOR, -! WM, IWM, F, JAC, F, SVNLSD, RPAR, IPAR) -!----------------------------------------------------------------------- - CALL SVSTEP (Y, RWORK(LYH), NYH, RWORK(LYH), RWORK(LEWT), & - & RWORK(LSAVF), Y, RWORK(LACOR), RWORK(LWM), IWORK(LIWM), & - & F, JAC, F, SVNLSD, RPAR, IPAR, KMI, KINDEX) - KGO = 1 - KFLAG -! Branch on KFLAG. Note..In this version, KFLAG can not be set to -3. -! KFLAG .eq. 0, -1, -2 - GO TO (300, 530, 540), KGO -!----------------------------------------------------------------------- -! Block F. -! The following block handles the case of a successful return from the -! core integrator (KFLAG = 0). Test for stop conditions. -!----------------------------------------------------------------------- - 300 INIT = 1 - KUTH = 0 - GO TO (310, 400, 330, 340, 350), ITASK -! ITASK = 1. If TOUT has been reached, interpolate. ------------------- - 310 IF ((TN - TOUT)*H .LT. ZERO) GO TO 250 - CALL SVINDY (TOUT, 0, RWORK(LYH), NYH, Y, IFLAG) - T = TOUT - GO TO 420 -! ITASK = 3. Jump to exit if TOUT was reached. ------------------------ - 330 IF ((TN - TOUT)*H .GE. ZERO) GO TO 400 - GO TO 250 -! ITASK = 4. See if TOUT or TCRIT was reached. Adjust H if necessary. - 340 IF ((TN - TOUT)*H .LT. ZERO) GO TO 345 - CALL SVINDY (TOUT, 0, RWORK(LYH), NYH, Y, IFLAG) - T = TOUT - GO TO 420 - 345 HMX = ABS(TN) + ABS(H) - IHIT = ABS(TN - TCRIT) .LE. HUN*UROUND*HMX - IF (IHIT) GO TO 400 - TNEXT = TN + HNEW*(ONE + FOUR*UROUND) - IF ((TNEXT - TCRIT)*H .LE. ZERO) GO TO 250 - H = (TCRIT - TN)*(ONE - FOUR*UROUND) - KUTH = 1 - GO TO 250 -! ITASK = 5. See if TCRIT was reached and jump to exit. --------------- - 350 HMX = ABS(TN) + ABS(H) - IHIT = ABS(TN - TCRIT) .LE. HUN*UROUND*HMX -!----------------------------------------------------------------------- -! Block G. -! The following block handles all successful returns from SVODE. -! If ITASK .ne. 1, Y is loaded from YH and T is set accordingly. -! ISTATE is set to 2, and the optional output is loaded into the work -! arrays before returning. -!----------------------------------------------------------------------- - 400 CONTINUE - CALL CH_SCOPY (N, RWORK(LYH), 1, Y, 1) - T = TN - IF (ITASK .NE. 4 .AND. ITASK .NE. 5) GO TO 420 - IF (IHIT) T = TCRIT - 420 ISTATE = 2 - RWORK(11) = HU - RWORK(12) = HNEW - RWORK(13) = TN - IWORK(11) = NST - IWORK(12) = NFE - IWORK(13) = NJE - IWORK(14) = NQU - IWORK(15) = NEWQ - IWORK(19) = NLU - IWORK(20) = NNI - IWORK(21) = NCFN - IWORK(22) = NETF - IF (LHOOK) CALL DR_HOOK('SVODE',1,ZHOOK_HANDLE) - RETURN -!----------------------------------------------------------------------- -! Block H. -! The following block handles all unsuccessful returns other than -! those for illegal input. First the error message routine is called. -! if there was an error test or convergence test failure, IMXER is set. -! Then Y is loaded from YH, T is set to TN, and the illegal input -! The optional output is loaded into the work arrays before returning. -!----------------------------------------------------------------------- -! The maximum number of steps was taken before reaching TOUT. ---------- - 500 MSG = 'SVODE-- At current T (=R1), MXSTEP (=I1) steps ' - CALL XERRWV (MSG, 50, 201, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG = ' taken on this call before reaching TOUT ' - CALL XERRWV (MSG, 50, 201, 1, 1, MXSTEP, 0, 1, TN, ZERO) - ISTATE = -1 - GO TO 580 -! EWT(i) .le. 0.0 for some i (not at start of problem). ---------------- - 510 EWTI = RWORK(LEWT+I-1) - MSG = 'SVODE-- At T (=R1), EWT(I1) has become R2 .le. 0.' - CALL XERRWV (MSG, 50, 202, 1, 1, I, 0, 2, TN, EWTI) - ISTATE = -6 - GO TO 580 -! Too much accuracy requested for machine precision. ------------------- - 520 MSG = 'SVODE-- At T (=R1), too much accuracy requested ' - CALL XERRWV (MSG, 50, 203, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG = ' for precision of machine.. see TOLSF (=R2) ' - CALL XERRWV (MSG, 50, 203, 1, 0, 0, 0, 2, TN, TOLSF) - RWORK(14) = TOLSF - ISTATE = -2 - GO TO 580 -! KFLAG = -1. Error test failed repeatedly or with ABS(H) = HMIN. ----- - 530 MSG = 'SVODE-- At T(=R1) and step size H(=R2), the error' - CALL XERRWV (MSG, 50, 204, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG = ' test failed repeatedly or with abs(H) = HMIN' - CALL XERRWV (MSG, 50, 204, 1, 0, 0, 0, 2, TN, H) - ISTATE = -4 - GO TO 560 -! KFLAG = -2. Convergence failed repeatedly or with abs(H) = HMIN. ---- - 540 MSG = 'SVODE-- At T (=R1) and step size H (=R2), the ' - CALL XERRWV (MSG, 50, 205, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG = ' corrector convergence failed repeatedly ' - CALL XERRWV (MSG, 50, 205, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG = ' or with abs(H) = HMIN ' - CALL XERRWV (MSG, 30, 205, 1, 0, 0, 0, 2, TN, H) - ISTATE = -5 -! Compute IMXER if relevant. ------------------------------------------- - 560 BIG = ZERO - IMXER = 1 - DO 570 I = 1,N - SIZE = ABS(RWORK(I+LACOR-1)*RWORK(I+LEWT-1)) - IF (BIG .GE. SIZE) GO TO 570 - BIG = SIZE - IMXER = I - 570 CONTINUE - IWORK(16) = IMXER -! Set Y vector, T, and optional output. -------------------------------- - 580 CONTINUE - CALL CH_SCOPY (N, RWORK(LYH), 1, Y, 1) - T = TN - RWORK(11) = HU - RWORK(12) = H - RWORK(13) = TN - IWORK(11) = NST - IWORK(12) = NFE - IWORK(13) = NJE - IWORK(14) = NQU - IWORK(15) = NQ - IWORK(19) = NLU - IWORK(20) = NNI - IWORK(21) = NCFN - IWORK(22) = NETF - IF (LHOOK) CALL DR_HOOK('SVODE',1,ZHOOK_HANDLE) - RETURN -!----------------------------------------------------------------------- -! Block I. -! The following block handles all error returns due to illegal input -! (ISTATE = -3), as detected before calling the core integrator. -! First the error message routine is called. If the illegal input -! is a negative ISTATE, the run is aborted (apparent infinite loop). -!----------------------------------------------------------------------- - 601 MSG = 'SVODE-- ISTATE (=I1) illegal ' - CALL XERRWV (MSG, 30, 1, 1, 1, ISTATE, 0, 0, ZERO, ZERO) - IF (ISTATE .LT. 0) GO TO 800 - GO TO 700 - 602 MSG = 'SVODE-- ITASK (=I1) illegal ' - CALL XERRWV (MSG, 30, 2, 1, 1, ITASK, 0, 0, ZERO, ZERO) - GO TO 700 - 603 MSG='SVODE-- ISTATE (=I1) .gt. 1 but SVODE not initialized ' - CALL XERRWV (MSG, 60, 3, 1, 1, ISTATE, 0, 0, ZERO, ZERO) - GO TO 700 - 604 MSG = 'SVODE-- NEQ (=I1) .lt. 1 ' - CALL XERRWV (MSG, 30, 4, 1, 1, NEQ, 0, 0, ZERO, ZERO) - GO TO 700 - 605 MSG = 'SVODE-- ISTATE = 3 and NEQ increased (I1 to I2) ' - CALL XERRWV (MSG, 50, 5, 1, 2, N, NEQ, 0, ZERO, ZERO) - GO TO 700 - 606 MSG = 'SVODE-- ITOL (=I1) illegal ' - CALL XERRWV (MSG, 30, 6, 1, 1, ITOL, 0, 0, ZERO, ZERO) - GO TO 700 - 607 MSG = 'SVODE-- IOPT (=I1) illegal ' - CALL XERRWV (MSG, 30, 7, 1, 1, IOPT, 0, 0, ZERO, ZERO) - GO TO 700 - 608 MSG = 'SVODE-- MF (=I1) illegal ' - CALL XERRWV (MSG, 30, 8, 1, 1, MF, 0, 0, ZERO, ZERO) - GO TO 700 - 609 MSG = 'SVODE-- ML (=I1) illegal.. .lt.0 or .ge.NEQ (=I2)' - CALL XERRWV (MSG, 50, 9, 1, 2, ML, NEQ, 0, ZERO, ZERO) - GO TO 700 - 610 MSG = 'SVODE-- MU (=I1) illegal.. .lt.0 or .ge.NEQ (=I2)' - CALL XERRWV (MSG, 50, 10, 1, 2, MU, NEQ, 0, ZERO, ZERO) - GO TO 700 - 611 MSG = 'SVODE-- MAXORD (=I1) .lt. 0 ' - CALL XERRWV (MSG, 30, 11, 1, 1, MAXORD, 0, 0, ZERO, ZERO) - GO TO 700 - 612 MSG = 'SVODE-- MXSTEP (=I1) .lt. 0 ' - CALL XERRWV (MSG, 30, 12, 1, 1, MXSTEP, 0, 0, ZERO, ZERO) - GO TO 700 - 613 MSG = 'SVODE-- MXHNIL (=I1) .lt. 0 ' - CALL XERRWV (MSG, 30, 13, 1, 1, MXHNIL, 0, 0, ZERO, ZERO) - GO TO 700 - 614 MSG = 'SVODE-- TOUT (=R1) behind T (=R2) ' - CALL XERRWV (MSG, 40, 14, 1, 0, 0, 0, 2, TOUT, T) - MSG = ' integration direction is given by H0 (=R1) ' - CALL XERRWV (MSG, 50, 14, 1, 0, 0, 0, 1, H0, ZERO) - GO TO 700 - 615 MSG = 'SVODE-- HMAX (=R1) .lt. 0.0 ' - CALL XERRWV (MSG, 30, 15, 1, 0, 0, 0, 1, HMAX, ZERO) - GO TO 700 - 616 MSG = 'SVODE-- HMIN (=R1) .lt. 0.0 ' - CALL XERRWV (MSG, 30, 16, 1, 0, 0, 0, 1, HMIN, ZERO) - GO TO 700 - 617 CONTINUE - MSG='SVODE-- RWORK length needed, LENRW (=I1), exceeds LRW (=I2)' - CALL XERRWV (MSG, 60, 17, 1, 2, LENRW, LRW, 0, ZERO, ZERO) - GO TO 700 - 618 CONTINUE - MSG='SVODE-- IWORK length needed, LENIW (=I1), exceeds LIW (=I2)' - CALL XERRWV (MSG, 60, 18, 1, 2, LENIW, LIW, 0, ZERO, ZERO) - GO TO 700 - 619 MSG = 'SVODE-- RTOL(I1) is R1 .lt. 0.0 ' - CALL XERRWV (MSG, 40, 19, 1, 1, I, 0, 1, RTOLI, ZERO) - GO TO 700 - 620 MSG = 'SVODE-- ATOL(I1) is R1 .lt. 0.0 ' - CALL XERRWV (MSG, 40, 20, 1, 1, I, 0, 1, ATOLI, ZERO) - GO TO 700 - 621 EWTI = RWORK(LEWT+I-1) - MSG = 'SVODE-- EWT(I1) is R1 .le. 0.0 ' - CALL XERRWV (MSG, 40, 21, 1, 1, I, 0, 1, EWTI, ZERO) - GO TO 700 - 622 CONTINUE - MSG='SVODE-- TOUT (=R1) too close to T(=R2) to start integration' - CALL XERRWV (MSG, 60, 22, 1, 0, 0, 0, 2, TOUT, T) - GO TO 700 - 623 CONTINUE - MSG='SVODE-- ITASK = I1 and TOUT (=R1) behind TCUR - HU (= R2) ' - CALL XERRWV (MSG, 60, 23, 1, 1, ITASK, 0, 2, TOUT, TP) - GO TO 700 - 624 CONTINUE - MSG='SVODE-- ITASK = 4 or 5 and TCRIT (=R1) behind TCUR (=R2) ' - CALL XERRWV (MSG, 60, 24, 1, 0, 0, 0, 2, TCRIT, TN) - GO TO 700 - 625 CONTINUE - MSG='SVODE-- ITASK = 4 or 5 and TCRIT (=R1) behind TOUT (=R2) ' - CALL XERRWV (MSG, 60, 25, 1, 0, 0, 0, 2, TCRIT, TOUT) - GO TO 700 - 626 MSG = 'SVODE-- At start of problem, too much accuracy ' - CALL XERRWV (MSG, 50, 26, 1, 0, 0, 0, 0, ZERO, ZERO) - MSG=' requested for precision of machine.. see TOLSF (=R1) ' - CALL XERRWV (MSG, 60, 26, 1, 0, 0, 0, 1, TOLSF, ZERO) - RWORK(14) = TOLSF - GO TO 700 - 627 MSG='SVODE-- Trouble from SVINDY. ITASK = I1, TOUT = R1. ' - CALL XERRWV (MSG, 60, 27, 1, 1, ITASK, 0, 1, TOUT, ZERO) -! - 700 CONTINUE - ISTATE = -3 - IF (LHOOK) CALL DR_HOOK('SVODE',1,ZHOOK_HANDLE) - RETURN -! - 800 MSG = 'SVODE-- Run aborted.. apparent infinite loop ' - CALL XERRWV (MSG, 50, 303, 2, 0, 0, 0, 0, ZERO, ZERO) - IF (LHOOK) CALL DR_HOOK('SVODE',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVODE diff --git a/src/arome/chem/internals/svset.F b/src/arome/chem/internals/svset.F deleted file mode 100644 index 82f7c72ca178c963acf7b3022f5f28e04f988c24..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svset.F +++ /dev/null @@ -1,204 +0,0 @@ -! ######spl - SUBROUTINE SVSET - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################ -!----------------------------------------------------------------------- -! Call sequence communication.. None -! COMMON block variables accessed.. -! /SVOD01/ -- EL(13), H, TAU(13), TQ(5), L(= NQ + 1), -! METH, NQ, NQWAIT -! -! Subroutines called by SVSET.. None -! Function routines called by SVSET.. None -!----------------------------------------------------------------------- -! SVSET is called by SVSTEP and sets coefficients for use there. -! -! For each order NQ, the coefficients in EL are calculated by use of -! the generating polynomial lambda(x), with coefficients EL(i). -! lambda(x) = EL(1) + EL(2)*x + ... + EL(NQ+1)*(x**NQ). -! For the backward differentiation formulas, -! NQ-1 -! lambda(x) = (1 + x/xi*(NQ)) * product (1 + x/xi(i) ) . -! i = 1 -! For the Adams formulas, -! NQ-1 -! (d/dx) lambda(x) = c * product (1 + x/xi(i) ) , -! i = 1 -! lambda(-1) = 0, lambda(0) = 1, -! where c is a normalization constant. -! In both cases, xi(i) is defined by -! H*xi(i) = t sub n - t sub (n-i) -! = H + TAU(1) + TAU(2) + ... TAU(i-1). -! -! -! In addition to variables described previously, communication -! with SVSET uses the following.. -! TAU = A vector of length 13 containing the past NQ values -! of H. -! EL = A vector of length 13 in which vset stores the -! coefficients for the corrector formula. -! TQ = A vector of length 5 in which vset stores constants -! used for the convergence test, the error test, and the -! selection of H at a new order. -! METH = The basic method indicator. -! NQ = The current order. -! L = NQ + 1, the length of the vector stored in EL, and -! the number of columns of the YH array being used. -! NQWAIT = A counter controlling the frequency of order changes. -! An order change is about to be considered if NQWAIT = 1. -!----------------------------------------------------------------------- -! -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for local variables -------------------------------- -! - REAL AHATN0, ALPH0, CNQM1, CORTES, CSUM, ELP, EM, & - & EM0, FLOTI, FLOTL, FLOTNQ, HSUM, ONE, RXI, RXIS, S, SIX, & - & T1, T2, T3, T4, T5, T6, TWO, XI, ZERO - INTEGER I, IBACK, J, JP1, NQM1, NQM2 -! - DIMENSION EM(13) -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE CORTES, ONE, SIX, TWO, ZERO -! - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! - DATA CORTES /0.1E0/ - DATA ONE /1.0E0/, SIX /6.0E0/, TWO /2.0E0/, ZERO /0.0E0/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVSET',0,ZHOOK_HANDLE) - FLOTL = REAL(L) - NQM1 = NQ - 1 - NQM2 = NQ - 2 - GO TO (100, 200), METH -! -! Set coefficients for Adams methods. ---------------------------------- - 100 IF (NQ .NE. 1) GO TO 110 - EL(1) = ONE - EL(2) = ONE - TQ(1) = ONE - TQ(2) = TWO - TQ(3) = SIX*TQ(2) - TQ(5) = ONE - GO TO 300 - 110 HSUM = H - EM(1) = ONE - FLOTNQ = FLOTL - ONE - DO 115 I = 2, L - 115 EM(I) = ZERO - DO 150 J = 1, NQM1 - IF ((J .NE. NQM1) .OR. (NQWAIT .NE. 1)) GO TO 130 - S = ONE - CSUM = ZERO - DO 120 I = 1, NQM1 - CSUM = CSUM + S*EM(I)/REAL(I+1) - 120 S = -S - TQ(1) = EM(NQM1)/(FLOTNQ*CSUM) - 130 RXI = H/HSUM - DO 140 IBACK = 1, J - I = (J + 2) - IBACK - 140 EM(I) = EM(I) + EM(I-1)*RXI - HSUM = HSUM + TAU(J) - 150 CONTINUE -! Compute integral from -1 to 0 of polynomial and of x times it. ------- - S = ONE - EM0 = ZERO - CSUM = ZERO - DO 160 I = 1, NQ - FLOTI = REAL(I) - EM0 = EM0 + S*EM(I)/FLOTI - CSUM = CSUM + S*EM(I)/(FLOTI+ONE) - 160 S = -S -! In EL, form coefficients of normalized integrated polynomial. -------- - S = ONE/EM0 - EL(1) = ONE - DO 170 I = 1, NQ - 170 EL(I+1) = S*EM(I)/REAL(I) - XI = HSUM/H - TQ(2) = XI*EM0/CSUM - TQ(5) = XI/EL(L) - IF (NQWAIT .NE. 1) GO TO 300 -! For higher order control constant, multiply polynomial by 1+x/xi(q). - - RXI = ONE/XI - DO 180 IBACK = 1, NQ - I = (L + 1) - IBACK - 180 EM(I) = EM(I) + EM(I-1)*RXI -! Compute integral of polynomial. -------------------------------------- - S = ONE - CSUM = ZERO - DO 190 I = 1, L - CSUM = CSUM + S*EM(I)/REAL(I+1) - 190 S = -S - TQ(3) = FLOTL*EM0/CSUM - GO TO 300 -! -! Set coefficients for BDF methods. ------------------------------------ - 200 DO 210 I = 3, L - 210 EL(I) = ZERO - EL(1) = ONE - EL(2) = ONE - ALPH0 = -ONE - AHATN0 = -ONE - HSUM = H - RXI = ONE - RXIS = ONE - IF (NQ .EQ. 1) GO TO 240 - DO 230 J = 1, NQM2 -! In EL, construct coefficients of (1+x/xi(1))*...*(1+x/xi(j+1)). ------ - HSUM = HSUM + TAU(J) - RXI = H/HSUM - JP1 = J + 1 - ALPH0 = ALPH0 - ONE/REAL(JP1) - DO 220 IBACK = 1, JP1 - I = (J + 3) - IBACK - 220 EL(I) = EL(I) + EL(I-1)*RXI - 230 CONTINUE - ALPH0 = ALPH0 - ONE/REAL(NQ) - RXIS = -EL(2) - ALPH0 - HSUM = HSUM + TAU(NQM1) - RXI = H/HSUM - AHATN0 = -EL(2) - RXI - DO 235 IBACK = 1, NQ - I = (NQ + 2) - IBACK - 235 EL(I) = EL(I) + EL(I-1)*RXIS - 240 T1 = ONE - AHATN0 + ALPH0 - T2 = ONE + REAL(NQ)*T1 - TQ(2) = ABS(ALPH0*T2/T1) - TQ(5) = ABS(T2/(EL(L)*RXI/RXIS)) - IF (NQWAIT .NE. 1) GO TO 300 - CNQM1 = RXIS/EL(L) - T3 = ALPH0 + ONE/REAL(NQ) - T4 = AHATN0 + RXI - ELP = T3/(ONE - T4 + T3) - TQ(1) = ABS(ELP/CNQM1) - HSUM = HSUM + TAU(NQ) - RXI = H/HSUM - T5 = ALPH0 - ONE/REAL(NQ+1) - T6 = AHATN0 - RXI - ELP = T2/(ONE - T6 + T5) - TQ(3) = ABS(ELP*RXI*(FLOTL + ONE)*T5) - 300 TQ(4) = CORTES*TQ(2) - IF (LHOOK) CALL DR_HOOK('SVSET',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE SVSET diff --git a/src/arome/chem/internals/svsol.F b/src/arome/chem/internals/svsol.F deleted file mode 100644 index ef1882a68a95de1ca00333205608df2f93febe87..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svsol.F +++ /dev/null @@ -1,104 +0,0 @@ -! ######spl - SUBROUTINE SVSOL (WM, IWM, X, IERSL) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! #################################### - REAL WM, X - INTEGER IWM, IERSL - DIMENSION WM(*), IWM(*), X(*) -!----------------------------------------------------------------------- -! Call sequence input -- WM, IWM, X -! Call sequence output -- X, IERSL -! COMMON block variables accessed.. -! /SVOD01/ -- H, RL1, MITER, N -! -! Subroutines called by SVSOL.. SGESL, SGBSL -! Function routines called by SVSOL.. None -!----------------------------------------------------------------------- -! This routine manages the solution of the linear system arising from -! a chord iteration. It is called if MITER .ne. 0. -! If MITER is 1 or 2, it calls SGESL to accomplish this. -! If MITER = 3 it updates the coefficient H*RL1 in the diagonal -! matrix, and then computes the solution. -! If MITER is 4 or 5, it calls SGBSL. -! Communication with SVSOL uses the following variables.. -! WM = Real work space containing the inverse diagonal matrix if -! MITER = 3 and the LU decomposition of the matrix otherwise. -! Storage of matrix elements starts at WM(3). -! WM also contains the following matrix-related data.. -! WM(1) = SQRT(UROUND) (not used here), -! WM(2) = HRL1, the previous value of H*RL1, used if MITER = 3. -! IWM = Integer work space containing pivot information, starting at -! IWM(31), if MITER is 1, 2, 4, or 5. IWM also contains band -! parameters ML = IWM(1) and MU = IWM(2) if MITER is 4 or 5. -! X = The right-hand side vector on input, and the solution vector -! on output, of length N. -! IERSL = Output flag. IERSL = 0 if no trouble occurred. -! IERSL = 1 if a singular matrix arose with MITER = 3. -!----------------------------------------------------------------------- -! -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for local variables -------------------------------- -! - INTEGER I, MEBAND, ML, MU - REAL DI, HRL1, ONE, PHRL1, R, ZERO -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE ONE, ZERO -! - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! - DATA ONE /1.0E0/, ZERO /0.0E0/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVSOL',0,ZHOOK_HANDLE) - IERSL = 0 - GO TO (100, 100, 300, 400, 400), MITER - 100 CALL SGESL (WM(3), N, N, IWM(31), X, 0) - IF (LHOOK) CALL DR_HOOK('SVSOL',1,ZHOOK_HANDLE) - RETURN -! - 300 PHRL1 = WM(2) - HRL1 = H*RL1 - WM(2) = HRL1 - IF (HRL1 .EQ. PHRL1) GO TO 330 - R = HRL1/PHRL1 - DO 320 I = 1,N - DI = ONE - R*(ONE - ONE/WM(I+2)) - IF (ABS(DI) .EQ. ZERO) GO TO 390 - 320 WM(I+2) = ONE/DI -! - 330 DO 340 I = 1,N - 340 X(I) = WM(I+2)*X(I) - IF (LHOOK) CALL DR_HOOK('SVSOL',1,ZHOOK_HANDLE) - RETURN - 390 IERSL = 1 - IF (LHOOK) CALL DR_HOOK('SVSOL',1,ZHOOK_HANDLE) - RETURN -! - 400 ML = IWM(1) - MU = IWM(2) - MEBAND = 2*ML + MU + 1 - CALL SGBSL (WM(3), MEBAND, N, ML, MU, IWM(31), X, 0) - IF (LHOOK) CALL DR_HOOK('SVSOL',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVSOL diff --git a/src/arome/chem/internals/svsrco.F b/src/arome/chem/internals/svsrco.F deleted file mode 100644 index 3ecbda4995f8f8526f7d277b4714543cf6bd6f17..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svsrco.F +++ /dev/null @@ -1,68 +0,0 @@ -! ######spl - SUBROUTINE SVSRCO (RSAV, ISAV, JOB) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################### - REAL RSAV - INTEGER ISAV, JOB - DIMENSION RSAV(*), ISAV(*) -!----------------------------------------------------------------------- -! Call sequence input -- RSAV, ISAV, JOB -! Call sequence output -- RSAV, ISAV -! COMMON block variables accessed -- All of /SVOD01/ and /SVOD02/ -! -! Subroutines/functions called by SVSRCO.. None -!----------------------------------------------------------------------- -! This routine saves or restores (depending on JOB) the contents of the -! COMMON blocks SVOD01 and SVOD02, which are used internally by SVODE. -! -! RSAV = real array of length 49 or more. -! ISAV = integer array of length 41 or more. -! JOB = flag indicating to save or restore the COMMON blocks.. -! JOB = 1 if COMMON is to be saved (written to RSAV/ISAV). -! JOB = 2 if COMMON is to be restored (read from RSAV/ISAV). -! A call with JOB = 2 presumes a prior call with JOB = 1. -!----------------------------------------------------------------------- - REAL RVOD1, RVOD2 - INTEGER IVOD1, IVOD2 - INTEGER I, LENIV1, LENIV2, LENRV1, LENRV2 -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE LENRV1, LENIV1, LENRV2, LENIV2 -! - COMMON /SVOD01/ RVOD1(48), IVOD1(33) - COMMON /SVOD02/ RVOD2(1), IVOD2(8) - DATA LENRV1/48/, LENIV1/33/, LENRV2/1/, LENIV2/8/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVSRCO',0,ZHOOK_HANDLE) - IF (JOB .EQ. 2) GO TO 100 - DO 10 I = 1,LENRV1 - 10 RSAV(I) = RVOD1(I) - DO 15 I = 1,LENRV2 - 15 RSAV(LENRV1+I) = RVOD2(I) -! - DO 20 I = 1,LENIV1 - 20 ISAV(I) = IVOD1(I) - DO 25 I = 1,LENIV2 - 25 ISAV(LENIV1+I) = IVOD2(I) -! - IF (LHOOK) CALL DR_HOOK('SVSRCO',1,ZHOOK_HANDLE) - RETURN -! - 100 CONTINUE - DO 110 I = 1,LENRV1 - 110 RVOD1(I) = RSAV(I) - DO 115 I = 1,LENRV2 - 115 RVOD2(I) = RSAV(LENRV1+I) -! - DO 120 I = 1,LENIV1 - 120 IVOD1(I) = ISAV(I) - DO 125 I = 1,LENIV2 - 125 IVOD2(I) = ISAV(LENIV1+I) -! - IF (LHOOK) CALL DR_HOOK('SVSRCO',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVSRCO diff --git a/src/arome/chem/internals/svstep.F b/src/arome/chem/internals/svstep.F deleted file mode 100644 index ecc6e4f5f34cc6c69a653a53a238deb21087cdb0..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/svstep.F +++ /dev/null @@ -1,448 +0,0 @@ -! ######spl - SUBROUTINE SVSTEP (Y, YH, LDYH, YH1, EWT, SAVF, VSAV, ACOR, & - & WM, IWM, F, JAC, PSOL, VNLS, RPAR, IPAR, KMI, KINDEX) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ########################################################### -! - EXTERNAL F, JAC, PSOL, VNLS - REAL Y, YH, YH1, EWT, SAVF, VSAV, ACOR, WM, RPAR - INTEGER LDYH, IWM, IPAR - DIMENSION Y(*), YH(LDYH,*), YH1(*), EWT(*), SAVF(*), VSAV(*), & - & ACOR(*), WM(*), IWM(*), RPAR(*), IPAR(*) - INTEGER KMI, KINDEX -!----------------------------------------------------------------------- -! Call sequence input -- Y, YH, LDYH, YH1, EWT, SAVF, VSAV, -! ACOR, WM, IWM, F, JAC, PSOL, VNLS, RPAR, IPAR -! Call sequence output -- YH, ACOR, WM, IWM -! COMMON block variables accessed.. -! /SVOD01/ ACNRM, EL(13), H, HMIN, HMXI, HNEW, HSCAL, RC, TAU(13), -! TQ(5), TN, JCUR, JSTART, KFLAG, KUTH, -! L, LMAX, MAXORD, MITER, N, NEWQ, NQ, NQWAIT -! /SVOD02/ HU, NCFN, NETF, NFE, NQU, NST -! -! Subroutines called by SVSTEP.. F, SAXPY, CH_SCOPY, SSCAL, -! SVJUST, VNLS, SVSET -! Function routines called by SVSTEP.. SVNORM -!----------------------------------------------------------------------- -! SVSTEP performs one step of the integration of an initial value -! problem for a system of ordinary differential equations. -! SVSTEP calls subroutine VNLS for the solution of the nonlinear system -! arising in the time step. Thus it is independent of the problem -! Jacobian structure and the type of nonlinear system solution method. -! SVSTEP returns a completion flag KFLAG (in COMMON). -! A return with KFLAG = -1 or -2 means either ABS(H) = HMIN or 10 -! consecutive failures occurred. On a return with KFLAG negative, -! the values of TN and the YH array are as of the beginning of the last -! step, and H is the last step size attempted. -! -! Communication with SVSTEP is done with the following variables.. -! -! Y = An array of length N used for the dependent variable vector. -! YH = An LDYH by LMAX array containing the dependent variables -! and their approximate scaled derivatives, where -! LMAX = MAXORD + 1. YH(i,j+1) contains the approximate -! j-th derivative of y(i), scaled by H**j/factorial(j) -! (j = 0,1,...,NQ). On entry for the first step, the first -! two columns of YH must be set from the initial values. -! LDYH = A constant integer .ge. N, the first dimension of YH. -! N is the number of ODEs in the system. -! YH1 = A one-dimensional array occupying the same space as YH. -! EWT = An array of length N containing multiplicative weights -! for local error measurements. Local errors in y(i) are -! compared to 1.0/EWT(i) in various error tests. -! SAVF = An array of working storage, of length N. -! also used for input of YH(*,MAXORD+2) when JSTART = -1 -! and MAXORD .lt. the current order NQ. -! VSAV = A work array of length N passed to subroutine VNLS. -! ACOR = A work array of length N, used for the accumulated -! corrections. On a successful return, ACOR(i) contains -! the estimated one-step local error in y(i). -! WM,IWM = Real and integer work arrays associated with matrix -! operations in VNLS. -! F = Dummy name for the user supplied subroutine for f. -! JAC = Dummy name for the user supplied Jacobian subroutine. -! PSOL = Dummy name for the subroutine passed to VNLS, for -! possible use there. -! VNLS = Dummy name for the nonlinear system solving subroutine, -! whose real name is dependent on the method used. -! RPAR, IPAR = Dummy names for user's real and integer work arrays. -!----------------------------------------------------------------------- -! -! Type declarations for labeled COMMON block SVOD01 -------------------- -! - REAL ACNRM, CCMXJ, CONP, CRATE, DRC, EL, & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU, TQ, TN, UROUND - INTEGER ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH -! -! Type declarations for labeled COMMON block SVOD02 -------------------- -! - REAL HU - INTEGER NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! -! Type declarations for local variables -------------------------------- -! - REAL ADDON, BIAS1,BIAS2,BIAS3, CNQUOT, DDN, DSM, DUP, & - & ETACF, ETAMIN, ETAMX1, ETAMX2, ETAMX3, ETAMXF, & - & ETAQ, ETAQM1, ETAQP1, FLOTL, ONE, ONEPSM, & - & R, THRESH, TOLD, ZERO - INTEGER I, I1, I2, IBACK, J, JB, KFC, KFH, MXNCF, NCF, NFLAG -! -! Type declaration for function subroutines called --------------------- -! - REAL SVNORM -!----------------------------------------------------------------------- -! The following Fortran-77 declaration is to cause the values of the -! listed (local) variables to be saved between calls to this integrator. -!----------------------------------------------------------------------- - SAVE ADDON, BIAS1, BIAS2, BIAS3, & - & ETACF, ETAMIN, ETAMX1, ETAMX2, ETAMX3, ETAMXF, & - & KFC, KFH, MXNCF, ONEPSM, THRESH, ONE, ZERO -!----------------------------------------------------------------------- - COMMON /SVOD01/ ACNRM, CCMXJ, CONP, CRATE, DRC, EL(13), & - & ETA, ETAMAX, H, HMIN, HMXI, HNEW, HSCAL, PRL1, & - & RC, RL1, TAU(13), TQ(5), TN, UROUND, & - & ICF, INIT, IPUP, JCUR, JSTART, JSV, KFLAG, KUTH, & - & L, LMAX, LYH, LEWT, LACOR, LSAVF, LWM, LIWM, & - & LOCJS, MAXORD, METH, MITER, MSBJ, MXHNIL, MXSTEP, & - & N, NEWH, NEWQ, NHNIL, NQ, NQNYH, NQWAIT, NSLJ, & - & NSLP, NYH - COMMON /SVOD02/ HU, NCFN, NETF, NFE, NJE, NLU, NNI, NQU, NST -! - DATA KFC/-3/, KFH/-7/, MXNCF/10/ - DATA ADDON /1.0E-6/, BIAS1 /6.0E0/, BIAS2 /6.0E0/, & - & BIAS3 /10.0E0/, ETACF /0.25E0/, ETAMIN /0.1E0/, & - & ETAMXF /0.2E0/, ETAMX1 /1.0E4/, ETAMX2 /10.0E0/, & - & ETAMX3 /10.0E0/, ONEPSM /1.00001E0/, THRESH /1.5E0/ - DATA ONE/1.0E0/, ZERO/0.0E0/ -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('SVSTEP',0,ZHOOK_HANDLE) - KFLAG = 0 - TOLD = TN - NCF = 0 - JCUR = 0 - NFLAG = 0 - IF (JSTART .GT. 0) GO TO 20 - IF (JSTART .EQ. -1) GO TO 100 -!----------------------------------------------------------------------- -! On the first call, the order is set to 1, and other variables are -! initialized. ETAMAX is the maximum ratio by which H can be increased -! in a single step. It is normally 1.5, but is larger during the -! first 10 steps to compensate for the small initial H. If a failure -! occurs (in corrector convergence or error test), ETAMAX is set to 1 -! for the next increase. -!----------------------------------------------------------------------- - LMAX = MAXORD + 1 - NQ = 1 - L = 2 - NQNYH = NQ*LDYH - TAU(1) = H - PRL1 = ONE - RC = ZERO - ETAMAX = ETAMX1 - NQWAIT = 2 - HSCAL = H - GO TO 200 -!----------------------------------------------------------------------- -! Take preliminary actions on a normal continuation step (JSTART.GT.0). -! If the driver changed H, then ETA must be reset and NEWH set to 1. -! If a change of order was dictated on the previous step, then -! it is done here and appropriate adjustments in the history are made. -! On an order decrease, the history array is adjusted by SVJUST. -! On an order increase, the history array is augmented by a column. -! On a change of step size H, the history array YH is rescaled. -!----------------------------------------------------------------------- - 20 CONTINUE - IF (KUTH .EQ. 1) THEN - ETA = MIN(ETA,H/HSCAL) - NEWH = 1 - ENDIF - 50 IF (NEWH .EQ. 0) GO TO 200 - IF (NEWQ .EQ. NQ) GO TO 150 - IF (NEWQ .LT. NQ) THEN - CALL SVJUST (YH, LDYH, -1) - NQ = NEWQ - L = NQ + 1 - NQWAIT = L - GO TO 150 - ENDIF - IF (NEWQ .GT. NQ) THEN - CALL SVJUST (YH, LDYH, 1) - NQ = NEWQ - L = NQ + 1 - NQWAIT = L - GO TO 150 - ENDIF -!----------------------------------------------------------------------- -! The following block handles preliminaries needed when JSTART = -1. -! If N was reduced, zero out part of YH to avoid undefined references. -! If MAXORD was reduced to a value less than the tentative order NEWQ, -! then NQ is set to MAXORD, and a new H ratio ETA is chosen. -! Otherwise, we take the same preliminary actions as for JSTART .gt. 0. -! In any case, NQWAIT is reset to L = NQ + 1 to prevent further -! changes in order for that many steps. -! The new H ratio ETA is limited by the input H if KUTH = 1, -! by HMIN if KUTH = 0, and by HMXI in any case. -! Finally, the history array YH is rescaled. -!----------------------------------------------------------------------- - 100 CONTINUE - LMAX = MAXORD + 1 - IF (N .EQ. LDYH) GO TO 120 - I1 = 1 + (NEWQ + 1)*LDYH - I2 = (MAXORD + 1)*LDYH - IF (I1 .GT. I2) GO TO 120 - DO 110 I = I1, I2 - 110 YH1(I) = ZERO - 120 IF (NEWQ .LE. MAXORD) GO TO 140 - FLOTL = REAL(LMAX) - IF (MAXORD .LT. NQ-1) THEN - DDN = SVNORM (N, SAVF, EWT)/TQ(1) - ETA = ONE/((BIAS1*DDN)**(ONE/FLOTL) + ADDON) - ENDIF - IF (MAXORD .EQ. NQ .AND. NEWQ .EQ. NQ+1) ETA = ETAQ - IF (MAXORD .EQ. NQ-1 .AND. NEWQ .EQ. NQ+1) THEN - ETA = ETAQM1 - CALL SVJUST (YH, LDYH, -1) - ENDIF - IF (MAXORD .EQ. NQ-1 .AND. NEWQ .EQ. NQ) THEN - DDN = SVNORM (N, SAVF, EWT)/TQ(1) - ETA = ONE/((BIAS1*DDN)**(ONE/FLOTL) + ADDON) - CALL SVJUST (YH, LDYH, -1) - ENDIF - ETA = MIN(ETA,ONE) - NQ = MAXORD - L = LMAX - 140 IF (KUTH .EQ. 1) ETA = MIN(ETA,ABS(H/HSCAL)) - IF (KUTH .EQ. 0) ETA = MAX(ETA,HMIN/ABS(HSCAL)) - ETA = ETA/MAX(ONE,ABS(HSCAL)*HMXI*ETA) - NEWH = 1 - NQWAIT = L - IF (NEWQ .LE. MAXORD) GO TO 50 -! Rescale the history array for a change in H by a factor of ETA. ------ - 150 R = ONE - DO 180 J = 2, L - R = R*ETA - CALL SSCAL (N, R, YH(1,J), 1 ) - 180 CONTINUE - H = HSCAL*ETA - HSCAL = H - RC = RC*ETA - NQNYH = NQ*LDYH -!----------------------------------------------------------------------- -! This section computes the predicted values by effectively -! multiplying the YH array by the Pascal triangle matrix. -! SVSET is called to calculate all integration coefficients. -! RC is the ratio of new to old values of the coefficient H/EL(2)=h/l1. -!----------------------------------------------------------------------- - 200 TN = TN + H - I1 = NQNYH + 1 - DO 220 JB = 1, NQ - I1 = I1 - LDYH - DO 210 I = I1, NQNYH - 210 YH1(I) = YH1(I) + YH1(I+LDYH) - 220 CONTINUE - CALL SVSET - RL1 = ONE/EL(2) - RC = RC*(RL1/PRL1) - PRL1 = RL1 -! -! Call the nonlinear system solver. ------------------------------------ -! - CALL VNLS (Y, YH, LDYH, VSAV, SAVF, EWT, ACOR, IWM, WM, & - & F, JAC, PSOL, NFLAG, RPAR, IPAR, KMI, KINDEX) -! - IF (NFLAG .EQ. 0) GO TO 450 -!----------------------------------------------------------------------- -! The VNLS routine failed to achieve convergence (NFLAG .NE. 0). -! The YH array is retracted to its values before prediction. -! The step size H is reduced and the step is retried, if possible. -! Otherwise, an error exit is taken. -!----------------------------------------------------------------------- - NCF = NCF + 1 - NCFN = NCFN + 1 - ETAMAX = ONE - TN = TOLD - I1 = NQNYH + 1 - DO 430 JB = 1, NQ - I1 = I1 - LDYH - DO 420 I = I1, NQNYH - 420 YH1(I) = YH1(I) - YH1(I+LDYH) - 430 CONTINUE - IF (NFLAG .LT. -1) GO TO 680 - IF (ABS(H) .LE. HMIN*ONEPSM) GO TO 670 - IF (NCF .EQ. MXNCF) GO TO 670 - ETA = ETACF - ETA = MAX(ETA,HMIN/ABS(H)) - NFLAG = -1 - GO TO 150 -!----------------------------------------------------------------------- -! The corrector has converged (NFLAG = 0). The local error test is -! made and control passes to statement 500 if it fails. -!----------------------------------------------------------------------- - 450 CONTINUE - DSM = ACNRM/TQ(2) - IF (DSM .GT. ONE) GO TO 500 -!----------------------------------------------------------------------- -! After a successful step, update the YH and TAU arrays and decrement -! NQWAIT. If NQWAIT is then 1 and NQ .lt. MAXORD, then ACOR is saved -! for use in a possible order increase on the next step. -! If ETAMAX = 1 (a failure occurred this step), keep NQWAIT .ge. 2. -!----------------------------------------------------------------------- - KFLAG = 0 - NST = NST + 1 - HU = H - NQU = NQ - DO 470 IBACK = 1, NQ - I = L - IBACK - 470 TAU(I+1) = TAU(I) - TAU(1) = H - DO 480 J = 1, L - CALL SAXPY (N, EL(J), ACOR, 1, YH(1,J), 1 ) - 480 CONTINUE - NQWAIT = NQWAIT - 1 - IF ((L .EQ. LMAX) .OR. (NQWAIT .NE. 1)) GO TO 490 - CALL CH_SCOPY (N, ACOR, 1, YH(1,LMAX), 1 ) - CONP = TQ(5) - 490 IF (ETAMAX .NE. ONE) GO TO 560 - IF (NQWAIT .LT. 2) NQWAIT = 2 - NEWQ = NQ - NEWH = 0 - ETA = ONE - HNEW = H - GO TO 690 -!----------------------------------------------------------------------- -! The error test failed. KFLAG keeps track of multiple failures. -! Restore TN and the YH array to their previous values, and prepare -! to try the step again. Compute the optimum step size for the -! same order. After repeated failures, H is forced to decrease -! more rapidly. -!----------------------------------------------------------------------- - 500 KFLAG = KFLAG - 1 - NETF = NETF + 1 - NFLAG = -2 - TN = TOLD - I1 = NQNYH + 1 - DO 520 JB = 1, NQ - I1 = I1 - LDYH - DO 510 I = I1, NQNYH - 510 YH1(I) = YH1(I) - YH1(I+LDYH) - 520 CONTINUE - IF (ABS(H) .LE. HMIN*ONEPSM) GO TO 660 - ETAMAX = ONE - IF (KFLAG .LE. KFC) GO TO 530 -! Compute ratio of new H to current H at the current order. ------------ - FLOTL = REAL(L) - ETA = ONE/((BIAS2*DSM)**(ONE/FLOTL) + ADDON) - ETA = MAX(ETA,HMIN/ABS(H),ETAMIN) - IF ((KFLAG .LE. -2) .AND. (ETA .GT. ETAMXF)) ETA = ETAMXF - GO TO 150 -!----------------------------------------------------------------------- -! Control reaches this section if 3 or more consecutive failures -! have occurred. It is assumed that the elements of the YH array -! have accumulated errors of the wrong order. The order is reduced -! by one, if possible. Then H is reduced by a factor of 0.1 and -! the step is retried. After a total of 7 consecutive failures, -! an exit is taken with KFLAG = -1. -!----------------------------------------------------------------------- - 530 IF (KFLAG .EQ. KFH) GO TO 660 - IF (NQ .EQ. 1) GO TO 540 - ETA = MAX(ETAMIN,HMIN/ABS(H)) - CALL SVJUST (YH, LDYH, -1) - L = NQ - NQ = NQ - 1 - NQWAIT = L - GO TO 150 - 540 ETA = MAX(ETAMIN,HMIN/ABS(H)) - H = H*ETA - HSCAL = H - TAU(1) = H -! -!*UPG*MNH -! - CALL F (N, TN, Y, SAVF, RPAR, IPAR, KMI, KINDEX) -! -!*UPG*MNH -! - NFE = NFE + 1 - DO 550 I = 1, N - 550 YH(I,2) = H*SAVF(I) - NQWAIT = 10 - GO TO 200 -!----------------------------------------------------------------------- -! If NQWAIT = 0, an increase or decrease in order by one is considered. -! Factors ETAQ, ETAQM1, ETAQP1 are computed by which H could -! be multiplied at order q, q-1, or q+1, respectively. -! The largest of these is determined, and the new order and -! step size set accordingly. -! A change of H or NQ is made only if H increases by at least a -! factor of THRESH. If an order change is considered and rejected, -! then NQWAIT is set to 2 (reconsider it after 2 steps). -!----------------------------------------------------------------------- -! Compute ratio of new H to current H at the current order. ------------ - 560 FLOTL = REAL(L) - ETAQ = ONE/((BIAS2*DSM)**(ONE/FLOTL) + ADDON) - IF (NQWAIT .NE. 0) GO TO 600 - NQWAIT = 2 - ETAQM1 = ZERO - IF (NQ .EQ. 1) GO TO 570 -! Compute ratio of new H to current H at the current order less one. --- - DDN = SVNORM (N, YH(1,L), EWT)/TQ(1) - ETAQM1 = ONE/((BIAS1*DDN)**(ONE/(FLOTL - ONE)) + ADDON) - 570 ETAQP1 = ZERO - IF (L .EQ. LMAX) GO TO 580 -! Compute ratio of new H to current H at current order plus one. ------- - CNQUOT = (TQ(5)/CONP)*(H/TAU(2))**L - DO 575 I = 1, N - 575 SAVF(I) = ACOR(I) - CNQUOT*YH(I,LMAX) - DUP = SVNORM (N, SAVF, EWT)/TQ(3) - ETAQP1 = ONE/((BIAS3*DUP)**(ONE/(FLOTL + ONE)) + ADDON) - 580 IF (ETAQ .GE. ETAQP1) GO TO 590 - IF (ETAQP1 .GT. ETAQM1) GO TO 620 - GO TO 610 - 590 IF (ETAQ .LT. ETAQM1) GO TO 610 - 600 ETA = ETAQ - NEWQ = NQ - GO TO 630 - 610 ETA = ETAQM1 - NEWQ = NQ - 1 - GO TO 630 - 620 ETA = ETAQP1 - NEWQ = NQ + 1 - CALL CH_SCOPY (N, ACOR, 1, YH(1,LMAX), 1) -! Test tentative new H against THRESH, ETAMAX, and HMXI, then exit. ---- - 630 IF (ETA .LT. THRESH .OR. ETAMAX .EQ. ONE) GO TO 640 - ETA = MIN(ETA,ETAMAX) - ETA = ETA/MAX(ONE,ABS(H)*HMXI*ETA) - NEWH = 1 - HNEW = H*ETA - GO TO 690 - 640 NEWQ = NQ - NEWH = 0 - ETA = ONE - HNEW = H - GO TO 690 -!----------------------------------------------------------------------- -! All returns are made through this section. -! On a successful return, ETAMAX is reset and ACOR is scaled. -!----------------------------------------------------------------------- - 660 KFLAG = -1 - GO TO 720 - 670 KFLAG = -2 - GO TO 720 - 680 IF (NFLAG .EQ. -2) KFLAG = -3 - IF (NFLAG .EQ. -3) KFLAG = -4 - GO TO 720 - 690 ETAMAX = ETAMX3 - IF (NST .LE. 10) ETAMAX = ETAMX2 - 700 R = ONE/TQ(2) - CALL SSCAL (N, R, ACOR, 1) - 720 JSTART = 1 - IF (LHOOK) CALL DR_HOOK('SVSTEP',1,ZHOOK_HANDLE) - RETURN - END SUBROUTINE SVSTEP diff --git a/src/arome/chem/internals/tridag.F b/src/arome/chem/internals/tridag.F deleted file mode 100644 index 1c391b426b70459ac8512f7b1bbfd71770543b45..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/tridag.F +++ /dev/null @@ -1,89 +0,0 @@ -! ######spl - SUBROUTINE tridag(a,b,c,r,u,n) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!_______________________________________________________________________ -! solves tridiagonal system. From Numerical Recipies, p. 40 -!_______________________________________________________________________ - - IMPLICIT NONE - -! input: - INTEGER n - REAL a, b, c, r - DIMENSION a(n),b(n),c(n),r(n) - -! output: - REAL u - DIMENSION u(n) - -! local: - INTEGER j - -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - REAL bet, gam - DIMENSION gam(2*kz) -!_______________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('TRIDAG',0,ZHOOK_HANDLE) - IF (b(1) .EQ. 0.) STOP 1001 - bet = b(1) - u(1) = r(1)/bet - DO 11, j = 2, n - gam(j) = c(j - 1)/bet - bet = b(j) - a(j)*gam(j) - IF (bet .EQ. 0.) STOP 2002 - u(j) = (r(j) - a(j)*u(j - 1))/bet - 11 CONTINUE - DO 12, j = n - 1, 1, -1 - u(j) = u(j) - gam(j + 1)*u(j + 1) - 12 CONTINUE -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('TRIDAG',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE tridag diff --git a/src/arome/chem/internals/troe.F90 b/src/arome/chem/internals/troe.F90 deleted file mode 100644 index 5bd56a0d737cd8f0c7c5a869c1661498cd2f6613..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/troe.F90 +++ /dev/null @@ -1,63 +0,0 @@ -! ######spl - FUNCTION TROE(PCOEF,PKO, PNEXP, PKINF, PMEXP, PM, PT,KVECNPT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - !! ############################################################# - !! - !!*** *TROE* - !! - !! PURPOSE - !! ------- - ! this function implements the TROE reaction rate for RACM - !! - !! REFERENCE - !! --------- - !! Stockwell et al., JGR, 1997 - !! - !! AUTHOR - !! ------ - !! Karsten Suhre (LA) - !! - !! MODIFICATIONS - !! ------------- - !! Original 27/01/98 - !! - !!------------------------------------------------------------------------------ - !! - !! EXTERNAL - !! -------- - !! none - !! - !! IMPLICIT ARGUMENTS - !! ------------------ - !! none - !! - !! EXPLICIT ARGUMENTS - !! ------------------ - IMPLICIT NONE - INTEGER, INTENT(IN) :: KVECNPT ! no. of points in vector mask - REAL, DIMENSION(KVECNPT) :: TROE - REAL, INTENT(IN) :: PCOEF,PKO, PNEXP, PKINF, PMEXP - REAL, DIMENSION(KVECNPT), INTENT(IN) :: PM, PT - !! - !! LOCAL VARIABLES - !! --------------- - REAL, DIMENSION(KVECNPT) :: ZKOTM, ZKINFT, ZFACT - !! - !------------------------------------------------------------------------------ - !! - !! EXECUTABLE STATEMENTS - !! --------------------- - ! - !* 1. THE EXPRESSION - ! ----------------- - ! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('TROE',0,ZHOOK_HANDLE) - ZKOTM(:) = PM(:) * PKO * ( (PT(:)/300.)**(-PNEXP) ) - ZKINFT(:) = PKINF * ( (PT(:)/300.)**(-PMEXP) ) - ZFACT(:) = 0.6**(1./(1.+ALOG10(ZKOTM(:)/ZKINFT(:))**2 )) - TROE(:) = PCOEF*(ZKOTM(:)/(1.+ZKOTM(:)/ZKINFT(:)))*ZFACT(:) - ! - IF (LHOOK) CALL DR_HOOK('TROE',1,ZHOOK_HANDLE) - END FUNCTION TROE diff --git a/src/arome/chem/internals/troe_equil.F90 b/src/arome/chem/internals/troe_equil.F90 deleted file mode 100644 index b3bb9707dc50e4896a2334b72d40d8e788f79e6c..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/troe_equil.F90 +++ /dev/null @@ -1,63 +0,0 @@ -! ######spl - FUNCTION TROE_EQUIL(PKO, PNEXP, PKINF, PMEXP, PAFACT, PB, PM, PT,KVECNPT) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - !! ######################################################################### - !! - !!*** *TROE_EQUIL* - !! - !! PURPOSE - !! ------- - ! this function implements the TROE_EQUIL reaction rate for RACM - !! - !! REFERENCE - !! --------- - !! Stockwell et al., JGR, 1997 - !! - !! AUTHOR - !! ------ - !! Karsten Suhre (LA) - !! - !! MODIFICATIONS - !! ------------- - !! Original 27/01/98 - !! - !!------------------------------------------------------------------------------ - !! - !! EXTERNAL - !! -------- - !! none - !! - !! IMPLICIT ARGUMENTS - !! ------------------ - !! none - !! - !! EXPLICIT ARGUMENTS - !! ------------------ - IMPLICIT NONE - INTEGER, INTENT(IN) :: KVECNPT ! no. of points in vector mask - REAL,DIMENSION(KVECNPT) :: TROE_EQUIL - REAL, INTENT(IN) :: PKO, PNEXP, PKINF, PMEXP, PAFACT, PB - REAL, DIMENSION(KVECNPT), INTENT(IN) :: PM, PT - !! - !! LOCAL VARIABLES - !! --------------- - REAL, DIMENSION(KVECNPT) :: ZKOTM, ZKINFT, ZFACT - !! - !------------------------------------------------------------------------------ - !! - !! EXECUTABLE STATEMENTS - !! --------------------- - ! - !* 1. THE EXPRESSION - ! ----------------- - ! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('TROE_EQUIL',0,ZHOOK_HANDLE) - ZKOTM(:) = PM(:) * PKO * ( (PT(:)/300.)**(-PNEXP) ) - ZKINFT(:) = PKINF * ( (PT(:)/300.)**(-PMEXP) ) - ZFACT(:) = 0.6**(1./(1.+ALOG10(ZKOTM(:)/ZKINFT(:))**2 )) - TROE_EQUIL(:) = PAFACT*exp(-PB/PT)*(ZKOTM/(1.+ZKOTM(:)/ZKINFT(:)))*ZFACT(:) - ! - IF (LHOOK) CALL DR_HOOK('TROE_EQUIL',1,ZHOOK_HANDLE) - END FUNCTION TROE_EQUIL diff --git a/src/arome/chem/internals/tuvmain.F b/src/arome/chem/internals/tuvmain.F deleted file mode 100644 index 4ebbac8cdd37a899af53018d32ae6e92357bcda7..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/tuvmain.F +++ /dev/null @@ -1,443 +0,0 @@ -! ######spl - subroutine tuvmain (asza, idate, & - & albnew, dobnew, & - & nlevel, az, lwc, & - & njout, jout, jlabelout) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!_______________________________________________________________________ -! PROGRAM tuv -! Tropospheric Ultraviolet-Visible radiation model -! version 3.9 -! Feb. 97 by Madronich et al. -!_______________________________________________________________________ -! DATE: Mon Mar 15 09:50:41 MET 1999 -! FILE: tuv39.f -! MODIFIED BY: Karsten Suhre as follows -! - all modifications are indicated by *KS: or *ks: -! - concatenate all sources in one file -! - insert all include 'params' directly into the code -! and change the following parameters: iout=6, kin=78, kz=151, kw=150 -! - modify tuv.f to become a subroutine called tuvmain.f -! - save ALL variables (on HP) and only concerned variables (on LINUX pgf90) -! -!_______________________________________________________________________ -!-----------------------------------------------------------------------------* -!= This program is free software; you can redistribute it and/or modify =* -!= it under the terms of the GNU General Public License as published by the =* -!= Free Software Foundation; either version 2 of the license, or (at your =* -!= option) any later version. =* -!= The TUV package is distributed in the hope that it will be useful, but =* -!= WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTIBI- =* -!= LITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public =* -!= License for more details. =* -!= To obtain a copy of the GNU General Public License, write to: =* -!= Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. =* -!-----------------------------------------------------------------------------* -!= To contact the authors, please mail to: =* -!= Sasha Madronich, NCAR/ACD, P.O.Box 3000, Boulder, CO, 80307-3000, USA or =* -!= send email to: sasha@ucar.edu =* -!-----------------------------------------------------------------------------* -!= Copyright (C) 1994,95,96 University Corporation for Atmospheric Research =* -!-----------------------------------------------------------------------------* - - IMPLICIT NONE - SAVE - -! include parameter file - -!_________________________________________________ -!ks: INCLUDE 'params' has been inserted here -!_________________________________________________ -! BROADLY USED PARAMETERS: -!_________________________________________________ -! i/o file unit numbers - INTEGER kout, kin -! output - PARAMETER(kout=6) -! input - PARAMETER(kin=78) -!_________________________________________________ -! altitude, wavelength grids - INTEGER kz, kw -! altitude - PARAMETER(kz=151) -! wavelength - PARAMETER(kw=150) -!_________________________________________________ -! number of weighting functions - INTEGER ks, kj -! wavelength dependent - PARAMETER(ks=40) -! wavelength and altitude dependent - PARAMETER(kj=50) - -! delta for adding points at beginning or end of data grids - REAL deltax - PARAMETER (deltax = 1.E-4) - -! some constants... - -! pi: - REAL pi - PARAMETER(pi=3.1415926535898) - -! radius of the earth: - REAL radius - PARAMETER(radius=6.371E+3) - -! largest number of the machine: - REAL largest - PARAMETER(largest=1.E+36) -!_________________________________________________ - -! ___ SECTION 1: VARIABLES AND PARAMETERS ______________________________ -! -! interface variables: -! -! INPUT: -! ALAT - latitude in decimal degrees -! ALONG - longitude in decimal degrees -! IDATE - Date at Greenwich - specify year (yy), month (mm), day (dd) -! format is six-digit integer: yymmdd -! (only a test if yy is a factor of 4 will be perfomed, -! so there is no year 2000 problem!) -! UT - Greenwich mean time - decimal military eg. -! 22.75 = 45 min after ten pm UT -! ALBNEW- surface albedo, if negative the default value will be used -! DOBNEW- scale the O3 profile to the given Dobson unit -! (no scaling is done if this variable is negative) -! NLEVEL- number of points in AZ -! AZ - vector of altitudes (in m) where J-values are calculated -! (supposed to be ordered in increasing order!), mass level, -! dimension = NLEVEL -! LWC - liquid water content (kg/m3), -! dimension = NLEVEL -! -! OUTPUT: -! NJOUT - number of J-values to be returned (actually 21) -! JOUT - array of J-values (dimension must be at least 21) -! 1st dimension = NLEVEL, 2nd dimension >= NJOUT -! JLABELOUT - array of labels for J-values (dimension must be at least 21) -! dimension >= NJOUT -! -! method: -! -! on first call, all necessary data will be read from the files -! in directories DATA0, DATA4, and DATAX; -! all variables are saved for future calls to TUV -! - REAL, INTENT(IN) :: asza -! REAL, INTENT(IN) :: ut - INTEGER, INTENT(IN) :: idate - INTEGER, INTENT(IN) :: nlevel - REAL, INTENT(IN) :: dobnew, albnew - REAL, INTENT(IN) :: az(nlevel) - REAL, INTENT(IN) :: lwc(nlevel) - INTEGER, INTENT(IN) :: njout - REAL, INTENT(OUT) :: jout(nlevel,njout) - CHARACTER*40, INTENT(OUT) :: jlabelout(njout) -! - LOGICAL LFIRSTCALL - DATA LFIRSTCALL /.TRUE./ -! -! -! geometry - - REAL zen - -! altitude grid: - - INTEGER nz, iz - REAL z(kz) - -! slant path lengths in spherical geometry - - INTEGER nid(0:kz) - REAL dsdh(0:kz,kz) - -! wavelength grid: - - INTEGER nw, iw - REAL wl(kw), wc(kw), wu(kw) - -! extra terrestrial solar flux and earth-Sun distance ^-2 - - REAL f(kw) - REAL esrm2 - -! ozone absorption cross section and ozone optical depth: - - REAL xso3(kw), s226(kw), s263(kw), s298(kw) - -! O2 absorption cross section - - REAL xso2(kz,kw) - -! SO2 absorption cross section - - REAL xsso2(kw) - -! NO2 absorption cross section - - REAL xsno2(kw) - -! atmospheric optical parameters: - - REAL tlev(kz), tlay(kz) - REAL airlev(kz), colinc(kz) - REAL dtrl(kz,kw) - REAL dto3(kz,kw), dto2(kz,kw), dtso2(kz,kw), dtno2(kz,kw) - REAL dtcld(kz,kw), omcld(kz,kw), gcld(kz,kw) - REAL dtaer(kz,kw), omaer(kz,kw), gaer(kz,kw) - REAL albedo(kw) - -! spectral irradiance and actinic flux (scalar irradiance): - - REAL edir(kz), edn(kz), eup(kz) - REAL fdir(kz), fdn(kz), fup(kz) - -!! j-values: - - INTEGER nj, ij - REAL sj(kj,kz,kw), valj(kj,kz) - REAL saflux, deltaj - CHARACTER*40 jlabel(kj) - -! User-defined -! new sea level pressure, surface dobson, etc. - - REAL azim - - REAL pmbnew, so2new, no2new - - integer i, j - -!________________________________________________________________________ -! BEGIN OF INITIALIZATION (only executed on firstcall of tuvmain) -!________________________________________________________________________ - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('TUVMAIN',0,ZHOOK_HANDLE) - IF (LFIRSTCALL) THEN - - WRITE(kout,*) 'running TUVMAIN, version 3.9' - -! ___ SECTION 2: SET GRIDS _________________________________________________ - -! wavelengths - - CALL gridw(nw,wl,wc,wu) - -! altitudes - - CALL gridz(nz,z,az,nlevel) - -! ___ SECTION 3: SPECTRAL DATA ____________________________ - -! read (and grid) extra terrestrial flux data: - - CALL rdetfl(nw,wl,f) - -! read cross section data for -! ozone (temperature-dependent) -! SO2 -! NO2 - - CALL rdo3xs(nw,wl,xso3,s226,s263,s298) - CALL rdso2xs(nw,wl,xsso2) - CALL rdno2xs(nw,wl,xsno2) - -! ___ SECTION 4: SET MODEL ATMOSPHERE __________________________________ - -! temperature profile - - CALL settmp(nz,z, & - & tlev,tlay) - -! air profile and rayleigh optical depths - - pmbnew = -999. - CALL setair(pmbnew, & - & nz,z,nw,wl, & - & airlev,dtrl,colinc) - - -!! now can select (altitude-dependent) photolysis reaction spectra -! (cross section)x(quantum yield) -! (must know airlev, tlev from setair, settmp) -! reserve last slot for O2 photolysis (extra because of Schuman-Runge band -! parameterization -> zenith angle dependence of effective cross section) - - ij = 0 - CALL jspec1(nw,wl,nz,tlev,airlev, & - & ij,sj,jlabel) - CALL o2spec(ij,jlabel) - nj = ij - -! ozone optical depths (must give temperature) - - CALL setozo(dobnew, & - & nz,z,nw,wl, & - & xso3,s226,s263,s298,tlay, & - & dto3) - -! SO2 optical depth (also has temperature correction) -! so2new = new column SO2, in Dobson Units - - so2new = 0. - CALL setso2(so2new, & - & nz,z,nw,wl, & - & xsso2, tlay, & - & dtso2) - -! NO2 optical depth (also has temperature correction) -! no2new = new column NO2, in Dobson Units - - no2new = 0. - CALL setno2(no2new, & - & nz,z,nw,wl, & - & xsno2, tlay, & - & dtno2) - -! aerosol optical depths: - - CALL setaer(nz,z,nw,wl, & - & dtaer,omaer,gaer) - - LFIRSTCALL = .FALSE. - ENDIF - -!________________________________________________________________________ -! END OF INITIALIZATION (only executed on firstcall of tuvmain) -!________________________________________________________________________ - -! UPG:CM 08/06/01 surface albedo calculation taken out of firstcall loop -! surface albedo: - - if (albnew .ge. 0.) then -! WRITE(kout,*)'wavelength-independent albedo = ', albnew - DO iw = 1, nw - 1 - albedo(iw) = albnew - enddo - else - CALL setalb(nw,wl,albedo) - endif - -! cloud optical depth (may be modified at each call, so it has ben moved -! outside the if(firstcall) section: - - CALL setcld(nz,z,nw,wl, & - & lwc,nlevel, & - & dtcld,omcld,gcld) - -! ___ SECTION 5: TIME AND LOCATION _____________________________________ - -! date, earth-sun distance - - CALL sundis(idate,esrm2) -! WRITE(kout,*) 'idate = ', idate,' esrm2 = ', esrm2 - -! solar zenith angle calculation: - -! WRITE(kout,*)'lat = ',alat,' long = ',along -! -! CALL zenith(alat,along,idate,ut,azim,zen) - zen = asza -! WRITE(kout,*) 'ut = ', ut, 'azimuth = ', azim, ' zen = ', zen -! WRITE(kout,*) ' zen = ', zen - -! ____ SECTION 6: CALCULATE ZENITH-ANGLE DEPENDENT QUANTITIES __________ - -! slant path lengths for spherical geometry - - CALL sphers(nz, z, zen, dsdh, nid) - -!! effective O2 optical depth (SR bands, must know zenith angle!) -! reassign O2 cross section to sj(nj,*,*) - - CALL zero2(dto2,kz,kw) - CALL zero2(xso2,kz,kw) - CALL seto2(nz,z,nw,wl,colinc,zen,dto2,xso2) - CALL sto2xs(nz,nw,xso2,nj,sj) - -! ____ SECTION 7: WAVELENGTH LOOP ______________________________________ - -! initialize for wavelength integration - - call zero2(valj,kj,kz) - - DO 10, iw = 1, nw-1 - -! monochromatic radiative transfer: - - CALL rtlink(nz,z, & - & iw, albedo(iw), zen, & - & dsdh,nid, & - & dtrl, & - & dto3, & - & dto2, & - & dtso2, & - & dtno2, & - & dtcld, omcld, gcld, & - & dtaer,omaer,gaer, & - & edir, edn, eup, fdir, fdn, fup) - -!**** spherical irradiance (actinic flux) -! as a function of altitude -! convert to quanta s-1 nm-1 cm-2 -! ( 1.e-4 * (wc*1e-9) / (hc = 6.62E-34 * 2.998E8) ) - - DO 17 iz = 1, nz - saflux = f(iw) * esrm2 * 5.039e11 * wc(iw) * & - & (fdir(iz) + fdn(iz) + fup(iz)) - DO 16, ij = 1, nj - deltaj = saflux * sj(ij,iz,iw) - valj(ij,iz) = valj(ij,iz) + deltaj * (wu(iw) - wl(iw)) - 16 CONTINUE - 17 CONTINUE - - 10 CONTINUE - -!^^^^^^^^^^^^^^^^ end wavelength loop - -! ____ SECTION 8: OUTPUT _______________________________________________ -! -! iz = 1 -! DO 36, ij = 1, nj -! WRITE(kout,99) ij, jlabel(ij), valj(ij,iz) -!36 CONTINUE -! -! copy labels into output array -! (to be compatible with TUV39, photolysis raction 1-20 will be transfered -! as 2-21, and the first will be set to zero (former user-added CH3I)) - - if (njout .ne. 21) then - WRITE(kout,*) 'There should be 21 J-Values to be updated!' - WRITE(kout,*) 'We better stop here ... in tuvmain.f' - STOP 1 - endif - - jlabelout(1) = 'not used' - DO ij = 2, njout - jlabelout(ij) = jlabel(ij-1) - ENDDO -! -! return J values on AZ grid -! -! for each individual J value do.. - DO iz = 1, nlevel - jout(iz,1) = 0.0 - ENDDO - DO ij = 2, njout - DO iz = 1, nlevel - jout(iz,ij) = valj(ij-1,iz) - ENDDO - ENDDO -! -!_______________________________________________________________________ - 99 FORMAT(I4,1X,A40,1X,1PE10.3) -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('TUVMAIN',1,ZHOOK_HANDLE) - ENDSUBROUTINE TUVMAIN diff --git a/src/arome/chem/internals/unifac.F b/src/arome/chem/internals/unifac.F deleted file mode 100644 index 279fedc09c54a20b30a6d15eb5a6e7c374a71b97..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/unifac.F +++ /dev/null @@ -1,439 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /home/tulet/MESONH/prepsource/test/unifac.f,v $ $Revision: 1.1 $ $Date: 2005/06/02 10:27:34 $ -!----------------------------------------------------------------- - - SUBROUTINE UNIFAC (NMOL,NFUNC,NU,X,A,RG,QG,Z,TEMP, & - & GAMA) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - -!******************************************************** -! Function: unifac -! SUBROUTINE TO ESTIMATE ACTIVITY COEFFICIENTS & -! AW OF MULTICOMPONENT MIXTURES FROM UNIFAC -! -! Preconditions required: called by unidriver, the C -! driver that replaces the Fortran -! codes above -! -! Return values: GAMA(I): ACTIVITY COEFFICIENT OF COMPONENT I ON -! MOLE FRACTION SCALE -! -! -! Notes: 1. FOR DIMENSIONAL PURPOSES, WE HAVE ASSUMED THAT -! MAXIMUM NUMBER OF FUNCTIONAL GROUPS =50 AND -! MAXIMUM NUMBER OF MOLECULAR ENTITIES =50. -! -! 2. INPUT SUMMARY: 1) GROUP VOLUME (RG), GROUP SURFACE -! AREA (QG) OF EACH FUNCTIONAL GROUP IN EACH -! COMPONENT; 2) MOLE FRACTION OF ALL COMPONENTS -! 3) INTER-FUNCTIONAL GROUP INTERACTION PARAMETERS -! A(J1,J2) FOR ALL FUNCTIONAL GROUP COMBOS. -! "COMPONENT" MEANS A MOLECULAR LEVEL ENTITY -! -! 3. AVOID SENDING ZERO MOLE FRACTIONS IN ARRAY X(I). THE -! PROGRAM CAN HANDLE X(I) = 0 (IT SETS ACTIVITY COEFF TO 1) -! BUT BETTER TO AVOID IT. (note from P.Saxena.) -! (BKP NOTE: activity coefficient is not set to 1 at x = 0) -! -! 4. 3-17-98 CHANGED ALOG FUNCTION CALLS TO DLOG FOR TYPE -! COMPATABILITY -! -! Revision History: Developed by Pradeep Saxena, EPRI, 95 -! Revised by Betty Pun, AER, Nov 99 Under EPRI/CARB -! funding to comply with models-3 standards -! ***************************************************************** - - IMPLICIT NONE -! IMPLICIT REAL*8 (A-H,O-Z) - -!........Arguments and their description - -! INTEGER*4 NMOL [VALUE] -! INTEGER*4 NFUNC [VALUE] - - INTEGER*4 NMOL ! TOTAL NO. OF MOLECULAR ENTITIES IN THE MIXTURE - INTEGER*4 NFUNC ! TOTAL NO. OF FUNCTIONAL GROUPS IN THE MIXTURE - -! INTEGER*4 NU [REFERENCE] (50, 50) -! REAL*8 X [REFERENCE] (50) -! REAL*8 A [REFERENCE] (50, 50) -! REAL*8 RG [REFERENCE] (50) -! REAL*8 QG [REFERENCE] (50) -! REAL*8 Z [VALUE] -! REAL*8 TEMP [VALUE] -! REAL*8 GAMA [REFERENCE] (50) - - INTEGER*4 NU(NMOL,NFUNC) ! NU(I,J): VECTOR OF NO. OF A PARTICULAR - ! FUNCTIONAL GROUP J IN MOLECULE I - ! (FROM STOICHIOMETRY) - REAL*8 X(NMOl) ! MOLE FRACTION (or amount) OF MOLECULE I - REAL*8 A(NFUNC,NFUNC) ! INTERACTION PARAMETER FOR GROUPS J1 & J2 - REAL*8 RG(NFUNC) ! VAN DER VAAL VOLUME FOR GROUP J - REAL*8 QG(NFUNC) ! VAN DER VAAL SURFACE AREA FOR GROUP J - REAL*8 GAMA(NMOL) ! calculated activity coefficients - - - REAL*8 Z ! COORDINATION NUMBER FOR THE SOLVENT = 10 - REAL*8 TEMP ! TEMPERATURE IN DEGREES KELVIN - -! .... Parameters and their descriptions -! DIMENSION R(50),Q(50),RL(50),RX(50),QX(50),XL(50),PHI(50) -! DIMENSION THETA(50),XGM(50),XGP(50,50),THTAGP(50,50), -! $ THTAGM(50),TTSIM(50),TTSIP(50),SI(50,50),GAMMLN(50), -! $ GAMPLN(50,50),YCLN(50),YRLN(50) - - REAL*8 R(50) ! total volume (R) for each molecule - REAL*8 Q(50) ! total surface area (Q) for each molecule - REAL*8 RL(50) - REAL*8 RX(50) ! R(I) * X(I) - REAL*8 QX(50) ! Q(I) * X(I) - REAL*8 XL(50) ! RL(I) * X(I) - REAL*8 PHI(50) - REAL*8 THETA(50) - REAL*8 XGM(50) - REAL*8 XGP(50,50) - REAL*8 THTAGP(50,50) - REAL*8 THTAGM(50) - REAL*8 TTSIM(50) - REAL*8 TTSIP(50) - REAL*8 SI(50,50) - REAL*8 GAMMLN(50) - REAL*8 GAMPLN(50,50) - REAL*8 YCLN(50) - REAL*8 YRLN(50) - - REAL*8 ZHALF ! 0.5 * Z - REAL*8 ZOT1 - REAL*8 ZOT2 - REAL*8 ZOT4 - REAL*8 ZOT5 - REAL*8 ZOT6 - REAL*8 ZOT7 - REAL*8 ZOT8 - REAL*8 ZOT9 - REAL*8 ZOT10 - REAL*8 ZOT11 - REAL*8 SUMXGP - REAL*8 SUMXGM - REAL*8 SUMXL ! SUM(RL(I) * X(I)) - REAL*8 SUMJX - REAL*8 CTEMP - REAL*8 SUMTGM - REAL*8 SUMTGP - REAL*8 SUMQX ! SUM (Q(I) * X(I)) - REAL*8 SUMRX ! SUM (R(I) * X(I)) - - INTEGER I, J, J1, J2 ! loop counters - - -! Subroutine writes to error file, need to open -!swu OPEN(7,FILE='unifac.err') - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('UNIFAC',0,ZHOOK_HANDLE) - ZHALF = 0.5 * Z - -! ************************************************************** -! COMBINATORIAL PART--THIS IS FOR ORIGINAL UNIFAC -! NEED TO REVISE IT FOR MODIFIED UNIFAC -! ************************************************************** -! COMPUTE R AND Q FOR EACH MOLECULE - DO 20 I = 1,NMOL - R(I) = 0.0 - Q(I) = 0.0 -! - DO 10 J = 1, NFUNC - R(I) = R(I) + FLOAT(NU(I,J)) * RG(J) - Q(I) = Q(I) + FLOAT(NU(I,J)) * QG(J) -10 CONTINUE -! -20 CONTINUE -! WRITE(6,9900)Q,R -9900 FORMAT('Q AND R',4F12.5) -! -! - DO 30 I = 1,NMOL - RL(I) = ZHALF * (R(I) - Q(I)) - R(I) + 1. - RX(I) = R(I) * X(I) - QX(I) = Q(I) * X(I) - XL(I) = X(I) * RL(I) -30 CONTINUE -! - SUMRX = 0. - SUMQX = 0. - SUMXL = 0. - DO 50 I = 1,NMOL - SUMRX = SUMRX + RX(I) - SUMQX = SUMQX + QX(I) - SUMXL = SUMXL + XL(I) -50 CONTINUE -! - ZOT1 = 0.0 - IF (SUMRX .NE. 0.) THEN - ZOT1 = 1./SUMRX - ELSE - WRITE (7,5000) -5000 FORMAT('ZERO DIVISION IN COMBINATORIAL--SUMRX=0.') - STOP - END IF - ZOT2 = 0.0 - IF (SUMQX .NE. 0.) THEN - ZOT2 = 1./ SUMQX - ELSE - WRITE(7,5010) -5010 FORMAT('ZERO DIVISION IN COMBINATORIAL-SUMQX=0.') - STOP - END IF -! - DO 60 I = 1,NMOL - PHI(I) = RX(I) * ZOT1 - THETA(I) = QX(I) * ZOT2 -60 CONTINUE -! -! SOLVE FOR THE COMBINATORIAL LN(GAMAC) - DO 70 I = 1,NMOL - YCLN(I) = 0.0 - IF (X(I) .EQ. 0.0) THEN - GO TO 70 - ELSE - END IF - IF((PHI(I)) .NE. 0. .AND. (THETA(I)) .NE. 0.) THEN - ZOT4 = PHI(I)/X(I) - ZOT5 = THETA(I)/PHI(I) - YCLN(I) = LOG(ZOT4) + ZHALF * Q(I) * LOG(ZOT5) + RL(I) - & - & ZOT4 * SUMXL - ELSE - WRITE(7,5015) -5015 FORMAT('THETA(I) ,OR. PHI(I) .EQ. 0.0') - STOP - END IF -70 CONTINUE -! WRITE(6,9991)YCLN(1),YCLN(2) -9991 FORMAT('YCLN',2E12.5) -! -! ***************************************************************** -! NOW COMPUTE THE RESIDUAL PART--THIS IS FOR ORIGINAL -! UNIFAC. NEED TO REVISE IT FOR MODIFIED UNIFAC -! ***************************************************************** -! -! COMPUTE GROUP MOLE FRACTIONS -! -! COMPUTE TOTAL GROUP MOLES AND GROUP MOLE FRACTIONS -! IN PURE COMPOUNDS AND MIXTURE -! - SUMXGM = 0.0 - DO 150 I = 1, NMOL -! - SUMXGP = 0.0 - DO 110 J = 1, NFUNC - SUMXGM = SUMXGM + FLOAT(NU(I,J)) * X(I) - SUMXGP =SUMXGP + FLOAT(NU(I,J)) -110 CONTINUE -! -! NOW LOOP THRU TO GET MOLE FRACTIONS FOR PURE C COMPOUNDS - IF (SUMXGP .NE. 0.) THEN - ZOT6 = 1./ SUMXGP - ELSE - WRITE(7,5020) -5020 FORMAT('ZERO DIVISION IN RESIDUAL PART-SUMXGP=0.') - STOP - END IF - DO 120 J = 1, NFUNC - XGP(I,J) = FLOAT(NU(I,J)) * ZOT6 -! WRITE(6,7770)I,J,XGP(I,J) -7770 FORMAT('XGP',2I10,2E12.5) -120 CONTINUE -! -! -150 CONTINUE -! -! -! NOW WE HAVE TOTAL MOLES OF ALL GROUPS IN THE MIX -! LOOP ONCE THRU TO COMPUTE GROUP MOLE FRACTION -! IN THE MIXTURE - IF (SUMXGM .LE. 0.) THEN - WRITE(7,5030) -5030 FORMAT('ZERO DIVISION IN RESIDUAL PART-SUMXGM=0.') - STOP - ELSE - ZOT7 = 1./SUMXGM - END IF - DO 180 J = 1,NFUNC - SUMJX = 0.0 - DO 170 I=1,NMOL - SUMJX = FLOAT(NU(I,J)) * X(I) + SUMJX -170 CONTINUE - XGM(J) = SUMJX * ZOT7 -! WRITE(6,7771)J,XGM(J) -7771 FORMAT('XGM',I10,E12.5) -180 CONTINUE -! -! COMPUTE TOTAL GROUP AREA & GROUP AREA FRACTIONS -! IN PURE COMPOUNDS -! - DO 250 I = 1, NMOL - SUMTGP = 0.0 -! - DO 210 J = 1, NFUNC - SUMTGP =SUMTGP + XGP(I,J) * QG(J) -210 CONTINUE -! -! NOW LOOP THRU TO GET AREA FRACTIONS FOR PURE -! COMPOUNDS - IF (SUMTGP .NE. 0.) THEN - ZOT8 = 1./ SUMTGP - ELSE - WRITE(7,5040) -5040 FORMAT('ZERO DIVISION IN RESIDUAL PART-SUMTGP=0.') - STOP - END IF -! - DO 220 J = 1, NFUNC - THTAGP(I,J) = QG(J) * XGP(I,J)* ZOT8 -! WRITE(6,7772)I,J,THTAGP(I,J) -7772 FORMAT('THTAGP',2I10,E12.5) -220 CONTINUE -! -! -250 CONTINUE -! -! COMPUTE TOTAL GROUP AREA IN MIXTURE - SUMTGM = 0.0 - DO 260 J = 1, NFUNC - SUMTGM = SUMTGM + XGM(J) * QG(J) -260 CONTINUE -! -! NOW WE HAVE TOTAL AREA OF ALL GROUPS IN THE MIX -! LOOP ONCE THRU TO COMPUTE GROUP AREA FRACTION -! IN THE MIXTURE - IF (SUMTGM .LE. 0.) THEN - WRITE(7,5050) -5050 FORMAT('ZERO DIVISION IN RESIDUAL PART-SUMTGM=0.') - STOP - ELSE - ZOT9 = 1./SUMTGM - END IF - DO 280 J = 1,NFUNC - THTAGM(J) = QG(J) * XGM(J) * ZOT9 -! WRITE(6,7773)J,THTAGM(J) -7773 FORMAT('THTAGM',I10,E12.5) -280 CONTINUE -! -! -! -! COMPUTE SI VALUES FROM A(J1,J2) AND TEMPERATURE - IF (TEMP .NE. 0.)THEN - CTEMP = 1./TEMP - ELSE - WRITE(7,5060) -5060 FORMAT('ZERO DIVIDE IN RESIDUAL-TEMP=0.0') - STOP - END IF - DO 300 J1 = 1,NFUNC - DO 300 J2 = 1,NFUNC - SI(J1,J2) = EXP (-A(J1,J2)*CTEMP) -! WRITE(6,7774)J1,J2,SI(J1,J2) -7774 FORMAT('SI',2I10,E12.5) -300 CONTINUE -! -! -! -! NOW COMPUTE CAPITAL GAMMAS FOR PURE COMPOUNDS -! AND MIXTURES -! -! CAPITAL GAMAS FOR FUNCTIONAL GROUPS IN MIXTURES -! ARE INDEPENDENT OF MOLECULAR ENTITIES -! - DO 500 J1 = 1, NFUNC - TTSIM(J1) = 0.0 - DO 400 J2 = 1,NFUNC - TTSIM(J1) = TTSIM(J1) + THTAGM(J2) * SI(J2,J1) -400 CONTINUE -500 CONTINUE -! -! - DO 550 J1 = 1,NFUNC - ZOT10 = 0.0 - DO 520 J2 = 1,NFUNC - IF (TTSIM(J2) .NE. 0.0) THEN - ZOT10 = ZOT10 + THTAGM(J2) * SI(J1,J2)/TTSIM(J2) - ELSE - WRITE(7,5070) -5070 FORMAT('ZERO DIVIDE IN RESIDUAL TTSIM = 0.0') - STOP - END IF -520 CONTINUE - IF (TTSIM(J1) .NE. 0.0) THEN - GAMMLN(J1) = QG(J1) * (1. - LOG(TTSIM(J1)) - ZOT10) - -! WRITE(6,7775)J1,GAMMLN(J1) -7775 FORMAT('GAMMLN',I10,E12.5) - ELSE - WRITE(7,5080) -5080 FORMAT('ZERO ARGUMENT OF LOG IN RES TTSIM') - STOP - END IF -550 CONTINUE -! -! -! CAPITAL GAMAS FOR FUNCTIONAL GROUP IN PURE -! COMPOUNDS ARE DEPENDENT ON MOLECULE--SO -! WE LOOP THRU EACH MOLECULE-FUNCTIONAL GROUP -! PAIR -! - DO 900 I = 1, NMOL -! -! - DO 700 J1 = 1, NFUNC - TTSIP(J1) = 0.0 - DO 600 J2 = 1,NFUNC - TTSIP(J1) = TTSIP(J1) + THTAGP(I,J2) * SI(J2,J1) -600 CONTINUE -700 CONTINUE -! -! - DO 750 J1 = 1,NFUNC - ZOT11 = 0.0 - DO 720 J2 = 1,NFUNC - IF (TTSIP(J2) .NE. 0.0) THEN - ZOT11 = ZOT11 + THTAGP(I,J2) * SI(J1,J2)/TTSIP(J2) - ELSE - WRITE(7,5090) -5090 FORMAT('ZERO DIVIDE IN RESIDUAL TTSIP = 0.0') - STOP - END IF -720 CONTINUE - IF (TTSIP(J1) .NE. 0.0) THEN - GAMPLN(I,J1) = QG(J1) * (1. - LOG(TTSIP(J1)) - ZOT11) -! WRITE(6,7776)I,J1,GAMPLN(I,J1) -7776 FORMAT('GAMPLN',2I10,E12.5) - ELSE - WRITE(7,6000) -6000 FORMAT('ZERO ARGUMENT OF LOG IN RES TTSIP') - STOP - END IF -750 CONTINUE -! -! -900 CONTINUE -! -! COMPUTE RESIDUAL PART AND ADD TO -! COMBINATORIAL PART -! - DO 1100 I = 1, NMOL -! - YRLN(I) = 0.0 - DO 1000 J = 1,NFUNC - YRLN(I) = YRLN(I) + FLOAT(NU(I,J)) * (GAMMLN(J) - GAMPLN(I,J)) -1000 CONTINUE -! - GAMA(I) = EXP ( YCLN(I) + YRLN(I)) -! -1100 CONTINUE -! - IF (LHOOK) CALL DR_HOOK('UNIFAC',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE UNIFAC diff --git a/src/arome/chem/internals/xerrwv.F b/src/arome/chem/internals/xerrwv.F deleted file mode 100644 index 7d37eb5b538a2603853e8f8ae8546d9856f8740a..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/xerrwv.F +++ /dev/null @@ -1,82 +0,0 @@ -! ######spl - SUBROUTINE XERRWV (MSG, NMES, NERR, LEVEL, NI, I1, I2, NR, R1, R2) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################################################################## - REAL R1, R2 - INTEGER NMES, NERR, LEVEL, NI, I1, I2, NR -! -!KS: changed to adapt to Fortran90 -! CHARACTER*1 MSG(NMES) - CHARACTER*(*) MSG -!----------------------------------------------------------------------- -! Subroutines XERRWV, XSETF, XSETUN, and the two function routines -! MFLGSV and LUNSAV, as given here, constitute a simplified version of -! the SLATEC error handling package. -! Written by A. C. Hindmarsh and P. N. Brown at LLNL. -! Version of 13 April, 1989. -! This version is in single precision. -! -! All arguments are input arguments. -! -! MSG = The message (character array). -! NMES = The length of MSG (number of characters). -! NERR = The error number (not used). -! LEVEL = The error level.. -! 0 or 1 means recoverable (control returns to caller). -! 2 means fatal (run is aborted--see note below). -! NI = Number of integers (0, 1, or 2) to be printed with message. -! I1,I2 = Integers to be printed, depending on NI. -! NR = Number of reals (0, 1, or 2) to be printed with message. -! R1,R2 = Reals to be printed, depending on NR. -! -! Note.. this routine is machine-dependent and specialized for use -! in limited context, in the following ways.. -! 1. The argument MSG is assumed to be of type CHARACTER, and -! the message is printed with a format of (1X,80A1). -! 2. The message is assumed to take only one line. -! Multi-line messages are generated by repeated calls. -! 3. If LEVEL = 2, control passes to the statement STOP -! to abort the run. This statement may be machine-dependent. -! 4. R1 and R2 are assumed to be in single precision and are printed -! in E21.13 format. -! -! For a different default logical unit number, change the data -! statement in function routine LUNSAV. -! For a different run-abort command, change the statement following -! statement 100 at the end. -!----------------------------------------------------------------------- -! Subroutines called by XERRWV.. None -! Function routines called by XERRWV.. MFLGSV, LUNSAV -!----------------------------------------------------------------------- -! - INTEGER I, LUNIT, LUNSAV, MESFLG, MFLGSV -! -! Get message print flag and logical unit number. ---------------------- - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('XERRWV',0,ZHOOK_HANDLE) - MESFLG = MFLGSV (0,.FALSE.) - LUNIT = LUNSAV (0,.FALSE.) - IF (MESFLG .EQ. 0) GO TO 100 -! Write the message. --------------------------------------------------- -!KS: changed to adapt to Fortran90 -! WRITE (LUNIT,10) (MSG(I),I=1,NMES) -!10 FORMAT(1X,80A1) - WRITE (LUNIT,'(A)') MSG - IF (NI .EQ. 1) WRITE (LUNIT, 20) I1 - 20 FORMAT(6X,'In above message, I1 =',I10) - IF (NI .EQ. 2) WRITE (LUNIT, 30) I1,I2 - 30 FORMAT(6X,'In above message, I1 =',I10,3X,'I2 =',I10) - IF (NR .EQ. 1) WRITE (LUNIT, 40) R1 - 40 FORMAT(6X,'In above message, R1 =',E21.13) - IF (NR .EQ. 2) WRITE (LUNIT, 50) R1,R2 - 50 FORMAT(6X,'In above, R1 =',E21.13,3X,'R2 =',E21.13) -! Abort the run if LEVEL = 2. ------------------------------------------ - 100 CONTINUE - IF (LEVEL .NE. 2) THEN - IF (LHOOK) CALL DR_HOOK('XERRWV',1,ZHOOK_HANDLE) - RETURN - ENDIF - STOP - IF (LHOOK) CALL DR_HOOK('XERRWV',1,ZHOOK_HANDLE) - ENDSUBROUTINE XERRWV diff --git a/src/arome/chem/internals/xsetf.F b/src/arome/chem/internals/xsetf.F deleted file mode 100644 index 65ae7909646681a4371c6628f4a109a3578e017b..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/xsetf.F +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - SUBROUTINE XSETF (MFLAG) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ######################## -!----------------------------------------------------------------------- -! This routine resets the print control flag MFLAG. -! -! Subroutines called by XSETF.. None -! Function routines called by XSETF.. MFLGSV -!----------------------------------------------------------------------- - INTEGER MFLAG, JUNK, MFLGSV -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('XSETF',0,ZHOOK_HANDLE) - IF (MFLAG .EQ. 0 .OR. MFLAG .EQ. 1) JUNK = MFLGSV (MFLAG,.TRUE.) - IF (LHOOK) CALL DR_HOOK('XSETF',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE XSETF diff --git a/src/arome/chem/internals/xsetun.F b/src/arome/chem/internals/xsetun.F deleted file mode 100644 index 07eda8ae2d0fcbaf8ccbcb734441d8f11db0a80a..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/xsetun.F +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - SUBROUTINE XSETUN (LUN) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ####################### -!----------------------------------------------------------------------- -! This routine resets the logical unit number for messages. -! -! Subroutines called by XSETUN.. None -! Function routines called by XSETUN.. LUNSAV -!----------------------------------------------------------------------- - INTEGER LUN, JUNK, LUNSAV -! - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('XSETUN',0,ZHOOK_HANDLE) - IF (LUN .GT. 0) JUNK = LUNSAV (LUN,.TRUE.) - IF (LHOOK) CALL DR_HOOK('XSETUN',1,ZHOOK_HANDLE) - RETURN -!----------------------- End of Subroutine XSETUN ---------------------- - ENDSUBROUTINE XSETUN diff --git a/src/arome/chem/internals/zenith.F b/src/arome/chem/internals/zenith.F deleted file mode 100644 index 3cc7dcba72b2d31efe0eff4b258703e86ee38f7e..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/zenith.F +++ /dev/null @@ -1,133 +0,0 @@ -! ######spl - SUBROUTINE zenith(lat,long,idate,ut,azim,zen) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - IMPLICIT NONE - -! input: - REAL lat,long - REAL ut - INTEGER idate - -! output: - REAL azim, zen - -! local: - REAL lbut,lzut - REAL rlt - REAL d, tz, rdecl, eqr, eqh, zpt - REAL csz, zr, caz, raz - REAL sintz, costz, sin2tz, cos2tz, sin3tz, cos3tz - - INTEGER iiyear, imth, iday, ijd - INTEGER imn(12) - - INTEGER i - -! program constants: - - REAL pi, dr - PARAMETER(pi=3.1415926535898) - PARAMETER (dr=pi/180.D0) -!_______________________________________________________________________ - - DATA imn/31,28,31,30,31,30,31,31,30,31,30,31/ -!_______________________________________________________________________ - -! convert to radians - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ZENITH',0,ZHOOK_HANDLE) - rlt = lat*dr - -! parse date - - iiyear = idate/10000 - imth = (idate - iiyear*10000)/100 - iday = idate - iiyear*10000 - imth*100 - -! identify and correct leap years - - IF (MOD(iiyear,4) .EQ. 0) THEN - imn(2) = 29 - ELSE - imn(2) = 28 - ENDIF - -! compute current (Julian) day of year IJD = 1 to 365 - - ijd = 0 - DO 30, i = 1, imth - 1 - ijd = ijd + imn(i) - 30 CONTINUE - ijd = ijd + iday - -! calculate decimal Julian day from start of year: - - d = FLOAT(ijd-1) + ut/24. - -! Equation 3.8 for "day-angle" - - tz = 2.*pi*d/365. - -! Calculate sine and cosine from addition theoremes for -! better performance; the computation of sin2tz, -! sin3tz, cos2tz and cos3tz is about 5-6 times faster -! than the evaluation of the intrinsic functions -! -! It is SIN(x+y) = SIN(x)*COS(y)+COS(x)*SIN(y) -! and COS(x+y) = COS(x)*COS(y)-SIN(x)*SIN(y) -! -! sintz = SIN(tz) costz = COS(tz) -! sin2tz = SIN(2.*tz) cos2tz = SIN(2.*tz) -! sin3tz = SIN(3.*tz) cos3tz = COS(3.*tz) -! - sintz = SIN(tz) - costz = COS(tz) - sin2tz = 2.*sintz*costz - cos2tz = costz*costz-sintz*sintz - sin3tz = sintz*cos2tz + costz*sin2tz - cos3tz = costz*cos2tz - sintz*sin2tz - -! Equation 3.7 for declination in radians - - rdecl = 0.006918 - 0.399912*costz + 0.070257*sintz & - & - 0.006758*cos2tz + 0.000907*sin2tz & - & - 0.002697*cos3tz + 0.001480*sin3tz - -! Equation 3.11 for Equation of time in radians - - eqr = 0.000075 + 0.001868*costz - 0.032077*sintz & - & - 0.014615*cos2tz - 0.040849*sin2tz - -! convert equation of time to hours: - - eqh = eqr*24./(2.*pi) - -! calculate local hour angle (hours): - - lbut = 12. - eqh - long*24./360 - -! convert to angle from UT - - lzut = 15.*(ut - lbut) - zpt = lzut*dr - -! Equation 2.4 for cosine of zenith angle - - csz = SIN(rlt)*SIN(rdecl) + COS(rlt)*COS(rdecl)*COS(zpt) - zr = ACOS(csz) - zen = zr/dr - -! calc local solar azimuth - - caz = (SIN(rdecl) - SIN(rlt)*COS(zr))/(COS(rlt)*SIN(zr)) - raz = ACOS(caz) - azim = raz/dr -!_______________________________________________________________________ - - IF (LHOOK) CALL DR_HOOK('ZENITH',1,ZHOOK_HANDLE) - RETURN - ENDSUBROUTINE zenith diff --git a/src/arome/chem/internals/zero1.F b/src/arome/chem/internals/zero1.F deleted file mode 100644 index b2b5413cb7781963432a8547b32e3c8268b2f7a5..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/zero1.F +++ /dev/null @@ -1,17 +0,0 @@ -! ######spl - subroutine zero1(x,m) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - implicit none - integer i, m - real x(m) - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ZERO1',0,ZHOOK_HANDLE) - do 1 i = 1, m - x(i) = 0. - 1 continue - IF (LHOOK) CALL DR_HOOK('ZERO1',1,ZHOOK_HANDLE) - return - endsubroutine zero1 diff --git a/src/arome/chem/internals/zero2.F b/src/arome/chem/internals/zero2.F deleted file mode 100644 index 5ebc61c97a090db1e157a80ce73b09ebecf887b7..0000000000000000000000000000000000000000 --- a/src/arome/chem/internals/zero2.F +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - subroutine zero2(x,m,n) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - - implicit none -! m,n : dimensions of x, exactly as specified in the calling program - integer i, j, m, n - real x(m,n) - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('ZERO2',0,ZHOOK_HANDLE) - do 1 j = 1, n - do 2 i = 1, m - x(i,j) = 0. - 2 continue - 1 continue - IF (LHOOK) CALL DR_HOOK('ZERO2',1,ZHOOK_HANDLE) - return - endsubroutine zero2 diff --git a/src/arome/chem/module/inv_levels.F90 b/src/arome/chem/module/inv_levels.F90 deleted file mode 100644 index 9eb3dd1b8b2b6f0406afe7946caa72313e3a8557..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/inv_levels.F90 +++ /dev/null @@ -1,104 +0,0 @@ -! ######spl - SUBROUTINE INV_LEVELS(KIDIA,KFDIA,KLEV,KINCR,PARRAYALD,PARRAYMNH) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ########################################################################## -! -!!**** * - transforms from MNH (KLEV+2) arrays to -!! Aladin (KLEV) arrays and reversely -!! -!! PURPOSE -!! ------- -!! The purpose of this routine is to reshuffle Aladin (MNH) arrays to -!! MNH (Aladin) ones -!! -!!** METHOD -!! ------ -!! To go from MNH to ALADIN (KINCR=1): -!! Suppress first and last level. levels -!! To go from ALADIN to MNH (KINCR=-1): -!! Add a vertical level at top and bottom and then reverse orders -!! -!! -!! -!! EXTERNAL -!! -------- -!! None -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!! REFERENCE -!! --------- -!! -!! "derived from mpa/micro/externals/invert_vlev.f90" -!! -!! AUTHOR -!! ------ -!! Y.Seity -!! -!! MODIFICATIONS -!! ------------- -!! Original 18/09/12 -!! M. Mokhtari & A. Ambar 09/2016: adptation for dust in both version aladin and arome -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -! - -! -INTEGER, INTENT(IN) :: KINCR ! =1 if ALD->MNH and -1 if MNH->ALD -INTEGER, INTENT(IN) :: KIDIA,KFDIA -INTEGER, INTENT(IN) :: KLEV !Number of vertical levels -REAL, DIMENSION(KFDIA,KLEV), INTENT(INOUT) :: PARRAYALD ! Aladin type arry -REAL, DIMENSION(KFDIA,1,KLEV+2), INTENT(INOUT) :: PARRAYMNH ! MNH type array - -!* 0.2 Local variables: -INTEGER:: JLEV -INTEGER:: JLON -!--------------------------------------------------------------- - -!write(*,*) 'debut inv lev' - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('INV_LEVELS',0,ZHOOK_HANDLE) -IF (KINCR==1) THEN - - DO JLEV = 2 , KLEV+1 - DO JLON = KIDIA,KFDIA - PARRAYMNH(JLON,1,JLEV)= PARRAYALD(JLON,KLEV+2-JLEV) - ENDDO - ENDDO - DO JLON = KIDIA,KFDIA - PARRAYMNH(JLON,1,1)= PARRAYMNH(JLON,1,2) - PARRAYMNH(JLON,1,KLEV+2)= PARRAYMNH(JLON,1,KLEV+1) - ENDDO - - - -ElSE IF (KINCR==-1) THEN - DO JLEV = 1 ,KLEV - DO JLON = KIDIA,KFDIA - PARRAYALD(JLON,JLEV)=PARRAYMNH(JLON,1,KLEV+2-JLEV) - ENDDO - ENDDO - -ELSE - WRITE(*,*) 'VALUE FOR KINCR NE TO 1 OR -1 !!!' - STOP -ENDIF - - - -IF (LHOOK) CALL DR_HOOK('INV_LEVELS',1,ZHOOK_HANDLE) -END SUBROUTINE INV_LEVELS diff --git a/src/arome/chem/module/modd_aunifacparam.F90 b/src/arome/chem/module/modd_aunifacparam.F90 deleted file mode 100644 index 85a680484451a483a06e65016b75e741ce109871..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_aunifacparam.F90 +++ /dev/null @@ -1,60 +0,0 @@ -! ######spl -module modd_aunifacparam - - use modd_glo - - implicit none - -!/************************************************************************* - -!Include file : unifacparma.h - -!Purpose: Unifac parameters (replace file read) - -!Include dependencies: Included in Unidriver.c - -!Notes: 10 Type AQ SOA + H2O at 25 C -! (Data of Lyman, Reehl, Rosenblatt, 1990) -! -! NMOL and NFUNC need to match DIMMOL and DIMFUN in unidriver.c -! -! Parameters inputted as in the original fortran input file, therefore -! a transpose is needed in the unidriver C program for matrices A and NU -! in order to pass them properly into the Fortran unifac routine. -! -!revision History: 1. Developed by Betty Pun, AER, December, 1999 -! under CARB funding -! -!**************************************************************************/ - -!/* no. of molecules */ -integer, parameter :: NMOL_AQ = NBSP + 1 - -!/* no. of functional groups */ -integer, parameter :: NFUNC_AQ = 17 - -!/* Z = 10 is a fixed parameter in Unifac */ -real, parameter :: Z = 10.0 - -!/* group volume parameters */ -!/* dimension of RG is the same as NFUNC */ -REAL, dimension(NFUNC_AQ) :: RG_AQ - -!/* group surface area parameters */ -!/* dimension of QG is the same as NFUNC */ -REAL, DIMENSION(NFUNC_AQ) :: QG_AQ - -!/* no. of groups in each molecule*/ -INTEGER, DIMENSION(NMOL_AQ, NFUNC_AQ) :: NU_AQ - -!Interaction parameters between different groups -REAL, DIMENSION(NFUNC_AQ,NFUNC_AQ) :: A_AQ - -!Parameters needed in unifac code which are precalculated in unifac_ini -!********************************************************************** -REAL, DIMENSION(NMOL_AQ,NFUNC_AQ) :: THTAGP_AQ !surface area ratio of groups in molecules -REAL, DIMENSION(NMOL_AQ) :: Q_AQ !surface parameters for molecules -REAL, DIMENSION(NMOL_AQ) :: R_AQ !volume parameter for molecules -REAL, DIMENSION(NMOL_AQ) :: L_AQ !unifac parameter for molecules - -end module modd_aunifacparam diff --git a/src/arome/chem/module/modd_binsolu.F90 b/src/arome/chem/module/modd_binsolu.F90 deleted file mode 100644 index ab45834b3ee85e63b41c164554c88530f00c4947..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_binsolu.F90 +++ /dev/null @@ -1,36 +0,0 @@ -MODULE MODD_BINSOLU - - USE MODD_GLO, only: NBSP, NBSPA, NBSPB - - IMPLICIT NONE - PUBLIC - - !************************************************************************** - !Include file: binsolu.h - ! - !Purpose: concentration of solute (micromol solute / microgram water) - ! in a binary solution at RH = Aw = 0, 0.1, 0.2, 0.3 etc - ! - !Include dependencies: used in zsr.c - ! - !Revision history: Developed by Betty Pun, December 1999, under CARB funding - ! - !***********************************************************************/ - - !/* graduation of RH scale in molalbin definition, - !starting with RH = 0 (first row), ending with 1 (last row) */ - REAL, PARAMETER :: RHgrad = 0.1 - - !/* binary solution molality (umol/ug water) corresponding to RH - ! at 10% graduations --> 11 rows */ - - !VALUES USED IN GRIFFIN'S CODE - REAL, DIMENSION(11,NBSP) :: molalbinAQ - - !VALUES USED IN PUN'S CODE - REAL, DIMENSION(11, NBSPA) :: molalbinA - -END MODULE MODD_BINSOLU - - - diff --git a/src/arome/chem/module/modd_bunifacparam.F90 b/src/arome/chem/module/modd_bunifacparam.F90 deleted file mode 100644 index e028c10e171cd7bc37580529d5c42ecfdeec0406..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_bunifacparam.F90 +++ /dev/null @@ -1,59 +0,0 @@ -! ######spl -module modd_bunifacparam - - use modd_glo - - implicit none - - !************************************************************************ - !Purpose: Unifac parameters Type B (replace file read) - - !Notes: 5 primary compounds (EPRI 99): C23H47COOH, C8H17CH=CHC7H14COOH, - ! 4-(2-propio)-syringone, C29H60, 2-carboxybenzoic acid - ! + 5 Type B compounds at 25C - ! (Data of Lyman, Reehl, Rosenblatt, 1990) - ! - ! NMOL and NFUNC need to match DIMMOL and DIMFUN (used in unidriver.c) - ! - ! Parameters inputted as in the original fortran input file, therefore - ! a transpose is needed in the unidriver C program for matrices A and NU - ! in order to pass them properly into the Fortran unifac routine. - ! - !revision History: 1. Developed by Betty Pun, AER, December, 1999 - ! under CARB funding - ! 2. Modified by Betty Pun, AER, December, 1999 - ! under CARB funding for Type B module - !************************************************************************ - - -! no. of molecules -integer, parameter :: NMOL_ORG = NBSP + NBSPOA - -! no. of functional groups -integer, parameter :: NFUNC_ORG = 16 - -!/* Z = 10 is a fixed parameter in Unifac */ -real, parameter :: Z = 10.0 - -!/* group volume parameters */ -!/* dimension of RG is the same as NFUNC */ -REAL, DIMENSION(NFUNC_ORG) :: RG_ORG - -!/* group surface area parameters */ -!/* dimension of QG is the same as NFUNC */ -REAL, DIMENSION(NFUNC_ORG) :: QG_ORG - -!/* no. of groups in each molecule*/ -INTEGER, DIMENSION(NMOL_ORG, NFUNC_ORG) :: NU_ORG - -!Interaction parameters between different groups -REAL, DIMENSION(NFUNC_ORG,NFUNC_ORG) :: A_ORG - -!Parameters needed in unifac code which are precalculated in unifac_ini -!********************************************************************** -REAL, DIMENSION(NMOL_ORG,NFUNC_ORG) :: THTAGP_ORG !surface area ratio of groups in molecules -REAL, DIMENSION(NMOL_ORG) :: Q_ORG !surface parameters for molecules -REAL, DIMENSION(NMOL_ORG) :: R_ORG !volume parameter for molecules -REAL, DIMENSION(NMOL_ORG) :: L_ORG !unifac parameter for molecules - -end module modd_bunifacparam diff --git a/src/arome/chem/module/modd_ch_aero_n.F90 b/src/arome/chem/module/modd_ch_aero_n.F90 deleted file mode 100644 index fe5cc5b3b678fb472f756d631234504bf86dd8f3..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_aero_n.F90 +++ /dev/null @@ -1,176 +0,0 @@ -! ######spl - MODULE MODD_CH_AERO_n - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ###################### -!! -!! PURPOSE -!! ------- -!! -!! declaration of variables and types for the aerosol system -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! P. Tulet (LA) -!! -!! -!! MODIFICATIONS -!! ------------- -!! (30-01-01) P.Tulet (LA) * modifications for secondary biogenics aerosols -!! -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -USE MODD_PARAMETERS, ONLY: JPMODELMAX -IMPLICIT NONE - -TYPE CH_AERO_t -! -!* normalisation parameters -! - REAL, DIMENSION(:,:), POINTER :: XN0=>NULL() ! Number concentration - REAL, DIMENSION(:,:), POINTER :: XRG0=>NULL() ! Geometric mean size - REAL, DIMENSION(:,:), POINTER :: XSIG0=>NULL() ! Dispersion ln(sigma) - REAL, DIMENSION(:,:,:,:), POINTER :: XN3D=>NULL() ! Number concentration - REAL, DIMENSION(:,:,:,:), POINTER :: XRG3D=>NULL() ! Geometric mean size - REAL, DIMENSION(:,:,:,:), POINTER :: XSIG3D=>NULL() ! dispersion (sigma) - REAL, DIMENSION(:,:,:,:), POINTER :: XM3D=>NULL() ! moments - REAL, DIMENSION(:,:,:,:), POINTER :: XSEDA=>NULL() ! sedimentation - REAL, DIMENSION(:,:,:), POINTER :: XVDEPAERO=>NULL() ! aerosol dry deposition - REAL, DIMENSION(:,:,:,:,:), POINTER :: XCTOTA3D=>NULL() ! Total concentration of species -! - REAL, DIMENSION(:,:,:), POINTER :: XFTEST=>NULL() - REAL, DIMENSION(:,:,:), POINTER :: XCTOTA=>NULL() ! Total concentration of species - ! (HNO3, ! H2SO4, NH3) present in - ! each of the aerosol mode (ug/m3) - REAL, DIMENSION(:,:,:), POINTER :: XCCTOT=>NULL() ! Composition of 3rd Moment (%) - REAL, DIMENSION(:,:), POINTER :: XCTOTG=>NULL() ! Total concentration of volatile - ! species (HNO3, NH3) (ug/m3) in - ! the air - REAL, DIMENSION(:,:,:,:), POINTER :: XFRAC=>NULL() ! Gas fraction into organic species - REAL, DIMENSION(:,:,:,:), POINTER :: XMI=>NULL() ! Molar mass of aerosol species (g/mol) - REAL, DIMENSION(:,:,:,:), POINTER :: XSOLORG=>NULL() ! Solubility fraction of SOA (%) - REAL, DIMENSION(:,:), POINTER :: XRHOP0=>NULL() ! Condensed phase density (kg/m3) - REAL, DIMENSION(:,:,:,:), POINTER :: XRHOP3D=>NULL() ! Condensed phase density (kg/m3) - REAL, DIMENSION(:), POINTER :: XLAMBDA=>NULL() ! Mean free path of background - ! gas molecules - REAL, DIMENSION(:), POINTER :: XMU=>NULL() ! Gas viscosity (kg/(ms)) -! -!-------------------------------------------------------------------------- -! -!* Growth parameters -! - REAL, DIMENSION(:,:), POINTER :: XOM=>NULL() - -! -!---------------------------------------------------------------------------- -! -!* Nucleation/cond. growth parameters -! - REAL, DIMENSION(:), POINTER :: XSO4RAT=>NULL() - ! Rate of gas phase production of - ! sulfuric acid (molec./cm3/s) -! -!---------------------------------------------------------------------------- -! - LOGICAL :: GSEDFIX = .TRUE. ! flag used in CH_AER_SEDIM_n routine -! -END TYPE CH_AERO_t - -TYPE(CH_AERO_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: CH_AERO_MODEL - -REAL, DIMENSION(:,:), POINTER :: XN0=>NULL() -REAL, DIMENSION(:,:), POINTER :: XRG0=>NULL() -REAL, DIMENSION(:,:), POINTER :: XSIG0=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XN3D=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XRG3D=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XSIG3D=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XM3D=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XSEDA=>NULL() -REAL, DIMENSION(:,:,:), POINTER :: XVDEPAERO=>NULL() -REAL, DIMENSION(:,:,:,:,:), POINTER :: XCTOTA3D=>NULL() -REAL, DIMENSION(:,:,:), POINTER :: XFTEST=>NULL() -REAL, DIMENSION(:,:,:), POINTER :: XCTOTA=>NULL() -REAL, DIMENSION(:,:,:), POINTER :: XCCTOT=>NULL() -REAL, DIMENSION(:,:), POINTER :: XCTOTG=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XFRAC=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XMI=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XSOLORG=>NULL() -REAL, DIMENSION(:,:), POINTER :: XRHOP0=>NULL() -REAL, DIMENSION(:,:,:,:), POINTER :: XRHOP3D=>NULL() -REAL, DIMENSION(:), POINTER :: XLAMBDA=>NULL() -REAL, DIMENSION(:), POINTER :: XMU=>NULL() -REAL, DIMENSION(:,:), POINTER :: XOM=>NULL() -REAL, DIMENSION(:), POINTER :: XSO4RAT=>NULL() -LOGICAL, POINTER :: GSEDFIX=>NULL() - -CONTAINS - -SUBROUTINE CH_AERO_GOTO_MODEL(KFROM, KTO) -INTEGER, INTENT(IN) :: KFROM, KTO -! -! Save current state for allocated arrays -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODD_CH_AERO_N:CH_AERO_GOTO_MODEL',0,ZHOOK_HANDLE) -CH_AERO_MODEL(KFROM)%XN0=>XN0 -CH_AERO_MODEL(KFROM)%XRG0=>XRG0 -CH_AERO_MODEL(KFROM)%XSIG0=>XSIG0 -CH_AERO_MODEL(KFROM)%XN3D=>XN3D -CH_AERO_MODEL(KFROM)%XRG3D=>XRG3D -CH_AERO_MODEL(KFROM)%XSIG3D=>XSIG3D -CH_AERO_MODEL(KFROM)%XM3D=>XM3D -CH_AERO_MODEL(KFROM)%XSEDA=>XSEDA -CH_AERO_MODEL(KFROM)%XVDEPAERO=>XVDEPAERO -CH_AERO_MODEL(KFROM)%XCTOTA3D=>XCTOTA3D -CH_AERO_MODEL(KFROM)%XFTEST=>XFTEST -CH_AERO_MODEL(KFROM)%XCTOTA=>XCTOTA -CH_AERO_MODEL(KFROM)%XCCTOT=>XCCTOT -CH_AERO_MODEL(KFROM)%XCTOTG=>XCTOTG -CH_AERO_MODEL(KFROM)%XFRAC=>XFRAC -CH_AERO_MODEL(KFROM)%XMI=>XMI -CH_AERO_MODEL(KFROM)%XSOLORG=>XSOLORG -CH_AERO_MODEL(KFROM)%XRHOP0=>XRHOP0 -CH_AERO_MODEL(KFROM)%XRHOP3D=>XRHOP3D -CH_AERO_MODEL(KFROM)%XLAMBDA=>XLAMBDA -CH_AERO_MODEL(KFROM)%XMU=>XMU -CH_AERO_MODEL(KFROM)%XOM=>XOM -CH_AERO_MODEL(KFROM)%XSO4RAT=>XSO4RAT -! -! Current model is set to model KTO -XN0=>CH_AERO_MODEL(KTO)%XN0 -XRG0=>CH_AERO_MODEL(KTO)%XRG0 -XSIG0=>CH_AERO_MODEL(KTO)%XSIG0 -XN3D=>CH_AERO_MODEL(KTO)%XN3D -XRG3D=>CH_AERO_MODEL(KTO)%XRG3D -XSIG3D=>CH_AERO_MODEL(KTO)%XSIG3D -XM3D=>CH_AERO_MODEL(KTO)%XM3D -XSEDA=>CH_AERO_MODEL(KTO)%XSEDA -XVDEPAERO=>CH_AERO_MODEL(KTO)%XVDEPAERO -XCTOTA3D=>CH_AERO_MODEL(KTO)%XCTOTA3D -XFTEST=>CH_AERO_MODEL(KTO)%XFTEST -XCTOTA=>CH_AERO_MODEL(KTO)%XCTOTA -XCCTOT=>CH_AERO_MODEL(KTO)%XCCTOT -XCTOTG=>CH_AERO_MODEL(KTO)%XCTOTG -XFRAC=>CH_AERO_MODEL(KTO)%XFRAC -XMI=>CH_AERO_MODEL(KTO)%XMI -XSOLORG=>CH_AERO_MODEL(KTO)%XSOLORG -XRHOP0=>CH_AERO_MODEL(KTO)%XRHOP0 -XRHOP3D=>CH_AERO_MODEL(KTO)%XRHOP3D -XLAMBDA=>CH_AERO_MODEL(KTO)%XLAMBDA -XMU=>CH_AERO_MODEL(KTO)%XMU -XOM=>CH_AERO_MODEL(KTO)%XOM -XSO4RAT=>CH_AERO_MODEL(KTO)%XSO4RAT -GSEDFIX=>CH_AERO_MODEL(KTO)%GSEDFIX -IF (LHOOK) CALL DR_HOOK('MODD_CH_AERO_N:CH_AERO_GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE CH_AERO_GOTO_MODEL - -END MODULE MODD_CH_AERO_n diff --git a/src/arome/chem/module/modd_ch_aerosol.F90 b/src/arome/chem/module/modd_ch_aerosol.F90 deleted file mode 100644 index 051a69409b35af666d3f7bbb644a775d27e3fa61..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_aerosol.F90 +++ /dev/null @@ -1,264 +0,0 @@ -! ######spl - MODULE MODD_CH_AEROSOL -!! ###################### -!! -!! PURPOSE -!! ------- -!! -!! declaration of variables and types for the aerosol system -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! Vincent Crassier (LA) -!! -!! -!! MODIFICATIONS -!! ------------- -!! (30-01-01) P.Tulet (LA) * modifications for secondary biogenics aerosols -!! -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -USE MODD_CST, ONLY : & - XPI & !Definition of pi - ,XBOLTZ & ! Boltzman constant - ,XAVOGADRO & ![molec/mol] avogadros number - ,XG & ! Gravity constant - ,XP00 & ! Reference pressure - ,XMD & ![kg/mol] molar weight of air - ,XRD & ! Gaz constant for dry air - ,XCPD ! Cpd (dry air) -! -IMPLICIT NONE -! -! aerosol mode parameters -! -LOGICAL :: LORILAM = .FALSE. ! switch to active aerosols fluxes -LOGICAL :: LINITPM = .TRUE. ! switch to initialize BC -LOGICAL :: LAERINIT = .FALSE. ! switch to initialize aerosols - - ! and OC from CO concentration (real_case) -INTEGER, PARAMETER :: JPMODE=2 ! number of modes -INTEGER, PARAMETER :: JPIN=JPMODE*3 ! number of differential equations -INTEGER, SAVE, DIMENSION(JPMODE) :: NM0,NM3,NM6 ! index of the moments in arrays -! -!* indices of Aerosol chemical parameters -! -INTEGER, PARAMETER :: NSP=4 ! number of chemical species - ! for ARES or isorropia NSP=4 these are -INTEGER, PARAMETER :: JP_AER_SO4 = 1 -INTEGER, PARAMETER :: JP_AER_NO3 = 2 -INTEGER, PARAMETER :: JP_AER_NH3 = 3 -INTEGER, PARAMETER :: JP_AER_H2O = 4 -! -INTEGER, PARAMETER :: JP_AER_SO4g = JP_AER_SO4 -INTEGER, PARAMETER :: JP_AER_NO3g = JP_AER_NO3 -INTEGER, PARAMETER :: JP_AER_NH3g = JP_AER_NH3 -! -INTEGER, PARAMETER :: NCARB=2 ! number of chemically inert species - ! (like black carbon) -INTEGER, PARAMETER :: JP_AER_OC = 5 -INTEGER, PARAMETER :: JP_AER_BC = 6 - -INTEGER :: NSOA = 10 ! number of condensable species that may form - ! secondary aerosols -INTEGER :: NM6_AER = 2 ! number of condensable species that may form - ! secondary aerosols -INTEGER :: JP_AER_SOA1 = 7 -INTEGER :: JP_AER_SOA2 = 8 -INTEGER :: JP_AER_SOA3 = 9 -INTEGER :: JP_AER_SOA4 = 10 -INTEGER :: JP_AER_SOA5 = 11 -INTEGER :: JP_AER_SOA6 = 12 -INTEGER :: JP_AER_SOA7 = 13 -INTEGER :: JP_AER_SOA8 = 14 -INTEGER :: JP_AER_SOA9 = 15 -INTEGER :: JP_AER_SOA10 = 16 - -CHARACTER(LEN=32),DIMENSION(:), ALLOCATABLE :: CAERONAMES - -INTEGER :: JP_CH_SO4I = 1 -INTEGER :: JP_CH_SO4J = 2 -INTEGER :: JP_CH_NO3I = 3 -INTEGER :: JP_CH_NO3J = 4 -INTEGER :: JP_CH_NH3I = 5 -INTEGER :: JP_CH_NH3J = 6 -INTEGER :: JP_CH_H2OI = 7 -INTEGER :: JP_CH_H2OJ = 8 -INTEGER :: JP_CH_OCI = 9 -INTEGER :: JP_CH_OCJ = 10 -INTEGER :: JP_CH_BCI = 11 -INTEGER :: JP_CH_BCJ = 12 -INTEGER :: JP_CH_SOA1I = 13 -INTEGER :: JP_CH_SOA1J = 14 -INTEGER :: JP_CH_SOA2I = 15 -INTEGER :: JP_CH_SOA2J = 16 -INTEGER :: JP_CH_SOA3I = 17 -INTEGER :: JP_CH_SOA3J = 18 -INTEGER :: JP_CH_SOA4I = 19 -INTEGER :: JP_CH_SOA4J = 20 -INTEGER :: JP_CH_SOA5I = 21 -INTEGER :: JP_CH_SOA5J = 22 -INTEGER :: JP_CH_SOA6I = 23 -INTEGER :: JP_CH_SOA6J = 24 -INTEGER :: JP_CH_SOA7I = 25 -INTEGER :: JP_CH_SOA7J = 26 -INTEGER :: JP_CH_SOA8I = 27 -INTEGER :: JP_CH_SOA8J = 28 -INTEGER :: JP_CH_SOA9I = 29 -INTEGER :: JP_CH_SOA9J = 30 -INTEGER :: JP_CH_SOA10I = 31 -INTEGER :: JP_CH_SOA10J = 32 -INTEGER :: JP_CH_M0I = 33 -INTEGER :: JP_CH_M0J = 34 -INTEGER :: JP_CH_M6I = 35 -INTEGER :: JP_CH_M6J = 36 - -!INTEGER, PARAMETER :: JPNN=NSP+NSOA+NCARB - -! Index for gas species which interact with aerosols -INTEGER :: JP_CH_HNO3, JP_CH_H2SO4, JP_CH_NH3, JP_CH_O3, JP_CH_CO, & - JP_CH_URG1, JP_CH_URG2, JP_CH_RPG2, JP_CH_RP18, JP_CH_UR26,& - JP_CH_RPG3, JP_CH_URG4, JP_CH_UR8, JP_CH_UR17, JP_CH_UR7, JP_CH_URG6, & - JP_CH_ARAC, JP_CH_URG7, JP_CH_RPG7, JP_CH_RPR7, JP_CH_URG8, JP_CH_UR19, & - JP_CH_URG9, JP_CH_URG10, JP_CH_PAN8, JP_CH_UR22, JP_CH_RPR4, JP_CH_AP7, & - JP_CH_RPR3, JP_CH_UR21, JP_CH_UR28, JP_CH_UR29, JP_CH_UR30, & - JP_CH_RPR9, JP_CH_RP12, JP_CH_UR3, JP_CH_UR23, JP_CH_UR31, JP_CH_AP1, & - JP_CH_AP6, JP_CH_ADAC, JP_CH_UR2, JP_CH_UR14, JP_CH_UR27, JP_CH_RP14, & - JP_CH_RP19, JP_CH_UR11, JP_CH_UR15, JP_CH_AP10, JP_CH_UR20, JP_CH_UR34, & - JP_CH_AP11, JP_CH_AP12, JP_CH_UR5, JP_CH_UR6, JP_CH_AP8, JP_CH_RP17,& - JP_CH_RP13 - -INTEGER :: JP_CH_H2O2, JP_CH_SO2, JP_CH_SO42M -! -REAL, SAVE, DIMENSION(:), ALLOCATABLE :: XRHOI ! volumar mass of species i (kg/m3) - -REAL, SAVE, DIMENSION(:), ALLOCATABLE :: XFAC ! conversion factor um3/m3 -> ug/cm3 - ! for each chemical species - - -! Molar mass of each aerosols parents (in kg/mol) -REAL, PARAMETER :: XHNO3=63.01287 -REAL, PARAMETER :: XNH3 =17.03061 -REAL, PARAMETER :: XURG1=88. -REAL, PARAMETER :: XURG2=1.76981E+02 -REAL, PARAMETER :: XRPG2=1.68000E+02 -REAL, PARAMETER :: XRP18=1.84000E+02 -REAL, PARAMETER :: XRPG3=1.53772E+02 -REAL, PARAMETER :: XURG4=1.95867E+02 -REAL, PARAMETER :: XUR17=1.72000E+02 -REAL, PARAMETER :: XRPR3=1.86000E+02 -REAL, PARAMETER :: XAP7 =2.33000E+02 -REAL, PARAMETER :: XURG6=1.89153E+02 -REAL, PARAMETER :: XUR22=2.12000E+02 -REAL, PARAMETER :: XURG7=1.56781E+02 -REAL, PARAMETER :: XADAC=1.56781E+02 -REAL, PARAMETER :: XRPR4=1.67000E+02 -REAL, PARAMETER :: XRPR7=1.50000E+02 -REAL, PARAMETER :: XRPG7=1.96059E+02 -REAL, PARAMETER :: XURG8=1.73777E+02 -REAL, PARAMETER :: XURG9=2.61676E+02 -REAL, PARAMETER :: XUR26=1.68000E+02 -REAL, PARAMETER :: XURG10=2.14834E+02 -REAL, PARAMETER :: XUR7=1.68000E+02 -REAL, PARAMETER :: XUR8=1.84000E+02 -REAL, PARAMETER :: XPAN8=2.63000E+02 -REAL, PARAMETER :: XARAC=1.66000E+02 -REAL, PARAMETER :: XUR19=1.70000E+02 -REAL, PARAMETER :: XUR21=88. -REAL, PARAMETER :: XUR28=90. -REAL, PARAMETER :: XUR29=186.0 -REAL, PARAMETER :: XUR30=200.0 -REAL, PARAMETER :: XRP13=168. -REAL, PARAMETER :: XRP17=170.0 -REAL, PARAMETER :: XRPR9=154.0 -REAL, PARAMETER :: XRP12=152.0 -REAL, PARAMETER :: XUR3=202.0 -REAL, PARAMETER :: XUR23=144.0 -REAL, PARAMETER :: XUR31=220.0 -REAL, PARAMETER :: XAP1=183.0 -REAL, PARAMETER :: XAP6=197.0 -REAL, PARAMETER :: XRP14=188.0 -REAL, PARAMETER :: XRP19=204.0 -REAL, PARAMETER :: XUR2=152.0 -REAL, PARAMETER :: XUR14=181.0 -REAL, PARAMETER :: XUR27=164.0 -REAL, PARAMETER :: XUR11=172.0 -REAL, PARAMETER :: XUR15=201.0 -REAL, PARAMETER :: XAP10=217.0 -REAL, PARAMETER :: XUR20=256.0 -REAL, PARAMETER :: XUR34=240.0 -REAL, PARAMETER :: XAP11=287.0 -REAL, PARAMETER :: XAP12=303.0 -REAL, PARAMETER :: XUR5=170.0 -REAL, PARAMETER :: XUR6=170.0 -REAL, PARAMETER :: XAP8=215.0 - - -!---------------------------------------------------------------------------- -! -REAL, SAVE, DIMENSION(:,:), ALLOCATABLE :: XSURF -REAL, SAVE, DIMENSION(:,:), ALLOCATABLE :: XDP - -! Declaration for the Bessagnet tabulation -REAL, SAVE, DIMENSION(:), ALLOCATABLE :: rhi -REAL, SAVE, DIMENSION(:), ALLOCATABLE :: tempi -REAL, SAVE, DIMENSION(:), ALLOCATABLE :: zsu, znh, zni -REAL, SAVE, DIMENSION(:,:,:,:,:,:), ALLOCATABLE :: zf - -! Declaration of the neuronal coefficients - -! .. weights -REAL, SAVE, DIMENSION(100,100) :: W1IJA,W1JKA,W2IJA,W2JKA -REAL, SAVE, DIMENSION(100,100) :: W1IJB,W1JKB,W2IJB,W2JKB -REAL, SAVE, DIMENSION(100,100) :: W1IJC,W1JKC,W2IJC,W2JKC -REAL, SAVE, DIMENSION(2,100) :: X1MINA,X1MAXA,X1MODA,X2MINA,X2MAXA,X2MODA -REAL, SAVE, DIMENSION(2,100) :: X1MINB,X1MAXB,X1MODB,X2MINB,X2MAXB,X2MODB -REAL, SAVE, DIMENSION(2,100) :: X1MINC,X1MAXC,X1MODC,X2MINC,X2MAXC,X2MODC - -! .. counters and indices -INTEGER, SAVE :: I1IA,J1JA,K1KA,I2IA,J2JA,K2KA -INTEGER, SAVE :: I1IB,J1JB,K1KB,I2IB,J2JB,K2KB -INTEGER, SAVE :: I1IC,J1JC,K1KC,I2IC,J2JC,K2KC - -!---------------------------------------------------------------------------- -! aerosol lognormal parameterization -CHARACTER(LEN=4) :: CRGUNIT = 'NUMB' ! type of log-normal geometric mean radius -! !given in namelist (mass on number) - -LOGICAL :: LVARSIGI = .FALSE. ! switch to active pronostic dispersion for I mode -LOGICAL :: LVARSIGJ = .FALSE. ! switch to active pronostic dispersion for J mode -LOGICAL :: LVARSIGK = .FALSE. ! switch to active pronostic dispersion for J mode -LOGICAL :: LHETEROSO4 = .FALSE. ! switch to active sulfates heteronegeous - ! production -LOGICAL :: LRGFIX = .FALSE. ! switch to active aerosol sedimentation -LOGICAL :: LSEDIMAERO = .FALSE. ! switch to active aerosol sedimentation -REAL :: XN0IMIN = 10. ! minimum particule number value for I mode -REAL :: XN0JMIN = 1. ! minimum particule number value for J mode -REAL :: XINIRADIUSI= 0.05 ! mean radius initialization for I mode (um) -REAL :: XINIRADIUSJ= 0.2 ! mean radius initialization for J mode (um) -REAL :: XINISIGI = 1.80 ! dispersion initialization for I mode -REAL :: XINISIGJ = 2.00 ! dispersion initialization for J mode -REAL :: XSIGIMIN = 1.20 ! minimum dispersion value for I mode -REAL :: XSIGJMIN = 1.20 ! minimum dispersion value for J mode -REAL :: XSIGIMAX = 3.60 ! maximum dispersion value for I mode -REAL :: XSIGJMAX = 3.60 ! maximum dispersion value for J mode -REAL :: XCOEFRADIMAX = 10. ! maximum increasement for Rg mode I -REAL :: XCOEFRADIMIN = 0.1 ! maximum decreasement for Rg mode I -REAL :: XCOEFRADJMAX = 10. ! maximum increasement for Rg mode J -REAL :: XCOEFRADJMIN = 0.1 ! maximum decreasement for Rg mode J -CHARACTER(LEN=5) :: CMINERAL = "NONE" ! mineral equilibrium scheme -CHARACTER(LEN=5) :: CORGANIC = "NONE" ! organic equilibrium scheme -CHARACTER(LEN=80) :: CNUCLEATION = "NONE" ! sulfates nucleation scheme -! -! -END MODULE MODD_CH_AEROSOL diff --git a/src/arome/chem/module/modd_ch_aerosol0d.F90 b/src/arome/chem/module/modd_ch_aerosol0d.F90 deleted file mode 100644 index 3bf65ca9c54739a10c65e3e21b2a05db604a6b66..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_aerosol0d.F90 +++ /dev/null @@ -1,130 +0,0 @@ -! ######spl - MODULE MODD_CH_AEROSOL0D -!! ###################### -!! -!! PURPOSE -!! ------- -!! -!! declaration of variables and types for the aerosol system in the -!! surface meteo-france scheme -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! P. Tulet (CNRM) -!! -!! -!! MODIFICATIONS -!! ------------- -!! -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -IMPLICIT NONE -! -! aerosol mode parameters -LOGICAL :: LCH_AERO_FLUX = .FALSE. ! switch to active pronostic aerosols -! -LOGICAL :: LCO2PM = .FALSE. ! switch to active primary emission derived from CO - -LOGICAL :: LVARSIGI = .FALSE. ! switch to active pronostic dispersion for I mode -LOGICAL :: LVARSIGJ = .FALSE. ! switch to active pronostic dispersion for J mode - -! -INTEGER, PARAMETER :: JPMODE=2 ! number of modes -INTEGER, PARAMETER :: JPIN=JPMODE*3 ! number of differential equations -INTEGER, SAVE, DIMENSION(JPMODE) :: NM0,NM3,NM6 ! index of the moments in arrays -! -!* indices of Aerosol chemical parameters -! -INTEGER, PARAMETER :: NSP=4 ! number of chemical species - ! for ARES or isorropia NSP=4 these are -INTEGER, PARAMETER :: JP_AER_SO4 = 1 -INTEGER, PARAMETER :: JP_AER_NO3 = 2 -INTEGER, PARAMETER :: JP_AER_NH3 = 3 -INTEGER, PARAMETER :: JP_AER_H2O = 4 -! -INTEGER, PARAMETER :: JP_AER_SO4g = JP_AER_SO4 -INTEGER, PARAMETER :: JP_AER_NO3g = JP_AER_NO3 -INTEGER, PARAMETER :: JP_AER_NH3g = JP_AER_NH3 -! -INTEGER, PARAMETER :: NCARB=2 ! number of chemically inert species - ! (like black carbon) -INTEGER, PARAMETER :: JP_AER_OC = 5 -INTEGER, PARAMETER :: JP_AER_BC = 6 - -INTEGER, PARAMETER :: NSOA=10 ! number of condensable species that may form - ! secondary aerosols -INTEGER, PARAMETER :: JP_AER_SOA1 = 7 -INTEGER, PARAMETER :: JP_AER_SOA2 = 8 -INTEGER, PARAMETER :: JP_AER_SOA3 = 9 -INTEGER, PARAMETER :: JP_AER_SOA4 = 10 -INTEGER, PARAMETER :: JP_AER_SOA5 = 11 -INTEGER, PARAMETER :: JP_AER_SOA6 = 12 -INTEGER, PARAMETER :: JP_AER_SOA7 = 13 -INTEGER, PARAMETER :: JP_AER_SOA8 = 14 -INTEGER, PARAMETER :: JP_AER_SOA9 = 15 -INTEGER, PARAMETER :: JP_AER_SOA10 = 16 - ! Dusts -INTEGER, PARAMETER :: JP_AER_DUST = 17 -! switch to use Pun et al. (if equal -! to 1) -INTEGER, PARAMETER :: JP_AER_SOA = 1 ! -! to compile ch_monitorn (to be change if use RACM or ReLAS) -INTEGER, PARAMETER :: JP_AER_SOAA = 1 ! -INTEGER, PARAMETER :: JP_AER_SOAB = 1 ! -INTEGER, PARAMETER :: JP_SOAAi = 1 ! -INTEGER, PARAMETER :: JP_SOAAj = 1 ! -INTEGER, PARAMETER :: JP_SOABi = 1 ! -INTEGER, PARAMETER :: JP_SOABj = 1 ! - -INTEGER, PARAMETER :: JPNN=NSP+NSOA+NCARB+1 - -INTEGER :: JP_CH_SO4i, JP_CH_SO4j, & - JP_CH_NO3i, JP_CH_NO3j, JP_CH_NH3i, JP_CH_NH3j, & - JP_CH_BCi, JP_CH_BCj, JP_CH_OCi, JP_CH_OCj, & - JP_CH_H2Oi, JP_CH_H2Oj, JP_CH_DUST, JP_CH_M0i, & - JP_CH_M0j, JP_CH_M6i, JP_CH_M6j -! -REAL, SAVE, DIMENSION(JPNN) :: XMI ! molecular mass of species i (g/mol) - -REAL, SAVE, DIMENSION(JPNN) :: XRHOI ! volumar mass of species i (kg/m3) - -REAL, SAVE, DIMENSION(JPNN) :: XFAC ! conversion factor um3/m3 -> ug/cm3 - ! for each chemical species -! -REAL :: XEMISRADIUSI = 0.01 ! mean radius of primary aerosol - ! emission for I mode -REAL :: XEMISRADIUSJ = 0.5 ! mean radius of primary aerosol - ! emission for J mode -REAL :: XEMISRADIUSK = 4. ! mean radius of primary aerosol - ! emission for K mode -REAL :: XEMISSIGI = 1.60 ! dispersion of primary aerosol - ! emission for I mode -REAL :: XEMISSIGJ = 1.60 ! dispersion of primary aerosol - ! emission for J mode -REAL :: XEMISSIGK = 1.60 ! dispersion of primary aerosol - ! emission for K mode -CHARACTER*4 :: CRGUNIT = 'MASS' ! type of log-normal geometric mean radius given -! ! in nameliste (mass on number) - - - -!---------------------------------------------------------------------------- -! -!* constants -! -REAL, PARAMETER :: XPBOLTZ=1.380658e-23 ! Boltzmann constant (J/K) -REAL, PARAMETER :: XAVOGADRO=6.0221367E+23 ! Avogadro constant -REAL, PARAMETER :: XMD = 28.9644E-3 ! Air mass molarity - -! -END MODULE MODD_CH_AEROSOL0D diff --git a/src/arome/chem/module/modd_ch_const.F90 b/src/arome/chem/module/modd_ch_const.F90 deleted file mode 100644 index 71af6bc9f8e9fdd795d065ca846f5bd0313582a6..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_const.F90 +++ /dev/null @@ -1,41 +0,0 @@ -! ######spl - MODULE MODD_CH_CONST -! ###################### -! -!! -!! PURPOSE -!! ------- -! -! -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -! -!! AUTHOR -!! ------ -!! P. Tulet (16/01/01) *Meteo France* -!! -!! MODIFICATIONS -!! ------------- -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! - -REAL, SAVE, DIMENSION(:), ALLOCATABLE :: XSREALMASSMOLVAL ! final molecular - ! diffusivity value -REAL, SAVE, DIMENSION(:), ALLOCATABLE :: XSREALREACTVAL ! final chemical - ! reactivity factor - ! with biologie -REAL, SAVE, DIMENSION(:,:), ALLOCATABLE :: XSREALHENRYVAL ! chemical Henry - ! constant value -REAL, SAVE :: XCONVERSION ! emission unit - ! conversion factor -! -END MODULE MODD_CH_CONST diff --git a/src/arome/chem/module/modd_ch_dep_n.F90 b/src/arome/chem/module/modd_ch_dep_n.F90 deleted file mode 100644 index d33885a13eeebb104b16311faa26f4ec3ee5af09..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_dep_n.F90 +++ /dev/null @@ -1,95 +0,0 @@ -! ######spl - MODULE MODD_CH_DEP_n - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ###################### -! -!! -!! PURPOSE -!! ------- -! -! -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -! -!! AUTHOR -!! ------ -!! P. Tulet *Meteo France* -!! -!! MODIFICATIONS -!! ------------- -!! 16/01/01 (P. Tulet) restructured -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_PARAMETERS, ONLY: JPMODELMAX -IMPLICIT NONE - -TYPE CH_DEP_t -! - REAL :: XRCSANDSO2 ! SO2 sand surface resistance - REAL :: XRCSANDO3 ! O3 sand surface resistance - REAL :: XRCCLAYSO2 ! SO2 clay surface resistance - REAL :: XRCCLAYO3 ! O3 clay surface resistance - REAL :: XRCSNOWSO2 ! SO2 snow surface resistance - REAL :: XRCSNOWO3 ! O3 snow surface resistance - REAL :: XLANDREXT ! land type for external leaf resistance - REAL, DIMENSION(:,:), POINTER :: XDIFFMOLH2O=>NULL() ! H2O molecular diffusivity - - REAL, DIMENSION(:,:,:), POINTER :: XHENRYVALCOR=>NULL() ! temperature correction for - ! chemical Henry constant value - REAL, DIMENSION(:,:,:), POINTER :: XVDEPT=>NULL() ! final dry deposition velocity at t -! -! -! - - -END TYPE CH_DEP_t - -TYPE(CH_DEP_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: CH_DEP_MODEL - -REAL, POINTER :: XRCSANDSO2=>NULL() -REAL, POINTER :: XRCSANDO3=>NULL() -REAL, POINTER :: XRCCLAYSO2=>NULL() -REAL, POINTER :: XRCCLAYO3=>NULL() -REAL, POINTER :: XRCSNOWSO2=>NULL() -REAL, POINTER :: XRCSNOWO3=>NULL() -REAL, POINTER :: XLANDREXT=>NULL() -REAL, DIMENSION(:,:), POINTER :: XDIFFMOLH2O=>NULL() -REAL, DIMENSION(:,:,:), POINTER :: XHENRYVALCOR=>NULL() -REAL, DIMENSION(:,:,:), POINTER :: XVDEPT=>NULL() - -CONTAINS - -SUBROUTINE CH_DEP_GOTO_MODEL(KFROM, KTO) -INTEGER, INTENT(IN) :: KFROM, KTO -! -! Save current state for allocated arrays -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODD_CH_DEP_N:CH_DEP_GOTO_MODEL',0,ZHOOK_HANDLE) -CH_DEP_MODEL(KFROM)%XDIFFMOLH2O=>XDIFFMOLH2O -CH_DEP_MODEL(KFROM)%XHENRYVALCOR=>XHENRYVALCOR -CH_DEP_MODEL(KFROM)%XVDEPT=>XVDEPT -! -! Current model is set to model KTO -XRCSANDSO2=>CH_DEP_MODEL(KTO)%XRCSANDSO2 -XRCSANDO3=>CH_DEP_MODEL(KTO)%XRCSANDO3 -XRCCLAYSO2=>CH_DEP_MODEL(KTO)%XRCCLAYSO2 -XRCCLAYO3=>CH_DEP_MODEL(KTO)%XRCCLAYO3 -XRCSNOWSO2=>CH_DEP_MODEL(KTO)%XRCSNOWSO2 -XRCSNOWO3=>CH_DEP_MODEL(KTO)%XRCSNOWO3 -XLANDREXT=>CH_DEP_MODEL(KTO)%XLANDREXT -XDIFFMOLH2O=>CH_DEP_MODEL(KTO)%XDIFFMOLH2O -XHENRYVALCOR=>CH_DEP_MODEL(KTO)%XHENRYVALCOR -XVDEPT=>CH_DEP_MODEL(KTO)%XVDEPT - -IF (LHOOK) CALL DR_HOOK('MODD_CH_DEP_N:CH_DEP_GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE CH_DEP_GOTO_MODEL - -END MODULE MODD_CH_DEP_n diff --git a/src/arome/chem/module/modd_ch_init_jvalues.F90 b/src/arome/chem/module/modd_ch_init_jvalues.F90 deleted file mode 100644 index 9107e71144d78b2ea338e330d10bbaf06703ef9b..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_init_jvalues.F90 +++ /dev/null @@ -1,29 +0,0 @@ -! ######spl - MODULE MODD_CH_INIT_JVALUES -!! ########################### -!! -!!*** *MODD_CH_INIT_JVALUES* -!! -!! PURPOSE -!! ------- -!! Store J values variables common to all models -!! (i.e. before spatial and temporal interpolation) -!! XJDATA is calculated at the first call of model 1. -!! XJDATA is calculated for a discrete number -!! of solar zenith angle, altitude and albedo. -! -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -SAVE -! -REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: XJDATA -INTEGER :: NSZA_INCR = 99 + 1 -REAL, ALLOCATABLE, DIMENSION(:) :: XSZA_JVAL -INTEGER, PARAMETER :: NZZ_JVAL = 30 + 1 -REAL, ALLOCATABLE, DIMENSION(:) :: XZZ_JVAL -INTEGER, PARAMETER :: JPJVMAX = 21 -INTEGER :: NBALB = 10 -! -END MODULE MODD_CH_INIT_JVALUES diff --git a/src/arome/chem/module/modd_ch_jvalues_n.F90 b/src/arome/chem/module/modd_ch_jvalues_n.F90 deleted file mode 100644 index 69c676cee08667996d9c17d667e72ed570435b8b..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_jvalues_n.F90 +++ /dev/null @@ -1,67 +0,0 @@ -! ######spl - MODULE MODD_CH_JVALUES_n - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################## -!! -!!*** *MODD_CH_JVALUES$n* -!! -!! PURPOSE -!! ------- -! This module contains the photolysis rates (JVALUES) calculated -! by the radiative transfer code TUV39 -!! -!!** AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -! -!! MODIFICATIONS -!! ------------- -!! Original 05/03/97 -!! 14/02/99 (K. Suhre) add surface albedo and column dobson to parameter list -!! 16/02/99 (K. Suhre) add offline option -!! 20/01/01 (C. Mari) 3D interpolation of J values -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!! -!----------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ----------------- -USE MODD_PARAMETERS, ONLY: JPMODELMAX -IMPLICIT NONE - -TYPE CH_JVALUES_t -! - REAL, DIMENSION(:,:,:,:), POINTER :: XJVALUES=>NULL() - ! photolysis rates after time interpolation - LOGICAL :: GSFIRSTCALL = .TRUE. ! flag for initialization on first call -! -!----------------------------------------------------------------------------- -END TYPE CH_JVALUES_t - -TYPE(CH_JVALUES_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: CH_JVALUES_MODEL - -REAL, POINTER, DIMENSION(:,:,:,:) :: XJVALUES=>NULL() -LOGICAL, POINTER :: GSFIRSTCALL=>NULL() - -CONTAINS - -SUBROUTINE CH_JVALUES_GOTO_MODEL(KFROM, KTO) -INTEGER, INTENT(IN) :: KFROM, KTO -! -! Save current state for allocated arrays -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODD_CH_JVALUES_N:CH_JVALUES_GOTO_MODEL',0,ZHOOK_HANDLE) -CH_JVALUES_MODEL(KFROM)%XJVALUES=>XJVALUES -! -! Current model is set to model KTO -XJVALUES=>CH_JVALUES_MODEL(KTO)%XJVALUES -GSFIRSTCALL=>CH_JVALUES_MODEL(KTO)%GSFIRSTCALL - -IF (LHOOK) CALL DR_HOOK('MODD_CH_JVALUES_N:CH_JVALUES_GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE CH_JVALUES_GOTO_MODEL - -END MODULE MODD_CH_JVALUES_n diff --git a/src/arome/chem/module/modd_ch_m9.F90 b/src/arome/chem/module/modd_ch_m9.F90 deleted file mode 100644 index 1fba22ea3d95519400c6b7695992079d85ea8323..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_m9.F90 +++ /dev/null @@ -1,54 +0,0 @@ -! ######spl - MODULE MODD_CH_M9 -!! ################# -!! -!! This code is the MESONH interface to constant and variables defined in module -!! MODD_CH_M9_SCHEME that is proper to one chemical scheme. This interface should -!! reduce the source dependances and then improve the compilation time. -!! -!!*** *MODD_CH_M9* -!! -!! PURPOSE -!! ------- -! definition of variables and constant for the chemical core system -!! -!!** METHOD -!! ------ -!! The constants NEQ and NREAC are duplicated here in order to avoid -!! decouple the CCS from the other modules of MNHC. -!! -!! BEWARE : you must call the procedure 'CH_INIT_SCHEME' before using any -!! variables from this module. -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Didier Gazen (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 19/10/03 -!! -!!---------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -IMPLICIT NONE -! -INTEGER :: NEQ ! number of prognostic chemical species -INTEGER :: NREAC ! number of chemical reactions -INTEGER :: NMETEOVARS ! number of meteorological variables -INTEGER :: NNONZEROTERMS ! number of non-zero terms returned by CH_TERMS -! -CHARACTER(LEN=32), DIMENSION(:), POINTER :: CNAMES=>NULL() ! names of the species -CHARACTER(LEN=32), DIMENSION(:), POINTER :: CREACS=>NULL() ! the reaction rate names -CHARACTER(LEN=256), DIMENSION(:), POINTER :: CFULLREACS=>NULL() ! the full reactions -! -TYPE METEOTRANSTYPE ! variables from the meteorological part - REAL, DIMENSION(20) :: XMETEOVAR ! the meteorological variables - CHARACTER(LEN=32), DIMENSION(20) :: CMETEOVAR ! their names -END TYPE METEOTRANSTYPE -! -END MODULE MODD_CH_M9 diff --git a/src/arome/chem/module/modd_ch_m9_scheme.F90 b/src/arome/chem/module/modd_ch_m9_scheme.F90 deleted file mode 100644 index a3fda32e9736c93209bc73500378bc17d5a24e86..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_m9_scheme.F90 +++ /dev/null @@ -1,137 +0,0 @@ -! ######spl - MODULE MODD_CH_M9_SCHEME -!! ######################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -!! -!!*** *MODD_CH_M9_SCHEME* -!! -!! PURPOSE -!! ------- -! definition of variables and types for the chemical core system -!! -!!** METHOD -!! ------ -!! All constants and auxiliary variables are stored in one common -!! data type (CCSTYPE). This allows to pass them all as one single -!! variable in the argument lists of the CCS. -!! The constants NEQ and NREAC are duplicated here in order to avoid -!! decouple the CCS from the other modules of MNHC. -!! Variables to be transfered from the meteorological part are stored -!! in the data type METEOTRANSTYPE (number, value and name). -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Karsten Suhre (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Original 26/07/96 -!! Modified 05/05/98: Vectorization (Vincent Crassier & KS) -!! Modified 31/10/03: New interface for better MesoNH compilation (D. Gazen) -!! -!!---------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -IMPLICIT NONE -INTEGER, PARAMETER :: NEQ = 40 ! number of prognostic chemical species -INTEGER, PARAMETER :: NREAC = 128 ! number of chemical reactions -INTEGER, PARAMETER :: NMETEOVARS = 10 ! number of meteorological variables -INTEGER, PARAMETER :: NNONZEROTERMS = 593 ! number of non-zero terms returned by CH_TERMS -CHARACTER(LEN=32), DIMENSION(NEQ), TARGET :: CNAMES ! names of the species -CHARACTER(LEN=32), DIMENSION(NREAC), TARGET :: CREACS ! the reaction rate names -CHARACTER(LEN=256), DIMENSION(NREAC), TARGET :: CFULLREACS ! the full reactions -! -TYPE CCSTYPE ! reaction rates and auxiliary variables - REAL,DIMENSION(:),POINTER :: K001,K002,K003,K004,K005,K006,K007,K008,K009,K010& -&,K011,K012,K013,K014,K015,K016,K017,K018,K019,K020,K021,K022,K023,K024,K025,K0& -&26,K027,K028,K029,K030,K031,K032,K033,K034,K035,K036,K037,K038,K039,K040,K041,& -&K042,K043,K044,K045,K046,K047,K048,K049,K050,K051,K052,K053,K054,K055,K056,K05& -&7,K058,K059,K060,K061,K062,K063,K064,K065,K066,K067,K068,K069,K070,K071,K072,K& -&073,K074,K075,K076,K077,K078,K079,K080,K081,K082,K083,K084,K085,K086,K087,K088& -&,K089,K090,K091,K092,K093,K094,K095,K096,K097,K098,K099,K100,K101,K102,K103,K1& -&04,K105,K106,K107,K108,K109,K110,K111,K112,K113,K114,K115,K116,K117,K118,K119,& -&K120,K121,K122,K123,K124,K125,K126,K127,K128 -! output channel (NOUT) and verbosity level (NVERB) -INTEGER,DIMENSION(:),POINTER :: NOUT=>NULL(),NVERB=>NULL() -! auxiliary variables defined by the user, if any (e.g. O2, N2, H2O) -! /BEGIN_MODULE/ - ! - ! supplementary variables of the CCS that are to be placed into - ! the TYPE definition of TPK (to be addressed e.g. as TPK%O2): - ! - INTEGER,DIMENSION(:),POINTER :: MODELLEVEL ! index of the model level (1 for box model) - REAL,DIMENSION(:),POINTER :: T, &! temperature (K) - PRESSURE, &! pressure (atm) - M, &! air density (molec/cm3) - H2O, &! conc. of water molecules (molec/cm3) - CLOUDWATER, &! cloud water (kg/kg) - O2, N2, H2, &! conc. of oxigen nitrogen, hydrogen (molec/cm3) - OH, O1D, O3P, &! (molec/cm3) at equilibrium (fast species) - LON, &! longitude of curtrent grid point (degree) - LAT ! latitude of curtrent grid point (degree) - - INTEGER,DIMENSION(:),POINTER :: YEAR, MONTH, DAY ! starting date of experiment (~DTEXP) - ! -! /END_MODULE/ -END TYPE CCSTYPE -! -! Use array of CCSTYPE to handle the 8 possible models : -! TACCS(i) refers to the CCSTYPE variable of the ith model -! You should declare a TYPE(CCSTYPE) pointer variable TZK to point to -! TACCS(i) in each subroutine that deals with CCSTYPE variables : -! -! TYPE(CCSTYPE),POINTER :: TZK -! -! TZK=>TACCS(KMI) -! -TYPE(CCSTYPE), DIMENSION(8), TARGET, SAVE :: TACCS ! 8 models -! -! list of chemical species indices -INTEGER, PARAMETER :: JP_O3 = 1 -INTEGER, PARAMETER :: JP_H2O2 = 2 -INTEGER, PARAMETER :: JP_NO = 3 -INTEGER, PARAMETER :: JP_NO2 = 4 -INTEGER, PARAMETER :: JP_NO3 = 5 -INTEGER, PARAMETER :: JP_N2O5 = 6 -INTEGER, PARAMETER :: JP_HONO = 7 -INTEGER, PARAMETER :: JP_HNO3 = 8 -INTEGER, PARAMETER :: JP_HNO4 = 9 -INTEGER, PARAMETER :: JP_NH3 = 10 -INTEGER, PARAMETER :: JP_SO2 = 11 -INTEGER, PARAMETER :: JP_SULF = 12 -INTEGER, PARAMETER :: JP_CO = 13 -INTEGER, PARAMETER :: JP_OH = 14 -INTEGER, PARAMETER :: JP_HO2 = 15 -INTEGER, PARAMETER :: JP_CH4 = 16 -INTEGER, PARAMETER :: JP_ETH = 17 -INTEGER, PARAMETER :: JP_ALKA = 18 -INTEGER, PARAMETER :: JP_ALKE = 19 -INTEGER, PARAMETER :: JP_BIO = 20 -INTEGER, PARAMETER :: JP_ARO = 21 -INTEGER, PARAMETER :: JP_HCHO = 22 -INTEGER, PARAMETER :: JP_ALD = 23 -INTEGER, PARAMETER :: JP_KET = 24 -INTEGER, PARAMETER :: JP_CARBO = 25 -INTEGER, PARAMETER :: JP_ONIT = 26 -INTEGER, PARAMETER :: JP_PAN = 27 -INTEGER, PARAMETER :: JP_OP1 = 28 -INTEGER, PARAMETER :: JP_OP2 = 29 -INTEGER, PARAMETER :: JP_ORA2 = 30 -INTEGER, PARAMETER :: JP_MO2 = 31 -INTEGER, PARAMETER :: JP_ALKAP = 32 -INTEGER, PARAMETER :: JP_ALKEP = 33 -INTEGER, PARAMETER :: JP_BIOP = 34 -INTEGER, PARAMETER :: JP_PHO = 35 -INTEGER, PARAMETER :: JP_ADD = 36 -INTEGER, PARAMETER :: JP_AROP = 37 -INTEGER, PARAMETER :: JP_CARBOP = 38 -INTEGER, PARAMETER :: JP_OLN = 39 -INTEGER, PARAMETER :: JP_XO2 = 40 -! -END MODULE MODD_CH_M9_SCHEME diff --git a/src/arome/chem/module/modd_ch_meteo.F90 b/src/arome/chem/module/modd_ch_meteo.F90 deleted file mode 100644 index 4ce4355d09163228cad5281f88420a952c941be7..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_meteo.F90 +++ /dev/null @@ -1,45 +0,0 @@ -! ######spl - MODULE MODD_CH_METEO -!! ###################### -!! -!!*** *MODD_CH_METEO* -!! -!! PURPOSE -!! ------- -! contains the meteovariables that will be updated by ch_update_meteo -!! -!!** AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 20/04/99 -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -! -IMPLICIT NONE -SAVE -! -INTEGER :: NMETEORECS - ! number of records -! -INTEGER :: NMETEORECACT = 1 - ! actual record (used in temporal interpolation) -! -REAL, DIMENSION(:), ALLOCATABLE :: XMETEOTIME - ! the time of the individual records -! -REAL, DIMENSION(:,:), ALLOCATABLE :: XMETEODATA - ! the meteodata (the first dimension is the number of - ! elements NMETEOVARS, the second dimension is the number - ! of records) -! -END MODULE MODD_CH_METEO diff --git a/src/arome/chem/module/modd_ch_mnhc_n.F90 b/src/arome/chem/module/modd_ch_mnhc_n.F90 deleted file mode 100644 index 98390207b8f4c659e386db5dc063ef986fab3201..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_mnhc_n.F90 +++ /dev/null @@ -1,186 +0,0 @@ -! ######spl - MODULE MODD_CH_MNHC_n - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ##################### -!! -!!*** *MODD_CH_MNHC$n* -!! -!! PURPOSE -!! ------- -! This module contains all parameters that control the -! chemical part of MesoNH. -!! -!!** AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerollogie* -! -!! MODIFICATIONS -!! ------------- -!! Original 24/05/95 -!! 27/07/96 (K. Suhre) restructured -!! 30/11/99 (K. Suhre) add new parameters -!! 16/11/00 (C. Mari) add new parameters -!! 28/05/02 (C. Mari) move default values to default_desfmn -!! 13/07/03 (J.-P. Pinty) add flag for lightning production of NOx -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!! -!----------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ----------------- -USE MODD_PARAMETERS, ONLY: JPMODELMAX -IMPLICIT NONE - -TYPE CH_MNHC_t -! -! switch which indicates whether chemistry is used or not -! - LOGICAL :: LUSECHEM -! -!* Initialization -! - LOGICAL :: LCH_INIT_FIELD ! flag indicating whether initialization - ! of chemical fields shall be done during MesoNH run using - ! CH_INIT_FIELD (overwrites initial values from FM-files) - ! or not -! -!* Surface options -! - LOGICAL :: LCH_SURFACE_FLUX ! flag indicating whether surface flux - ! for chemical species shall be calculated using - ! CH_SURFACE_FLUX or not (dry deposition and emission) -! -!* Scavenging -! - LOGICAL :: LCH_CONV_SCAV - ! flag for calculation of scavenging - ! by convective precipitations (active only if LCHTRANS=.TRUE.) -! - CHARACTER(LEN=10) :: CCH_EXPLICIT_SCAV - ! wet deposition method (not yet implemented) -! -!* - CHARACTER(LEN=10) :: CCH_SCHEME - ! name of chemical scheme -! - CHARACTER(LEN=80) :: CCHEM_INPUT_FILE - ! name of general - ! purpose ASCII input file (handeled by CH_OPEN_INPUT) -! - CHARACTER(LEN=10) :: CCH_TDISCRETIZATION - ! temporal discretization: - ! "SPLIT" : use time-splitting, input fields for solver are - ! scalar variables at t+dt (derived from XRSVS) - ! "CENTER" : input fields for solver are - ! scalar variables at t (XSVT) - ! "LAGGED" : input fields for solver are - ! scalar variables at t-dt (XSVM) -! - INTEGER :: NCH_SUBSTEPS - ! number of chemical timesteps to be taken during one - ! double timestep of MesoNH (MesoNH integrates with timesteps - ! of lenght 2*XTSTEP using leapfrog), the timestep of the - ! solver will be calculated as - ! ZDTSOLVER = 2*XTSTEP / NCH_SUBSTEPS -!* LiNOx -! -LOGICAL :: LCH_CONV_LINOX - ! flag for calculation of NOx production by lightnings -! -!* photolysis rates (TUV) -! - LOGICAL :: LCH_TUV_ONLINE ! switch online/lookup table - CHARACTER*80 :: CCH_TUV_LOOKUP ! name of lookup table file - CHARACTER*4 :: CCH_TUV_CLOUDS ! method for calculating the - ! impact of clouds on radiation - ! "FOUQ" (model clouds, only 1-D) - REAL :: XCH_TUV_ALBNEW ! surface albedo (if negative the albedo - ! will be read from DATAX/albedo.dat) - REAL :: XCH_TUV_DOBNEW ! scaling factor for ozone column dobson - ! (if negative, no scaling will be performed, - ! note: the O3 profile will be read from - ! DATAX/O3.profile, if this file is empty, the - ! US standard O3 profile will be used) - REAL :: XCH_TUV_TUPDATE ! update frequency for TUV (in seconds) -! -!* vectorization -! - CHARACTER*3 :: CCH_VEC_METHOD ! type of vectorization mask - ! 'MAX' take NCH_VEC_LENGTH points - ! 'TOT' take all grid points - ! 'HOR' take horizontal layers - ! 'VER' take vertical columns - INTEGER :: NCH_VEC_LENGTH ! number of points for 'MAX' option -! -!* 1-D time series -! - REAL :: XCH_TS1D_TSTEP ! time between two call to write_ts1d - CHARACTER*80 :: CCH_TS1D_COMMENT ! comment for write_ts1d - CHARACTER*80 :: CCH_TS1D_FILENAME ! filename for write_ts1d files -! -END TYPE CH_MNHC_t - -TYPE(CH_MNHC_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: CH_MNHC_MODEL - -LOGICAL, POINTER :: LUSECHEM=>NULL() -LOGICAL, POINTER :: LCH_INIT_FIELD=>NULL() -LOGICAL, POINTER :: LCH_SURFACE_FLUX=>NULL() -LOGICAL, POINTER :: LCH_CONV_SCAV=>NULL() -CHARACTER(LEN=10), POINTER :: CCH_EXPLICIT_SCAV=>NULL() -CHARACTER(LEN=10), POINTER :: CCH_SCHEME=>NULL() -CHARACTER(LEN=80), POINTER :: CCHEM_INPUT_FILE=>NULL() -CHARACTER(LEN=10), POINTER :: CCH_TDISCRETIZATION=>NULL() -INTEGER, POINTER :: NCH_SUBSTEPS=>NULL() -LOGICAL, POINTER :: LCH_CONV_LINOX=>NULL() -LOGICAL, POINTER :: LCH_TUV_ONLINE=>NULL() -CHARACTER*80, POINTER :: CCH_TUV_LOOKUP=>NULL() -CHARACTER*4, POINTER :: CCH_TUV_CLOUDS=>NULL() -REAL, POINTER :: XCH_TUV_ALBNEW=>NULL() -REAL, POINTER :: XCH_TUV_DOBNEW=>NULL() -REAL, POINTER :: XCH_TUV_TUPDATE=>NULL() -CHARACTER*3, POINTER :: CCH_VEC_METHOD=>NULL() -INTEGER, POINTER :: NCH_VEC_LENGTH=>NULL() -REAL, POINTER :: XCH_TS1D_TSTEP=>NULL() -CHARACTER*80, POINTER :: CCH_TS1D_COMMENT=>NULL() -CHARACTER*80, POINTER :: CCH_TS1D_FILENAME=>NULL() - -CONTAINS - -SUBROUTINE CH_MNHC_GOTO_MODEL(KFROM, KTO) -INTEGER, INTENT(IN) :: KFROM, KTO -! -! Save current state for allocated arrays -! -! Current model is set to model KTO -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODD_CH_MNHC_N:CH_MNHC_GOTO_MODEL',0,ZHOOK_HANDLE) -LUSECHEM=>CH_MNHC_MODEL(KTO)%LUSECHEM -LCH_INIT_FIELD=>CH_MNHC_MODEL(KTO)%LCH_INIT_FIELD -LCH_SURFACE_FLUX=>CH_MNHC_MODEL(KTO)%LCH_SURFACE_FLUX -LCH_CONV_SCAV=>CH_MNHC_MODEL(KTO)%LCH_CONV_SCAV -CCH_EXPLICIT_SCAV=>CH_MNHC_MODEL(KTO)%CCH_EXPLICIT_SCAV -CCH_SCHEME=>CH_MNHC_MODEL(KTO)%CCH_SCHEME -CCHEM_INPUT_FILE=>CH_MNHC_MODEL(KTO)%CCHEM_INPUT_FILE -CCH_TDISCRETIZATION=>CH_MNHC_MODEL(KTO)%CCH_TDISCRETIZATION -NCH_SUBSTEPS=>CH_MNHC_MODEL(KTO)%NCH_SUBSTEPS -LCH_CONV_LINOX=>CH_MNHC_MODEL(KTO)%LCH_CONV_LINOX -LCH_TUV_ONLINE=>CH_MNHC_MODEL(KTO)%LCH_TUV_ONLINE -CCH_TUV_LOOKUP=>CH_MNHC_MODEL(KTO)%CCH_TUV_LOOKUP -CCH_TUV_CLOUDS=>CH_MNHC_MODEL(KTO)%CCH_TUV_CLOUDS -XCH_TUV_ALBNEW=>CH_MNHC_MODEL(KTO)%XCH_TUV_ALBNEW -XCH_TUV_DOBNEW=>CH_MNHC_MODEL(KTO)%XCH_TUV_DOBNEW -XCH_TUV_TUPDATE=>CH_MNHC_MODEL(KTO)%XCH_TUV_TUPDATE -CCH_VEC_METHOD=>CH_MNHC_MODEL(KTO)%CCH_VEC_METHOD -NCH_VEC_LENGTH=>CH_MNHC_MODEL(KTO)%NCH_VEC_LENGTH -XCH_TS1D_TSTEP=>CH_MNHC_MODEL(KTO)%XCH_TS1D_TSTEP -CCH_TS1D_COMMENT=>CH_MNHC_MODEL(KTO)%CCH_TS1D_COMMENT -CCH_TS1D_FILENAME=>CH_MNHC_MODEL(KTO)%CCH_TS1D_FILENAME - -IF (LHOOK) CALL DR_HOOK('MODD_CH_MNHC_N:CH_MNHC_GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE CH_MNHC_GOTO_MODEL - -END MODULE MODD_CH_MNHC_n diff --git a/src/arome/chem/module/modd_ch_model0d.F90 b/src/arome/chem/module/modd_ch_model0d.F90 deleted file mode 100644 index a5530a1243021c7cf02f274b70f7918f455e6256..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_model0d.F90 +++ /dev/null @@ -1,97 +0,0 @@ -! ######spl - MODULE MODD_CH_MODEL0D -!! ###################### -!! -!!*** *MODD_CH_MODEL0D* -!! -!! PURPOSE -!! ------- -! contains all control variables of the box model, -! all timing variables, file names, formats and I/O channels -! used by the box-model are declared here -!! -!!** AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/03/95 -!! 27/07/96 (K. Suhre) restructured -!! 16/02/99 (K. Suhre) add new parameters for TUV -!! XCH_TUV_DOBNEW : scaling factor fir column dobson -!! XCH_TUV_ALBNEW : surface albedo -!! XCH_TUV_TUPDATE : update frequency for TUV -!! LCH_TUV_ONLINE : switch between online/lookup table -!! CCH_TUV_LOOKUP : name of lookup table file -!! CCH_TUV_CLOUDS : method for the impact of clouds on radiation -!! 18/02/99 LCH_SURFACE0D : apply surface emission / deposition fluxes -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -! -IMPLICIT NONE -SAVE -! -!* 0.1 integration and I/O timing control -! -REAL :: XTBEGIN = 0.0 ! begin the simulation in seconds -REAL :: XTEND = 0.0 ! end the simulation in seconds -REAL :: XDTOUT = 900. ! timestep for printout of intermediate results -REAL :: XDTDIAG = 3600. ! timestep for calculation of diagnostics -! -REAL :: XTSIMUL ! time of simulation -REAL :: XDTACT = 40. ! timestep of the simulation -REAL :: XTNEXTOUT ! time of next result output -REAL :: XTNEXTDIAG ! time of next diagnosis -REAL :: XTNEXTMETEO ! time of next meteo update -! -!* 0.2 file names, formats and I/O channels -! -CHARACTER*128 :: CINITFILE = "CHCONTROL1.nam" ! name of initial value file -CHARACTER*128 :: CMETEOFILE = "CHCONTROL1.nam" ! meteo update file -! -CHARACTER*128 :: COUTFILE = "BOX.OUT" ! name of final output file -CHARACTER*128 :: CRESULTFILE = "BOX.RESULT" ! regular output file -CHARACTER*128 :: CDIAGFILE = "BOX.DIAG" ! diagnostics output file -! -CHARACTER*80 :: CRUNID = "no runid specified" ! runid for output file -CHARACTER*40 :: CRESULTFORMAT = "(5E16.8)" ! Format for results -CHARACTER*40 :: CDIAGFORMAT = "(5E16.8)" ! Format for diagnostics -! -INTEGER :: NFILEIO = 42 ! channel to be used for all intermediate file I/O -INTEGER :: NMETEOIO = 43 ! channel to be used for all meteo I/O -INTEGER :: NRESULTIO = 44 ! channel to be used for all regular result file I/O -INTEGER :: NDIAGIO = 45 ! channel to be used for all diagnostics file I/O -! -!* 0.3 verbosity level -! -INTEGER :: NVERB = 5 ! verbosity level: 0 (lowest) <= NVERB <= 10 (highest) -! -!* 0.4 parameters for TUV -! -LOGICAL :: LCH_TUV_ONLINE = .TRUE. ! switch online/lookup table -CHARACTER*80 :: CCH_TUV_LOOKUP = "PHOTO.TUV39" ! name of lookup table file -CHARACTER*4 :: CCH_TUV_CLOUDS = "NONE" ! method for calculating the - ! impact of clouds on radiation - ! "FOUQ" (model clouds, only 1-D) - ! "RADM" (parameterized, for 3-D) -REAL :: XCH_TUV_ALBNEW = -1. ! surface albedo (if negative the albedo - ! will be read from DATAX/albedo.dat) -REAL :: XCH_TUV_DOBNEW = -1. ! scaling factor for ozone column dobson - ! (if negative, no scaling will be performed, - ! note: the O3 profile will be read from - ! DATAX/O3.profile, if this file is empty, the - ! US standard O3 profile will be used) -REAL :: XCH_TUV_TUPDATE = 600. ! update frequency for TUV (in seconds) -! -LOGICAL :: LCH_SURFACE0D = .FALSE. ! switch to activate surface fluxes -! -CHARACTER(LEN=80) :: CCHEM_INPUT_FILE -END MODULE MODD_CH_MODEL0D diff --git a/src/arome/chem/module/modd_ch_solver_n.F90 b/src/arome/chem/module/modd_ch_solver_n.F90 deleted file mode 100644 index 5c9c44e8fa7a98d2a1c289880345c4632619d3af..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_ch_solver_n.F90 +++ /dev/null @@ -1,165 +0,0 @@ -! ######spl - MODULE MODD_CH_SOLVER_n - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################### -!! -!!*** *MODD_CH_SOLVER$n* -!! -!! PURPOSE -!! ------- -! contains parameters for the stiff solvers -!! -!!** AUTHOR -!! ------ -!! K. Suhre *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/03/95 -!! 27/07/96 (K. Suhre) restructured -!! 01/08/01 (C. Mari) change routine to $n -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! none -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ---------------- -USE MODD_PARAMETERS, ONLY: JPMODELMAX -IMPLICIT NONE - -TYPE CH_SOLVER_t -! -!* 0.1 choice of the stiff solver -! - CHARACTER*32 :: CSOLVER = 'EXQSSA' ! name of the solver to be used -! -!* 0.2 parameters for LinSSA solver -! - INTEGER :: NSSA = 0 ! number of variables to be treated - ! as "steady state" -!JUAN - INTEGER, DIMENSION(:), POINTER :: NSSAINDEX => NULL() ! index set of steady state variables -!JUAN -! -!* 0.3 tolerances (used by NAG and SVODE solvers) -! - REAL :: XRTOL = 0.001 ! relative tolerance for SVODE - ! and D02EAF,D02EBF,D02NBF - ! - REAL :: XATOL = 0.1 ! absolute tolerance for SVODE - ! and D02NBF -! -!* 0.4 parameters for NAG's D02EBF solver -! - INTEGER :: NRELAB = 2 ! choose relative error: - ! 1 for correct decimal places - ! 2 for correct significant digits - ! 0 for a mixture -! -!* 0.5 parameters for SVODE and NAG's D02EBF/D02NBF solvers -! - INTEGER :: NPED = 1 ! calculation of the Jacobian matric: - ! 0 for numerical Jacobian - ! 1 for analytical Jacobian (using subroutine CH_JAC) -! -!* 0.6 parameters for NAG's D02NBF solver -! - INTEGER :: NMAXORD = 5 ! maximum order for the BDF method (0<NMAXORD<=5) - LOGICAL :: LPETZLD = .TRUE. ! perform Petzold local error test (recommended) - CHARACTER*1 :: CMETHOD = "N" ! method to use non-linear system - ! N or D for modified Newton iteration - ! F for functional iteration - CHARACTER*1 :: CNORM = "A" ! type of norm to be used - ! A or D for averaged L2 norm - ! M for maximum norm - INTEGER :: NTRACE = 0 ! level of output from D02NBF - ! -1 (no output) <= NTRACE <= 3 (maximum) - ! 0 only warnings are printed - ! >0 details on Jacobian entries, nonlinear - ! iteration and time integration are given -! -!* 0.7 parameters for CRANCK solver -! - REAL :: XALPHA = 0.5 ! the Cranck-Nicholson parameter (0,1) -! -!* 0.8 parameters for (EX)QSSA solvers -! - REAL :: XSLOW = 100.0 ! slow species, lifetime > XSLOW * timestep - REAL :: XFAST = 0.1 ! fast species, lifetime < XFAST * timestep - INTEGER :: NQSSAITER = 1 ! number of iterations in QSSA - REAL :: XDTMIN = 0.1 ! minimal allowed timestep for EXQSSA - REAL :: XDTMAX = 10. ! maximal allowed timestep for EXQSSA - REAL :: XDTFIRST = 10. ! timestep for first integration step of EXQSSA -! -END TYPE CH_SOLVER_t - -TYPE(CH_SOLVER_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: CH_SOLVER_MODEL -!JUAN -LOGICAL , DIMENSION(JPMODELMAX), SAVE :: CH_SOLVER_FIRST_CALL = .TRUE. -!JUAN - -CHARACTER*32, POINTER :: CSOLVER=>NULL() -INTEGER, POINTER :: NSSA=>NULL() -INTEGER, DIMENSION(:), POINTER :: NSSAINDEX=>NULL() -REAL, POINTER :: XRTOL=>NULL() -REAL, POINTER :: XATOL=>NULL() -INTEGER, POINTER :: NRELAB=>NULL() -INTEGER, POINTER :: NPED=>NULL() -INTEGER, POINTER :: NMAXORD=>NULL() -LOGICAL, POINTER :: LPETZLD=>NULL() -CHARACTER*1, POINTER :: CMETHOD=>NULL() -CHARACTER*1, POINTER :: CNORM=>NULL() -INTEGER, POINTER :: NTRACE=>NULL() -REAL, POINTER :: XALPHA=>NULL() -REAL, POINTER :: XSLOW=>NULL() -REAL, POINTER :: XFAST=>NULL() -INTEGER, POINTER :: NQSSAITER=>NULL() -REAL, POINTER :: XDTMIN=>NULL() -REAL, POINTER :: XDTMAX=>NULL() -REAL, POINTER :: XDTFIRST=>NULL() - -CONTAINS - -SUBROUTINE CH_SOLVER_GOTO_MODEL(KFROM, KTO) -INTEGER, INTENT(IN) :: KFROM, KTO -! -!JUAN -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODD_CH_SOLVER_N:CH_SOLVER_GOTO_MODEL',0,ZHOOK_HANDLE) -IF (CH_SOLVER_FIRST_CALL(KTO)) THEN -ALLOCATE (CH_SOLVER_MODEL(KTO)%NSSAINDEX(1000)) -CH_SOLVER_FIRST_CALL(KTO) = .FALSE. -ENDIF -!JUAN - -! Save current state for allocated arrays -! -! Current model is set to model KTO -CSOLVER=>CH_SOLVER_MODEL(KTO)%CSOLVER -NSSA=>CH_SOLVER_MODEL(KTO)%NSSA -NSSAINDEX=>CH_SOLVER_MODEL(KTO)%NSSAINDEX -XRTOL=>CH_SOLVER_MODEL(KTO)%XRTOL -XATOL=>CH_SOLVER_MODEL(KTO)%XATOL -NRELAB=>CH_SOLVER_MODEL(KTO)%NRELAB -NPED=>CH_SOLVER_MODEL(KTO)%NPED -NMAXORD=>CH_SOLVER_MODEL(KTO)%NMAXORD -LPETZLD=>CH_SOLVER_MODEL(KTO)%LPETZLD -CMETHOD=>CH_SOLVER_MODEL(KTO)%CMETHOD -CNORM=>CH_SOLVER_MODEL(KTO)%CNORM -NTRACE=>CH_SOLVER_MODEL(KTO)%NTRACE -XALPHA=>CH_SOLVER_MODEL(KTO)%XALPHA -XSLOW=>CH_SOLVER_MODEL(KTO)%XSLOW -XFAST=>CH_SOLVER_MODEL(KTO)%XFAST -NQSSAITER=>CH_SOLVER_MODEL(KTO)%NQSSAITER -XDTMIN=>CH_SOLVER_MODEL(KTO)%XDTMIN -XDTMAX=>CH_SOLVER_MODEL(KTO)%XDTMAX -XDTFIRST=>CH_SOLVER_MODEL(KTO)%XDTFIRST - -IF (LHOOK) CALL DR_HOOK('MODD_CH_SOLVER_N:CH_SOLVER_GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE CH_SOLVER_GOTO_MODEL - -END MODULE MODD_CH_SOLVER_n diff --git a/src/arome/chem/module/modd_csts_dust.F90 b/src/arome/chem/module/modd_csts_dust.F90 deleted file mode 100644 index 90d4187f874383100a7deb1b05718ee494b7dfae..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_csts_dust.F90 +++ /dev/null @@ -1,54 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source$ $Revision$ $Date$ -!----------------------------------------------------------------- -! ###################### - MODULE MODD_CSTS_DUST -! ###################### -!! -!! PURPOSE -!! ------- -!! -!! Declaration of dust constants -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! P.Tulet (GMEI) -!! -!! -!! MODIFICATIONS -!! ------------- -!! -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -! -USE MODD_CST, ONLY : & - XPI & !Definition of pi - ,XBOLTZ & ! Boltzman constant - ,XAVOGADRO & ![molec/mol] avogadros number - ,XG & ! Gravity constant - ,XP00 & ! Reference pressure - ,XMD & ![kg/mol] molar weight of air - ,XRD & ! Gaz constant for dry air - ,XCPD ! Cpd (dry air) -! -IMPLICIT NONE -! -REAL, PARAMETER :: XDENSITY_DUST = 2.5e3 ![kg/m3] density of dust -REAL, PARAMETER :: XMOLARWEIGHT_DUST = 100.e-3 ![kg/mol] molar weight dust -REAL, PARAMETER :: XM3TOUM3 = 1.d18 ![um3/m3] conversion factor -REAL, PARAMETER :: XUM3TOM3 = 1.d-18 ![m3/um3] conversion factor -REAL, PARAMETER :: XSIXTH = 1./6. ![-] one sixth -! -END MODULE MODD_CSTS_DUST diff --git a/src/arome/chem/module/modd_csts_salt.F90 b/src/arome/chem/module/modd_csts_salt.F90 deleted file mode 100644 index 56c62ed3ce8fd4bb0946e6acd3c822495666caf8..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_csts_salt.F90 +++ /dev/null @@ -1,50 +0,0 @@ -! ######spl - MODULE MODD_CSTS_SALT -! ###################### -!! -!! PURPOSE -!! ------- -!! -!! Declaration of dust constants -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! P.Tulet (GMEI) -!! -!! -!! MODIFICATIONS -!! ------------- -!! -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -! -USE MODD_CST, ONLY : & - XPI & !Definition of pi - ,XBOLTZ & ! Boltzman constant - ,XAVOGADRO & ![molec/mol] avogadros number - ,XG & ! Gravity constant - ,XP00 & ! Reference pressure - ,XMD & ![kg/mol] molar weight of air - ,XRD & ! Gaz constant for dry air - ,XCPD ! Cpd (dry air) -! -IMPLICIT NONE -! -!densité salt a introduire -REAL, PARAMETER :: XDENSITY_SALT = 2.1e3 ![kg/m3] density of dust -REAL, PARAMETER :: XMOLARWEIGHT_SALT = 58.e-3 ![kg/mol] molar weight dust -REAL, PARAMETER :: XM3TOUM3_SALT = 1.d18 ![um3/m3] conversion factor -REAL, PARAMETER :: XUM3TOM3_SALT = 1.d-18 ![m3/um3] conversion factor -REAL, PARAMETER :: XSIXTH_SALT = 1./6. ![-] one sixth -! -END MODULE MODD_CSTS_SALT diff --git a/src/arome/chem/module/modd_dust.F90 b/src/arome/chem/module/modd_dust.F90 deleted file mode 100644 index 7aabcfc7adaa47a398a08f295829cfa4b0724ba5..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_dust.F90 +++ /dev/null @@ -1,106 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /sxturb1/data1/mesonh/CODEMNH/modd_dust.f90,v $ $Revision: 1.1 $ -! MASDEV4_7 modd 2007/02/22 10:05:39 -!----------------------------------------------------------------- -!! ###################### - MODULE MODD_DUST -!! ###################### -!! -!! PURPOSE -!! ------- -!! -!! declaration of variables and types for the dust scheme -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! Pierre Tulet (CNRM) -!! -!! -!! MODIFICATIONS -!! ------------- -!! -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -USE MODD_PARAMETERS, ONLY: JPMODELMAX -! -IMPLICIT NONE -! -LOGICAL :: LDUST = .FALSE. ! switch to active pronostic dusts -LOGICAL :: LDSTINIT = .FALSE. ! switch to initialize pronostic dusts -LOGICAL :: LDSTPRES = .FALSE. ! switch to know if pronostic dusts exist -LOGICAL :: LRADEXP = .FALSE. ! switch to couple pronostic dusts with radiation - ! in the analysis file -LOGICAL,DIMENSION(JPMODELMAX) :: LDEPOS_DST = .FALSE. ! switch to DST wet depositon -INTEGER :: NMODE_DST= 3 ! number of dust modes (max 3; default = 3) -! -CHARACTER(LEN=6),DIMENSION(:),ALLOCATABLE :: CDUSTNAMES - -CHARACTER(LEN=6),DIMENSION(9), PARAMETER :: YPDUST_INI = & - (/'DSTM01','DSTM31','DSTM61' & - ,'DSTM02','DSTM32','DSTM62' & - ,'DSTM03','DSTM33','DSTM63' /) -! Set the order of the loops sorted by importance -!This means that if a user choses 1 mode it will have characteristics of mode 2 -!2 modes will be mode 2 & 3, whereas 3 modes will modes 1, 2 and 3 -INTEGER, DIMENSION(3),PARAMETER :: JPDUSTORDER = (/3, 2, 1/) -REAL :: XRADMIN = 0.001 ! minimum reasonable value for median radius -! -REAL, ALLOCATABLE :: XDSTMSS(:,:,:) ! [kg/m3] total mass concentration of dust -! -! aerosol lognormal parameterization -CHARACTER(LEN=4) :: CRGUNITD = 'NUMB' ! type of log-normal geometric mean radius -! !given in namelist (mass on number) -! -LOGICAL :: LRGFIX_DST = .FALSE. ! switch to fix RG (sedimentation) -LOGICAL :: LVARSIG = .FALSE. ! switch to active pronostic dispersion for all modes -LOGICAL :: LSEDIMDUST = .FALSE. ! switch to active aerosol sedimentation -REAL :: XSIGMIN = 1.20 ! minimum dispersion value for dust mode -REAL :: XSIGMAX = 3.60 ! maximum dispersion value for dust mode -REAL :: XCOEFRADMAX = 10. ! maximum increasement for Rg mode dust -REAL :: XCOEFRADMIN = 0.1 ! maximum decreasement for Rg mode dust -! -! Alf considers it is better to use initial values as Schultz et al 1998 -! whereas Pierre consider to keep as close as possible initialization -! values close to default emissions; so as you want !!! -!Initial dry mass median radius (um) from Schultz et al 1998 -!REAL, DIMENSION(3) :: XINIRADIUS= (/ 0.0055, 1.26, 21.65 /) -!Initial, standard deviation from Schultz et al 1998 -!REAL, DIMENSION(3) :: XINISIG = (/2.13, 2.00, 1.89 /) -!Initial dry mass median radius (um) from D'Almeida, 1987 emission fluxes -!REAL, DIMENSION(3) :: XINIRADIUS= 0.5*(/ 0.832 , 4.82 , 19.38 /) -!Initial, standard deviation from from D'Almeida, 1987 emission fluxes -!REAL, DIMENSION(3) :: XINISIG = (/2.10 , 1.90 , 1.60 /) -!Minimum allowed number concentration for any mode (#/m3) -!REAL, DIMENSION(3) :: XN0MIN = (/1.e4 , 1.e3 , 1.e-1 /) -!Initial dry mass median radius (um) from Alfaro et al 1998 -!REAL, DIMENSION(3) :: XINIRADIUS= 0.5*(/1.5, 6.7, 14.2/) -!Initial, standard deviation from Alfaro et al 1998 -!REAL, DIMENSION(3) :: XINISIG = (/1.70, 1.60, 1.50/) -!Minimum allowed number concentration for any mode (#/m3) -!REAL, DIMENSION(3) :: XN0MIN = (/1.e2 , 1.e1 , 1.e-2 /) -! -! NEW PARAMETERIZATION FROM AMMA, default -!Initial dry number median radius (um) -REAL, DIMENSION(3) :: XINIRADIUS= 0.5*(/0.088, 0.643, 3.75 /) -!Initial, standard deviation from Alfaro et al 1998 -REAL, DIMENSION(3) :: XINISIG = (/2.0, 1.78, 1.85/) -!Minimum allowed number concentration for any mode (#/m3) -REAL, DIMENSION(3) :: XN0MIN = (/1.e3 , 1.e1 , 1.e-2 /) -CHARACTER(LEN=9),DIMENSION(:),ALLOCATABLE :: CDEDSTNAMES -CHARACTER(LEN=9),DIMENSION(6), PARAMETER :: YPDEDST_INI = & - (/'DEDSTM31C','DEDSTM32C','DEDSTM33C' & - ,'DEDSTM31R','DEDSTM32R','DEDSTM33R' /) -! -END MODULE MODD_DUST diff --git a/src/arome/chem/module/modd_dust_opt_lkt.F90 b/src/arome/chem/module/modd_dust_opt_lkt.F90 deleted file mode 100644 index 0445d891113c963d88d11407a21bf7b093ede9bb..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_dust_opt_lkt.F90 +++ /dev/null @@ -1,58 +0,0 @@ -! ######spl - MODULE MODD_DUST_OPT_LKT -!! ######################## -!! -!! PURPOSE -!! ------- -!! -!! Purpose: Contains look up tables for dust optical properties -!! The parameters to be looked up are: -!! 1) Single scattering albedo (fraction scattered) -!! 2) Assymetry factor (=1 for all scattered forward, =-1 for all scattered backwards) -!! 3) extinction coefficient (m2/g) = surface seen by radiation per gram of dust -!! -!! All values are pre-calculated from the SHDOM mie code compiled with pgf90 fortran compiler -!! and run on on a linux pc (SHDOM home page==>http://nit.colorado.edu/~evans/shdom.html) -!! -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! Pierre Tulet (CNRM) -!! -!! -!! MODIFICATIONS -!! ------------- -!! -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ - - IMPLICIT NONE - PUBLIC - - INTEGER, PARAMETER :: NMAX_RADIUS_LKT=100 !Max number of radii in look up tables - INTEGER, PARAMETER :: NMAX_SIGMA_LKT=20 !Max number of dispersion coeffient in lkt - INTEGER, PARAMETER :: NMAX_WVL_SW=6 !Max number of wavelengths in lkt - - !Declaration of the look up tables - REAL, DIMENSION(NMAX_RADIUS_LKT,NMAX_SIGMA_LKT,NMAX_WVL_SW) :: XEXT_COEFF_WVL_LKT - REAL, DIMENSION(NMAX_RADIUS_LKT,NMAX_SIGMA_LKT) :: XEXT_COEFF_550_LKT - REAL, DIMENSION(NMAX_RADIUS_LKT,NMAX_SIGMA_LKT,NMAX_WVL_SW) :: XPIZA_LKT - REAL, DIMENSION(NMAX_RADIUS_LKT,NMAX_SIGMA_LKT,NMAX_WVL_SW) :: XCGA_LKT - - !Declaration of the max and min values taken into account in the tables - REAL, PARAMETER :: XRADIUS_LKT_MIN = 0.01 ![um] smallest number median radius taken into account - REAL, PARAMETER :: XRADIUS_LKT_MAX = 30.0 ![um] largest number median radius taken into account - REAL, PARAMETER :: XSIGMA_LKT_MIN = 1.0 ![-] smallest dispersion coefficient taken into account - REAL, PARAMETER :: XSIGMA_LKT_MAX = 3.0 ![-] largest dispersion coefficient taken into account - -END MODULE MODD_DUST_OPT_LKT diff --git a/src/arome/chem/module/modd_glo.F90 b/src/arome/chem/module/modd_glo.F90 deleted file mode 100644 index 4e35f2c8f392247479f64ac4473c0d37a6a7277b..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_glo.F90 +++ /dev/null @@ -1,176 +0,0 @@ -! ######spl -MODULE MODD_GLO - -IMPLICIT NONE - -!********************************************** -!PARAMETERS USED IN BOTH PUN AND GRIFFIN'S CODES -!*********************************************** - -! flag to use binary solution and zsr if = 1 */ -! zsrflag = 0 calls unifac and solves implicit -! equation for a.c. water = RH using newt1 */ -INTEGER, PARAMETER :: zsrflag = 1 - -! saturationflag = 1 means to -! use saturation to determine particulate-phase -! concentration when inorganic particle is dry. -! If = 0, use absorption */ -INTEGER, PARAMETER :: saturationflag = 0 - -! Criterion for setting intital particle -! conc, compared to VP in torr or VP -! rated by PAOM */ -REAL, PARAMETER :: VPCrit = 1.d-7 - -!Critical value for LWC above which much aerosol can dissolve -REAL, PARAMETER :: LWCCRIT = 2.0d0 ![ug/m3] - -!Critical value for Henry's law constant above which much aerosol will dissolve -REAL, PARAMETER :: HLCRIT = 1.d-2 - -REAL, PARAMETER :: TINY = 1.d-8 - -!Set the universal gas constant in non SI units -REAL, PARAMETER :: R_UNIV = 8.206e-5 !gas constant in units of (m3*atm)/(mol*K) - -!Molecular weight of water -REAL, PARAMETER :: MW_WATER = 18.0 ![g/mol] molar weight of water - -!Are we running box model? -LOGICAL :: LBOX=.FALSE. - -!Do we want a lot of prints -LOGICAL :: LPRINT=.FALSE. -!************************************************************ -!******END PARAMETERS USED IN BOTH CODES -!************************************************************ - -!************************************************************* -!*******PARAMETERS USED IN GRIFFIN'S CODE -!************************************************************ -INTEGER, PARAMETER :: NBSPOA = 8 !Number of POA species -INTEGER, PARAMETER :: NBSP = 10 !Number of main SOA species -INTEGER, PARAMETER :: NAAERO= 17 !Number of SOA species and their ions - -!Molar weight of all parameters including ions -REAL, PARAMETER, DIMENSION(NAAERO) :: MW_SOA = (/ & - 211.0, 210.0 & !Comp #1 (NK=2) - ,178.0, 177.0 & !Comp #2 (NK=2) - ,217.0 & !Comp #3 (NK=1) - ,303.0 & !Comp #4 (NK=1) - ,217.0 & !Comp #5 (NK=1) - ,90.0, 89.0, 88.0 & !Comp #6 (NK=3) - ,184.0, 183.0, 182.0 &!Comp #7 (NK=3) - ,154.0 &!Comp #8 (NK=1) - ,186.0, 185.0 &!Comp #9 (NK=2) - ,186.0 & !Comp #10 (NK=1) - /) - -!Molecular weight of primary organic paerosols -REAL, PARAMETER, DIMENSION(NBSPOA) :: MW_POA = (/ 408., 118., 216., 276., 412., 166., 284., 390. /) - -!Parameter needed to get the saturation vapor pressures of organics -!The below is cut and pasted from aerodriv.f recieved from Griffin -REAL, PARAMETER, DIMENSION(NBSP) :: HBN = (/6.7e-03,5.61e-03,0.0,3.3e-03,4.61e-03, & - 1.57e-02,7.68e-03,6.49e-03,7.6e-03,5.37e-03/) - -REAL, PARAMETER, DIMENSION(NBSP) :: TAUVP=(/3.5,2.5,6.0,13.5,1.0,0.0,2.5,2.0,3.0,5.0/) - -REAL, PARAMETER, DIMENSION(NBSP) :: TBOIL = (/685.3,634.0,645.5,672.5,566.3,560.0,698.0 & - ,575.0,679.0,615.0 /) - -!partition parameters H and K -!H is in units of m3/ug estimated based on Suzuki et al., 1992 -!K is in units of [mol/kg water] (same as {H+}) with -!concentrations of molecules in ions in the same molar units -REAL, PARAMETER, DIMENSION(NAAERO) :: K_298 = (/ & - 1.82e-2, 1.7e-3 & !Comp 1 - , 1.202e-4, 7.33e-5 & !Comp 2 - , 1.38e-6 & !Comp 3 - , 2.455e-7 & !Comp 4 - , 2.884e-5 & !Comp 5 - , 2.512e-2, 5.4e-2, 5.2e-5 & !Comp 6, - , 22.01, 3.7e-5, 3.9e-6 & !Comp 7 - , 1.47e-4 & !Comp 8 - , 0.0489, 6.52e-4 & !Comp 9 - , 9.55e-4 & !Comp 10 - /) - -!Total number of (main+sub-components (ions)) per main components -!NK=3 means main component can dissociate twice (acid=H2A) -!NK=2 means main component can dissociate once (acid=HA) -!NK=1 means main component can not dissociate to ions -INTEGER, PARAMETER, DIMENSION(NBSP) :: NKAQ=(/ 2, 2, 1, 1, 1, 3, 3, 1, 2, 1 /) -!********************************************** -!END PARAMETERS USED ONLY IN GRIFFINS CODE -!********************************************** - -!XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX - -!***************************************** -!PARAMETERS USED ONLY IN PUN'S CODE -!***************************************** -INTEGER, PARAMETER :: NBSPA=6 !number of molecular species in group A -INTEGER, PARAMETER :: NAAEROA=13 !possible no. of particle phase solutes */ -INTEGER, PARAMETER ::NBSPB=5 !number of species in group A -INTEGER, PARAMETER ::NBSPAO_PUN=5 !number of species in Primary organics - -!*****************TYPE B PARAMETERS ************************************* - -!Saturation vapor pressure of type B species (torr) -REAL, DIMENSION(NBSPB) :: VPB = (/ 3.e-10, 3.e-6, 7.e-6, 5.e-8, 3.e-8 /) - -!Set molecular weight of Primary aerosol organic matter -REAL, PARAMETER :: MWAOM = 280.0 ![g/mol] - -!Set molecular weight of the secondary organic components -REAL, PARAMETER, DIMENSION(NBSPB) :: MWB=(/197.0, 164.0, 181.0, 301.0, 170.0 /) - -!Assumed molar fraction of the primary organics -REAL, PARAMETER, DIMENSION(NBSPB) :: XAOM=(/0.4, 0.05, 0.15, 0.12, 0.28 /) -!****************END TYPE B PARAMETERS************************************** - -!***************TYPE A PARAMETERS ****************************************** - -!Molar weight of TYPE A species including ions -REAL, PARAMETER, DIMENSION(NAAEROA) :: MWA = (/ & - 104.0, 103.0, 102.0 & - ,184.0, 183.0, 182.0 & - ,154.0 & - ,186.0, 185.0 & - ,186.0 & - ,118.0, 117.0, 116.0 & - /) - -!partition parameters H and K -!H is in units of (m3/ug) estimated based on Suzuki et al., 1992 -!K is in units of [mol/kg water] (same as {H+}) with -!concentrations of molecules in ions in the same mass-based units -!K's of malic acid and glyoxalic acid used respectively for -!compounds that dissociate twice and once -REAL, PARAMETER, DIMENSION(NAAEROA) :: K_A_298 = (/ & - 3.87e-5, 3.95e-4, 7.70e-6 & - , 22.01, 3.95e-4, 7.70e-6 & - , 1.47e-4 & - , 0.0489, 6.52e-4 & - , 0.0196 & - , 7.34e-3, 3.95e-4, 7.70e-6 & - /) - -!Saturation vapor pressure in units of ug/m3 -REAL, PARAMETER, DIMENSION(NBSPA) :: VPA_298=(/ 462.22, 0.0127, 1.86e5, 1.11, 71.62, 50.16 /) - -!Same as VP, but this time, unit is torr -REAL, PARAMETER, DIMENSION(NBSPA) :: VPAtorr_298=(/ 8.26e-5, 1.28e-9, 2.24e-2, 1.1e-7, 7.16e-6, 7.9e-6 /) - -!Total number of (main+sub-components (ions)) per main components -!NK=2 means main component can dissociate once -!NK=1 means main component can not dissociate -INTEGER, PARAMETER, DIMENSION(NBSPA) :: NKA=(/ 3, 3, 1, 2, 1, 3 /) - -!Value to determine if component soluble or not -REAL, PARAMETER :: CRITSOL=100.d0 ![ug_{aer}/ug_{gas} * kg_{water}/umol_{H+}] -!********************END OF TYPE A PARAMETERS **************************************************** - -END MODULE MODD_GLO diff --git a/src/arome/chem/module/modd_indref_aer.F90 b/src/arome/chem/module/modd_indref_aer.F90 deleted file mode 100644 index 16a1ed986ba35d5a3f61e85b08e2efaebf682a4c..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_indref_aer.F90 +++ /dev/null @@ -1,59 +0,0 @@ -! ######spl - MODULE MODD_INDREF_AER -! ######################## -! -!!**** *MODD_INDREF_AER* - declaration of indices of refraction for the -! different aerosol types -!! -!! PURPOSE -!! ------- -!! 1D Arrays to store the real and the imaginary parts of the indices -! of refraction for each of the 6 SW bands for every type of aerosol -! that can enter into the cloud droplet composition -!! -!------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!------------------------------ -IMPLICIT NONE -! -! the wavelenghts corresponding to the 6 SW bands -!lambda = 0.217, 0.345, 0.565, 0.94, 1.78, 3.19 micron -! -REAL, DIMENSION(6):: XLAMBDA=(/0.217,0.345,0.565,0.94,1.78,3.19/) -! -!real and imaginary parts of the refractive indice of water(Hale and Querry -!1973)for the 6 SW bands: -REAL,DIMENSION(6)::XN_W=(/1.382, 1.3436, 1.333, 1.3274,& - 1.3125, 1.479/) -REAL,DIMENSION(6)::XK_W=(/7.E-08, 7.3E-09, 2.944E-09, 2.182E-06,& - 1.1205E-04, 0.10092/) -! -!!real and imaginary parts of the refractive indice for the 6 SW bands for -!differents types of aerosols inclusions into the droplet: -! first indice for the SW band, second for the aerosol type -!aer=1: dust like (d'almeida,1992, table 4.3) -!aer=2: waso = water soluble (d'almeida,1992, table 4.3) -!aer=3: soot (d'almeida,1992, table 4.3) -!aer=4: sesa = sea salt (OPAC) -!aer=5: sulf = sulfates (d'almeida,1992, table 4.3) -! -! -REAL,DIMENSION(6)::XN_DUST=(/1.53, 1.53, 1.53, 1.52, 1.340, 1.22/) -REAL,DIMENSION(6)::XK_DUST=(/8.E-03, 8.E-03, 8.E-03, 8.E-03, 8.E-03, 1.E-02/) -! -REAL,DIMENSION(6)::XN_WATSOL=(/1.53, 1.53, 1.53, 1.52, 1.42, 1.43/) -REAL,DIMENSION(6)::XK_WATSOL=(/8.E-03, 5.E-03, 6.E-03, 1.31E-02, 2.5E-02, 8.E-03/) -! -REAL,DIMENSION(6)::XN_SOOT=(/1.62, 1.75, 1.75, 1.754, 1.8, 1.859/) -REAL,DIMENSION(6)::XK_SOOT=(/0.45, 0.465, 0.44, 0.4354, 0.481 , 0.54 /) -! -REAL,DIMENSION(6)::XN_SEASALT=(/1.51, 1.51, 1.5, 1.475, 1.45, 1.49/) -REAL,DIMENSION(6)::XK_SEASALT=(/5.E-06, 3.24E-07, 1.E-08, 9.E-05, 7.62E-04, 3.E-03/) -! -REAL,DIMENSION(6)::XN_SULFATES=(/1.484, 1.452, 1.43, 1.4235, 1.394, 1.311/) -REAL,DIMENSION(6)::XK_SULFATES=(/1.E-08, 1.E-08, 1.15E-08, 7.08E-07, 6.35E-04, 1.35E-01/) -! -END MODULE MODD_INDREF_AER diff --git a/src/arome/chem/module/modd_parameters_dep.F90 b/src/arome/chem/module/modd_parameters_dep.F90 deleted file mode 100644 index f6cbd19e3a91503bd0a7c053e411c4d65820ffc2..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_parameters_dep.F90 +++ /dev/null @@ -1,61 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source$ $Revision$ $Date$ -!----------------------------------------------------------------- -! ########################### - MODULE MODD_PARAMETERS_DEP -! ########################### -! -!!**** *MODD_PARAMETERS_DEP* - declaration of parameter variables -!! -!! PURPOSE -!! ------- -! The purpose of this declarative module is to specify the variables -! which have the PARAMETER attribute -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!! REFERENCE -!! --------- -!! Book2 of documentation of Meso-NH (module MODD_PARAMETER) -!! -!! AUTHOR -!! ------ -!! V. Ducrocq *Meteo France* -!! -!! MODIFICATIONS -!! ------------- -!! Original 4/07/94 -!! 01-02-2011 M. Mokhtari Adaptation modd_parameter under modd_parameters_dep for Aladin -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -INTEGER, PARAMETER :: JPHEXT = 0 ! Horizontal External points number -INTEGER, PARAMETER :: JPVEXT = 1 ! Vertical External points number -INTEGER, PARAMETER :: JPMODELMAX = 8 ! Maximum allowed number of nested models -INTEGER, PARAMETER :: JPCPLFILEMAX = 8 ! Maximum allowed number of CouPLing FILEs -INTEGER, PARAMETER :: JPBUMAX= 250 ! Maximum of allowed budgets -INTEGER, PARAMETER :: JPBUPROMAX = 40 ! Maximum of allowed processes for all - ! budgets -INTEGER, PARAMETER :: JPRIMMAX = 6 ! Maximum number of points for the - ! horizontal relaxation for the outermost verticals -INTEGER, PARAMETER :: JPSVMAX = 200 ! Maximum number of scalar variables - - -REAL, PARAMETER :: XUNDEF = 1.E+20 ! default value for undefined or unused - ! field. -INTEGER, PARAMETER :: NUNDEF = 1E+9 ! default value for undefined or unused - ! field. -INTEGER, PARAMETER :: JPDUMMY = 20 ! Size of dummy array - -INTEGER, PARAMETER :: JPOUTMAX = 48 ! Maximum allowed number of OUTput files - -END MODULE MODD_PARAMETERS_DEP diff --git a/src/arome/chem/module/modd_salt.F90 b/src/arome/chem/module/modd_salt.F90 deleted file mode 100644 index 15a77109583cdc1e9c2794f191c140bbb43568c1..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_salt.F90 +++ /dev/null @@ -1,84 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source: /sxturb1/data1/mesonh/CODEMNH/modd_salt.f90,v $ $Revision: 1.1 $ -! MASDEV4_7 modd 2007/01/12 14:42:16 -!----------------------------------------------------------------- -!! ###################### - MODULE MODD_SALT -!! ###################### -!! -!! PURPOSE -!! ------- -!! -!! declaration of variables and types for the sea salt scheme -!! -!! METHOD -!! ------ -!! -!! -!! REFERENCE -!! --------- -!! none -!! -!! -!! AUTHOR -!! ------ -!! Pierre Tulet (CNRM) -!! -!! -!! MODIFICATIONS -!! ------------- -!! -USE MODD_PARAMETERS, ONLY: JPMODELMAX -!!-------------------------------------------------------------------- -!! DECLARATIONS -!! ------------ -IMPLICIT NONE -! -LOGICAL :: LSALT = .FALSE. ! switch to active pronostic sea salts -LOGICAL :: LSLTINIT = .FALSE. ! switch to initialize pronostic sea salts -LOGICAL,DIMENSION(JPMODELMAX) :: LDEPOS_SLT = .FALSE. ! switch to SLT wet depositon -INTEGER :: NMODE_SLT= 3 ! number of sea salt modes (max 3; default = 3) -! -CHARACTER(LEN=9),DIMENSION(:),ALLOCATABLE :: CDESLTNAMES -CHARACTER(LEN=9),DIMENSION(6), PARAMETER :: YPDESLT_INI = & - (/'DESLTM31C','DESLTM32C','DESLTM33C' & - ,'DESLTM31R','DESLTM32R','DESLTM33R' /) -CHARACTER(LEN=6),DIMENSION(:),ALLOCATABLE :: CSALTNAMES -CHARACTER(LEN=6),DIMENSION(9), PARAMETER :: YPSALT_INI = & - (/'SLTM01','SLTM31','SLTM61' & - ,'SLTM02','SLTM32','SLTM62' & - ,'SLTM03','SLTM33','SLTM63' /) -! Set the order of the loops sorted by importance -!This means that if a user choses 1 mode it will have characteristics of mode 2 -!2 modes will be mode 2 & 3, whereas 3 modes will modes 1, 2 and 3 -INTEGER, DIMENSION(3),PARAMETER :: JPSALTORDER = (/3, 2, 1/) -! -REAL, ALLOCATABLE :: XSLTMSS(:,:,:) ! [kg/m3] total mass concentration of sea salt -! -! aerosol lognormal parameterization -CHARACTER(LEN=4) :: CRGUNITS = 'MASS' ! type of log-normal geometric mean radius -! !given in namelist (mass on number) -! -LOGICAL :: LRGFIX_SLT = .FALSE. ! switch to fix RG (sedimentation) -LOGICAL :: LVARSIG_SLT = .FALSE. ! switch to active pronostic dispersion for all modes -LOGICAL :: LSEDIMSALT = .FALSE. ! switch to active aerosol sedimentation -REAL :: XSIGMIN_SLT = 1.20 ! minimum dispersion value for sea salt mode -REAL :: XSIGMAX_SLT = 3.60 ! maximum dispersion value for sea salt mode -REAL :: XCOEFRADMAX_SLT = 10. ! maximum increasement for Rg mode sea salt -REAL :: XCOEFRADMIN_SLT = 0.1 ! maximum decreasement for Rg mode sea salt -! - -!Initial dry number median radius (um) from Vignati et al., 2001 -!REAL, DIMENSION(3) :: XINIRADIUS_SLT= (/0.2, 2., 12./) -!Initial, standard deviation from Vignati et al., 2001 -!REAL, DIMENSION(3) :: XINISIG_SLT = (/1.9, 2., 3./) -!Initial dry number median radius (um) from Schultz et al., 2004 -REAL, DIMENSION(3) :: XINIRADIUS_SLT= 0.5*(/0.28, 2.25, 15.28/) -!Initial, standard deviation from Vignati et al., 2001 -REAL, DIMENSION(3) :: XINISIG_SLT = (/1.9, 2., 2./) -!Minimum allowed number concentration for any mode (#/m3) -REAL, DIMENSION(3) :: XN0MIN_SLT = (/1.e4 , 1.e2 , 1.e-1 /) -! -END MODULE MODD_SALT diff --git a/src/arome/chem/module/modd_sub_ch_field_value_n.F90 b/src/arome/chem/module/modd_sub_ch_field_value_n.F90 deleted file mode 100644 index 1742f49b4352bd2d8c51ee8f289c5259e8a5feb9..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_sub_ch_field_value_n.F90 +++ /dev/null @@ -1,71 +0,0 @@ -! ######spl - MODULE MODD_SUB_CH_FIELD_VALUE_n - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ############################ -! -USE MODD_PARAMETERS, ONLY: JPMODELMAX -IMPLICIT NONE - -TYPE SUB_CH_FIELD_VALUE_t -! - LOGICAL :: GSFIRSTCALL = .TRUE.! flag to identify first call - INTEGER :: ISPROF ! # of norm-profiles - INTEGER :: ISLEVEL ! # of levels in norm-profiles - INTEGER :: ISINIT ! # of variable associations - INTEGER :: ISASSO ! # of variable associations - REAL, DIMENSION(:,:), POINTER :: ZSNORMPROF=>NULL() ! norm-profiles - REAL, DIMENSION(:) , POINTER :: ZSZPROF=>NULL() ! z-level for norm-profile - CHARACTER(LEN=40), DIMENSION(:), POINTER :: YSASSONAME=>NULL() ! asso species - INTEGER , DIMENSION(:), POINTER :: ISASSOPROF=>NULL() ! profile index - CHARACTER(LEN=40), DIMENSION(:), POINTER :: YSINITNAME=>NULL() ! init species - REAL , DIMENSION(:), POINTER :: ZSINITVAL=>NULL() ! initial val. - ! in molec./cm3 -END TYPE SUB_CH_FIELD_VALUE_t - -TYPE(SUB_CH_FIELD_VALUE_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: SUB_CH_FIELD_VALUE_MODEL - -LOGICAL, POINTER :: GSFIRSTCALL=>NULL() -INTEGER, POINTER :: ISPROF=>NULL() -INTEGER, POINTER :: ISLEVEL=>NULL() -INTEGER, POINTER :: ISINIT=>NULL() -INTEGER, POINTER :: ISASSO=>NULL() -REAL, DIMENSION(:,:), POINTER :: ZSNORMPROF=>NULL() -REAL, DIMENSION(:) , POINTER :: ZSZPROF=>NULL() -CHARACTER(LEN=40), DIMENSION(:), POINTER :: YSASSONAME=>NULL() -INTEGER , DIMENSION(:), POINTER :: ISASSOPROF=>NULL() -CHARACTER(LEN=40), DIMENSION(:), POINTER :: YSINITNAME=>NULL() -REAL , DIMENSION(:), POINTER :: ZSINITVAL=>NULL() - -CONTAINS - -SUBROUTINE SUB_CH_FIELD_VALUE_GOTO_MODEL(KFROM, KTO) -INTEGER, INTENT(IN) :: KFROM, KTO -! -! Save current state for allocated arrays -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODD_SUB_CH_FIELD_VALUE_N:SUB_CH_FIELD_VALUE_GOTO_MODEL',0,ZHOOK_HANDLE) -SUB_CH_FIELD_VALUE_MODEL(KFROM)%ZSNORMPROF=>ZSNORMPROF -SUB_CH_FIELD_VALUE_MODEL(KFROM)%ZSZPROF=>ZSZPROF -SUB_CH_FIELD_VALUE_MODEL(KFROM)%YSASSONAME=>YSASSONAME -SUB_CH_FIELD_VALUE_MODEL(KFROM)%ISASSOPROF=>ISASSOPROF -SUB_CH_FIELD_VALUE_MODEL(KFROM)%YSINITNAME=>YSINITNAME -SUB_CH_FIELD_VALUE_MODEL(KFROM)%ZSINITVAL=>ZSINITVAL -! -! Current model is set to model KTO -GSFIRSTCALL=>SUB_CH_FIELD_VALUE_MODEL(KTO)%GSFIRSTCALL -ISPROF=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ISPROF -ISLEVEL=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ISLEVEL -ISINIT=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ISINIT -ISASSO=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ISASSO -ZSNORMPROF=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ZSNORMPROF -ZSZPROF=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ZSZPROF -YSASSONAME=>SUB_CH_FIELD_VALUE_MODEL(KTO)%YSASSONAME -ISASSOPROF=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ISASSOPROF -YSINITNAME=>SUB_CH_FIELD_VALUE_MODEL(KTO)%YSINITNAME -ZSINITVAL=>SUB_CH_FIELD_VALUE_MODEL(KTO)%ZSINITVAL - -IF (LHOOK) CALL DR_HOOK('MODD_SUB_CH_FIELD_VALUE_N:SUB_CH_FIELD_VALUE_GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE SUB_CH_FIELD_VALUE_GOTO_MODEL - -END MODULE MODD_SUB_CH_FIELD_VALUE_n diff --git a/src/arome/chem/module/modd_sub_ch_monitor_n.F90 b/src/arome/chem/module/modd_sub_ch_monitor_n.F90 deleted file mode 100644 index ded2fd744fc5d0db64e96ae049b8a071ef571c61..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_sub_ch_monitor_n.F90 +++ /dev/null @@ -1,43 +0,0 @@ -! ######spl - MODULE MODD_SUB_CH_MONITOR_n - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################## -!! -! -USE MODD_PARAMETERS, ONLY: JPMODELMAX -IMPLICIT NONE - -TYPE SUB_CH_MONITOR_t -!! - INTEGER :: ISVECNMASK,ISVECNPT - INTEGER, DIMENSION(:,:), POINTER :: ISVECMASK=>NULL() - INTEGER :: ISTCOUNT = 0 ! counter for JVALUE update -END TYPE SUB_CH_MONITOR_t - -TYPE(SUB_CH_MONITOR_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: SUB_CH_MONITOR_MODEL - -INTEGER, POINTER :: ISVECNMASK=>NULL(),ISVECNPT=>NULL() -INTEGER, DIMENSION(:,:), POINTER :: ISVECMASK=>NULL() -INTEGER, POINTER :: ISTCOUNT=>NULL() - -CONTAINS - -SUBROUTINE SUB_CH_MONITOR_GOTO_MODEL(KFROM, KTO) -INTEGER, INTENT(IN) :: KFROM, KTO -! -! Save current state for allocated arrays -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODD_SUB_CH_MONITOR_N:SUB_CH_MONITOR_GOTO_MODEL',0,ZHOOK_HANDLE) -SUB_CH_MONITOR_MODEL(KFROM)%ISVECMASK=>ISVECMASK -! -! Current model is set to model KTO -ISVECNMASK=>SUB_CH_MONITOR_MODEL(KTO)%ISVECNMASK -ISVECNPT=>SUB_CH_MONITOR_MODEL(KTO)%ISVECNPT -ISVECMASK=>SUB_CH_MONITOR_MODEL(KTO)%ISVECMASK -ISTCOUNT=>SUB_CH_MONITOR_MODEL(KTO)%ISTCOUNT - -IF (LHOOK) CALL DR_HOOK('MODD_SUB_CH_MONITOR_N:SUB_CH_MONITOR_GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE SUB_CH_MONITOR_GOTO_MODEL - -END MODULE MODD_SUB_CH_MONITOR_n diff --git a/src/arome/chem/module/modd_unifacparam.F90 b/src/arome/chem/module/modd_unifacparam.F90 deleted file mode 100644 index 9f3b5498bd1bedf1beb5ab10e82f5e8a6c8a3ac0..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_unifacparam.F90 +++ /dev/null @@ -1,101 +0,0 @@ -! ######spl -MODULE MODD_UNIFACPARAM - - USE MODD_GLO -! - implicit none -! -!************************************************************************* -! -!Include file : unifacparma.h -! -!Purpose: Unifac parameters (replace file read) -! -!Include dependencies: Included in Unidriver.c -! -!Notes: 10 Type AQ SOA + H2O at 25 C -! (Data of Lyman, Reehl, Rosenblatt, 1990) -! -! NMOL and NFUNC need to match DIMMOL and DIMFUN in unidriver.c -! -! Parameters inputted as in the original fortran input file, therefore -! a transpose is needed in the unidriver C program for matrices A and NU -! in order to pass them properly into the Fortran unifac routine. -! -!revision History: 1. Developed by Betty Pun, AER, December, 1999 -! under CARB funding -! -!************************************************************************** -! -!*************************************************************************** -!****************NUMBERS NEEDED FOR GRIFFINS AQUOUS PHASE****************** -!************************************************************************** -! -integer, parameter :: NMOL_AQ = NBSP + 1 ! Number of aquous molecules is number of species+water -integer, parameter :: NFUNC_AQ = 17 ! Number of functional groups -REAL, dimension(NFUNC_AQ) :: RG_AQ !Group volume parameters -REAL, DIMENSION(NFUNC_AQ) :: QG_AQ ! Group surface parameters -INTEGER, DIMENSION(NMOL_AQ, NFUNC_AQ) :: NU_AQ !Number of groups in each molecule -REAL, DIMENSION(NFUNC_AQ,NFUNC_AQ) :: A_AQ !Interaction parameters between different groups -! -!Parameters needed in unifac code which are precalculated in unifac_ini -!********************************************************************** -REAL, DIMENSION(NMOL_AQ,NFUNC_AQ) :: THTAGP_AQ !surface area ratio of groups in molecules -REAL, DIMENSION(NMOL_AQ) :: Q_AQ !surface parameters for molecules -REAL, DIMENSION(NMOL_AQ) :: R_AQ !volume parameter for molecules -REAL, DIMENSION(NMOL_AQ) :: L_AQ !unifac parameter for molecules - -!*************************************************************************** -!****************NUMBERS NEEDED FOR GRIFFINS ORGANIC PHASE****************** -!************************************************************************** - -integer, parameter :: NMOL_ORG = NBSP + NBSPOA !Total number of moles in organic phase -integer, parameter :: NFUNC_ORG = 16 !Number of functional groups -REAL, DIMENSION(NFUNC_ORG) :: RG_ORG !Group volume parameters -REAL, DIMENSION(NFUNC_ORG) :: QG_ORG !Group surface parameters -INTEGER, DIMENSION(NMOL_ORG, NFUNC_ORG) :: NU_ORG !Number of groups in each molecule -REAL, DIMENSION(NFUNC_ORG,NFUNC_ORG) :: A_ORG !Interaction parameters between different groups - -!Parameters needed in unifac code which are precalculated in unifac_ini -!********************************************************************** -REAL, DIMENSION(NMOL_ORG,NFUNC_ORG) :: THTAGP_ORG !surface area ratio of groups in molecules -REAL, DIMENSION(NMOL_ORG) :: Q_ORG !surface parameters for molecules -REAL, DIMENSION(NMOL_ORG) :: R_ORG !volume parameter for molecules -REAL, DIMENSION(NMOL_ORG) :: L_ORG !unifac parameter for molecules - -!*************************************************************************** -!****************NUMBERS NEEDED FOR PUN'S AQUOUS (A) PHASE****************** -!************************************************************************** - -integer, parameter :: NMOL_A = NBSPA +1 !Number of molecules (the "+1" is for water) -integer, parameter :: NFUNC_A = 11 !Number of functional groups -REAL, dimension(NFUNC_A) :: RG_A !Group volume parameters -REAL, DIMENSION(NFUNC_A) :: QG_A !Group surface parameters -INTEGER, DIMENSION(NMOL_A, NFUNC_A) :: NU_A !Number of groups in each molecule -REAL, DIMENSION(NFUNC_A,NFUNC_A) :: A_A !Interaction parameters between different groups - -!Parameters needed in unifac code which are precalculated in unifac_ini -!********************************************************************** -REAL, DIMENSION(NMOL_A,NFUNC_A) :: THTAGP_A !surface area ratio of groups in molecules -REAL, DIMENSION(NMOL_A) :: Q_A !surface parameters for molecules -REAL, DIMENSION(NMOL_A) :: R_A !volume parameter for molecules -REAL, DIMENSION(NMOL_A) :: L_A !unifac parameter for molecules - -!*************************************************************************** -!****************NUMBERS NEEDED FOR PUN'S ORGANIC (B) PHASE****************** -!************************************************************************** -integer, parameter :: NMOL_B = 10 !Number of molecules -integer, parameter :: NFUNC_B = 16 !Number of functional groups -REAL, DIMENSION(NFUNC_B) :: RG_B !Group volume parameters -REAL, DIMENSION(NFUNC_B) :: QG_B !Group surface parameters -INTEGER, DIMENSION(NMOL_B, NFUNC_B) :: NU_B !Number of groups in each molecule -REAL, DIMENSION(NFUNC_B,NFUNC_B) :: A_B !Interaction parameters between different groups - -!Parameters needed in unifac code which are precalculated in unifac_ini -!********************************************************************** -REAL, DIMENSION(NMOL_B,NFUNC_B) :: THTAGP_B !surface area ratio of groups in molecules -REAL, DIMENSION(NMOL_B) :: Q_B !surface parameters for molecules -REAL, DIMENSION(NMOL_B) :: R_B !volume parameter for molecules -REAL, DIMENSION(NMOL_B) :: L_B !unifac parameter for molecules - -END MODULE MODD_UNIFACPARAM diff --git a/src/arome/chem/module/modd_wet_dep_descr.F90 b/src/arome/chem/module/modd_wet_dep_descr.F90 deleted file mode 100644 index a21b1ce758361875d0683efc066667f8a8bb0ce7..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_wet_dep_descr.F90 +++ /dev/null @@ -1,84 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source$ $Revision$ $Date$ -!----------------------------------------------------------------- -!----------------------------------------------------------------- -! ########################## - MODULE MODD_WET_DEP_DESCR -! ########################## -! -!!**** *MODD_WET_DEP_DESCR* - declaration of the microphysical descriptive -!! constants for use in the warm and cold schemes. -!! -!! PURPOSE -!! ------- -! The purpose of this declarative module is to declare the microphysical -! constants. This includes the descriptive parameters for the raindrop and -! the ice crystal habits and the parameters relevant of the dimensional -! distributions. -! -! m(D) = XAx * D**XBx : Mass-MaxDim relationship -! v(D) = XCx * D**XDx : Fallspeed-MaxDim relationship -! N(Lbda) = XCCx * Lbda**XCXx : NumberConc-Slopeparam relationship -! XF0x, XF1x, XF2x : Ventilation factors -! XC1x : Shape parameter for deposition -! -! and -! -! XALPHAx, XNUx : Generalized GAMMA law -! Lbda = XLBx * (r_x*rho_dref)**XLBEXx : Slope parameter of the -! distribution law -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!! REFERENCE -!! --------- -!! Book2 of documentation of Meso-NH (MODD_RAIN_ICE_DESCR) -!! -!! AUTHOR -!! ------ -!! J.-P. Pinty *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 04/12/95 -!! J.-P. Pinty 29/11/02 add ICE4 -!! 01-02-2011 M. Mokhtari Adaptation of MODD_RAIN_ICE_DESCR under MODD_WET_DEP_DESCR for Aladin -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -REAL,SAVE :: XCEXVT ! air density fall speed correction -! -REAL,SAVE :: XAC,XBC,XCC,XDC ! Cloud droplet charact. -REAL,SAVE :: XAR,XBR,XCR,XDR,XCCR ,XF0R,XF1R,XC1R ! Raindrop charact. -REAL,SAVE :: XAI,XBI,XC_I,XDI ,XF0I,XF2I,XC1I ! Cloud ice charact. -REAL,SAVE :: XAS,XBS,XCS,XDS,XCCS,XCXS,XF0S,XF1S,XC1S ! Snow/agg. charact. -REAL,SAVE :: XAG,XBG,XCG,XDG,XCCG,XCXG,XF0G,XF1G,XC1G ! Graupel charact. -REAL,SAVE :: XAH,XBH,XCH,XDH,XCCH,XCXH,XF0H,XF1H,XC1H ! Hail charact. -! -REAL,SAVE :: XALPHAC,XNUC,XALPHAC2,XNUC2, XLBEXC ! Cloud droplet distribution parameters -REAL,DIMENSION(2), SAVE :: XLBC ! Cloud droplet distribution parameters -REAL,SAVE :: XALPHAR,XNUR,XLBEXR,XLBR ! Raindrop distribution parameters -REAL,SAVE :: XALPHAI,XNUI,XLBEXI,XLBI ! Cloud ice distribution parameters -REAL,SAVE :: XALPHAS,XNUS,XLBEXS,XLBS ! Snow/agg. distribution parameters -REAL,SAVE :: XALPHAG,XNUG,XLBEXG,XLBG ! Graupel distribution parameters -REAL,SAVE :: XALPHAH,XNUH,XLBEXH,XLBH ! Hail distribution parameters -! -REAL,SAVE :: XLBDAR_MAX,XLBDAS_MAX,XLBDAG_MAX ! Max values allowed for the shape - ! parameters (rain,snow,graupeln) -! -REAL,DIMENSION(:),SAVE,ALLOCATABLE :: XRTMIN ! Min values allowed for the mixing ratios -REAL,DIMENSION(:,:,:), SAVE, ALLOCATABLE :: XCONC ! Concentration of cloud droplet -REAL,SAVE :: XCONC_SEA ! Diagnostic concentration of droplets over sea -REAL,SAVE :: XCONC_LAND ! Diagnostic concentration of droplets over land -REAL,SAVE :: XCONC_URBAN ! Diagnostic concentration of droplets over urban area -! -END MODULE MODD_WET_DEP_DESCR diff --git a/src/arome/chem/module/modd_wet_dep_param.F90 b/src/arome/chem/module/modd_wet_dep_param.F90 deleted file mode 100644 index c925bc5ea1a86c1836af4bac8e97870d9b084c0c..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modd_wet_dep_param.F90 +++ /dev/null @@ -1,172 +0,0 @@ -!----------------------------------------------------------------- -!--------------- special set of characters for RCS information -!----------------------------------------------------------------- -! $Source$ $Revision$ $Date$ -!----------------------------------------------------------------- -!----------------------------------------------------------------- -! ########################## - MODULE MODD_WET_DEP_PARAM -! ########################## -! -!!**** *MODD_WET_DEP_PARAM* - declaration of some microphysical factors -!! extensively used in the warm and cold schemes. -!! -!! PURPOSE -!! ------- -! The purpose of this declarative module is to declare some precomputed -! microphysical paramters directly used in routine RAIN_ICE. -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!! REFERENCE -!! --------- -!! Book2 of documentation of Meso-NH (MODD_RAIN_ICE_PARAM) -!! -!! AUTHOR -!! ------ -!! J.-P. Pinty *Laboratoire d'Aerologie* -!! -!! MODIFICATIONS -!! ------------- -!! Original 04/12/95 -!! J.-P. Pinty 29/11/02 add ICE4 -!! M. Mokhtari 01-02-2011 Adaptation of MODD_RAIN_ICE_PARAM under MADD_WET_DEP_PARAM for Aladin -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -REAL,DIMENSION(2),SAVE :: XFSEDC ! Constants for sedimentation fluxes of C -REAL,SAVE :: XFSEDR,XEXSEDR, & ! Constants for sedimentation - XFSEDI,XEXCSEDI,XEXRSEDI, & ! fluxes of R, I, S and G - XFSEDS,XEXSEDS, & - XFSEDG,XEXSEDG -! -REAL,SAVE :: XNU10,XALPHA1,XBETA1, & ! Constants for heterogeneous - XNU20,XALPHA2,XBETA2, & ! ice nucleation : HEN - XMNU0 ! mass of nucleated ice crystal -! -REAL,SAVE :: XALPHA3,XBETA3, & ! Constants for homogeneous - XHON ! ice nucleation : HON -! -REAL,SAVE :: XSCFAC, & ! Constants for raindrop - X0EVAR,X1EVAR,XEX0EVAR,XEX1EVAR, & ! evaporation: EVA and for - X0DEPI,X2DEPI, & ! deposition : DEP on I, - X0DEPS,X1DEPS,XEX0DEPS,XEX1DEPS, & ! on S and - X0DEPG,X1DEPG,XEX0DEPG,XEX1DEPG ! on G -! -REAL,SAVE :: XTIMAUTI,XTEXAUTI, & ! Constants for pristine ice - XCRIAUTI ! autoconversion : AUT -! -REAL,SAVE :: XCOLIS,XCOLEXIS, & ! Constants for snow - XFIAGGS, & ! aggregation : AGG - XEXIAGGS -! -REAL,SAVE :: XTIMAUTC, & ! Constants for cloud droplet - XCRIAUTC ! autoconversion : AUT -! -REAL,SAVE :: XFCACCR, & ! Constants for cloud droplet - XEXCACCR ! accretion on raindrops : ACC -! -REAL,SAVE :: XDCSLIM,XCOLCS, & ! Constants for the riming of - XEXCRIMSS,XCRIMSS, & ! the aggregates : RIM - XEXCRIMSG,XCRIMSG, & ! - XEXSRIMCG,XSRIMCG, & ! - XGAMINC_BOUND_MIN, & ! Min val. of Lbda_s for RIM - XGAMINC_BOUND_MAX, & ! Max val. of Lbda_s for RIM - XRIMINTP1,XRIMINTP2 ! Csts for lin. interpol. of - ! the tab. incomplete Gamma law -INTEGER,SAVE :: NGAMINC ! Number of tab. Lbda_s -REAL, DIMENSION(:), SAVE, ALLOCATABLE & - :: XGAMINC_RIM1, & ! Tab. incomplete Gamma funct. - XGAMINC_RIM2 ! for XDS+2 and for XBS -! -REAL,SAVE :: XFRACCSS, & ! Constants for the accretion - XLBRACCS1,XLBRACCS2,XLBRACCS3, & ! raindrops onto the aggregates - XFSACCRG, & ! ACC (processes RACCSS and - XLBSACCR1,XLBSACCR2,XLBSACCR3, & ! SACCRG) - XACCLBDAS_MIN, & ! Min val. of Lbda_s for ACC - XACCLBDAS_MAX, & ! Max val. of Lbda_s for ACC - XACCLBDAR_MIN, & ! Min val. of Lbda_r for ACC - XACCLBDAR_MAX, & ! Max val. of Lbda_r for ACC - XACCINTP1S,XACCINTP2S, & ! Csts for bilin. interpol. of - XACCINTP1R,XACCINTP2R ! Lbda_s and Lbda_r in the - ! XKER_RACCSS and XKER_SACCRG - ! tables -INTEGER,SAVE :: NACCLBDAS, & ! Number of Lbda_s values and - NACCLBDAR ! of Lbda_r values in the - ! XKER_RACCSS and XKER_SACCRG - ! tables -REAL,DIMENSION(:,:), SAVE, ALLOCATABLE & - :: XKER_RACCSS, & ! Normalized kernel for RACCSS - XKER_RACCS, & ! Normalized kernel for RACCS - XKER_SACCRG ! Normalized kernel for SACCRG -REAL,SAVE :: XFSCVMG ! Melting-conversion factor of - ! the aggregates -! -REAL,SAVE :: XCOLIR, & ! Constants for rain contact - XEXRCFRI,XRCFRI, & ! freezing : CFR - XEXICFRR,XICFRR ! -! -REAL,SAVE :: XFCDRYG, & ! Constants for the dry growth - XCOLIG,XCOLEXIG,XFIDRYG, & ! of the graupeln : DRY - XCOLSG,XCOLEXSG,XFSDRYG, & ! processes RCDRYG - XLBSDRYG1,XLBSDRYG2,XLBSDRYG3, & ! RIDRYG - XFRDRYG, & ! RSDRYG - XLBRDRYG1,XLBRDRYG2,XLBRDRYG3, & ! RRDRYG - XDRYLBDAR_MIN, & ! Min val. of Lbda_r for DRY - XDRYLBDAR_MAX, & ! Max val. of Lbda_r for DRY - XDRYLBDAS_MIN, & ! Min val. of Lbda_s for DRY - XDRYLBDAS_MAX, & ! Max val. of Lbda_s for DRY - XDRYLBDAG_MIN, & ! Min val. of Lbda_g for DRY - XDRYLBDAG_MAX, & ! Max val. of Lbda_g for DRY - XDRYINTP1R,XDRYINTP2R, & ! Csts for bilin. interpol. of - XDRYINTP1S,XDRYINTP2S, & ! Lbda_r, Lbda_s and Lbda_g in - XDRYINTP1G,XDRYINTP2G ! the XKER_SDRYG and XKER_RDRYG - ! tables -INTEGER,SAVE :: NDRYLBDAR, & ! Number of Lbda_r, - NDRYLBDAS, & ! of Lbda_s and - NDRYLBDAG ! of Lbda_g values in - ! the XKER_SDRYG and XKER_RDRYG - ! tables -REAL,DIMENSION(:,:), SAVE, ALLOCATABLE & - :: XKER_SDRYG, & ! Normalized kernel for SDRYG - XKER_RDRYG ! Normalized kernel for RDRYG -! -! addition of Hail category -! -REAL,SAVE :: XFSEDH,XEXSEDH ! Constants for sedimentation -! -! -REAL,SAVE :: X0DEPH,X1DEPH,XEX0DEPH,XEX1DEPH ! Constants for deposition -! -REAL,SAVE :: XFWETH,XFSWETH, & ! Constants for the wet growth - XLBSWETH1,XLBSWETH2,XLBSWETH3, & ! of the hailstones : WET - XFGWETH, & ! processes RSWETH - XLBGWETH1,XLBGWETH2,XLBGWETH3, & ! RGWETH - XWETLBDAS_MIN, & ! Min val. of Lbda_s for WET - XWETLBDAS_MAX, & ! Max val. of Lbda_s for WET - XWETLBDAG_MIN, & ! Min val. of Lbda_g for WET - XWETLBDAG_MAX, & ! Max val. of Lbda_g for WET - XWETLBDAH_MIN, & ! Min val. of Lbda_h for WET - XWETLBDAH_MAX, & ! Max val. of Lbda_h for WET - XWETINTP1S,XWETINTP2S, & ! Csts for bilin. interpol. of - XWETINTP1G,XWETINTP2G, & ! Lbda_r, Lbda_s and Lbda_g in - XWETINTP1H,XWETINTP2H ! the XKER_SWETH and XKER_GWETH - ! tables -INTEGER,SAVE :: NWETLBDAS, & ! Number of Lbda_s, - NWETLBDAG, & ! of Lbda_g and - NWETLBDAH ! of Lbda_h values in - ! the XKER_SWETH and XKER_GWETH - ! tables -REAL,DIMENSION(:,:), SAVE, ALLOCATABLE & - :: XKER_SWETH, & ! Normalized kernel for SWETH - XKER_GWETH ! Normalized kernel for GWETH -! -END MODULE MODD_WET_DEP_PARAM diff --git a/src/arome/chem/module/mode_aero_psd.F90 b/src/arome/chem/module/mode_aero_psd.F90 deleted file mode 100644 index 9636d32eb83eda1b6980cdc1e69784c987a04fa8..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_aero_psd.F90 +++ /dev/null @@ -1,811 +0,0 @@ -! ######spl -MODULE MODE_AERO_PSD -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################## -!! -!! MODULE DUST PSD (Particle Size Distribution) -!! Purpose: Contains subroutines to convert from transported variables (ppp) -!! to understandable aerosol variables, e.g. #/m3, kg/m3, sigma, R_{n} - -USE MODD_CH_AEROSOL -! -IMPLICIT NONE -! -CONTAINS -! -! ############################################################ - SUBROUTINE PPP2AERO( & - PSVT & !I [ppp] input scalar variables (moment of distribution) - , PRHODREF & !I [kg/m3] density of air - , PSIG3D & !O [-] standard deviation of aerosol distribution - , PRG3D & !O [um] number median diameter of aerosol distribution - , PN3D & !O [#/m3] number concentration of aerosols - , PCTOTA & !O [ug/m3] mass of each aerosol compounds - , PM3D & !moments 0, 3 and 6 - ) -! ############################################################ -! -!! -!! PURPOSE -!! ------- -!! Translate the three moments M0, M3 and M6 given in ppp into -!! Values which can be understood more easily (R, sigma, N, M) -!! -!! CALLING STRUCTURE NOTE: OPTIONAL VARIABLES -!! ------- -!! CALL PPP2AEROS(PSVT, PRHODREF, PSIG3D=SIGVAR, & -!! PRG3D=RVAR, PN3D=NVAR, PM3D=ZM) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Alf Grini (CNRM) -!! -!! EXTERNAL -!! -------- -!! - IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSVT !I [#/molec_{air}] first moment - !I [molec_{aer}/molec_{air} 3rd moment - !I [um6/molec_{air}*(cm3/m3)] 6th moment -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF !I [kg/m3] density of air - -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PSIG3D !O [-] standard deviation -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PRG3D !O [um] number median diameter -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PN3D !O [#/m3] number concentration -REAL, DIMENSION(:,:,:,:,:),OPTIONAL, INTENT(OUT) :: PCTOTA !O [ug/m3] mass of each component -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PM3D !O moments 0,3 and 6 -! -!* 0.2 declarations local variables -! -REAL, DIMENSION(NSP+NCARB+NSOA) :: ZMI ! [kg/mol] molar weight of aerosol -REAL :: ZRGMIN ! [um] minimum radius accepted -REAL,DIMENSION(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3),SIZE(PSVT,4)) :: ZSV ! [aerosol concentration] -REAL,DIMENSION(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3)) :: ZSIGMA ! [-] standard deviation -REAL,DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),NSP+NCARB+NSOA,JPMODE):: ZCTOTA -REAL,DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),JPMODE*3) :: ZM - -REAL,DIMENSION(NSP+NCARB+NSOA) :: ZFAC ! M3 / mass conversion factor -REAL :: ZDEN2MOL -REAL,DIMENSION(JPMODE*3) :: ZPMIN ! [aerosol units] minimum values for N, sigma, M -INTEGER :: JJ, JN ! [idx] loop counters -REAL :: ZINIRADIUSI, ZINIRADIUSJ -! -!------------------------------------------------------------------------------- -! -! 1. initialisation - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_AERO_PSD:PPP2AERO',0,ZHOOK_HANDLE) -IF (CRGUNIT=="MASS") THEN - ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) - ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) -ELSE - ZINIRADIUSI = XINIRADIUSI - ZINIRADIUSJ = XINIRADIUSJ -END IF - - - - !Get minimum values possible - ZPMIN(1) = XN0IMIN - ZRGMIN = XCOEFRADIMIN * ZINIRADIUSI - ZPMIN(2) = ZPMIN(1) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGIMIN)**2) - ZPMIN(3) = ZPMIN(1) * (ZRGMIN**6)*EXP(18. * LOG(XSIGIMIN)**2) - - ZPMIN(4) = XN0JMIN - ZRGMIN = XCOEFRADJMIN * ZINIRADIUSJ - ZPMIN(5) = ZPMIN(4) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGJMIN)**2) - ZPMIN(6) = ZPMIN(4) * (ZRGMIN**6)*EXP(18. * LOG(XSIGJMIN)**2) - - !Set density of aerosol, here dust (kg/m3) - ! Aerosol Density -! Cf Ackermann (all to black carbon except water) - - !Set molecular weightn g/mol - ZMI(:) = 250. - ZMI(JP_AER_SO4) = 98. - ZMI(JP_AER_NO3) = 63. - ZMI(JP_AER_NH3) = 17. - ZMI(JP_AER_H2O) = 18. - IF (NSOA .EQ. 10) THEN - ZMI(JP_AER_SOA1) = 88. - ZMI(JP_AER_SOA2) = 180. - ZMI(JP_AER_SOA3) = 1.5374857E2 - ZMI(JP_AER_SOA4) = 1.9586780E2 - ZMI(JP_AER_SOA5) = 195. - ZMI(JP_AER_SOA6) = 195. - ZMI(JP_AER_SOA7) = 165. - ZMI(JP_AER_SOA8) = 195. - ZMI(JP_AER_SOA9) = 270. - ZMI(JP_AER_SOA10) = 210. - END IF - -! conversion into mol.cm-3 -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD -! -DO JJ=1, SIZE(PSVT,4) - ZSV(:,:,:,JJ) = PSVT(:,:,:,JJ) * ZDEN2MOL * PRHODREF(:,:,:) -ENDDO -! -DO JJ=1,NSP+NCARB+NSOA - ZFAC(JJ)=(4./3.)*XPI*XRHOI(JJ)*1.e-9 -ENDDO -! -!------------------------------------------------------------------------------- -! -!* 2 transfer aerosol mass from gas to aerosol variables -! (and conversion of mol.cm-3 --> microgram/m3) -! -ZCTOTA(:,:,:,:,:) = 0. -! aerosol phase - ZCTOTA(:,:,:,JP_AER_SO4,1) = ZSV(:,:,:,JP_CH_SO4i)*ZMI(JP_AER_SO4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SO4,2) = ZSV(:,:,:,JP_CH_SO4j)*ZMI(JP_AER_SO4)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_NO3,1) = ZSV(:,:,:,JP_CH_NO3i)*ZMI(JP_AER_NO3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_NO3,2) = ZSV(:,:,:,JP_CH_NO3j)*ZMI(JP_AER_NO3)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_NH3,1) = ZSV(:,:,:,JP_CH_NH3i)*ZMI(JP_AER_NH3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_NH3,2) = ZSV(:,:,:,JP_CH_NH3j)*ZMI(JP_AER_NH3)/6.0221367E+11 -! -! water - ZCTOTA(:,:,:,JP_AER_H2O,1) = ZSV(:,:,:,JP_CH_H2Oi)*ZMI(JP_AER_H2O)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_H2O,2) = ZSV(:,:,:,JP_CH_H2Oj)*ZMI(JP_AER_H2O)/6.0221367E+11 -! -! primary organic carbon - ZCTOTA(:,:,:,JP_AER_OC,1) = ZSV(:,:,:,JP_CH_OCi)*ZMI(JP_AER_OC)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_OC,2) = ZSV(:,:,:,JP_CH_OCj)*ZMI(JP_AER_OC)/6.0221367E+11 -! -! primary black carbon - ZCTOTA(:,:,:,JP_AER_BC,1) = ZSV(:,:,:,JP_CH_BCi)*ZMI(JP_AER_BC)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_BC,2) = ZSV(:,:,:,JP_CH_BCj)*ZMI(JP_AER_BC)/6.0221367E+11 -! -IF (NSOA .EQ. 10) THEN - ZCTOTA(:,:,:,JP_AER_SOA1,1) = ZSV(:,:,:,JP_CH_SOA1i)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA1,2) = ZSV(:,:,:,JP_CH_SOA1j)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,1) = ZSV(:,:,:,JP_CH_SOA2i)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,2) = ZSV(:,:,:,JP_CH_SOA2j)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,1) = ZSV(:,:,:,JP_CH_SOA3i)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,2) = ZSV(:,:,:,JP_CH_SOA3j)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,1) = ZSV(:,:,:,JP_CH_SOA4i)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,2) = ZSV(:,:,:,JP_CH_SOA4j)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,1) = ZSV(:,:,:,JP_CH_SOA5i)*ZMI(JP_AER_SOA5)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,2) = ZSV(:,:,:,JP_CH_SOA5j)*ZMI(JP_AER_SOA5)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_SOA6,1) = ZSV(:,:,:,JP_CH_SOA6i)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA6,2) = ZSV(:,:,:,JP_CH_SOA6j)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,1) = ZSV(:,:,:,JP_CH_SOA7i)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,2) = ZSV(:,:,:,JP_CH_SOA7j)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,1) = ZSV(:,:,:,JP_CH_SOA8i)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,2) = ZSV(:,:,:,JP_CH_SOA8j)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,1) = ZSV(:,:,:,JP_CH_SOA9i)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,2) = ZSV(:,:,:,JP_CH_SOA9j)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,1) = ZSV(:,:,:,JP_CH_SOA10i)*ZMI(JP_AER_SOA10)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,2) = ZSV(:,:,:,JP_CH_SOA10j)*ZMI(JP_AER_SOA10)/6.0221367E+11 -END IF -! -!------------------------------------------------------------------------------- -! -!* 3 calculate moment 3 from total aerosol mass -! -ZM(:,:,:,2) = 0. -ZM(:,:,:,5) = 0. -DO JJ = 1,NSP+NCARB+NSOA - ZM(:,:,:,2) = ZM(:,:,:,2)+ZCTOTA(:,:,:,JJ,1)/ZFAC(JJ) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - ZM(:,:,:,5) = ZM(:,:,:,5)+ZCTOTA(:,:,:,JJ,2)/ZFAC(JJ) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) -ENDDO -! -!------------------------------------------------------------------------------- -! -!* 4 set moment 0 -! - ZM(:,:,:,1)= MAX(ZSV(:,:,:,JP_CH_M0i) * 1E+6, 1.E-10) ! molec_{aer}/m3_{air} - ZM(:,:,:,4)= MAX(ZSV(:,:,:,JP_CH_M0j) * 1E+6, 1.E-10) ! molec_{aer}/m3_{air} -! -!------------------------------------------------------------------------------- -! -!* 5 set moment 6 ==> um6_{aer}/m3_{air} -! -IF (LVARSIGI) THEN ! set M6 variable standard deviation - ZM(:,:,:,3) = MAX(ZSV(:,:,:,JP_CH_M6i), 1E-80) - - ZSIGMA(:,:,:)=ZM(:,:,:,2)**2/(ZM(:,:,:,1)*ZM(:,:,:,3)) - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - WHERE (ZSIGMA(:,:,:) > XSIGIMAX) - ZSIGMA(:,:,:) = XSIGIMAX - END WHERE - WHERE (ZSIGMA(:,:,:) < XSIGIMIN) - ZSIGMA(:,:,:) = XSIGIMIN - END WHERE - ZM(:,:,:,3) = ZM(:,:,:,1) & - * ( (ZM(:,:,:,2)/ZM(:,:,:,1))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:,:,:))**2))**6 & - * exp(18.*log(ZSIGMA(:,:,:))**2) - - IF(PRESENT(PSIG3D)) PSIG3D(:,:,:,1) = ZSIGMA(:,:,:) - -ELSE ! fixed standard deviation - ZM(:,:,:,3) = ZM(:,:,:,1) & - * ( (ZM(:,:,:,2)/ZM(:,:,:,1))**(1./3.) & - * exp(-(3./2.)*log(XINISIGI)**2))**6 & - * exp(18.*log(XINISIGI)**2) - - IF(PRESENT(PSIG3D)) PSIG3D(:,:,:,1) = XINISIGI -END IF - -IF (LVARSIGJ) THEN ! set M6 variable standard deviation - ZM(:,:,:,6) = MAX(ZSV(:,:,:,JP_CH_M6j), 1E-80) - - ZSIGMA(:,:,:)=ZM(:,:,:,5)**2/(ZM(:,:,:,4)*ZM(:,:,:,6)) - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - WHERE (ZSIGMA(:,:,:) > XSIGJMAX) - ZSIGMA(:,:,:) = XSIGJMAX - END WHERE - WHERE (ZSIGMA(:,:,:) < XSIGJMIN) - ZSIGMA(:,:,:) = XSIGJMIN - END WHERE - - ZM(:,:,:,6) = ZM(:,:,:,4) & - * ( (ZM(:,:,:,5)/ZM(:,:,:,4))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:,:,:))**2))**6 & - * exp(18.*log(ZSIGMA(:,:,:))**2) - - IF(PRESENT(PSIG3D)) PSIG3D(:,:,:,2) = ZSIGMA(:,:,:) - -ELSE ! fixed standard deviation - ZM(:,:,:,6) = ZM(:,:,:,4) & - * ( (ZM(:,:,:,5)/ZM(:,:,:,4))**(1./3.) & - * exp(-(3./2.)*log(XINISIGJ)**2))**6 & - * exp(18.*log(XINISIGJ)**2) - - IF(PRESENT(PSIG3D)) PSIG3D(:,:,:,2) = XINISIGJ -END IF - - -!------------------------------------------------------------------------------- -! -!* 6 calculate modal parameters from moments -! -DO JN=1,JPMODE - IF(PRESENT(PN3D)) PN3D(:,:,:,JN) = ZM(:,:,:,NM0(JN)) - - IF(PRESENT(PRG3D)) PRG3D(:,:,:,JN)=(ZM(:,:,:,NM3(JN))**4. & - / (ZM(:,:,:,NM6(JN))*ZM(:,:,:,NM0(JN))**3.))**(1./6.) - -ENDDO -! -IF(PRESENT(PCTOTA)) PCTOTA(:,:,:,:,:) = ZCTOTA(:,:,:,:,:) -IF(PRESENT(PM3D)) PM3D(:,:,:,:) = ZM(:,:,:,:) -! -! -IF (LHOOK) CALL DR_HOOK('MODE_AERO_PSD:PPP2AERO',1,ZHOOK_HANDLE) -END SUBROUTINE PPP2AERO -! -! ############################################################ - SUBROUTINE AERO2PPP( & - PSVT & !IO [ppp] input scalar variables (moment of distribution) - , PRHODREF & !I [kg/m3] density of air - , PSIG3D & !I [-] standard deviation of aerosol distribution - , PRG3D & !I [um] number median diameter of aerosol distribution - ) -!! ############################################################ -! -!! -!! PURPOSE -!! ------- -!! Translate the aerosol Mass, RG and SIGMA in the three moments M0, M3 and M6 given in ppp -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Alf Grini (CNRM) -!! -!! EXTERNAL -!! -------- -!! - IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !I [#/molec_{air}] first moment - !I [molec_{aer}/molec_{air} 3rd moment - !I [um6/molec_{air}*(cm3/m3)] 6th moment -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF !I [kg/m3] density of air - -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG3D !O [-] standard deviation -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRG3D !O [um] number median diameter -! -! -!* 0.2 declarations local variables -! -REAL,DIMENSION(NSP+NCARB+NSOA) :: ZMI ! [kg/mol] molar weight of aerosol -REAL :: ZRGMIN ! [um] minimum radius accepted -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM ! [aerosol units] local array which goes to output later -REAL,DIMENSION(JPMODE*3) :: ZPMIN ! [aerosol units] minimum values for N, sigma, M -REAL,DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3),NSP+NCARB+NSOA,JPMODE):: ZCTOTA - -REAL,DIMENSION(NSP+NCARB+NSOA) :: ZFAC ! M3 / mass conversion factor -INTEGER :: JJ ! [idx] loop counters -REAL :: ZDEN2MOL -REAL :: ZINIRADIUSI, ZINIRADIUSJ -! -!------------------------------------------------------------------------------- -! -! 1. initialisation - -!Calculations here are for one mode only -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_AERO_PSD:AERO2PPP',0,ZHOOK_HANDLE) -IF (CRGUNIT=="MASS") THEN - ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) - ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) -ELSE - ZINIRADIUSI = XINIRADIUSI - ZINIRADIUSJ = XINIRADIUSJ -END IF - - -!Get minimum values possible -ZPMIN(1) = XN0IMIN -ZRGMIN = XCOEFRADIMIN * ZINIRADIUSI -ZPMIN(2) = ZPMIN(1) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGIMIN)**2) -ZPMIN(3) = ZPMIN(1) * (ZRGMIN**6)*EXP(18. * LOG(XSIGIMIN)**2) -ZPMIN(4) = XN0JMIN -ZRGMIN = XCOEFRADJMIN * ZINIRADIUSJ -ZPMIN(5) = ZPMIN(4) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGJMIN)**2) -ZPMIN(6) = ZPMIN(4) * (ZRGMIN**6)*EXP(18. * LOG(XSIGJMIN)**2) - -ALLOCATE (ZM(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3), JPMODE*3)) - - !Set density of aerosol, here dust (kg/m3) - ! Aerosol Density -! Cf Ackermann (all to black carbon except water) - - !Set molecular weightn g/mol - ZMI(:) = 250. - ZMI(JP_AER_SO4) = 98. - ZMI(JP_AER_NO3) = 63. - ZMI(JP_AER_NH3) = 17. - ZMI(JP_AER_H2O) = 18. - IF (NSOA .EQ. 10) THEN - ZMI(JP_AER_SOA1) = 88. - ZMI(JP_AER_SOA2) = 180. - ZMI(JP_AER_SOA3) = 1.5374857E2 - ZMI(JP_AER_SOA4) = 1.9586780E2 - ZMI(JP_AER_SOA5) = 195. - ZMI(JP_AER_SOA6) = 195. - ZMI(JP_AER_SOA7) = 165. - ZMI(JP_AER_SOA8) = 195. - ZMI(JP_AER_SOA9) = 270. - ZMI(JP_AER_SOA10) = 210. - END IF - -! conversion into mol.cm-3 -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD -DO JJ=1, SIZE(PSVT, 4) - PSVT(:,:,:,JJ) = PSVT(:,:,:,JJ) * ZDEN2MOL * PRHODREF(:,:,:) -ENDDO -! -DO JJ=1,NSP+NCARB+NSOA - ZFAC(JJ)=(4./3.)*XPI*XRHOI(JJ)*1.e-9 -ENDDO -! -! -!* 2 transfer aerosol mass from gas to aerosol variables -! (and conversion of mol.cm-3 --> microgram/m3) -! -ZCTOTA(:,:,:,:,:) = 0. -! aerosol phase - ZCTOTA(:,:,:,JP_AER_SO4,1) = PSVT(:,:,:,JP_CH_SO4i)*ZMI(JP_AER_SO4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SO4,2) = PSVT(:,:,:,JP_CH_SO4j)*ZMI(JP_AER_SO4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_NO3,1) = PSVT(:,:,:,JP_CH_NO3i)*ZMI(JP_AER_NO3)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_NO3,2) = PSVT(:,:,:,JP_CH_NO3j)*ZMI(JP_AER_NO3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_NH3,1) = PSVT(:,:,:,JP_CH_NH3i)*ZMI(JP_AER_NH3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_NH3,2) = PSVT(:,:,:,JP_CH_NH3j)*ZMI(JP_AER_NH3)/6.0221367E+11 -! -! water - ZCTOTA(:,:,:,JP_AER_H2O,1) = PSVT(:,:,:,JP_CH_H2Oi)*ZMI(JP_AER_H2O)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_H2O,2) = PSVT(:,:,:,JP_CH_H2Oj)*ZMI(JP_AER_H2O)/6.0221367E+11 -! -! primary organic carbon - ZCTOTA(:,:,:,JP_AER_OC,1) = PSVT(:,:,:,JP_CH_OCi)*ZMI(JP_AER_OC)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_OC,2) = PSVT(:,:,:,JP_CH_OCj)*ZMI(JP_AER_OC)/6.0221367E+11 -! -! primary black carbon - ZCTOTA(:,:,:,JP_AER_BC,1) = PSVT(:,:,:,JP_CH_BCi)*ZMI(JP_AER_BC)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_BC,2) = PSVT(:,:,:,JP_CH_BCj)*ZMI(JP_AER_BC)/6.0221367E+11 -! - IF (NSOA .EQ. 10) THEN - ZCTOTA(:,:,:,JP_AER_SOA1,1) = PSVT(:,:,:,JP_CH_SOA1i)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA1,2) = PSVT(:,:,:,JP_CH_SOA1j)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,1) = PSVT(:,:,:,JP_CH_SOA2i)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA2,2) = PSVT(:,:,:,JP_CH_SOA2j)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,1) = PSVT(:,:,:,JP_CH_SOA3i)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA3,2) = PSVT(:,:,:,JP_CH_SOA3j)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,1) = PSVT(:,:,:,JP_CH_SOA4i)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA4,2) = PSVT(:,:,:,JP_CH_SOA4j)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,1) = PSVT(:,:,:,JP_CH_SOA5i)*ZMI(JP_AER_SOA5)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA5,2) = PSVT(:,:,:,JP_CH_SOA5j)*ZMI(JP_AER_SOA5)/6.0221367E+11 - - ZCTOTA(:,:,:,JP_AER_SOA6,1) = PSVT(:,:,:,JP_CH_SOA6i)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA6,2) = PSVT(:,:,:,JP_CH_SOA6j)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,1) = PSVT(:,:,:,JP_CH_SOA7i)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA7,2) = PSVT(:,:,:,JP_CH_SOA7j)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,1) = PSVT(:,:,:,JP_CH_SOA8i)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA8,2) = PSVT(:,:,:,JP_CH_SOA8j)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,1) = PSVT(:,:,:,JP_CH_SOA9i)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA9,2) = PSVT(:,:,:,JP_CH_SOA9j)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,1) = PSVT(:,:,:,JP_CH_SOA10i)*ZMI(JP_AER_SOA10)/6.0221367E+11 - ZCTOTA(:,:,:,JP_AER_SOA10,2) = PSVT(:,:,:,JP_CH_SOA10j)*ZMI(JP_AER_SOA10)/6.0221367E+11 - END IF - -! -!* 3 calculate moment 3 from total aerosol mass -! - ZM(:,:,:,2) = 0. - ZM(:,:,:,5) = 0. - DO JJ = 1,NSP+NCARB+NSOA - ZM(:,:,:,2) = ZM(:,:,:,2)+ZCTOTA(:,:,:,JJ,1)/ZFAC(JJ) - ZM(:,:,:,5) = ZM(:,:,:,5)+ZCTOTA(:,:,:,JJ,2)/ZFAC(JJ) - ENDDO - ZM(:,:,:,2) = MAX(ZM(:,:,:,2), ZPMIN(2)) - ZM(:,:,:,5) = MAX(ZM(:,:,:,5), ZPMIN(5)) -! -! -!* 4 calculate moment 0 from dispersion and mean radius -! - ZM(:,:,:,1)= ZM(:,:,:,2)/ & - ( (PRG3D(:,:,:,1)**3)*EXP(4.5 * LOG(PSIG3D(:,:,:,1))**2) ) - ZM(:,:,:,4)= ZM(:,:,:,5)/ & - ( (PRG3D(:,:,:,2)**3)*EXP(4.5 * LOG(PSIG3D(:,:,:,2))**2) ) -! - -!* 5 calculate moment 6 from dispersion and mean radius -! - ZM(:,:,:,3) = ZM(:,:,:,1)*(PRG3D(:,:,:,1)**6) * & - EXP(18 *(LOG(PSIG3D(:,:,:,1)))**2) - ZM(:,:,:,6) = ZM(:,:,:,4)*(PRG3D(:,:,:,2)**6) * & - EXP(18 *(LOG(PSIG3D(:,:,:,2)))**2) - -!* 6 return to ppp -! -PSVT(:,:,:,JP_CH_M0i) = ZM(:,:,:,1) * 1E-6 -PSVT(:,:,:,JP_CH_M0j) = ZM(:,:,:,4) * 1E-6 - -IF (LVARSIGI) PSVT(:,:,:,JP_CH_M6i) = ZM(:,:,:,3) -IF (LVARSIGJ) PSVT(:,:,:,JP_CH_M6j) = ZM(:,:,:,6) - -DO JJ=1,SIZE(PSVT,4) - PSVT(:,:,:,JJ) = PSVT(:,:,:,JJ) / (ZDEN2MOL * PRHODREF(:,:,:)) -ENDDO - -DEALLOCATE(ZM) -! -IF (LHOOK) CALL DR_HOOK('MODE_AERO_PSD:AERO2PPP',1,ZHOOK_HANDLE) -END SUBROUTINE AERO2PPP -! -! ############################################################ - SUBROUTINE PPP2AERO1D( & - PSVT & !I [ppp] input scalar variables (moment of distribution) - , PRHODREF & !I [kg/m3] density of air - , PSIG1D & !O [-] standard deviation of aerosol distribution - , PRG1D & !O [um] number median diameter of aerosol distribution - , PN1D & !O [#/m3] number concentration of aerosols - , PCTOTA & !O [ug/m3] mass of each aerosol compounds - , PM1D & !moments 0, 3 and 6 - ) -! ############################################################ -! -!! -!! PURPOSE -!! ------- -!! Translate the three moments M0, M3 and M6 given in ppp into -!! Values which can be understood more easily (R, sigma, N, M) -!! -!! CALLING STRUCTURE NOTE: OPTIONAL VARIABLES -!! ------- -!! CALL PPP2AERO1D(PSVT, PRHODREF, PSIG1D=SIGVAR, & -!! PRG1D=RVAR, PN1D=NVAR, PM1D=ZM) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Alf Grini (CNRM) -!! -!! EXTERNAL -!! -------- -!! - IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:), INTENT(IN) :: PSVT !I [#/molec_{air}] first moment - !I [molec_{aer}/molec_{air} 3rd moment - !I [um6/molec_{air}*(cm3/m3)] 6th moment -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF !I [kg/m3] density of air - -REAL, DIMENSION(:,:), OPTIONAL, INTENT(OUT) :: PSIG1D !O [-] standard deviation -REAL, DIMENSION(:,:), OPTIONAL, INTENT(OUT) :: PRG1D !O [um] number median diameter -REAL, DIMENSION(:,:), OPTIONAL, INTENT(OUT) :: PN1D !O [#/m3] number concentration -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(OUT) :: PCTOTA !O [ug/m3] mass of each component -REAL, DIMENSION(:,:), OPTIONAL, INTENT(OUT) :: PM1D !O moments 0,3 and 6 -! -!* 0.2 declarations local variables -! -REAL, DIMENSION(NSP+NCARB+NSOA) :: ZMI ! [kg/mol] molar weight of aerosol -REAL :: ZRGMIN ! [um] minimum radius accepted -REAL,DIMENSION(SIZE(PSVT,1), SIZE(PSVT,2)) :: ZSV ! [aerosol concentration] -REAL,DIMENSION(SIZE(PSVT,1)) :: ZSIGMA ! [-] standard deviation -REAL,DIMENSION(SIZE(PSVT,1),NSP+NCARB+NSOA,JPMODE):: ZCTOTA -REAL,DIMENSION(SIZE(PSVT,1),JPMODE*3) :: ZM - -REAL,DIMENSION(NSP+NCARB+NSOA) :: ZFAC ! M3 / mass conversion factor -REAL :: ZDEN2MOL -REAL,DIMENSION(JPMODE*3) :: ZPMIN ! [aerosol units] minimum values for N, sigma, M -INTEGER :: JJ, JN ! [idx] loop counters -REAL :: ZINIRADIUSI, ZINIRADIUSJ -! -!------------------------------------------------------------------------------- -! -! 1. initialisation - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_AERO_PSD:PPP2AERO1D',0,ZHOOK_HANDLE) -IF (CRGUNIT=="MASS") THEN - ZINIRADIUSI = XINIRADIUSI * EXP(-3.*(LOG(XINISIGI))**2) - ZINIRADIUSJ = XINIRADIUSJ * EXP(-3.*(LOG(XINISIGJ))**2) -ELSE - ZINIRADIUSI = XINIRADIUSI - ZINIRADIUSJ = XINIRADIUSJ -END IF - - - - !Get minimum values possible - ZPMIN(1) = XN0IMIN - ZRGMIN = XCOEFRADIMIN * ZINIRADIUSI - ZPMIN(2) = ZPMIN(1) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGIMIN)**2) - ZPMIN(3) = ZPMIN(1) * (ZRGMIN**6)*EXP(18. * LOG(XSIGIMIN)**2) - - ZPMIN(4) = XN0JMIN - ZRGMIN = XCOEFRADJMIN * ZINIRADIUSJ - ZPMIN(5) = ZPMIN(4) * (ZRGMIN**3)*EXP(4.5 * LOG(XSIGJMIN)**2) - ZPMIN(6) = ZPMIN(4) * (ZRGMIN**6)*EXP(18. * LOG(XSIGJMIN)**2) - - !Set density of aerosol, here dust (kg/m3) - ! Aerosol Density -! Cf Ackermann (all to black carbon except water) - - !Set molecular weightn g/mol - ZMI(:) = 250. - ZMI(JP_AER_SO4) = 98. - ZMI(JP_AER_NO3) = 63. - ZMI(JP_AER_NH3) = 17. - ZMI(JP_AER_H2O) = 18. - IF (NSOA .EQ. 10) THEN - ZMI(JP_AER_SOA1) = 88. - ZMI(JP_AER_SOA2) = 180. - ZMI(JP_AER_SOA3) = 1.5374857E3 - ZMI(JP_AER_SOA4) = 1.9586780E3 - ZMI(JP_AER_SOA5) = 195. - ZMI(JP_AER_SOA6) = 195. - ZMI(JP_AER_SOA7) = 165. - ZMI(JP_AER_SOA8) = 195. - ZMI(JP_AER_SOA9) = 270. - ZMI(JP_AER_SOA10) = 210. - END IF - -! conversion into mol.cm-3 -ZDEN2MOL = 1E-6 * XAVOGADRO / XMD -! -DO JJ=1, SIZE(PSVT,2) - ZSV(:,JJ) = PSVT(:,JJ) * ZDEN2MOL * PRHODREF(:) -ENDDO -! -DO JJ=1,NSP+NCARB+NSOA - ZFAC(JJ)=(4./3.)*XPI*XRHOI(JJ)*1.e-9 -ENDDO -! -!------------------------------------------------------------------------------- -! -!* 2 transfer aerosol mass from gas to aerosol variables -! (and conversion of mol.cm-3 --> microgram/m3) -! -ZCTOTA(:,:,:) = 0. -! aerosol phase - ZCTOTA(:,JP_AER_SO4,1) = ZSV(:,JP_CH_SO4i)*ZMI(JP_AER_SO4)/6.0221367E+11 - ZCTOTA(:,JP_AER_SO4,2) = ZSV(:,JP_CH_SO4j)*ZMI(JP_AER_SO4)/6.0221367E+11 - - ZCTOTA(:,JP_AER_NO3,1) = ZSV(:,JP_CH_NO3i)*ZMI(JP_AER_NO3)/6.0221367E+11 - ZCTOTA(:,JP_AER_NO3,2) = ZSV(:,JP_CH_NO3j)*ZMI(JP_AER_NO3)/6.0221367E+11 - - ZCTOTA(:,JP_AER_NH3,1) = ZSV(:,JP_CH_NH3i)*ZMI(JP_AER_NH3)/6.0221367E+11 - ZCTOTA(:,JP_AER_NH3,2) = ZSV(:,JP_CH_NH3j)*ZMI(JP_AER_NH3)/6.0221367E+11 -! -! water - ZCTOTA(:,JP_AER_H2O,1) = ZSV(:,JP_CH_H2Oi)*ZMI(JP_AER_H2O)/6.0221367E+11 - ZCTOTA(:,JP_AER_H2O,2) = ZSV(:,JP_CH_H2Oj)*ZMI(JP_AER_H2O)/6.0221367E+11 -! -! primary organic carbon - ZCTOTA(:,JP_AER_OC,1) = ZSV(:,JP_CH_OCi)*ZMI(JP_AER_OC)/6.0221367E+11 - ZCTOTA(:,JP_AER_OC,2) = ZSV(:,JP_CH_OCj)*ZMI(JP_AER_OC)/6.0221367E+11 -! -! primary black carbon - ZCTOTA(:,JP_AER_BC,1) = ZSV(:,JP_CH_BCi)*ZMI(JP_AER_BC)/6.0221367E+11 - ZCTOTA(:,JP_AER_BC,2) = ZSV(:,JP_CH_BCj)*ZMI(JP_AER_BC)/6.0221367E+11 -! -IF (NSOA .EQ. 10) THEN - ZCTOTA(:,JP_AER_SOA1,1) = ZSV(:,JP_CH_SOA1i)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA1,2) = ZSV(:,JP_CH_SOA1j)*ZMI(JP_AER_SOA1)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA2,1) = ZSV(:,JP_CH_SOA2i)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA2,2) = ZSV(:,JP_CH_SOA2j)*ZMI(JP_AER_SOA2)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA3,1) = ZSV(:,JP_CH_SOA3i)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA3,2) = ZSV(:,JP_CH_SOA3j)*ZMI(JP_AER_SOA3)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA4,1) = ZSV(:,JP_CH_SOA4i)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA4,2) = ZSV(:,JP_CH_SOA4j)*ZMI(JP_AER_SOA4)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA5,1) = ZSV(:,JP_CH_SOA5i)*ZMI(JP_AER_SOA5)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA5,2) = ZSV(:,JP_CH_SOA5j)*ZMI(JP_AER_SOA5)/6.0221367E+11 - - ZCTOTA(:,JP_AER_SOA6,1) = ZSV(:,JP_CH_SOA6i)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA6,2) = ZSV(:,JP_CH_SOA6j)*ZMI(JP_AER_SOA6)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA7,1) = ZSV(:,JP_CH_SOA7i)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA7,2) = ZSV(:,JP_CH_SOA7j)*ZMI(JP_AER_SOA7)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA8,1) = ZSV(:,JP_CH_SOA8i)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA8,2) = ZSV(:,JP_CH_SOA8j)*ZMI(JP_AER_SOA8)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA9,1) = ZSV(:,JP_CH_SOA9i)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA9,2) = ZSV(:,JP_CH_SOA9j)*ZMI(JP_AER_SOA9)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA10,1) = ZSV(:,JP_CH_SOA10i)*ZMI(JP_AER_SOA10)/6.0221367E+11 - ZCTOTA(:,JP_AER_SOA10,2) = ZSV(:,JP_CH_SOA10j)*ZMI(JP_AER_SOA10)/6.0221367E+11 -END IF -! -!------------------------------------------------------------------------------- -! -!* 3 calculate moment 3 from total aerosol mass -! -ZM(:,2) = 0. -ZM(:,5) = 0. -DO JJ = 1,NSP+NCARB+NSOA - ZM(:,2) = ZM(:,2)+ZCTOTA(:,JJ,1)/ZFAC(JJ) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - ZM(:,5) = ZM(:,5)+ZCTOTA(:,JJ,2)/ZFAC(JJ) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) -ENDDO -! -!------------------------------------------------------------------------------- -! -!* 4 set moment 0 -! - ZM(:,1)= MAX(ZSV(:,JP_CH_M0i) * 1E+6, 1.E-10) ! molec_{aer}/m3_{air} - ZM(:,4)= MAX(ZSV(:,JP_CH_M0j) * 1E+6, 1.E-10) ! molec_{aer}/m3_{air} -! -!------------------------------------------------------------------------------- -! -!* 5 set moment 6 ==> um6_{aer}/m3_{air} -! -IF (LVARSIGI) THEN ! set M6 variable standard deviation - ZM(:,3) = MAX(ZSV(:,JP_CH_M6i), 1E-80) - - ZSIGMA(:)=ZM(:,2)**2/(ZM(:,1)*ZM(:,3)) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGIMAX) - ZSIGMA(:) = XSIGIMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGIMIN) - ZSIGMA(:) = XSIGIMIN - END WHERE - ZM(:,3) = ZM(:,1) & - * ( (ZM(:,2)/ZM(:,1))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:))**2))**6 & - * exp(18.*log(ZSIGMA(:))**2) - - IF(PRESENT(PSIG1D)) PSIG1D(:,1) = ZSIGMA(:) - -ELSE ! fixed standard deviation - ZM(:,3) = ZM(:,1) & - * ( (ZM(:,2)/ZM(:,1))**(1./3.) & - * exp(-(3./2.)*log(XINISIGI)**2))**6 & - * exp(18.*log(XINISIGI)**2) - - IF(PRESENT(PSIG1D)) PSIG1D(:,1) = XINISIGI -END IF - -IF (LVARSIGJ) THEN ! set M6 variable standard deviation - ZM(:,6) = MAX(ZSV(:,JP_CH_M6j), 1E-80) - - ZSIGMA(:)=ZM(:,5)**2/(ZM(:,4)*ZM(:,6)) - ZSIGMA(:)=MIN(1-1E-10,ZSIGMA(:)) - ZSIGMA(:)=MAX(1E-10,ZSIGMA(:)) - ZSIGMA(:)= LOG(ZSIGMA(:)) - ZSIGMA(:)= EXP(1./3.*SQRT(-ZSIGMA(:))) - WHERE (ZSIGMA(:) > XSIGJMAX) - ZSIGMA(:) = XSIGJMAX - END WHERE - WHERE (ZSIGMA(:) < XSIGJMIN) - ZSIGMA(:) = XSIGJMIN - END WHERE - - ZM(:,6) = ZM(:,4) & - * ( (ZM(:,5)/ZM(:,4))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:))**2))**6 & - * exp(18.*log(ZSIGMA(:))**2) - - IF(PRESENT(PSIG1D)) PSIG1D(:,2) = ZSIGMA(:) - -ELSE ! fixed standard deviation - ZM(:,6) = ZM(:,4) & - * ( (ZM(:,5)/ZM(:,4))**(1./3.) & - * exp(-(3./2.)*log(XINISIGJ)**2))**6 & - * exp(18.*log(XINISIGJ)**2) - - IF(PRESENT(PSIG1D)) PSIG1D(:,2) = XINISIGJ -END IF - - -!------------------------------------------------------------------------------- -! -!* 6 calculate modal parameters from moments -! -DO JN=1,JPMODE - IF(PRESENT(PN1D)) PN1D(:,JN) = ZM(:,NM0(JN)) - - IF(PRESENT(PRG1D)) PRG1D(:,JN)=(ZM(:,NM3(JN))**4. & - / (ZM(:,NM6(JN))*ZM(:,NM0(JN))**3.))**(1./6.) - -ENDDO -! -IF(PRESENT(PCTOTA)) PCTOTA(:,:,:) = ZCTOTA(:,:,:) -IF(PRESENT(PM1D)) PM1D(:,:) = ZM(:,:) -! -IF (LHOOK) CALL DR_HOOK('MODE_AERO_PSD:PPP2AERO1D',1,ZHOOK_HANDLE) -END SUBROUTINE PPP2AERO1D -! -! -END MODULE MODE_AERO_PSD diff --git a/src/arome/chem/module/mode_amain.F90 b/src/arome/chem/module/mode_amain.F90 deleted file mode 100644 index 99af6d99bafdb445f6fbf57b0dc39d349907786d..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_amain.F90 +++ /dev/null @@ -1,372 +0,0 @@ -! ######spl -MODULE MODE_AMAIN -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - USE MODD_BINSOLU, only : & - molalbinA - - USE MODD_GLO, only: & - NBSPA & - ,MWA & - ,VPA_298 & - ,NKA & - ,K_A_298 - - IMPLICIT NONE - - PUBLIC - PRIVATE :: SATURATION - -CONTAINS -!*********************************************************************** -!Purpose: Starting point of Type A routine. Performs 2 functions: (1) -! gas/particle partition of organic compounds based on available -! water or saturation, (2) calculate water associated with organic -! solutes, (3) calculate total organic anion concnetrations, -! -!Arguments: 1. *aero: initial guesses of Ai in same units as inputs ug/m3 -! also contain final output from newt -! 2. *aeros: solid concentrations (also used to temporarily store -! input PM concentrations in LWC = 0 absorption case with -! no newton, and PM from absorption before water is added) -! -!Return: 1. deltaLWC is the output for water associated with the organics -! in microgram/m3 air -! -!Data Needed: -! Input read in main and passed unsing global variables -! totA[i] (ug/m3 air), acHP (mole/kg water), -! LWC (ug/m3 air), RH (between 0 and 1), temperature (K) -! -! Parameters: NK = no. of eq. relationship for each solute -! K = partition parameters H and K -! Ai, Gi, W in ug per m3 air units -! gamma in mole fraction units, change reference -! state to Henry's law -! {H+} in moles per kg solvent, -! MW = Molecular weights in the order defined below -! borrowing MW[0] to store MW(water) -! DRH = deliquescence humidities for molecules -! (still need data) -! VP = vapor pressure in units of mass (ug) per m3 air -! pure liquid-gas partitioning: -! (1) deliquescent species -! (2) input LWC = 0 from inorganic species 5-29-99 -!Notes: -! Molecules (6) -! 1. Propandioic acid (twice dissociating) -! 2. C8 dien-dioic acid with an aldehyde branch (twice dissociating) -! 3. C8 hydroxy-dien-dial (non-dissociating) -! 4. C9 hydroxy-carbonyl acid with one double bond (dissociating) -! 5. C10 hydroxy-carbonyl aldehyde (non-dissociating) -! 6. butandioic acid (twice dissociating) -! -! Solutes (13) -! 1. Propandioic acid (H2A1) -! 2. Hydrogen Propanoate (HA1-) -! 3. Propanoate (A1=) -! 4. C8 aldehyde-branched dien-dioic acid (H2A2) -! 5. C8 aldehyde-branched hydrogen dienoiate (HA2-) -! 6. C8 aldehyde-branched dienoiate (A2=) -! 7. C8 hydroxy diendial (A3) -! 8. C9 hydroxy carbonyl unsaturated acid (HA4) -! 9. C9 hydroxy carbonyl unsaterated anion (A4-) -! 10. C10 hydroxy carbonyl aldehyde (A5) -! 11. butandioic acid (H2A6) -! 12. hydrogen butanoate (HA6-) -! 13. butanoiate (A6=) -! -! Cases: -! 1. LWC > 0 -! A) RH > DRH[i] - aqueous phase (with ions) -! B) RH < DRH[i] -! (i) totA > VP - gas phase = VP -! - solid phase (no water associated with PM phase i) -! (ii) totA < VP - gas phase only -! 2. LWC = 0 (option 1, saturation) -! A) RH > DRH[i] -! (i) totA > VP - gas phase = VP -! - aq phase molecules only = totA[i] - VP[i] -! (ii) totA < VP - gas phase only -! B) RH < DRH[i] -! (i) totA > VP - gas phase = VP -! - solid phase (no water associated with PM phase i) -! (ii) totA < VP - gas phase only -! 2. LWC = 0 (option 2, absorption) -! A) RH > DRH - gas/liquid partition, liquid phase -! associated with organic water (molecules, no ions) -! B) RH < DRH - gas/liquid partition, no water in liquid phase -! -!Revisions: 1. Developed by Betty Pun, AER, Jan 99 under EPRI for prototype -! Type A module with 2 compounds: malic acid and glyoxalic acid -! using newt, the globally convergent multi-dimensional -! Newton's method to solve the non-linear simultaneous equations. -! NR convension index 1 .. n; most arrays run from 1 to NSP+1 -! -! 2. Added code May 99 to deal with LWC input = 0 -! calculate gas-PM partition based on VPsat -! calculate water associated with organics (H2M RH < DRH) -! -! 3. Under CARB funding, modified code October 99 to -! perform the partition of 6 compounds. Removed hard-wired -! code regarding equations solved -! -! 4. Modified to comply with Models-3 coding standard, Betty Pun, -! AER, November 99 -! -! 5. Included flag to solve for water content based on ZSR with -! binary solution characteristics stored in file. -! -! 6. Combine Type A and B, Betty Pun Apr 00 -! 6a. bkp 6/00 change criteria to deal with low LWC cases: -! old criteria was: -! if ((NK[i] >= 2) && (K[jeq]/acHP > Critsol)) { -! 7. Add option to do absorption when LWC = 0 11/00 -! 8. For 3-D, add option to solve absorption based on fixed PM -!****************************************************************************/ - - - SUBROUTINE AMAIN ( & - totA & !I [ug/m3] total (gas + aerosol + ions) of component - ,AERO & !O [ug/m3] liquid aerosol concentrations - ,AEROS & !O [ug/m3] solid aerosol concentration - ,GAS & !O [ug/m3] gaseous concentration - ,LWC & !I [ug/m3] liquid water content already available for partitioning - ,acHP & !I [umol/kg_{water}] proton concentration - ,deltaLWC & !O [ug/m3] liquid water content associated with organics - ,ORGANION & !O [mole/m3] negative charge associated with organics - ,RH & !I [0-1] relative humdity - ,TEMPK & !I [K] Temperature - ) - - USE mode_typea - use mode_zsrpun - - !********************************************************************************************** - !Make initial gas phase concentrations: For a set of acids we have the following equilibriums - !1) H2A(g) <--> H2A - !2) H2A <--> H+ + HA- - !3) HA- <--> H+ + A(2-) - - !We have the following equations: - !1) K(1) = H2A/H2A(g) (Henry's law) - !2) [H+]*[HA-]/[H2A] = K(2) (acid dissociation) - !3) [H+]*[A(2-)]/[HA-] = K(3) (acid dissociation) - - !The mole balance: - !totAER = H2A + HA- + A(2-) - !totAER = K(1)*[H2A(g)] + K(2)[H2A]/[H+] + K(3)*[HA-]/[H+] - !totAER = K(1)*[H2A(g)] + K(2)K(1)[H2A(g)]/[H+] + K(3)K(2)K(1)[H2A(g)]/([H+])^2 - !totAER = K(1)*[H2A(g)]* (1 + K(2)/[H+] + K(3)K(2)/([H+])^2) - !totAER = [H2A]*(1 + K(2)/[H+] + K(3)K(2)/([H+])^2) = [H2A]/"nominator" - !*********************************************************************************************** - - IMPLICIT NONE - - !INPUT - REAL, DIMENSION(:), INTENT(IN) :: TEMPK !I [K] temperature - REAL, DIMENSION(:), INTENT(IN) :: RH !I [0-1] relative humidity - REAL, DIMENSION(:,:), INTENT(IN) :: totA !I [ug/m3] total (gas+aerosol) concentration - REAL, DIMENSION(:), INTENT(IN) :: LWC !I [ug/m3] Liquid water content already ready for partitioning - REAL, DIMENSION(:), INTENT(IN) :: acHP !I [umol/kg_{water}] proton concentration - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: GAS !O [ug/m3] gas phase concentrations - REAL, DIMENSION(:,:), INTENT(OUT) :: AERO !O [ug/m3] liquid aerosol concentrations - REAL, DIMENSION(:,:), INTENT(OUT) :: AEROS !O [ug/m3] solid aerosol concentrations - REAL, DIMENSION(:), INTENT(OUT) :: deltaLWC !O [ug/m3] liquid water content assiciated with organics - REAL, DIMENSION(:), INTENT(OUT) :: ORGANION !O [mole/m3] negative charge associated with organics - - !LOCAL, AUTOMATIC ARRAYS - REAL, DIMENSION(SIZE(TEMPK)) :: THISTERM !Term in nominator in mass balance eqn (see above) - REAL, DIMENSION(SIZE(TEMPK)) :: NOMINATOR !Nominator in mass balance eqn (see above) - LOGICAL, DIMENSION(SIZE(GAS,1),SIZE(GAS,2)) :: LCRITSOL ![T/F] True if soluble species - - !LOCAL, SMALL COUNTERS AND OTHER VARS - INTEGER :: I ![idx] counter for main components (1-->NBSPA) - INTEGER :: J ![idx] counter for sub-componnets or ions - INTEGER :: COMP_IDX ![idx] index for aerosol components (1-->NAAEROA) - INTEGER :: COMP_IDX2 ![idx] index for aerosol sub-components (1-->NAAEROA) - REAL, PARAMETER :: HIGHFRC=0.999999 ![frc] guess for fraction of total in aq. phase if very soluble - - - !****************************************************************************** - - !Start part which will make guesses for the - !aerosol concentrations before the iterations start - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_AMAIN:AMAIN',0,ZHOOK_HANDLE) - COMP_IDX = 1 - DO I=1,NBSPA - !Check for places where we think that the main acid - !can dissolve well in the aquous phase, that is: - !1) [H+] is low - !2) [LWC] is high - !3) the main aerosol can dissolve at least once - LCRITSOL(:,I)= & - K_A_298(COMP_IDX)*LWC(:)/acHP(:).GT.CRITSOL.AND.NKA(I).ge.2 - - !Prepare for next sub-component - COMP_IDX=COMP_IDX+1 - - !Skip sub-components - DO J=2,NKA(I) - COMP_IDX = COMP_IDX +1 - ENDDO - ENDDO - - IF(LBOX)THEN - DO I=1,NBSPA - IF(LCRITSOL(1,I))write(6,*)"comp", I," very soluble" - ENDDO - ENDIF - - COMP_IDX = 1 - !Start loop on non-dissociated components - DO I=1,NBSPA - - !Get the nominator in the mass balance equation above - !is used to find the concentration of the undissociated species (e.g. H2A) - NOMINATOR(:)=1.d0 - THISTERM(:)=1.d0 - - COMP_IDX2 = COMP_IDX - DO J=2,NKA(I) - COMP_IDX2=COMP_IDX2 + 1 !go to first sub-component (ion) - THISTERM(:)=THISTERM(:)*K_A_298(COMP_IDX2) & - /acHP(:)*MWA(COMP_IDX2-1)/MWA(COMP_IDX2) - - NOMINATOR(:)=NOMINATOR(:) + THISTERM(:) - ENDDO - - !Check if main component is soluble - WHERE(LCRITSOL(:,I)) !Very soluble species - - !Get concentration of main component from mass balance equation - AERO(:,COMP_IDX) = HIGHFRC*totA(:,I) & !guess: totAER = totA*HIGHFRC ~= totA - /NOMINATOR(:) - - ELSEWHERE - - !Places where the acid is not so soluble, assume totA ~=gas - !use Henry's law on non-dissociative acid - AERO(:,COMP_IDX) = totA(:,I) & !Guess: GAS =totA - * K_A_298(COMP_IDX) * LWC(:) & - /(1.d0 + K_A_298(COMP_IDX)*LWC(:)) - - END WHERE - - IF(LBOX)THEN - write(6,'(a,2i5,2e15.5)')"guess", I, COMP_IDX, totA(:,I), AERO(:,COMP_IDX) - ENDIF - - !Prepare for next component - COMP_IDX = COMP_IDX +1 - - !Set the concentrations of the sub-components - DO J=2,NKA(I) - AERO(:,COMP_IDX) = K_A_298(COMP_IDX) * AERO(:,COMP_IDX-1)/acHP(:) - IF(LBOX)THEN - write(6,'(a,2i5,2e15.5)')"guess", I, COMP_IDX, totA(:,I), AERO(:,COMP_IDX) - ENDIF - COMP_IDX = COMP_IDX +1 - ENDDO - IF(LBOX)write(6,*)" " - - ENDDO !Loop on main components - - !Now that we have guesses, call type-A to iterate to solution - CALL TYPEA( & - AERO & !I/O [ug/m3] aerosol concentrations (main and ion) - ,GAS & !O [ug/m3] gas phase concentrations - ,totA & !I [ug/m3] total (gas+aer) concentrations - ,TEMPK & !I [K] temperature - ,LWC & !I [ug/m3] liquid water content available for partitioning - ,acHP & !I [mole_{H+}/kg_{water}] proton concentration - ) - - !Now we have all components in aquous phase, get the new LWC - !We need the new (H+ concentration too!) - CALL ZSRPUN( & - AERO & !I [ug/m3] aquous aerosol concentration - , RH & !I [0-1] relative humidity - ,deltaLWC & !O [ug/m3] LWC associated with organics - ,MOLALBINA & !I [umol/ug_{water}] molality of binary solutions - ,NBSPA & !I [nbr] number of species to take into account - ,NKA & !I [nbr] number of sub and main component for main component - ,MWA & !I [g/mol] molecular weight of species - ) - - !For now, we don't consider solid aerosols, so put it to zero - AEROS(:,:)=0.d0 - - !Get negative charge associated with organics - ORGANION(:)=0.d0 - COMP_IDX=1 - DO I=1,NBSPA - !No charge for first component - COMP_IDX=COMP_IDX+1 - DO J=2,NKA(I) - ORGANION(:)=ORGANION(:) & - + AERO(:,COMP_IDX)/MWA(COMP_IDX) & !moles of ion component - *dble(J-1) !charge of ion component - - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - - IF(LBOX)write(6,*)"LWC, deltaLWC", LWC, deltaLWC - - IF (LHOOK) CALL DR_HOOK('MODE_AMAIN:AMAIN',1,ZHOOK_HANDLE) - END SUBROUTINE AMAIN - - !*************************************************************** - - SUBROUTINE saturation(& - totA & !I [ug/m3] total (gas+aerosol) concentration - ,vp & !I [ug/m3] saturation vapor pressure - ,pmconc & !O [ug/m3] solid aerosol concentration - ,gasconc & !O [ug/m3] gas phase concentration - ) - - !************************************************************** - ! purpose: given total amount of a compound, - ! calculate partition based on saturation - ! if tot > vp, gas = vp, pm = (tot - vp) - ! if tot < vp, gas = tot pm = 0 - ! arguments: tot total amount (microgram/m3 air) of compound - ! vp vapor pressure (microgram/m3 air) of compound - ! *pmconc pointer to output of particulate-phase concentration - ! *gasconc pointer to output of gas-phase concentration - ! history: 1. coded 11/28/00 BKP to replace code in 2 locations: - ! - LWC > 0 and RH < DRH - ! - LWC = 0 any RH - ! - !****************************************************************/ - - IMPLICIT NONE - REAL, DIMENSION(:,:), INTENT(IN) :: totA !I [ug/m3] total (gas+aerosol) concentration - REAL, DIMENSION(:), INTENT(IN) :: VP !I [ug/m3] saturation vapor pressure - REAL, DIMENSION(:,:), INTENT(OUT) :: PMCONC !O [ug/m3] solid aerosol concentration - REAL, DIMENSION(:,:), INTENT(OUT) :: GASCONC !O [ug/m3] gas phase concentration - INTEGER :: I ![idx] conter for aerosol species - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_AMAIN:SATURATION',0,ZHOOK_HANDLE) - DO I=1,NBSPA - - WHERE(totA(:,I) > VP(I)) - PMCONC(:,I) = totA(:,I) - VP(I) - GASCONC(:,I) = VP(I) - ELSEWHERE - GASCONC(:,I)= totA(:,I) - PMCONC(:,I)=0.d0 - END WHERE - - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_AMAIN:SATURATION',1,ZHOOK_HANDLE) - END SUBROUTINE SATURATION - -END MODULE mode_amain diff --git a/src/arome/chem/module/mode_bmain.F90 b/src/arome/chem/module/mode_bmain.F90 deleted file mode 100644 index 57b58f6906bb97fc38abde51fe75bd1670701ce0..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_bmain.F90 +++ /dev/null @@ -1,103 +0,0 @@ -! ######spl -MODULE MODE_BMAIN -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - USE MODD_GLO !Global definitions - - IMPLICIT NONE - -CONTAINS - - SUBROUTINE BMAIN( & - CB & !I [ug/m3] total concentration - ,GAS & !I/O [ug/m3] gas phase concentrations - ,AERO & !I/O [ug/m3] - ,PAOM & !I [ug/m3] primary aerosol organic matter - ,TEMPK & !I [K] Temperature - ) - - USE mode_typeb - - IMPLICIT NONE - - !INPUT - REAL, INTENT(IN), DIMENSION(:,:) :: CB ![ug/m3] total concentration - REAL, INTENT(IN), DIMENSION(:) :: PAOM ![ug/m3] Primary aerosol organic matter - REAL, INTENT(IN), DIMENSION(:) :: TEMPK ![K] temperature - - !OUTPUT - REAL, INTENT(OUT), DIMENSION(:,:) :: GAS ![ug/m3] gas concentratin - REAL, INTENT(OUT), DIMENSION(:,:) :: AERO ![ug/m3] aerosol conc - - !LOCAL VARIABLES - REAL, DIMENSION(SIZE(GAS,1)) :: GUESSSOA ![ug/m3] guess for soa - REAL :: GUESSFRC ![frc] guess for fraction of total in aerosol phase - - INTEGER :: II ![idx] counters - - !Set the total concentration of type B species - !CB(:,:) = GAS(:,:) + AERO (:,:) - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_BMAIN:BMAIN',0,ZHOOK_HANDLE) - GUESSSOA(:)=0.0 !Used later if SOA >> PAOM - - DO II=1,NBSPB - !Get initial guesses for aerosol part - !If component has high vapor pressure, compared to POA - !==>guess 30% of total - !If component has low vapor pressure, compared to POA - !==> guess 90% of total - !This guessing is not really OK for cases where SOA is the - !most important solvent species. In those cases, we get longer iterations - WHERE(VPB(II)/(PAOM(:)+1.d-20) > VPCRIT ) - AERO(:,II) = 0.3 * CB(:,II) - GUESSSOA(:)=GUESSSOA(:)+AERO(:,II) - ELSEWHERE - AERO(:,II) = 0.9 * CB(:,II) - GUESSSOA(:)=GUESSSOA(:)+AERO(:,II) - ENDWHERE - ENDDO - - !Special calculation for the cases where the SOA part is a lot greater - !than the POA part: Need special guess: - DO II=1,NBSPB - IF(VPB(II) < VPCRIT) THEN - GUESSFRC=0.9d0 - ELSE - GUESSFRC=0.3d0 - ENDIF - - !Since the above test did not work well if POA >> SOA - !We have to check if the GUESSSOA variable is large compared to POA - WHERE(10.0*PAOM(:) < GUESSSOA(:)) - - AERO(:,II) = GUESSFRC * CB(:,II) - - ENDWHERE!Check on total SOA larger than POA - - ENDDO !Loop on SOA components - - !Limit the new aerosol values to reasonable values - !WHERE (AERO(:,:) < 0.0) - ! AERO(:,:)=0.d0 - !ELSEWHERE(AERO(:,:) > CB(:,:)) - ! AERO(:,:) = CB(:,:) - !ENDWHERE - - !Get the gas phase concentration - GAS(:,:)=CB(:,:) - AERO (:,:) - - CALL TYPEB( & - PAOM & !I [ug/m3] primary organic aerosol - ,AERO & !I/O [ug/m3] aerosol concentrations - ,GAS & !I/O [ug/m3] gas phase concentrations - ,CB & !I [ug/m3] total concentrations - ,TEMPK & !I [K] temperature - ) - - IF (LHOOK) CALL DR_HOOK('MODE_BMAIN:BMAIN',1,ZHOOK_HANDLE) - END SUBROUTINE BMAIN - -END MODULE MODE_BMAIN diff --git a/src/arome/chem/module/mode_dust_psd.F90 b/src/arome/chem/module/mode_dust_psd.F90 deleted file mode 100644 index 793cb7468d1d86c7782c07871ce80b04198a9eeb..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_dust_psd.F90 +++ /dev/null @@ -1,531 +0,0 @@ -! ######spl - MODULE MODE_DUST_PSD - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################## -!! -!! PURPOSE -!! ------- -!! MODULE DUST PSD (Particle Size Distribution) -!! Purpose: Contains subroutines to convert from transported variables (ppp) -!! to understandable aerosol variables, e.g. #/m3, kg/m3, sigma, R_{n} -!! -!! AUTHOR -!! ------ -!! Alf Grini (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -!------------------------------------------------------------------------------- -! -USE MODD_CSTS_DUST !Constants which are important for dust calculations -USE MODD_DUST !Dust module which contains even more constants -! -IMPLICIT NONE -! -CONTAINS -! -!! ############################################################ - SUBROUTINE PPP2DUST( & - PSVT & !I [ppp] input scalar variables (moment of distribution) - , PRHODREF & !I [kg/m3] density of air - , PSIG3D & !O [-] standard deviation of aerosol distribution - , PRG3D & !O [um] number median diameter of aerosol distribution - , PN3D & !O [#/m3] number concentration of aerosols - , PMASS3D & !O [kg/m3] mass concentration of aerosol - , PM3D & !O aerosols moments 0, 3 and 6 - ) -!! ############################################################ -! -!! -!! PURPOSE -!! ------- -!! Translate the three moments M0, M3 and M6 given in ppp into -!! Values which can be understood more easily (R, sigma, N, M) -!! -!! CALLING STRUCTURE NOTE: OPTIONAL VARIABLES -!! ------- -!! CALL PPP2AEROS(PSVT, PRHODREF, PSIG3D=SIGVAR, & -!! PRG3D=RVAR, PN3D=NVAR, PM3D=MASSVAR) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! 2005 Alf Grini (CNRM) -!! 2006 Jean-Pierre Chaboureau (LA) -!! -!! EXTERNAL -!! -------- -!! None -!! - IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !I [ppp] first moment -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF !I [kg/m3] density of air - -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PSIG3D !O [-] standard deviation -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PRG3D !O [um] number median diameter -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PN3D !O [#/m3] number concentration -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PMASS3D !O [kg_{aer}/m3] mass concentration -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PM3D !O aerosols moments -! -! -!* 0.2 declarations local variables -! -REAL :: ZRHOI ! [kg/m3] density of aerosol -REAL :: ZMI ! [kg/mol] molar weight of aerosol -REAL :: ZRGMIN ! [um] minimum radius accepted -REAL :: ZSIGMIN ! minimum standard deviation accepted -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM ! [aerosol units] local array which goes to output later -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZSV ! [dusts moment concentration] -REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZSIGMA ! [-] standard deviation -REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZRG ! [um] number median diameter -REAL,DIMENSION(:), ALLOCATABLE :: ZMMIN ! [aerosol units] minimum values for N, sigma, M -INTEGER,DIMENSION(:), ALLOCATABLE :: NM0 ! [idx] index for Mode 0 in passed variables -INTEGER,DIMENSION(:), ALLOCATABLE :: NM3 ! [idx] indexes for Mode 3 in passed variables -INTEGER,DIMENSION(:), ALLOCATABLE :: NM6 ! [idx] indexes for Mode 6 in passed variables -REAL,DIMENSION(:), ALLOCATABLE :: ZINIRADIUS ! initial mean radius -INTEGER :: JN,IMODEIDX,JJ ! [idx] loop counters -! -!------------------------------------------------------------------------------- -! -! 1.1 initialisation -! -!Calculations here are for one mode only -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUST_PSD:PPP2DUST',0,ZHOOK_HANDLE) -ALLOCATE (NM0(NMODE_DST)) -ALLOCATE (NM3(NMODE_DST)) -ALLOCATE (NM6(NMODE_DST)) -ALLOCATE (ZM(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3), NMODE_DST*3)) -ALLOCATE (ZMMIN(NMODE_DST*3)) -ALLOCATE (ZSIGMA(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3))) -ALLOCATE (ZRG(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3))) -ALLOCATE (ZSV(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3), SIZE(PSVT,4))) -ALLOCATE (ZINIRADIUS(NMODE_DST)) - -ZSV(:,:,:,:) = MAX(PSVT(:,:,:,:), 1.E-80) - -DO JN=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JN) - !Calculations here are for one mode only - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) - END IF - - !Set counter for number, M3 and M6 - NM0(JN) = 1+(JN-1)*3 - NM3(JN) = 2+(JN-1)*3 - NM6(JN) = 3+(JN-1)*3 - !Get minimum values possible - ZMMIN(NM0(JN)) = XN0MIN(IMODEIDX) - ZRGMIN = ZINIRADIUS(JN) - IF (LVARSIG) THEN - ZSIGMIN = XSIGMIN - ELSE - ZSIGMIN = XINISIG(IMODEIDX) - ENDIF - ZMMIN(NM3(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**3)*EXP(4.5 * LOG(ZSIGMIN)**2) - ZMMIN(NM6(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**6)*EXP(18. * LOG(ZSIGMIN)**2) -END DO -! -!Set density of aerosol, here dust (kg/m3) -ZRHOI = XDENSITY_DUST -!Set molecular weight of dust !NOTE THAT THIS IS NOW IN KG -ZMI = XMOLARWEIGHT_DUST -! -! -DO JN=1,NMODE_DST - ! - IF (LVARSIG) THEN ! give M6 (case of variable standard deviation) - ! - !Get number concentration (#/molec_{air}==>#/m3) - ZM(:,:,:,NM0(JN))= & - ZSV(:,:,:,1+(JN-1)*3) & !#/molec_{air} - * XAVOGADRO & !==>#/mole - / XMD & !==>#/kg_{air} - * PRHODREF(:,:,:) !==>#/m3 - ! - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - ZM(:,:,:,NM3(JN)) = & - ZSV(:,:,:,2+(JN-1)*3) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3 & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - !Limit mass concentration to minimum value - ZM(:,:,:,NM3(JN)) = MAX(ZM(:,:,:,NM3(JN)), ZMMIN(NM3(JN))) - ! - ZM(:,:,:,NM6(JN)) = ZSV(:,:,:,3+(JN-1)*3) & !um6/molec_{air}*(cm3/m3) - * 1.d-6 & !==> um6/molec_{air} - * XAVOGADRO & !==> um6/mole_{air} - / XMD & !==> um6/kg_{air} - * PRHODREF(:,:,:) !==> um6/m3_{air} - !Limit m6 concentration to minimum value - ZM(:,:,:,NM6(JN)) = MAX(ZM(:,:,:,NM6(JN)), ZMMIN(NM6(JN))) - ! - !Get sigma (only if sigma is allowed to vary) - !Get intermediate values for sigma M3^2/(M0*M6) (ORILAM paper, eqn 8) - ZSIGMA(:,:,:)=ZM(:,:,:,NM3(JN))**2/(ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM6(JN))) - !Limit the intermediate value, can not be larger than 1 - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - !Limit the value for intermediate, can not be smaller than 0 - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - !Calculate log(sigma) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - !Finally get the real sigma the negative sign is because of - !The way the equation is written (M3^2/(M0*M6)) instead of (M0*M6)/M3^3 - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - !Limit the value to reasonable ones - ZSIGMA(:,:,:) = MAX( XSIGMIN, MIN( XSIGMAX, ZSIGMA(:,:,:) ) ) - - ! - !Put back M6 so that it fits the sigma which is possibly modified above - !The following makes M6 consistent with N, R, SIGMA - ZM(:,:,:,NM6(JN)) = ZM(:,:,:,NM0(JN)) & - * ( (ZM(:,:,:,NM3(JN))/ZM(:,:,:,NM0(JN)))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:,:,:))**2))**6 & - * exp(18.*log(ZSIGMA(:,:,:))**2) - - ELSE ! compute M6 from M0, M3 and SIGMA - ! - ZSIGMA(:,:,:) = XINISIG(JPDUSTORDER(JN)) - - IF (LRGFIX_DST) THEN - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - ZM(:,:,:,NM3(JN)) = & - ZSV(:,:,:,JN) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3 & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - - ZM(:,:,:,NM3(JN)) = MAX(ZM(:,:,:,NM3(JN)), ZMMIN(NM3(JN))) - - ZM(:,:,:,NM0(JN))= ZM(:,:,:,NM3(JN))/& - ((ZINIRADIUS(JN)**3)*EXP(4.5 * LOG(XINISIG(JPDUSTORDER(JN)))**2)) - - ELSE - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - ZM(:,:,:,NM3(JN)) = & - ZSV(:,:,:,2+(JN-1)*2) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3 & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - - !Get number concentration (#/molec_{air}==>#/m3) - ZM(:,:,:,NM0(JN))= & - ZSV(:,:,:,1+(JN-1)*2) & !#/molec_{air} - * XAVOGADRO & !==>#/mole - / XMD & !==>#/kg_{air} - * PRHODREF(:,:,:) !==>#/m3 - - ! Limit concentration to minimum values - WHERE ((ZM(:,:,:,NM0(JN)) < ZMMIN(NM0(JN)) ).OR. & - (ZM(:,:,:,NM3(JN)) < ZMMIN(NM3(JN)) )) - ZM(:,:,:,NM0(JN)) = ZMMIN(NM0(JN)) - ZM(:,:,:,NM3(JN)) = ZMMIN(NM3(JN)) - PSVT(:,:,:,1+(JN-1)*2) = ZM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO * PRHODREF(:,:,:) ) - PSVT(:,:,:,2+(JN-1)*2) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - ENDWHERE - END IF - - ! - - ZM(:,:,:,NM6(JN)) = ZM(:,:,:,NM0(JN)) & - * ( (ZM(:,:,:,NM3(JN))/ZM(:,:,:,NM0(JN)))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:,:,:))**2))**6 & - * exp(18.*log(ZSIGMA(:,:,:))**2) - - ! - END IF - ! - !Get number median radius (eqn. 7 in Orilam manuscript) - ZRG(:,:,:)= & - ( & - ZM(:,:,:,NM3(JN))*ZM(:,:,:,NM3(JN))*ZM(:,:,:,NM3(JN))*ZM(:,:,:,NM3(JN)) & - /(ZM(:,:,:,NM6(JN))*ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM0(JN))) & - ) & - ** XSIXTH - !ZRG(:,:,:)=MIN(ZRG(:,:,:),ZINIRADIUS(JN)) - !Give the sigma-values to the passed array - IF(PRESENT(PSIG3D)) PSIG3D(:,:,:,JN) = ZSIGMA(:,:,:) - ! - !Set the number concentrations in the passed array - IF(PRESENT(PN3D)) PN3D(:,:,:,JN) = ZM(:,:,:,NM0(JN)) - ! - !Get the number median radius - IF(PRESENT(PRG3D)) PRG3D(:,:,:,JN)= ZRG(:,:,:) - ! - IF(PRESENT(PMASS3D))THEN - PMASS3D(:,:,:,JN)= & - ZM(:,:,:,NM0(JN)) & !#/m^3_{air} - * XPI*4./3. & - * ZRHOI & !==>kg/m^3_{aeros}/m^3_{air} - * ZRG(:,:,:) * ZRG(:,:,:) * ZRG(:,:,:) & - * XUM3TOM3 & !==>kg/m^3_{air} - * exp(4.5*log(ZSIGMA(:,:,:))*log(ZSIGMA(:,:,:))) - ENDIF -! -END DO !Loop on modes -! -IF(PRESENT(PM3D)) PM3D(:,:,:,:) = ZM(:,:,:,:) -! -DEALLOCATE(ZINIRADIUS) -DEALLOCATE(ZSV) -DEALLOCATE(ZRG) -DEALLOCATE(ZSIGMA) -DEALLOCATE(ZMMIN) -DEALLOCATE(ZM) -DEALLOCATE(NM6) -DEALLOCATE(NM3) -DEALLOCATE(NM0) -! -! -IF (LHOOK) CALL DR_HOOK('MODE_DUST_PSD:PPP2DUST',1,ZHOOK_HANDLE) -END SUBROUTINE PPP2DUST - -!! ############################################################ - SUBROUTINE DUST2PPP( & - PSVT & !IO [ppp] input scalar variables (moment of distribution) - , PRHODREF & !I [kg/m3] density of air - , PSIG3D & !I [-] standard deviation of aerosol distribution - , PRG3D & !I [um] number median diameter of aerosol distribution - ) -!! ############################################################ -! -!! -!! PURPOSE -!! ------- -!! Translate the dust Mass, RG and SIGMA in the three moments M0, M3 and M6 given in ppp -!! -!! CALLING STRUCTURE NOTE: OPTIONAL VARIABLES -!! ------- -!! CALL PPP2AEROS(PSVT, PRHODREF, PSIG3D=SIGVAR, & -!! PRG3D=RVAR, PN3D=NVAR) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Alf Grini (CNRM) -!! -!! EXTERNAL -!! -------- -!! None -!! - IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! - !INPUT - REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF !I [kg/m3] density of air - REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG3D !O [-] standard deviation - REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRG3D !O [um] number median diameter - - !OUTPUT - REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !IO [#/molec_{air}] first moment - !IO [molec_{aer}/molec_{air} 3rd moment - !IO [um6/molec_{air}*(cm3/m3)] 6th moment -! -! -!* 0.2 declarations local variables -! - REAL :: ZRHOI ! [kg/m3] density of aerosol - REAL :: ZMI ! [kg/mol] molar weight of aerosol - REAL :: ZRGMIN ! [um] minimum radius accepted - REAL :: ZSIGMIN ! minimum standard deviation accepted - REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM ! [aerosol units] local array which goes to output later - REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZSIGMA ! aersol standard deviation - REAL,DIMENSION(:), ALLOCATABLE :: ZMMIN ! [aerosol units] minimum values for N, sigma, M - REAL,DIMENSION(:), ALLOCATABLE :: ZINIRADIUS ! initial mean radius - INTEGER,DIMENSION(:), ALLOCATABLE :: NM0 ! [idx] index for Mode 0 in passed variables - INTEGER,DIMENSION(:), ALLOCATABLE :: NM3 ! [idx] indexes for Mode 3 in passed variables - INTEGER,DIMENSION(:), ALLOCATABLE :: NM6 ! [idx] indexes for Mode 6 in passed variables - INTEGER :: JJ, JN ! [idx] loop counters - INTEGER :: IMODEIDX -! -!------------------------------------------------------------------------------- -! -! 1.1 initialisation - - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_DUST_PSD:DUST2PPP',0,ZHOOK_HANDLE) - ALLOCATE (NM0(NMODE_DST)) - ALLOCATE (NM3(NMODE_DST)) - ALLOCATE (NM6(NMODE_DST)) - ALLOCATE (ZINIRADIUS(NMODE_DST)) - ALLOCATE (ZMMIN(NMODE_DST*3)) - ALLOCATE (ZM(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3), NMODE_DST*3)) - ALLOCATE (ZSIGMA(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3))) - - !Set density of aerosol, here dust (kg/m3) - ZRHOI = XDENSITY_DUST - !Set molecular weight of dust !NOTE THAT THIS IS NOW IN KG - ZMI = XMOLARWEIGHT_DUST -! - - ! PSVT need to be positive - PSVT(:,:,:,:) = MAX(PSVT(:,:,:,:), 1E-80) - - DO JN=1,NMODE_DST - IMODEIDX = JPDUSTORDER(JN) - !Calculations here are for one mode only - IF (CRGUNITD=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) * EXP(-3.*(LOG(XINISIG(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS(IMODEIDX) - END IF - - !Set counter for number, M3 and M6 - NM0(JN) = 1+(JN-1)*3 - NM3(JN) = 2+(JN-1)*3 - NM6(JN) = 3+(JN-1)*3 - - !Get minimum values possible - ZMMIN(NM0(JN)) = XN0MIN(IMODEIDX) - ZRGMIN = ZINIRADIUS(JN) - IF (LVARSIG) THEN - ZSIGMIN = XSIGMIN - ELSE - ZSIGMIN = XINISIG(IMODEIDX) - ENDIF - ZMMIN(NM3(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**3)*EXP(4.5 * LOG(ZSIGMIN)**2) - ZMMIN(NM6(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**6)*EXP(18. * LOG(ZSIGMIN)**2) - END DO - - !Set density of aerosol, here dust (kg/m3) - ZRHOI = XDENSITY_DUST - !Set molecular weight of dust !NOTE THAT THIS IS NOW IN KG - ZMI = XMOLARWEIGHT_DUST -! - DO JN=1,NMODE_DST - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - IF (LVARSIG) THEN - ZM(:,:,:,NM3(JN)) = & - PSVT(:,:,:,2+(JN-1)*3) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3 & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - ELSE - IF ((LRGFIX_DST)) THEN - ZM(:,:,:,NM3(JN)) = & - PSVT(:,:,:,JN) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3 & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - ZM(:,:,:,NM3(JN)) = MAX(ZM(:,:,:,NM3(JN)), ZMMIN(NM3(JN))) - ELSE - ZM(:,:,:,NM3(JN)) = & - PSVT(:,:,:,2+(JN-1)*2) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3 & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - END IF - END IF -! calculate moment 0 from dispersion and mean radius - ZM(:,:,:,NM0(JN))= ZM(:,:,:,NM3(JN))/& - ((PRG3D(:,:,:,JN)**3)*EXP(4.5 * LOG(PSIG3D(:,:,:,JN))**2)) - - -! calculate moment 6 from dispersion and mean radius - ZM(:,:,:,NM6(JN)) = ZM(:,:,:,NM0(JN)) * (PRG3D(:,:,:,JN)**6) * & - EXP(18 *(LOG(PSIG3D(:,:,:,JN)))**2) - - IF (LVARSIG) THEN - WHERE ((ZM(:,:,:,NM0(JN)) .LT. ZMMIN(NM0(JN))).OR.& - (ZM(:,:,:,NM3(JN)) .LT. ZMMIN(NM3(JN))).OR.& - (ZM(:,:,:,NM6(JN)) .LT. ZMMIN(NM6(JN)))) - ZM(:,:,:,NM0(JN)) = ZMMIN(NM0(JN)) - ZM(:,:,:,NM3(JN)) = ZMMIN(NM3(JN)) - ZM(:,:,:,NM6(JN)) = ZMMIN(NM6(JN)) - END WHERE - - ELSE IF (.NOT.(LRGFIX_DST)) THEN - - WHERE ((ZM(:,:,:,NM0(JN)) .LT. ZMMIN(NM0(JN))).OR.& - (ZM(:,:,:,NM3(JN)) .LT. ZMMIN(NM3(JN)))) - ZM(:,:,:,NM0(JN)) = ZMMIN(NM0(JN)) - ZM(:,:,:,NM3(JN)) = ZMMIN(NM3(JN)) - END WHERE - ENDIF - - - ! return to concentration #/m3 => (#/molec_{air} - IF (LVARSIG) THEN - PSVT(:,:,:,1+(JN-1)*3) = ZM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - - PSVT(:,:,:,2+(JN-1)*3) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3 * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - - PSVT(:,:,:,3+(JN-1)*3) = ZM(:,:,:,NM6(JN)) * XMD / & - ( XAVOGADRO*PRHODREF(:,:,:) * 1.d-6) - ELSE IF (LRGFIX_DST) THEN - PSVT(:,:,:,JN) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - ELSE - PSVT(:,:,:,1+(JN-1)*2) = ZM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - - PSVT(:,:,:,2+(JN-1)*2) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3) - END IF - -! - END DO !Loop on modes - -DEALLOCATE(ZINIRADIUS) -DEALLOCATE(ZMMIN) -DEALLOCATE(ZSIGMA) -DEALLOCATE(ZM) -DEALLOCATE(NM6) -DEALLOCATE(NM3) -DEALLOCATE(NM0) -! -IF (LHOOK) CALL DR_HOOK('MODE_DUST_PSD:DUST2PPP',1,ZHOOK_HANDLE) -END SUBROUTINE DUST2PPP -! -END MODULE MODE_DUST_PSD diff --git a/src/arome/chem/module/mode_dustopt.F90 b/src/arome/chem/module/mode_dustopt.F90 deleted file mode 100644 index b62685b1e0105ef9ac5339d55df00780d291676e..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_dustopt.F90 +++ /dev/null @@ -1,10457 +0,0 @@ -! ######spl - MODULE MODE_DUSTOPT - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ################### -! -!! -!! PURPOSE -!! ------- -!! -!! AUTHOR -!! ------ -!! Alf Grini (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! 29 Juin 2007 P. TULET (CNRM/GMEI) / M. Mallet (LA) -!! Introduction of new aerosols radiative index updated to the -!! west african dusts observed during the AMMA campaign -!! - - IMPLICIT NONE - PUBLIC - PRIVATE :: DUSTOPT_LKT - -CONTAINS - - !**************************************************** - SUBROUTINE DUSTOPT_GET( & - PSVT & !I [moments/molec_{air}] Transported moments of dust - ,PZZ & !I [m] height of layers - ,PRHODREF & !I [kg/m3] density of air - ,PPIZA_WVL & !O [-] single scattering albedo of dust layer for all SW wavelengths - ,PCGA_WVL & !O [-] assymetry factor for dust layer for all SW wavelengths - ,PTAUREL_WVL & !O [-] opt.depth/opt.depth(550) for dust layer for all SW wvl - ,PTAU550 & !O [-] opt.depth at 550nm for all dust layer - ,KSWB & !I [nbr] number of shortwave bands - ) - - - USE MODE_DUST_PSD !Conversion procedures from moments to radius, ,number, mass and sigma - USE MODD_DUST, ONLY : NMODE_DST - IMPLICIT NONE - - !INPUT - REAL, DIMENSION(:,:,:,:),INTENT(IN) :: PSVT !I [moments/molec_{air}] transported moments of dust - REAL, DIMENSION(:,:,:),INTENT(IN) :: PZZ !I [m] height of layers - REAL, DIMENSION(:,:,:),INTENT(IN) :: PRHODREF !I [kg/m3] density of air - INTEGER, INTENT(IN) :: KSWB !I [nbr] number of shortwave wavelengths - REAL, PARAMETER :: EPSILON=1.e-8 !a very low number for optical depth in a layer - - !OUTPUT - REAL, DIMENSION(:,:,:,:),INTENT(INOUT) :: PPIZA_WVL !O [-] single scattering albedo of dust layer for all SW wavelengths - REAL, DIMENSION(:,:,:,:),INTENT(INOUT) :: PCGA_WVL !O [-] assymetry factor for dust layer for all SW wavelengths - REAL, DIMENSION(:,:,:,:),INTENT(INOUT) :: PTAUREL_WVL !O [-] opt.depth/opt.depth(550) for dust layer for all SW wvl - REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PTAU550 !O [-] opt.depth at 550nm for all dust layer - - !LOCAL VARIABLES - REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3), SIZE(PSVT,4)) :: ZSVT - REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3), NMODE_DST) :: ZMASS ![kg/m3] mass of one dust mode - REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3), NMODE_DST) :: ZRADIUS ![um] number median radius of one dust mode - REAL, DIMENSION(SIZE(PSVT,1),SIZE(PSVT,2),SIZE(PSVT,3), NMODE_DST) :: ZSIGMA ![-] dispersion coefficient one dust mode - REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: ZTAU550_MDE ![-] opt.depth 550nm one mode - REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: ZTAU_WVL_MDE ![-] opt.depth @ wvl, one mode - REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: ZPIZA_WVL_MDE ![-] single scattering albedo @ wvl, one mode - REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: ZCGA_WVL_MDE ![-] assymetry factor @ wvl, one mode - INTEGER :: JMDE ![idx] counter for modes - INTEGER :: JWVL ![idx] counter for wavelengths - !Allocate arrays which size depend on number of modes - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUSTOPT_GET',0,ZHOOK_HANDLE) - ALLOCATE(ZTAU550_MDE(SIZE(PTAU550,1),SIZE(PTAU550,2),SIZE(PTAU550,3),NMODE_DST)) - ALLOCATE(ZTAU_WVL_MDE(SIZE(PTAU550,1),SIZE(PTAU550,2),SIZE(PTAU550,3),KSWB,NMODE_DST)) - ALLOCATE(ZPIZA_WVL_MDE(SIZE(PTAU550,1),SIZE(PTAU550,2),SIZE(PTAU550,3),KSWB,NMODE_DST)) - ALLOCATE(ZCGA_WVL_MDE(SIZE(PTAU550,1),SIZE(PTAU550,2),SIZE(PTAU550,3),KSWB,NMODE_DST)) - - - ZSVT(:,:,:,:) = PSVT(:,:,:,:) - - CALL PPP2DUST( & - ZSVT & !I [moments/molec_{air}] moments of dust for all modes - ,PRHODREF & !I [kg/m3] air density - ,PSIG3D=ZSIGMA & !O [-] dispersion coefficient - ,PRG3D=ZRADIUS & !O [um] number median radius - ,PMASS3D=ZMASS & !O [kg/m3] mass of dust - ) - - DO JMDE=1,NMODE_DST - !Get dust optical properties from look up tables - CALL DUSTOPT_LKT( & - ZRADIUS(:,:,:,JMDE) & !I [um] number median radius for current mode - ,ZSIGMA(:,:,:,JMDE) & !I [none] dispersion coefficient for current mode - ,ZMASS(:,:,:, JMDE) & !I [kg/m3] Mass of dust for current mode - ,ZTAU550_MDE(:,:,:,JMDE) & !O [-] optical depth at 550 nm wavelength - ,ZTAU_WVL_MDE(:,:,:,:,JMDE) & !O [-] opt.depth(lambda)/opt.depth(550nm) - ,ZPIZA_WVL_MDE(:,:,:,:,JMDE) & !O [-] single scattering coefficient at any wavelength - ,ZCGA_WVL_MDE(:,:,:,:,JMDE) & !O [-] assymetry factor at any wavelength - ,PZZ(:,:,:) & !I [m] height of layers - ,KSWB & !I [nbr] number of shortwave bands - ) - ENDDO !Loop on modes - - !Erase earlier value of optical depth at 550 nm - PTAU550(:,:,:)=0.d0 - - !Get total at 550 nm from all modes - DO JMDE=1,NMODE_DST - PTAU550(:,:,:) = & !Dust optical depth at 550 nm for all dust - PTAU550(:,:,:) & !Dust optical depth at 550 nm for all dust - + ZTAU550_MDE(:,:,:,JMDE) !Optical depth for one mode at 550 nm - ENDDO - - !Initialize output variables - PTAUREL_WVL(:,:,:,:)=0.d0 !Initialize opt.depth at wvl=lambda - PCGA_WVL(:,:,:,:)=0.d0 !Initialize assym.factor at wvl=lambda - PPIZA_WVL(:,:,:,:)=0.d0 !Initialize single scattering albedo at wvl=lambda - - - !Find the numerator in the expression for the average of the optical properties - DO JMDE=1,NMODE_DST !Number of modes - DO JWVL=1,KSWB !Number of SW wavelengths - - !Get sum of optical depth from all modes at wvl - PTAUREL_WVL(:,:,:,JWVL) = & !new opt.depth(lambda) / opt.depth(550) - PTAUREL_WVL(:,:,:,JWVL) & !old sum for all modes at wvl=lambda - +ZTAU_WVL_MDE(:,:,:,JWVL,JMDE) !optical depth for one mode at wvl=lambda - - !Get sum of all assymmetry factors from all modes at wvl=lambda - PCGA_WVL(:,:,:,JWVL) = & !New sum of assymetry factors - PCGA_WVL(:,:,:,JWVL) & !old sum of assymetry factors - +ZCGA_WVL_MDE(:,:,:,JWVL,JMDE) & !Assymetry factor for one mode and one wavelength - *ZTAU_WVL_MDE(:,:,:,JWVL,JMDE) & !Optical depth of this wavelength and mode - *ZPIZA_WVL_MDE(:,:,:,JWVL,JMDE) !Fraction of radiation scattered - - !Get sum of single scattering albdedo at wvl=lambda - PPIZA_WVL(:,:,:,JWVL) = & !New sum of single scattering albedo - PPIZA_WVL(:,:,:,JWVL) & !Old sum of single scattering albedo - +ZPIZA_WVL_MDE(:,:,:,JWVL,JMDE) & !SSA for onen mode and one wavelength - *ZTAU_WVL_MDE(:,:,:,JWVL,JMDE) !Optical depth for this wavelength and mode - - ENDDO - ENDDO - - !Compute the output values for dust optical properties - DO JWVL=1,KSWB - - !Divide total single scattering albdeo by total optical depth at this wavelength - !This is needed since we weight all single scattering alebdos by wavelengths just above - PPIZA_WVL(:,:,:,JWVL) = & !The value we want is .... - PPIZA_WVL(:,:,:,JWVL) & !..value weighted by optical depths of all wvl and modes - /max(epsilon,PTAUREL_WVL(:,:,:,JWVL)) !..divided by the optical depth for all wvl - - - !Divide total assymetry factor by total optical depth at this wavelength - !This is needed since we weight all assymetry factors by wavelengths just above - PCGA_WVL(:,:,:,JWVL) = & !The value we want is .... - PCGA_WVL(:,:,:,JWVL) & !..value weighted by optical depths of all wvl and modes - / & - (max(epsilon, & - (PTAUREL_WVL(:,:,:,JWVL) & !..divided scattered fraction of by the optical depth - *PPIZA_WVL(:,:,:,JWVL)))) - - !Finally convert PTAUREL_WVL which was until now an optical depth to a fraction of optical depth - PTAUREL_WVL(:,:,:,JWVL) = & - PTAUREL_WVL(:,:,:,JWVL) & !Opt.depth at lambda with contr. from all modes - /max(epsilon,PTAU550(:,:,:)) !Optical depth at 550 contr. from all modes - - ENDDO !Loop on wavelenghts - - - !DEALLOCATE local arrays which size depend on number of modes - DEALLOCATE(ZTAU550_MDE) - DEALLOCATE(ZTAU_WVL_MDE) - DEALLOCATE(ZPIZA_WVL_MDE) - DEALLOCATE(ZCGA_WVL_MDE) - - IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUSTOPT_GET',1,ZHOOK_HANDLE) - END SUBROUTINE DUSTOPT_GET - - !***************************************************************** - - SUBROUTINE DUSTOPT_LKT( & - PRG & !I [um] number median radius of aerosol mode - ,PSIGMA & !I [-] lognormal dispersion coefficient - ,PMASS & !I [kg/m3] Mass concentration of dust - ,PTAU550 & !O [optical depth at 550 nm - ,PTAU_WVL & !O [-] opt.depth(lambda)/opt.depth(550nm) - ,PPIZA_WVL & !O [-] single scattering coefficient at any wavelength - ,PCGA_WVL & !O [-] assymetry factor at any wavelength - ,PZZ & !I [m] height of layers - ,KSWB & !I [nbr] number of short wave bands - ) - - !Purpose: Get optical properties of one dust mode from the mass concentration, - !dispersion coefficient and number median radius. - - !Use the module with the dust optical properties look up tables - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - !INPUT - REAL, DIMENSION(:,:,:), INTENT(IN) :: PRG !I [um] number median radius for one mode - REAL, DIMENSION(:,:,:), INTENT(IN) :: PSIGMA !I [-] dispersion coefficient for one mode - REAL, DIMENSION(:,:,:), INTENT(IN) :: PMASS !I [kg/m3] mass of dust - REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ !I [m] height of layers - INTEGER, INTENT(IN) :: KSWB !I [nbr] number of shortwave bands - - !OUTPUT - REAL, DIMENSION(:,:,:), INTENT(OUT) :: PTAU550 !O [-] optical depth at 550 nm - REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PTAU_WVL !O [-] optical depth at wvl - REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PPIZA_WVL !O [-] single scattering albedo @ wvl - REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PCGA_WVL !O [-] assymetry factor @ wvl - - !LOCALS - REAL, DIMENSION(SIZE(PTAU550,1),SIZE(PTAU550,2),SIZE(PTAU550,3),KSWB) :: ZEXT_COEFF_WVL ![m2/kg] Extinction coefficient at wvl - REAL, DIMENSION(SIZE(PTAU550,1),SIZE(PTAU550,2),SIZE(PTAU550,3) ) :: ZEXT_COEFF_550 ![m2/kg] Extinction coefficient at 550nm - REAL :: FACT_SIGMA ![-] factor needed to get right index in look up table for sigma - REAL :: FACT_RADIUS ![-] factor needed to get right index in look up table for radius - INTEGER :: WVL_IDX ![idx] counter for wavelengths - INTEGER :: JI, JJ, JK ![idx] counters for lon, lat and lev - INTEGER :: RG_IDX ![idx] index for radius to get in look up table - INTEGER :: SG_IDX ![idx] index for sigma to get in look up table - REAL,DIMENSION(SIZE(PRG,1),SIZE(PRG,2),SIZE(PRG,3)) :: ZRG ![um] bounded value for number median radius - REAL,DIMENSION(SIZE(PRG,1),SIZE(PRG,2),SIZE(PRG,3)) :: ZSIGMA ![um] bounded value for sigma - REAL, PARAMETER :: EPSILON=1.d-8 ![um] a small number used to avoid zero - REAL :: ZRADIUS_LKT_MAX, ZRADIUS_LKT_MIN ![um] values limited at midpoint values of bin - REAL :: ZSIGMA_LKT_MAX, ZSIGMA_LKT_MIN ![-] values limited at midpoint of bin - INTEGER :: JKRAD !Index valid for radiation code - - !Limit max and min values to be midpont of bin to avoid 0 or NMAX+1 values - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUSTOPT_LKT',0,ZHOOK_HANDLE) - ZRADIUS_LKT_MAX=exp(log(XRADIUS_LKT_MAX) & - - 0.5d0/DBLE(NMAX_RADIUS_LKT)*log(XRADIUS_LKT_MAX/XRADIUS_LKT_MIN)) - ZRADIUS_LKT_MIN=exp(log(XRADIUS_LKT_MIN) & - + 0.5d0/DBLE(NMAX_RADIUS_LKT)*log(XRADIUS_LKT_MAX/XRADIUS_LKT_MIN)) - ZSIGMA_LKT_MAX=XSIGMA_LKT_MAX - 0.5d0/DBLE(NMAX_SIGMA_LKT)*(XSIGMA_LKT_MAX-XSIGMA_LKT_MIN) - ZSIGMA_LKT_MIN=XSIGMA_LKT_MIN + 0.5d0/DBLE(NMAX_SIGMA_LKT)*(XSIGMA_LKT_MAX-XSIGMA_LKT_MIN) - - !Begin code - FACT_SIGMA = DBLE(NMAX_SIGMA_LKT)/(XSIGMA_LKT_MAX-XSIGMA_LKT_MIN) - FACT_RADIUS = DBLE(NMAX_RADIUS_LKT)/(LOG(XRADIUS_LKT_MAX/XRADIUS_LKT_MIN)) - - !Remove unphysical values for rg - ZRG(:,:,:) = min( max(ZRADIUS_LKT_MIN,PRG(:,:,:)), ZRADIUS_LKT_MAX) - ZSIGMA(:,:,:) = min( max(ZSIGMA_LKT_MIN,PSIGMA(:,:,:)), ZSIGMA_LKT_MAX) - - !Initilalize arrays to make sure, they are intent(OUT), - !and may be initialized strangely by the computer - PTAU550(:,:,:)=EPSILON - PTAU_WVL(:,:,:,:)=EPSILON - PPIZA_WVL(:,:,:,:)=EPSILON - PCGA_WVL(:,:,:,:)=EPSILON - - DO WVL_IDX = 1,KSWB - DO JK=2,SIZE(PMASS,3) - JKRAD = JK - 1 !Index in radiation code - DO JJ=1,SIZE(PMASS,2) - DO JI=1,SIZE(PMASS,1) - - !Get the correct indexes for the look up tables - RG_IDX = nint( & - log(ZRG(JI,JJ,JK)/XRADIUS_LKT_MIN) & - *FACT_RADIUS & - +0.5) - - SG_IDX = nint((ZSIGMA(JI,JJ,JK)-XSIGMA_LKT_MIN)*FACT_SIGMA + 0.5) - - !Open the look up tables and get the right values out of them - !The extinction coefficient for - ZEXT_COEFF_WVL(JI,JJ,JK,WVL_IDX) = XEXT_COEFF_WVL_LKT(RG_IDX,SG_IDX,WVL_IDX) - ZEXT_COEFF_550(JI,JJ,JK) = XEXT_COEFF_550_LKT(RG_IDX,SG_IDX) - !Switch to radiation code indexes for the output values - PPIZA_WVL(JI,JJ,JKRAD,WVL_IDX) = XPIZA_LKT(RG_IDX,SG_IDX,WVL_IDX) - PCGA_WVL(JI,JJ,JKRAD,WVL_IDX) = XCGA_LKT(RG_IDX,SG_IDX,WVL_IDX) - ENDDO - ENDDO - ENDDO - ENDDO - - !Get the optical depth of this mode using the looked up extinction coeffient - DO JK=2,SIZE(PZZ,3)-1 - JKRAD = JK - 1 !Index in radiation code - PTAU550(:,:,JKRAD) = ZEXT_COEFF_550(:,:,JK) & - * PMASS(:,:,JK) & - * (PZZ(:,:,JK+1) - PZZ(:,:,JK)) - ENDDO - - !Get the optical depth of whatever wavelength using the looked up tables - DO WVL_IDX=1,KSWB - DO JK=2,SIZE(PZZ,3)-1 - JKRAD = JK -1 - PTAU_WVL(:,:,JKRAD,WVL_IDX) = & - PMASS(:,:,JK) & ![kg/m3] Mass in this mode - *ZEXT_COEFF_WVL(:,:,JK,WVL_IDX) & ![m2/kg] mass exinction coefficient - *(PZZ(:,:,JK+1) - PZZ(:,:,JK)) ![m] Height of layer - ENDDO !Loop on levels - ENDDO !Loop on wavelengths - - !Avoid unphysical values (which might occur on grid edges) on grid edges - PTAU550(:,:,:)=max(PTAU550(:,:,:),EPSILON) - PTAU_WVL(:,:,:,:)=max(PTAU_WVL(:,:,:,:),EPSILON) - PPIZA_WVL(:,:,:,:)=max(PPIZA_WVL(:,:,:,:),EPSILON) - PCGA_WVL(:,:,:,:)=max(PCGA_WVL(:,:,:,:),EPSILON) - - IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUSTOPT_LKT',1,ZHOOK_HANDLE) - END SUBROUTINE DUSTOPT_LKT - - !*************************************************************************** - SUBROUTINE DUST_OPT_LKT_SET1() - -!Purpose: Read the look up tables for dust optical properties -!All variables are defined in the module MODD_DUST_OPT_LKT -! Based upon refractive indexes at wavelength intervals as: -! -! New tables from Mallet (LA) and Tulet (CNRM) : -! 0.185-0.25 RI[1]="(1.448,-0.00292)" -! 0.25-0.44 RI[2]="(1.448,-0.00292)" -! 0.44-0.69 RI[3]="(1.448,-0.00292)" -! 0.69-1.19 RI[4]="(1.44023,-0.00116)" -! 1.19-2.38 RI[5]="(1.41163,-0.00106)" -! 2.38-4.0 RI[6]="(1.41163,-0.00106)" -! RI550="(1.44412,-0.00204)" - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - - !Here are the output values from the mie program: -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET1',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(1,1,1:6)=(/ 92.520000,37.760000,21.553000,5.277700,2.711100,1.337700 /) -XPIZA_LKT(1,1,1:6)=(/ 0.431792,0.157096,0.049108,0.030213,0.005366,0.000659 /) -XCGA_LKT(1,1,1:6)=(/ 0.016660,0.006443,0.002727,0.001070,0.000340,0.000083 /) -XEXT_COEFF_550_LKT(1,1)=15.743000 !rg=0.0104084 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,2,1:6)=(/ 103.240000,39.382000,21.850000,5.321300,2.715200,1.338000 /) -XPIZA_LKT(1,2,1:6)=(/ 0.487818,0.189906,0.061069,0.037775,0.006754,0.000830 /) -XCGA_LKT(1,2,1:6)=(/ 0.021147,0.008187,0.003463,0.001360,0.000430,0.000107 /) -XEXT_COEFF_550_LKT(1,2)=16.050000 !rg=0.0104084 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,3,1:6)=(/ 129.230000,43.318000,22.568000,5.427000,2.725100,1.338600 /) -XPIZA_LKT(1,3,1:6)=(/ 0.585845,0.259826,0.088974,0.055729,0.010124,0.001248 /) -XCGA_LKT(1,3,1:6)=(/ 0.032163,0.012480,0.005287,0.002080,0.000657,0.000163 /) -XEXT_COEFF_550_LKT(1,3)=16.796000 !rg=0.0104084 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,4,1:6)=(/ 183.290000,51.589000,24.073000,5.649500,2.745900,1.340000 /) -XPIZA_LKT(1,4,1:6)=(/ 0.702104,0.373129,0.142704,0.091571,0.017184,0.002133 /) -XCGA_LKT(1,4,1:6)=(/ 0.054600,0.021287,0.009037,0.003557,0.001127,0.000277 /) -XEXT_COEFF_550_LKT(1,4)=18.363000 !rg=0.0104084 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,5,1:6)=(/ 286.070000,67.814000,27.025000,6.087600,2.786700,1.342500 /) -XPIZA_LKT(1,5,1:6)=(/ 0.803408,0.516645,0.231770,0.154935,0.030865,0.003880 /) -XCGA_LKT(1,5,1:6)=(/ 0.091107,0.035690,0.015190,0.005987,0.001897,0.000467 /) -XEXT_COEFF_550_LKT(1,5)=21.447000 !rg=0.0104084 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,6,1:6)=(/ 460.450000,97.279000,32.421000,6.891000,2.861200,1.347200 /) -XPIZA_LKT(1,6,1:6)=(/ 0.872997,0.656423,0.353869,0.250768,0.055064,0.007082 /) -XCGA_LKT(1,6,1:6)=(/ 0.142283,0.055803,0.023800,0.009397,0.002977,0.000733 /) -XEXT_COEFF_550_LKT(1,6)=27.095000 !rg=0.0104084 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,7,1:6)=(/ 733.310000,149.150000,42.096000,8.338200,2.995000,1.355600 /) -XPIZA_LKT(1,7,1:6)=(/ 0.916224,0.769783,0.495850,0.377503,0.095802,0.012818 /) -XCGA_LKT(1,7,1:6)=(/ 0.213453,0.083587,0.035690,0.014113,0.004477,0.001103 /) -XEXT_COEFF_550_LKT(1,7)=37.236000 !rg=0.0104084 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,8,1:6)=(/ 1130.600000,236.290000,59.060000,10.896000,3.231000,1.370300 /) -XPIZA_LKT(1,8,1:6)=(/ 0.942169,0.849454,0.634032,0.519983,0.159848,0.022828 /) -XCGA_LKT(1,8,1:6)=(/ 0.308897,0.122627,0.052300,0.020717,0.006583,0.001623 /) -XEXT_COEFF_550_LKT(1,8)=55.031000 !rg=0.0104084 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,9,1:6)=(/ 1705.100000,376.030000,88.742000,15.448000,3.650500,1.396300 /) -XPIZA_LKT(1,9,1:6)=(/ 0.958589,0.901098,0.750204,0.657642,0.253797,0.040195 /) -XCGA_LKT(1,9,1:6)=(/ 0.411487,0.179057,0.076007,0.030137,0.009593,0.002367 /) -XEXT_COEFF_550_LKT(1,9)=86.152000 !rg=0.0104084 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,10,1:6)=(/ 2437.700000,582.320000,139.140000,23.463000,4.390600,1.442100 /) -XPIZA_LKT(1,10,1:6)=(/ 0.968736,0.932546,0.835278,0.771030,0.376436,0.069456 /) -XCGA_LKT(1,10,1:6)=(/ 0.493533,0.260817,0.110187,0.043647,0.013920,0.003440 /) -XEXT_COEFF_550_LKT(1,10)=138.880000 !rg=0.0104084 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,11,1:6)=(/ 3314.000000,881.530000,221.820000,37.643000,5.710600,1.523500 /) -XPIZA_LKT(1,11,1:6)=(/ 0.975085,0.952114,0.892184,0.854112,0.517023,0.117531 /) -XCGA_LKT(1,11,1:6)=(/ 0.567660,0.368473,0.160363,0.063207,0.020190,0.004997 /) -XEXT_COEFF_550_LKT(1,11)=224.920000 !rg=0.0104084 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,12,1:6)=(/ 4242.300000,1306.600000,347.100000,62.286000,8.055400,1.668200 /) -XPIZA_LKT(1,12,1:6)=(/ 0.979085,0.964921,0.927413,0.909165,0.653952,0.191816 /) -XCGA_LKT(1,12,1:6)=(/ 0.624753,0.465660,0.234643,0.091640,0.029290,0.007260 /) -XEXT_COEFF_550_LKT(1,12)=354.350000 !rg=0.0104084 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,13,1:6)=(/ 5110.500000,1812.200000,525.740000,103.700000,12.207000,1.925100 /) -XPIZA_LKT(1,13,1:6)=(/ 0.981483,0.972719,0.948753,0.943296,0.768173,0.296860 /) -XCGA_LKT(1,13,1:6)=(/ 0.668683,0.538647,0.339447,0.133300,0.042487,0.010553 /) -XEXT_COEFF_550_LKT(1,13)=538.780000 !rg=0.0104084 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,14,1:6)=(/ 5748.900000,2387.700000,784.190000,168.610000,19.470000,2.379400 /) -XPIZA_LKT(1,14,1:6)=(/ 0.982603,0.977645,0.962617,0.963443,0.851580,0.427755 /) -XCGA_LKT(1,14,1:6)=(/ 0.698187,0.605163,0.448927,0.194953,0.061620,0.015337 /) -XEXT_COEFF_550_LKT(1,14)=805.170000 !rg=0.0104084 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,15,1:6)=(/ 6015.700000,2950.500000,1106.000000,262.040000,31.999000,3.182800 /) -XPIZA_LKT(1,15,1:6)=(/ 0.982578,0.980638,0.971414,0.975083,0.907112,0.568583 /) -XCGA_LKT(1,15,1:6)=(/ 0.714507,0.653480,0.524447,0.285813,0.089433,0.022283 /) -XEXT_COEFF_550_LKT(1,15)=1131.400000 !rg=0.0104084 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,16,1:6)=(/ 5851.500000,3422.500000,1472.900000,395.050000,52.980000,4.605800 /) -XPIZA_LKT(1,16,1:6)=(/ 0.981412,0.982285,0.976787,0.982146,0.941826,0.698244 /) -XCGA_LKT(1,16,1:6)=(/ 0.718937,0.689083,0.593623,0.402740,0.130147,0.032367 /) -XEXT_COEFF_550_LKT(1,16)=1505.100000 !rg=0.0104084 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,17,1:6)=(/ 5366.800000,3697.700000,1840.800000,580.530000,85.671000,7.093600 /) -XPIZA_LKT(1,17,1:6)=(/ 0.979145,0.982774,0.980136,0.986797,0.962418,0.800732 /) -XCGA_LKT(1,17,1:6)=(/ 0.715933,0.710930,0.644890,0.497120,0.190150,0.046947 /) -XEXT_COEFF_550_LKT(1,17)=1875.900000 !rg=0.0104084 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,18,1:6)=(/ 4801.300000,3708.500000,2163.800000,789.620000,132.270000,11.407000 /) -XPIZA_LKT(1,18,1:6)=(/ 0.976068,0.982123,0.982064,0.989568,0.974360,0.873176 /) -XCGA_LKT(1,18,1:6)=(/ 0.713493,0.719603,0.683553,0.565050,0.278340,0.068027 /) -XEXT_COEFF_550_LKT(1,18)=2198.200000 !rg=0.0104084 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,19,1:6)=(/ 4249.400000,3478.400000,2378.500000,1023.100000,196.690000,18.760000 /) -XPIZA_LKT(1,19,1:6)=(/ 0.972714,0.980276,0.982817,0.991341,0.981545,0.920482 /) -XCGA_LKT(1,19,1:6)=(/ 0.718660,0.717890,0.708233,0.627220,0.394907,0.098600 /) -XEXT_COEFF_550_LKT(1,19)=2408.700000 !rg=0.0104084 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(1,20,1:6)=(/ 3667.400000,3122.100000,2430.400000,1242.500000,287.790000,30.753000 /) -XPIZA_LKT(1,20,1:6)=(/ 0.968698,0.977438,0.982433,0.992399,0.986356,0.949592 /) -XCGA_LKT(1,20,1:6)=(/ 0.723267,0.712220,0.719883,0.671263,0.497200,0.143163 /) -XEXT_COEFF_550_LKT(1,20)=2452.500000 !rg=0.0104084 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,1,1:6)=(/ 103.740000,39.460000,21.865000,5.323400,2.715400,1.338000 /) -XPIZA_LKT(2,1,1:6)=(/ 0.489711,0.191161,0.061553,0.038086,0.006812,0.000837 /) -XCGA_LKT(2,1,1:6)=(/ 0.019537,0.007560,0.003200,0.001257,0.000397,0.000097 /) -XEXT_COEFF_550_LKT(2,1)=16.065000 !rg=0.011276 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,2,1:6)=(/ 117.330000,41.516000,22.240000,5.378600,2.720600,1.338300 /) -XPIZA_LKT(2,2,1:6)=(/ 0.545773,0.229082,0.076290,0.047519,0.008571,0.001055 /) -XCGA_LKT(2,2,1:6)=(/ 0.024793,0.009603,0.004067,0.001597,0.000507,0.000123 /) -XEXT_COEFF_550_LKT(2,2)=16.454000 !rg=0.011276 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,3,1:6)=(/ 150.230000,46.504000,23.149000,5.512700,2.733200,1.339100 /) -XPIZA_LKT(2,3,1:6)=(/ 0.640299,0.307762,0.110299,0.069760,0.012835,0.001586 /) -XCGA_LKT(2,3,1:6)=(/ 0.037687,0.014633,0.006203,0.002440,0.000770,0.000190 /) -XEXT_COEFF_550_LKT(2,3)=17.399000 !rg=0.011276 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,4,1:6)=(/ 218.290000,56.986000,25.055000,5.794800,2.759500,1.340800 /) -XPIZA_LKT(2,4,1:6)=(/ 0.746746,0.429423,0.174353,0.113519,0.021742,0.002710 /) -XCGA_LKT(2,4,1:6)=(/ 0.063893,0.024950,0.010600,0.004173,0.001320,0.000327 /) -XEXT_COEFF_550_LKT(2,4)=19.387000 !rg=0.011276 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,5,1:6)=(/ 345.760000,77.517000,28.796000,6.350700,2.811200,1.344100 /) -XPIZA_LKT(2,5,1:6)=(/ 0.834754,0.573976,0.276580,0.188852,0.038904,0.004927 /) -XCGA_LKT(2,5,1:6)=(/ 0.106493,0.041807,0.017810,0.007023,0.002223,0.000547 /) -XEXT_COEFF_550_LKT(2,5)=23.299000 !rg=0.011276 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,6,1:6)=(/ 556.620000,114.640000,35.633000,7.370400,2.905600,1.350000 /) -XPIZA_LKT(2,6,1:6)=(/ 0.892861,0.705457,0.409267,0.298127,0.068943,0.008986 /) -XCGA_LKT(2,6,1:6)=(/ 0.166257,0.065340,0.027897,0.011020,0.003493,0.000860 /) -XEXT_COEFF_550_LKT(2,6)=30.459000 !rg=0.011276 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,7,1:6)=(/ 877.950000,179.370000,47.880000,9.207500,3.075300,1.360600 /) -XPIZA_LKT(2,7,1:6)=(/ 0.928292,0.805941,0.553705,0.434671,0.118628,0.016238 /) -XCGA_LKT(2,7,1:6)=(/ 0.248543,0.097890,0.041817,0.016550,0.005253,0.001297 /) -XEXT_COEFF_550_LKT(2,7)=43.302000 !rg=0.011276 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,8,1:6)=(/ 1343.100000,286.000000,69.289000,12.455000,3.374700,1.379200 /) -XPIZA_LKT(2,8,1:6)=(/ 0.949787,0.873449,0.685079,0.578317,0.194580,0.028837 /) -XCGA_LKT(2,8,1:6)=(/ 0.350880,0.143747,0.061267,0.024287,0.007723,0.001903 /) -XEXT_COEFF_550_LKT(2,8)=65.758000 !rg=0.011276 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,9,1:6)=(/ 1991.200000,451.820000,106.470000,18.228000,3.907000,1.412200 /) -XPIZA_LKT(2,9,1:6)=(/ 0.963390,0.915917,0.789123,0.708153,0.301475,0.050533 /) -XCGA_LKT(2,9,1:6)=(/ 0.445603,0.210107,0.089063,0.035320,0.011250,0.002777 /) -XEXT_COEFF_550_LKT(2,9)=104.720000 !rg=0.011276 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,10,1:6)=(/ 2778.000000,691.380000,168.610000,28.374000,4.846200,1.470200 /) -XPIZA_LKT(2,10,1:6)=(/ 0.971647,0.941603,0.861814,0.809101,0.433519,0.086622 /) -XCGA_LKT(2,10,1:6)=(/ 0.523827,0.303943,0.129253,0.051140,0.016323,0.004033 /) -XEXT_COEFF_550_LKT(2,10)=169.590000 !rg=0.011276 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,11,1:6)=(/ 3694.000000,1041.700000,267.610000,46.237000,6.520900,1.573500 /) -XPIZA_LKT(2,11,1:6)=(/ 0.976966,0.958062,0.908812,0.879885,0.575374,0.144689 /) -XCGA_LKT(2,11,1:6)=(/ 0.592367,0.412317,0.188487,0.074063,0.023673,0.005860 /) -XEXT_COEFF_550_LKT(2,11)=272.300000 !rg=0.011276 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,12,1:6)=(/ 4618.100000,1504.900000,412.780000,76.935000,9.493100,1.757000 /) -XPIZA_LKT(2,12,1:6)=(/ 0.980232,0.968603,0.937403,0.925366,0.704711,0.231541 /) -XCGA_LKT(2,12,1:6)=(/ 0.643963,0.495827,0.275467,0.107457,0.034327,0.008517 /) -XEXT_COEFF_550_LKT(2,12)=422.070000 !rg=0.011276 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,13,1:6)=(/ 5413.500000,2043.900000,621.270000,127.360000,14.744000,2.083100 /) -XPIZA_LKT(2,13,1:6)=(/ 0.982066,0.974988,0.955133,0.952971,0.806551,0.348772 /) -XCGA_LKT(2,13,1:6)=(/ 0.682020,0.567970,0.388163,0.156593,0.049783,0.012377 /) -XEXT_COEFF_550_LKT(2,13)=637.700000 !rg=0.011276 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,14,1:6)=(/ 5913.800000,2619.700000,913.080000,203.540000,23.886000,2.659500 /) -XPIZA_LKT(2,14,1:6)=(/ 0.982723,0.979049,0.966827,0.969037,0.877713,0.486431 /) -XCGA_LKT(2,14,1:6)=(/ 0.706313,0.625800,0.483003,0.229497,0.072207,0.017987 /) -XEXT_COEFF_550_LKT(2,14)=935.960000 !rg=0.011276 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,15,1:6)=(/ 6000.100000,3158.300000,1249.300000,310.900000,39.482000,3.678800 /) -XPIZA_LKT(2,15,1:6)=(/ 0.982241,0.981474,0.973882,0.978376,0.923657,0.625059 /) -XCGA_LKT(2,15,1:6)=(/ 0.717430,0.669540,0.553157,0.333777,0.104867,0.026123 /) -XEXT_COEFF_550_LKT(2,15)=1278.000000 !rg=0.011276 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,16,1:6)=(/ 5684.500000,3562.200000,1628.300000,466.940000,65.029000,5.481900 /) -XPIZA_LKT(2,16,1:6)=(/ 0.980599,0.982639,0.978404,0.984335,0.951778,0.744846 /) -XCGA_LKT(2,16,1:6)=(/ 0.718130,0.699263,0.616980,0.447937,0.152870,0.037933 /) -XEXT_COEFF_550_LKT(2,16)=1660.700000 !rg=0.011276 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,17,1:6)=(/ 5141.000000,3734.000000,1986.800000,665.130000,103.390000,8.625700 /) -XPIZA_LKT(2,17,1:6)=(/ 0.977913,0.982642,0.981098,0.988136,0.968216,0.834668 /) -XCGA_LKT(2,17,1:6)=(/ 0.713957,0.715560,0.662640,0.525477,0.223803,0.055013 /) -XEXT_COEFF_550_LKT(2,17)=2021.600000 !rg=0.011276 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,18,1:6)=(/ 4574.400000,3638.100000,2271.100000,886.600000,156.520000,14.043000 /) -XPIZA_LKT(2,18,1:6)=(/ 0.974904,0.981497,0.982498,0.990398,0.977764,0.895751 /) -XCGA_LKT(2,18,1:6)=(/ 0.715933,0.719760,0.695253,0.593790,0.325740,0.079730 /) -XEXT_COEFF_550_LKT(2,18)=2303.900000 !rg=0.011276 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,19,1:6)=(/ 4020.000000,3334.500000,2421.300000,1115.600000,231.770000,23.157000 /) -XPIZA_LKT(2,19,1:6)=(/ 0.971278,0.979229,0.982793,0.991842,0.983800,0.934593 /) -XCGA_LKT(2,19,1:6)=(/ 0.721507,0.715440,0.714623,0.646460,0.443660,0.115677 /) -XEXT_COEFF_550_LKT(2,19)=2447.500000 !rg=0.011276 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(2,20,1:6)=(/ 3434.300000,2974.300000,2397.500000,1320.700000,331.450000,37.640000 /) -XPIZA_LKT(2,20,1:6)=(/ 0.966326,0.976205,0.981925,0.992685,0.987818,0.958051 /) -XCGA_LKT(2,20,1:6)=(/ 0.724030,0.712603,0.720917,0.685953,0.527733,0.168320 /) -XEXT_COEFF_550_LKT(2,20)=2415.200000 !rg=0.011276 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,1,1:6)=(/ 117.960000,41.614000,22.259000,5.381200,2.720900,1.338400 /) -XPIZA_LKT(3,1,1:6)=(/ 0.547621,0.230509,0.076882,0.047907,0.008644,0.001064 /) -XCGA_LKT(3,1,1:6)=(/ 0.022907,0.008867,0.003753,0.001477,0.000467,0.000113 /) -XEXT_COEFF_550_LKT(3,1)=16.473000 !rg=0.0122159 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,2,1:6)=(/ 135.180000,44.219000,22.734000,5.451200,2.727400,1.338800 /) -XPIZA_LKT(3,2,1:6)=(/ 0.602197,0.273509,0.094903,0.059618,0.010870,0.001341 /) -XCGA_LKT(3,2,1:6)=(/ 0.029067,0.011263,0.004770,0.001877,0.000593,0.000147 /) -XEXT_COEFF_550_LKT(3,2)=16.966000 !rg=0.0122159 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,3,1:6)=(/ 176.800000,50.542000,23.885000,5.621200,2.743400,1.339800 /) -XPIZA_LKT(3,3,1:6)=(/ 0.690964,0.360080,0.135939,0.086990,0.016259,0.002016 /) -XCGA_LKT(3,3,1:6)=(/ 0.044153,0.017160,0.007277,0.002863,0.000907,0.000223 /) -XEXT_COEFF_550_LKT(3,3)=18.164000 !rg=0.0122159 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,4,1:6)=(/ 262.170000,63.821000,26.299000,5.979100,2.776700,1.341900 /) -XPIZA_LKT(3,4,1:6)=(/ 0.786163,0.487337,0.211219,0.139896,0.027473,0.003443 /) -XCGA_LKT(3,4,1:6)=(/ 0.074740,0.029237,0.012430,0.004897,0.001550,0.000380 /) -XEXT_COEFF_550_LKT(3,4)=20.684000 !rg=0.0122159 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,5,1:6)=(/ 419.010000,89.770000,31.040000,6.684600,2.842200,1.346100 /) -XPIZA_LKT(3,5,1:6)=(/ 0.861225,0.628955,0.326229,0.228145,0.048925,0.006256 /) -XCGA_LKT(3,5,1:6)=(/ 0.124397,0.048957,0.020880,0.008240,0.002610,0.000643 /) -XEXT_COEFF_550_LKT(3,5)=25.646000 !rg=0.0122159 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,6,1:6)=(/ 671.210000,136.400000,39.701000,7.978800,2.961900,1.353600 /) -XPIZA_LKT(3,6,1:6)=(/ 0.909216,0.749553,0.466818,0.350170,0.085992,0.011396 /) -XCGA_LKT(3,6,1:6)=(/ 0.193970,0.076497,0.032690,0.012927,0.004100,0.001010 /) -XEXT_COEFF_550_LKT(3,6)=34.722000 !rg=0.0122159 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,7,1:6)=(/ 1048.200000,216.630000,55.188000,10.311000,3.177100,1.367000 /) -XPIZA_LKT(3,7,1:6)=(/ 0.938278,0.836859,0.609746,0.493498,0.145993,0.020551 /) -XCGA_LKT(3,7,1:6)=(/ 0.287080,0.114640,0.048987,0.019403,0.006163,0.001520 /) -XEXT_COEFF_550_LKT(3,7)=50.966000 !rg=0.0122159 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,8,1:6)=(/ 1588.400000,345.550000,82.140000,14.432000,3.556900,1.390500 /) -XPIZA_LKT(3,8,1:6)=(/ 0.956153,0.893261,0.731466,0.634353,0.234705,0.036368 /) -XCGA_LKT(3,8,1:6)=(/ 0.390013,0.168527,0.071773,0.028467,0.009060,0.002237 /) -XEXT_COEFF_550_LKT(3,8)=79.229000 !rg=0.0122159 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,9,1:6)=(/ 2297.900000,539.990000,128.460000,21.750000,4.232500,1.432300 /) -XPIZA_LKT(3,9,1:6)=(/ 0.967263,0.927974,0.822709,0.753756,0.353778,0.063349 /) -XCGA_LKT(3,9,1:6)=(/ 0.476813,0.246147,0.104387,0.041387,0.013197,0.003260 /) -XEXT_COEFF_550_LKT(3,9)=127.710000 !rg=0.0122159 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,10,1:6)=(/ 3146.100000,819.440000,204.240000,34.572000,5.424300,1.505900 /) -XPIZA_LKT(3,10,1:6)=(/ 0.974108,0.949179,0.883857,0.841852,0.492284,0.107528 /) -XCGA_LKT(3,10,1:6)=(/ 0.553383,0.349627,0.151713,0.059917,0.019140,0.004733 /) -XEXT_COEFF_550_LKT(3,10)=206.630000 !rg=0.0122159 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,11,1:6)=(/ 4072.200000,1221.800000,321.000000,56.990000,7.548300,1.636900 /) -XPIZA_LKT(3,11,1:6)=(/ 0.978476,0.963032,0.922295,0.901309,0.631501,0.176837 /) -XCGA_LKT(3,11,1:6)=(/ 0.613887,0.449493,0.221580,0.086800,0.027750,0.006877 /) -XEXT_COEFF_550_LKT(3,11)=327.410000 !rg=0.0122159 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,12,1:6)=(/ 4964.200000,1713.000000,488.770000,94.924000,11.313000,1.869700 /) -XPIZA_LKT(3,12,1:6)=(/ 0.981136,0.971550,0.945595,0.938518,0.750611,0.276619 /) -XCGA_LKT(3,12,1:6)=(/ 0.660627,0.524873,0.321297,0.126077,0.040227,0.009990 /) -XEXT_COEFF_550_LKT(3,12)=500.580000 !rg=0.0122159 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,13,1:6)=(/ 5660.800000,2283.500000,732.950000,155.440000,17.944000,2.283600 /) -XPIZA_LKT(3,13,1:6)=(/ 0.982483,0.976910,0.960594,0.960696,0.839616,0.404441 /) -XCGA_LKT(3,13,1:6)=(/ 0.692997,0.594180,0.432363,0.184137,0.058333,0.014517 /) -XEXT_COEFF_550_LKT(3,13)=752.670000 !rg=0.0122159 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,14,1:6)=(/ 6003.900000,2852.300000,1046.700000,243.600000,29.407000,3.015000 /) -XPIZA_LKT(3,14,1:6)=(/ 0.982662,0.980191,0.970186,0.973487,0.899469,0.545325 /) -XCGA_LKT(3,14,1:6)=(/ 0.711893,0.644943,0.511987,0.269877,0.084623,0.021087 /) -XEXT_COEFF_550_LKT(3,14)=1071.200000 !rg=0.0122159 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,15,1:6)=(/ 5916.800000,3345.300000,1403.900000,368.220000,48.673000,4.307500 /) -XPIZA_LKT(3,15,1:6)=(/ 0.981714,0.982054,0.975973,0.981123,0.937112,0.678113 /) -XCGA_LKT(3,15,1:6)=(/ 0.718627,0.683010,0.582010,0.384037,0.123033,0.030623 /) -XEXT_COEFF_550_LKT(3,15)=1435.400000 !rg=0.0122159 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,16,1:6)=(/ 5478.800000,3666.200000,1778.000000,546.840000,79.342000,6.590200 /) -XPIZA_LKT(3,16,1:6)=(/ 0.979616,0.982749,0.979670,0.986165,0.959737,0.786195 /) -XCGA_LKT(3,16,1:6)=(/ 0.716330,0.707423,0.636630,0.484270,0.179723,0.044453 /) -XEXT_COEFF_550_LKT(3,16)=1812.300000 !rg=0.0122159 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,17,1:6)=(/ 4907.300000,3725.800000,2114.800000,752.700000,123.630000,10.555000 /) -XPIZA_LKT(3,17,1:6)=(/ 0.976767,0.982311,0.981826,0.989196,0.972823,0.863522 /) -XCGA_LKT(3,17,1:6)=(/ 0.714543,0.718613,0.677650,0.553597,0.263273,0.064463 /) -XEXT_COEFF_550_LKT(3,17)=2149.000000 !rg=0.0122159 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,18,1:6)=(/ 4361.000000,3529.900000,2350.200000,984.390000,184.580000,17.328000 /) -XPIZA_LKT(3,18,1:6)=(/ 0.973539,0.980681,0.982758,0.991098,0.980575,0.914388 /) -XCGA_LKT(3,18,1:6)=(/ 0.718843,0.718403,0.704433,0.618487,0.376813,0.093473 /) -XEXT_COEFF_550_LKT(3,18)=2381.100000 !rg=0.0122159 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,19,1:6)=(/ 3779.800000,3186.300000,2431.500000,1207.700000,271.840000,28.521000 /) -XPIZA_LKT(3,19,1:6)=(/ 0.969284,0.978079,0.982560,0.992253,0.985726,0.946005 /) -XCGA_LKT(3,19,1:6)=(/ 0.722557,0.714117,0.718290,0.664513,0.484347,0.135813 /) -XEXT_COEFF_550_LKT(3,19)=2455.100000 !rg=0.0122159 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(3,20,1:6)=(/ 3203.500000,2842.300000,2337.800000,1390.300000,376.110000,45.733000 /) -XPIZA_LKT(3,20,1:6)=(/ 0.963890,0.974757,0.981213,0.992874,0.988973,0.964790 /) -XCGA_LKT(3,20,1:6)=(/ 0.725090,0.713283,0.720253,0.698123,0.555967,0.198110 /) -XEXT_COEFF_550_LKT(3,20)=2352.500000 !rg=0.0122159 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,1,1:6)=(/ 135.990000,44.342000,22.758000,5.454500,2.727800,1.338800 /) -XPIZA_LKT(4,1,1:6)=(/ 0.603958,0.275097,0.095621,0.060096,0.010963,0.001353 /) -XCGA_LKT(4,1,1:6)=(/ 0.026860,0.010403,0.004403,0.001730,0.000547,0.000133 /) -XEXT_COEFF_550_LKT(4,1)=16.990000 !rg=0.0132342 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,2,1:6)=(/ 157.810000,47.644000,23.359000,5.543300,2.736100,1.339300 /) -XPIZA_LKT(4,2,1:6)=(/ 0.655675,0.322804,0.117451,0.074547,0.013777,0.001704 /) -XCGA_LKT(4,2,1:6)=(/ 0.034070,0.013213,0.005597,0.002200,0.000697,0.000170 /) -XEXT_COEFF_550_LKT(4,2)=17.615000 !rg=0.0132342 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,3,1:6)=(/ 210.380000,55.660000,24.816000,5.758800,2.756200,1.340600 /) -XPIZA_LKT(4,3,1:6)=(/ 0.736988,0.415754,0.166379,0.107970,0.020577,0.002562 /) -XCGA_LKT(4,3,1:6)=(/ 0.051720,0.020120,0.008537,0.003360,0.001063,0.000260 /) -XEXT_COEFF_550_LKT(4,3)=19.134000 !rg=0.0132342 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,4,1:6)=(/ 316.960000,72.477000,27.875000,6.212900,2.798500,1.343300 /) -XPIZA_LKT(4,4,1:6)=(/ 0.820320,0.545288,0.253403,0.171196,0.034661,0.004373 /) -XCGA_LKT(4,4,1:6)=(/ 0.087393,0.034257,0.014577,0.005743,0.001820,0.000447 /) -XEXT_COEFF_550_LKT(4,4)=22.330000 !rg=0.0132342 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,5,1:6)=(/ 508.090000,105.220000,33.883000,7.108200,2.881400,1.348500 /) -XPIZA_LKT(4,5,1:6)=(/ 0.883319,0.680299,0.379933,0.272812,0.061359,0.007940 /) -XCGA_LKT(4,5,1:6)=(/ 0.145183,0.057317,0.024473,0.009663,0.003063,0.000753 /) -XEXT_COEFF_550_LKT(4,5)=28.622000 !rg=0.0132342 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,6,1:6)=(/ 806.970000,163.530000,44.849000,8.751300,3.033200,1.358000 /) -XPIZA_LKT(4,6,1:6)=(/ 0.922669,0.788356,0.524964,0.405950,0.106764,0.014442 /) -XCGA_LKT(4,6,1:6)=(/ 0.225563,0.089537,0.038300,0.015157,0.004810,0.001187 /) -XEXT_COEFF_550_LKT(4,6)=40.119000 !rg=0.0132342 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,7,1:6)=(/ 1248.400000,262.090000,64.405000,11.712000,3.306200,1.375000 /) -XPIZA_LKT(4,7,1:6)=(/ 0.946609,0.862880,0.662571,0.552350,0.178367,0.025978 /) -XCGA_LKT(4,7,1:6)=(/ 0.326890,0.134260,0.057380,0.022750,0.007230,0.001783 /) -XEXT_COEFF_550_LKT(4,7)=60.633000 !rg=0.0132342 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,8,1:6)=(/ 1861.600000,415.950000,98.214000,16.939000,3.788200,1.404900 /) -XPIZA_LKT(4,8,1:6)=(/ 0.961374,0.909478,0.772664,0.686759,0.280171,0.045770 /) -XCGA_LKT(4,8,1:6)=(/ 0.425003,0.197520,0.084080,0.033360,0.010627,0.002623 /) -XEXT_COEFF_550_LKT(4,8)=96.065000 !rg=0.0132342 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,9,1:6)=(/ 2629.300000,642.570000,155.490000,26.207000,4.645500,1.457800 /) -XPIZA_LKT(4,9,1:6)=(/ 0.970432,0.937854,0.851193,0.794040,0.409728,0.079137 /) -XCGA_LKT(4,9,1:6)=(/ 0.507727,0.286953,0.122390,0.048490,0.015473,0.003823 /) -XEXT_COEFF_550_LKT(4,9)=155.910000 !rg=0.0132342 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,10,1:6)=(/ 3525.000000,969.860000,246.670000,42.373000,6.157600,1.551100 /) -XPIZA_LKT(4,10,1:6)=(/ 0.976159,0.955603,0.901947,0.869585,0.551102,0.132729 /) -XCGA_LKT(4,10,1:6)=(/ 0.579427,0.393593,0.178183,0.070200,0.022437,0.005553 /) -XEXT_COEFF_550_LKT(4,10)=250.610000 !rg=0.0132342 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,11,1:6)=(/ 4454.200000,1414.100000,382.650000,70.358000,8.850500,1.717300 /) -XPIZA_LKT(4,11,1:6)=(/ 0.979729,0.967053,0.933215,0.918925,0.684060,0.214301 /) -XCGA_LKT(4,11,1:6)=(/ 0.634003,0.480940,0.260127,0.101753,0.032523,0.008067 /) -XEXT_COEFF_550_LKT(4,11)=390.980000 !rg=0.0132342 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,12,1:6)=(/ 5284.600000,1938.000000,578.030000,116.740000,13.614000,2.012800 /) -XPIZA_LKT(4,12,1:6)=(/ 0.981802,0.974000,0.952474,0.949113,0.791225,0.326673 /) -XCGA_LKT(4,12,1:6)=(/ 0.674957,0.554537,0.369380,0.148033,0.047137,0.011717 /) -XEXT_COEFF_550_LKT(4,12)=593.020000 !rg=0.0132342 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,13,1:6)=(/ 5856.300000,2517.300000,857.220000,188.210000,21.968000,2.538000 /) -XPIZA_LKT(4,13,1:6)=(/ 0.982674,0.978456,0.965157,0.966835,0.867655,0.462561 /) -XCGA_LKT(4,13,1:6)=(/ 0.702090,0.615980,0.468663,0.216657,0.068350,0.017023 /) -XEXT_COEFF_550_LKT(4,13)=879.180000 !rg=0.0132342 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,14,1:6)=(/ 6023.400000,3070.400000,1186.100000,289.610000,36.269000,3.465900 /) -XPIZA_LKT(4,14,1:6)=(/ 0.982419,0.981130,0.972867,0.977071,0.917388,0.602799 /) -XCGA_LKT(4,14,1:6)=(/ 0.715883,0.662093,0.540530,0.315857,0.099207,0.024723 /) -XEXT_COEFF_550_LKT(4,14)=1213.400000 !rg=0.0132342 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,15,1:6)=(/ 5774.600000,3503.000000,1560.600000,435.830000,59.825000,5.104000 /) -XPIZA_LKT(4,15,1:6)=(/ 0.980989,0.982491,0.977735,0.983468,0.947973,0.726708 /) -XCGA_LKT(4,15,1:6)=(/ 0.718240,0.694237,0.607020,0.431060,0.144450,0.035890 /) -XEXT_COEFF_550_LKT(4,15)=1592.600000 !rg=0.0132342 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,16,1:6)=(/ 5251.700000,3722.800000,1927.200000,630.140000,96.041000,7.990200 /) -XPIZA_LKT(4,16,1:6)=(/ 0.978604,0.982714,0.980708,0.987630,0.966071,0.822169 /) -XCGA_LKT(4,16,1:6)=(/ 0.715820,0.713153,0.655047,0.513870,0.211450,0.052093 /) -XEXT_COEFF_550_LKT(4,16)=1962.400000 !rg=0.0132342 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,17,1:6)=(/ 4693.900000,3673.500000,2229.200000,847.240000,146.650000,12.976000 /) -XPIZA_LKT(4,17,1:6)=(/ 0.975466,0.981763,0.982317,0.990080,0.976513,0.887717 /) -XCGA_LKT(4,17,1:6)=(/ 0.715887,0.719313,0.690183,0.582740,0.308653,0.075547 /) -XEXT_COEFF_550_LKT(4,17)=2263.200000 !rg=0.0132342 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,18,1:6)=(/ 4132.100000,3400.300000,2405.700000,1077.600000,217.610000,21.393000 /) -XPIZA_LKT(4,18,1:6)=(/ 0.971902,0.979688,0.982788,0.991649,0.982970,0.929627 /) -XCGA_LKT(4,18,1:6)=(/ 0.720730,0.716660,0.711720,0.638627,0.426830,0.109637 /) -XEXT_COEFF_550_LKT(4,18)=2433.500000 !rg=0.0132342 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,19,1:6)=(/ 3529.600000,3043.700000,2411.300000,1290.300000,314.720000,34.973000 /) -XPIZA_LKT(4,19,1:6)=(/ 0.967404,0.976734,0.982134,0.992580,0.987307,0.955171 /) -XCGA_LKT(4,19,1:6)=(/ 0.723760,0.712587,0.720253,0.680220,0.516730,0.159610 /) -XEXT_COEFF_550_LKT(4,19)=2431.000000 !rg=0.0132342 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(4,20,1:6)=(/ 3001.100000,2703.200000,2258.900000,1444.200000,423.470000,55.068000 /) -XPIZA_LKT(4,20,1:6)=(/ 0.961274,0.973500,0.980258,0.993006,0.989915,0.970138 /) -XCGA_LKT(4,20,1:6)=(/ 0.729503,0.716473,0.717963,0.707840,0.585287,0.233330 /) -XEXT_COEFF_550_LKT(4,20)=2269.400000 !rg=0.0132342 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,1,1:6)=(/ 158.850000,47.800000,23.389000,5.547400,2.736500,1.339400 /) -XPIZA_LKT(5,1,1:6)=(/ 0.657319,0.324535,0.118314,0.075136,0.013895,0.001719 /) -XCGA_LKT(5,1,1:6)=(/ 0.031487,0.012203,0.005167,0.002030,0.000643,0.000157 /) -XEXT_COEFF_550_LKT(5,1)=17.645000 !rg=0.0143374 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,2,1:6)=(/ 186.470000,51.985000,24.150000,5.659900,2.747000,1.340000 /) -XPIZA_LKT(5,2,1:6)=(/ 0.705103,0.376215,0.144465,0.092836,0.017448,0.002166 /) -XCGA_LKT(5,2,1:6)=(/ 0.039933,0.015497,0.006567,0.002583,0.000817,0.000200 /) -XEXT_COEFF_550_LKT(5,2)=18.437000 !rg=0.0143374 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,3,1:6)=(/ 252.710000,62.147000,25.995000,5.933300,2.772500,1.341700 /) -XPIZA_LKT(5,3,1:6)=(/ 0.777890,0.473425,0.201976,0.133252,0.026009,0.003255 /) -XCGA_LKT(5,3,1:6)=(/ 0.060580,0.023587,0.010013,0.003940,0.001247,0.000307 /) -XEXT_COEFF_550_LKT(5,3)=20.363000 !rg=0.0143374 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,4,1:6)=(/ 384.940000,83.428000,29.872000,6.509600,2.826000,1.345100 /) -XPIZA_LKT(5,4,1:6)=(/ 0.849434,0.601669,0.300677,0.207771,0.043641,0.005553 /) -XCGA_LKT(5,4,1:6)=(/ 0.102130,0.040123,0.017093,0.006740,0.002133,0.000527 /) -XEXT_COEFF_550_LKT(5,4)=24.418000 !rg=0.0143374 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,5,1:6)=(/ 615.490000,124.630000,37.484000,7.646000,2.931200,1.351700 /) -XPIZA_LKT(5,5,1:6)=(/ 0.901607,0.727066,0.436525,0.322503,0.076693,0.010072 /) -XCGA_LKT(5,5,1:6)=(/ 0.169203,0.067080,0.028680,0.011337,0.003593,0.000887 /) -XEXT_COEFF_550_LKT(5,5)=32.394000 !rg=0.0143374 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,6,1:6)=(/ 967.410000,197.120000,51.357000,9.731800,3.123700,1.363700 /) -XPIZA_LKT(5,6,1:6)=(/ 0.933776,0.821837,0.582066,0.464140,0.131811,0.018287 /) -XCGA_LKT(5,6,1:6)=(/ 0.260543,0.104777,0.044867,0.017773,0.005643,0.001390 /) -XEXT_COEFF_550_LKT(5,6)=46.944000 !rg=0.0143374 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,7,1:6)=(/ 1480.200000,316.900000,75.999000,13.489000,3.470100,1.385200 /) -XPIZA_LKT(5,7,1:6)=(/ 0.953537,0.884495,0.711097,0.609591,0.216067,0.032789 /) -XCGA_LKT(5,7,1:6)=(/ 0.365220,0.157213,0.067207,0.026663,0.008483,0.002093 /) -XEXT_COEFF_550_LKT(5,7)=72.787000 !rg=0.0143374 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,8,1:6)=(/ 2158.200000,498.380000,118.200000,20.117000,4.081800,1.423000 /) -XPIZA_LKT(5,8,1:6)=(/ 0.965605,0.922710,0.808504,0.734555,0.330563,0.057454 /) -XCGA_LKT(5,8,1:6)=(/ 0.457370,0.231153,0.098510,0.039093,0.012463,0.003077 /) -XEXT_COEFF_550_LKT(5,8)=116.970000 !rg=0.0143374 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,9,1:6)=(/ 2990.000000,762.940000,188.320000,31.836000,5.169600,1.490200 /) -XPIZA_LKT(5,9,1:6)=(/ 0.973098,0.946081,0.874987,0.828945,0.467992,0.098437 /) -XCGA_LKT(5,9,1:6)=(/ 0.538093,0.330833,0.143567,0.056810,0.018143,0.004487 /) -XEXT_COEFF_550_LKT(5,9)=190.070000 !rg=0.0143374 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,10,1:6)=(/ 3904.800000,1141.000000,296.460000,52.150000,7.087600,1.608500 /) -XPIZA_LKT(5,10,1:6)=(/ 0.977818,0.960985,0.916668,0.892752,0.608335,0.162736 /) -XCGA_LKT(5,10,1:6)=(/ 0.602080,0.431997,0.209310,0.082257,0.026303,0.006517 /) -XEXT_COEFF_550_LKT(5,10)=302.060000 !rg=0.0143374 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,11,1:6)=(/ 4814.900000,1616.600000,453.940000,86.832000,10.500000,1.819400 /) -XPIZA_LKT(5,11,1:6)=(/ 0.980747,0.970274,0.942141,0.933273,0.732061,0.257173 /) -XCGA_LKT(5,11,1:6)=(/ 0.651820,0.510420,0.303843,0.119340,0.038113,0.009463 /) -XEXT_COEFF_550_LKT(5,11)=464.620000 !rg=0.0143374 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,12,1:6)=(/ 5559.400000,2175.600000,682.950000,142.790000,16.519000,2.194400 /) -XPIZA_LKT(5,12,1:6)=(/ 0.982312,0.976082,0.958347,0.957592,0.826471,0.380925 /) -XCGA_LKT(5,12,1:6)=(/ 0.687053,0.582050,0.414690,0.173963,0.055230,0.013743 /) -XEXT_COEFF_550_LKT(5,12)=701.270000 !rg=0.0143374 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,13,1:6)=(/ 5979.900000,2751.000000,987.860000,225.950000,27.009000,2.860800 /) -XPIZA_LKT(5,13,1:6)=(/ 0.982714,0.979698,0.968830,0.971716,0.891112,0.521568 /) -XCGA_LKT(5,13,1:6)=(/ 0.708773,0.635753,0.498880,0.254793,0.080097,0.019960 /) -XEXT_COEFF_550_LKT(5,13)=1011.400000 !rg=0.0143374 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,14,1:6)=(/ 5974.800000,3266.100000,1336.700000,343.290000,44.725000,4.037700 /) -XPIZA_LKT(5,14,1:6)=(/ 0.981970,0.981802,0.975108,0.980031,0.932010,0.657367 /) -XCGA_LKT(5,14,1:6)=(/ 0.717780,0.676500,0.569820,0.365303,0.116357,0.028980 /) -XEXT_COEFF_550_LKT(5,14)=1367.300000 !rg=0.0143374 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,15,1:6)=(/ 5588.600000,3622.700000,1711.300000,512.520000,73.151000,6.112100 /) -XPIZA_LKT(5,15,1:6)=(/ 0.980139,0.982692,0.979133,0.985447,0.956679,0.770200 /) -XCGA_LKT(5,15,1:6)=(/ 0.717677,0.703213,0.627647,0.470053,0.169743,0.042060 /) -XEXT_COEFF_550_LKT(5,15)=1744.700000 !rg=0.0143374 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,16,1:6)=(/ 5033.900000,3737.000000,2062.300000,715.790000,115.210000,9.755000 /) -XPIZA_LKT(5,16,1:6)=(/ 0.977360,0.982451,0.981540,0.988784,0.971103,0.852940 /) -XCGA_LKT(5,16,1:6)=(/ 0.715070,0.716997,0.671143,0.541850,0.248763,0.061040 /) -XEXT_COEFF_550_LKT(5,16)=2096.400000 !rg=0.0143374 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,17,1:6)=(/ 4469.700000,3582.300000,2319.600000,945.420000,173.130000,16.000000 /) -XPIZA_LKT(5,17,1:6)=(/ 0.974161,0.981037,0.982669,0.990833,0.979533,0.907770 /) -XCGA_LKT(5,17,1:6)=(/ 0.718090,0.718913,0.700340,0.609053,0.358580,0.088560 /) -XEXT_COEFF_550_LKT(5,17)=2350.900000 !rg=0.0143374 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,18,1:6)=(/ 3890.200000,3257.700000,2427.900000,1170.400000,255.870000,26.371000 /) -XPIZA_LKT(5,18,1:6)=(/ 0.970229,0.978515,0.982655,0.992090,0.985026,0.941988 /) -XCGA_LKT(5,18,1:6)=(/ 0.722673,0.714127,0.716280,0.657153,0.470170,0.128680 /) -XEXT_COEFF_550_LKT(5,18)=2452.900000 !rg=0.0143374 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,19,1:6)=(/ 3309.700000,2900.300000,2364.000000,1363.100000,358.710000,42.601000 /) -XPIZA_LKT(5,19,1:6)=(/ 0.964441,0.975520,0.981486,0.992797,0.988562,0.962487 /) -XCGA_LKT(5,19,1:6)=(/ 0.725733,0.714007,0.720157,0.693183,0.545250,0.187777 /) -XEXT_COEFF_550_LKT(5,19)=2379.100000 !rg=0.0143374 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(5,20,1:6)=(/ 2786.500000,2568.900000,2162.700000,1482.500000,474.170000,65.686000 /) -XPIZA_LKT(5,20,1:6)=(/ 0.959361,0.972083,0.979225,0.993033,0.990722,0.974385 /) -XCGA_LKT(5,20,1:6)=(/ 0.731550,0.719600,0.715697,0.715443,0.613660,0.274610 /) -XEXT_COEFF_550_LKT(5,20)=2174.400000 !rg=0.0143374 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,1,1:6)=(/ 187.820000,52.181000,24.187000,5.665200,2.747600,1.340100 /) -XPIZA_LKT(6,1,1:6)=(/ 0.706604,0.378045,0.145485,0.093552,0.017596,0.002185 /) -XCGA_LKT(6,1,1:6)=(/ 0.036910,0.014313,0.006063,0.002383,0.000753,0.000187 /) -XEXT_COEFF_550_LKT(6,1)=18.475000 !rg=0.0155325 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,2,1:6)=(/ 222.740000,57.488000,25.151000,5.807800,2.760900,1.340900 /) -XPIZA_LKT(6,2,1:6)=(/ 0.749736,0.432606,0.176395,0.115039,0.022074,0.002752 /) -XCGA_LKT(6,2,1:6)=(/ 0.046800,0.018170,0.007703,0.003030,0.000960,0.000237 /) -XEXT_COEFF_550_LKT(6,2)=19.480000 !rg=0.0155325 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,3,1:6)=(/ 305.950000,70.366000,27.489000,6.154700,2.793200,1.343000 /) -XPIZA_LKT(6,3,1:6)=(/ 0.813546,0.531531,0.242883,0.163344,0.032826,0.004134 /) -XCGA_LKT(6,3,1:6)=(/ 0.070943,0.027647,0.011743,0.004623,0.001463,0.000360 /) -XEXT_COEFF_550_LKT(6,3)=21.922000 !rg=0.0155325 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,4,1:6)=(/ 468.710000,97.265000,32.402000,6.886000,2.861000,1.347300 /) -XPIZA_LKT(6,4,1:6)=(/ 0.873915,0.655052,0.352447,0.249755,0.054811,0.007049 /) -XCGA_LKT(6,4,1:6)=(/ 0.119287,0.046987,0.020040,0.007907,0.002503,0.000617 /) -XEXT_COEFF_550_LKT(6,4)=27.065000 !rg=0.0155325 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,5,1:6)=(/ 743.990000,148.930000,42.043000,8.328600,2.994300,1.355600 /) -XPIZA_LKT(6,5,1:6)=(/ 0.916675,0.768693,0.494537,0.376462,0.095456,0.012769 /) -XCGA_LKT(6,5,1:6)=(/ 0.196697,0.078480,0.033603,0.013293,0.004217,0.001040 /) -XEXT_COEFF_550_LKT(6,5)=37.172000 !rg=0.0155325 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,6,1:6)=(/ 1156.300000,238.360000,59.572000,10.976000,3.238600,1.370800 /) -XPIZA_LKT(6,6,1:6)=(/ 0.942981,0.850246,0.636612,0.523175,0.161646,0.023131 /) -XCGA_LKT(6,6,1:6)=(/ 0.297457,0.122573,0.052550,0.020833,0.006620,0.001633 /) -XEXT_COEFF_550_LKT(6,6)=55.558000 !rg=0.0155325 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,7,1:6)=(/ 1740.900000,382.190000,90.524000,15.743000,3.678000,1.398100 /) -XPIZA_LKT(6,7,1:6)=(/ 0.959219,0.902279,0.754618,0.663754,0.259166,0.041306 /) -XCGA_LKT(6,7,1:6)=(/ 0.400810,0.183997,0.078710,0.031250,0.009950,0.002457 /) -XEXT_COEFF_550_LKT(6,7)=88.003000 !rg=0.0155325 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,8,1:6)=(/ 2481.300000,594.660000,142.840000,24.139000,4.454200,1.446000 /) -XPIZA_LKT(6,8,1:6)=(/ 0.969072,0.933556,0.839115,0.777161,0.385073,0.071889 /) -XCGA_LKT(6,8,1:6)=(/ 0.489240,0.269360,0.115440,0.045800,0.014613,0.003610 /) -XEXT_COEFF_550_LKT(6,8)=142.690000 !rg=0.0155325 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,9,1:6)=(/ 3366.800000,904.440000,227.630000,38.927000,5.834500,1.531200 /) -XPIZA_LKT(6,9,1:6)=(/ 0.975326,0.953023,0.894608,0.858680,0.526985,0.121806 /) -XCGA_LKT(6,9,1:6)=(/ 0.565413,0.374173,0.168473,0.066553,0.021273,0.005267 /) -XEXT_COEFF_550_LKT(6,9)=230.860000 !rg=0.0155325 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,10,1:6)=(/ 4291.300000,1326.400000,354.230000,64.331000,8.266500,1.681300 /) -XPIZA_LKT(6,10,1:6)=(/ 0.979189,0.965366,0.928610,0.911881,0.662526,0.197947 /) -XCGA_LKT(6,10,1:6)=(/ 0.623170,0.464750,0.245617,0.096403,0.030830,0.007647 /) -XEXT_COEFF_550_LKT(6,10)=361.670000 !rg=0.0155325 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,11,1:6)=(/ 5151.000000,1834.900000,537.420000,106.900000,12.585000,1.948900 /) -XPIZA_LKT(6,11,1:6)=(/ 0.981509,0.972929,0.949587,0.944865,0.774900,0.305220 /) -XCGA_LKT(6,11,1:6)=(/ 0.667197,0.540353,0.350683,0.140053,0.044660,0.011100 /) -XEXT_COEFF_550_LKT(6,11)=551.050000 !rg=0.0155325 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,12,1:6)=(/ 5782.700000,2410.800000,801.660000,173.390000,20.175000,2.424700 /) -XPIZA_LKT(6,12,1:6)=(/ 0.982594,0.977782,0.963288,0.964342,0.856542,0.438201 /) -XCGA_LKT(6,12,1:6)=(/ 0.697103,0.605177,0.452997,0.204563,0.064710,0.016117 /) -XEXT_COEFF_550_LKT(6,12)=822.530000 !rg=0.0155325 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,13,1:6)=(/ 6037.500000,2977.700000,1123.800000,269.270000,33.287000,3.270300 /) -XPIZA_LKT(6,13,1:6)=(/ 0.982553,0.980736,0.971753,0.975630,0.910509,0.579808 /) -XCGA_LKT(6,13,1:6)=(/ 0.713803,0.653927,0.527503,0.298613,0.093883,0.023403 /) -XEXT_COEFF_550_LKT(6,13)=1149.800000 !rg=0.0155325 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,14,1:6)=(/ 5860.200000,3439.700000,1493.400000,406.700000,55.032000,4.762100 /) -XPIZA_LKT(6,14,1:6)=(/ 0.981366,0.982309,0.977015,0.982544,0.943844,0.707842 /) -XCGA_LKT(6,14,1:6)=(/ 0.718567,0.688750,0.596357,0.413430,0.136560,0.033967 /) -XEXT_COEFF_550_LKT(6,14)=1525.100000 !rg=0.0155325 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,15,1:6)=(/ 5383.700000,3701.600000,1861.800000,594.030000,88.804000,7.386500 /) -XPIZA_LKT(6,15,1:6)=(/ 0.979058,0.982737,0.980258,0.987050,0.963620,0.808329 /) -XCGA_LKT(6,15,1:6)=(/ 0.716103,0.710130,0.646627,0.501373,0.199620,0.049287 /) -XEXT_COEFF_550_LKT(6,15)=1897.000000 !rg=0.0155325 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,16,1:6)=(/ 4805.200000,3702.400000,2182.500000,807.520000,137.040000,11.972000 /) -XPIZA_LKT(6,16,1:6)=(/ 0.976195,0.982013,0.982108,0.989730,0.975121,0.878873 /) -XCGA_LKT(6,16,1:6)=(/ 0.716263,0.718713,0.684537,0.571013,0.291983,0.071533 /) -XEXT_COEFF_550_LKT(6,16)=2217.100000 !rg=0.0155325 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,17,1:6)=(/ 4246.200000,3462.000000,2385.600000,1039.800000,204.180000,19.750000 /) -XPIZA_LKT(6,17,1:6)=(/ 0.972711,0.980127,0.982770,0.991439,0.982083,0.924221 /) -XCGA_LKT(6,17,1:6)=(/ 0.720983,0.717137,0.708377,0.630437,0.409203,0.103850 /) -XEXT_COEFF_550_LKT(6,17)=2415.300000 !rg=0.0155325 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,18,1:6)=(/ 3649.500000,3109.400000,2421.400000,1257.200000,297.710000,32.388000 /) -XPIZA_LKT(6,18,1:6)=(/ 0.968018,0.977376,0.982311,0.992455,0.986735,0.951938 /) -XCGA_LKT(6,18,1:6)=(/ 0.723677,0.713797,0.719237,0.673867,0.504823,0.151163 /) -XEXT_COEFF_550_LKT(6,18)=2442.000000 !rg=0.0155325 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,19,1:6)=(/ 3082.800000,2769.700000,2291.000000,1423.800000,404.770000,51.452000 /) -XPIZA_LKT(6,19,1:6)=(/ 0.962630,0.974170,0.980667,0.992958,0.989571,0.968299 /) -XCGA_LKT(6,19,1:6)=(/ 0.727313,0.716390,0.718767,0.703837,0.574277,0.221093 /) -XEXT_COEFF_550_LKT(6,19)=2304.700000 !rg=0.0155325 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(6,20,1:6)=(/ 2578.000000,2423.000000,2067.000000,1500.900000,524.570000,77.739000 /) -XPIZA_LKT(6,20,1:6)=(/ 0.957392,0.970310,0.977974,0.993000,0.991395,0.977791 /) -XCGA_LKT(6,20,1:6)=(/ 0.734070,0.721477,0.713567,0.720567,0.637487,0.321877 /) -XEXT_COEFF_550_LKT(6,20)=2071.400000 !rg=0.0155325 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,1,1:6)=(/ 224.510000,57.735000,25.198000,5.814400,2.761500,1.341000 /) -XPIZA_LKT(7,1,1:6)=(/ 0.751093,0.434492,0.177583,0.115901,0.022260,0.002776 /) -XCGA_LKT(7,1,1:6)=(/ 0.043263,0.016787,0.007113,0.002797,0.000883,0.000217 /) -XEXT_COEFF_550_LKT(7,1)=19.526000 !rg=0.0168272 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,2,1:6)=(/ 268.580000,64.465000,26.418000,5.995400,2.778400,1.342100 /) -XPIZA_LKT(7,2,1:6)=(/ 0.789211,0.490554,0.213548,0.141701,0.027890,0.003496 /) -XCGA_LKT(7,2,1:6)=(/ 0.054850,0.021307,0.009037,0.003557,0.001127,0.000277 /) -XEXT_COEFF_550_LKT(7,2)=20.801000 !rg=0.0168272 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,3,1:6)=(/ 372.630000,80.781000,29.382000,6.435500,2.819300,1.344600 /) -XPIZA_LKT(7,3,1:6)=(/ 0.844110,0.588473,0.288963,0.198642,0.041351,0.005250 /) -XCGA_LKT(7,3,1:6)=(/ 0.083077,0.032403,0.013773,0.005427,0.001717,0.000423 /) -XEXT_COEFF_550_LKT(7,3)=23.899000 !rg=0.0168272 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,4,1:6)=(/ 571.050000,114.720000,35.608000,7.363700,2.905300,1.350000 /) -XPIZA_LKT(7,4,1:6)=(/ 0.894276,0.704317,0.407731,0.296977,0.068628,0.008944 /) -XCGA_LKT(7,4,1:6)=(/ 0.139217,0.055003,0.023487,0.009273,0.002940,0.000723 /) -XEXT_COEFF_550_LKT(7,4)=30.421000 !rg=0.0168272 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,5,1:6)=(/ 896.760000,179.190000,47.811000,9.195100,3.074400,1.360600 /) -XPIZA_LKT(7,5,1:6)=(/ 0.929079,0.804999,0.552360,0.433560,0.118207,0.016176 /) -XCGA_LKT(7,5,1:6)=(/ 0.227547,0.091780,0.039367,0.015587,0.004947,0.001220 /) -XEXT_COEFF_550_LKT(7,5)=43.219000 !rg=0.0168272 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,6,1:6)=(/ 1375.400000,288.450000,69.917000,12.556000,3.384200,1.379900 /) -XPIZA_LKT(7,6,1:6)=(/ 0.950585,0.874019,0.687351,0.581396,0.196670,0.029217 /) -XCGA_LKT(7,6,1:6)=(/ 0.334430,0.143333,0.061537,0.024423,0.007767,0.001917 /) -XEXT_COEFF_550_LKT(7,6)=66.406000 !rg=0.0168272 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,7,1:6)=(/ 2028.100000,459.200000,108.620000,18.600000,3.941900,1.414400 /) -XPIZA_LKT(7,7,1:6)=(/ 0.963844,0.916846,0.792814,0.713694,0.307422,0.051913 /) -XCGA_LKT(7,7,1:6)=(/ 0.434533,0.215010,0.092180,0.036617,0.011670,0.002883 /) -XEXT_COEFF_550_LKT(7,7)=106.940000 !rg=0.0168272 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,8,1:6)=(/ 2834.400000,707.700000,172.890000,29.223000,4.926800,1.475200 /) -XPIZA_LKT(7,8,1:6)=(/ 0.971978,0.942558,0.864843,0.814371,0.442508,0.089596 /) -XCGA_LKT(7,8,1:6)=(/ 0.520550,0.310887,0.135310,0.053657,0.017137,0.004237 /) -XEXT_COEFF_550_LKT(7,8)=173.990000 !rg=0.0168272 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,9,1:6)=(/ 3748.700000,1066.700000,274.040000,47.824000,6.677700,1.583200 /) -XPIZA_LKT(7,9,1:6)=(/ 0.977142,0.958838,0.910637,0.883649,0.585052,0.149777 /) -XCGA_LKT(7,9,1:6)=(/ 0.589377,0.413197,0.197720,0.077970,0.024937,0.006177 /) -XEXT_COEFF_550_LKT(7,9)=278.870000 !rg=0.0168272 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,10,1:6)=(/ 4665.100000,1523.100000,421.120000,79.385000,9.759700,1.773600 /) -XPIZA_LKT(7,10,1:6)=(/ 0.980321,0.968885,0.938356,0.927517,0.712522,0.238559 /) -XCGA_LKT(7,10,1:6)=(/ 0.642177,0.494943,0.287060,0.113023,0.036130,0.008967 /) -XEXT_COEFF_550_LKT(7,10)=430.760000 !rg=0.0168272 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,11,1:6)=(/ 5451.700000,2068.700000,635.750000,130.990000,15.220000,2.113200 /) -XPIZA_LKT(7,11,1:6)=(/ 0.982107,0.975182,0.955914,0.954164,0.812365,0.357836 /) -XCGA_LKT(7,11,1:6)=(/ 0.680453,0.568920,0.396313,0.164477,0.052327,0.013017 /) -XEXT_COEFF_550_LKT(7,11)=652.660000 !rg=0.0168272 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,12,1:6)=(/ 5942.100000,2645.100000,928.550000,208.790000,24.761000,2.717100 /) -XPIZA_LKT(7,12,1:6)=(/ 0.982726,0.979143,0.967300,0.969709,0.881832,0.497035 /) -XCGA_LKT(7,12,1:6)=(/ 0.705027,0.625690,0.484700,0.240500,0.075823,0.018897 /) -XEXT_COEFF_550_LKT(7,12)=951.180000 !rg=0.0168272 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,13,1:6)=(/ 6020.800000,3182.300000,1270.000000,319.590000,41.048000,3.789500 /) -XPIZA_LKT(7,13,1:6)=(/ 0.982212,0.981514,0.974165,0.978836,0.926391,0.635708 /) -XCGA_LKT(7,13,1:6)=(/ 0.716693,0.669357,0.556960,0.346707,0.110080,0.027433 /) -XEXT_COEFF_550_LKT(7,13)=1299.400000 !rg=0.0168272 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,14,1:6)=(/ 5701.000000,3575.100000,1645.600000,479.800000,67.416000,5.679400 /) -XPIZA_LKT(7,14,1:6)=(/ 0.980551,0.982612,0.978554,0.984675,0.953353,0.753421 /) -XCGA_LKT(7,14,1:6)=(/ 0.717917,0.698613,0.618237,0.454850,0.160390,0.039807 /) -XEXT_COEFF_550_LKT(7,14)=1678.200000 !rg=0.0168272 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,15,1:6)=(/ 5155.700000,3735.700000,2003.700000,677.880000,106.880000,8.993800 /) -XPIZA_LKT(7,15,1:6)=(/ 0.978020,0.982565,0.981189,0.988315,0.969137,0.841152 /) -XCGA_LKT(7,15,1:6)=(/ 0.716123,0.714690,0.663787,0.529580,0.234803,0.057753 /) -XEXT_COEFF_550_LKT(7,15)=2037.900000 !rg=0.0168272 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,16,1:6)=(/ 4589.500000,3629.100000,2284.300000,905.040000,162.030000,14.746000 /) -XPIZA_LKT(7,16,1:6)=(/ 0.974899,0.981374,0.982533,0.990538,0.978383,0.900454 /) -XCGA_LKT(7,16,1:6)=(/ 0.718660,0.718887,0.695700,0.598690,0.340337,0.083840 /) -XEXT_COEFF_550_LKT(7,16)=2316.300000 !rg=0.0168272 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,17,1:6)=(/ 4011.500000,3324.200000,2421.100000,1132.700000,240.490000,24.360000 /) -XPIZA_LKT(7,17,1:6)=(/ 0.970830,0.979110,0.982726,0.991916,0.984271,0.937600 /) -XCGA_LKT(7,17,1:6)=(/ 0.722103,0.715917,0.714060,0.649413,0.454863,0.121847 /) -XEXT_COEFF_550_LKT(7,17)=2447.200000 !rg=0.0168272 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,18,1:6)=(/ 3403.500000,2974.300000,2384.900000,1333.200000,341.020000,39.544000 /) -XPIZA_LKT(7,18,1:6)=(/ 0.965591,0.976040,0.981755,0.992708,0.988101,0.959896 /) -XCGA_LKT(7,18,1:6)=(/ 0.724093,0.713837,0.719757,0.687703,0.534097,0.177753 /) -XEXT_COEFF_550_LKT(7,18)=2403.000000 !rg=0.0168272 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,19,1:6)=(/ 2867.300000,2632.300000,2205.700000,1467.600000,454.450000,61.562000 /) -XPIZA_LKT(7,19,1:6)=(/ 0.961163,0.972642,0.979616,0.993020,0.990426,0.972911 /) -XCGA_LKT(7,19,1:6)=(/ 0.732103,0.718633,0.716407,0.712130,0.603430,0.260270 /) -XEXT_COEFF_550_LKT(7,19)=2213.200000 !rg=0.0168272 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(7,20,1:6)=(/ 2394.700000,2270.700000,1969.700000,1501.500000,573.360000,91.629000 /) -XPIZA_LKT(7,20,1:6)=(/ 0.954022,0.968499,0.976666,0.992866,0.991927,0.980592 /) -XCGA_LKT(7,20,1:6)=(/ 0.735900,0.722903,0.711993,0.723560,0.657597,0.373333 /) -XEXT_COEFF_550_LKT(7,20)=1977.800000 !rg=0.0168272 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,1,1:6)=(/ 270.930000,64.778000,26.477000,6.003700,2.779200,1.342100 /) -XPIZA_LKT(8,1,1:6)=(/ 0.790436,0.492444,0.214911,0.142727,0.028123,0.003527 /) -XCGA_LKT(8,1,1:6)=(/ 0.050713,0.019683,0.008347,0.003283,0.001040,0.000257 /) -XEXT_COEFF_550_LKT(8,1)=20.860000 !rg=0.0182298 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,2,1:6)=(/ 326.400000,73.309000,28.024000,6.233300,2.800600,1.343500 /) -XPIZA_LKT(8,2,1:6)=(/ 0.823492,0.548471,0.256000,0.173305,0.035180,0.004441 /) -XCGA_LKT(8,2,1:6)=(/ 0.064287,0.024980,0.010600,0.004173,0.001320,0.000327 /) -XEXT_COEFF_550_LKT(8,2)=22.476000 !rg=0.0182298 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,3,1:6)=(/ 455.680000,93.966000,31.780000,6.791800,2.852400,1.346700 /) -XPIZA_LKT(8,3,1:6)=(/ 0.869932,0.642772,0.339713,0.239336,0.051967,0.006665 /) -XCGA_LKT(8,3,1:6)=(/ 0.097287,0.037967,0.016153,0.006367,0.002017,0.000497 /) -XEXT_COEFF_550_LKT(8,3)=26.407000 !rg=0.0182298 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,4,1:6)=(/ 694.960000,136.680000,39.669000,7.970000,2.961400,1.353600 /) -XPIZA_LKT(8,4,1:6)=(/ 0.911075,0.748717,0.465211,0.348894,0.085605,0.011342 /) -XCGA_LKT(8,4,1:6)=(/ 0.162287,0.064367,0.027527,0.010877,0.003450,0.000850 /) -XEXT_COEFF_550_LKT(8,4)=34.676000 !rg=0.0182298 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,5,1:6)=(/ 1076.900000,216.610000,55.100000,10.295000,3.175900,1.366900 /) -XPIZA_LKT(8,5,1:6)=(/ 0.939281,0.836103,0.608399,0.492339,0.145487,0.020473 /) -XCGA_LKT(8,5,1:6)=(/ 0.261123,0.107277,0.046103,0.018277,0.005807,0.001430 /) -XEXT_COEFF_550_LKT(8,5)=50.863000 !rg=0.0182298 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,6,1:6)=(/ 1624.400000,348.670000,82.904000,14.559000,3.569000,1.391300 /) -XPIZA_LKT(8,6,1:6)=(/ 0.956816,0.893704,0.733388,0.637234,0.237091,0.036843 /) -XCGA_LKT(8,6,1:6)=(/ 0.370480,0.167473,0.072043,0.028623,0.009110,0.002250 /) -XEXT_COEFF_550_LKT(8,6)=80.014000 !rg=0.0182298 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,7,1:6)=(/ 2344.200000,549.690000,131.010000,22.219000,4.276700,1.435100 /) -XPIZA_LKT(8,7,1:6)=(/ 0.967646,0.928804,0.825695,0.758656,0.360206,0.065053 /) -XCGA_LKT(8,7,1:6)=(/ 0.467803,0.250290,0.107953,0.042900,0.013687,0.003383 /) -XEXT_COEFF_550_LKT(8,7)=130.330000 !rg=0.0182298 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,8,1:6)=(/ 3208.000000,840.630000,209.080000,35.631000,5.526400,1.512200 /) -XPIZA_LKT(8,8,1:6)=(/ 0.974406,0.950113,0.886179,0.846292,0.501377,0.111129 /) -XCGA_LKT(8,8,1:6)=(/ 0.549200,0.352807,0.158630,0.062853,0.020093,0.004973 /) -XEXT_COEFF_550_LKT(8,8)=211.590000 !rg=0.0182298 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,9,1:6)=(/ 4139.800000,1245.000000,328.170000,58.932000,7.746700,1.649200 /) -XPIZA_LKT(8,9,1:6)=(/ 0.978641,0.963591,0.923674,0.904357,0.640645,0.182807 /) -XCGA_LKT(8,9,1:6)=(/ 0.611613,0.447110,0.231837,0.091357,0.029230,0.007247 /) -XEXT_COEFF_550_LKT(8,9)=334.790000 !rg=0.0182298 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,10,1:6)=(/ 5016.700000,1735.200000,499.330000,97.797000,11.649000,1.890800 /) -XPIZA_LKT(8,10,1:6)=(/ 0.981189,0.971772,0.946445,0.940188,0.757562,0.284487 /) -XCGA_LKT(8,10,1:6)=(/ 0.658710,0.525257,0.332183,0.132573,0.042337,0.010520 /) -XEXT_COEFF_550_LKT(8,10)=511.710000 !rg=0.0182298 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,11,1:6)=(/ 5702.200000,2304.500000,748.440000,159.460000,18.539000,2.321800 /) -XPIZA_LKT(8,11,1:6)=(/ 0.982488,0.977044,0.961257,0.961583,0.844547,0.414011 /) -XCGA_LKT(8,11,1:6)=(/ 0.691550,0.593427,0.436177,0.193280,0.061307,0.015267 /) -XEXT_COEFF_550_LKT(8,11)=768.110000 !rg=0.0182298 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,12,1:6)=(/ 6036.600000,2877.900000,1060.900000,249.500000,30.485000,3.088000 /) -XPIZA_LKT(8,12,1:6)=(/ 0.982650,0.980280,0.970500,0.974003,0.902839,0.555788 /) -XCGA_LKT(8,12,1:6)=(/ 0.710960,0.644810,0.513737,0.282057,0.088860,0.022157 /) -XEXT_COEFF_550_LKT(8,12)=1085.800000 !rg=0.0182298 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,13,1:6)=(/ 5941.600000,3369.300000,1425.200000,378.940000,50.545000,4.447700 /) -XPIZA_LKT(8,13,1:6)=(/ 0.981685,0.982090,0.976222,0.981536,0.939284,0.687954 /) -XCGA_LKT(8,13,1:6)=(/ 0.718213,0.682593,0.584770,0.395160,0.129147,0.032157 /) -XEXT_COEFF_550_LKT(8,13)=1456.500000 !rg=0.0182298 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,14,1:6)=(/ 5500.000000,3675.300000,1796.600000,559.110000,82.055000,6.839400 /) -XPIZA_LKT(8,14,1:6)=(/ 0.979679,0.982725,0.979779,0.986422,0.960951,0.793700 /) -XCGA_LKT(8,14,1:6)=(/ 0.717653,0.706633,0.637790,0.488207,0.188530,0.046647 /) -XEXT_COEFF_550_LKT(8,14)=1831.400000 !rg=0.0182298 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,15,1:6)=(/ 4940.000000,3723.800000,2129.500000,766.710000,127.500000,11.016000 /) -XPIZA_LKT(8,15,1:6)=(/ 0.976838,0.982219,0.981855,0.989336,0.973533,0.868968 /) -XCGA_LKT(8,15,1:6)=(/ 0.716987,0.717513,0.678127,0.558557,0.275783,0.067677 /) -XEXT_COEFF_550_LKT(8,15)=2164.200000 !rg=0.0182298 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,16,1:6)=(/ 4367.000000,3523.200000,2360.000000,1000.700000,191.190000,18.196000 /) -XPIZA_LKT(8,16,1:6)=(/ 0.973368,0.980565,0.982727,0.991202,0.981110,0.918224 /) -XCGA_LKT(8,16,1:6)=(/ 0.720160,0.718123,0.704523,0.621583,0.390873,0.098297 /) -XEXT_COEFF_550_LKT(8,16)=2390.900000 !rg=0.0182298 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,17,1:6)=(/ 3754.200000,3185.700000,2428.300000,1223.000000,281.040000,29.958000 /) -XPIZA_LKT(8,17,1:6)=(/ 0.969080,0.977862,0.982448,0.992314,0.986112,0.948399 /) -XCGA_LKT(8,17,1:6)=(/ 0.723673,0.714067,0.717660,0.667023,0.492053,0.143080 /) -XEXT_COEFF_550_LKT(8,17)=2450.800000 !rg=0.0182298 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,18,1:6)=(/ 3177.700000,2833.500000,2324.200000,1400.000000,385.920000,47.902000 /) -XPIZA_LKT(8,18,1:6)=(/ 0.963867,0.974858,0.981001,0.992892,0.989190,0.966227 /) -XCGA_LKT(8,18,1:6)=(/ 0.728737,0.715977,0.719050,0.699277,0.562847,0.209210 /) -XEXT_COEFF_550_LKT(8,18)=2337.200000 !rg=0.0182298 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,19,1:6)=(/ 2664.400000,2489.700000,2108.200000,1494.400000,505.160000,73.033000 /) -XPIZA_LKT(8,19,1:6)=(/ 0.958284,0.971106,0.978484,0.993014,0.991151,0.976595 /) -XCGA_LKT(8,19,1:6)=(/ 0.733197,0.721307,0.714010,0.718347,0.628820,0.305523 /) -XEXT_COEFF_550_LKT(8,19)=2119.500000 !rg=0.0182298 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(8,20,1:6)=(/ 2214.500000,2127.900000,1877.100000,1481.400000,622.150000,107.960000 /) -XPIZA_LKT(8,20,1:6)=(/ 0.950658,0.965893,0.975428,0.992657,0.992368,0.982973 /) -XCGA_LKT(8,20,1:6)=(/ 0.737173,0.724117,0.713430,0.724380,0.676287,0.424487 /) -XEXT_COEFF_550_LKT(8,20)=1883.700000 !rg=0.0182298 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,1,1:6)=(/ 329.580000,73.707000,28.098000,6.243800,2.801600,1.343500 /) -XPIZA_LKT(9,1,1:6)=(/ 0.824607,0.550320,0.257532,0.174510,0.035472,0.004479 /) -XCGA_LKT(9,1,1:6)=(/ 0.059450,0.023080,0.009790,0.003853,0.001220,0.000300 /) -XEXT_COEFF_550_LKT(9,1)=22.551000 !rg=0.0197494 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,2,1:6)=(/ 399.130000,84.521000,30.059000,6.535100,2.828700,1.345300 /) -XPIZA_LKT(9,2,1:6)=(/ 0.852798,0.604787,0.303513,0.210195,0.044288,0.005639 /) -XCGA_LKT(9,2,1:6)=(/ 0.075360,0.029283,0.012433,0.004897,0.001550,0.000380 /) -XEXT_COEFF_550_LKT(9,2)=24.602000 !rg=0.0197494 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,3,1:6)=(/ 558.400000,110.650000,34.820000,7.243900,2.894400,1.349400 /) -XPIZA_LKT(9,3,1:6)=(/ 0.891482,0.693236,0.394253,0.285340,0.065117,0.008458 /) -XCGA_LKT(9,3,1:6)=(/ 0.113940,0.044483,0.018940,0.007467,0.002367,0.000583 /) -XEXT_COEFF_550_LKT(9,3)=29.588000 !rg=0.0197494 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,4,1:6)=(/ 843.500000,164.210000,44.812000,8.739700,3.032500,1.358000 /) -XPIZA_LKT(9,4,1:6)=(/ 0.924855,0.787888,0.523339,0.404563,0.106289,0.014374 /) -XCGA_LKT(9,4,1:6)=(/ 0.188790,0.075293,0.032253,0.012757,0.004047,0.000997 /) -XEXT_COEFF_550_LKT(9,4)=40.067000 !rg=0.0197494 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,5,1:6)=(/ 1286.900000,262.520000,64.296000,11.691000,3.304700,1.374900 /) -XPIZA_LKT(9,5,1:6)=(/ 0.947652,0.862358,0.661261,0.551175,0.177767,0.025879 /) -XCGA_LKT(9,5,1:6)=(/ 0.296533,0.125307,0.053980,0.021423,0.006810,0.001680 /) -XEXT_COEFF_550_LKT(9,5)=60.506000 !rg=0.0197494 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,6,1:6)=(/ 1903.100000,420.400000,99.131000,17.099000,3.803500,1.405800 /) -XPIZA_LKT(9,6,1:6)=(/ 0.961910,0.909909,0.774224,0.689379,0.282837,0.046361 /) -XCGA_LKT(9,6,1:6)=(/ 0.405893,0.195370,0.084333,0.033540,0.010687,0.002640 /) -XEXT_COEFF_550_LKT(9,6)=97.004000 !rg=0.0197494 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,7,1:6)=(/ 2691.600000,656.200000,158.440000,26.794000,4.701500,1.461300 /) -XPIZA_LKT(9,7,1:6)=(/ 0.970822,0.938705,0.853528,0.798272,0.416494,0.081228 /) -XCGA_LKT(9,7,1:6)=(/ 0.500423,0.288947,0.126427,0.050257,0.016050,0.003967 /) -XEXT_COEFF_550_LKT(9,7)=158.930000 !rg=0.0197494 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,8,1:6)=(/ 3592.200000,993.840000,252.080000,43.684000,6.287000,1.559100 /) -XPIZA_LKT(9,8,1:6)=(/ 0.976397,0.956423,0.903693,0.873257,0.560042,0.137042 /) -XCGA_LKT(9,8,1:6)=(/ 0.574737,0.391747,0.185960,0.073623,0.023553,0.005833 /) -XEXT_COEFF_550_LKT(9,8)=256.150000 !rg=0.0197494 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,9,1:6)=(/ 4525.400000,1436.000000,391.080000,72.697000,9.101300,1.732900 /) -XPIZA_LKT(9,9,1:6)=(/ 0.979888,0.967426,0.934316,0.921348,0.692475,0.221188 /) -XCGA_LKT(9,9,1:6)=(/ 0.631887,0.478260,0.270930,0.107067,0.034257,0.008500 /) -XEXT_COEFF_550_LKT(9,9)=399.780000 !rg=0.0197494 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,10,1:6)=(/ 5341.100000,1964.400000,591.470000,120.020000,14.037000,2.039600 /) -XPIZA_LKT(9,10,1:6)=(/ 0.981877,0.974213,0.953284,0.950381,0.797275,0.335290 /) -XCGA_LKT(9,10,1:6)=(/ 0.673177,0.554703,0.377370,0.155593,0.049603,0.012340 /) -XEXT_COEFF_550_LKT(9,10)=607.000000 !rg=0.0197494 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,11,1:6)=(/ 5897.000000,2539.500000,870.910000,192.590000,22.707000,2.586500 /) -XPIZA_LKT(9,11,1:6)=(/ 0.982705,0.978539,0.965629,0.967489,0.871765,0.472388 /) -XCGA_LKT(9,11,1:6)=(/ 0.700720,0.614863,0.469427,0.227120,0.071830,0.017903 /) -XEXT_COEFF_550_LKT(9,11)=892.550000 !rg=0.0197494 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,12,1:6)=(/ 6057.400000,3091.800000,1202.700000,296.650000,37.580000,3.558400 /) -XPIZA_LKT(9,12,1:6)=(/ 0.982415,0.981172,0.973113,0.977497,0.920105,0.612838 /) -XCGA_LKT(9,12,1:6)=(/ 0.715080,0.661347,0.543283,0.328377,0.104167,0.025973 /) -XEXT_COEFF_550_LKT(9,12)=1230.800000 !rg=0.0197494 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,13,1:6)=(/ 5803.500000,3521.100000,1578.800000,448.140000,62.018000,5.281400 /) -XPIZA_LKT(9,13,1:6)=(/ 0.981021,0.982495,0.977911,0.983831,0.949674,0.735587 /) -XCGA_LKT(9,13,1:6)=(/ 0.718760,0.693463,0.608083,0.438530,0.151617,0.037687 /) -XEXT_COEFF_550_LKT(9,13)=1610.900000 !rg=0.0197494 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,14,1:6)=(/ 5293.700000,3729.300000,1943.900000,641.300000,99.059000,8.303800 /) -XPIZA_LKT(9,14,1:6)=(/ 0.978586,0.982655,0.980802,0.987808,0.966996,0.828616 /) -XCGA_LKT(9,14,1:6)=(/ 0.717167,0.712120,0.655910,0.517073,0.221690,0.054660 /) -XEXT_COEFF_550_LKT(9,14)=1978.500000 !rg=0.0197494 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,15,1:6)=(/ 4716.900000,3669.900000,2241.400000,862.480000,151.070000,13.550000 /) -XPIZA_LKT(9,15,1:6)=(/ 0.975604,0.981687,0.982344,0.990203,0.977081,0.892230 /) -XCGA_LKT(9,15,1:6)=(/ 0.718277,0.718653,0.690273,0.587230,0.322233,0.079310 /) -XEXT_COEFF_550_LKT(9,15)=2274.400000 !rg=0.0197494 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,16,1:6)=(/ 4126.700000,3396.500000,2409.600000,1093.600000,225.460000,22.451000 /) -XPIZA_LKT(9,16,1:6)=(/ 0.971817,0.979551,0.982755,0.991723,0.983443,0.932724 /) -XCGA_LKT(9,16,1:6)=(/ 0.722753,0.716200,0.711347,0.641163,0.438337,0.115303 /) -XEXT_COEFF_550_LKT(9,16)=2436.700000 !rg=0.0197494 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,17,1:6)=(/ 3517.500000,3040.000000,2403.600000,1302.500000,323.640000,36.656000 /) -XPIZA_LKT(9,17,1:6)=(/ 0.966296,0.976714,0.981996,0.992610,0.987599,0.957057 /) -XCGA_LKT(9,17,1:6)=(/ 0.725263,0.714523,0.719247,0.681840,0.522587,0.168173 /) -XEXT_COEFF_550_LKT(9,17)=2422.500000 !rg=0.0197494 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,18,1:6)=(/ 2959.500000,2700.300000,2242.700000,1449.600000,434.280000,57.497000 /) -XPIZA_LKT(9,18,1:6)=(/ 0.961918,0.973460,0.980097,0.992995,0.990099,0.971253 /) -XCGA_LKT(9,18,1:6)=(/ 0.730633,0.718990,0.717253,0.708347,0.592387,0.246287 /) -XEXT_COEFF_550_LKT(9,18)=2256.000000 !rg=0.0197494 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,19,1:6)=(/ 2462.700000,2342.200000,2012.300000,1501.800000,554.150000,86.180000 /) -XPIZA_LKT(9,19,1:6)=(/ 0.955088,0.969070,0.977277,0.992917,0.991731,0.979599 /) -XCGA_LKT(9,19,1:6)=(/ 0.733940,0.722417,0.713330,0.721950,0.649830,0.355740 /) -XEXT_COEFF_550_LKT(9,19)=2019.100000 !rg=0.0197494 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(9,20,1:6)=(/ 2050.600000,1984.300000,1793.600000,1444.900000,667.020000,126.990000 /) -XPIZA_LKT(9,20,1:6)=(/ 0.946824,0.963550,0.973952,0.992360,0.992725,0.985024 /) -XCGA_LKT(9,20,1:6)=(/ 0.741877,0.724877,0.714890,0.723477,0.692750,0.469380 /) -XEXT_COEFF_550_LKT(9,20)=1797.400000 !rg=0.0197494 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,1,1:6)=(/ 403.520000,85.028000,30.151000,6.548300,2.830000,1.345300 /) -XPIZA_LKT(10,1,1:6)=(/ 0.853826,0.606542,0.305190,0.211581,0.044651,0.005688 /) -XCGA_LKT(10,1,1:6)=(/ 0.069703,0.027060,0.011483,0.004520,0.001430,0.000353 /) -XEXT_COEFF_550_LKT(10,1)=24.695000 !rg=0.0213956 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,2,1:6)=(/ 490.200000,98.727000,32.637000,6.918000,2.864300,1.347500 /) -XPIZA_LKT(10,2,1:6)=(/ 0.877511,0.658097,0.355471,0.252484,0.055611,0.007158 /) -XCGA_LKT(10,2,1:6)=(/ 0.088370,0.034327,0.014583,0.005743,0.001820,0.000447 /) -XEXT_COEFF_550_LKT(10,2)=27.298000 !rg=0.0213956 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,3,1:6)=(/ 684.270000,131.720000,38.672000,7.817800,2.947500,1.352700 /) -XPIZA_LKT(10,3,1:6)=(/ 0.909284,0.739026,0.451340,0.336200,0.081302,0.010728 /) -XCGA_LKT(10,3,1:6)=(/ 0.133477,0.052107,0.022203,0.008760,0.002777,0.000683 /) -XEXT_COEFF_550_LKT(10,3)=33.623000 !rg=0.0213956 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,4,1:6)=(/ 1019.600000,198.580000,51.321000,9.716700,3.122800,1.363700 /) -XPIZA_LKT(10,4,1:6)=(/ 0.936112,0.821798,0.580494,0.462676,0.131236,0.018201 /) -XCGA_LKT(10,4,1:6)=(/ 0.218873,0.088037,0.037783,0.014960,0.004747,0.001170 /) -XEXT_COEFF_550_LKT(10,4)=46.892000 !rg=0.0213956 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,5,1:6)=(/ 1528.000000,318.330000,75.867000,13.462000,3.468000,1.385100 /) -XPIZA_LKT(10,5,1:6)=(/ 0.954499,0.884259,0.709854,0.608423,0.215364,0.032664 /) -XCGA_LKT(10,5,1:6)=(/ 0.333157,0.146237,0.063187,0.025110,0.007990,0.001970 /) -XEXT_COEFF_550_LKT(10,5)=72.637000 !rg=0.0213956 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,6,1:6)=(/ 2213.700000,505.340000,119.280000,20.318000,4.101000,1.424200 /) -XPIZA_LKT(10,6,1:6)=(/ 0.966107,0.923239,0.809711,0.736868,0.333468,0.058185 /) -XCGA_LKT(10,6,1:6)=(/ 0.441190,0.227137,0.098697,0.039293,0.012533,0.003097 /) -XEXT_COEFF_550_LKT(10,6)=118.070000 !rg=0.0213956 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,7,1:6)=(/ 3063.000000,781.440000,191.660000,32.567000,5.240500,1.494600 /) -XPIZA_LKT(10,7,1:6)=(/ 0.973469,0.946965,0.876754,0.832518,0.474912,0.100979 /) -XCGA_LKT(10,7,1:6)=(/ 0.530703,0.328743,0.148057,0.058863,0.018817,0.004657 /) -XEXT_COEFF_550_LKT(10,7)=193.500000 !rg=0.0213956 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,8,1:6)=(/ 3988.600000,1164.100000,302.580000,53.753000,7.251300,1.618600 /) -XPIZA_LKT(10,8,1:6)=(/ 0.978045,0.961593,0.917987,0.895730,0.616876,0.167829 /) -XCGA_LKT(10,8,1:6)=(/ 0.598450,0.426563,0.217793,0.086240,0.027607,0.006843 /) -XEXT_COEFF_550_LKT(10,8)=308.370000 !rg=0.0213956 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,9,1:6)=(/ 4893.100000,1642.600000,464.610000,89.592000,10.816000,1.839200 /) -XPIZA_LKT(10,9,1:6)=(/ 0.980867,0.970567,0.943117,0.935163,0.739612,0.264960 /) -XCGA_LKT(10,9,1:6)=(/ 0.649710,0.509183,0.313967,0.125523,0.040140,0.009973 /) -XEXT_COEFF_550_LKT(10,9)=475.880000 !rg=0.0213956 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,10,1:6)=(/ 5619.100000,2199.700000,697.960000,146.430000,17.047000,2.228300 /) -XPIZA_LKT(10,10,1:6)=(/ 0.982359,0.976245,0.959058,0.958532,0.831630,0.390118 /) -XCGA_LKT(10,10,1:6)=(/ 0.685443,0.580550,0.418143,0.182703,0.058110,0.014470 /) -XEXT_COEFF_550_LKT(10,10)=716.370000 !rg=0.0213956 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,11,1:6)=(/ 6026.600000,2776.500000,999.730000,230.810000,27.919000,2.922300 /) -XPIZA_LKT(10,11,1:6)=(/ 0.982730,0.979783,0.969128,0.972206,0.894484,0.531377 /) -XCGA_LKT(10,11,1:6)=(/ 0.707707,0.634903,0.499200,0.266403,0.084167,0.020990 /) -XEXT_COEFF_550_LKT(10,11)=1023.500000 !rg=0.0213956 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,12,1:6)=(/ 6011.900000,3289.900000,1355.100000,352.110000,46.294000,4.154700 /) -XPIZA_LKT(10,12,1:6)=(/ 0.982001,0.981830,0.975333,0.980415,0.934167,0.666738 /) -XCGA_LKT(10,12,1:6)=(/ 0.717633,0.675580,0.572067,0.376397,0.122163,0.030443 /) -XEXT_COEFF_550_LKT(10,12)=1385.700000 !rg=0.0213956 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,13,1:6)=(/ 5632.600000,3640.800000,1730.100000,524.710000,75.657000,6.335900 /) -XPIZA_LKT(10,13,1:6)=(/ 0.980134,0.982680,0.979252,0.985729,0.957990,0.778028 /) -XCGA_LKT(10,13,1:6)=(/ 0.718387,0.702470,0.628343,0.474027,0.178123,0.044160 /) -XEXT_COEFF_550_LKT(10,13)=1764.300000 !rg=0.0213956 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,14,1:6)=(/ 5070.300000,3739.200000,2075.700000,727.570000,118.550000,10.148000 /) -XPIZA_LKT(10,14,1:6)=(/ 0.977476,0.982402,0.981575,0.988916,0.971809,0.858384 /) -XCGA_LKT(10,14,1:6)=(/ 0.717400,0.716000,0.671283,0.545880,0.260457,0.064047 /) -XEXT_COEFF_550_LKT(10,14)=2110.300000 !rg=0.0213956 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,15,1:6)=(/ 4492.800000,3581.000000,2327.400000,958.900000,178.410000,16.708000 /) -XPIZA_LKT(10,15,1:6)=(/ 0.974229,0.980946,0.982643,0.990928,0.980017,0.911460 /) -XCGA_LKT(10,15,1:6)=(/ 0.721093,0.718180,0.699983,0.611750,0.372030,0.092970 /) -XEXT_COEFF_550_LKT(10,15)=2359.100000 !rg=0.0213956 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,16,1:6)=(/ 3882.700000,3253.600000,2428.800000,1186.200000,264.430000,27.640000 /) -XPIZA_LKT(10,16,1:6)=(/ 0.969720,0.978547,0.982570,0.992154,0.985422,0.944458 /) -XCGA_LKT(10,16,1:6)=(/ 0.723823,0.715653,0.715667,0.659520,0.478127,0.135343 /) -XEXT_COEFF_550_LKT(10,16)=2453.600000 !rg=0.0213956 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,17,1:6)=(/ 3271.700000,2906.400000,2353.000000,1374.100000,367.590000,44.529000 /) -XPIZA_LKT(10,17,1:6)=(/ 0.964811,0.975451,0.981346,0.992816,0.988780,0.963958 /) -XCGA_LKT(10,17,1:6)=(/ 0.726757,0.716223,0.719217,0.694283,0.551263,0.197850 /) -XEXT_COEFF_550_LKT(10,17)=2369.400000 !rg=0.0213956 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,18,1:6)=(/ 2745.900000,2561.500000,2153.200000,1484.600000,484.900000,68.401000 /) -XPIZA_LKT(10,18,1:6)=(/ 0.959502,0.971690,0.979000,0.993013,0.990877,0.975257 /) -XCGA_LKT(10,18,1:6)=(/ 0.732290,0.720370,0.715430,0.715557,0.619280,0.289407 /) -XEXT_COEFF_550_LKT(10,18)=2160.000000 !rg=0.0213956 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,19,1:6)=(/ 2288.100000,2186.000000,1922.500000,1489.800000,603.120000,101.560000 /) -XPIZA_LKT(10,19,1:6)=(/ 0.951589,0.967004,0.975882,0.992741,0.992201,0.982126 /) -XCGA_LKT(10,19,1:6)=(/ 0.737820,0.723347,0.712667,0.723743,0.669027,0.407307 /) -XEXT_COEFF_550_LKT(10,19)=1927.800000 !rg=0.0213956 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(10,20,1:6)=(/ 1881.900000,1851.800000,1702.700000,1396.100000,707.430000,147.990000 /) -XPIZA_LKT(10,20,1:6)=(/ 0.943790,0.961963,0.972587,0.991972,0.992979,0.986744 /) -XCGA_LKT(10,20,1:6)=(/ 0.744250,0.730417,0.718377,0.721283,0.706687,0.505157 /) -XEXT_COEFF_550_LKT(10,20)=1711.500000 !rg=0.0213956 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,1,1:6)=(/ 496.440000,99.380000,32.754000,6.934700,2.865900,1.347600 /) -XPIZA_LKT(11,1,1:6)=(/ 0.878489,0.659733,0.357269,0.254054,0.056062,0.007220 /) -XCGA_LKT(11,1,1:6)=(/ 0.081757,0.031723,0.013470,0.005303,0.001680,0.000413 /) -XEXT_COEFF_550_LKT(11,1)=27.416000 !rg=0.0231791 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,2,1:6)=(/ 603.570000,116.720000,35.906000,7.403900,2.909400,1.350400 /) -XPIZA_LKT(11,2,1:6)=(/ 0.898114,0.707311,0.410883,0.299984,0.069613,0.009083 /) -XCGA_LKT(11,2,1:6)=(/ 0.103690,0.040233,0.017103,0.006740,0.002133,0.000527 /) -XEXT_COEFF_550_LKT(11,2)=30.718000 !rg=0.0231791 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,3,1:6)=(/ 836.770000,158.300000,43.555000,8.546300,3.014900,1.357000 /) -XPIZA_LKT(11,3,1:6)=(/ 0.923863,0.779683,0.509473,0.391067,0.101062,0.013598 /) -XCGA_LKT(11,3,1:6)=(/ 0.156403,0.061030,0.026027,0.010277,0.003257,0.000803 /) -XEXT_COEFF_550_LKT(11,3)=38.740000 !rg=0.0231791 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,4,1:6)=(/ 1226.100000,241.210000,59.550000,10.957000,3.237300,1.370800 /) -XPIZA_LKT(11,4,1:6)=(/ 0.945286,0.850684,0.635170,0.521676,0.160960,0.023022 /) -XCGA_LKT(11,4,1:6)=(/ 0.252533,0.102880,0.044250,0.017540,0.005570,0.001373 /) -XEXT_COEFF_550_LKT(11,4)=55.523000 !rg=0.0231791 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,5,1:6)=(/ 1802.000000,385.590000,90.377000,15.709000,3.675300,1.397900 /) -XPIZA_LKT(11,5,1:6)=(/ 0.960107,0.902381,0.753477,0.662624,0.258361,0.041149 /) -XCGA_LKT(11,5,1:6)=(/ 0.370760,0.170417,0.073933,0.029423,0.009370,0.002313 /) -XEXT_COEFF_550_LKT(11,5)=87.840000 !rg=0.0231791 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,6,1:6)=(/ 2557.100000,605.750000,144.100000,24.390000,4.478600,1.447600 /) -XPIZA_LKT(11,6,1:6)=(/ 0.969598,0.934249,0.840009,0.779151,0.388162,0.072788 /) -XCGA_LKT(11,6,1:6)=(/ 0.475830,0.262247,0.115477,0.046027,0.014697,0.003633 /) -XEXT_COEFF_550_LKT(11,6)=143.980000 !rg=0.0231791 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,7,1:6)=(/ 3451.000000,926.240000,231.420000,39.831000,5.924300,1.536800 /) -XPIZA_LKT(11,7,1:6)=(/ 0.975649,0.953830,0.895924,0.861636,0.533865,0.124864 /) -XCGA_LKT(11,7,1:6)=(/ 0.558250,0.366953,0.173323,0.068937,0.022060,0.005463 /) -XEXT_COEFF_550_LKT(11,7)=234.750000 !rg=0.0231791 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,8,1:6)=(/ 4385.700000,1349.000000,361.550000,66.264000,8.473400,1.694200 /) -XPIZA_LKT(11,8,1:6)=(/ 0.979419,0.965783,0.929674,0.914249,0.670468,0.203866 /) -XCGA_LKT(11,8,1:6)=(/ 0.620213,0.458870,0.254327,0.101033,0.032357,0.008030 /) -XEXT_COEFF_550_LKT(11,8)=369.340000 !rg=0.0231791 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,9,1:6)=(/ 5239.800000,1867.300000,551.200000,110.080000,12.983000,1.974000 /) -XPIZA_LKT(11,9,1:6)=(/ 0.981648,0.973212,0.950519,0.946308,0.781529,0.313836 /) -XCGA_LKT(11,9,1:6)=(/ 0.665487,0.539460,0.358020,0.147220,0.047030,0.011697 /) -XEXT_COEFF_550_LKT(11,9)=565.470000 !rg=0.0231791 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,10,1:6)=(/ 5848.200000,2435.600000,815.450000,177.360000,20.833000,2.467800 /) -XPIZA_LKT(11,10,1:6)=(/ 0.982663,0.977888,0.963811,0.965031,0.860868,0.447757 /) -XCGA_LKT(11,10,1:6)=(/ 0.695877,0.603100,0.452790,0.214537,0.068080,0.016970 /) -XEXT_COEFF_550_LKT(11,10)=836.030000 !rg=0.0231791 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,11,1:6)=(/ 6087.200000,2999.500000,1137.200000,275.040000,34.395000,3.348200 /) -XPIZA_LKT(11,11,1:6)=(/ 0.982590,0.980788,0.971971,0.976028,0.913232,0.589325 /) -XCGA_LKT(11,11,1:6)=(/ 0.713037,0.652590,0.528933,0.310673,0.098640,0.024607 /) -XEXT_COEFF_550_LKT(11,11)=1164.100000 !rg=0.0231791 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,12,1:6)=(/ 5909.600000,3458.800000,1509.300000,417.180000,56.870000,4.910200 /) -XPIZA_LKT(11,12,1:6)=(/ 0.981400,0.982331,0.977181,0.982890,0.945530,0.716377 /) -XCGA_LKT(11,12,1:6)=(/ 0.718887,0.687560,0.596843,0.421040,0.143353,0.035680 /) -XEXT_COEFF_550_LKT(11,12)=1540.800000 !rg=0.0231791 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,13,1:6)=(/ 5425.900000,3715.500000,1881.000000,605.060000,91.603000,7.668100 /) -XPIZA_LKT(11,13,1:6)=(/ 0.979195,0.982710,0.980367,0.987247,0.964619,0.815097 /) -XCGA_LKT(11,13,1:6)=(/ 0.718107,0.709037,0.647310,0.503967,0.209360,0.051747 /) -XEXT_COEFF_550_LKT(11,13)=1915.900000 !rg=0.0231791 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,14,1:6)=(/ 4850.800000,3707.300000,2195.700000,820.970000,140.800000,12.462000 /) -XPIZA_LKT(11,14,1:6)=(/ 0.976289,0.981945,0.982131,0.989845,0.975676,0.883401 /) -XCGA_LKT(11,14,1:6)=(/ 0.719303,0.717857,0.684367,0.575153,0.304833,0.075053 /) -XEXT_COEFF_550_LKT(11,14)=2229.800000 !rg=0.0231791 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,15,1:6)=(/ 4263.200000,3463.200000,2390.800000,1052.200000,210.560000,20.615000 /) -XPIZA_LKT(11,15,1:6)=(/ 0.972535,0.980103,0.982736,0.991501,0.982514,0.927204 /) -XCGA_LKT(11,15,1:6)=(/ 0.722340,0.717623,0.707853,0.632193,0.420600,0.109030 /) -XEXT_COEFF_550_LKT(11,15)=2419.300000 !rg=0.0231791 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,16,1:6)=(/ 3621.900000,3118.300000,2418.200000,1269.800000,306.130000,33.883000 /) -XPIZA_LKT(11,16,1:6)=(/ 0.967654,0.977322,0.982205,0.992494,0.987040,0.953888 /) -XCGA_LKT(11,16,1:6)=(/ 0.724440,0.715267,0.718273,0.675397,0.510377,0.159007 /) -XEXT_COEFF_550_LKT(11,16)=2439.000000 !rg=0.0231791 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,17,1:6)=(/ 3047.600000,2769.600000,2282.600000,1430.300000,414.540000,53.619000 /) -XPIZA_LKT(11,17,1:6)=(/ 0.963064,0.974098,0.980489,0.992959,0.989751,0.969438 /) -XCGA_LKT(11,17,1:6)=(/ 0.730273,0.718017,0.717997,0.704273,0.580853,0.232873 /) -XEXT_COEFF_550_LKT(11,17)=2293.500000 !rg=0.0231791 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,18,1:6)=(/ 2550.200000,2408.500000,2059.000000,1499.300000,534.270000,80.844000 /) -XPIZA_LKT(11,18,1:6)=(/ 0.956089,0.970076,0.977758,0.992955,0.991510,0.978496 /) -XCGA_LKT(11,18,1:6)=(/ 0.734233,0.722637,0.713247,0.719980,0.641493,0.337997 /) -XEXT_COEFF_550_LKT(11,18)=2067.200000 !rg=0.0231791 sigma=2.75 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET1',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET1 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET2() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET2',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(11,19,1:6)=(/ 2107.700000,2046.700000,1831.600000,1460.700000,649.760000,119.620000 /) -XPIZA_LKT(11,19,1:6)=(/ 0.948817,0.964413,0.974678,0.992480,0.992594,0.984301 /) -XCGA_LKT(11,19,1:6)=(/ 0.739493,0.726350,0.715220,0.723640,0.686390,0.454440 /) -XEXT_COEFF_550_LKT(11,19)=1839.700000 !rg=0.0231791 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(11,20,1:6)=(/ 1729.500000,1722.900000,1611.700000,1337.300000,742.290000,169.760000 /) -XPIZA_LKT(11,20,1:6)=(/ 0.941121,0.959822,0.971116,0.991518,0.993175,0.988125 /) -XCGA_LKT(11,20,1:6)=(/ 0.748793,0.732190,0.721223,0.718110,0.718213,0.534630 /) -XEXT_COEFF_550_LKT(11,20)=1615.400000 !rg=0.0231791 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,1,1:6)=(/ 612.620000,117.570000,36.053000,7.425000,2.911400,1.350500 /) -XPIZA_LKT(12,1,1:6)=(/ 0.899073,0.708806,0.412754,0.301717,0.070167,0.009160 /) -XCGA_LKT(12,1,1:6)=(/ 0.095957,0.037187,0.015797,0.006223,0.001970,0.000487 /) -XEXT_COEFF_550_LKT(12,1)=30.868000 !rg=0.0251112 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,2,1:6)=(/ 743.530000,139.490000,40.049000,8.020700,2.966500,1.353900 /) -XPIZA_LKT(12,2,1:6)=(/ 0.915121,0.751708,0.468420,0.352124,0.086806,0.011518 /) -XCGA_LKT(12,2,1:6)=(/ 0.121770,0.047150,0.020053,0.007907,0.002503,0.000617 /) -XEXT_COEFF_550_LKT(12,2)=35.058000 !rg=0.0251112 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,3,1:6)=(/ 1019.100000,191.700000,49.741000,9.471100,3.100400,1.362300 /) -XPIZA_LKT(12,3,1:6)=(/ 0.935722,0.815094,0.567041,0.448713,0.124954,0.017222 /) -XCGA_LKT(12,3,1:6)=(/ 0.183307,0.071473,0.030503,0.012053,0.003823,0.000940 /) -XEXT_COEFF_550_LKT(12,3)=45.227000 !rg=0.0251112 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,4,1:6)=(/ 1465.500000,293.720000,69.939000,12.531000,3.382500,1.379800 /) -XPIZA_LKT(12,4,1:6)=(/ 0.952755,0.874958,0.686112,0.579903,0.195862,0.029081 /) -XCGA_LKT(12,4,1:6)=(/ 0.289610,0.120157,0.051807,0.020560,0.006537,0.001613 /) -XEXT_COEFF_550_LKT(12,4)=66.419000 !rg=0.0251112 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,5,1:6)=(/ 2110.800000,466.030000,108.480000,18.556000,3.938400,1.414200 /) -XPIZA_LKT(12,5,1:6)=(/ 0.964722,0.917313,0.791808,0.712626,0.306518,0.051718 /) -XCGA_LKT(12,5,1:6)=(/ 0.409000,0.198073,0.086477,0.034473,0.010990,0.002713 /) -XEXT_COEFF_550_LKT(12,5)=106.800000 !rg=0.0251112 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,6,1:6)=(/ 2928.500000,723.860000,174.370000,29.533000,4.957700,1.477200 /) -XPIZA_LKT(12,6,1:6)=(/ 0.972497,0.943372,0.865485,0.816037,0.445700,0.090694 /) -XCGA_LKT(12,6,1:6)=(/ 0.508517,0.299203,0.135057,0.053903,0.017233,0.004263 /) -XEXT_COEFF_550_LKT(12,6)=175.530000 !rg=0.0251112 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,7,1:6)=(/ 3855.400000,1088.900000,278.470000,48.929000,6.791300,1.590300 /) -XPIZA_LKT(12,7,1:6)=(/ 0.977461,0.959458,0.911643,0.886041,0.591700,0.153413 /) -XCGA_LKT(12,7,1:6)=(/ 0.583943,0.402423,0.202693,0.080727,0.025860,0.006410 /) -XEXT_COEFF_550_LKT(12,7)=283.480000 !rg=0.0251112 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,8,1:6)=(/ 4770.900000,1550.500000,430.620000,81.672000,10.021000,1.790000 /) -XPIZA_LKT(12,8,1:6)=(/ 0.980519,0.969220,0.939321,0.929361,0.719716,0.245311 /) -XCGA_LKT(12,8,1:6)=(/ 0.639583,0.490733,0.294843,0.118380,0.037913,0.009417 /) -XEXT_COEFF_550_LKT(12,8)=440.820000 !rg=0.0251112 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,9,1:6)=(/ 5545.500000,2101.400000,651.800000,134.570000,15.718000,2.145100 /) -XPIZA_LKT(12,9,1:6)=(/ 0.982230,0.975421,0.956754,0.955243,0.818062,0.367134 /) -XCGA_LKT(12,9,1:6)=(/ 0.679067,0.566600,0.398997,0.172727,0.055093,0.013717 /) -XEXT_COEFF_550_LKT(12,9)=668.960000 !rg=0.0251112 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,10,1:6)=(/ 6014.000000,2675.600000,940.410000,213.190000,25.573000,2.771700 /) -XPIZA_LKT(12,10,1:6)=(/ 0.982789,0.979248,0.967634,0.970222,0.885395,0.506688 /) -XCGA_LKT(12,10,1:6)=(/ 0.704090,0.624120,0.483530,0.251563,0.079760,0.019897 /) -XEXT_COEFF_550_LKT(12,10)=963.120000 !rg=0.0251112 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,11,1:6)=(/ 6079.700000,3207.600000,1286.200000,326.900000,42.374000,3.888200 /) -XPIZA_LKT(12,11,1:6)=(/ 0.982277,0.981540,0.974370,0.979195,0.928554,0.644692 /) -XCGA_LKT(12,11,1:6)=(/ 0.716717,0.667873,0.558447,0.357627,0.115643,0.028843 /) -XEXT_COEFF_550_LKT(12,11)=1315.900000 !rg=0.0251112 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,12,1:6)=(/ 5754.100000,3596.100000,1661.000000,490.450000,69.517000,5.866400 /) -XPIZA_LKT(12,12,1:6)=(/ 0.980674,0.982603,0.978657,0.984953,0.954649,0.761015 /) -XCGA_LKT(12,12,1:6)=(/ 0.719310,0.697533,0.618027,0.458533,0.168323,0.041813 /) -XEXT_COEFF_550_LKT(12,12)=1694.400000 !rg=0.0251112 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,13,1:6)=(/ 5212.300000,3748.900000,2019.200000,689.020000,109.970000,9.347300 /) -XPIZA_LKT(12,13,1:6)=(/ 0.978163,0.982543,0.981250,0.988455,0.969896,0.846903 /) -XCGA_LKT(12,13,1:6)=(/ 0.719030,0.713993,0.663783,0.532790,0.245963,0.060630 /) -XEXT_COEFF_550_LKT(12,13)=2053.700000 !rg=0.0251112 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,14,1:6)=(/ 4631.100000,3634.100000,2292.600000,917.550000,166.500000,15.352000 /) -XPIZA_LKT(12,14,1:6)=(/ 0.974928,0.981335,0.982529,0.990632,0.978848,0.904173 /) -XCGA_LKT(12,14,1:6)=(/ 0.720603,0.718560,0.695083,0.601240,0.353387,0.087967 /) -XEXT_COEFF_550_LKT(12,14)=2324.900000 !rg=0.0251112 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,15,1:6)=(/ 4003.200000,3336.400000,2423.000000,1145.800000,247.650000,25.400000 /) -XPIZA_LKT(12,15,1:6)=(/ 0.970896,0.979017,0.982654,0.991968,0.984642,0.939983 /) -XCGA_LKT(12,15,1:6)=(/ 0.724270,0.716210,0.713107,0.651170,0.462793,0.127933 /) -XEXT_COEFF_550_LKT(12,15)=2449.000000 !rg=0.0251112 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,16,1:6)=(/ 3374.700000,2977.600000,2380.300000,1345.100000,349.220000,41.268000 /) -XPIZA_LKT(12,16,1:6)=(/ 0.966242,0.976120,0.981642,0.992729,0.988326,0.961419 /) -XCGA_LKT(12,16,1:6)=(/ 0.727943,0.716157,0.719087,0.688697,0.539333,0.186983 /) -XEXT_COEFF_550_LKT(12,16)=2396.800000 !rg=0.0251112 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,17,1:6)=(/ 2841.400000,2629.700000,2195.600000,1472.200000,464.630000,63.978000 /) -XPIZA_LKT(12,17,1:6)=(/ 0.960131,0.972599,0.979495,0.993003,0.990582,0.973797 /) -XCGA_LKT(12,17,1:6)=(/ 0.731767,0.721037,0.716007,0.712283,0.609023,0.273813 /) -XEXT_COEFF_550_LKT(12,17)=2208.400000 !rg=0.0251112 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,18,1:6)=(/ 2354.900000,2260.000000,1964.400000,1495.500000,583.140000,95.315000 /) -XPIZA_LKT(12,18,1:6)=(/ 0.952918,0.967630,0.976582,0.992816,0.992016,0.981193 /) -XCGA_LKT(12,18,1:6)=(/ 0.734833,0.723830,0.713790,0.722797,0.661197,0.389337 /) -XEXT_COEFF_550_LKT(12,18)=1972.600000 !rg=0.0251112 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,19,1:6)=(/ 1935.100000,1906.200000,1746.500000,1416.300000,691.510000,139.960000 /) -XPIZA_LKT(12,19,1:6)=(/ 0.946223,0.962787,0.973304,0.992131,0.992882,0.986144 /) -XCGA_LKT(12,19,1:6)=(/ 0.744860,0.728377,0.718063,0.721793,0.701137,0.492890 /) -XEXT_COEFF_550_LKT(12,19)=1750.700000 !rg=0.0251112 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(12,20,1:6)=(/ 1598.000000,1595.400000,1513.700000,1275.600000,769.040000,192.130000 /) -XPIZA_LKT(12,20,1:6)=(/ 0.936499,0.957164,0.969204,0.991039,0.993281,0.989218 /) -XCGA_LKT(12,20,1:6)=(/ 0.751800,0.733320,0.722627,0.716383,0.727550,0.562997 /) -XEXT_COEFF_550_LKT(12,20)=1520.300000 !rg=0.0251112 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,1,1:6)=(/ 756.910000,140.600000,40.235000,8.047300,2.969100,1.354100 /) -XPIZA_LKT(13,1,1:6)=(/ 0.916094,0.753061,0.470318,0.353994,0.087483,0.011616 /) -XCGA_LKT(13,1,1:6)=(/ 0.112737,0.043590,0.018527,0.007300,0.002313,0.000570 /) -XEXT_COEFF_550_LKT(13,1)=35.248000 !rg=0.0272044 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,2,1:6)=(/ 914.330000,168.270000,45.302000,8.803700,3.039000,1.358500 /) -XPIZA_LKT(13,2,1:6)=(/ 0.929038,0.790940,0.526542,0.407941,0.107742,0.014596 /) -XCGA_LKT(13,2,1:6)=(/ 0.143187,0.055260,0.023513,0.009277,0.002940,0.000723 /) -XEXT_COEFF_550_LKT(13,2)=40.563000 !rg=0.0272044 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,3,1:6)=(/ 1233.900000,233.540000,57.577000,10.645000,3.208800,1.369100 /) -XPIZA_LKT(13,3,1:6)=(/ 0.945319,0.845426,0.622506,0.507631,0.153508,0.021789 /) -XCGA_LKT(13,3,1:6)=(/ 0.214797,0.083697,0.035747,0.014137,0.004483,0.001107 /) -XEXT_COEFF_550_LKT(13,3)=53.447000 !rg=0.0272044 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,4,1:6)=(/ 1740.200000,357.850000,83.023000,14.529000,3.566700,1.391300 /) -XPIZA_LKT(13,4,1:6)=(/ 0.958843,0.895141,0.732428,0.635792,0.236155,0.036671 /) -XCGA_LKT(13,4,1:6)=(/ 0.329683,0.140227,0.060633,0.024100,0.007667,0.001890 /) -XEXT_COEFF_550_LKT(13,4)=80.141000 !rg=0.0272044 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,5,1:6)=(/ 2455.000000,561.640000,130.940000,22.163000,4.272100,1.434900 /) -XPIZA_LKT(13,5,1:6)=(/ 0.968539,0.929604,0.824863,0.757667,0.359217,0.064812 /) -XCGA_LKT(13,5,1:6)=(/ 0.446957,0.229073,0.101100,0.040383,0.012890,0.003187 /) -XEXT_COEFF_550_LKT(13,5)=130.270000 !rg=0.0272044 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,6,1:6)=(/ 3323.200000,860.800000,210.910000,36.014000,5.565400,1.514700 /) -XPIZA_LKT(13,6,1:6)=(/ 0.974894,0.950906,0.886657,0.847649,0.504583,0.112457 /) -XCGA_LKT(13,6,1:6)=(/ 0.538943,0.336147,0.157863,0.063113,0.020203,0.005003 /) -XEXT_COEFF_550_LKT(13,6)=213.510000 !rg=0.0272044 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,7,1:6)=(/ 4265.500000,1268.000000,333.790000,60.262000,7.890400,1.658200 /) -XPIZA_LKT(13,7,1:6)=(/ 0.978972,0.964040,0.924525,0.906250,0.646889,0.187064 /) -XCGA_LKT(13,7,1:6)=(/ 0.607593,0.436100,0.236393,0.094530,0.030303,0.007520 /) -XEXT_COEFF_550_LKT(13,7)=340.750000 !rg=0.0272044 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,8,1:6)=(/ 5140.200000,1770.500000,511.930000,100.440000,11.978000,1.911600 /) -XPIZA_LKT(13,8,1:6)=(/ 0.981406,0.972102,0.947392,0.941593,0.763928,0.292032 /) -XCGA_LKT(13,8,1:6)=(/ 0.656897,0.521970,0.337047,0.138737,0.044417,0.011047 /) -XEXT_COEFF_550_LKT(13,8)=524.970000 !rg=0.0272044 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,9,1:6)=(/ 5807.400000,2338.800000,764.130000,163.420000,19.160000,2.362300 /) -XPIZA_LKT(13,9,1:6)=(/ 0.982624,0.977219,0.961901,0.962379,0.849351,0.423783 /) -XCGA_LKT(13,9,1:6)=(/ 0.690823,0.590450,0.434703,0.202643,0.064537,0.016087 /) -XEXT_COEFF_550_LKT(13,9)=783.650000 !rg=0.0272044 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,10,1:6)=(/ 6113.900000,2907.000000,1074.000000,254.700000,31.475000,3.157200 /) -XPIZA_LKT(13,10,1:6)=(/ 0.982747,0.980368,0.970733,0.974412,0.905726,0.565266 /) -XCGA_LKT(13,10,1:6)=(/ 0.710673,0.643003,0.513677,0.293607,0.093453,0.023327 /) -XEXT_COEFF_550_LKT(13,10)=1099.600000 !rg=0.0272044 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,11,1:6)=(/ 6009.000000,3392.800000,1439.900000,387.940000,52.099000,4.572500 /) -XPIZA_LKT(13,11,1:6)=(/ 0.981784,0.982131,0.976383,0.981869,0.940972,0.696216 /) -XCGA_LKT(13,11,1:6)=(/ 0.718857,0.681017,0.584600,0.402777,0.135643,0.033807 /) -XEXT_COEFF_550_LKT(13,11)=1470.900000 !rg=0.0272044 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,12,1:6)=(/ 5568.900000,3692.900000,1814.000000,568.530000,84.395000,7.074900 /) -XPIZA_LKT(13,12,1:6)=(/ 0.979825,0.982727,0.979872,0.986614,0.961930,0.800313 /) -XCGA_LKT(13,12,1:6)=(/ 0.719997,0.705333,0.637783,0.489833,0.197737,0.048993 /) -XEXT_COEFF_550_LKT(13,12)=1848.900000 !rg=0.0272044 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,13,1:6)=(/ 4997.500000,3736.800000,2145.800000,779.710000,130.970000,11.457000 /) -XPIZA_LKT(13,13,1:6)=(/ 0.976915,0.982191,0.981886,0.989455,0.974123,0.873779 /) -XCGA_LKT(13,13,1:6)=(/ 0.719497,0.716783,0.677803,0.562360,0.288160,0.071043 /) -XEXT_COEFF_550_LKT(13,13)=2180.700000 !rg=0.0272044 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,14,1:6)=(/ 4385.800000,3534.800000,2367.800000,1011.500000,196.640000,18.937000 /) -XPIZA_LKT(13,14,1:6)=(/ 0.973587,0.980506,0.982693,0.991263,0.981524,0.921238 /) -XCGA_LKT(13,14,1:6)=(/ 0.723640,0.717923,0.703847,0.622823,0.402353,0.103137 /) -XEXT_COEFF_550_LKT(13,14)=2398.200000 !rg=0.0272044 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,15,1:6)=(/ 3748.500000,3194.900000,2426.600000,1233.400000,288.140000,31.186000 /) -XPIZA_LKT(13,15,1:6)=(/ 0.968862,0.977958,0.982382,0.992351,0.986401,0.950279 /) -XCGA_LKT(13,15,1:6)=(/ 0.725930,0.715997,0.716790,0.668123,0.497097,0.150237 /) -XEXT_COEFF_550_LKT(13,15)=2449.000000 !rg=0.0272044 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,16,1:6)=(/ 3149.600000,2843.100000,2317.900000,1408.100000,394.770000,49.848000 /) -XPIZA_LKT(13,16,1:6)=(/ 0.963858,0.974788,0.980888,0.992905,0.989369,0.967407 /) -XCGA_LKT(13,16,1:6)=(/ 0.729117,0.718597,0.718357,0.699697,0.568777,0.220017 /) -XEXT_COEFF_550_LKT(13,16)=2333.300000 !rg=0.0272044 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,17,1:6)=(/ 2624.700000,2484.800000,2102.800000,1494.500000,514.430000,75.774000 /) -XPIZA_LKT(13,17,1:6)=(/ 0.957172,0.970685,0.978429,0.992985,0.991270,0.977303 /) -XCGA_LKT(13,17,1:6)=(/ 0.732213,0.722243,0.715193,0.717757,0.632683,0.320510 /) -XEXT_COEFF_550_LKT(13,17)=2111.800000 !rg=0.0272044 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,18,1:6)=(/ 2176.000000,2105.100000,1878.800000,1474.000000,631.160000,112.350000 /) -XPIZA_LKT(13,18,1:6)=(/ 0.949932,0.965679,0.975216,0.992584,0.992442,0.983502 /) -XCGA_LKT(13,18,1:6)=(/ 0.740540,0.724647,0.714787,0.723197,0.679400,0.438190 /) -XEXT_COEFF_550_LKT(13,18)=1883.400000 !rg=0.0272044 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,19,1:6)=(/ 1785.000000,1774.300000,1653.600000,1362.200000,729.090000,161.400000 /) -XPIZA_LKT(13,19,1:6)=(/ 0.942242,0.960852,0.971715,0.991716,0.993099,0.987641 /) -XCGA_LKT(13,19,1:6)=(/ 0.747343,0.731450,0.720497,0.719703,0.713570,0.523830 /) -XEXT_COEFF_550_LKT(13,19)=1661.600000 !rg=0.0272044 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(13,20,1:6)=(/ 1467.100000,1483.000000,1414.500000,1217.700000,787.460000,216.090000 /) -XPIZA_LKT(13,20,1:6)=(/ 0.931744,0.953610,0.967342,0.990460,0.993319,0.990123 /) -XCGA_LKT(13,20,1:6)=(/ 0.753397,0.736027,0.723803,0.714267,0.734850,0.592470 /) -XEXT_COEFF_550_LKT(13,20)=1416.500000 !rg=0.0272044 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,1,1:6)=(/ 934.340000,169.740000,45.538000,8.837200,3.042200,1.358700 /) -XPIZA_LKT(14,1,1:6)=(/ 0.930051,0.792159,0.528412,0.409902,0.108560,0.014720 /) -XCGA_LKT(14,1,1:6)=(/ 0.132650,0.051093,0.021723,0.008567,0.002713,0.000667 /) -XEXT_COEFF_550_LKT(14,1)=40.805000 !rg=0.0294721 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,2,1:6)=(/ 1119.700000,204.560000,51.960000,9.797700,3.130800,1.364200 /) -XPIZA_LKT(14,2,1:6)=(/ 0.940333,0.824980,0.583643,0.466110,0.132970,0.018480 /) -XCGA_LKT(14,2,1:6)=(/ 0.168667,0.064767,0.027567,0.010880,0.003450,0.000850 /) -XEXT_COEFF_550_LKT(14,2)=47.546000 !rg=0.0294721 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,3,1:6)=(/ 1483.300000,285.630000,67.493000,12.136000,3.346300,1.377600 /) -XPIZA_LKT(14,3,1:6)=(/ 0.953057,0.871037,0.674551,0.566175,0.187158,0.027533 /) -XCGA_LKT(14,3,1:6)=(/ 0.251383,0.098013,0.041883,0.016577,0.005263,0.001297 /) -XEXT_COEFF_550_LKT(14,3)=63.852000 !rg=0.0294721 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,4,1:6)=(/ 2052.400000,435.470000,99.454000,17.064000,3.800400,1.405800 /) -XPIZA_LKT(14,4,1:6)=(/ 0.963822,0.911787,0.773610,0.688029,0.281775,0.046147 /) -XCGA_LKT(14,4,1:6)=(/ 0.371960,0.163453,0.070937,0.028243,0.008993,0.002220 /) -XEXT_COEFF_550_LKT(14,4)=97.364000 !rg=0.0294721 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,5,1:6)=(/ 2832.100000,674.360000,158.580000,26.725000,4.695600,1.461000 /) -XPIZA_LKT(14,5,1:6)=(/ 0.971696,0.939714,0.852912,0.797372,0.415433,0.080931 /) -XCGA_LKT(14,5,1:6)=(/ 0.483567,0.262757,0.118127,0.047290,0.015113,0.003737 /) -XEXT_COEFF_550_LKT(14,5)=159.120000 !rg=0.0294721 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,6,1:6)=(/ 3739.000000,1016.300000,254.580000,44.149000,6.336200,1.562200 /) -XPIZA_LKT(14,6,1:6)=(/ 0.976892,0.957079,0.904115,0.874329,0.563164,0.138627 /) -XCGA_LKT(14,6,1:6)=(/ 0.567457,0.372157,0.184297,0.073883,0.023680,0.005867 /) -XEXT_COEFF_550_LKT(14,6)=258.830000 !rg=0.0294721 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,7,1:6)=(/ 4670.800000,1465.200000,398.840000,74.268000,9.282300,1.744300 /) -XPIZA_LKT(14,7,1:6)=(/ 0.980199,0.967808,0.935150,0.922809,0.698180,0.226082 /) -XCGA_LKT(14,7,1:6)=(/ 0.628890,0.469367,0.273953,0.110690,0.035510,0.008820 /) -XEXT_COEFF_550_LKT(14,7)=408.100000 !rg=0.0294721 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,8,1:6)=(/ 5475.300000,2002.900000,606.650000,123.000000,14.449000,2.065900 /) -XPIZA_LKT(14,8,1:6)=(/ 0.982091,0.974509,0.954162,0.951427,0.802782,0.343517 /) -XCGA_LKT(14,8,1:6)=(/ 0.672023,0.550467,0.377430,0.162613,0.052033,0.012957 /) -XEXT_COEFF_550_LKT(14,8)=622.540000 !rg=0.0294721 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,9,1:6)=(/ 6009.800000,2581.800000,885.130000,197.020000,23.476000,2.637800 /) -XPIZA_LKT(14,9,1:6)=(/ 0.982848,0.978706,0.966062,0.968084,0.875745,0.482375 /) -XCGA_LKT(14,9,1:6)=(/ 0.700390,0.612620,0.466537,0.237453,0.075600,0.018863 /) -XEXT_COEFF_550_LKT(14,9)=906.870000 !rg=0.0294721 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,10,1:6)=(/ 6146.600000,3124.800000,1219.200000,303.280000,38.768000,3.646000 /) -XPIZA_LKT(14,10,1:6)=(/ 0.982529,0.981225,0.973332,0.977864,0.922403,0.621882 /) -XCGA_LKT(14,10,1:6)=(/ 0.715483,0.659437,0.543810,0.338967,0.109530,0.027343 /) -XEXT_COEFF_550_LKT(14,10)=1247.900000 !rg=0.0294721 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,11,1:6)=(/ 5883.100000,3547.000000,1592.300000,457.600000,63.791000,5.438900 /) -XPIZA_LKT(14,11,1:6)=(/ 0.981167,0.982500,0.978007,0.984106,0.950964,0.742997 /) -XCGA_LKT(14,11,1:6)=(/ 0.720467,0.692030,0.606900,0.441873,0.159183,0.039617 /) -XEXT_COEFF_550_LKT(14,11)=1624.900000 !rg=0.0294721 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,12,1:6)=(/ 5367.700000,3749.700000,1958.300000,650.220000,101.630000,8.599200 /) -XPIZA_LKT(14,12,1:6)=(/ 0.978775,0.982643,0.980866,0.987937,0.967730,0.834268 /) -XCGA_LKT(14,12,1:6)=(/ 0.719963,0.711213,0.655380,0.518980,0.232240,0.057407 /) -XEXT_COEFF_550_LKT(14,12)=1992.800000 !rg=0.0294721 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,13,1:6)=(/ 4765.100000,3685.800000,2253.900000,875.570000,155.140000,14.097000 /) -XPIZA_LKT(14,13,1:6)=(/ 0.975749,0.981656,0.982372,0.990306,0.977566,0.896197 /) -XCGA_LKT(14,13,1:6)=(/ 0.722030,0.718273,0.689603,0.589807,0.335070,0.083257 /) -XEXT_COEFF_550_LKT(14,13)=2286.700000 !rg=0.0294721 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,14,1:6)=(/ 4139.100000,3409.000000,2413.500000,1105.400000,231.770000,23.344000 /) -XPIZA_LKT(14,14,1:6)=(/ 0.971821,0.979622,0.982711,0.991769,0.983808,0.935134 /) -XCGA_LKT(14,14,1:6)=(/ 0.725013,0.717487,0.710220,0.642383,0.446533,0.120983 /) -XEXT_COEFF_550_LKT(14,14)=2441.100000 !rg=0.0294721 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,15,1:6)=(/ 3490.500000,3059.400000,2402.200000,1312.000000,330.330000,38.073000 /) -XPIZA_LKT(14,15,1:6)=(/ 0.967075,0.976809,0.981901,0.992623,0.987808,0.958521 /) -XCGA_LKT(14,15,1:6)=(/ 0.726613,0.717183,0.718253,0.682340,0.526760,0.176580 /) -XEXT_COEFF_550_LKT(14,15)=2421.400000 !rg=0.0294721 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,16,1:6)=(/ 2925.900000,2706.600000,2239.800000,1456.000000,443.900000,59.668000 /) -XPIZA_LKT(14,16,1:6)=(/ 0.961426,0.973261,0.979980,0.992983,0.990256,0.972166 /) -XCGA_LKT(14,16,1:6)=(/ 0.730730,0.720127,0.717323,0.708473,0.597887,0.258763 /) -XEXT_COEFF_550_LKT(14,16)=2249.600000 !rg=0.0294721 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,17,1:6)=(/ 2433.100000,2324.500000,2013.100000,1499.800000,563.230000,89.408000 /) -XPIZA_LKT(14,17,1:6)=(/ 0.953627,0.968810,0.977145,0.992873,0.991819,0.980192 /) -XCGA_LKT(14,17,1:6)=(/ 0.735777,0.723520,0.714057,0.721393,0.653023,0.371067 /) -XEXT_COEFF_550_LKT(14,17)=2019.400000 !rg=0.0294721 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,18,1:6)=(/ 1999.000000,1962.300000,1788.100000,1436.000000,674.460000,131.870000 /) -XPIZA_LKT(14,18,1:6)=(/ 0.946939,0.964339,0.973947,0.992279,0.992769,0.985475 /) -XCGA_LKT(14,18,1:6)=(/ 0.742833,0.728987,0.717470,0.722443,0.695037,0.479370 /) -XEXT_COEFF_550_LKT(14,18)=1798.000000 !rg=0.0294721 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,19,1:6)=(/ 1642.200000,1651.100000,1557.000000,1304.200000,758.530000,183.370000 /) -XPIZA_LKT(14,19,1:6)=(/ 0.937739,0.957817,0.970088,0.991203,0.993241,0.988827 /) -XCGA_LKT(14,19,1:6)=(/ 0.749310,0.733090,0.722550,0.716437,0.723580,0.552193 /) -XEXT_COEFF_550_LKT(14,19)=1560.100000 !rg=0.0294721 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(14,20,1:6)=(/ 1350.000000,1370.900000,1326.100000,1159.100000,795.930000,241.410000 /) -XPIZA_LKT(14,20,1:6)=(/ 0.926849,0.950503,0.964539,0.989933,0.993274,0.990899 /) -XCGA_LKT(14,20,1:6)=(/ 0.759170,0.737157,0.725363,0.714997,0.739617,0.619943 /) -XEXT_COEFF_550_LKT(14,20)=1321.300000 !rg=0.0294721 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,1,1:6)=(/ 1149.500000,206.560000,52.261000,9.840200,3.134900,1.364500 /) -XPIZA_LKT(15,1,1:6)=(/ 0.941408,0.826090,0.585441,0.468112,0.133950,0.018637 /) -XCGA_LKT(15,1,1:6)=(/ 0.156420,0.059897,0.025470,0.010050,0.003183,0.000783 /) -XEXT_COEFF_550_LKT(15,1)=47.856000 !rg=0.0319288 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,2,1:6)=(/ 1361.900000,250.200000,60.400000,11.060000,3.247300,1.371500 /) -XPIZA_LKT(15,2,1:6)=(/ 0.949427,0.854060,0.638245,0.525068,0.163002,0.023373 /) -XCGA_LKT(15,2,1:6)=(/ 0.199117,0.075927,0.032313,0.012763,0.004047,0.000997 /) -XEXT_COEFF_550_LKT(15,2)=56.401000 !rg=0.0319288 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,3,1:6)=(/ 1769.300000,350.040000,80.029000,14.028000,3.520700,1.388500 /) -XPIZA_LKT(15,3,1:6)=(/ 0.959290,0.892400,0.722194,0.622745,0.226171,0.034734 /) -XCGA_LKT(15,3,1:6)=(/ 0.293287,0.114793,0.049063,0.019437,0.006173,0.001523 /) -XEXT_COEFF_550_LKT(15,3)=77.008000 !rg=0.0319288 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,4,1:6)=(/ 2403.400000,528.460000,120.000000,20.277000,4.097000,1.424100 /) -XPIZA_LKT(15,4,1:6)=(/ 0.967908,0.925437,0.809506,0.735646,0.332291,0.057918 /) -XCGA_LKT(15,4,1:6)=(/ 0.415220,0.190123,0.082957,0.033090,0.010547,0.002603 /) -XEXT_COEFF_550_LKT(15,4)=118.880000 !rg=0.0319288 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,5,1:6)=(/ 3239.500000,805.590000,192.290000,32.483000,5.233000,1.494200 /) -XPIZA_LKT(15,5,1:6)=(/ 0.974312,0.948006,0.876404,0.831713,0.473804,0.100615 /) -XCGA_LKT(15,5,1:6)=(/ 0.518313,0.298230,0.137907,0.055363,0.017720,0.004387 /) -XEXT_COEFF_550_LKT(15,5)=194.260000 !rg=0.0319288 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,6,1:6)=(/ 4166.200000,1190.200000,306.370000,54.311000,7.313400,1.622600 /) -XPIZA_LKT(15,6,1:6)=(/ 0.978555,0.962126,0.918469,0.896550,0.619831,0.169698 /) -XCGA_LKT(15,6,1:6)=(/ 0.593730,0.407553,0.214610,0.086473,0.027753,0.006883 /) -XEXT_COEFF_550_LKT(15,6)=312.520000 !rg=0.0319288 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,7,1:6)=(/ 5064.900000,1681.700000,475.450000,91.408000,11.044000,1.853700 /) -XPIZA_LKT(15,7,1:6)=(/ 0.981200,0.970958,0.943997,0.936261,0.744695,0.270477 /) -XCGA_LKT(15,7,1:6)=(/ 0.648070,0.501913,0.313657,0.129610,0.041600,0.010347 /) -XEXT_COEFF_550_LKT(15,7)=487.390000 !rg=0.0319288 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,8,1:6)=(/ 5771.400000,2241.700000,713.430000,149.760000,17.561000,2.261700 /) -XPIZA_LKT(15,8,1:6)=(/ 0.982585,0.976481,0.959752,0.959302,0.836298,0.398863 /) -XCGA_LKT(15,8,1:6)=(/ 0.685290,0.575887,0.413743,0.190560,0.060943,0.015193 /) -XEXT_COEFF_550_LKT(15,8)=731.800000 !rg=0.0319288 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,9,1:6)=(/ 6149.000000,2820.700000,1015.200000,236.070000,28.859000,2.987300 /) -XPIZA_LKT(15,9,1:6)=(/ 0.982903,0.979940,0.969439,0.972682,0.897722,0.541294 /) -XCGA_LKT(15,9,1:6)=(/ 0.708313,0.632777,0.497383,0.277153,0.088560,0.022113 /) -XEXT_COEFF_550_LKT(15,9)=1039.800000 !rg=0.0319288 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,10,1:6)=(/ 6110.400000,3324.900000,1371.600000,360.490000,47.691000,4.265600 /) -XPIZA_LKT(15,10,1:6)=(/ 0.982158,0.981905,0.975521,0.980762,0.935962,0.675141 /) -XCGA_LKT(15,10,1:6)=(/ 0.718917,0.673797,0.571207,0.383847,0.128410,0.032047 /) -XEXT_COEFF_550_LKT(15,10)=1402.000000 !rg=0.0319288 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,11,1:6)=(/ 5722.600000,3666.000000,1746.500000,533.020000,77.629000,6.534500 /) -XPIZA_LKT(15,11,1:6)=(/ 0.980332,0.982711,0.979335,0.985922,0.958958,0.784535 /) -XCGA_LKT(15,11,1:6)=(/ 0.720930,0.701087,0.627480,0.474643,0.186887,0.046420 /) -XEXT_COEFF_550_LKT(15,11)=1781.200000 !rg=0.0319288 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,12,1:6)=(/ 5144.400000,3760.400000,2090.800000,738.080000,121.390000,10.517000 /) -XPIZA_LKT(15,12,1:6)=(/ 0.977753,0.982399,0.981598,0.989020,0.972368,0.863133 /) -XCGA_LKT(15,12,1:6)=(/ 0.721503,0.715230,0.670400,0.548707,0.272203,0.067260 /) -XEXT_COEFF_550_LKT(15,12)=2126.100000 !rg=0.0319288 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,13,1:6)=(/ 4531.700000,3598.500000,2339.700000,970.210000,183.400000,17.379000 /) -XPIZA_LKT(15,13,1:6)=(/ 0.974390,0.980982,0.982626,0.990999,0.980446,0.914686 /) -XCGA_LKT(15,13,1:6)=(/ 0.723933,0.718707,0.699257,0.612740,0.383740,0.097593 /) -XEXT_COEFF_550_LKT(15,13)=2371.500000 !rg=0.0319288 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,14,1:6)=(/ 3870.400000,3279.500000,2432.300000,1196.400000,270.850000,28.699000 /) -XPIZA_LKT(15,14,1:6)=(/ 0.970001,0.978556,0.982514,0.992192,0.985713,0.946360 /) -XCGA_LKT(15,14,1:6)=(/ 0.725747,0.717317,0.714823,0.660340,0.483033,0.142013 /) -XEXT_COEFF_550_LKT(15,14)=2455.900000 !rg=0.0319288 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,15,1:6)=(/ 3252.100000,2924.000000,2351.900000,1381.500000,374.550000,46.127000 /) -XPIZA_LKT(15,15,1:6)=(/ 0.964953,0.975493,0.981254,0.992828,0.988938,0.965084 /) -XCGA_LKT(15,15,1:6)=(/ 0.728560,0.718153,0.718627,0.694350,0.556067,0.207687 /) -XEXT_COEFF_550_LKT(15,15)=2366.800000 !rg=0.0319288 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,16,1:6)=(/ 2718.900000,2554.100000,2152.900000,1487.000000,493.930000,70.845000 /) -XPIZA_LKT(15,16,1:6)=(/ 0.957989,0.971768,0.978868,0.992998,0.991002,0.975977 /) -XCGA_LKT(15,16,1:6)=(/ 0.732930,0.723013,0.715343,0.715117,0.623103,0.303373 /) -XEXT_COEFF_550_LKT(15,16)=2161.900000 !rg=0.0319288 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,17,1:6)=(/ 2239.400000,2171.800000,1920.500000,1484.900000,612.090000,105.440000 /) -XPIZA_LKT(15,17,1:6)=(/ 0.951196,0.966862,0.975971,0.992686,0.992276,0.982648 /) -XCGA_LKT(15,17,1:6)=(/ 0.738167,0.726167,0.715417,0.722743,0.671953,0.421003 /) -XEXT_COEFF_550_LKT(15,17)=1931.000000 !rg=0.0319288 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,18,1:6)=(/ 1837.100000,1833.300000,1699.200000,1386.800000,714.140000,152.880000 /) -XPIZA_LKT(15,18,1:6)=(/ 0.943661,0.961747,0.972534,0.991885,0.993010,0.987098 /) -XCGA_LKT(15,18,1:6)=(/ 0.745410,0.730577,0.720457,0.720057,0.708350,0.512257 /) -XEXT_COEFF_550_LKT(15,18)=1702.600000 !rg=0.0319288 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,19,1:6)=(/ 1513.400000,1525.300000,1460.300000,1242.700000,780.800000,206.640000 /) -XPIZA_LKT(15,19,1:6)=(/ 0.933103,0.954611,0.967895,0.990715,0.993301,0.989791 /) -XCGA_LKT(15,19,1:6)=(/ 0.754093,0.733407,0.723317,0.715443,0.731823,0.581517 /) -XEXT_COEFF_550_LKT(15,19)=1459.000000 !rg=0.0319288 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(15,20,1:6)=(/ 1234.100000,1264.200000,1237.100000,1106.400000,794.150000,266.150000 /) -XPIZA_LKT(15,20,1:6)=(/ 0.922375,0.947587,0.962192,0.989360,0.993154,0.991536 /) -XCGA_LKT(15,20,1:6)=(/ 0.762373,0.742967,0.726490,0.717157,0.742547,0.642613 /) -XEXT_COEFF_550_LKT(15,20)=1239.300000 !rg=0.0319288 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,1,1:6)=(/ 1405.500000,252.970000,60.785000,11.114000,3.252500,1.371900 /) -XPIZA_LKT(16,1,1:6)=(/ 0.950568,0.855086,0.639931,0.527052,0.164158,0.023570 /) -XCGA_LKT(16,1,1:6)=(/ 0.184997,0.070227,0.029860,0.011787,0.003737,0.000920 /) -XEXT_COEFF_550_LKT(16,1)=56.800000 !rg=0.0345903 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,2,1:6)=(/ 1641.400000,307.340000,71.091000,12.662000,3.395100,1.380700 /) -XPIZA_LKT(16,2,1:6)=(/ 0.956687,0.878568,0.689125,0.583166,0.198230,0.029520 /) -XCGA_LKT(16,2,1:6)=(/ 0.235637,0.089037,0.037873,0.014967,0.004747,0.001170 /) -XEXT_COEFF_550_LKT(16,2)=67.623000 !rg=0.0345903 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,3,1:6)=(/ 2094.000000,428.920000,95.848000,16.431000,3.742000,1.402200 /) -XPIZA_LKT(16,3,1:6)=(/ 0.964319,0.910038,0.764834,0.675955,0.270550,0.043732 /) -XCGA_LKT(16,3,1:6)=(/ 0.340120,0.134473,0.057470,0.022783,0.007243,0.001787 /) -XEXT_COEFF_550_LKT(16,3)=93.607000 !rg=0.0345903 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,4,1:6)=(/ 2793.400000,638.680000,145.550000,24.348000,4.473400,1.447400 /) -XPIZA_LKT(16,4,1:6)=(/ 0.971274,0.936588,0.840263,0.778085,0.386886,0.072458 /) -XCGA_LKT(16,4,1:6)=(/ 0.458097,0.220377,0.096963,0.038760,0.012370,0.003057 /) -XEXT_COEFF_550_LKT(16,4)=145.620000 !rg=0.0345903 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,5,1:6)=(/ 3673.300000,956.250000,233.050000,39.732000,5.914600,1.536300 /) -XPIZA_LKT(16,5,1:6)=(/ 0.976492,0.954789,0.895895,0.860930,0.532738,0.124424 /) -XCGA_LKT(16,5,1:6)=(/ 0.550893,0.334907,0.160813,0.064797,0.020773,0.005143 /) -XEXT_COEFF_550_LKT(16,5)=236.660000 !rg=0.0345903 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,6,1:6)=(/ 4596.100000,1384.000000,367.620000,66.923000,8.551600,1.699200 /) -XPIZA_LKT(16,6,1:6)=(/ 0.979922,0.966286,0.930303,0.914854,0.673179,0.206030 /) -XCGA_LKT(16,6,1:6)=(/ 0.617603,0.442847,0.248573,0.101187,0.032520,0.008077 /) -XEXT_COEFF_550_LKT(16,6)=376.000000 !rg=0.0345903 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,7,1:6)=(/ 5431.700000,1912.900000,564.800000,112.140000,13.269000,1.992400 /) -XPIZA_LKT(16,7,1:6)=(/ 0.981992,0.973582,0.951373,0.947114,0.785950,0.319912 /) -XCGA_LKT(16,7,1:6)=(/ 0.665050,0.532057,0.352730,0.151747,0.048730,0.012133 /) -XEXT_COEFF_550_LKT(16,7)=579.490000 !rg=0.0345903 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,8,1:6)=(/ 6012.700000,2488.200000,830.010000,181.140000,21.468000,2.510200 /) -XPIZA_LKT(16,8,1:6)=(/ 0.982909,0.978115,0.964291,0.965606,0.864747,0.456795 /) -XCGA_LKT(16,8,1:6)=(/ 0.696410,0.599527,0.446717,0.223043,0.071377,0.017817 /) -XEXT_COEFF_550_LKT(16,8)=850.770000 !rg=0.0345903 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,9,1:6)=(/ 6221.200000,3048.600000,1157.000000,281.750000,35.529000,3.430600 /) -XPIZA_LKT(16,9,1:6)=(/ 0.982783,0.980908,0.972258,0.976451,0.915821,0.598896 /) -XCGA_LKT(16,9,1:6)=(/ 0.714380,0.650500,0.528187,0.320517,0.103757,0.025923 /) -XEXT_COEFF_550_LKT(16,9)=1184.800000 !rg=0.0345903 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,10,1:6)=(/ 6019.900000,3496.300000,1524.500000,426.400000,58.470000,5.050200 /) -XPIZA_LKT(16,10,1:6)=(/ 0.981603,0.982376,0.977303,0.983187,0.946902,0.723983 /) -XCGA_LKT(16,10,1:6)=(/ 0.721193,0.685977,0.594760,0.423960,0.150607,0.037553 /) -XEXT_COEFF_550_LKT(16,10)=1556.600000 !rg=0.0345903 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,11,1:6)=(/ 5522.700000,3744.700000,1896.000000,612.450000,93.752000,7.917400 /) -XPIZA_LKT(16,11,1:6)=(/ 0.979476,0.982726,0.980438,0.987370,0.965336,0.820695 /) -XCGA_LKT(16,11,1:6)=(/ 0.721983,0.708000,0.646190,0.504423,0.219387,0.054390 /) -XEXT_COEFF_550_LKT(16,11)=1930.700000 !rg=0.0345903 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,12,1:6)=(/ 4922.700000,3730.500000,2209.400000,832.350000,144.110000,12.919000 /) -XPIZA_LKT(16,12,1:6)=(/ 0.976538,0.981975,0.982165,0.989940,0.976126,0.887331 /) -XCGA_LKT(16,12,1:6)=(/ 0.723173,0.717697,0.683297,0.577240,0.317160,0.078813 /) -XEXT_COEFF_550_LKT(16,12)=2243.000000 !rg=0.0345903 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,13,1:6)=(/ 4271.600000,3491.000000,2399.700000,1064.200000,216.500000,21.427000 /) -XPIZA_LKT(16,13,1:6)=(/ 0.972789,0.980105,0.982729,0.991552,0.982897,0.929792 /) -XCGA_LKT(16,13,1:6)=(/ 0.725450,0.718520,0.706837,0.632970,0.429297,0.114447 /) -XEXT_COEFF_550_LKT(16,13)=2428.300000 !rg=0.0345903 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,14,1:6)=(/ 3608.200000,3143.000000,2420.300000,1278.400000,312.090000,35.109000 /) -XPIZA_LKT(16,14,1:6)=(/ 0.968267,0.977394,0.982144,0.992507,0.987250,0.955368 /) -XCGA_LKT(16,14,1:6)=(/ 0.727190,0.717277,0.717317,0.675550,0.513813,0.166830 /) -XEXT_COEFF_550_LKT(16,14)=2441.300000 !rg=0.0345903 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,15,1:6)=(/ 3036.200000,2782.200000,2282.600000,1435.500000,422.340000,55.392000 /) -XPIZA_LKT(16,15,1:6)=(/ 0.962064,0.974177,0.980413,0.992948,0.989888,0.970302 /) -XCGA_LKT(16,15,1:6)=(/ 0.730563,0.721227,0.717567,0.703973,0.585737,0.244260 /) -XEXT_COEFF_550_LKT(16,15)=2296.300000 !rg=0.0345903 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,16,1:6)=(/ 2503.400000,2402.300000,2059.200000,1500.000000,542.800000,83.695000 /) -XPIZA_LKT(16,16,1:6)=(/ 0.955322,0.969600,0.977795,0.992920,0.991601,0.979091 /) -XCGA_LKT(16,16,1:6)=(/ 0.733420,0.724247,0.715290,0.719390,0.644320,0.352637 /) -XEXT_COEFF_550_LKT(16,16)=2069.400000 !rg=0.0345903 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,17,1:6)=(/ 2057.300000,2024.100000,1834.500000,1454.400000,657.150000,124.050000 /) -XPIZA_LKT(16,17,1:6)=(/ 0.948660,0.964982,0.974666,0.992412,0.992644,0.984753 /) -XCGA_LKT(16,17,1:6)=(/ 0.742273,0.727320,0.717790,0.722497,0.688540,0.464737 /) -XEXT_COEFF_550_LKT(16,17)=1840.500000 !rg=0.0345903 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,18,1:6)=(/ 1698.700000,1700.300000,1604.300000,1329.300000,746.620000,174.490000 /) -XPIZA_LKT(16,18,1:6)=(/ 0.938939,0.958970,0.970706,0.991458,0.993187,0.988388 /) -XCGA_LKT(16,18,1:6)=(/ 0.749343,0.731637,0.721833,0.718357,0.719183,0.541017 /) -XEXT_COEFF_550_LKT(16,18)=1607.100000 !rg=0.0345903 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,19,1:6)=(/ 1385.600000,1415.400000,1361.800000,1187.400000,792.800000,231.610000 /) -XPIZA_LKT(16,19,1:6)=(/ 0.928875,0.951163,0.965611,0.990159,0.993291,0.990615 /) -XCGA_LKT(16,19,1:6)=(/ 0.756060,0.738097,0.724123,0.715270,0.737330,0.610087 /) -XEXT_COEFF_550_LKT(16,19)=1362.700000 !rg=0.0345903 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(16,20,1:6)=(/ 1128.000000,1162.500000,1152.900000,1052.900000,782.860000,290.350000 /) -XPIZA_LKT(16,20,1:6)=(/ 0.918338,0.944377,0.960402,0.988680,0.992950,0.992041 /) -XCGA_LKT(16,20,1:6)=(/ 0.768093,0.745363,0.731920,0.718663,0.743463,0.662273 /) -XEXT_COEFF_550_LKT(16,20)=1153.500000 !rg=0.0345903 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,1,1:6)=(/ 1702.300000,311.270000,71.589000,12.730000,3.401600,1.381200 /) -XPIZA_LKT(17,1,1:6)=(/ 0.957880,0.879544,0.690674,0.585075,0.199570,0.029767 /) -XCGA_LKT(17,1,1:6)=(/ 0.219647,0.082373,0.035007,0.013827,0.004383,0.001080 /) -XEXT_COEFF_550_LKT(17,1)=68.140000 !rg=0.0374736 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,2,1:6)=(/ 1956.900000,378.440000,84.625000,14.697000,3.582600,1.392400 /) -XPIZA_LKT(17,2,1:6)=(/ 0.962434,0.898990,0.735415,0.638854,0.238850,0.037220 /) -XCGA_LKT(17,2,1:6)=(/ 0.279393,0.104473,0.044390,0.017553,0.005570,0.001373 /) -XEXT_COEFF_550_LKT(17,2)=81.832000 !rg=0.0374736 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,3,1:6)=(/ 2460.400000,524.430000,115.760000,19.479000,4.022900,1.419600 /) -XPIZA_LKT(17,3,1:6)=(/ 0.968397,0.924478,0.802234,0.724756,0.319960,0.054923 /) -XCGA_LKT(17,3,1:6)=(/ 0.390587,0.157577,0.067303,0.026707,0.008497,0.002097 /) -XEXT_COEFF_550_LKT(17,3)=114.500000 !rg=0.0374736 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,4,1:6)=(/ 3221.000000,767.810000,177.110000,29.499000,4.951000,1.476900 /) -XPIZA_LKT(17,4,1:6)=(/ 0.974064,0.945673,0.866235,0.815149,0.444356,0.090287 /) -XCGA_LKT(17,4,1:6)=(/ 0.499283,0.254203,0.113273,0.045387,0.014507,0.003587 /) -XEXT_COEFF_550_LKT(17,4)=178.590000 !rg=0.0374736 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,5,1:6)=(/ 4125.200000,1127.400000,281.940000,48.821000,6.779000,1.589700 /) -XPIZA_LKT(17,5,1:6)=(/ 0.978307,0.960344,0.911972,0.885436,0.590581,0.152885 /) -XCGA_LKT(17,5,1:6)=(/ 0.580860,0.372550,0.187140,0.075807,0.024347,0.006037 /) -XEXT_COEFF_550_LKT(17,5)=287.440000 !rg=0.0374736 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,6,1:6)=(/ 5019.600000,1598.200000,439.870000,82.442000,10.119000,1.796300 /) -XPIZA_LKT(17,6,1:6)=(/ 0.981049,0.969747,0.940102,0.929791,0.722137,0.247769 /) -XCGA_LKT(17,6,1:6)=(/ 0.639180,0.477420,0.285053,0.118363,0.038100,0.009473 /) -XEXT_COEFF_550_LKT(17,6)=450.780000 !rg=0.0374736 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,7,1:6)=(/ 5763.600000,2154.300000,666.270000,136.900000,16.074000,2.168400 /) -XPIZA_LKT(17,7,1:6)=(/ 0.982590,0.975742,0.957452,0.955830,0.821821,0.373660 /) -XCGA_LKT(17,7,1:6)=(/ 0.680063,0.559497,0.389223,0.177577,0.057070,0.014230 /) -XEXT_COEFF_550_LKT(17,7)=683.560000 !rg=0.0374736 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,8,1:6)=(/ 6193.700000,2734.400000,956.550000,217.760000,26.350000,2.825400 /) -XPIZA_LKT(17,8,1:6)=(/ 0.983065,0.979477,0.967986,0.970686,0.888559,0.515770 /) -XCGA_LKT(17,8,1:6)=(/ 0.705827,0.621177,0.478603,0.260170,0.083593,0.020887 /) -XEXT_COEFF_550_LKT(17,8)=980.190000 !rg=0.0374736 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,9,1:6)=(/ 6222.900000,3262.800000,1307.800000,335.540000,43.717000,3.992500 /) -XPIZA_LKT(17,9,1:6)=(/ 0.982514,0.981680,0.974631,0.979596,0.930586,0.653678 /) -XCGA_LKT(17,9,1:6)=(/ 0.719093,0.666173,0.556733,0.364420,0.121590,0.030383 /) -XEXT_COEFF_550_LKT(17,9)=1337.500000 !rg=0.0374736 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,10,1:6)=(/ 5875.500000,3636.700000,1679.800000,498.820000,71.302000,6.042700 /) -XPIZA_LKT(17,10,1:6)=(/ 0.980924,0.982674,0.978757,0.985166,0.955676,0.767746 /) -XCGA_LKT(17,10,1:6)=(/ 0.722637,0.696307,0.616300,0.458100,0.176700,0.044003 /) -XEXT_COEFF_550_LKT(17,10)=1714.100000 !rg=0.0374736 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,11,1:6)=(/ 5313.500000,3780.100000,2034.500000,697.620000,112.320000,9.658600 /) -XPIZA_LKT(17,11,1:6)=(/ 0.978456,0.982578,0.981276,0.988548,0.970431,0.851630 /) -XCGA_LKT(17,11,1:6)=(/ 0.723293,0.713240,0.662290,0.534357,0.257137,0.063723 /) -XEXT_COEFF_550_LKT(17,11)=2069.900000 !rg=0.0374736 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,12,1:6)=(/ 4679.100000,3665.000000,2305.900000,927.300000,170.580000,15.914000 /) -XPIZA_LKT(17,12,1:6)=(/ 0.975157,0.981374,0.982520,0.990699,0.979244,0.907375 /) -XCGA_LKT(17,12,1:6)=(/ 0.724547,0.718980,0.693937,0.601607,0.364900,0.092370 /) -XEXT_COEFF_550_LKT(17,12)=2338.700000 !rg=0.0374736 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,13,1:6)=(/ 4004.400000,3364.100000,2432.200000,1157.700000,253.940000,26.367000 /) -XPIZA_LKT(17,13,1:6)=(/ 0.971112,0.979121,0.982619,0.992014,0.984958,0.942032 /) -XCGA_LKT(17,13,1:6)=(/ 0.726613,0.717980,0.712247,0.651833,0.467903,0.134290 /) -XEXT_COEFF_550_LKT(17,13)=2458.400000 !rg=0.0374736 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,14,1:6)=(/ 3371.500000,3005.200000,2383.200000,1353.200000,355.150000,42.652000 /) -XPIZA_LKT(17,14,1:6)=(/ 0.965587,0.976220,0.981580,0.992740,0.988478,0.962556 /) -XCGA_LKT(17,14,1:6)=(/ 0.727933,0.719313,0.718343,0.688530,0.543160,0.196130 /) -XEXT_COEFF_550_LKT(17,14)=2400.700000 !rg=0.0374736 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,15,1:6)=(/ 2806.400000,2638.900000,2198.900000,1475.100000,472.190000,65.955000 /) -XPIZA_LKT(17,15,1:6)=(/ 0.959287,0.972547,0.979492,0.992991,0.990695,0.974467 /) -XCGA_LKT(17,15,1:6)=(/ 0.730907,0.722833,0.717010,0.711730,0.612460,0.286653 /) -XEXT_COEFF_550_LKT(17,15)=2210.600000 !rg=0.0374736 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,16,1:6)=(/ 2306.000000,2239.200000,1972.100000,1493.800000,591.960000,98.747000 /) -XPIZA_LKT(17,16,1:6)=(/ 0.953099,0.967865,0.976540,0.992771,0.992092,0.981712 /) -XCGA_LKT(17,16,1:6)=(/ 0.738810,0.725117,0.715703,0.721837,0.663870,0.402960 /) -XEXT_COEFF_550_LKT(17,16)=1977.300000 !rg=0.0374736 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,17,1:6)=(/ 1898.200000,1886.600000,1744.400000,1410.000000,698.420000,144.510000 /) -XPIZA_LKT(17,17,1:6)=(/ 0.944411,0.962838,0.973154,0.992071,0.992912,0.986507 /) -XCGA_LKT(17,17,1:6)=(/ 0.744427,0.729613,0.719633,0.721303,0.702703,0.499947 /) -XEXT_COEFF_550_LKT(17,17)=1751.600000 !rg=0.0374736 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,18,1:6)=(/ 1555.500000,1578.800000,1502.700000,1272.700000,772.150000,197.110000 /) -XPIZA_LKT(17,18,1:6)=(/ 0.934636,0.955544,0.968951,0.990925,0.993273,0.989425 /) -XCGA_LKT(17,18,1:6)=(/ 0.750323,0.734307,0.723380,0.716023,0.728200,0.570060 /) -XEXT_COEFF_550_LKT(17,18)=1503.800000 !rg=0.0374736 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,19,1:6)=(/ 1266.300000,1302.700000,1275.700000,1131.100000,795.250000,256.590000 /) -XPIZA_LKT(17,19,1:6)=(/ 0.924775,0.948544,0.962995,0.989628,0.993203,0.991305 /) -XCGA_LKT(17,19,1:6)=(/ 0.762930,0.740737,0.727837,0.716517,0.741223,0.634260 /) -XEXT_COEFF_550_LKT(17,19)=1272.100000 !rg=0.0374736 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(17,20,1:6)=(/ 1039.300000,1070.800000,1068.800000,996.650000,762.380000,314.330000 /) -XPIZA_LKT(17,20,1:6)=(/ 0.912221,0.940844,0.958095,0.987994,0.992664,0.992465 /) -XCGA_LKT(17,20,1:6)=(/ 0.772137,0.748047,0.733320,0.721123,0.742533,0.680560 /) -XEXT_COEFF_550_LKT(17,20)=1073.800000 !rg=0.0374736 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,1,1:6)=(/ 2036.000000,384.160000,85.275000,14.784000,3.590800,1.392900 /) -XPIZA_LKT(18,1,1:6)=(/ 0.963632,0.899950,0.736821,0.640642,0.240375,0.037528 /) -XCGA_LKT(18,1,1:6)=(/ 0.262000,0.096687,0.041033,0.016213,0.005143,0.001267 /) -XEXT_COEFF_550_LKT(18,1)=82.511000 !rg=0.0405973 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,2,1:6)=(/ 2307.600000,466.180000,101.740000,17.280000,3.820500,1.407100 /) -XPIZA_LKT(18,2,1:6)=(/ 0.966954,0.915841,0.776630,0.690841,0.284772,0.046829 /) -XCGA_LKT(18,2,1:6)=(/ 0.331223,0.122697,0.052023,0.020583,0.006537,0.001610 /) -XEXT_COEFF_550_LKT(18,2)=99.801000 !rg=0.0405973 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,3,1:6)=(/ 2871.500000,638.530000,140.740000,23.347000,4.379300,1.441700 /) -XPIZA_LKT(18,3,1:6)=(/ 0.971736,0.936221,0.834466,0.768494,0.373678,0.068765 /) -XCGA_LKT(18,3,1:6)=(/ 0.442410,0.184683,0.078817,0.031300,0.009967,0.002460 /) -XEXT_COEFF_550_LKT(18,3)=140.680000 !rg=0.0405973 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,4,1:6)=(/ 3682.100000,917.430000,215.780000,36.006000,5.557100,1.514300 /) -XPIZA_LKT(18,4,1:6)=(/ 0.976385,0.953070,0.887910,0.846957,0.503207,0.111961 /) -XCGA_LKT(18,4,1:6)=(/ 0.537680,0.291433,0.132237,0.053133,0.017007,0.004207 /) -XEXT_COEFF_550_LKT(18,4)=218.930000 !rg=0.0405973 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,5,1:6)=(/ 4587.000000,1320.100000,340.180000,60.161000,7.874700,1.657400 /) -XPIZA_LKT(18,5,1:6)=(/ 0.979811,0.964918,0.925208,0.905749,0.645807,0.186441 /) -XCGA_LKT(18,5,1:6)=(/ 0.608090,0.410800,0.216913,0.088653,0.028530,0.007080 /) -XEXT_COEFF_550_LKT(18,5)=347.860000 !rg=0.0405973 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,6,1:6)=(/ 5422.900000,1829.500000,524.220000,101.350000,12.100000,1.919600 /) -XPIZA_LKT(18,6,1:6)=(/ 0.981954,0.972620,0.948213,0.941894,0.766028,0.294762 /) -XCGA_LKT(18,6,1:6)=(/ 0.658440,0.509997,0.322187,0.138397,0.044623,0.011110 /) -XEXT_COEFF_550_LKT(18,6)=537.800000 !rg=0.0405973 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,7,1:6)=(/ 6045.900000,2405.700000,778.620000,166.170000,19.599000,2.391700 /) -XPIZA_LKT(18,7,1:6)=(/ 0.983015,0.977539,0.962405,0.962825,0.852479,0.430606 /) -XCGA_LKT(18,7,1:6)=(/ 0.692947,0.585110,0.423397,0.207547,0.066827,0.016687 /) -XEXT_COEFF_550_LKT(18,7)=798.480000 !rg=0.0405973 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,8,1:6)=(/ 6308.000000,2973.300000,1095.200000,260.680000,32.414000,3.225200 /) -XPIZA_LKT(18,8,1:6)=(/ 0.983049,0.980564,0.971064,0.974835,0.908258,0.574134 /) -XCGA_LKT(18,8,1:6)=(/ 0.713363,0.640447,0.510300,0.301070,0.097903,0.024483 /) -XEXT_COEFF_550_LKT(18,8)=1121.900000 !rg=0.0405973 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,9,1:6)=(/ 6164.000000,3451.400000,1461.100000,397.850000,53.653000,4.704300 /) -XPIZA_LKT(18,9,1:6)=(/ 0.982059,0.982252,0.976578,0.982223,0.942534,0.704436 /) -XCGA_LKT(18,9,1:6)=(/ 0.722323,0.679660,0.581650,0.404870,0.142520,0.035607 /) -XEXT_COEFF_550_LKT(18,9)=1492.700000 !rg=0.0405973 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,10,1:6)=(/ 5696.000000,3737.900000,1833.600000,575.870000,86.344000,7.296400 /) -XPIZA_LKT(18,10,1:6)=(/ 0.980125,0.982791,0.979974,0.986751,0.962687,0.806145 /) -XCGA_LKT(18,10,1:6)=(/ 0.724263,0.704440,0.636137,0.488770,0.207290,0.051557 /) -XEXT_COEFF_550_LKT(18,10)=1868.300000 !rg=0.0405973 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,11,1:6)=(/ 5084.600000,3773.300000,2162.200000,789.810000,133.680000,11.843000 /) -XPIZA_LKT(18,11,1:6)=(/ 0.977301,0.982260,0.981927,0.989542,0.974545,0.877703 /) -XCGA_LKT(18,11,1:6)=(/ 0.724257,0.716853,0.676303,0.563727,0.299963,0.074660 /) -XEXT_COEFF_550_LKT(18,11)=2196.700000 !rg=0.0405973 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,12,1:6)=(/ 4423.000000,3568.400000,2380.000000,1021.400000,201.640000,19.618000 /) -XPIZA_LKT(18,12,1:6)=(/ 0.973686,0.980622,0.982703,0.991307,0.981886,0.923811 /) -XCGA_LKT(18,12,1:6)=(/ 0.726290,0.719230,0.702700,0.622693,0.411113,0.108290 /) -XEXT_COEFF_550_LKT(18,12)=2410.000000 !rg=0.0405973 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,13,1:6)=(/ 3742.800000,3229.500000,2435.100000,1243.200000,294.060000,32.313000 /) -XPIZA_LKT(18,13,1:6)=(/ 0.968864,0.978104,0.982345,0.992374,0.986634,0.951878 /) -XCGA_LKT(18,13,1:6)=(/ 0.726590,0.719017,0.715910,0.668113,0.500117,0.157683 /) -XEXT_COEFF_550_LKT(18,13)=2457.500000 !rg=0.0405973 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,14,1:6)=(/ 3129.900000,2869.200000,2323.200000,1413.500000,401.510000,51.382000 /) -XPIZA_LKT(18,14,1:6)=(/ 0.963039,0.974872,0.980867,0.992902,0.989497,0.968273 /) -XCGA_LKT(18,14,1:6)=(/ 0.729057,0.720917,0.718460,0.699107,0.573093,0.230617 /) -XEXT_COEFF_550_LKT(18,14)=2337.400000 !rg=0.0405973 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,15,1:6)=(/ 2590.500000,2477.500000,2113.600000,1495.900000,521.210000,78.055000 /) -XPIZA_LKT(18,15,1:6)=(/ 0.956460,0.970831,0.978333,0.992955,0.991350,0.977846 /) -XCGA_LKT(18,15,1:6)=(/ 0.734773,0.724427,0.715877,0.716887,0.634823,0.334210 /) -XEXT_COEFF_550_LKT(18,15)=2120.600000 !rg=0.0405973 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,16,1:6)=(/ 2125.200000,2087.100000,1880.600000,1470.500000,638.760000,116.370000 /) -XPIZA_LKT(18,16,1:6)=(/ 0.949594,0.966195,0.975355,0.992542,0.992500,0.983959 /) -XCGA_LKT(18,16,1:6)=(/ 0.740793,0.727600,0.717467,0.722557,0.681437,0.448840 /) -XEXT_COEFF_550_LKT(18,16)=1891.500000 !rg=0.0405973 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,17,1:6)=(/ 1744.200000,1759.900000,1649.800000,1358.100000,734.070000,165.790000 /) -XPIZA_LKT(18,17,1:6)=(/ 0.940022,0.959750,0.971584,0.991628,0.993121,0.987912 /) -XCGA_LKT(18,17,1:6)=(/ 0.746107,0.731833,0.722103,0.718720,0.714477,0.529577 /) -XEXT_COEFF_550_LKT(18,17)=1652.200000 !rg=0.0405973 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,18,1:6)=(/ 1427.900000,1455.800000,1408.600000,1213.300000,788.020000,221.530000 /) -XPIZA_LKT(18,18,1:6)=(/ 0.929947,0.953030,0.966217,0.990421,0.993297,0.990301 /) -XCGA_LKT(18,18,1:6)=(/ 0.756850,0.735657,0.724673,0.715620,0.734680,0.599350 /) -XEXT_COEFF_550_LKT(18,18)=1403.800000 !rg=0.0405973 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,19,1:6)=(/ 1163.000000,1196.600000,1186.800000,1078.300000,787.810000,280.800000 /) -XPIZA_LKT(18,19,1:6)=(/ 0.919637,0.945882,0.961301,0.989006,0.993029,0.991853 /) -XCGA_LKT(18,19,1:6)=(/ 0.766757,0.744187,0.730067,0.719217,0.742700,0.654610 /) -XEXT_COEFF_550_LKT(18,19)=1192.200000 !rg=0.0405973 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(18,20,1:6)=(/ 952.390000,989.570000,988.140000,938.380000,735.720000,335.920000 /) -XPIZA_LKT(18,20,1:6)=(/ 0.905887,0.935907,0.955454,0.987051,0.992301,0.992796 /) -XCGA_LKT(18,20,1:6)=(/ 0.774550,0.752037,0.734687,0.722127,0.740680,0.696357 /) -XEXT_COEFF_550_LKT(18,20)=989.410000 !rg=0.0405973 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,1,1:6)=(/ 2398.900000,474.650000,102.600000,17.391000,3.830800,1.407800 /) -XPIZA_LKT(19,1,1:6)=(/ 0.968067,0.916815,0.777898,0.692473,0.286472,0.047212 /) -XCGA_LKT(19,1,1:6)=(/ 0.313953,0.113600,0.048097,0.019013,0.006037,0.001487 /) -XEXT_COEFF_550_LKT(19,1)=100.700000 !rg=0.0439813 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,2,1:6)=(/ 2696.400000,573.190000,123.340000,20.560000,4.122300,1.425800 /) -XPIZA_LKT(19,2,1:6)=(/ 0.970516,0.929625,0.812631,0.738194,0.335550,0.058761 /) -XCGA_LKT(19,2,1:6)=(/ 0.390697,0.144290,0.060970,0.024133,0.007670,0.001890 /) -XEXT_COEFF_550_LKT(19,2)=122.480000 !rg=0.0439813 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,3,1:6)=(/ 3329.500000,772.880000,171.910000,28.250000,4.831600,1.469600 /) -XPIZA_LKT(19,3,1:6)=(/ 0.974506,0.945721,0.861821,0.806891,0.430585,0.085771 /) -XCGA_LKT(19,3,1:6)=(/ 0.492647,0.216400,0.092297,0.036680,0.011690,0.002887 /) -XEXT_COEFF_550_LKT(19,3)=173.330000 !rg=0.0439813 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,4,1:6)=(/ 4169.400000,1089.000000,262.750000,44.205000,6.325900,1.561700 /) -XPIZA_LKT(19,4,1:6)=(/ 0.978324,0.959101,0.905835,0.873844,0.561795,0.138028 /) -XCGA_LKT(19,4,1:6)=(/ 0.572550,0.331630,0.154223,0.062180,0.019937,0.004937 /) -XEXT_COEFF_550_LKT(19,4)=267.840000 !rg=0.0439813 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,5,1:6)=(/ 5047.200000,1534.800000,409.080000,74.216000,9.262600,1.743200 /) -XPIZA_LKT(19,5,1:6)=(/ 0.981058,0.968701,0.936100,0.922419,0.697156,0.225358 /) -XCGA_LKT(19,5,1:6)=(/ 0.632573,0.448717,0.249683,0.103620,0.033423,0.008307 /) -XEXT_COEFF_550_LKT(19,5)=419.210000 !rg=0.0439813 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,6,1:6)=(/ 5795.200000,2075.200000,620.730000,124.140000,14.601000,2.076100 /) -XPIZA_LKT(19,6,1:6)=(/ 0.982664,0.974996,0.954876,0.951650,0.804556,0.346477 /) -XCGA_LKT(19,6,1:6)=(/ 0.675533,0.540327,0.358563,0.161700,0.052253,0.013030 /) -XEXT_COEFF_550_LKT(19,6)=637.000000 !rg=0.0439813 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,7,1:6)=(/ 6270.100000,2660.300000,902.120000,200.560000,24.013000,2.675100 /) -XPIZA_LKT(19,7,1:6)=(/ 0.983271,0.979036,0.966456,0.968462,0.878292,0.489307 /) -XCGA_LKT(19,7,1:6)=(/ 0.704007,0.608647,0.456723,0.241807,0.078243,0.019563 /) -XEXT_COEFF_550_LKT(19,7)=924.950000 !rg=0.0439813 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,8,1:6)=(/ 6350.900000,3201.800000,1243.800000,311.200000,39.882000,3.732100 /) -XPIZA_LKT(19,8,1:6)=(/ 0.982882,0.981443,0.973648,0.978275,0.924388,0.630297 /) -XCGA_LKT(19,8,1:6)=(/ 0.719443,0.657657,0.540033,0.343257,0.114670,0.028697 /) -XEXT_COEFF_550_LKT(19,8)=1273.000000 !rg=0.0439813 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,9,1:6)=(/ 6043.400000,3612.400000,1617.800000,467.170000,65.545000,5.605000 /) -XPIZA_LKT(19,9,1:6)=(/ 0.981500,0.982639,0.978170,0.984372,0.952141,0.750332 /) -XCGA_LKT(19,9,1:6)=(/ 0.724950,0.691320,0.604357,0.440103,0.167083,0.041723 /) -XEXT_COEFF_550_LKT(19,9)=1651.700000 !rg=0.0439813 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,10,1:6)=(/ 5494.100000,3797.900000,1978.000000,658.540000,103.760000,8.876200 /) -XPIZA_LKT(19,10,1:6)=(/ 0.979107,0.982740,0.980925,0.988035,0.968291,0.839223 /) -XCGA_LKT(19,10,1:6)=(/ 0.724980,0.710933,0.653423,0.519100,0.242867,0.060400 /) -XEXT_COEFF_550_LKT(19,10)=2013.600000 !rg=0.0439813 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,11,1:6)=(/ 4840.300000,3728.300000,2269.400000,884.530000,158.510000,14.571000 /) -XPIZA_LKT(19,11,1:6)=(/ 0.976025,0.981753,0.982385,0.990372,0.977935,0.899403 /) -XCGA_LKT(19,11,1:6)=(/ 0.726367,0.718923,0.688030,0.589483,0.346267,0.087487 /) -XEXT_COEFF_550_LKT(19,11)=2303.200000 !rg=0.0439813 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,12,1:6)=(/ 4157.200000,3450.900000,2426.300000,1116.300000,237.220000,24.155000 /) -XPIZA_LKT(19,12,1:6)=(/ 0.971773,0.979792,0.982696,0.991810,0.984114,0.937169 /) -XCGA_LKT(19,12,1:6)=(/ 0.726500,0.720017,0.709130,0.642397,0.451480,0.127017 /) -XEXT_COEFF_550_LKT(19,12)=2454.200000 !rg=0.0439813 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,13,1:6)=(/ 3478.700000,3097.300000,2410.800000,1322.200000,336.040000,39.353000 /) -XPIZA_LKT(19,13,1:6)=(/ 0.966555,0.976850,0.981894,0.992638,0.987974,0.959750 /) -XCGA_LKT(19,13,1:6)=(/ 0.727387,0.719673,0.717960,0.682047,0.529793,0.185280 /) -XEXT_COEFF_550_LKT(19,13)=2430.200000 !rg=0.0439813 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,14,1:6)=(/ 2905.300000,2715.600000,2249.800000,1460.900000,450.800000,61.364000 /) -XPIZA_LKT(19,14,1:6)=(/ 0.960166,0.973501,0.979930,0.992972,0.990366,0.972829 /) -XCGA_LKT(19,14,1:6)=(/ 0.732173,0.723627,0.717400,0.707827,0.601127,0.270787 /) -XEXT_COEFF_550_LKT(19,14)=2260.500000 !rg=0.0439813 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,15,1:6)=(/ 2383.400000,2316.300000,2021.300000,1498.600000,570.320000,92.157000 /) -XPIZA_LKT(19,15,1:6)=(/ 0.953827,0.969157,0.977233,0.992844,0.991881,0.980662 /) -XCGA_LKT(19,15,1:6)=(/ 0.736630,0.726197,0.716343,0.720393,0.654983,0.384207 /) -XEXT_COEFF_550_LKT(19,15)=2033.100000 !rg=0.0439813 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,16,1:6)=(/ 1950.400000,1952.500000,1792.100000,1433.000000,681.430000,136.140000 /) -XPIZA_LKT(19,16,1:6)=(/ 0.945774,0.963422,0.973964,0.992220,0.992802,0.985850 /) -XCGA_LKT(19,16,1:6)=(/ 0.742313,0.728993,0.720277,0.721520,0.696470,0.486567 /) -XEXT_COEFF_550_LKT(19,16)=1797.400000 !rg=0.0439813 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,17,1:6)=(/ 1603.700000,1625.100000,1552.300000,1298.800000,762.390000,187.850000 /) -XPIZA_LKT(19,17,1:6)=(/ 0.935561,0.956850,0.969569,0.991195,0.993238,0.989033 /) -XCGA_LKT(19,17,1:6)=(/ 0.751253,0.731910,0.723187,0.717430,0.724190,0.558403 /) -XEXT_COEFF_550_LKT(19,17)=1550.300000 !rg=0.0439813 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,18,1:6)=(/ 1305.200000,1341.500000,1311.800000,1159.200000,794.970000,246.600000 /) -XPIZA_LKT(19,18,1:6)=(/ 0.925633,0.950843,0.964299,0.989881,0.993236,0.991045 /) -XCGA_LKT(19,18,1:6)=(/ 0.760567,0.741167,0.725757,0.717003,0.739347,0.625093 /) -XEXT_COEFF_550_LKT(19,18)=1315.800000 !rg=0.0439813 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,19,1:6)=(/ 1066.700000,1107.100000,1101.000000,1024.600000,771.110000,305.050000 /) -XPIZA_LKT(19,19,1:6)=(/ 0.913614,0.941588,0.959349,0.988206,0.992779,0.992305 /) -XCGA_LKT(19,19,1:6)=(/ 0.769370,0.747243,0.732903,0.720183,0.742720,0.673493 /) -XEXT_COEFF_550_LKT(19,19)=1104.100000 !rg=0.0439813 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(19,20,1:6)=(/ 874.710000,907.350000,918.930000,876.120000,704.810000,355.530000 /) -XPIZA_LKT(19,20,1:6)=(/ 0.899320,0.931724,0.951856,0.986029,0.991853,0.993032 /) -XCGA_LKT(19,20,1:6)=(/ 0.781093,0.753317,0.737943,0.721953,0.737553,0.709740 /) -XEXT_COEFF_550_LKT(19,20)=914.540000 !rg=0.0439813 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,1,1:6)=(/ 2785.400000,585.850000,124.500000,20.701000,4.135400,1.426700 /) -XPIZA_LKT(20,1,1:6)=(/ 0.971407,0.930641,0.813779,0.739650,0.337400,0.059235 /) -XCGA_LKT(20,1,1:6)=(/ 0.377100,0.133677,0.056380,0.022297,0.007080,0.001747 /) -XEXT_COEFF_550_LKT(20,1)=123.700000 !rg=0.0476474 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,2,1:6)=(/ 3134.500000,701.720000,150.540000,24.723000,4.505400,1.449500 /) -XPIZA_LKT(20,2,1:6)=(/ 0.973380,0.940807,0.843558,0.780373,0.390337,0.073492 /) -XCGA_LKT(20,2,1:6)=(/ 0.454770,0.169980,0.071467,0.028290,0.008997,0.002220 /) -XEXT_COEFF_550_LKT(20,2)=151.020000 !rg=0.0476474 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,3,1:6)=(/ 3832.000000,928.790000,210.560000,34.461000,5.405600,1.505000 /) -XPIZA_LKT(20,3,1:6)=(/ 0.976832,0.953382,0.884740,0.839999,0.489248,0.106488 /) -XCGA_LKT(20,3,1:6)=(/ 0.538510,0.253233,0.108093,0.042973,0.013710,0.003387 /) -XEXT_COEFF_550_LKT(20,3)=213.760000 !rg=0.0476474 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,4,1:6)=(/ 4672.800000,1284.000000,319.240000,54.502000,7.301000,1.621900 /) -XPIZA_LKT(20,4,1:6)=(/ 0.979944,0.964033,0.920564,0.896283,0.618513,0.168983 /) -XCGA_LKT(20,4,1:6)=(/ 0.603630,0.373983,0.179557,0.072737,0.023367,0.005793 /) -XEXT_COEFF_550_LKT(20,4)=326.540000 !rg=0.0476474 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,5,1:6)=(/ 5492.800000,1769.900000,489.720000,91.498000,11.019000,1.852200 /) -XPIZA_LKT(20,5,1:6)=(/ 0.982073,0.971830,0.945045,0.935992,0.743747,0.269650 /) -XCGA_LKT(20,5,1:6)=(/ 0.654407,0.485243,0.284570,0.121033,0.039147,0.009743 /) -XEXT_COEFF_550_LKT(20,5)=502.500000 !rg=0.0476474 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,6,1:6)=(/ 6122.400000,2333.800000,729.160000,151.340000,17.749000,2.274500 /) -XPIZA_LKT(20,6,1:6)=(/ 0.983192,0.976977,0.960322,0.959502,0.837758,0.401988 /) -XCGA_LKT(20,6,1:6)=(/ 0.690433,0.568747,0.394113,0.188670,0.061177,0.015280 /) -XEXT_COEFF_550_LKT(20,6)=748.220000 !rg=0.0476474 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,7,1:6)=(/ 6427.800000,2911.800000,1038.200000,241.000000,29.507000,3.034500 /) -XPIZA_LKT(20,7,1:6)=(/ 0.983358,0.980251,0.969825,0.973055,0.899752,0.548138 /) -XCGA_LKT(20,7,1:6)=(/ 0.713170,0.629840,0.489723,0.279780,0.091597,0.022933 /) -XEXT_COEFF_550_LKT(20,7)=1064.200000 !rg=0.0476474 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,8,1:6)=(/ 6326.900000,3408.800000,1397.500000,369.910000,48.983000,4.374300 /) -XPIZA_LKT(20,8,1:6)=(/ 0.982538,0.982118,0.975777,0.981135,0.937485,0.682915 /) -XCGA_LKT(20,8,1:6)=(/ 0.723940,0.672690,0.566487,0.383273,0.134317,0.033630 /) -XEXT_COEFF_550_LKT(20,8)=1428.700000 !rg=0.0476474 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,9,1:6)=(/ 5883.900000,3736.400000,1775.300000,541.800000,79.571000,6.743200 /) -XPIZA_LKT(20,9,1:6)=(/ 0.980738,0.982854,0.979502,0.986099,0.959832,0.790937 /) -XCGA_LKT(20,9,1:6)=(/ 0.726780,0.700800,0.625410,0.471827,0.195847,0.048880 /) -XEXT_COEFF_550_LKT(20,9)=1810.200000 !rg=0.0476474 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,10,1:6)=(/ 5259.900000,3816.100000,2113.900000,748.460000,123.840000,10.861000 /) -XPIZA_LKT(20,10,1:6)=(/ 0.978103,0.982516,0.981665,0.989114,0.972806,0.867267 /) -XCGA_LKT(20,10,1:6)=(/ 0.726830,0.715693,0.668607,0.549173,0.283453,0.070760 /) -XEXT_COEFF_550_LKT(20,10)=2149.300000 !rg=0.0476474 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,11,1:6)=(/ 4586.400000,3647.900000,2357.000000,978.790000,187.630000,17.954000 /) -XPIZA_LKT(20,11,1:6)=(/ 0.974432,0.981138,0.982648,0.991039,0.980789,0.917265 /) -XCGA_LKT(20,11,1:6)=(/ 0.726977,0.720497,0.697953,0.611620,0.392407,0.102540 /) -XEXT_COEFF_550_LKT(20,11)=2388.500000 !rg=0.0476474 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,12,1:6)=(/ 3873.300000,3326.700000,2444.700000,1205.400000,275.980000,29.643000 /) -XPIZA_LKT(20,12,1:6)=(/ 0.969831,0.978734,0.982517,0.992217,0.985941,0.947945 /) -XCGA_LKT(20,12,1:6)=(/ 0.727130,0.720110,0.713927,0.659793,0.485280,0.149070 /) -XEXT_COEFF_550_LKT(20,12)=2469.200000 !rg=0.0476474 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,13,1:6)=(/ 3241.700000,2951.300000,2363.900000,1389.300000,380.960000,47.551000 /) -XPIZA_LKT(20,13,1:6)=(/ 0.963807,0.975698,0.981236,0.992838,0.989072,0.966019 /) -XCGA_LKT(20,13,1:6)=(/ 0.729983,0.722077,0.718503,0.693683,0.559843,0.217777 /) -XEXT_COEFF_550_LKT(20,13)=2379.400000 !rg=0.0476474 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,14,1:6)=(/ 2670.500000,2559.900000,2162.500000,1489.700000,500.020000,72.780000 /) -XPIZA_LKT(20,14,1:6)=(/ 0.957760,0.971906,0.978996,0.992978,0.991082,0.976505 /) -XCGA_LKT(20,14,1:6)=(/ 0.733200,0.725313,0.717207,0.714013,0.624837,0.316393 /) -XEXT_COEFF_550_LKT(20,14)=2176.100000 !rg=0.0476474 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,15,1:6)=(/ 2192.400000,2162.400000,1933.800000,1484.300000,618.510000,108.730000 /) -XPIZA_LKT(20,15,1:6)=(/ 0.950925,0.966891,0.976026,0.992646,0.992328,0.983066 /) -XCGA_LKT(20,15,1:6)=(/ 0.739137,0.726490,0.718137,0.721810,0.673490,0.431627 /) -XEXT_COEFF_550_LKT(20,15)=1940.400000 !rg=0.0476474 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,16,1:6)=(/ 1800.300000,1812.100000,1700.500000,1383.200000,719.970000,157.010000 /) -XPIZA_LKT(20,16,1:6)=(/ 0.941223,0.960881,0.972201,0.991859,0.993037,0.987381 /) -XCGA_LKT(20,16,1:6)=(/ 0.746597,0.730233,0.721403,0.720367,0.709220,0.517553 /) -XEXT_COEFF_550_LKT(20,16)=1702.200000 !rg=0.0476474 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,17,1:6)=(/ 1465.000000,1501.500000,1448.900000,1243.100000,782.400000,211.610000 /) -XPIZA_LKT(20,17,1:6)=(/ 0.931581,0.954074,0.967402,0.990679,0.993292,0.989966 /) -XCGA_LKT(20,17,1:6)=(/ 0.754030,0.736667,0.723840,0.716727,0.731767,0.588023 /) -XEXT_COEFF_550_LKT(20,17)=1450.900000 !rg=0.0476474 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,18,1:6)=(/ 1194.700000,1237.300000,1222.000000,1106.000000,791.280000,270.920000 /) -XPIZA_LKT(20,18,1:6)=(/ 0.921238,0.946992,0.962918,0.989287,0.993100,0.991643 /) -XCGA_LKT(20,18,1:6)=(/ 0.764420,0.742990,0.730600,0.718143,0.741727,0.646423 /) -XEXT_COEFF_550_LKT(20,18)=1226.500000 !rg=0.0476474 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,19,1:6)=(/ 980.470000,1017.000000,1022.400000,962.950000,746.950000,327.550000 /) -XPIZA_LKT(20,19,1:6)=(/ 0.907548,0.937179,0.956101,0.987536,0.992446,0.992674 /) -XCGA_LKT(20,19,1:6)=(/ 0.775210,0.748680,0.734273,0.722477,0.741000,0.690210 /) -XEXT_COEFF_550_LKT(20,19)=1019.000000 !rg=0.0476474 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(20,20,1:6)=(/ 798.030000,832.520000,848.410000,817.220000,671.730000,371.750000 /) -XPIZA_LKT(20,20,1:6)=(/ 0.892773,0.927031,0.948477,0.985379,0.991388,0.993211 /) -XCGA_LKT(20,20,1:6)=(/ 0.784923,0.759953,0.738920,0.726457,0.735663,0.720637 /) -XEXT_COEFF_550_LKT(20,20)=848.360000 !rg=0.0476474 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,1,1:6)=(/ 3204.500000,720.600000,152.130000,24.904000,4.522000,1.450600 /) -XPIZA_LKT(21,1,1:6)=(/ 0.973903,0.941885,0.844612,0.781648,0.392299,0.074074 /) -XCGA_LKT(21,1,1:6)=(/ 0.450850,0.157647,0.066100,0.026143,0.008307,0.002050 /) -XEXT_COEFF_550_LKT(21,1)=152.720000 !rg=0.0516191 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,2,1:6)=(/ 3638.000000,853.190000,184.660000,30.005000,4.991700,1.479600 /) -XPIZA_LKT(21,2,1:6)=(/ 0.975794,0.949807,0.869752,0.817212,0.447917,0.091546 /) -XCGA_LKT(21,2,1:6)=(/ 0.517100,0.200687,0.083797,0.033160,0.010553,0.002603 /) -XEXT_COEFF_550_LKT(21,2)=186.800000 !rg=0.0516191 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,3,1:6)=(/ 4370.500000,1107.500000,258.090000,42.318000,6.134000,1.550000 /) -XPIZA_LKT(21,3,1:6)=(/ 0.978805,0.959551,0.903731,0.868107,0.548045,0.131470 /) -XCGA_LKT(21,3,1:6)=(/ 0.578200,0.295383,0.126613,0.050337,0.016077,0.003973 /) -XEXT_COEFF_550_LKT(21,3)=263.370000 !rg=0.0516191 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,4,1:6)=(/ 5178.700000,1503.000000,386.490000,67.374000,8.537300,1.698200 /) -XPIZA_LKT(21,4,1:6)=(/ 0.981292,0.968081,0.932611,0.914811,0.671952,0.205190 /) -XCGA_LKT(21,4,1:6)=(/ 0.631010,0.417257,0.208440,0.085047,0.027383,0.006793 /) -XEXT_COEFF_550_LKT(21,4)=396.260000 !rg=0.0516191 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,5,1:6)=(/ 5910.000000,2023.600000,582.780000,112.560000,13.238000,1.990500 /) -XPIZA_LKT(21,5,1:6)=(/ 0.982885,0.974424,0.952368,0.946982,0.785089,0.318988 /) -XCGA_LKT(21,5,1:6)=(/ 0.673723,0.519900,0.320830,0.141253,0.045840,0.011427 /) -XEXT_COEFF_550_LKT(21,5)=598.370000 !rg=0.0516191 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,6,1:6)=(/ 6393.100000,2599.200000,850.100000,183.570000,21.697000,2.526400 /) -XPIZA_LKT(21,6,1:6)=(/ 0.983549,0.978626,0.964794,0.965835,0.865914,0.460002 /) -XCGA_LKT(21,6,1:6)=(/ 0.703337,0.594903,0.429437,0.219510,0.071603,0.017913 /) -XEXT_COEFF_550_LKT(21,6)=872.250000 !rg=0.0516191 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,7,1:6)=(/ 6511.900000,3155.800000,1185.400000,288.600000,36.297000,3.490300 /) -XPIZA_LKT(21,7,1:6)=(/ 0.983291,0.981242,0.972642,0.976838,0.917401,0.605459 /) -XCGA_LKT(21,7,1:6)=(/ 0.720703,0.648917,0.520937,0.319583,0.107217,0.026880 /) -XEXT_COEFF_550_LKT(21,7)=1213.900000 !rg=0.0516191 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,8,1:6)=(/ 6235.400000,3591.100000,1555.900000,435.870000,59.936000,5.187200 /) -XPIZA_LKT(21,8,1:6)=(/ 0.982070,0.982605,0.977527,0.983475,0.948045,0.730982 /) -XCGA_LKT(21,8,1:6)=(/ 0.727590,0.685860,0.590710,0.419217,0.157323,0.039407 /) -XEXT_COEFF_550_LKT(21,8)=1589.500000 !rg=0.0516191 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,9,1:6)=(/ 5681.600000,3820.900000,1925.900000,622.260000,95.907000,8.178500 /) -XPIZA_LKT(21,9,1:6)=(/ 0.979852,0.982901,0.980568,0.987500,0.965987,0.826168 /) -XCGA_LKT(21,9,1:6)=(/ 0.728033,0.708630,0.644000,0.502827,0.229297,0.057263 /) -XEXT_COEFF_550_LKT(21,9)=1961.700000 !rg=0.0516191 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,10,1:6)=(/ 5016.600000,3791.900000,2232.100000,842.440000,147.160000,13.342000 /) -XPIZA_LKT(21,10,1:6)=(/ 0.976860,0.982134,0.982224,0.990017,0.976505,0.890720 /) -XCGA_LKT(21,10,1:6)=(/ 0.728227,0.719017,0.681547,0.576213,0.327917,0.082900 /) -XEXT_COEFF_550_LKT(21,10)=2266.700000 !rg=0.0516191 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,11,1:6)=(/ 4300.200000,3547.600000,2417.600000,1074.500000,221.290000,22.112000 /) -XPIZA_LKT(21,11,1:6)=(/ 0.972810,0.980301,0.982742,0.991588,0.983198,0.931831 /) -XCGA_LKT(21,11,1:6)=(/ 0.728087,0.721083,0.705537,0.632173,0.434000,0.120227 /) -XEXT_COEFF_550_LKT(21,11)=2446.900000 !rg=0.0516191 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,12,1:6)=(/ 3611.100000,3187.400000,2435.800000,1288.100000,316.800000,36.181000 /) -XPIZA_LKT(21,12,1:6)=(/ 0.967326,0.977701,0.982153,0.992519,0.987405,0.956580 /) -XCGA_LKT(21,12,1:6)=(/ 0.728610,0.721503,0.716943,0.674717,0.515607,0.175063 /) -XEXT_COEFF_550_LKT(21,12)=2456.400000 !rg=0.0516191 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,13,1:6)=(/ 2992.300000,2805.300000,2295.600000,1443.300000,429.330000,56.966000 /) -XPIZA_LKT(21,13,1:6)=(/ 0.961702,0.974342,0.980486,0.992943,0.990005,0.971014 /) -XCGA_LKT(21,13,1:6)=(/ 0.731167,0.724183,0.718690,0.703297,0.588910,0.255750 /) -XEXT_COEFF_550_LKT(21,13)=2310.800000 !rg=0.0516191 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,14,1:6)=(/ 2455.000000,2395.900000,2076.700000,1501.800000,549.010000,86.018000 /) -XPIZA_LKT(21,14,1:6)=(/ 0.955384,0.969963,0.977884,0.992901,0.991658,0.979541 /) -XCGA_LKT(21,14,1:6)=(/ 0.735847,0.725723,0.717563,0.718583,0.645687,0.365487 /) -XEXT_COEFF_550_LKT(21,14)=2084.500000 !rg=0.0516191 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,15,1:6)=(/ 2021.400000,2013.400000,1844.800000,1452.900000,662.650000,127.640000 /) -XPIZA_LKT(21,15,1:6)=(/ 0.946647,0.964664,0.974674,0.992381,0.992671,0.985106 /) -XCGA_LKT(21,15,1:6)=(/ 0.741910,0.728060,0.719537,0.721970,0.689453,0.471827 /) -XEXT_COEFF_550_LKT(21,15)=1851.500000 !rg=0.0516191 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,16,1:6)=(/ 1645.900000,1681.700000,1597.700000,1330.600000,751.070000,178.590000 /) -XPIZA_LKT(21,16,1:6)=(/ 0.937365,0.957657,0.970619,0.991392,0.993192,0.988599 /) -XCGA_LKT(21,16,1:6)=(/ 0.747913,0.733200,0.723617,0.718410,0.719670,0.546407 /) -XEXT_COEFF_550_LKT(21,16)=1600.300000 !rg=0.0516191 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,17,1:6)=(/ 1337.800000,1384.200000,1353.000000,1187.000000,793.160000,236.590000 /) -XPIZA_LKT(21,17,1:6)=(/ 0.927954,0.951384,0.965504,0.990138,0.993262,0.990764 /) -XCGA_LKT(21,17,1:6)=(/ 0.759963,0.739130,0.727340,0.716710,0.737053,0.615240 /) -XEXT_COEFF_550_LKT(21,17)=1352.700000 !rg=0.0516191 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,18,1:6)=(/ 1099.300000,1138.200000,1138.300000,1049.900000,778.530000,295.220000 /) -XPIZA_LKT(21,18,1:6)=(/ 0.915219,0.942795,0.960294,0.988665,0.992884,0.992127 /) -XCGA_LKT(21,18,1:6)=(/ 0.769327,0.744633,0.731990,0.721387,0.742380,0.665823 /) -XEXT_COEFF_550_LKT(21,18)=1141.200000 !rg=0.0516191 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(21,19,1:6)=(/ 895.210000,935.590000,944.890000,904.240000,717.560000,347.850000 /) -XPIZA_LKT(21,19,1:6)=(/ 0.901599,0.932533,0.952818,0.986194,0.992056,0.992939 /) -XCGA_LKT(21,19,1:6)=(/ 0.777837,0.754090,0.735103,0.723250,0.739117,0.704397 /) -XEXT_COEFF_550_LKT(21,19)=943.650000 !rg=0.0516191 sigma=2.85 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET2',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET2 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET3() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET3',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(21,20,1:6)=(/ 728.630000,762.500000,781.350000,762.600000,640.740000,384.220000 /) -XPIZA_LKT(21,20,1:6)=(/ 0.886500,0.922634,0.945140,0.984554,0.990860,0.993294 /) -XCGA_LKT(21,20,1:6)=(/ 0.791770,0.763860,0.744493,0.727810,0.734203,0.729583 /) -XEXT_COEFF_550_LKT(21,20)=780.930000 !rg=0.0516191 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,1,1:6)=(/ 3695.400000,880.730000,186.890000,30.239000,5.012700,1.480900 /) -XPIZA_LKT(22,1,1:6)=(/ 0.975903,0.950951,0.870743,0.818312,0.449941,0.092256 /) -XCGA_LKT(22,1,1:6)=(/ 0.528673,0.186480,0.077520,0.030647,0.009747,0.002403 /) -XEXT_COEFF_550_LKT(22,1)=189.200000 !rg=0.0559219 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,2,1:6)=(/ 4214.900000,1027.800000,227.220000,36.703000,5.608800,1.517700 /) -XPIZA_LKT(22,2,1:6)=(/ 0.977943,0.956989,0.891669,0.848839,0.506782,0.113478 /) -XCGA_LKT(22,2,1:6)=(/ 0.569943,0.237520,0.098300,0.038867,0.012380,0.003057 /) -XEXT_COEFF_550_LKT(22,2)=231.380000 !rg=0.0559219 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,3,1:6)=(/ 4929.100000,1310.200000,315.900000,52.237000,7.058400,1.606900 /) -XPIZA_LKT(22,3,1:6)=(/ 0.980479,0.964530,0.919328,0.891662,0.605349,0.161232 /) -XCGA_LKT(22,3,1:6)=(/ 0.611410,0.342427,0.148347,0.058957,0.018850,0.004663 /) -XEXT_COEFF_550_LKT(22,3)=323.570000 !rg=0.0559219 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,4,1:6)=(/ 5672.200000,1746.300000,465.620000,83.376000,10.104000,1.795100 /) -XPIZA_LKT(22,4,1:6)=(/ 0.982401,0.971418,0.942434,0.929980,0.721038,0.246803 /) -XCGA_LKT(22,4,1:6)=(/ 0.655040,0.460080,0.240920,0.099387,0.032083,0.007970 /) -XEXT_COEFF_550_LKT(22,4)=478.120000 !rg=0.0559219 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,5,1:6)=(/ 6284.200000,2293.600000,688.840000,137.990000,16.038000,2.166000 /) -XPIZA_LKT(22,5,1:6)=(/ 0.983508,0.976585,0.958359,0.955851,0.821056,0.372652 /) -XCGA_LKT(22,5,1:6)=(/ 0.690667,0.552363,0.358123,0.164637,0.053660,0.013400 /) -XEXT_COEFF_550_LKT(22,5)=707.440000 !rg=0.0559219 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,6,1:6)=(/ 6596.300000,2866.200000,984.380000,221.680000,26.627000,2.845900 /) -XPIZA_LKT(22,6,1:6)=(/ 0.983739,0.979980,0.968504,0.970980,0.889467,0.518965 /) -XCGA_LKT(22,6,1:6)=(/ 0.714263,0.618670,0.464443,0.253903,0.083783,0.021003 /) -XEXT_COEFF_550_LKT(22,6)=1009.700000 !rg=0.0559219 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,7,1:6)=(/ 6523.700000,3382.700000,1339.800000,344.010000,44.609000,4.067900 /) -XPIZA_LKT(22,7,1:6)=(/ 0.983045,0.982024,0.974969,0.979963,0.931786,0.659801 /) -XCGA_LKT(22,7,1:6)=(/ 0.726563,0.665800,0.549310,0.358480,0.125487,0.031500 /) -XEXT_COEFF_550_LKT(22,7)=1370.800000 !rg=0.0559219 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,8,1:6)=(/ 6094.000000,3739.300000,1717.000000,507.840000,72.938000,6.214900 /) -XPIZA_LKT(22,8,1:6)=(/ 0.981389,0.982920,0.978992,0.985364,0.956523,0.773901 /) -XCGA_LKT(22,8,1:6)=(/ 0.730027,0.696893,0.613230,0.452090,0.184210,0.046167 /) -XEXT_COEFF_550_LKT(22,8)=1752.100000 !rg=0.0559219 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,9,1:6)=(/ 5451.000000,3863.700000,2069.600000,710.090000,114.820000,9.983500 /) -XPIZA_LKT(22,9,1:6)=(/ 0.978842,0.982773,0.981406,0.988670,0.970941,0.856224 /) -XCGA_LKT(22,9,1:6)=(/ 0.729747,0.714640,0.660470,0.533623,0.267580,0.067077 /) -XEXT_COEFF_550_LKT(22,9)=2105.800000 !rg=0.0559219 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,10,1:6)=(/ 4743.900000,3733.700000,2332.300000,936.900000,174.480000,16.428000 /) -XPIZA_LKT(22,10,1:6)=(/ 0.975412,0.981582,0.982575,0.990750,0.979601,0.910110 /) -XCGA_LKT(22,10,1:6)=(/ 0.728967,0.721350,0.692647,0.599563,0.373290,0.097140 /) -XEXT_COEFF_550_LKT(22,10)=2365.400000 !rg=0.0559219 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,11,1:6)=(/ 4015.600000,3423.400000,2451.400000,1166.800000,258.500000,27.165000 /) -XPIZA_LKT(22,11,1:6)=(/ 0.970960,0.979420,0.982661,0.992042,0.985185,0.943615 /) -XCGA_LKT(22,11,1:6)=(/ 0.728983,0.721910,0.711537,0.650697,0.469330,0.141033 /) -XEXT_COEFF_550_LKT(22,11)=2477.800000 !rg=0.0559219 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,12,1:6)=(/ 3343.100000,3048.300000,2400.300000,1361.500000,360.320000,43.841000 /) -XPIZA_LKT(22,12,1:6)=(/ 0.965425,0.976500,0.981628,0.992754,0.988597,0.963469 /) -XCGA_LKT(22,12,1:6)=(/ 0.729443,0.723390,0.718577,0.687463,0.545793,0.205663 /) -XEXT_COEFF_550_LKT(22,12)=2419.100000 !rg=0.0559219 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,13,1:6)=(/ 2753.500000,2645.400000,2219.200000,1480.700000,478.560000,67.734000 /) -XPIZA_LKT(22,13,1:6)=(/ 0.959505,0.972694,0.979530,0.992986,0.990785,0.975026 /) -XCGA_LKT(22,13,1:6)=(/ 0.733413,0.725297,0.718493,0.710687,0.614047,0.299240 /) -XEXT_COEFF_550_LKT(22,13)=2227.800000 !rg=0.0559219 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,14,1:6)=(/ 2267.900000,2233.500000,1987.500000,1495.100000,598.110000,101.580000 /) -XPIZA_LKT(22,14,1:6)=(/ 0.951574,0.968034,0.976678,0.992745,0.992142,0.982115 /) -XCGA_LKT(22,14,1:6)=(/ 0.737963,0.726723,0.718167,0.720870,0.665050,0.413757 /) -XEXT_COEFF_550_LKT(22,14)=1997.500000 !rg=0.0559219 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,15,1:6)=(/ 1851.600000,1879.700000,1750.000000,1411.200000,703.530000,147.980000 /) -XPIZA_LKT(22,15,1:6)=(/ 0.942578,0.961668,0.973241,0.992022,0.992933,0.986775 /) -XCGA_LKT(22,15,1:6)=(/ 0.742860,0.730713,0.722533,0.720717,0.703173,0.504577 /) -XEXT_COEFF_550_LKT(22,15)=1754.700000 !rg=0.0559219 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,16,1:6)=(/ 1504.000000,1546.900000,1498.700000,1272.500000,775.150000,201.630000 /) -XPIZA_LKT(22,16,1:6)=(/ 0.933460,0.955292,0.968124,0.990921,0.993271,0.989598 /) -XCGA_LKT(22,16,1:6)=(/ 0.754717,0.734583,0.724787,0.717290,0.728307,0.576053 /) -XEXT_COEFF_550_LKT(22,16)=1495.600000 !rg=0.0559219 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,17,1:6)=(/ 1230.700000,1273.000000,1260.500000,1133.400000,793.850000,261.100000 /) -XPIZA_LKT(22,17,1:6)=(/ 0.922283,0.948332,0.963581,0.989551,0.993160,0.991416 /) -XCGA_LKT(22,17,1:6)=(/ 0.763550,0.741427,0.728940,0.718783,0.740447,0.637833 /) -XEXT_COEFF_550_LKT(22,17)=1266.900000 !rg=0.0559219 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,18,1:6)=(/ 1005.500000,1050.700000,1053.000000,993.330000,757.690000,318.560000 /) -XPIZA_LKT(22,18,1:6)=(/ 0.909242,0.938554,0.957271,0.987761,0.992593,0.992532 /) -XCGA_LKT(22,18,1:6)=(/ 0.771373,0.749483,0.732703,0.722330,0.741697,0.683460 /) -XEXT_COEFF_550_LKT(22,18)=1052.700000 !rg=0.0559219 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,19,1:6)=(/ 817.490000,856.020000,876.340000,840.270000,686.640000,365.600000 /) -XPIZA_LKT(22,19,1:6)=(/ 0.895165,0.928405,0.949190,0.985834,0.991575,0.993143 /) -XCGA_LKT(22,19,1:6)=(/ 0.785733,0.757390,0.739920,0.724753,0.736317,0.716207 /) -XEXT_COEFF_550_LKT(22,19)=872.020000 !rg=0.0559219 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(22,20,1:6)=(/ 670.540000,698.860000,718.290000,711.250000,609.750000,392.020000 /) -XPIZA_LKT(22,20,1:6)=(/ 0.879623,0.917837,0.942004,0.983534,0.990361,0.993317 /) -XCGA_LKT(22,20,1:6)=(/ 0.796407,0.767217,0.747447,0.729410,0.734550,0.736150 /) -XEXT_COEFF_550_LKT(22,20)=721.820000 !rg=0.0559219 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,1,1:6)=(/ 4322.200000,1066.200000,230.440000,37.007000,5.635500,1.519400 /) -XPIZA_LKT(23,1,1:6)=(/ 0.977847,0.958183,0.892630,0.849777,0.508810,0.114334 /) -XCGA_LKT(23,1,1:6)=(/ 0.595207,0.221453,0.090960,0.035927,0.011433,0.002820 /) -XEXT_COEFF_550_LKT(23,1)=234.860000 !rg=0.0605833 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,2,1:6)=(/ 4845.900000,1224.700000,279.930000,45.189000,6.392100,1.565900 /) -XPIZA_LKT(23,2,1:6)=(/ 0.979899,0.962672,0.909818,0.875598,0.565292,0.139835 /) -XCGA_LKT(23,2,1:6)=(/ 0.608610,0.281643,0.115400,0.045553,0.014520,0.003587 /) -XEXT_COEFF_550_LKT(23,2)=286.490000 !rg=0.0605833 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,3,1:6)=(/ 5487.400000,1539.000000,385.320000,64.726000,8.231100,1.679200 /) -XPIZA_LKT(23,3,1:6)=(/ 0.981886,0.968569,0.932041,0.911186,0.659693,0.196174 /) -XCGA_LKT(23,3,1:6)=(/ 0.639110,0.393017,0.173857,0.069043,0.022100,0.005470 /) -XEXT_COEFF_550_LKT(23,3)=395.670000 !rg=0.0605833 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,4,1:6)=(/ 6136.500000,2012.900000,557.690000,103.130000,12.086000,1.918000 /) -XPIZA_LKT(23,4,1:6)=(/ 0.983296,0.974183,0.950432,0.942312,0.765083,0.293668 /) -XCGA_LKT(23,4,1:6)=(/ 0.676133,0.501157,0.276887,0.116077,0.037577,0.009350 /) -XEXT_COEFF_550_LKT(23,4)=573.130000 !rg=0.0605833 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,5,1:6)=(/ 6600.700000,2574.700000,808.710000,168.460000,19.559000,2.388600 /) -XPIZA_LKT(23,5,1:6)=(/ 0.983955,0.978384,0.963280,0.963007,0.851813,0.429530 /) -XCGA_LKT(23,5,1:6)=(/ 0.705383,0.582200,0.396220,0.191453,0.062793,0.015713 /) -XEXT_COEFF_550_LKT(23,5)=830.550000 !rg=0.0605833 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,6,1:6)=(/ 6723.100000,3128.600000,1130.800000,266.590000,32.742000,3.251000 /) -XPIZA_LKT(23,6,1:6)=(/ 0.983763,0.981097,0.971591,0.975187,0.908940,0.577221 /) -XCGA_LKT(23,6,1:6)=(/ 0.723320,0.640137,0.497883,0.290613,0.098007,0.024617 /) -XEXT_COEFF_550_LKT(23,6)=1159.000000 !rg=0.0605833 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,7,1:6)=(/ 6459.700000,3587.500000,1500.900000,406.770000,54.670000,4.799200 /) -XPIZA_LKT(23,7,1:6)=(/ 0.982660,0.982615,0.976892,0.982514,0.943425,0.709990 /) -XCGA_LKT(23,7,1:6)=(/ 0.731183,0.680717,0.575563,0.394757,0.146827,0.036907 /) -XEXT_COEFF_550_LKT(23,7)=1534.500000 !rg=0.0605833 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,8,1:6)=(/ 5897.500000,3849.800000,1874.000000,586.110000,88.186000,7.512000 /) -XPIZA_LKT(23,8,1:6)=(/ 0.980595,0.983068,0.980180,0.986899,0.963319,0.811442 /) -XCGA_LKT(23,8,1:6)=(/ 0.731840,0.706217,0.633363,0.484100,0.215443,0.054080 /) -XEXT_COEFF_550_LKT(23,8)=1910.200000 !rg=0.0605833 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,9,1:6)=(/ 5200.500000,3862.600000,2198.600000,803.090000,136.790000,12.244000 /) -XPIZA_LKT(23,9,1:6)=(/ 0.977584,0.982497,0.982062,0.989651,0.974985,0.881492 /) -XCGA_LKT(23,9,1:6)=(/ 0.730287,0.719270,0.674747,0.561863,0.309910,0.078573 /) -XEXT_COEFF_550_LKT(23,9)=2234.100000 !rg=0.0605833 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,10,1:6)=(/ 4456.700000,3644.000000,2407.400000,1033.200000,206.230000,20.232000 /) -XPIZA_LKT(23,10,1:6)=(/ 0.973817,0.980875,0.982769,0.991351,0.982207,0.925977 /) -XCGA_LKT(23,10,1:6)=(/ 0.729723,0.722630,0.701513,0.621080,0.415450,0.113857 /) -XEXT_COEFF_550_LKT(23,10)=2438.400000 !rg=0.0605833 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,11,1:6)=(/ 3729.200000,3291.600000,2457.900000,1253.000000,298.100000,33.218000 /) -XPIZA_LKT(23,11,1:6)=(/ 0.968896,0.978422,0.982393,0.992386,0.986785,0.953082 /) -XCGA_LKT(23,11,1:6)=(/ 0.728637,0.723433,0.715557,0.666687,0.500563,0.165530 /) -XEXT_COEFF_550_LKT(23,11)=2481.100000 !rg=0.0605833 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,12,1:6)=(/ 3090.400000,2899.000000,2345.800000,1422.000000,407.450000,52.684000 /) -XPIZA_LKT(23,12,1:6)=(/ 0.963239,0.975077,0.980923,0.992898,0.989603,0.968957 /) -XCGA_LKT(23,12,1:6)=(/ 0.731363,0.724427,0.719350,0.698037,0.575623,0.241480 /) -XEXT_COEFF_550_LKT(23,12)=2359.000000 !rg=0.0605833 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,13,1:6)=(/ 2540.500000,2478.800000,2133.100000,1501.800000,527.470000,80.173000 /) -XPIZA_LKT(23,13,1:6)=(/ 0.955935,0.970949,0.978488,0.992941,0.991414,0.978313 /) -XCGA_LKT(23,13,1:6)=(/ 0.734260,0.726323,0.718300,0.716087,0.635760,0.346943 /) -XEXT_COEFF_550_LKT(23,13)=2144.100000 !rg=0.0605833 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,14,1:6)=(/ 2077.700000,2088.100000,1897.600000,1472.600000,643.820000,119.560000 /) -XPIZA_LKT(23,14,1:6)=(/ 0.947593,0.965260,0.975397,0.992511,0.992529,0.984307 /) -XCGA_LKT(23,14,1:6)=(/ 0.738817,0.728117,0.720553,0.721793,0.682003,0.456147 /) -XEXT_COEFF_550_LKT(23,14)=1903.900000 !rg=0.0605833 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,15,1:6)=(/ 1698.300000,1735.400000,1653.400000,1358.700000,737.620000,169.090000 /) -XPIZA_LKT(23,15,1:6)=(/ 0.938243,0.959313,0.971334,0.991635,0.993126,0.988105 /) -XCGA_LKT(23,15,1:6)=(/ 0.748907,0.731383,0.723640,0.719523,0.714487,0.533823 /) -XEXT_COEFF_550_LKT(23,15)=1653.200000 !rg=0.0605833 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,16,1:6)=(/ 1377.500000,1425.100000,1394.300000,1216.900000,789.660000,226.290000 /) -XPIZA_LKT(23,16,1:6)=(/ 0.928918,0.952964,0.966531,0.990433,0.993277,0.990452 /) -XCGA_LKT(23,16,1:6)=(/ 0.758243,0.738397,0.725827,0.718113,0.734370,0.604483 /) -XEXT_COEFF_550_LKT(23,16)=1401.000000 !rg=0.0605833 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,17,1:6)=(/ 1126.800000,1175.800000,1172.400000,1079.700000,785.100000,285.350000 /) -XPIZA_LKT(23,17,1:6)=(/ 0.916291,0.943869,0.961364,0.988937,0.992982,0.991937 /) -XCGA_LKT(23,17,1:6)=(/ 0.765860,0.744627,0.731120,0.720443,0.742007,0.657780 /) -XEXT_COEFF_550_LKT(23,17)=1174.300000 !rg=0.0605833 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,18,1:6)=(/ 921.100000,961.090000,977.600000,929.190000,731.070000,339.550000 /) -XPIZA_LKT(23,18,1:6)=(/ 0.902798,0.934581,0.953763,0.986997,0.992212,0.992833 /) -XCGA_LKT(23,18,1:6)=(/ 0.778717,0.750960,0.735760,0.723283,0.739483,0.698490 /) -XEXT_COEFF_550_LKT(23,18)=972.220000 !rg=0.0605833 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,19,1:6)=(/ 749.960000,782.430000,804.590000,784.700000,654.110000,379.370000 /) -XPIZA_LKT(23,19,1:6)=(/ 0.888167,0.924713,0.946357,0.984920,0.991094,0.993261 /) -XCGA_LKT(23,19,1:6)=(/ 0.790663,0.762520,0.742230,0.727240,0.734920,0.725783 /) -XEXT_COEFF_550_LKT(23,19)=807.100000 !rg=0.0605833 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(23,20,1:6)=(/ 614.740000,643.640000,660.830000,663.040000,581.550000,395.180000 /) -XPIZA_LKT(23,20,1:6)=(/ 0.872438,0.911646,0.938380,0.981909,0.989808,0.993251 /) -XCGA_LKT(23,20,1:6)=(/ 0.799347,0.772307,0.750250,0.731113,0.736353,0.740580 /) -XEXT_COEFF_550_LKT(23,20)=661.020000 !rg=0.0605833 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,1,1:6)=(/ 5099.200000,1274.300000,284.660000,45.588000,6.426000,1.568100 /) -XPIZA_LKT(24,1,1:6)=(/ 0.980017,0.963868,0.910783,0.876397,0.567270,0.140856 /) -XCGA_LKT(24,1,1:6)=(/ 0.633857,0.264210,0.106823,0.042113,0.013410,0.003310 /) -XEXT_COEFF_550_LKT(24,1)=291.630000 !rg=0.0656333 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,2,1:6)=(/ 5481.200000,1443.500000,344.530000,55.925000,7.386300,1.627200 /) -XPIZA_LKT(24,2,1:6)=(/ 0.981631,0.967142,0.924711,0.897965,0.621852,0.171104 /) -XCGA_LKT(24,2,1:6)=(/ 0.634597,0.333860,0.135633,0.053387,0.017027,0.004207 /) -XEXT_COEFF_550_LKT(24,2)=353.870000 !rg=0.0656333 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,3,1:6)=(/ 6024.100000,1795.600000,467.530000,80.388000,9.718500,1.770900 /) -XPIZA_LKT(24,3,1:6)=(/ 0.983044,0.971878,0.942344,0.927224,0.709915,0.236506 /) -XCGA_LKT(24,3,1:6)=(/ 0.662863,0.444830,0.203750,0.080847,0.025903,0.006420 /) -XEXT_COEFF_550_LKT(24,3)=480.780000 !rg=0.0656333 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,4,1:6)=(/ 6555.000000,2300.000000,663.690000,127.300000,14.593000,2.073900 /) -XPIZA_LKT(24,4,1:6)=(/ 0.983993,0.976485,0.956949,0.952288,0.803789,0.345271 /) -XCGA_LKT(24,4,1:6)=(/ 0.694670,0.539403,0.316027,0.135470,0.044000,0.010967 /) -XEXT_COEFF_550_LKT(24,4)=682.300000 !rg=0.0656333 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,5,1:6)=(/ 6846.600000,2861.500000,942.910000,204.730000,23.971000,2.671100 /) -XPIZA_LKT(24,5,1:6)=(/ 0.984228,0.979876,0.967346,0.968795,0.877727,0.488190 /) -XCGA_LKT(24,5,1:6)=(/ 0.717970,0.609300,0.434407,0.221690,0.073450,0.018420 /) -XEXT_COEFF_550_LKT(24,5)=968.060000 !rg=0.0656333 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,6,1:6)=(/ 6769.200000,3378.300000,1287.000000,318.920000,40.269000,3.764600 /) -XPIZA_LKT(24,6,1:6)=(/ 0.983619,0.981992,0.974144,0.978633,0.924886,0.633194 /) -XCGA_LKT(24,6,1:6)=(/ 0.730650,0.659293,0.529020,0.327780,0.114600,0.028847 /) -XEXT_COEFF_550_LKT(24,6)=1318.100000 !rg=0.0656333 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,7,1:6)=(/ 6332.600000,3761.200000,1666.400000,476.190000,66.698000,5.724300 /) -XPIZA_LKT(24,7,1:6)=(/ 0.982076,0.983031,0.978501,0.984581,0.952796,0.755252 /) -XCGA_LKT(24,7,1:6)=(/ 0.734520,0.693507,0.599977,0.428887,0.171700,0.043237 /) -XEXT_COEFF_550_LKT(24,7)=1701.800000 !rg=0.0656333 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,8,1:6)=(/ 5665.000000,3918.800000,2026.000000,671.920000,105.940000,9.144500 /) -XPIZA_LKT(24,8,1:6)=(/ 0.979626,0.983045,0.981130,0.988177,0.968790,0.843691 /) -XCGA_LKT(24,8,1:6)=(/ 0.733470,0.713687,0.651363,0.515810,0.251230,0.063340 /) -XEXT_COEFF_550_LKT(24,8)=2063.000000 !rg=0.0656333 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,9,1:6)=(/ 4912.000000,3824.600000,2311.100000,897.800000,162.520000,15.060000 /) -XPIZA_LKT(24,9,1:6)=(/ 0.976276,0.982034,0.982507,0.990452,0.978348,0.902473 /) -XCGA_LKT(24,9,1:6)=(/ 0.731593,0.722487,0.687127,0.586560,0.353923,0.092047 /) -XEXT_COEFF_550_LKT(24,9)=2345.600000 !rg=0.0656333 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,10,1:6)=(/ 4164.800000,3530.300000,2457.300000,1128.200000,241.770000,24.873000 /) -XPIZA_LKT(24,10,1:6)=(/ 0.971753,0.980086,0.982781,0.991852,0.984365,0.938853 /) -XCGA_LKT(24,10,1:6)=(/ 0.729050,0.724303,0.708753,0.640753,0.452040,0.133497 /) -XEXT_COEFF_550_LKT(24,10)=2485.200000 !rg=0.0656333 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,11,1:6)=(/ 3454.700000,3151.700000,2437.000000,1332.200000,340.290000,40.352000 /) -XPIZA_LKT(24,11,1:6)=(/ 0.966639,0.977206,0.981972,0.992656,0.988081,0.960649 /) -XCGA_LKT(24,11,1:6)=(/ 0.729487,0.724187,0.718380,0.680567,0.531043,0.194347 /) -XEXT_COEFF_550_LKT(24,11)=2456.600000 !rg=0.0656333 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,12,1:6)=(/ 2855.300000,2738.700000,2274.400000,1468.200000,456.390000,62.820000 /) -XPIZA_LKT(24,12,1:6)=(/ 0.960027,0.973564,0.980076,0.992976,0.990450,0.973356 /) -XCGA_LKT(24,12,1:6)=(/ 0.731887,0.726243,0.719310,0.706643,0.602150,0.282753 /) -XEXT_COEFF_550_LKT(24,12)=2288.300000 !rg=0.0656333 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,13,1:6)=(/ 2331.100000,2318.200000,2044.100000,1503.900000,577.010000,94.758000 /) -XPIZA_LKT(24,13,1:6)=(/ 0.952399,0.968580,0.977428,0.992829,0.991937,0.981080 /) -XCGA_LKT(24,13,1:6)=(/ 0.735287,0.726677,0.719833,0.719560,0.655913,0.395340 /) -XEXT_COEFF_550_LKT(24,13)=2052.400000 !rg=0.0656333 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,14,1:6)=(/ 1908.800000,1937.600000,1806.100000,1435.300000,686.490000,139.280000 /) -XPIZA_LKT(24,14,1:6)=(/ 0.943238,0.962838,0.973982,0.992217,0.992821,0.986121 /) -XCGA_LKT(24,14,1:6)=(/ 0.743580,0.728973,0.722190,0.721583,0.696657,0.490910 /) -XEXT_COEFF_550_LKT(24,14)=1809.400000 !rg=0.0656333 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,15,1:6)=(/ 1549.200000,1597.400000,1546.300000,1305.000000,765.350000,191.410000 /) -XPIZA_LKT(24,15,1:6)=(/ 0.934352,0.957280,0.969491,0.991180,0.993233,0.989184 /) -XCGA_LKT(24,15,1:6)=(/ 0.752087,0.735323,0.724673,0.718833,0.724047,0.563360 /) -XEXT_COEFF_550_LKT(24,15)=1550.900000 !rg=0.0656333 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,16,1:6)=(/ 1260.700000,1317.200000,1299.000000,1163.800000,794.760000,250.970000 /) -XPIZA_LKT(24,16,1:6)=(/ 0.923659,0.949043,0.964846,0.989844,0.993209,0.991161 /) -XCGA_LKT(24,16,1:6)=(/ 0.761000,0.740537,0.728997,0.718443,0.738780,0.628550 /) -XEXT_COEFF_550_LKT(24,16)=1303.700000 !rg=0.0656333 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,17,1:6)=(/ 1033.600000,1079.000000,1090.100000,1018.900000,767.840000,309.330000 /) -XPIZA_LKT(24,17,1:6)=(/ 0.910529,0.939936,0.958152,0.988295,0.992716,0.992376 /) -XCGA_LKT(24,17,1:6)=(/ 0.772437,0.745900,0.732970,0.723210,0.741703,0.676250 /) -XEXT_COEFF_550_LKT(24,17)=1084.800000 !rg=0.0656333 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,18,1:6)=(/ 841.200000,879.380000,901.400000,866.800000,699.960000,358.600000 /) -XPIZA_LKT(24,18,1:6)=(/ 0.896381,0.930947,0.951108,0.986385,0.991808,0.993061 /) -XCGA_LKT(24,18,1:6)=(/ 0.783383,0.757827,0.737393,0.726070,0.737747,0.711223 /) -XEXT_COEFF_550_LKT(24,18)=902.720000 !rg=0.0656333 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,19,1:6)=(/ 687.600000,720.940000,738.810000,735.140000,624.280000,389.180000 /) -XPIZA_LKT(24,19,1:6)=(/ 0.881044,0.918995,0.943672,0.983578,0.990579,0.993308 /) -XCGA_LKT(24,19,1:6)=(/ 0.793987,0.766537,0.746343,0.728897,0.734980,0.733397 /) -XEXT_COEFF_550_LKT(24,19)=740.980000 !rg=0.0656333 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(24,20,1:6)=(/ 564.260000,588.770000,610.230000,612.750000,553.860000,393.020000 /) -XPIZA_LKT(24,20,1:6)=(/ 0.866299,0.905690,0.933329,0.980655,0.989114,0.993111 /) -XCGA_LKT(24,20,1:6)=(/ 0.805837,0.774373,0.754227,0.730143,0.737357,0.742897 /) -XEXT_COEFF_550_LKT(24,20)=605.350000 !rg=0.0656333 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,1,1:6)=(/ 5876.000000,1500.400000,351.590000,56.457000,7.429400,1.629900 /) -XPIZA_LKT(25,1,1:6)=(/ 0.982226,0.968247,0.925708,0.898647,0.623726,0.172302 /) -XCGA_LKT(25,1,1:6)=(/ 0.644623,0.316663,0.125620,0.049363,0.015730,0.003883 /) -XEXT_COEFF_550_LKT(25,1)=361.550000 !rg=0.0711042 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,2,1:6)=(/ 6068.000000,1686.200000,422.610000,69.482000,8.647900,1.704900 /) -XPIZA_LKT(25,2,1:6)=(/ 0.983062,0.970664,0.936831,0.916472,0.675074,0.207637 /) -XCGA_LKT(25,2,1:6)=(/ 0.654257,0.393643,0.159667,0.062570,0.019967,0.004937 /) -XEXT_COEFF_550_LKT(25,2)=435.040000 !rg=0.0711042 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,3,1:6)=(/ 6520.500000,2081.300000,563.450000,99.930000,11.604000,1.887300 /) -XPIZA_LKT(25,3,1:6)=(/ 0.983968,0.974624,0.950660,0.940301,0.755238,0.282156 /) -XCGA_LKT(25,3,1:6)=(/ 0.684047,0.494920,0.238593,0.094670,0.030360,0.007530 /) -XEXT_COEFF_550_LKT(25,3)=579.790000 !rg=0.0711042 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,4,1:6)=(/ 6911.200000,2603.200000,784.540000,156.630000,17.757000,2.271800 /) -XPIZA_LKT(25,4,1:6)=(/ 0.984501,0.978407,0.962271,0.960333,0.837183,0.400690 /) -XCGA_LKT(25,4,1:6)=(/ 0.710883,0.574097,0.357687,0.157930,0.051507,0.012860 /) -XEXT_COEFF_550_LKT(25,4)=806.540000 !rg=0.0711042 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,5,1:6)=(/ 7010.000000,3146.900000,1090.800000,247.580000,29.472000,3.029400 /) -XPIZA_LKT(25,5,1:6)=(/ 0.984327,0.981110,0.970708,0.973491,0.899290,0.547005 /) -XCGA_LKT(25,5,1:6)=(/ 0.728497,0.633657,0.471550,0.254833,0.085877,0.021593 /) -XEXT_COEFF_550_LKT(25,5)=1119.200000 !rg=0.0711042 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,6,1:6)=(/ 6732.500000,3608.300000,1452.200000,378.680000,49.443000,4.415200 /) -XPIZA_LKT(25,6,1:6)=(/ 0.983290,0.982693,0.976265,0.981438,0.937844,0.685556 /) -XCGA_LKT(25,6,1:6)=(/ 0.736177,0.676283,0.558170,0.364153,0.133930,0.033800 /) -XEXT_COEFF_550_LKT(25,6)=1486.100000 !rg=0.0711042 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,7,1:6)=(/ 6141.700000,3898.500000,1830.700000,552.600000,80.914000,6.892400 /) -XPIZA_LKT(25,7,1:6)=(/ 0.981316,0.983279,0.979819,0.986266,0.960326,0.795192 /) -XCGA_LKT(25,7,1:6)=(/ 0.736567,0.704473,0.622027,0.462330,0.200533,0.050643 /) -XEXT_COEFF_550_LKT(25,7)=1867.600000 !rg=0.0711042 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,8,1:6)=(/ 5400.700000,3943.200000,2166.100000,763.710000,126.620000,11.192000 /) -XPIZA_LKT(25,8,1:6)=(/ 0.978405,0.982871,0.981888,0.989245,0.973245,0.870962 /) -XCGA_LKT(25,8,1:6)=(/ 0.733710,0.719690,0.667197,0.545293,0.291040,0.074183 /) -XEXT_COEFF_550_LKT(25,8)=2202.700000 !rg=0.0711042 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,9,1:6)=(/ 4615.200000,3748.300000,2400.600000,994.900000,192.500000,18.541000 /) -XPIZA_LKT(25,9,1:6)=(/ 0.974630,0.981461,0.982796,0.991109,0.981169,0.919709 /) -XCGA_LKT(25,9,1:6)=(/ 0.731717,0.724963,0.697387,0.609233,0.395943,0.107847 /) -XEXT_COEFF_550_LKT(25,9)=2433.300000 !rg=0.0711042 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,10,1:6)=(/ 3859.400000,3405.100000,2479.000000,1217.900000,280.040000,30.460000 /) -XPIZA_LKT(25,10,1:6)=(/ 0.969573,0.979065,0.982621,0.992241,0.986110,0.949225 /) -XCGA_LKT(25,10,1:6)=(/ 0.728993,0.725160,0.714003,0.657907,0.484330,0.156590 /) -XEXT_COEFF_550_LKT(25,10)=2504.600000 !rg=0.0711042 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,11,1:6)=(/ 3203.600000,2997.300000,2394.000000,1399.200000,386.090000,48.637000 /) -XPIZA_LKT(25,11,1:6)=(/ 0.963584,0.975978,0.981367,0.992842,0.989168,0.966684 /) -XCGA_LKT(25,11,1:6)=(/ 0.730313,0.726450,0.719763,0.692200,0.561467,0.228100 /) -XEXT_COEFF_550_LKT(25,11)=2411.200000 !rg=0.0711042 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,12,1:6)=(/ 2617.300000,2574.200000,2192.700000,1497.700000,505.230000,74.500000 /) -XPIZA_LKT(25,12,1:6)=(/ 0.956682,0.971610,0.979167,0.992972,0.991139,0.976938 /) -XCGA_LKT(25,12,1:6)=(/ 0.732037,0.726633,0.720213,0.712993,0.624913,0.328680 /) -XEXT_COEFF_550_LKT(25,12)=2203.700000 !rg=0.0711042 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,13,1:6)=(/ 2144.600000,2153.900000,1956.900000,1489.300000,624.270000,111.760000 /) -XPIZA_LKT(25,13,1:6)=(/ 0.948187,0.966235,0.976109,0.992640,0.992368,0.983436 /) -XCGA_LKT(25,13,1:6)=(/ 0.739297,0.727107,0.720823,0.721413,0.673890,0.439417 /) -XEXT_COEFF_550_LKT(25,13)=1962.000000 !rg=0.0711042 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,14,1:6)=(/ 1741.400000,1792.000000,1702.700000,1390.100000,723.680000,159.920000 /) -XPIZA_LKT(25,14,1:6)=(/ 0.939640,0.960835,0.972472,0.991835,0.993049,0.987574 /) -XCGA_LKT(25,14,1:6)=(/ 0.746423,0.733047,0.724563,0.720710,0.708953,0.520953 /) -XEXT_COEFF_550_LKT(25,14)=1710.000000 !rg=0.0711042 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,15,1:6)=(/ 1416.100000,1475.000000,1442.200000,1250.000000,783.860000,215.520000 /) -XPIZA_LKT(25,15,1:6)=(/ 0.930371,0.953925,0.967916,0.990664,0.993276,0.990098 /) -XCGA_LKT(25,15,1:6)=(/ 0.755960,0.736780,0.727103,0.717993,0.731083,0.592657 /) -XEXT_COEFF_550_LKT(25,15)=1445.300000 !rg=0.0711042 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,16,1:6)=(/ 1159.000000,1208.400000,1213.300000,1106.900000,790.480000,275.190000 /) -XPIZA_LKT(25,16,1:6)=(/ 0.917663,0.944946,0.961998,0.989300,0.993060,0.991728 /) -XCGA_LKT(25,16,1:6)=(/ 0.766560,0.741530,0.730487,0.721493,0.741020,0.649197 /) -XEXT_COEFF_550_LKT(25,16)=1211.400000 !rg=0.0711042 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,17,1:6)=(/ 942.040000,989.680000,1005.600000,958.250000,743.340000,331.110000 /) -XPIZA_LKT(25,17,1:6)=(/ 0.904824,0.935508,0.955029,0.987429,0.992395,0.992717 /) -XCGA_LKT(25,17,1:6)=(/ 0.775883,0.751870,0.733113,0.724603,0.740710,0.692193 /) -XEXT_COEFF_550_LKT(25,17)=1005.200000 !rg=0.0711042 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,18,1:6)=(/ 768.980000,807.180000,828.710000,810.340000,669.420000,373.760000 /) -XPIZA_LKT(25,18,1:6)=(/ 0.890167,0.925983,0.948694,0.985278,0.991327,0.993215 /) -XCGA_LKT(25,18,1:6)=(/ 0.788423,0.761103,0.742903,0.726203,0.736087,0.721523 /) -XEXT_COEFF_550_LKT(25,18)=830.930000 !rg=0.0711042 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,19,1:6)=(/ 631.880000,660.380000,683.370000,682.260000,595.300000,394.080000 /) -XPIZA_LKT(25,19,1:6)=(/ 0.873931,0.913067,0.939190,0.982327,0.990042,0.993275 /) -XCGA_LKT(25,19,1:6)=(/ 0.800207,0.768723,0.749433,0.728833,0.735697,0.738450 /) -XEXT_COEFF_550_LKT(25,19)=679.940000 !rg=0.0711042 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(25,20,1:6)=(/ 515.350000,539.360000,559.570000,567.010000,523.110000,386.150000 /) -XPIZA_LKT(25,20,1:6)=(/ 0.860698,0.899130,0.928922,0.979345,0.988534,0.992890 /) -XCGA_LKT(25,20,1:6)=(/ 0.809577,0.781777,0.755730,0.736033,0.739860,0.743393 /) -XEXT_COEFF_550_LKT(25,20)=558.740000 !rg=0.0711042 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,1,1:6)=(/ 6421.700000,1741.100000,433.160000,70.204000,8.702900,1.708300 /) -XPIZA_LKT(26,1,1:6)=(/ 0.983966,0.971541,0.937883,0.917063,0.676807,0.209022 /) -XCGA_LKT(26,1,1:6)=(/ 0.647320,0.380350,0.148010,0.057867,0.018450,0.004557 /) -XEXT_COEFF_550_LKT(26,1)=446.520000 !rg=0.0770312 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,2,1:6)=(/ 6587.100000,1959.900000,515.330000,86.553000,10.249000,1.803400 /) -XPIZA_LKT(26,2,1:6)=(/ 0.984145,0.973502,0.946615,0.931661,0.723914,0.249571 /) -XCGA_LKT(26,2,1:6)=(/ 0.674253,0.457803,0.188343,0.073343,0.023413,0.005793 /) -XEXT_COEFF_550_LKT(26,2)=531.040000 !rg=0.0770312 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,3,1:6)=(/ 6960.600000,2394.500000,673.860000,124.140000,13.993000,2.034900 /) -XPIZA_LKT(26,3,1:6)=(/ 0.984672,0.976933,0.957360,0.950900,0.795276,0.332700 /) -XCGA_LKT(26,3,1:6)=(/ 0.703377,0.540520,0.278730,0.110860,0.035577,0.008833 /) -XEXT_COEFF_550_LKT(26,3)=693.460000 !rg=0.0770312 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,4,1:6)=(/ 7189.300000,2916.000000,920.940000,191.860000,21.741000,2.522900 /) -XPIZA_LKT(26,4,1:6)=(/ 0.984826,0.980013,0.966633,0.966809,0.865543,0.458643 /) -XCGA_LKT(26,4,1:6)=(/ 0.724887,0.604997,0.400770,0.183777,0.060270,0.015080 /) -XEXT_COEFF_550_LKT(26,4)=946.490000 !rg=0.0770312 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,5,1:6)=(/ 7081.900000,3423.000000,1251.200000,297.650000,36.289000,3.483700 /) -XPIZA_LKT(26,5,1:6)=(/ 0.984248,0.982115,0.973492,0.977302,0.917049,0.604343 /) -XCGA_LKT(26,5,1:6)=(/ 0.737000,0.655370,0.506947,0.290007,0.100347,0.025307 /) -XEXT_COEFF_550_LKT(26,5)=1282.800000 !rg=0.0770312 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,6,1:6)=(/ 6612.700000,3810.000000,1623.600000,445.770000,60.506000,5.238600 /) -XPIZA_LKT(26,6,1:6)=(/ 0.982800,0.983212,0.978036,0.983717,0.948316,0.733325 /) -XCGA_LKT(26,6,1:6)=(/ 0.740373,0.691083,0.585243,0.399777,0.156393,0.039597 /) -XEXT_COEFF_550_LKT(26,6)=1659.600000 !rg=0.0770312 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,7,1:6)=(/ 5897.800000,3994.400000,1992.000000,636.830000,97.584000,8.364200 /) -XPIZA_LKT(26,7,1:6)=(/ 0.980393,0.983358,0.980888,0.987666,0.966395,0.829768 /) -XCGA_LKT(26,7,1:6)=(/ 0.738190,0.713567,0.641920,0.495347,0.233560,0.059310 /) -XEXT_COEFF_550_LKT(26,7)=2029.900000 !rg=0.0770312 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,8,1:6)=(/ 5097.200000,3926.700000,2291.600000,858.580000,150.840000,13.747000 /) -XPIZA_LKT(26,8,1:6)=(/ 0.977089,0.982516,0.982436,0.990122,0.976928,0.893723 /) -XCGA_LKT(26,8,1:6)=(/ 0.734553,0.724133,0.681087,0.571547,0.333050,0.086880 /) -XEXT_COEFF_550_LKT(26,8)=2327.600000 !rg=0.0770312 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,9,1:6)=(/ 4296.100000,3647.100000,2466.300000,1092.200000,226.380000,22.805000 /) -XPIZA_LKT(26,9,1:6)=(/ 0.972735,0.980711,0.982900,0.991658,0.983505,0.933741 /) -XCGA_LKT(26,9,1:6)=(/ 0.730890,0.726940,0.705907,0.630147,0.433377,0.126390 /) -XEXT_COEFF_550_LKT(26,9)=2496.200000 !rg=0.0770312 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,10,1:6)=(/ 3577.000000,3258.500000,2474.100000,1302.300000,320.960000,37.087000 /) -XPIZA_LKT(26,10,1:6)=(/ 0.967035,0.978060,0.982292,0.992549,0.987523,0.957534 /) -XCGA_LKT(26,10,1:6)=(/ 0.730053,0.726853,0.717893,0.672973,0.515340,0.183723 /) -XEXT_COEFF_550_LKT(26,10)=2495.600000 !rg=0.0770312 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,11,1:6)=(/ 2940.500000,2838.500000,2330.900000,1453.700000,434.440000,58.166000 /) -XPIZA_LKT(26,11,1:6)=(/ 0.960725,0.974446,0.980669,0.992954,0.990087,0.971514 /) -XCGA_LKT(26,11,1:6)=(/ 0.730197,0.727400,0.721070,0.702000,0.589250,0.267143 /) -XEXT_COEFF_550_LKT(26,11)=2346.100000 !rg=0.0770312 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,12,1:6)=(/ 2408.200000,2397.800000,2109.000000,1509.600000,554.870000,88.155000 /) -XPIZA_LKT(26,12,1:6)=(/ 0.952885,0.969553,0.978032,0.992898,0.991706,0.979929 /) -XCGA_LKT(26,12,1:6)=(/ 0.735637,0.726943,0.720577,0.717643,0.645853,0.376507 /) -XEXT_COEFF_550_LKT(26,12)=2116.000000 !rg=0.0770312 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,13,1:6)=(/ 1953.800000,2001.200000,1859.200000,1460.600000,668.440000,130.730000 /) -XPIZA_LKT(26,13,1:6)=(/ 0.944920,0.964221,0.974853,0.992373,0.992695,0.985401 /) -XCGA_LKT(26,13,1:6)=(/ 0.741337,0.730767,0.723380,0.721963,0.689487,0.476227 /) -XEXT_COEFF_550_LKT(26,13)=1868.200000 !rg=0.0770312 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,14,1:6)=(/ 1587.600000,1650.900000,1598.700000,1337.500000,754.480000,181.610000 /) -XPIZA_LKT(26,14,1:6)=(/ 0.936312,0.958079,0.970685,0.991403,0.993187,0.988743 /) -XCGA_LKT(26,14,1:6)=(/ 0.751053,0.733723,0.725993,0.719360,0.719333,0.550433 /) -XEXT_COEFF_550_LKT(26,14)=1600.500000 !rg=0.0770312 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,15,1:6)=(/ 1301.300000,1357.000000,1345.700000,1194.600000,793.750000,240.220000 /) -XPIZA_LKT(26,15,1:6)=(/ 0.924708,0.950353,0.965571,0.990164,0.993241,0.990869 /) -XCGA_LKT(26,15,1:6)=(/ 0.760553,0.738410,0.727717,0.719700,0.736470,0.618267 /) -XEXT_COEFF_550_LKT(26,15)=1349.400000 !rg=0.0770312 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,16,1:6)=(/ 1056.900000,1113.100000,1122.800000,1050.300000,776.730000,299.520000 /) -XPIZA_LKT(26,16,1:6)=(/ 0.912247,0.940713,0.959274,0.988641,0.992841,0.992200 /) -XCGA_LKT(26,16,1:6)=(/ 0.768693,0.746667,0.731303,0.723297,0.741787,0.668393 /) -XEXT_COEFF_550_LKT(26,16)=1121.700000 !rg=0.0770312 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,17,1:6)=(/ 858.790000,904.970000,929.860000,893.820000,715.520000,351.150000 /) -XPIZA_LKT(26,17,1:6)=(/ 0.899224,0.931633,0.951995,0.986695,0.991980,0.992969 /) -XCGA_LKT(26,17,1:6)=(/ 0.783290,0.755427,0.738327,0.725020,0.738580,0.705817 /) -XEXT_COEFF_550_LKT(26,17)=927.870000 !rg=0.0770312 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,18,1:6)=(/ 706.720000,740.490000,763.280000,755.900000,638.400000,385.470000 /) -XPIZA_LKT(26,18,1:6)=(/ 0.882832,0.920316,0.944792,0.984264,0.990826,0.993286 /) -XCGA_LKT(26,18,1:6)=(/ 0.794187,0.763723,0.744903,0.727453,0.735243,0.730077 /) -XEXT_COEFF_550_LKT(26,18)=765.510000 !rg=0.0770312 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,19,1:6)=(/ 577.420000,606.260000,626.870000,633.610000,566.610000,393.990000 /) -XPIZA_LKT(26,19,1:6)=(/ 0.868042,0.906913,0.934571,0.980541,0.989487,0.993168 /) -XCGA_LKT(26,19,1:6)=(/ 0.803210,0.775200,0.750787,0.731557,0.738290,0.741720 /) -XEXT_COEFF_550_LKT(26,19)=624.340000 !rg=0.0770312 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(26,20,1:6)=(/ 471.250000,493.350000,513.270000,522.760000,492.690000,375.400000 /) -XPIZA_LKT(26,20,1:6)=(/ 0.855020,0.892612,0.923897,0.978259,0.987433,0.992578 /) -XCGA_LKT(26,20,1:6)=(/ 0.816330,0.786527,0.762267,0.738617,0.740330,0.742127 /) -XEXT_COEFF_550_LKT(26,20)=512.930000 !rg=0.0770312 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,1,1:6)=(/ 6748.600000,2002.600000,530.900000,87.553000,10.319000,1.807700 /) -XPIZA_LKT(27,1,1:6)=(/ 0.984869,0.974005,0.947734,0.932185,0.725478,0.251140 /) -XCGA_LKT(27,1,1:6)=(/ 0.664543,0.454503,0.174863,0.067847,0.021633,0.005350 /) -XEXT_COEFF_550_LKT(27,1)=547.870000 !rg=0.0834522 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,2,1:6)=(/ 7053.200000,2274.600000,623.130000,107.960000,12.279000,1.928500 /) -XPIZA_LKT(27,2,1:6)=(/ 0.984915,0.975900,0.954449,0.944044,0.767708,0.296734 /) -XCGA_LKT(27,2,1:6)=(/ 0.697083,0.519850,0.222710,0.085997,0.027450,0.006797 /) -XEXT_COEFF_550_LKT(27,2)=642.140000 !rg=0.0834522 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,3,1:6)=(/ 7329.400000,2729.600000,799.590000,153.880000,17.015000,2.222300 /) -XPIZA_LKT(27,3,1:6)=(/ 0.985173,0.978890,0.962759,0.959447,0.829985,0.387311 /) -XCGA_LKT(27,3,1:6)=(/ 0.720877,0.579903,0.324013,0.129843,0.041680,0.010360 /) -XEXT_COEFF_550_LKT(27,3)=822.650000 !rg=0.0834522 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,4,1:6)=(/ 7375.200000,3230.000000,1073.100000,233.730000,26.739000,2.841500 /) -XPIZA_LKT(27,4,1:6)=(/ 0.984966,0.981349,0.970222,0.972019,0.889305,0.517579 /) -XCGA_LKT(27,4,1:6)=(/ 0.736663,0.632210,0.443920,0.213190,0.070493,0.017680 /) -XEXT_COEFF_550_LKT(27,4)=1102.300000 !rg=0.0834522 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,5,1:6)=(/ 7057.300000,3681.000000,1423.000000,355.350000,44.672000,4.059600 /) -XPIZA_LKT(27,5,1:6)=(/ 0.983983,0.982919,0.975808,0.980393,0.931552,0.658726 /) -XCGA_LKT(27,5,1:6)=(/ 0.743570,0.674570,0.540300,0.326513,0.117170,0.029653 /) -XEXT_COEFF_550_LKT(27,5)=1457.700000 !rg=0.0834522 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,6,1:6)=(/ 6421.900000,3976.300000,1797.000000,520.620000,73.707000,6.279200 /) -XPIZA_LKT(27,6,1:6)=(/ 0.982066,0.983562,0.979496,0.985580,0.956756,0.775923 /) -XCGA_LKT(27,6,1:6)=(/ 0.742787,0.703893,0.609897,0.435230,0.182373,0.046377 /) -XEXT_COEFF_550_LKT(27,6)=1834.900000 !rg=0.0834522 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,7,1:6)=(/ 5615.400000,4044.400000,2144.000000,727.690000,117.100000,10.212000 /) -XPIZA_LKT(27,7,1:6)=(/ 0.979180,0.983283,0.981753,0.988831,0.971327,0.859203 /) -XCGA_LKT(27,7,1:6)=(/ 0.738183,0.721010,0.659610,0.526367,0.270460,0.069447 /) -XEXT_COEFF_550_LKT(27,7)=2182.000000 !rg=0.0834522 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,8,1:6)=(/ 4781.700000,3867.900000,2396.400000,956.670000,179.090000,16.914000 /) -XPIZA_LKT(27,8,1:6)=(/ 0.975365,0.982040,0.982823,0.990844,0.979999,0.912499 /) -XCGA_LKT(27,8,1:6)=(/ 0.733830,0.727677,0.692903,0.595723,0.374173,0.101750 /) -XEXT_COEFF_550_LKT(27,8)=2430.900000 !rg=0.0834522 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,9,1:6)=(/ 3977.800000,3522.400000,2503.800000,1185.500000,263.280000,27.961000 /) -XPIZA_LKT(27,9,1:6)=(/ 0.970719,0.979789,0.982843,0.992095,0.985402,0.945075 /) -XCGA_LKT(27,9,1:6)=(/ 0.730593,0.728013,0.712523,0.648593,0.466737,0.148153 /) -XEXT_COEFF_550_LKT(27,9)=2531.300000 !rg=0.0834522 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,10,1:6)=(/ 3289.500000,3106.000000,2443.200000,1375.800000,365.460000,44.827000 /) -XPIZA_LKT(27,10,1:6)=(/ 0.964799,0.976816,0.981821,0.992777,0.988700,0.964170 /) -XCGA_LKT(27,10,1:6)=(/ 0.730147,0.728420,0.720550,0.685790,0.546313,0.215493 /) -XEXT_COEFF_550_LKT(27,10)=2463.100000 !rg=0.0834522 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,11,1:6)=(/ 2693.600000,2661.200000,2258.300000,1491.900000,483.200000,69.144000 /) -XPIZA_LKT(27,11,1:6)=(/ 0.958054,0.972755,0.979745,0.992991,0.990840,0.975430 /) -XCGA_LKT(27,11,1:6)=(/ 0.733447,0.728143,0.721557,0.709477,0.613213,0.311040 /) -XEXT_COEFF_550_LKT(27,11)=2268.400000 !rg=0.0834522 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,12,1:6)=(/ 2196.800000,2229.500000,2015.600000,1504.300000,603.440000,104.140000 /) -XPIZA_LKT(27,12,1:6)=(/ 0.949882,0.967826,0.976978,0.992751,0.992181,0.982467 /) -XCGA_LKT(27,12,1:6)=(/ 0.737623,0.729297,0.722503,0.720583,0.664877,0.421603 /) -XEXT_COEFF_550_LKT(27,12)=2026.500000 !rg=0.0834522 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,13,1:6)=(/ 1782.000000,1849.900000,1760.100000,1418.900000,708.540000,150.860000 /) -XPIZA_LKT(27,13,1:6)=(/ 0.941847,0.961962,0.973411,0.992044,0.992955,0.986988 /) -XCGA_LKT(27,13,1:6)=(/ 0.746260,0.731710,0.725250,0.721480,0.702830,0.507427 /) -XEXT_COEFF_550_LKT(27,13)=1763.800000 !rg=0.0834522 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,14,1:6)=(/ 1459.000000,1518.900000,1491.600000,1282.400000,777.160000,205.060000 /) -XPIZA_LKT(27,14,1:6)=(/ 0.931021,0.955137,0.968740,0.990962,0.993265,0.989722 /) -XCGA_LKT(27,14,1:6)=(/ 0.754720,0.735127,0.726300,0.719833,0.727497,0.580253 /) -XEXT_COEFF_550_LKT(27,14)=1498.500000 !rg=0.0834522 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,15,1:6)=(/ 1188.200000,1251.000000,1251.600000,1141.000000,793.600000,264.460000 /) -XPIZA_LKT(27,15,1:6)=(/ 0.919080,0.946100,0.963313,0.989601,0.993130,0.991489 /) -XCGA_LKT(27,15,1:6)=(/ 0.762380,0.741993,0.729433,0.721263,0.739583,0.639857 /) -XEXT_COEFF_550_LKT(27,15)=1252.400000 !rg=0.0834522 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,16,1:6)=(/ 964.560000,1016.600000,1040.400000,986.920000,756.160000,322.170000 /) -XPIZA_LKT(27,16,1:6)=(/ 0.906446,0.937053,0.955826,0.987883,0.992535,0.992583 /) -XCGA_LKT(27,16,1:6)=(/ 0.776967,0.749173,0.734217,0.724487,0.740917,0.685313 /) -XEXT_COEFF_550_LKT(27,16)=1034.900000 !rg=0.0834522 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,17,1:6)=(/ 789.630000,828.320000,855.200000,834.150000,684.230000,367.840000 /) -XPIZA_LKT(27,17,1:6)=(/ 0.891645,0.927414,0.949231,0.985798,0.991543,0.993158 /) -XCGA_LKT(27,17,1:6)=(/ 0.788090,0.759010,0.740827,0.726133,0.736947,0.716980 /) -XEXT_COEFF_550_LKT(27,17)=858.500000 !rg=0.0834522 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,18,1:6)=(/ 646.900000,680.430000,702.520000,706.610000,609.690000,392.190000 /) -XPIZA_LKT(27,18,1:6)=(/ 0.875539,0.914620,0.940542,0.982456,0.990288,0.993288 /) -XCGA_LKT(27,18,1:6)=(/ 0.796913,0.769400,0.746963,0.729827,0.736170,0.735927 /) -XEXT_COEFF_550_LKT(27,18)=701.410000 !rg=0.0834522 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,19,1:6)=(/ 528.150000,553.130000,576.950000,583.530000,538.050000,389.220000 /) -XPIZA_LKT(27,19,1:6)=(/ 0.861371,0.901021,0.929849,0.979533,0.988714,0.992977 /) -XCGA_LKT(27,19,1:6)=(/ 0.810800,0.779067,0.756537,0.733877,0.739373,0.742927 /) -XEXT_COEFF_550_LKT(27,19)=573.790000 !rg=0.0834522 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(27,20,1:6)=(/ 433.890000,451.680000,470.000000,481.330000,458.440000,361.080000 /) -XPIZA_LKT(27,20,1:6)=(/ 0.849070,0.886116,0.919288,0.976828,0.986920,0.992205 /) -XCGA_LKT(27,20,1:6)=(/ 0.820793,0.790910,0.766343,0.739873,0.741747,0.739897 /) -XEXT_COEFF_550_LKT(27,20)=471.620000 !rg=0.0834522 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,1,1:6)=(/ 7162.300000,2310.500000,645.280000,109.380000,12.369000,1.933900 /) -XPIZA_LKT(28,1,1:6)=(/ 0.985146,0.975993,0.955628,0.944522,0.769094,0.298472 /) -XCGA_LKT(28,1,1:6)=(/ 0.702147,0.532203,0.207323,0.079570,0.025367,0.006277 /) -XEXT_COEFF_550_LKT(28,1)=665.850000 !rg=0.0904084 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,2,1:6)=(/ 7473.600000,2634.800000,745.710000,134.650000,14.853000,2.087200 /) -XPIZA_LKT(28,2,1:6)=(/ 0.985458,0.978039,0.960668,0.954082,0.806182,0.348582 /) -XCGA_LKT(28,2,1:6)=(/ 0.720227,0.572093,0.263927,0.100887,0.032177,0.007973 /) -XEXT_COEFF_550_LKT(28,2)=767.890000 !rg=0.0904084 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,3,1:6)=(/ 7610.900000,3076.800000,941.680000,189.980000,20.836000,2.460100 /) -XPIZA_LKT(28,3,1:6)=(/ 0.985479,0.980551,0.967129,0.966313,0.859591,0.444788 /) -XCGA_LKT(28,3,1:6)=(/ 0.736170,0.612823,0.373473,0.152117,0.048827,0.012153 /) -XEXT_COEFF_550_LKT(28,3)=968.480000 !rg=0.0904084 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,4,1:6)=(/ 7456.700000,3535.800000,1240.700000,282.920000,32.984000,3.245600 /) -XPIZA_LKT(28,4,1:6)=(/ 0.984916,0.982448,0.973190,0.976213,0.908997,0.575856 /) -XCGA_LKT(28,4,1:6)=(/ 0.746160,0.656093,0.485807,0.246200,0.082410,0.020723 /) -XEXT_COEFF_550_LKT(28,4)=1273.600000 !rg=0.0904084 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,5,1:6)=(/ 6936.500000,3911.900000,1603.400000,421.040000,54.888000,4.788900 /) -XPIZA_LKT(28,5,1:6)=(/ 0.983496,0.983533,0.977739,0.982904,0.943323,0.708984 /) -XCGA_LKT(28,5,1:6)=(/ 0.748017,0.691410,0.571170,0.364043,0.136687,0.034737 /) -XEXT_COEFF_550_LKT(28,5)=1640.700000 !rg=0.0904084 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,6,1:6)=(/ 6156.400000,4100.300000,1969.500000,603.690000,89.331000,7.591500 /) -XPIZA_LKT(28,6,1:6)=(/ 0.981163,0.983744,0.980698,0.987121,0.963566,0.813136 /) -XCGA_LKT(28,6,1:6)=(/ 0.744003,0.714733,0.632250,0.470250,0.212113,0.054303 /) -XEXT_COEFF_550_LKT(28,6)=2008.600000 !rg=0.0904084 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,7,1:6)=(/ 5283.400000,4049.700000,2283.400000,823.060000,139.980000,12.523000 /) -XPIZA_LKT(28,7,1:6)=(/ 0.977843,0.983030,0.982408,0.989790,0.975383,0.883906 /) -XCGA_LKT(28,7,1:6)=(/ 0.738127,0.726827,0.675287,0.554573,0.309880,0.081307 /) -XEXT_COEFF_550_LKT(28,7)=2321.100000 !rg=0.0904084 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,8,1:6)=(/ 4437.300000,3778.100000,2478.500000,1056.200000,211.230000,20.806000 /) -XPIZA_LKT(28,8,1:6)=(/ 0.973488,0.981365,0.983028,0.991448,0.982538,0.927842 /) -XCGA_LKT(28,8,1:6)=(/ 0.732630,0.730217,0.702907,0.618107,0.411920,0.119177 /) -XEXT_COEFF_550_LKT(28,8)=2510.600000 !rg=0.0904084 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,9,1:6)=(/ 3678.600000,3377.000000,2514.300000,1274.800000,303.030000,34.111000 /) -XPIZA_LKT(28,9,1:6)=(/ 0.967989,0.978791,0.982616,0.992442,0.986940,0.954178 /) -XCGA_LKT(28,9,1:6)=(/ 0.729427,0.729777,0.717630,0.664950,0.498533,0.173690 /) -XEXT_COEFF_550_LKT(28,9)=2538.500000 !rg=0.0904084 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,10,1:6)=(/ 3017.000000,2938.800000,2393.100000,1438.300000,413.000000,53.772000 /) -XPIZA_LKT(28,10,1:6)=(/ 0.962265,0.975292,0.981164,0.992923,0.989696,0.969481 /) -XCGA_LKT(28,10,1:6)=(/ 0.731063,0.728737,0.722363,0.696803,0.575217,0.252320 /) -XEXT_COEFF_550_LKT(28,10)=2407.400000 !rg=0.0904084 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,11,1:6)=(/ 2462.900000,2482.800000,2172.400000,1513.400000,532.810000,81.942000 /) -XPIZA_LKT(28,11,1:6)=(/ 0.954889,0.971029,0.978799,0.992957,0.991457,0.978675 /) -XCGA_LKT(28,11,1:6)=(/ 0.734330,0.728980,0.722577,0.715317,0.635017,0.357710 /) -XEXT_COEFF_550_LKT(28,11)=2185.600000 !rg=0.0904084 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,12,1:6)=(/ 2002.000000,2068.400000,1922.100000,1483.200000,649.040000,122.250000 /) -XPIZA_LKT(28,12,1:6)=(/ 0.946809,0.965539,0.975698,0.992526,0.992549,0.984596 /) -XCGA_LKT(28,12,1:6)=(/ 0.740970,0.729690,0.724520,0.721887,0.681463,0.460257 /) -XEXT_COEFF_550_LKT(28,12)=1927.300000 !rg=0.0904084 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,13,1:6)=(/ 1635.400000,1703.400000,1652.600000,1369.900000,742.240000,171.960000 /) -XPIZA_LKT(28,13,1:6)=(/ 0.936758,0.959259,0.971623,0.991677,0.993130,0.988259 /) -XCGA_LKT(28,13,1:6)=(/ 0.749077,0.732680,0.726010,0.721557,0.714053,0.537057 /) -XEXT_COEFF_550_LKT(28,13)=1659.200000 !rg=0.0904084 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,14,1:6)=(/ 1331.600000,1403.900000,1389.100000,1229.700000,791.390000,229.630000 /) -XPIZA_LKT(28,14,1:6)=(/ 0.925457,0.951171,0.966696,0.990419,0.993260,0.990555 /) -XCGA_LKT(28,14,1:6)=(/ 0.756557,0.738107,0.727620,0.719960,0.733657,0.607310 /) -XEXT_COEFF_550_LKT(28,14)=1390.800000 !rg=0.0904084 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,15,1:6)=(/ 1087.100000,1144.200000,1165.600000,1081.000000,784.560000,288.880000 /) -XPIZA_LKT(28,15,1:6)=(/ 0.913075,0.942601,0.960038,0.988985,0.992944,0.991998 /) -XCGA_LKT(28,15,1:6)=(/ 0.769827,0.743420,0.731773,0.723537,0.741130,0.659700 /) -XEXT_COEFF_550_LKT(28,15)=1159.900000 !rg=0.0904084 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,16,1:6)=(/ 882.350000,928.270000,957.050000,922.990000,729.170000,342.980000 /) -XPIZA_LKT(28,16,1:6)=(/ 0.900405,0.933723,0.953408,0.987175,0.992184,0.992864 /) -XCGA_LKT(28,16,1:6)=(/ 0.781967,0.754607,0.736037,0.725743,0.739690,0.699807 /) -XEXT_COEFF_550_LKT(28,16)=959.660000 !rg=0.0904084 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,17,1:6)=(/ 723.330000,762.320000,785.110000,781.610000,653.960000,381.110000 /) -XPIZA_LKT(28,17,1:6)=(/ 0.883635,0.921705,0.946103,0.984478,0.991076,0.993256 /) -XCGA_LKT(28,17,1:6)=(/ 0.791140,0.763760,0.743220,0.727800,0.736570,0.726300 /) -XEXT_COEFF_550_LKT(28,17)=785.770000 !rg=0.0904084 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,18,1:6)=(/ 592.930000,620.990000,647.540000,651.580000,581.670000,394.290000 /) -XPIZA_LKT(28,18,1:6)=(/ 0.869019,0.909173,0.935961,0.981873,0.989720,0.993213 /) -XCGA_LKT(28,18,1:6)=(/ 0.804090,0.771860,0.751540,0.730290,0.737510,0.740173 /) -XEXT_COEFF_550_LKT(28,18)=642.880000 !rg=0.0904084 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,19,1:6)=(/ 484.570000,504.900000,527.240000,538.820000,505.310000,379.790000 /) -XPIZA_LKT(28,19,1:6)=(/ 0.855914,0.895174,0.925496,0.978626,0.988058,0.992707 /) -XCGA_LKT(28,19,1:6)=(/ 0.815727,0.785627,0.759627,0.737410,0.740840,0.742400 /) -XEXT_COEFF_550_LKT(28,19)=528.830000 !rg=0.0904084 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(28,20,1:6)=(/ 398.290000,415.230000,430.340000,446.390000,428.100000,345.570000 /) -XPIZA_LKT(28,20,1:6)=(/ 0.842885,0.878705,0.914493,0.974272,0.986104,0.991762 /) -XCGA_LKT(28,20,1:6)=(/ 0.823630,0.796563,0.769993,0.742730,0.744287,0.737573 /) -XEXT_COEFF_550_LKT(28,20)=430.250000 !rg=0.0904084 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,1,1:6)=(/ 7779.100000,2704.400000,775.280000,136.710000,14.970000,2.094100 /) -XPIZA_LKT(29,1,1:6)=(/ 0.985570,0.977944,0.961871,0.954536,0.807391,0.350463 /) -XCGA_LKT(29,1,1:6)=(/ 0.738977,0.597737,0.246903,0.093377,0.029743,0.007363 /) -XEXT_COEFF_550_LKT(29,1)=799.020000 !rg=0.0979445 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,2,1:6)=(/ 7822.200000,3027.500000,882.470000,167.670000,18.114000,2.288600 /) -XPIZA_LKT(29,2,1:6)=(/ 0.985836,0.979986,0.965567,0.962182,0.839380,0.404175 /) -XCGA_LKT(29,2,1:6)=(/ 0.739750,0.610080,0.313023,0.118447,0.037717,0.009353 /) -XEXT_COEFF_550_LKT(29,2)=907.770000 !rg=0.0979445 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,3,1:6)=(/ 7788.200000,3423.000000,1101.400000,233.270000,25.654000,2.761900 /) -XPIZA_LKT(29,3,1:6)=(/ 0.985594,0.981946,0.970693,0.971810,0.884498,0.503636 /) -XCGA_LKT(29,3,1:6)=(/ 0.748833,0.640300,0.425150,0.178247,0.057183,0.014253 /) -XEXT_COEFF_550_LKT(29,3)=1132.300000 !rg=0.0979445 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,4,1:6)=(/ 7425.100000,3822.900000,1422.600000,340.050000,40.743000,3.758200 /) -XPIZA_LKT(29,4,1:6)=(/ 0.984655,0.983333,0.975657,0.979593,0.925165,0.631893 /) -XCGA_LKT(29,4,1:6)=(/ 0.753260,0.677060,0.525240,0.282680,0.096283,0.024290 /) -XEXT_COEFF_550_LKT(29,4)=1458.900000 !rg=0.0979445 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,5,1:6)=(/ 6718.800000,4106.400000,1788.800000,495.240000,67.223000,5.711400 /) -XPIZA_LKT(29,5,1:6)=(/ 0.982806,0.983972,0.979340,0.984956,0.952839,0.754323 /) -XCGA_LKT(29,5,1:6)=(/ 0.750673,0.706020,0.599310,0.402330,0.159240,0.040683 /) -XEXT_COEFF_550_LKT(29,5)=1828.400000 !rg=0.0979445 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,6,1:6)=(/ 5838.800000,4176.800000,2135.300000,694.130000,107.740000,9.242300 /) -XPIZA_LKT(29,6,1:6)=(/ 0.979979,0.983759,0.981676,0.988398,0.969092,0.845074 /) -XCGA_LKT(29,6,1:6)=(/ 0.743973,0.723693,0.652257,0.503567,0.245493,0.063570 /) -XEXT_COEFF_550_LKT(29,6)=2175.100000 !rg=0.0979445 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,7,1:6)=(/ 4934.800000,4008.100000,2404.200000,922.740000,166.680000,15.396000 /) -XPIZA_LKT(29,7,1:6)=(/ 0.976159,0.982633,0.982894,0.990584,0.978741,0.904387 /) -XCGA_LKT(29,7,1:6)=(/ 0.736863,0.731317,0.688857,0.580763,0.349427,0.095183 /) -XEXT_COEFF_550_LKT(29,7)=2440.700000 !rg=0.0979445 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,8,1:6)=(/ 4095.700000,3656.100000,2533.200000,1153.400000,246.650000,25.535000 /) -XPIZA_LKT(29,8,1:6)=(/ 0.971469,0.980539,0.983075,0.991936,0.984605,0.940276 /) -XCGA_LKT(29,8,1:6)=(/ 0.731787,0.731820,0.711033,0.638090,0.446290,0.139597 /) -XEXT_COEFF_550_LKT(29,8)=2563.000000 !rg=0.0979445 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,9,1:6)=(/ 3373.100000,3221.000000,2497.600000,1354.800000,346.360000,41.339000 /) -XPIZA_LKT(29,9,1:6)=(/ 0.965208,0.977542,0.982244,0.992710,0.988216,0.961461 /) -XCGA_LKT(29,9,1:6)=(/ 0.728927,0.730543,0.721493,0.679087,0.530170,0.203557 /) -XEXT_COEFF_550_LKT(29,9)=2518.700000 !rg=0.0979445 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,10,1:6)=(/ 2768.200000,2758.700000,2325.000000,1485.300000,461.580000,64.093000 /) -XPIZA_LKT(29,10,1:6)=(/ 0.958656,0.973687,0.980369,0.993001,0.990517,0.973773 /) -XCGA_LKT(29,10,1:6)=(/ 0.730947,0.729597,0.723347,0.705527,0.600457,0.294017 /) -XEXT_COEFF_550_LKT(29,10)=2339.200000 !rg=0.0979445 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,11,1:6)=(/ 2249.300000,2310.300000,2083.300000,1518.000000,582.360000,96.950000 /) -XPIZA_LKT(29,11,1:6)=(/ 0.951420,0.968639,0.977712,0.992848,0.991977,0.981416 /) -XCGA_LKT(29,11,1:6)=(/ 0.735987,0.728373,0.724270,0.719263,0.655080,0.403103 /) -XEXT_COEFF_550_LKT(29,11)=2090.900000 !rg=0.0979445 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,12,1:6)=(/ 1837.000000,1912.000000,1820.500000,1448.600000,691.650000,141.750000 /) -XPIZA_LKT(29,12,1:6)=(/ 0.942035,0.963069,0.974154,0.992249,0.992842,0.986328 /) -XCGA_LKT(29,12,1:6)=(/ 0.743680,0.730840,0.725457,0.722707,0.695877,0.492840 /) -XEXT_COEFF_550_LKT(29,12)=1826.500000 !rg=0.0979445 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,13,1:6)=(/ 1491.900000,1572.900000,1543.400000,1318.800000,769.060000,194.700000 /) -XPIZA_LKT(29,13,1:6)=(/ 0.931499,0.955572,0.969801,0.991214,0.993238,0.989313 /) -XCGA_LKT(29,13,1:6)=(/ 0.750870,0.734397,0.726850,0.720827,0.723360,0.567160 /) -XEXT_COEFF_550_LKT(29,13)=1545.300000 !rg=0.0979445 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,14,1:6)=(/ 1219.800000,1285.400000,1297.600000,1171.900000,795.780000,253.940000 /) -XPIZA_LKT(29,14,1:6)=(/ 0.919707,0.947427,0.963887,0.989926,0.993187,0.991233 /) -XCGA_LKT(29,14,1:6)=(/ 0.763400,0.738707,0.729403,0.722127,0.737860,0.630080 /) -XEXT_COEFF_550_LKT(29,14)=1292.700000 !rg=0.0979445 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,15,1:6)=(/ 990.960000,1045.600000,1073.300000,1019.700000,767.030000,312.340000 /) -XPIZA_LKT(29,15,1:6)=(/ 0.907426,0.939351,0.957521,0.988345,0.992691,0.992422 /) -XCGA_LKT(29,15,1:6)=(/ 0.774507,0.749883,0.732160,0.725280,0.741337,0.677613 /) -XEXT_COEFF_550_LKT(29,15)=1074.500000 !rg=0.0979445 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,16,1:6)=(/ 807.480000,854.080000,880.460000,863.470000,700.470000,361.220000 /) -XPIZA_LKT(29,16,1:6)=(/ 0.893352,0.928379,0.951004,0.985970,0.991758,0.993085 /) -XCGA_LKT(29,16,1:6)=(/ 0.785670,0.758040,0.740343,0.725430,0.738237,0.711943 /) -XEXT_COEFF_550_LKT(29,16)=882.820000 !rg=0.0979445 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,17,1:6)=(/ 663.480000,696.640000,725.580000,726.680000,624.600000,389.780000 /) -XPIZA_LKT(29,17,1:6)=(/ 0.877097,0.916104,0.941552,0.983293,0.990554,0.993293 /) -XCGA_LKT(29,17,1:6)=(/ 0.798243,0.765537,0.746810,0.727747,0.736353,0.733173 /) -XEXT_COEFF_550_LKT(29,17)=719.980000 !rg=0.0979445 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,18,1:6)=(/ 542.260000,566.880000,592.550000,600.700000,551.160000,391.440000 /) -XPIZA_LKT(29,18,1:6)=(/ 0.862305,0.903488,0.931830,0.981030,0.989169,0.993054 /) -XCGA_LKT(29,18,1:6)=(/ 0.808873,0.779780,0.753207,0.735153,0.740307,0.742010 /) -XEXT_COEFF_550_LKT(29,18)=593.140000 !rg=0.0979445 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,19,1:6)=(/ 444.810000,464.560000,481.860000,498.500000,473.110000,367.330000 /) -XPIZA_LKT(29,19,1:6)=(/ 0.849837,0.887736,0.921659,0.976912,0.987215,0.992355 /) -XCGA_LKT(29,19,1:6)=(/ 0.819087,0.790440,0.765350,0.739000,0.742907,0.740717 /) -XEXT_COEFF_550_LKT(29,19)=483.240000 !rg=0.0979445 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(29,20,1:6)=(/ 365.970000,380.280000,396.180000,409.920000,400.090000,329.510000 /) -XPIZA_LKT(29,20,1:6)=(/ 0.837715,0.872187,0.908165,0.972828,0.985072,0.991253 /) -XCGA_LKT(29,20,1:6)=(/ 0.829337,0.799223,0.775127,0.742987,0.745653,0.734847 /) -XEXT_COEFF_550_LKT(29,20)=392.790000 !rg=0.0979445 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,1,1:6)=(/ 8176.600000,3189.800000,918.170000,170.710000,18.267000,2.297300 /) -XPIZA_LKT(30,1,1:6)=(/ 0.986259,0.980123,0.966721,0.962628,0.840424,0.406157 /) -XCGA_LKT(30,1,1:6)=(/ 0.754750,0.634890,0.295443,0.109677,0.034870,0.008637 /) -XEXT_COEFF_550_LKT(30,1)=944.410000 !rg=0.106109 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,2,1:6)=(/ 8061.900000,3421.200000,1033.900000,208.070000,22.242000,2.544300 /) -XPIZA_LKT(30,2,1:6)=(/ 0.986047,0.981706,0.969418,0.968689,0.867592,0.462216 /) -XCGA_LKT(30,2,1:6)=(/ 0.754210,0.635603,0.370133,0.139230,0.044210,0.010973 /) -XEXT_COEFF_550_LKT(30,2)=1062.700000 !rg=0.106109 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,3,1:6)=(/ 7845.400000,3755.400000,1280.000000,284.410000,31.715000,3.144900 /) -XPIZA_LKT(30,3,1:6)=(/ 0.985505,0.983092,0.973637,0.976203,0.905214,0.562220 /) -XCGA_LKT(30,3,1:6)=(/ 0.758603,0.663907,0.476253,0.208837,0.066963,0.016713 /) -XEXT_COEFF_550_LKT(30,3)=1315.100000 !rg=0.106109 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,4,1:6)=(/ 7276.200000,4081.200000,1616.100000,405.750000,50.318000,4.408000 /) -XPIZA_LKT(30,4,1:6)=(/ 0.984164,0.984021,0.977716,0.982325,0.938344,0.684361 /) -XCGA_LKT(30,4,1:6)=(/ 0.757850,0.695483,0.561340,0.322287,0.112423,0.028463 /) -XEXT_COEFF_550_LKT(30,4)=1655.600000 !rg=0.106109 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,5,1:6)=(/ 6419.900000,4256.900000,1975.400000,578.240000,81.991000,6.876800 /) -XPIZA_LKT(30,5,1:6)=(/ 0.981825,0.984236,0.980669,0.986645,0.960525,0.794355 /) -XCGA_LKT(30,5,1:6)=(/ 0.751253,0.718510,0.624713,0.440577,0.185123,0.047637 /) -XEXT_COEFF_550_LKT(30,5)=2016.500000 !rg=0.106109 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,6,1:6)=(/ 5474.500000,4202.800000,2290.500000,790.630000,129.390000,11.311000 /) -XPIZA_LKT(30,6,1:6)=(/ 0.978452,0.983610,0.982447,0.989452,0.973609,0.872064 /) -XCGA_LKT(30,6,1:6)=(/ 0.741920,0.730963,0.670087,0.534583,0.281653,0.074400 /) -XEXT_COEFF_550_LKT(30,6)=2330.200000 !rg=0.106109 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,7,1:6)=(/ 4562.100000,3926.500000,2503.300000,1025.000000,197.190000,18.938000 /) -XPIZA_LKT(30,7,1:6)=(/ 0.974138,0.982052,0.983203,0.991247,0.981506,0.921191 /) -XCGA_LKT(30,7,1:6)=(/ 0.734253,0.734700,0.700547,0.605033,0.387003,0.111413 /) -XEXT_COEFF_550_LKT(30,7)=2537.700000 !rg=0.106109 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,8,1:6)=(/ 3768.700000,3509.500000,2560.500000,1247.700000,285.190000,31.208000 /) -XPIZA_LKT(30,8,1:6)=(/ 0.968675,0.979573,0.982953,0.992328,0.986286,0.950290 /) -XCGA_LKT(30,8,1:6)=(/ 0.729340,0.733493,0.717550,0.655973,0.479143,0.163503 /) -XEXT_COEFF_550_LKT(30,8)=2587.100000 !rg=0.106109 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,9,1:6)=(/ 3090.000000,3041.400000,2458.800000,1424.900000,393.060000,49.739000 /) -XPIZA_LKT(30,9,1:6)=(/ 0.962263,0.976182,0.981673,0.992894,0.989293,0.967294 /) -XCGA_LKT(30,9,1:6)=(/ 0.730247,0.731467,0.724007,0.691383,0.560120,0.238197 /) -XEXT_COEFF_550_LKT(30,9)=2475.400000 !rg=0.106109 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,10,1:6)=(/ 2522.300000,2578.200000,2244.000000,1516.600000,511.170000,76.107000 /) -XPIZA_LKT(30,10,1:6)=(/ 0.954942,0.971566,0.979502,0.993007,0.991191,0.977310 /) -XCGA_LKT(30,10,1:6)=(/ 0.731050,0.729170,0.725040,0.712640,0.623277,0.339053 /) -XEXT_COEFF_550_LKT(30,10)=2255.400000 !rg=0.106109 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,11,1:6)=(/ 2061.200000,2138.200000,1988.400000,1505.200000,629.390000,114.140000 /) -XPIZA_LKT(30,11,1:6)=(/ 0.946682,0.966294,0.976432,0.992675,0.992389,0.983721 /) -XCGA_LKT(30,11,1:6)=(/ 0.738673,0.729077,0.725130,0.721870,0.672730,0.443170 /) -XEXT_COEFF_550_LKT(30,11)=1995.000000 !rg=0.106109 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,12,1:6)=(/ 1674.000000,1767.500000,1712.200000,1406.200000,728.280000,162.270000 /) -XPIZA_LKT(30,12,1:6)=(/ 0.937117,0.959614,0.972537,0.991876,0.993056,0.987717 /) -XCGA_LKT(30,12,1:6)=(/ 0.745123,0.731970,0.726797,0.722267,0.708040,0.522910 /) -XEXT_COEFF_550_LKT(30,12)=1714.300000 !rg=0.106109 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,13,1:6)=(/ 1365.900000,1442.900000,1441.800000,1262.600000,787.310000,218.950000 /) -XPIZA_LKT(30,13,1:6)=(/ 0.926129,0.952074,0.967232,0.990769,0.993269,0.990210 /) -XCGA_LKT(30,13,1:6)=(/ 0.757347,0.735050,0.727357,0.721820,0.730370,0.595457 /) -XEXT_COEFF_550_LKT(30,13)=1437.500000 !rg=0.106109 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,14,1:6)=(/ 1109.500000,1176.200000,1201.300000,1115.000000,790.980000,278.340000 /) -XPIZA_LKT(30,14,1:6)=(/ 0.914554,0.943897,0.961285,0.989360,0.993041,0.991784 /) -XCGA_LKT(30,14,1:6)=(/ 0.767330,0.744660,0.730030,0.724173,0.740347,0.650570 /) -XEXT_COEFF_550_LKT(30,14)=1202.200000 !rg=0.106109 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,15,1:6)=(/ 903.850000,957.980000,987.580000,955.760000,744.120000,333.840000 /) -XPIZA_LKT(30,15,1:6)=(/ 0.902109,0.934745,0.955369,0.987465,0.992352,0.992741 /) -XCGA_LKT(30,15,1:6)=(/ 0.779763,0.752673,0.736757,0.725207,0.740357,0.693007 /) -XEXT_COEFF_550_LKT(30,15)=989.570000 !rg=0.106109 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,16,1:6)=(/ 741.850000,781.270000,811.950000,804.230000,670.070000,375.890000 /) -XPIZA_LKT(30,16,1:6)=(/ 0.885371,0.922704,0.946879,0.984940,0.991290,0.993216 /) -XCGA_LKT(30,16,1:6)=(/ 0.792150,0.760093,0.742230,0.726097,0.736857,0.721983 /) -XEXT_COEFF_550_LKT(30,16)=809.500000 !rg=0.106109 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,17,1:6)=(/ 605.200000,638.060000,664.880000,673.410000,595.470000,394.080000 /) -XPIZA_LKT(30,17,1:6)=(/ 0.870728,0.910094,0.937317,0.981979,0.990031,0.993244 /) -XCGA_LKT(30,17,1:6)=(/ 0.802003,0.772917,0.747953,0.731907,0.738393,0.738157 /) -XEXT_COEFF_550_LKT(30,17)=663.320000 !rg=0.106109 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,18,1:6)=(/ 495.850000,519.890000,541.720000,556.380000,521.230000,384.070000 /) -XPIZA_LKT(30,18,1:6)=(/ 0.857329,0.896897,0.927855,0.979396,0.988257,0.992818 /) -XCGA_LKT(30,18,1:6)=(/ 0.814057,0.784507,0.760190,0.736477,0.741173,0.742367 /) -XEXT_COEFF_550_LKT(30,18)=543.170000 !rg=0.106109 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,19,1:6)=(/ 408.720000,425.570000,443.700000,458.800000,440.430000,352.320000 /) -XPIZA_LKT(30,19,1:6)=(/ 0.843641,0.880194,0.915670,0.974862,0.986485,0.991931 /) -XCGA_LKT(30,19,1:6)=(/ 0.824537,0.793360,0.769230,0.739027,0.743510,0.737980 /) -XEXT_COEFF_550_LKT(30,19)=441.850000 !rg=0.106109 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(30,20,1:6)=(/ 334.660000,348.430000,362.600000,376.490000,373.690000,313.680000 /) -XPIZA_LKT(30,20,1:6)=(/ 0.832496,0.866194,0.901783,0.970416,0.983760,0.990756 /) -XCGA_LKT(30,20,1:6)=(/ 0.832523,0.806213,0.777340,0.748673,0.745660,0.734367 /) -XEXT_COEFF_550_LKT(30,20)=361.780000 !rg=0.106109 sigma=2.95 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET3',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET3 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET4() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET4',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(31,1,1:6)=(/ 8217.700000,3668.300000,1071.000000,212.620000,22.443000,2.555300 /) -XPIZA_LKT(31,1,1:6)=(/ 0.986440,0.982322,0.970401,0.969142,0.868490,0.464248 /) -XCGA_LKT(31,1,1:6)=(/ 0.758317,0.644733,0.354757,0.129003,0.040880,0.010133 /) -XEXT_COEFF_550_LKT(31,1)=1099.400000 !rg=0.114954 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,2,1:6)=(/ 8171.600000,3783.600000,1203.400000,256.800000,27.459000,2.868800 /) -XPIZA_LKT(31,2,1:6)=(/ 0.986060,0.983121,0.972487,0.973894,0.891260,0.521150 /) -XCGA_LKT(31,2,1:6)=(/ 0.764690,0.655150,0.433227,0.163923,0.051813,0.012870 /) -XEXT_COEFF_550_LKT(31,2)=1236.800000 !rg=0.114954 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,3,1:6)=(/ 7769.400000,4062.200000,1477.000000,343.950000,39.310000,3.630900 /) -XPIZA_LKT(31,3,1:6)=(/ 0.985189,0.984006,0.976099,0.979710,0.922280,0.618930 /) -XCGA_LKT(31,3,1:6)=(/ 0.765350,0.684993,0.523843,0.244443,0.078407,0.019597 /) -XEXT_COEFF_550_LKT(31,3)=1516.400000 !rg=0.114954 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,4,1:6)=(/ 7011.600000,4300.300000,1817.700000,480.560000,62.036000,5.231100 /) -XPIZA_LKT(31,4,1:6)=(/ 0.983410,0.984521,0.979436,0.984544,0.949027,0.732263 /) -XCGA_LKT(31,4,1:6)=(/ 0.759940,0.711590,0.593687,0.364297,0.131163,0.033343 /) -XEXT_COEFF_550_LKT(31,4)=1859.700000 !rg=0.114954 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,5,1:6)=(/ 6043.800000,4355.700000,2157.700000,669.610000,99.543000,8.345800 /) -XPIZA_LKT(31,5,1:6)=(/ 0.980555,0.984328,0.981758,0.988036,0.966744,0.829028 /) -XCGA_LKT(31,5,1:6)=(/ 0.749740,0.728947,0.647410,0.477673,0.214430,0.055760 /) -XEXT_COEFF_550_LKT(31,5)=2199.800000 !rg=0.114954 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,6,1:6)=(/ 5071.600000,4177.900000,2429.100000,892.750000,154.660000,13.890000 /) -XPIZA_LKT(31,6,1:6)=(/ 0.976718,0.983268,0.983036,0.990327,0.977317,0.894573 /) -XCGA_LKT(31,6,1:6)=(/ 0.739773,0.736403,0.685687,0.563640,0.318990,0.087053 /) -XEXT_COEFF_550_LKT(31,6)=2467.900000 !rg=0.114954 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,7,1:6)=(/ 4186.800000,3807.700000,2575.800000,1126.600000,231.210000,23.262000 /) -XPIZA_LKT(31,7,1:6)=(/ 0.971890,0.981265,0.983348,0.991788,0.983759,0.934859 /) -XCGA_LKT(31,7,1:6)=(/ 0.732163,0.736600,0.710300,0.626933,0.422327,0.130390 /) -XEXT_COEFF_550_LKT(31,7)=2608.100000 !rg=0.114954 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,8,1:6)=(/ 3440.100000,3345.700000,2559.300000,1334.500000,327.410000,37.920000 /) -XPIZA_LKT(31,8,1:6)=(/ 0.965917,0.978339,0.982680,0.992639,0.987678,0.958321 /) -XCGA_LKT(31,8,1:6)=(/ 0.728437,0.733800,0.722680,0.671660,0.511697,0.191413 /) -XEXT_COEFF_550_LKT(31,8)=2582.400000 !rg=0.114954 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,9,1:6)=(/ 2809.300000,2855.000000,2396.800000,1480.800000,441.430000,59.464000 /) -XPIZA_LKT(31,9,1:6)=(/ 0.959285,0.974601,0.981021,0.993012,0.990185,0.972002 /) -XCGA_LKT(31,9,1:6)=(/ 0.729760,0.731793,0.726123,0.701477,0.586697,0.277593 /) -XEXT_COEFF_550_LKT(31,9)=2413.800000 !rg=0.114954 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,10,1:6)=(/ 2306.300000,2388.200000,2157.200000,1530.800000,561.430000,90.197000 /) -XPIZA_LKT(31,10,1:6)=(/ 0.950778,0.969356,0.978389,0.992940,0.991757,0.980279 /) -XCGA_LKT(31,10,1:6)=(/ 0.734697,0.728850,0.725933,0.717747,0.644427,0.384017 /) -XEXT_COEFF_550_LKT(31,10)=2164.600000 !rg=0.114954 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,11,1:6)=(/ 1874.700000,1981.900000,1883.700000,1479.500000,674.120000,132.930000 /) -XPIZA_LKT(31,11,1:6)=(/ 0.942355,0.963271,0.975084,0.992418,0.992716,0.985608 /) -XCGA_LKT(31,11,1:6)=(/ 0.739493,0.730570,0.727297,0.723120,0.688233,0.477187 /) -XEXT_COEFF_550_LKT(31,11)=1889.300000 !rg=0.114954 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,12,1:6)=(/ 1530.400000,1619.400000,1603.800000,1354.500000,759.030000,184.280000 /) -XPIZA_LKT(31,12,1:6)=(/ 0.931838,0.956472,0.970417,0.991499,0.993194,0.988857 /) -XCGA_LKT(31,12,1:6)=(/ 0.751217,0.731933,0.727000,0.722653,0.718450,0.553207 /) -XEXT_COEFF_550_LKT(31,12)=1601.100000 !rg=0.114954 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,13,1:6)=(/ 1241.300000,1322.500000,1338.200000,1208.000000,796.430000,243.310000 /) -XPIZA_LKT(31,13,1:6)=(/ 0.921329,0.948637,0.964803,0.990254,0.993232,0.990951 /) -XCGA_LKT(31,13,1:6)=(/ 0.760830,0.740293,0.728017,0.723360,0.735660,0.619563 /) -XEXT_COEFF_550_LKT(31,13)=1340.000000 !rg=0.114954 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,14,1:6)=(/ 1009.700000,1075.400000,1108.400000,1052.900000,778.010000,302.430000 /) -XPIZA_LKT(31,14,1:6)=(/ 0.909846,0.940240,0.958939,0.988643,0.992816,0.992247 /) -XCGA_LKT(31,14,1:6)=(/ 0.774173,0.747603,0.733873,0.725077,0.741223,0.669427 /) -XEXT_COEFF_550_LKT(31,14)=1107.600000 !rg=0.114954 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,15,1:6)=(/ 830.240000,876.930000,911.090000,891.430000,716.050000,353.480000 /) -XPIZA_LKT(31,15,1:6)=(/ 0.894798,0.929645,0.951938,0.986582,0.991970,0.992989 /) -XCGA_LKT(31,15,1:6)=(/ 0.785757,0.755177,0.738610,0.725663,0.738947,0.706147 /) -XEXT_COEFF_550_LKT(31,15)=913.680000 !rg=0.114954 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,16,1:6)=(/ 677.620000,716.670000,745.180000,751.840000,640.400000,386.650000 /) -XPIZA_LKT(31,16,1:6)=(/ 0.878532,0.917149,0.942573,0.983467,0.990810,0.993281 /) -XCGA_LKT(31,16,1:6)=(/ 0.795173,0.766587,0.743597,0.728910,0.737387,0.729973 /) -XEXT_COEFF_550_LKT(31,16)=742.230000 !rg=0.114954 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,17,1:6)=(/ 552.700000,582.400000,609.910000,619.910000,567.010000,393.160000 /) -XPIZA_LKT(31,17,1:6)=(/ 0.864466,0.904335,0.932660,0.981038,0.989412,0.993123 /) -XCGA_LKT(31,17,1:6)=(/ 0.809657,0.777483,0.754037,0.733283,0.739987,0.740957 /) -XEXT_COEFF_550_LKT(31,17)=608.510000 !rg=0.114954 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,18,1:6)=(/ 456.050000,476.460000,496.990000,513.170000,486.610000,372.770000 /) -XPIZA_LKT(31,18,1:6)=(/ 0.851195,0.889378,0.922886,0.977228,0.987723,0.992507 /) -XCGA_LKT(31,18,1:6)=(/ 0.819527,0.787840,0.763857,0.736833,0.742567,0.741107 /) -XEXT_COEFF_550_LKT(31,18)=498.630000 !rg=0.114954 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,19,1:6)=(/ 374.380000,390.530000,406.610000,423.570000,411.870000,336.420000 /) -XPIZA_LKT(31,19,1:6)=(/ 0.838298,0.873596,0.909511,0.972488,0.985532,0.991477 /) -XCGA_LKT(31,19,1:6)=(/ 0.827663,0.800110,0.771647,0.743723,0.744287,0.736273 /) -XEXT_COEFF_550_LKT(31,19)=404.710000 !rg=0.114954 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(31,20,1:6)=(/ 306.770000,318.970000,332.250000,344.540000,347.860000,299.380000 /) -XPIZA_LKT(31,20,1:6)=(/ 0.827072,0.859694,0.894837,0.968770,0.982169,0.990209 /) -XCGA_LKT(31,20,1:6)=(/ 0.838360,0.811013,0.784667,0.752720,0.747703,0.734800 /) -XEXT_COEFF_550_LKT(31,20)=331.900000 !rg=0.114954 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,1,1:6)=(/ 8362.400000,3998.600000,1234.700000,263.590000,27.726000,2.882800 /) -XPIZA_LKT(32,1,1:6)=(/ 0.986184,0.984028,0.973146,0.974365,0.892031,0.523168 /) -XCGA_LKT(32,1,1:6)=(/ 0.768243,0.647667,0.425307,0.152037,0.047923,0.011887 /) -XEXT_COEFF_550_LKT(32,1)=1266.300000 !rg=0.124536 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,2,1:6)=(/ 8139.200000,4104.000000,1397.100000,314.480000,34.039000,3.280600 /) -XPIZA_LKT(32,2,1:6)=(/ 0.985842,0.984188,0.975026,0.978038,0.910901,0.579323 /) -XCGA_LKT(32,2,1:6)=(/ 0.772363,0.675267,0.497000,0.193393,0.060730,0.015093 /) -XEXT_COEFF_550_LKT(32,2)=1436.400000 !rg=0.124536 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,3,1:6)=(/ 7553.000000,4333.600000,1690.100000,412.350000,48.778000,4.247300 /) -XPIZA_LKT(32,3,1:6)=(/ 0.984606,0.984700,0.978183,0.982510,0.936229,0.672359 /) -XCGA_LKT(32,3,1:6)=(/ 0.768977,0.704243,0.565700,0.285350,0.091797,0.022973 /) -XEXT_COEFF_550_LKT(32,3)=1733.200000 !rg=0.124536 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,4,1:6)=(/ 6642.700000,4470.500000,2022.200000,564.900000,76.248000,6.272800 /) -XPIZA_LKT(32,4,1:6)=(/ 0.982317,0.984837,0.980870,0.986354,0.957656,0.775021 /) -XCGA_LKT(32,4,1:6)=(/ 0.759137,0.725490,0.622273,0.407587,0.152863,0.039053 /) -XEXT_COEFF_550_LKT(32,4)=2066.100000 !rg=0.124536 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,5,1:6)=(/ 5612.600000,4397.700000,2330.600000,768.720000,120.260000,10.192000 /) -XPIZA_LKT(32,5,1:6)=(/ 0.978957,0.984238,0.982636,0.989186,0.971790,0.858563 /) -XCGA_LKT(32,5,1:6)=(/ 0.746873,0.737343,0.667560,0.512970,0.246850,0.065243 /) -XEXT_COEFF_550_LKT(32,5)=2372.800000 !rg=0.124536 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,6,1:6)=(/ 4663.400000,4101.000000,2546.500000,998.590000,183.680000,17.084000 /) -XPIZA_LKT(32,6,1:6)=(/ 0.974434,0.982771,0.983449,0.991056,0.980352,0.913134 /) -XCGA_LKT(32,6,1:6)=(/ 0.735620,0.740503,0.699270,0.590547,0.356030,0.101823 /) -XEXT_COEFF_550_LKT(32,6)=2583.600000 !rg=0.124536 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,7,1:6)=(/ 3830.800000,3653.700000,2620.200000,1226.500000,268.670000,28.481000 /) -XPIZA_LKT(32,7,1:6)=(/ 0.968953,0.980347,0.983328,0.992229,0.985597,0.945903 /) -XCGA_LKT(32,7,1:6)=(/ 0.728763,0.738207,0.718353,0.646687,0.456560,0.152550 /) -XEXT_COEFF_550_LKT(32,7)=2649.100000 !rg=0.124536 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,8,1:6)=(/ 3142.600000,3155.200000,2532.400000,1412.600000,373.220000,45.773000 /) -XPIZA_LKT(32,8,1:6)=(/ 0.962381,0.977021,0.982219,0.992865,0.988848,0.964763 /) -XCGA_LKT(32,8,1:6)=(/ 0.727957,0.734493,0.726317,0.685447,0.542767,0.223757 /) -XEXT_COEFF_550_LKT(32,8)=2551.800000 !rg=0.124536 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,9,1:6)=(/ 2553.200000,2659.900000,2321.600000,1521.800000,491.100000,70.784000 /) -XPIZA_LKT(32,9,1:6)=(/ 0.956040,0.972597,0.980185,0.993057,0.990919,0.975861 /) -XCGA_LKT(32,9,1:6)=(/ 0.730623,0.730610,0.727910,0.709900,0.610730,0.320620 /) -XEXT_COEFF_550_LKT(32,9)=2333.000000 !rg=0.124536 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,10,1:6)=(/ 2090.200000,2208.100000,2056.800000,1527.900000,609.870000,106.450000 /) -XPIZA_LKT(32,10,1:6)=(/ 0.947281,0.967452,0.977289,0.992806,0.992216,0.982774 /) -XCGA_LKT(32,10,1:6)=(/ 0.736510,0.730613,0.727687,0.721540,0.663223,0.424900 /) -XEXT_COEFF_550_LKT(32,10)=2067.100000 !rg=0.124536 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,11,1:6)=(/ 1706.300000,1817.100000,1776.600000,1440.300000,713.710000,152.840000 /) -XPIZA_LKT(32,11,1:6)=(/ 0.938086,0.960785,0.973297,0.992121,0.992970,0.987125 /) -XCGA_LKT(32,11,1:6)=(/ 0.746477,0.730847,0.727777,0.723857,0.701460,0.507973 /) -XEXT_COEFF_550_LKT(32,11)=1777.200000 !rg=0.124536 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,12,1:6)=(/ 1389.800000,1484.200000,1490.700000,1302.200000,781.420000,208.020000 /) -XPIZA_LKT(32,12,1:6)=(/ 0.927343,0.953684,0.968155,0.991057,0.993263,0.989825 /) -XCGA_LKT(32,12,1:6)=(/ 0.754997,0.736700,0.727143,0.723447,0.726470,0.582487 /) -XEXT_COEFF_550_LKT(32,12)=1493.200000 !rg=0.124536 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,13,1:6)=(/ 1128.400000,1206.700000,1241.200000,1149.700000,796.470000,267.640000 /) -XPIZA_LKT(32,13,1:6)=(/ 0.916919,0.945214,0.962579,0.989644,0.993121,0.991549 /) -XCGA_LKT(32,13,1:6)=(/ 0.768080,0.742507,0.731700,0.724233,0.739097,0.640807 /) -XEXT_COEFF_550_LKT(32,13)=1239.900000 !rg=0.124536 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,14,1:6)=(/ 927.640000,982.530000,1019.500000,987.820000,757.220000,324.660000 /) -XPIZA_LKT(32,14,1:6)=(/ 0.902927,0.935983,0.956179,0.987904,0.992533,0.992607 /) -XCGA_LKT(32,14,1:6)=(/ 0.779250,0.750207,0.734897,0.725870,0.741040,0.685770 /) -XEXT_COEFF_550_LKT(32,14)=1023.900000 !rg=0.124536 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,15,1:6)=(/ 759.180000,805.320000,836.430000,834.680000,686.810000,369.570000 /) -XPIZA_LKT(32,15,1:6)=(/ 0.887020,0.924052,0.948226,0.985159,0.991549,0.993159 /) -XCGA_LKT(32,15,1:6)=(/ 0.788530,0.760680,0.740113,0.726820,0.738450,0.716977 /) -XEXT_COEFF_550_LKT(32,15)=835.750000 !rg=0.124536 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,16,1:6)=(/ 619.540000,652.800000,685.810000,693.710000,611.790000,392.840000 /) -XPIZA_LKT(32,16,1:6)=(/ 0.871714,0.911930,0.938282,0.982750,0.990300,0.993266 /) -XCGA_LKT(32,16,1:6)=(/ 0.803460,0.770037,0.748840,0.730523,0.738367,0.735627 /) -XEXT_COEFF_550_LKT(32,16)=681.190000 !rg=0.124536 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,17,1:6)=(/ 508.500000,532.090000,557.460000,572.630000,534.750000,387.700000 /) -XPIZA_LKT(32,17,1:6)=(/ 0.858036,0.898637,0.928527,0.979915,0.988798,0.992923 /) -XCGA_LKT(32,17,1:6)=(/ 0.814540,0.782330,0.757763,0.734880,0.741827,0.742020 /) -XEXT_COEFF_550_LKT(32,17)=559.300000 !rg=0.124536 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,18,1:6)=(/ 418.280000,437.640000,455.620000,474.200000,454.780000,359.000000 /) -XPIZA_LKT(32,18,1:6)=(/ 0.844706,0.881887,0.917148,0.975322,0.986874,0.992127 /) -XCGA_LKT(32,18,1:6)=(/ 0.822337,0.794247,0.766537,0.740207,0.743503,0.739430 /) -XEXT_COEFF_550_LKT(32,18)=454.940000 !rg=0.124536 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,19,1:6)=(/ 343.310000,356.450000,373.240000,386.710000,385.470000,321.200000 /) -XPIZA_LKT(32,19,1:6)=(/ 0.832778,0.867452,0.903211,0.971086,0.984188,0.990951 /) -XCGA_LKT(32,19,1:6)=(/ 0.833840,0.804160,0.778170,0.746523,0.746453,0.734557 /) -XEXT_COEFF_550_LKT(32,19)=371.080000 !rg=0.124536 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(32,20,1:6)=(/ 282.790000,292.060000,303.830000,316.060000,319.990000,285.110000 /) -XPIZA_LKT(32,20,1:6)=(/ 0.822103,0.854898,0.887888,0.966801,0.981836,0.989618 /) -XCGA_LKT(32,20,1:6)=(/ 0.842177,0.815350,0.789413,0.754977,0.749923,0.736200 /) -XEXT_COEFF_550_LKT(32,20)=304.570000 !rg=0.124536 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,1,1:6)=(/ 8374.300000,4199.300000,1420.500000,324.480000,34.401000,3.298400 /) -XPIZA_LKT(33,1,1:6)=(/ 0.986178,0.984891,0.975265,0.978531,0.911574,0.581281 /) -XCGA_LKT(33,1,1:6)=(/ 0.781217,0.665920,0.503047,0.179680,0.056187,0.013943 /) -XEXT_COEFF_550_LKT(33,1)=1459.200000 !rg=0.134917 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,2,1:6)=(/ 7950.900000,4392.200000,1620.300000,381.350000,42.316000,3.803300 /) -XPIZA_LKT(33,2,1:6)=(/ 0.985354,0.984945,0.977249,0.981318,0.927063,0.635188 /) -XCGA_LKT(33,2,1:6)=(/ 0.777147,0.698197,0.553780,0.228703,0.071187,0.017703 /) -XEXT_COEFF_550_LKT(33,2)=1666.000000 !rg=0.134917 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,3,1:6)=(/ 7197.300000,4560.200000,1913.600000,490.120000,60.504000,5.029200 /) -XPIZA_LKT(33,3,1:6)=(/ 0.983701,0.985192,0.979952,0.984754,0.947558,0.721444 /) -XCGA_LKT(33,3,1:6)=(/ 0.769340,0.721650,0.601017,0.331330,0.107477,0.026927 /) -XEXT_COEFF_550_LKT(33,3)=1959.600000 !rg=0.134917 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,4,1:6)=(/ 6178.700000,4583.000000,2223.700000,658.920000,93.316000,7.589200 /) -XPIZA_LKT(33,4,1:6)=(/ 0.980894,0.984968,0.982056,0.987838,0.964611,0.812417 /) -XCGA_LKT(33,4,1:6)=(/ 0.755927,0.737163,0.647373,0.450777,0.177857,0.045727 /) -XEXT_COEFF_550_LKT(33,4)=2268.700000 !rg=0.134917 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,5,1:6)=(/ 5150.800000,4379.400000,2488.000000,874.820000,144.490000,12.503000 /) -XPIZA_LKT(33,5,1:6)=(/ 0.976854,0.983967,0.983321,0.990140,0.975895,0.883369 /) -XCGA_LKT(33,5,1:6)=(/ 0.741290,0.743830,0.685267,0.546173,0.281657,0.076310 /) -XEXT_COEFF_550_LKT(33,5)=2529.600000 !rg=0.134917 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,6,1:6)=(/ 4235.100000,3980.200000,2638.000000,1105.800000,216.390000,21.006000 /) -XPIZA_LKT(33,6,1:6)=(/ 0.971956,0.982036,0.983693,0.991656,0.982826,0.928303 /) -XCGA_LKT(33,6,1:6)=(/ 0.731430,0.742947,0.710813,0.615033,0.392377,0.119050 /) -XEXT_COEFF_550_LKT(33,6)=2672.800000 !rg=0.134917 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,7,1:6)=(/ 3470.800000,3477.300000,2634.200000,1320.600000,309.990000,34.703000 /) -XPIZA_LKT(33,7,1:6)=(/ 0.965923,0.979137,0.983154,0.992583,0.987120,0.954787 /) -XCGA_LKT(33,7,1:6)=(/ 0.726440,0.738353,0.724833,0.664220,0.490443,0.178353 /) -XEXT_COEFF_550_LKT(33,7)=2659.900000 !rg=0.134917 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,8,1:6)=(/ 2841.300000,2957.400000,2479.400000,1477.800000,421.270000,54.909000 /) -XPIZA_LKT(33,8,1:6)=(/ 0.959296,0.975372,0.981658,0.993023,0.989820,0.969960 /) -XCGA_LKT(33,8,1:6)=(/ 0.727027,0.734053,0.729337,0.697093,0.570823,0.260610 /) -XEXT_COEFF_550_LKT(33,8)=2497.700000 !rg=0.134917 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,9,1:6)=(/ 2330.800000,2460.900000,2232.800000,1545.700000,541.970000,84.053000 /) -XPIZA_LKT(33,9,1:6)=(/ 0.951602,0.970509,0.979168,0.993031,0.991535,0.979083 /) -XCGA_LKT(33,9,1:6)=(/ 0.731867,0.730290,0.728843,0.716340,0.633083,0.364497 /) -XEXT_COEFF_550_LKT(33,9)=2243.600000 !rg=0.134917 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,10,1:6)=(/ 1896.300000,2034.700000,1952.600000,1509.600000,656.490000,124.460000 /) -XPIZA_LKT(33,10,1:6)=(/ 0.943826,0.964882,0.975958,0.992602,0.992581,0.984826 /) -XCGA_LKT(33,10,1:6)=(/ 0.740150,0.730233,0.729037,0.723813,0.679877,0.460200 /) -XEXT_COEFF_550_LKT(33,10)=1956.600000 !rg=0.134917 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,11,1:6)=(/ 1549.800000,1662.200000,1658.400000,1394.600000,748.010000,174.170000 /) -XPIZA_LKT(33,11,1:6)=(/ 0.933793,0.958410,0.971499,0.991760,0.993141,0.988363 /) -XCGA_LKT(33,11,1:6)=(/ 0.749963,0.733513,0.728153,0.724633,0.712930,0.538537 /) -XEXT_COEFF_550_LKT(33,11)=1663.700000 !rg=0.134917 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,12,1:6)=(/ 1262.500000,1357.300000,1384.300000,1246.100000,795.340000,232.310000 /) -XPIZA_LKT(33,12,1:6)=(/ 0.923257,0.950299,0.966339,0.990561,0.993262,0.990632 /) -XCGA_LKT(33,12,1:6)=(/ 0.761190,0.738390,0.730063,0.724003,0.732883,0.607980 /) -XEXT_COEFF_550_LKT(33,12)=1384.500000 !rg=0.134917 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,13,1:6)=(/ 1035.700000,1102.800000,1143.500000,1088.100000,787.310000,292.130000 /) -XPIZA_LKT(33,13,1:6)=(/ 0.910317,0.941465,0.960152,0.989003,0.992939,0.992052 /) -XCGA_LKT(33,13,1:6)=(/ 0.772810,0.745317,0.732483,0.725863,0.740867,0.660537 /) -XEXT_COEFF_550_LKT(33,13)=1147.900000 !rg=0.134917 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,14,1:6)=(/ 848.020000,903.470000,937.810000,924.900000,732.260000,345.390000 /) -XPIZA_LKT(33,14,1:6)=(/ 0.895623,0.930349,0.953176,0.986775,0.992186,0.992883 /) -XCGA_LKT(33,14,1:6)=(/ 0.782157,0.754960,0.736827,0.725870,0.740553,0.699890 /) -XEXT_COEFF_550_LKT(33,14)=938.290000 !rg=0.134917 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,15,1:6)=(/ 695.350000,733.970000,770.860000,774.790000,657.880000,382.350000 /) -XPIZA_LKT(33,15,1:6)=(/ 0.879556,0.919060,0.943760,0.984414,0.991055,0.993252 /) -XCGA_LKT(33,15,1:6)=(/ 0.796490,0.762827,0.743897,0.727743,0.737760,0.726027 /) -XEXT_COEFF_550_LKT(33,15)=765.140000 !rg=0.134917 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,16,1:6)=(/ 567.240000,594.700000,625.760000,639.470000,581.400000,394.160000 /) -XPIZA_LKT(33,16,1:6)=(/ 0.865326,0.906939,0.934378,0.981777,0.989760,0.993179 /) -XCGA_LKT(33,16,1:6)=(/ 0.808947,0.777203,0.751197,0.733147,0.740607,0.739457 /) -XEXT_COEFF_550_LKT(33,16)=627.510000 !rg=0.134917 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,17,1:6)=(/ 466.750000,488.970000,509.650000,530.600000,502.240000,378.270000 /) -XPIZA_LKT(33,17,1:6)=(/ 0.851237,0.891131,0.924329,0.977905,0.988084,0.992646 /) -XCGA_LKT(33,17,1:6)=(/ 0.817587,0.788180,0.761677,0.737313,0.743353,0.741657 /) -XEXT_COEFF_550_LKT(33,17)=509.900000 !rg=0.134917 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,18,1:6)=(/ 383.840000,399.730000,418.850000,434.510000,425.410000,343.950000 /) -XPIZA_LKT(33,18,1:6)=(/ 0.838987,0.875673,0.911122,0.974272,0.985634,0.991664 /) -XCGA_LKT(33,18,1:6)=(/ 0.828397,0.797313,0.772290,0.741580,0.744213,0.736753 /) -XEXT_COEFF_550_LKT(33,18)=415.420000 !rg=0.134917 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,19,1:6)=(/ 315.110000,325.730000,340.430000,354.190000,357.390000,305.840000 /) -XPIZA_LKT(33,19,1:6)=(/ 0.827591,0.861956,0.896994,0.969643,0.983339,0.990469 /) -XCGA_LKT(33,19,1:6)=(/ 0.838187,0.810927,0.781970,0.751607,0.746953,0.735203 /) -XEXT_COEFF_550_LKT(33,19)=341.170000 !rg=0.134917 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(33,20,1:6)=(/ 259.760000,268.480000,278.020000,291.590000,296.190000,270.820000 /) -XPIZA_LKT(33,20,1:6)=(/ 0.816470,0.848637,0.881927,0.963651,0.980713,0.989084 /) -XCGA_LKT(33,20,1:6)=(/ 0.844800,0.820750,0.794083,0.758830,0.753560,0.738917 /) -XEXT_COEFF_550_LKT(33,20)=277.820000 !rg=0.134917 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,1,1:6)=(/ 8021.400000,4463.100000,1652.500000,395.470000,42.815000,3.825900 /) -XPIZA_LKT(34,1,1:6)=(/ 0.985488,0.985157,0.977180,0.981829,0.927658,0.637028 /) -XCGA_LKT(34,1,1:6)=(/ 0.784750,0.704137,0.575467,0.213120,0.065880,0.016353 /) -XEXT_COEFF_550_LKT(34,1)=1703.500000 !rg=0.146163 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,2,1:6)=(/ 7598.400000,4651.600000,1869.400000,457.100000,52.685000,4.466600 /) -XPIZA_LKT(34,2,1:6)=(/ 0.984533,0.985480,0.979268,0.983899,0.940266,0.687424 /) -XCGA_LKT(34,2,1:6)=(/ 0.778280,0.721250,0.597333,0.271010,0.083467,0.020757 /) -XEXT_COEFF_550_LKT(34,2)=1919.900000 !rg=0.146163 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,3,1:6)=(/ 6713.200000,4732.100000,2140.000000,577.920000,74.901000,6.020100 /) -XPIZA_LKT(34,3,1:6)=(/ 0.982385,0.985489,0.981445,0.986561,0.956713,0.765500 /) -XCGA_LKT(34,3,1:6)=(/ 0.766147,0.736827,0.630393,0.381293,0.125840,0.031557 /) -XEXT_COEFF_550_LKT(34,3)=2187.500000 !rg=0.146163 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,4,1:6)=(/ 5655.400000,4630.400000,2415.700000,762.430000,113.600000,9.249800 /) -XPIZA_LKT(34,4,1:6)=(/ 0.978964,0.984908,0.983020,0.989063,0.970215,0.844550 /) -XCGA_LKT(34,4,1:6)=(/ 0.749777,0.746547,0.669400,0.492537,0.206380,0.053520 /) -XEXT_COEFF_550_LKT(34,4)=2460.900000 !rg=0.146163 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,5,1:6)=(/ 4658.900000,4301.800000,2624.200000,986.140000,172.460000,15.380000 /) -XPIZA_LKT(34,5,1:6)=(/ 0.974471,0.983469,0.983825,0.990934,0.979232,0.903952 /) -XCGA_LKT(34,5,1:6)=(/ 0.735573,0.748200,0.700720,0.576830,0.318093,0.089207 /) -XEXT_COEFF_550_LKT(34,5)=2664.200000 !rg=0.146163 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,6,1:6)=(/ 3830.100000,3814.300000,2699.800000,1212.400000,252.910000,25.775000 /) -XPIZA_LKT(34,6,1:6)=(/ 0.969203,0.981105,0.983773,0.992150,0.984850,0.940610 /) -XCGA_LKT(34,6,1:6)=(/ 0.727710,0.743940,0.720513,0.637213,0.428447,0.139107 /) -XEXT_COEFF_550_LKT(34,6)=2731.400000 !rg=0.146163 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,7,1:6)=(/ 3142.500000,3270.700000,2619.500000,1407.200000,355.080000,42.037000 /) -XPIZA_LKT(34,7,1:6)=(/ 0.962720,0.977752,0.982791,0.992853,0.988393,0.961928 /) -XCGA_LKT(34,7,1:6)=(/ 0.725730,0.737943,0.729717,0.679763,0.522950,0.208203 /) -XEXT_COEFF_550_LKT(34,7)=2640.700000 !rg=0.146163 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,8,1:6)=(/ 2569.800000,2745.600000,2409.000000,1529.000000,471.110000,65.566000 /) -XPIZA_LKT(34,8,1:6)=(/ 0.956152,0.973424,0.980884,0.993109,0.990622,0.974206 /) -XCGA_LKT(34,8,1:6)=(/ 0.728563,0.732477,0.731450,0.706993,0.596390,0.301190 /) -XEXT_COEFF_550_LKT(34,8)=2421.400000 !rg=0.146163 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,9,1:6)=(/ 2110.700000,2276.200000,2132.000000,1552.700000,591.820000,99.429000 /) -XPIZA_LKT(34,9,1:6)=(/ 0.947042,0.967674,0.978050,0.992937,0.992041,0.981782 /) -XCGA_LKT(34,9,1:6)=(/ 0.732280,0.729603,0.730483,0.721320,0.653150,0.405533 /) -XEXT_COEFF_550_LKT(34,9)=2139.800000 !rg=0.146163 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,10,1:6)=(/ 1734.000000,1866.000000,1838.500000,1477.700000,698.970000,143.730000 /) -XPIZA_LKT(34,10,1:6)=(/ 0.938564,0.962023,0.974328,0.992347,0.992873,0.986482 /) -XCGA_LKT(34,10,1:6)=(/ 0.743493,0.730503,0.729210,0.725683,0.694290,0.491907 /) -XEXT_COEFF_550_LKT(34,10)=1843.600000 !rg=0.146163 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,11,1:6)=(/ 1410.800000,1525.200000,1542.400000,1343.500000,774.580000,197.310000 /) -XPIZA_LKT(34,11,1:6)=(/ 0.929013,0.954612,0.969783,0.991321,0.993247,0.989408 /) -XCGA_LKT(34,11,1:6)=(/ 0.753613,0.734110,0.729337,0.724650,0.722097,0.568593 /) -XEXT_COEFF_550_LKT(34,11)=1544.800000 !rg=0.146163 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,12,1:6)=(/ 1158.200000,1238.500000,1281.400000,1187.500000,800.210000,256.590000 /) -XPIZA_LKT(34,12,1:6)=(/ 0.916957,0.946520,0.964043,0.990010,0.993187,0.991286 /) -XCGA_LKT(34,12,1:6)=(/ 0.766127,0.740147,0.730693,0.725977,0.737237,0.630143 /) -XEXT_COEFF_550_LKT(34,12)=1286.200000 !rg=0.146163 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,13,1:6)=(/ 946.350000,1012.800000,1051.000000,1024.100000,770.930000,315.130000 /) -XPIZA_LKT(34,13,1:6)=(/ 0.903309,0.936170,0.957411,0.988155,0.992688,0.992456 /) -XCGA_LKT(34,13,1:6)=(/ 0.775703,0.749317,0.733683,0.726070,0.741600,0.677890 /) -XEXT_COEFF_550_LKT(34,13)=1051.400000 !rg=0.146163 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,14,1:6)=(/ 777.210000,823.330000,865.250000,860.220000,704.370000,362.970000 /) -XPIZA_LKT(34,14,1:6)=(/ 0.888103,0.925396,0.948996,0.985772,0.991771,0.993091 /) -XCGA_LKT(34,14,1:6)=(/ 0.790067,0.756430,0.739783,0.725597,0.739367,0.711620 /) -XEXT_COEFF_550_LKT(34,14)=859.430000 !rg=0.146163 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,15,1:6)=(/ 634.670000,668.850000,704.950000,716.890000,628.090000,390.490000 /) -XPIZA_LKT(34,15,1:6)=(/ 0.872445,0.913933,0.940099,0.983731,0.990581,0.993273 /) -XCGA_LKT(34,15,1:6)=(/ 0.801607,0.771033,0.745417,0.732203,0.739180,0.732530 /) -XEXT_COEFF_550_LKT(34,15)=705.480000 !rg=0.146163 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,16,1:6)=(/ 520.060000,546.650000,571.440000,592.410000,551.150000,390.830000 /) -XPIZA_LKT(34,16,1:6)=(/ 0.859198,0.899914,0.930907,0.980132,0.989126,0.993016 /) -XCGA_LKT(34,16,1:6)=(/ 0.812873,0.781893,0.757300,0.733870,0.742350,0.741427 /) -XEXT_COEFF_550_LKT(34,16)=573.350000 !rg=0.146163 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,17,1:6)=(/ 428.610000,447.330000,468.950000,487.220000,468.920000,365.580000 /) -XPIZA_LKT(34,17,1:6)=(/ 0.845541,0.883470,0.918526,0.976262,0.987217,0.992290 /) -XCGA_LKT(34,17,1:6)=(/ 0.823987,0.790893,0.766537,0.736680,0.743253,0.739863 /) -XEXT_COEFF_550_LKT(34,17)=464.970000 !rg=0.146163 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,18,1:6)=(/ 351.800000,365.330000,382.230000,397.560000,397.020000,328.130000 /) -XPIZA_LKT(34,18,1:6)=(/ 0.832817,0.868835,0.905410,0.972678,0.984674,0.991201 /) -XCGA_LKT(34,18,1:6)=(/ 0.832667,0.805253,0.774710,0.748023,0.744433,0.735677 /) -XEXT_COEFF_550_LKT(34,18)=382.190000 !rg=0.146163 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,19,1:6)=(/ 289.690000,299.840000,310.710000,326.610000,330.770000,291.800000 /) -XPIZA_LKT(34,19,1:6)=(/ 0.822287,0.855818,0.890792,0.967074,0.982086,0.989936 /) -XCGA_LKT(34,19,1:6)=(/ 0.841170,0.815557,0.788913,0.753860,0.750360,0.736917 /) -XEXT_COEFF_550_LKT(34,19)=311.790000 !rg=0.146163 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(34,20,1:6)=(/ 238.770000,246.350000,255.590000,266.940000,273.760000,255.730000 /) -XPIZA_LKT(34,20,1:6)=(/ 0.812061,0.842637,0.874955,0.961206,0.979131,0.988332 /) -XCGA_LKT(34,20,1:6)=(/ 0.849113,0.823490,0.799660,0.759410,0.755320,0.740200 /) -XEXT_COEFF_550_LKT(34,20)=253.540000 !rg=0.146163 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,1,1:6)=(/ 7695.500000,4847.200000,1948.700000,475.750000,53.387000,4.495500 /) -XPIZA_LKT(35,1,1:6)=(/ 0.984488,0.985601,0.979269,0.984413,0.940806,0.689118 /) -XCGA_LKT(35,1,1:6)=(/ 0.782563,0.740233,0.624567,0.253913,0.077270,0.019180 /) -XEXT_COEFF_550_LKT(35,1)=2011.500000 !rg=0.158347 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,2,1:6)=(/ 7084.000000,4865.300000,2127.900000,541.430000,65.603000,5.308100 /) -XPIZA_LKT(35,2,1:6)=(/ 0.983280,0.985850,0.981083,0.985919,0.950989,0.735080 /) -XCGA_LKT(35,2,1:6)=(/ 0.775093,0.740543,0.627007,0.321267,0.097910,0.024340 /) -XEXT_COEFF_550_LKT(35,2)=2179.500000 !rg=0.158347 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,3,1:6)=(/ 6121.900000,4839.000000,2360.400000,676.610000,92.391000,7.275200 /) -XPIZA_LKT(35,3,1:6)=(/ 0.980560,0.985594,0.982684,0.988033,0.964079,0.804230 /) -XCGA_LKT(35,3,1:6)=(/ 0.759010,0.749360,0.655287,0.433153,0.147363,0.036980 /) -XEXT_COEFF_550_LKT(35,3)=2408.400000 !rg=0.158347 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,4,1:6)=(/ 5086.000000,4607.300000,2591.600000,874.670000,137.430000,11.339000 /) -XPIZA_LKT(35,4,1:6)=(/ 0.976520,0.984638,0.983781,0.990080,0.974731,0.871745 /) -XCGA_LKT(35,4,1:6)=(/ 0.740763,0.753540,0.688757,0.531713,0.238520,0.062620 /) -XEXT_COEFF_550_LKT(35,4)=2636.000000 !rg=0.158347 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,5,1:6)=(/ 4188.300000,4164.000000,2733.500000,1100.700000,204.350000,18.940000 /) -XPIZA_LKT(35,5,1:6)=(/ 0.971454,0.982764,0.984156,0.991593,0.981948,0.920867 /) -XCGA_LKT(35,5,1:6)=(/ 0.728390,0.750710,0.714003,0.604743,0.355743,0.104223 /) -XEXT_COEFF_550_LKT(35,5)=2771.100000 !rg=0.158347 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,6,1:6)=(/ 3447.800000,3614.500000,2729.300000,1315.100000,293.530000,31.510000 /) -XPIZA_LKT(35,6,1:6)=(/ 0.965663,0.979917,0.983686,0.992552,0.986524,0.950546 /) -XCGA_LKT(35,6,1:6)=(/ 0.722173,0.743943,0.728367,0.657040,0.464323,0.162393 /) -XEXT_COEFF_550_LKT(35,6)=2757.700000 !rg=0.158347 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,7,1:6)=(/ 2829.200000,3052.100000,2575.000000,1482.300000,402.970000,50.630000 /) -XPIZA_LKT(35,7,1:6)=(/ 0.959131,0.976093,0.982295,0.993052,0.989450,0.967691 /) -XCGA_LKT(35,7,1:6)=(/ 0.723527,0.736833,0.733453,0.693160,0.552830,0.242237 /) -XEXT_COEFF_550_LKT(35,7)=2594.700000 !rg=0.158347 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,8,1:6)=(/ 2334.600000,2533.000000,2319.200000,1563.500000,522.610000,78.056000 /) -XPIZA_LKT(35,8,1:6)=(/ 0.951510,0.971305,0.979955,0.993126,0.991295,0.977730 /) -XCGA_LKT(35,8,1:6)=(/ 0.728617,0.731443,0.732713,0.714933,0.620213,0.343283 /) -XEXT_COEFF_550_LKT(35,8)=2331.700000 !rg=0.158347 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,9,1:6)=(/ 1917.900000,2085.700000,2024.300000,1542.700000,640.290000,116.640000 /) -XPIZA_LKT(35,9,1:6)=(/ 0.942296,0.965123,0.976695,0.992782,0.992447,0.984005 /) -XCGA_LKT(35,9,1:6)=(/ 0.737977,0.729027,0.730960,0.724903,0.671063,0.441807 /) -XEXT_COEFF_550_LKT(35,9)=2028.000000 !rg=0.158347 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,10,1:6)=(/ 1573.800000,1713.100000,1718.300000,1437.200000,736.600000,164.430000 /) -XPIZA_LKT(35,10,1:6)=(/ 0.933126,0.958210,0.972578,0.991998,0.993080,0.987829 /) -XCGA_LKT(35,10,1:6)=(/ 0.745093,0.731043,0.729637,0.726327,0.706867,0.522933 /) -XEXT_COEFF_550_LKT(35,10)=1719.600000 !rg=0.158347 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,11,1:6)=(/ 1292.900000,1392.300000,1433.000000,1287.100000,793.360000,221.410000 /) -XPIZA_LKT(35,11,1:6)=(/ 0.922646,0.950673,0.967226,0.990881,0.993281,0.990286 /) -XCGA_LKT(35,11,1:6)=(/ 0.759463,0.735193,0.728887,0.726253,0.729620,0.595410 /) -XEXT_COEFF_550_LKT(35,11)=1433.100000 !rg=0.158347 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,12,1:6)=(/ 1056.400000,1137.400000,1181.200000,1127.100000,795.860000,281.260000 /) -XPIZA_LKT(35,12,1:6)=(/ 0.910404,0.941466,0.961390,0.989320,0.993046,0.991831 /) -XCGA_LKT(35,12,1:6)=(/ 0.768727,0.743907,0.731610,0.726457,0.740170,0.650720 /) -XEXT_COEFF_550_LKT(35,12)=1181.300000 !rg=0.158347 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,13,1:6)=(/ 866.790000,922.940000,970.190000,955.270000,748.540000,336.720000 /) -XPIZA_LKT(35,13,1:6)=(/ 0.896567,0.931300,0.953617,0.987231,0.992364,0.992764 /) -XCGA_LKT(35,13,1:6)=(/ 0.783703,0.750600,0.735867,0.725930,0.741070,0.692970 /) -XEXT_COEFF_550_LKT(35,13)=964.520000 !rg=0.158347 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,14,1:6)=(/ 707.880000,751.600000,791.320000,799.940000,674.730000,377.490000 /) -XPIZA_LKT(35,14,1:6)=(/ 0.881127,0.920022,0.945052,0.984973,0.991349,0.993212 /) -XCGA_LKT(35,14,1:6)=(/ 0.794700,0.764420,0.740357,0.729943,0.739590,0.721590 /) -XEXT_COEFF_550_LKT(35,14)=790.460000 !rg=0.158347 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,15,1:6)=(/ 579.850000,612.050000,643.520000,662.520000,599.030000,394.090000 /) -XPIZA_LKT(35,15,1:6)=(/ 0.866902,0.908130,0.936446,0.982292,0.990076,0.993222 /) -XCGA_LKT(35,15,1:6)=(/ 0.807560,0.775740,0.751977,0.732047,0.740950,0.737410 /) -XEXT_COEFF_550_LKT(35,15)=644.860000 !rg=0.158347 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,16,1:6)=(/ 478.060000,500.410000,525.090000,545.680000,517.570000,383.120000 /) -XPIZA_LKT(35,16,1:6)=(/ 0.852000,0.892288,0.925351,0.978531,0.988439,0.992772 /) -XCGA_LKT(35,16,1:6)=(/ 0.818987,0.784837,0.760637,0.734287,0.743183,0.741577 /) -XEXT_COEFF_550_LKT(35,16)=523.760000 !rg=0.158347 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,17,1:6)=(/ 391.700000,409.780000,428.680000,448.370000,438.000000,350.810000 /) -XPIZA_LKT(35,17,1:6)=(/ 0.839961,0.876477,0.912591,0.974054,0.986216,0.991900 /) -XCGA_LKT(35,17,1:6)=(/ 0.827340,0.798440,0.768470,0.742173,0.743073,0.738500 /) -XEXT_COEFF_550_LKT(35,17)=427.190000 !rg=0.158347 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,18,1:6)=(/ 322.150000,335.180000,349.030000,365.200000,370.410000,313.500000 /) -XPIZA_LKT(35,18,1:6)=(/ 0.828300,0.862985,0.899267,0.970386,0.983047,0.990690 /) -XCGA_LKT(35,18,1:6)=(/ 0.837440,0.810370,0.782753,0.750337,0.746910,0.735530 /) -XEXT_COEFF_550_LKT(35,18)=349.890000 !rg=0.158347 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,19,1:6)=(/ 266.450000,275.090000,285.880000,299.680000,305.080000,277.660000 /) -XPIZA_LKT(35,19,1:6)=(/ 0.816859,0.849322,0.883536,0.964348,0.980750,0.989288 /) -XCGA_LKT(35,19,1:6)=(/ 0.845593,0.818510,0.793643,0.754863,0.752253,0.738123 /) -XEXT_COEFF_550_LKT(35,19)=285.110000 !rg=0.158347 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(35,20,1:6)=(/ 218.970000,225.910000,234.150000,244.810000,253.090000,239.760000 /) -XPIZA_LKT(35,20,1:6)=(/ 0.807614,0.837418,0.868340,0.957940,0.976631,0.987573 /) -XCGA_LKT(35,20,1:6)=(/ 0.851753,0.829300,0.802337,0.766007,0.754050,0.740803 /) -XEXT_COEFF_550_LKT(35,20)=233.450000 !rg=0.158347 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,1,1:6)=(/ 7035.200000,5081.100000,2273.300000,563.570000,66.610000,5.345200 /) -XPIZA_LKT(36,1,1:6)=(/ 0.983319,0.986285,0.981515,0.986402,0.951495,0.736600 /) -XCGA_LKT(36,1,1:6)=(/ 0.777573,0.755030,0.643170,0.303900,0.090677,0.022490 /) -XEXT_COEFF_550_LKT(36,1)=2333.600000 !rg=0.171546 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,2,1:6)=(/ 6427.000000,5010.600000,2372.900000,634.760000,81.572000,6.375300 /) -XPIZA_LKT(36,2,1:6)=(/ 0.981449,0.986052,0.982623,0.987502,0.959655,0.777587 /) -XCGA_LKT(36,2,1:6)=(/ 0.767047,0.754780,0.647943,0.379377,0.114923,0.028533 /) -XEXT_COEFF_550_LKT(36,2)=2422.600000 !rg=0.171546 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,3,1:6)=(/ 5456.900000,4870.700000,2566.900000,786.840000,113.370000,8.863200 /) -XPIZA_LKT(36,3,1:6)=(/ 0.978101,0.985496,0.983685,0.989247,0.969988,0.837666 /) -XCGA_LKT(36,3,1:6)=(/ 0.748080,0.758990,0.677207,0.484063,0.172590,0.043323 /) -XEXT_COEFF_550_LKT(36,3)=2614.600000 !rg=0.171546 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,4,1:6)=(/ 4511.900000,4511.600000,2744.400000,994.070000,165.110000,13.958000 /) -XPIZA_LKT(36,4,1:6)=(/ 0.973501,0.984133,0.984352,0.990926,0.978375,0.894465 /) -XCGA_LKT(36,4,1:6)=(/ 0.730613,0.757993,0.705723,0.567467,0.274220,0.073233 /) -XEXT_COEFF_550_LKT(36,4)=2787.200000 !rg=0.171546 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,5,1:6)=(/ 3725.600000,3975.500000,2810.900000,1215.900000,240.400000,23.307000 /) -XPIZA_LKT(36,5,1:6)=(/ 0.968020,0.981780,0.984314,0.992139,0.984170,0.934656 /) -XCGA_LKT(36,5,1:6)=(/ 0.720350,0.751290,0.725210,0.629900,0.394327,0.121670 /) -XEXT_COEFF_550_LKT(36,5)=2845.400000 !rg=0.171546 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,6,1:6)=(/ 3086.700000,3389.000000,2725.500000,1411.200000,338.140000,38.337000 /) -XPIZA_LKT(36,6,1:6)=(/ 0.961927,0.978356,0.983427,0.992868,0.987917,0.958554 /) -XCGA_LKT(36,6,1:6)=(/ 0.719233,0.741783,0.734603,0.674690,0.498987,0.189277 /) -XEXT_COEFF_550_LKT(36,6)=2749.400000 !rg=0.171546 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,7,1:6)=(/ 2547.300000,2823.700000,2506.700000,1543.900000,453.250000,60.692000 /) -XPIZA_LKT(36,7,1:6)=(/ 0.955233,0.973978,0.981606,0.993179,0.990327,0.972389 /) -XCGA_LKT(36,7,1:6)=(/ 0.723353,0.733897,0.736193,0.704710,0.580423,0.279923 /) -XEXT_COEFF_550_LKT(36,7)=2520.700000 !rg=0.171546 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,8,1:6)=(/ 2107.700000,2332.100000,2215.500000,1580.900000,573.870000,92.561000 /) -XPIZA_LKT(36,8,1:6)=(/ 0.946860,0.968493,0.978856,0.993075,0.991852,0.980666 /) -XCGA_LKT(36,8,1:6)=(/ 0.729603,0.729383,0.734047,0.721303,0.641793,0.383740 /) -XEXT_COEFF_550_LKT(36,8)=2223.100000 !rg=0.171546 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,9,1:6)=(/ 1734.000000,1905.800000,1902.100000,1518.700000,685.550000,135.280000 /) -XPIZA_LKT(36,9,1:6)=(/ 0.938171,0.962753,0.975194,0.992553,0.992777,0.985806 /) -XCGA_LKT(36,9,1:6)=(/ 0.741387,0.730683,0.731600,0.727473,0.686780,0.474543 /) -XEXT_COEFF_550_LKT(36,9)=1909.200000 !rg=0.171546 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,10,1:6)=(/ 1436.000000,1560.000000,1601.100000,1386.300000,767.380000,186.940000 /) -XPIZA_LKT(36,10,1:6)=(/ 0.927391,0.954746,0.970214,0.991637,0.993223,0.988959 /) -XCGA_LKT(36,10,1:6)=(/ 0.752603,0.731020,0.729077,0.727490,0.717290,0.553660 /) -XEXT_COEFF_550_LKT(36,10)=1597.000000 !rg=0.171546 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,11,1:6)=(/ 1176.000000,1274.900000,1323.800000,1229.500000,802.940000,245.640000 /) -XPIZA_LKT(36,11,1:6)=(/ 0.916931,0.946104,0.964801,0.990353,0.993246,0.991001 /) -XCGA_LKT(36,11,1:6)=(/ 0.761530,0.738813,0.729693,0.727310,0.735083,0.618660 /) -XEXT_COEFF_550_LKT(36,11)=1322.900000 !rg=0.171546 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,12,1:6)=(/ 966.800000,1035.100000,1089.700000,1058.300000,783.610000,304.970000 /) -XPIZA_LKT(36,12,1:6)=(/ 0.903737,0.937013,0.957778,0.988642,0.992831,0.992280 /) -XCGA_LKT(36,12,1:6)=(/ 0.776950,0.745000,0.732753,0.727593,0.741490,0.669127 /) -XEXT_COEFF_550_LKT(36,12)=1083.300000 !rg=0.171546 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,13,1:6)=(/ 788.950000,842.490000,888.930000,889.810000,721.810000,355.810000 /) -XPIZA_LKT(36,13,1:6)=(/ 0.889768,0.926061,0.949862,0.986404,0.992009,0.993007 /) -XCGA_LKT(36,13,1:6)=(/ 0.788037,0.758080,0.736517,0.728463,0.741027,0.705717 /) -XEXT_COEFF_550_LKT(36,13)=887.760000 !rg=0.171546 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,14,1:6)=(/ 645.420000,685.130000,724.570000,740.900000,646.110000,387.610000 /) -XPIZA_LKT(36,14,1:6)=(/ 0.874851,0.914917,0.941180,0.984097,0.990865,0.993270 /) -XCGA_LKT(36,14,1:6)=(/ 0.802477,0.769090,0.746657,0.730773,0.740150,0.729107 /) -XEXT_COEFF_550_LKT(36,14)=723.920000 !rg=0.171546 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,15,1:6)=(/ 533.130000,560.060000,589.310000,610.710000,567.600000,393.060000 /) -XPIZA_LKT(36,15,1:6)=(/ 0.860102,0.901355,0.931883,0.980632,0.989465,0.993091 /) -XCGA_LKT(36,15,1:6)=(/ 0.813533,0.779093,0.755253,0.732133,0.742437,0.740107 /) -XEXT_COEFF_550_LKT(36,15)=591.300000 !rg=0.171546 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,16,1:6)=(/ 437.590000,458.780000,480.690000,503.550000,484.300000,371.920000 /) -XPIZA_LKT(36,16,1:6)=(/ 0.846047,0.885059,0.919460,0.976296,0.987662,0.992465 /) -XCGA_LKT(36,16,1:6)=(/ 0.822080,0.792217,0.763017,0.737757,0.743567,0.740960 /) -XEXT_COEFF_550_LKT(36,16)=478.440000 !rg=0.171546 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,17,1:6)=(/ 358.850000,374.490000,392.710000,409.640000,410.030000,335.970000 /) -XPIZA_LKT(36,17,1:6)=(/ 0.833858,0.869545,0.906301,0.972535,0.984815,0.991427 /) -XCGA_LKT(36,17,1:6)=(/ 0.833967,0.803407,0.775757,0.745523,0.745107,0.736730 /) -XEXT_COEFF_550_LKT(36,17)=391.790000 !rg=0.171546 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,18,1:6)=(/ 296.560000,307.520000,319.890000,335.530000,340.650000,298.880000 /) -XPIZA_LKT(36,18,1:6)=(/ 0.823392,0.856638,0.892479,0.967557,0.982400,0.990166 /) -XCGA_LKT(36,18,1:6)=(/ 0.841807,0.813760,0.787713,0.751443,0.749370,0.736383 /) -XEXT_COEFF_550_LKT(36,18)=321.040000 !rg=0.171546 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,19,1:6)=(/ 244.390000,252.660000,262.000000,275.370000,282.390000,262.650000 /) -XPIZA_LKT(36,19,1:6)=(/ 0.812269,0.843567,0.876071,0.961115,0.979562,0.988692 /) -XCGA_LKT(36,19,1:6)=(/ 0.848397,0.824583,0.796617,0.760083,0.753273,0.740260 /) -XEXT_COEFF_550_LKT(36,19)=261.100000 !rg=0.171546 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(36,20,1:6)=(/ 201.060000,207.380000,214.590000,223.480000,234.010000,224.770000 /) -XPIZA_LKT(36,20,1:6)=(/ 0.802173,0.831316,0.862351,0.954974,0.975028,0.986187 /) -XCGA_LKT(36,20,1:6)=(/ 0.856147,0.833640,0.809093,0.770477,0.758077,0.741150 /) -XEXT_COEFF_550_LKT(36,20)=214.450000 !rg=0.171546 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,1,1:6)=(/ 6328.200000,5103.300000,2531.500000,657.200000,83.045000,6.423100 /) -XPIZA_LKT(37,1,1:6)=(/ 0.980862,0.986430,0.983468,0.987902,0.960145,0.778928 /) -XCGA_LKT(37,1,1:6)=(/ 0.768640,0.758550,0.645757,0.364793,0.106493,0.026373 /) -XEXT_COEFF_550_LKT(37,1)=2573.900000 !rg=0.185845 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,2,1:6)=(/ 5659.500000,5074.700000,2591.300000,739.400000,101.110000,7.728200 /) -XPIZA_LKT(37,2,1:6)=(/ 0.978824,0.986055,0.983822,0.988764,0.966628,0.814759 /) -XCGA_LKT(37,2,1:6)=(/ 0.753113,0.765107,0.667277,0.442953,0.135037,0.033450 /) -XEXT_COEFF_550_LKT(37,2)=2638.900000 !rg=0.185845 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,3,1:6)=(/ 4768.400000,4819.500000,2752.800000,908.450000,138.160000,10.869000 /) -XPIZA_LKT(37,3,1:6)=(/ 0.974728,0.985168,0.984461,0.990261,0.974717,0.866081 /) -XCGA_LKT(37,3,1:6)=(/ 0.731870,0.765590,0.697123,0.531117,0.202100,0.050747 /) -XEXT_COEFF_550_LKT(37,3)=2799.300000 !rg=0.185845 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,4,1:6)=(/ 3970.000000,4343.800000,2867.800000,1118.400000,196.930000,17.226000 /) -XPIZA_LKT(37,4,1:6)=(/ 0.969596,0.983368,0.984738,0.991633,0.981323,0.913245 /) -XCGA_LKT(37,4,1:6)=(/ 0.717043,0.759967,0.720460,0.599433,0.313213,0.085600 /) -XEXT_COEFF_550_LKT(37,4)=2908.000000 !rg=0.185845 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,5,1:6)=(/ 3306.200000,3741.400000,2852.700000,1328.600000,280.820000,28.618000 /) -XPIZA_LKT(37,5,1:6)=(/ 0.964148,0.980474,0.984295,0.992586,0.986000,0.945834 /) -XCGA_LKT(37,5,1:6)=(/ 0.714377,0.749547,0.734403,0.652357,0.433257,0.141893 /) -XEXT_COEFF_550_LKT(37,5)=2883.000000 !rg=0.185845 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,6,1:6)=(/ 2775.700000,3136.400000,2689.000000,1497.200000,386.140000,46.406000 /) -XPIZA_LKT(37,6,1:6)=(/ 0.957214,0.976628,0.982967,0.993110,0.989071,0.965021 /) -XCGA_LKT(37,6,1:6)=(/ 0.716670,0.739587,0.739013,0.690103,0.531510,0.219937 /) -XEXT_COEFF_550_LKT(37,6)=2708.700000 !rg=0.185845 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,7,1:6)=(/ 2307.300000,2588.600000,2416.000000,1589.400000,505.610000,72.490000 /) -XPIZA_LKT(37,7,1:6)=(/ 0.950211,0.971711,0.980695,0.993238,0.991062,0.976262 /) -XCGA_LKT(37,7,1:6)=(/ 0.724123,0.731890,0.737463,0.714283,0.606163,0.319613 /) -XEXT_COEFF_550_LKT(37,7)=2427.500000 !rg=0.185845 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,8,1:6)=(/ 1916.200000,2127.500000,2101.300000,1580.400000,624.340000,108.930000 /) -XPIZA_LKT(37,8,1:6)=(/ 0.941420,0.965620,0.977490,0.992963,0.992304,0.983083 /) -XCGA_LKT(37,8,1:6)=(/ 0.734467,0.728130,0.733930,0.726210,0.661207,0.420557 /) -XEXT_COEFF_550_LKT(37,8)=2105.000000 !rg=0.185845 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,9,1:6)=(/ 1570.900000,1737.800000,1777.200000,1481.800000,726.450000,155.390000 /) -XPIZA_LKT(37,9,1:6)=(/ 0.933951,0.959269,0.973458,0.992255,0.993021,0.987272 /) -XCGA_LKT(37,9,1:6)=(/ 0.745880,0.729663,0.731630,0.728863,0.700580,0.506277 /) -XEXT_COEFF_550_LKT(37,9)=1778.300000 !rg=0.185845 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,10,1:6)=(/ 1300.900000,1420.400000,1479.600000,1332.200000,790.860000,210.730000 /) -XPIZA_LKT(37,10,1:6)=(/ 0.922504,0.951682,0.967899,0.991201,0.993292,0.989912 /) -XCGA_LKT(37,10,1:6)=(/ 0.757257,0.735827,0.728817,0.728710,0.725930,0.581700 /) -XEXT_COEFF_550_LKT(37,10)=1481.900000 !rg=0.185845 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,11,1:6)=(/ 1071.600000,1157.600000,1224.000000,1164.200000,803.730000,270.380000 /) -XPIZA_LKT(37,11,1:6)=(/ 0.910827,0.942350,0.961518,0.989754,0.993141,0.991593 /) -XCGA_LKT(37,11,1:6)=(/ 0.771133,0.740577,0.731077,0.728467,0.739020,0.640113 /) -XEXT_COEFF_550_LKT(37,11)=1217.500000 !rg=0.185845 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,12,1:6)=(/ 879.280000,942.650000,998.030000,989.790000,764.190000,327.320000 /) -XPIZA_LKT(37,12,1:6)=(/ 0.897560,0.932402,0.954416,0.987843,0.992567,0.992626 /) -XCGA_LKT(37,12,1:6)=(/ 0.781833,0.752397,0.733003,0.728580,0.742297,0.685190 /) -XEXT_COEFF_550_LKT(37,12)=997.490000 !rg=0.185845 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,13,1:6)=(/ 718.570000,766.760000,813.910000,825.780000,694.180000,371.850000 /) -XPIZA_LKT(37,13,1:6)=(/ 0.883193,0.921271,0.946025,0.985569,0.991583,0.993161 /) -XCGA_LKT(37,13,1:6)=(/ 0.796610,0.762553,0.741730,0.728930,0.740717,0.716547 /) -XEXT_COEFF_550_LKT(37,13)=811.560000 !rg=0.185845 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,14,1:6)=(/ 593.780000,625.490000,661.290000,683.830000,616.140000,393.570000 /) -XPIZA_LKT(37,14,1:6)=(/ 0.867750,0.909383,0.937386,0.982882,0.990327,0.993250 /) -XCGA_LKT(37,14,1:6)=(/ 0.807947,0.773190,0.749687,0.731010,0.741150,0.734947 /) -XEXT_COEFF_550_LKT(37,14)=663.980000 !rg=0.185845 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,15,1:6)=(/ 488.730000,514.090000,539.030000,565.590000,535.090000,387.370000 /) -XPIZA_LKT(37,15,1:6)=(/ 0.853028,0.893968,0.926699,0.978805,0.988828,0.992890 /) -XCGA_LKT(37,15,1:6)=(/ 0.816577,0.785780,0.757903,0.734877,0.743690,0.741373 /) -XEXT_COEFF_550_LKT(37,15)=538.390000 !rg=0.185845 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,16,1:6)=(/ 401.240000,418.210000,440.670000,459.830000,452.810000,358.650000 /) -XPIZA_LKT(37,16,1:6)=(/ 0.840078,0.878407,0.913824,0.975235,0.986511,0.992069 /) -XCGA_LKT(37,16,1:6)=(/ 0.828943,0.796183,0.769513,0.740197,0.743930,0.739047 /) -XEXT_COEFF_550_LKT(37,16)=437.540000 !rg=0.185845 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,17,1:6)=(/ 330.350000,342.370000,358.380000,375.270000,379.820000,320.550000 /) -XPIZA_LKT(37,17,1:6)=(/ 0.828436,0.864327,0.900177,0.971001,0.984373,0.990953 /) -XCGA_LKT(37,17,1:6)=(/ 0.838203,0.808733,0.780357,0.748017,0.747340,0.736260 /) -XEXT_COEFF_550_LKT(37,17)=359.290000 !rg=0.185845 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,18,1:6)=(/ 272.480000,282.500000,293.130000,308.850000,315.280000,284.710000 /) -XPIZA_LKT(37,18,1:6)=(/ 0.817498,0.850142,0.885178,0.964926,0.981144,0.989626 /) -XCGA_LKT(37,18,1:6)=(/ 0.844407,0.819593,0.791183,0.755907,0.750743,0.738693 /) -XEXT_COEFF_550_LKT(37,18)=292.630000 !rg=0.185845 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,19,1:6)=(/ 224.640000,231.010000,240.400000,250.610000,261.170000,247.140000 /) -XPIZA_LKT(37,19,1:6)=(/ 0.807713,0.838363,0.869760,0.959222,0.977478,0.987796 /) -XCGA_LKT(37,19,1:6)=(/ 0.852793,0.828040,0.803293,0.763807,0.755300,0.741120 /) -XEXT_COEFF_550_LKT(37,19)=239.500000 !rg=0.185845 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(37,20,1:6)=(/ 185.320000,189.940000,196.550000,204.670000,214.080000,208.830000 /) -XPIZA_LKT(37,20,1:6)=(/ 0.797945,0.827278,0.855922,0.952060,0.974053,0.985797 /) -XCGA_LKT(37,20,1:6)=(/ 0.859117,0.837570,0.813753,0.773967,0.761157,0.743277 /) -XEXT_COEFF_550_LKT(37,20)=196.800000 !rg=0.185845 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,1,1:6)=(/ 5417.500000,5197.800000,2682.800000,757.760000,103.290000,7.790100 /) -XPIZA_LKT(38,1,1:6)=(/ 0.977965,0.986179,0.984664,0.989019,0.967117,0.815926 /) -XCGA_LKT(38,1,1:6)=(/ 0.747317,0.768917,0.656273,0.436650,0.125223,0.030920 /) -XEXT_COEFF_550_LKT(38,1)=2716.100000 !rg=0.201336 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,2,1:6)=(/ 4837.300000,5050.200000,2785.700000,859.310000,124.700000,9.441800 /) -XPIZA_LKT(38,2,1:6)=(/ 0.975075,0.985826,0.984688,0.989813,0.972217,0.846707 /) -XCGA_LKT(38,2,1:6)=(/ 0.732047,0.772660,0.689233,0.506293,0.158887,0.039207 /) -XEXT_COEFF_550_LKT(38,2)=2833.100000 !rg=0.201336 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,3,1:6)=(/ 4079.400000,4681.000000,2911.900000,1039.800000,167.050000,13.398000 /) -XPIZA_LKT(38,3,1:6)=(/ 0.970585,0.984571,0.985028,0.991120,0.978497,0.889917 /) -XCGA_LKT(38,3,1:6)=(/ 0.713590,0.769067,0.715263,0.572253,0.236470,0.059430 /) -XEXT_COEFF_550_LKT(38,3)=2956.500000 !rg=0.201336 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,4,1:6)=(/ 3452.800000,4112.100000,2955.900000,1244.500000,233.160000,21.280000 /) -XPIZA_LKT(38,4,1:6)=(/ 0.965331,0.982259,0.984941,0.992222,0.983719,0.928635 /) -XCGA_LKT(38,4,1:6)=(/ 0.706100,0.759073,0.732990,0.627643,0.354943,0.100000 /) -XEXT_COEFF_550_LKT(38,4)=2992.500000 !rg=0.201336 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,5,1:6)=(/ 2942.000000,3471.000000,2856.000000,1435.600000,325.570000,35.017000 /) -XPIZA_LKT(38,5,1:6)=(/ 0.959373,0.978873,0.984088,0.992946,0.987512,0.954867 /) -XCGA_LKT(38,5,1:6)=(/ 0.707527,0.746670,0.741550,0.672277,0.471467,0.165237 /) -XEXT_COEFF_550_LKT(38,5)=2882.000000 !rg=0.201336 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,6,1:6)=(/ 2476.400000,2882.000000,2619.700000,1570.200000,437.230000,55.911000 /) -XPIZA_LKT(38,6,1:6)=(/ 0.952871,0.974356,0.982350,0.993279,0.990032,0.970278 /) -XCGA_LKT(38,6,1:6)=(/ 0.715647,0.735750,0.742220,0.703503,0.561983,0.254110 /) -XEXT_COEFF_550_LKT(38,6)=2636.200000 !rg=0.201336 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,7,1:6)=(/ 2075.200000,2368.400000,2304.500000,1617.300000,558.530000,86.205000 /) -XPIZA_LKT(38,7,1:6)=(/ 0.945222,0.968723,0.979642,0.993229,0.991673,0.979467 /) -XCGA_LKT(38,7,1:6)=(/ 0.724897,0.728957,0.738560,0.722180,0.629640,0.358817 /) -XEXT_COEFF_550_LKT(38,7)=2313.000000 !rg=0.201336 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,8,1:6)=(/ 1727.600000,1938.700000,1971.200000,1564.400000,672.420000,126.870000 /) -XPIZA_LKT(38,8,1:6)=(/ 0.937216,0.962623,0.976020,0.992773,0.992674,0.985047 /) -XCGA_LKT(38,8,1:6)=(/ 0.737780,0.728653,0.734233,0.729790,0.678443,0.454363 /) -XEXT_COEFF_550_LKT(38,8)=1977.000000 !rg=0.201336 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,9,1:6)=(/ 1436.700000,1579.200000,1649.100000,1434.200000,761.370000,177.340000 /) -XPIZA_LKT(38,9,1:6)=(/ 0.927949,0.955610,0.971322,0.991922,0.993200,0.988496 /) -XCGA_LKT(38,9,1:6)=(/ 0.751593,0.729953,0.730237,0.730593,0.712337,0.537727 /) -XEXT_COEFF_550_LKT(38,9)=1651.800000 !rg=0.201336 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,10,1:6)=(/ 1180.600000,1291.100000,1365.400000,1272.000000,805.410000,234.910000 /) -XPIZA_LKT(38,10,1:6)=(/ 0.918199,0.947742,0.965811,0.990693,0.993296,0.990693 /) -XCGA_LKT(38,10,1:6)=(/ 0.764370,0.737243,0.730913,0.729180,0.732643,0.606173 /) -XEXT_COEFF_550_LKT(38,10)=1364.800000 !rg=0.201336 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,11,1:6)=(/ 975.700000,1050.800000,1119.300000,1096.500000,795.690000,294.690000 /) -XPIZA_LKT(38,11,1:6)=(/ 0.905188,0.938991,0.958855,0.989120,0.992976,0.992088 /) -XCGA_LKT(38,11,1:6)=(/ 0.777093,0.747013,0.731223,0.729380,0.741570,0.659603 /) -XEXT_COEFF_550_LKT(38,11)=1120.900000 !rg=0.201336 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,12,1:6)=(/ 800.300000,857.890000,914.120000,920.240000,740.870000,347.800000 /) -XPIZA_LKT(38,12,1:6)=(/ 0.891624,0.927925,0.951341,0.987017,0.992221,0.992903 /) -XCGA_LKT(38,12,1:6)=(/ 0.789910,0.756530,0.738137,0.728070,0.742180,0.699023 /) -XEXT_COEFF_550_LKT(38,12)=912.590000 !rg=0.201336 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,13,1:6)=(/ 660.860000,698.890000,742.290000,765.650000,664.150000,384.050000 /) -XPIZA_LKT(38,13,1:6)=(/ 0.875582,0.916324,0.942550,0.984524,0.991157,0.993253 /) -XCGA_LKT(38,13,1:6)=(/ 0.802260,0.766953,0.744463,0.729873,0.741377,0.725213 /) -XEXT_COEFF_550_LKT(38,13)=745.250000 !rg=0.201336 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,14,1:6)=(/ 544.520000,574.420000,604.000000,632.580000,585.390000,394.590000 /) -XPIZA_LKT(38,14,1:6)=(/ 0.860179,0.902277,0.933135,0.981100,0.989807,0.993158 /) -XCGA_LKT(38,14,1:6)=(/ 0.811257,0.779437,0.752750,0.732180,0.743087,0.738587 /) -XEXT_COEFF_550_LKT(38,14)=603.980000 !rg=0.201336 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,15,1:6)=(/ 448.360000,468.940000,495.210000,517.910000,501.410000,378.080000 /) -XPIZA_LKT(38,15,1:6)=(/ 0.846631,0.886994,0.920848,0.977727,0.987968,0.992607 /) -XCGA_LKT(38,15,1:6)=(/ 0.823367,0.788873,0.763510,0.735480,0.743767,0.740967 /) -XEXT_COEFF_550_LKT(38,15)=490.820000 !rg=0.201336 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,16,1:6)=(/ 367.960000,381.590000,401.480000,420.670000,421.950000,343.530000 /) -XPIZA_LKT(38,16,1:6)=(/ 0.834317,0.872002,0.908330,0.973944,0.985521,0.991655 /) -XCGA_LKT(38,16,1:6)=(/ 0.833780,0.804050,0.772897,0.745423,0.744053,0.737873 /) -XEXT_COEFF_550_LKT(38,16)=402.330000 !rg=0.201336 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,17,1:6)=(/ 303.780000,314.780000,327.290000,346.050000,351.600000,306.280000 /) -XPIZA_LKT(38,17,1:6)=(/ 0.822976,0.857890,0.894295,0.968324,0.983379,0.990435 /) -XCGA_LKT(38,17,1:6)=(/ 0.840997,0.814450,0.785680,0.751663,0.750223,0.737127 /) -XEXT_COEFF_550_LKT(38,17)=327.360000 !rg=0.201336 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,18,1:6)=(/ 250.650000,258.630000,269.370000,281.650000,291.970000,270.260000 /) -XPIZA_LKT(38,18,1:6)=(/ 0.812853,0.844604,0.877675,0.962986,0.979816,0.988903 /) -XCGA_LKT(38,18,1:6)=(/ 0.848997,0.822783,0.797477,0.757437,0.752633,0.739773 /) -XEXT_COEFF_550_LKT(38,18)=267.150000 !rg=0.201336 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,19,1:6)=(/ 206.430000,211.710000,219.480000,228.610000,240.180000,230.800000 /) -XPIZA_LKT(38,19,1:6)=(/ 0.802956,0.832888,0.863968,0.956719,0.976310,0.986923 /) -XCGA_LKT(38,19,1:6)=(/ 0.856237,0.834227,0.807113,0.770163,0.756160,0.740860 /) -XEXT_COEFF_550_LKT(38,19)=220.070000 !rg=0.201336 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(38,20,1:6)=(/ 170.410000,174.670000,179.840000,188.190000,196.350000,195.100000 /) -XPIZA_LKT(38,20,1:6)=(/ 0.793013,0.822004,0.851272,0.948015,0.972246,0.984962 /) -XCGA_LKT(38,20,1:6)=(/ 0.861180,0.842040,0.818360,0.778647,0.765717,0.746967 /) -XEXT_COEFF_550_LKT(38,20)=179.750000 !rg=0.201336 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,1,1:6)=(/ 4519.100000,5192.000000,2823.400000,873.110000,127.930000,9.522700 /) -XPIZA_LKT(39,1,1:6)=(/ 0.973137,0.986170,0.985078,0.989893,0.972716,0.847713 /) -XCGA_LKT(39,1,1:6)=(/ 0.721267,0.781630,0.688190,0.514497,0.147510,0.036250 /) -XEXT_COEFF_550_LKT(39,1)=2873.500000 !rg=0.218119 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,2,1:6)=(/ 4009.500000,4928.600000,2962.000000,997.490000,152.670000,11.610000 /) -XPIZA_LKT(39,2,1:6)=(/ 0.969949,0.985324,0.985298,0.990736,0.976676,0.873765 /) -XCGA_LKT(39,2,1:6)=(/ 0.703360,0.777287,0.712743,0.561683,0.187290,0.045953 /) -XEXT_COEFF_550_LKT(39,2)=3009.700000 !rg=0.218119 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,3,1:6)=(/ 3477.600000,4456.200000,3038.000000,1177.600000,200.220000,16.575000 /) -XPIZA_LKT(39,3,1:6)=(/ 0.965214,0.983649,0.985399,0.991847,0.981521,0.909692 /) -XCGA_LKT(39,3,1:6)=(/ 0.692357,0.769267,0.731343,0.606840,0.276077,0.069590 /) -XEXT_COEFF_550_LKT(39,3)=3079.700000 !rg=0.218119 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,4,1:6)=(/ 3024.100000,3821.800000,3003.300000,1368.900000,274.050000,26.274000 /) -XPIZA_LKT(39,4,1:6)=(/ 0.960283,0.980810,0.984954,0.992708,0.985677,0.941161 /) -XCGA_LKT(39,4,1:6)=(/ 0.696130,0.755637,0.743250,0.652413,0.398420,0.116740 /) -XEXT_COEFF_550_LKT(39,4)=3035.500000 !rg=0.218119 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,5,1:6)=(/ 2603.900000,3184.400000,2819.600000,1533.100000,374.380000,42.662000 /) -XPIZA_LKT(39,5,1:6)=(/ 0.954568,0.976752,0.983692,0.993226,0.988766,0.962165 /) -XCGA_LKT(39,5,1:6)=(/ 0.705393,0.741177,0.746823,0.689763,0.508117,0.191960 /) -XEXT_COEFF_550_LKT(39,5)=2840.700000 !rg=0.218119 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,6,1:6)=(/ 2219.000000,2617.500000,2524.100000,1627.300000,490.900000,67.075000 /) -XPIZA_LKT(39,6,1:6)=(/ 0.949053,0.971881,0.981475,0.993379,0.990837,0.974582 /) -XCGA_LKT(39,6,1:6)=(/ 0.719957,0.731150,0.743770,0.714867,0.590427,0.290720 /) -XEXT_COEFF_550_LKT(39,6)=2534.300000 !rg=0.218119 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,7,1:6)=(/ 1874.900000,2144.500000,2180.300000,1626.600000,611.320000,101.780000 /) -XPIZA_LKT(39,7,1:6)=(/ 0.940472,0.965847,0.978288,0.993156,0.992174,0.982099 /) -XCGA_LKT(39,7,1:6)=(/ 0.732393,0.726453,0.738093,0.728413,0.650920,0.395793 /) -XEXT_COEFF_550_LKT(39,7)=2183.500000 !rg=0.218119 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,8,1:6)=(/ 1560.300000,1755.300000,1838.500000,1532.500000,716.810000,146.400000 /) -XPIZA_LKT(39,8,1:6)=(/ 0.933378,0.959374,0.974159,0.992523,0.992960,0.986648 /) -XCGA_LKT(39,8,1:6)=(/ 0.745500,0.727413,0.733417,0.732183,0.693707,0.487113 /) -XEXT_COEFF_550_LKT(39,8)=1837.900000 !rg=0.218119 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,9,1:6)=(/ 1305.100000,1442.100000,1521.700000,1380.900000,789.370000,200.790000 /) -XPIZA_LKT(39,9,1:6)=(/ 0.921832,0.951007,0.969053,0.991485,0.993305,0.989527 /) -XCGA_LKT(39,9,1:6)=(/ 0.753873,0.732007,0.729940,0.731310,0.722197,0.566923 /) -XEXT_COEFF_550_LKT(39,9)=1520.800000 !rg=0.218119 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,10,1:6)=(/ 1082.900000,1173.100000,1254.400000,1206.700000,811.220000,259.670000 /) -XPIZA_LKT(39,10,1:6)=(/ 0.911527,0.943478,0.963158,0.990118,0.993233,0.991338 /) -XCGA_LKT(39,10,1:6)=(/ 0.770527,0.739267,0.730600,0.730530,0.737730,0.628617 /) -XEXT_COEFF_550_LKT(39,10)=1257.800000 !rg=0.218119 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,11,1:6)=(/ 890.140000,959.710000,1022.800000,1026.300000,780.880000,317.770000 /) -XPIZA_LKT(39,11,1:6)=(/ 0.899172,0.933650,0.956402,0.988245,0.992734,0.992475 /) -XCGA_LKT(39,11,1:6)=(/ 0.782223,0.750027,0.734590,0.728477,0.742930,0.676707 /) -XEXT_COEFF_550_LKT(39,11)=1024.400000 !rg=0.218119 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,12,1:6)=(/ 735.950000,781.680000,833.950000,854.670000,713.310000,365.320000 /) -XPIZA_LKT(39,12,1:6)=(/ 0.883769,0.922810,0.947867,0.986033,0.991845,0.993095 /) -XCGA_LKT(39,12,1:6)=(/ 0.795967,0.760213,0.739927,0.728590,0.742203,0.710767 /) -XEXT_COEFF_550_LKT(39,12)=837.220000 !rg=0.218119 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,13,1:6)=(/ 605.890000,641.590000,677.720000,709.420000,634.700000,392.160000 /) -XPIZA_LKT(39,13,1:6)=(/ 0.867541,0.909685,0.938739,0.982944,0.990665,0.993265 /) -XCGA_LKT(39,13,1:6)=(/ 0.805643,0.773033,0.747600,0.730513,0.742723,0.731870 /) -XEXT_COEFF_550_LKT(39,13)=677.730000 !rg=0.218119 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,14,1:6)=(/ 499.740000,524.290000,555.220000,581.520000,552.870000,391.210000 /) -XPIZA_LKT(39,14,1:6)=(/ 0.853661,0.895359,0.927346,0.979673,0.989096,0.992990 /) -XCGA_LKT(39,14,1:6)=(/ 0.818500,0.782030,0.757640,0.731820,0.743697,0.740637 /) -XEXT_COEFF_550_LKT(39,14)=549.900000 !rg=0.218119 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,15,1:6)=(/ 410.590000,428.090000,451.230000,473.470000,467.940000,365.590000 /) -XPIZA_LKT(39,15,1:6)=(/ 0.839989,0.879672,0.915588,0.976394,0.986989,0.992278 /) -XCGA_LKT(39,15,1:6)=(/ 0.827977,0.797673,0.765593,0.741607,0.743000,0.740267 /) -XEXT_COEFF_550_LKT(39,15)=451.080000 !rg=0.218119 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,16,1:6)=(/ 338.110000,350.980000,365.760000,387.290000,393.130000,328.850000 /) -XPIZA_LKT(39,16,1:6)=(/ 0.828986,0.865170,0.902981,0.971433,0.984479,0.991191 /) -XCGA_LKT(39,16,1:6)=(/ 0.837350,0.809100,0.780490,0.746867,0.747693,0.737383 /) -XEXT_COEFF_550_LKT(39,16)=367.240000 !rg=0.218119 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,17,1:6)=(/ 279.300000,288.550000,300.790000,316.530000,324.610000,292.210000 /) -XPIZA_LKT(39,17,1:6)=(/ 0.817719,0.851111,0.886779,0.965834,0.981961,0.989852 /) -XCGA_LKT(39,17,1:6)=(/ 0.846047,0.817340,0.791477,0.751700,0.750827,0.738050 /) -XEXT_COEFF_550_LKT(39,17)=298.460000 !rg=0.218119 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,18,1:6)=(/ 229.930000,237.000000,246.140000,257.240000,269.370000,254.170000 /) -XPIZA_LKT(39,18,1:6)=(/ 0.807232,0.838762,0.871503,0.960318,0.978135,0.988240 /) -XCGA_LKT(39,18,1:6)=(/ 0.852203,0.829410,0.800510,0.765157,0.752097,0.741130 /) -XEXT_COEFF_550_LKT(39,18)=245.800000 !rg=0.218119 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,19,1:6)=(/ 189.960000,194.970000,200.640000,210.800000,221.120000,215.510000 /) -XPIZA_LKT(39,19,1:6)=(/ 0.798421,0.827426,0.858157,0.952875,0.974386,0.986039 /) -XCGA_LKT(39,19,1:6)=(/ 0.858617,0.838363,0.814083,0.773300,0.760793,0.744197 /) -XEXT_COEFF_550_LKT(39,19)=201.510000 !rg=0.218119 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(39,20,1:6)=(/ 156.990000,160.620000,165.320000,172.440000,180.330000,181.720000 /) -XPIZA_LKT(39,20,1:6)=(/ 0.789013,0.816667,0.845377,0.944353,0.969958,0.983881 /) -XCGA_LKT(39,20,1:6)=(/ 0.864487,0.844490,0.823560,0.779707,0.768553,0.748413 /) -XEXT_COEFF_550_LKT(39,20)=164.470000 !rg=0.218119 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,1,1:6)=(/ 3571.600000,4970.700000,3055.000000,1018.600000,157.400000,11.717000 /) -XPIZA_LKT(40,1,1:6)=(/ 0.966341,0.985433,0.985377,0.990703,0.977191,0.874630 /) -XCGA_LKT(40,1,1:6)=(/ 0.677150,0.784697,0.728597,0.584770,0.174190,0.042497 /) -XEXT_COEFF_550_LKT(40,1)=3120.700000 !rg=0.236301 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,2,1:6)=(/ 3277.900000,4704.800000,3114.100000,1151.200000,185.160000,14.350000 /) -XPIZA_LKT(40,2,1:6)=(/ 0.963035,0.984485,0.985727,0.991573,0.980216,0.896401 /) -XCGA_LKT(40,2,1:6)=(/ 0.669207,0.778233,0.733803,0.603440,0.221230,0.053860 /) -XEXT_COEFF_550_LKT(40,2)=3159.800000 !rg=0.236301 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,3,1:6)=(/ 2945.300000,4152.000000,3124.300000,1317.000000,237.890000,20.553000 /) -XPIZA_LKT(40,3,1:6)=(/ 0.959099,0.982314,0.985577,0.992460,0.983946,0.925949 /) -XCGA_LKT(40,3,1:6)=(/ 0.672113,0.765927,0.744923,0.635633,0.320887,0.081483 /) -XEXT_COEFF_550_LKT(40,3)=3162.100000 !rg=0.236301 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,4,1:6)=(/ 2645.600000,3494.300000,3006.000000,1487.600000,319.730000,32.373000 /) -XPIZA_LKT(40,4,1:6)=(/ 0.954981,0.978876,0.984767,0.993103,0.987285,0.951306 /) -XCGA_LKT(40,4,1:6)=(/ 0.688960,0.749540,0.751163,0.674150,0.442340,0.136170 /) -XEXT_COEFF_550_LKT(40,4)=3033.100000 !rg=0.236301 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,5,1:6)=(/ 2331.600000,2878.500000,2745.600000,1617.700000,427.010000,51.734000 /) -XPIZA_LKT(40,5,1:6)=(/ 0.949306,0.974327,0.983049,0.993433,0.989809,0.968072 /) -XCGA_LKT(40,5,1:6)=(/ 0.707380,0.735097,0.749940,0.705003,0.542803,0.222073 /) -XEXT_COEFF_550_LKT(40,5)=2760.700000 !rg=0.236301 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,6,1:6)=(/ 2000.700000,2365.700000,2401.100000,1666.100000,545.960000,80.063000 /) -XPIZA_LKT(40,6,1:6)=(/ 0.943770,0.969026,0.980394,0.993412,0.991506,0.978115 /) -XCGA_LKT(40,6,1:6)=(/ 0.722107,0.727307,0.743917,0.724380,0.616493,0.328087 /) -XEXT_COEFF_550_LKT(40,6)=2410.600000 !rg=0.236301 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,7,1:6)=(/ 1691.500000,1938.500000,2038.300000,1617.800000,662.450000,119.060000 /) -XPIZA_LKT(40,7,1:6)=(/ 0.936031,0.962927,0.976739,0.993011,0.992588,0.984242 /) -XCGA_LKT(40,7,1:6)=(/ 0.737117,0.725817,0.737203,0.733243,0.669980,0.430727 /) -XEXT_COEFF_550_LKT(40,7)=2044.200000 !rg=0.236301 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,8,1:6)=(/ 1425.200000,1588.600000,1698.900000,1488.100000,755.990000,167.810000 /) -XPIZA_LKT(40,8,1:6)=(/ 0.927237,0.955810,0.972097,0.992217,0.993176,0.987983 /) -XCGA_LKT(40,8,1:6)=(/ 0.750703,0.727727,0.731617,0.734337,0.706950,0.519493 /) -XEXT_COEFF_550_LKT(40,8)=1702.800000 !rg=0.236301 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,9,1:6)=(/ 1190.700000,1304.400000,1404.500000,1317.500000,808.960000,224.910000 /) -XPIZA_LKT(40,9,1:6)=(/ 0.915584,0.946962,0.966056,0.991030,0.993347,0.990377 /) -XCGA_LKT(40,9,1:6)=(/ 0.763920,0.732653,0.729467,0.732427,0.730227,0.592727 /) -XEXT_COEFF_550_LKT(40,9)=1398.100000 !rg=0.236301 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,10,1:6)=(/ 988.070000,1073.300000,1147.500000,1138.700000,808.290000,284.470000 /) -XPIZA_LKT(40,10,1:6)=(/ 0.904598,0.937936,0.960135,0.989353,0.993104,0.991880 /) -XCGA_LKT(40,10,1:6)=(/ 0.773497,0.743707,0.730820,0.730087,0.741400,0.649233 /) -XEXT_COEFF_550_LKT(40,10)=1146.300000 !rg=0.236301 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,11,1:6)=(/ 817.830000,874.190000,937.620000,953.890000,759.470000,339.470000 /) -XPIZA_LKT(40,11,1:6)=(/ 0.891389,0.927856,0.952455,0.987350,0.992440,0.992786 /) -XCGA_LKT(40,11,1:6)=(/ 0.789747,0.752547,0.735573,0.728407,0.743450,0.691663 /) -XEXT_COEFF_550_LKT(40,11)=937.270000 !rg=0.236301 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,12,1:6)=(/ 673.900000,717.220000,760.800000,795.030000,684.920000,379.580000 /) -XPIZA_LKT(40,12,1:6)=(/ 0.875662,0.916253,0.944024,0.984587,0.991424,0.993219 /) -XCGA_LKT(40,12,1:6)=(/ 0.799327,0.766363,0.742150,0.729220,0.742960,0.720600 /) -XEXT_COEFF_550_LKT(40,12)=760.660000 !rg=0.236301 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,13,1:6)=(/ 555.810000,585.200000,622.040000,651.600000,604.300000,395.500000 /) -XPIZA_LKT(40,13,1:6)=(/ 0.861153,0.903082,0.933351,0.981542,0.990048,0.993210 /) -XCGA_LKT(40,13,1:6)=(/ 0.813370,0.775380,0.751740,0.729350,0.743163,0.736627 /) -XEXT_COEFF_550_LKT(40,13)=616.350000 !rg=0.236301 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,14,1:6)=(/ 456.490000,479.160000,506.020000,533.630000,518.210000,383.600000 /) -XPIZA_LKT(40,14,1:6)=(/ 0.847554,0.887891,0.922095,0.978131,0.988369,0.992759 /) -XCGA_LKT(40,14,1:6)=(/ 0.822620,0.790830,0.759207,0.737497,0.744057,0.741373 /) -XEXT_COEFF_550_LKT(40,14)=504.940000 !rg=0.236301 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,15,1:6)=(/ 375.710000,392.270000,411.520000,434.450000,437.480000,352.000000 /) -XPIZA_LKT(40,15,1:6)=(/ 0.834887,0.873212,0.910089,0.974397,0.985686,0.991867 /) -XCGA_LKT(40,15,1:6)=(/ 0.833477,0.803313,0.774047,0.743580,0.744657,0.738930 /) -XEXT_COEFF_550_LKT(40,15)=412.370000 !rg=0.236301 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,16,1:6)=(/ 310.540000,322.030000,336.120000,355.020000,362.890000,314.000000 /) -XPIZA_LKT(40,16,1:6)=(/ 0.822788,0.857813,0.895705,0.968720,0.983348,0.990702 /) -XCGA_LKT(40,16,1:6)=(/ 0.842180,0.812280,0.785270,0.747563,0.749190,0.737410 /) -XEXT_COEFF_550_LKT(40,16)=335.600000 !rg=0.236301 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,17,1:6)=(/ 255.830000,264.680000,275.240000,290.270000,300.720000,277.250000 /) -XPIZA_LKT(40,17,1:6)=(/ 0.813000,0.845064,0.879186,0.962815,0.980085,0.989302 /) -XCGA_LKT(40,17,1:6)=(/ 0.848773,0.823820,0.794263,0.758087,0.750270,0.740597 /) -XEXT_COEFF_550_LKT(40,17)=274.330000 !rg=0.236301 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,18,1:6)=(/ 210.940000,217.560000,225.080000,235.630000,248.700000,238.730000 /) -XPIZA_LKT(40,18,1:6)=(/ 0.802973,0.833395,0.864939,0.957354,0.975765,0.986966 /) -XCGA_LKT(40,18,1:6)=(/ 0.856143,0.834063,0.808253,0.769153,0.755377,0.741500 /) -XEXT_COEFF_550_LKT(40,18)=225.240000 !rg=0.236301 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,19,1:6)=(/ 174.810000,179.080000,184.700000,193.230000,201.890000,200.660000 /) -XPIZA_LKT(40,19,1:6)=(/ 0.793548,0.821861,0.852025,0.948766,0.972398,0.985330 /) -XCGA_LKT(40,19,1:6)=(/ 0.861863,0.840910,0.818673,0.774780,0.764360,0.746123 /) -XEXT_COEFF_550_LKT(40,19)=184.540000 !rg=0.236301 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(40,20,1:6)=(/ 144.110000,147.460000,151.770000,158.140000,166.240000,168.820000 /) -XPIZA_LKT(40,20,1:6)=(/ 0.784604,0.811720,0.839350,0.940455,0.966755,0.982084 /) -XCGA_LKT(40,20,1:6)=(/ 0.866417,0.848907,0.826240,0.786290,0.767627,0.747157 /) -XEXT_COEFF_550_LKT(40,20)=151.480000 !rg=0.236301 sigma=2.95 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET4',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET4 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET5() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET5',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(41,1,1:6)=(/ 2811.300000,4764.400000,3267.400000,1203.300000,191.860000,14.492000 /) -XPIZA_LKT(41,1,1:6)=(/ 0.956493,0.984454,0.986046,0.991591,0.980746,0.897146 /) -XCGA_LKT(41,1,1:6)=(/ 0.622593,0.782433,0.751803,0.629970,0.206360,0.049820 /) -XEXT_COEFF_550_LKT(41,1)=3310.300000 !rg=0.255998 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,2,1:6)=(/ 2670.200000,4381.100000,3226.900000,1309.800000,222.060000,17.803000 /) -XPIZA_LKT(41,2,1:6)=(/ 0.954477,0.983208,0.985997,0.992320,0.983012,0.915145 /) -XCGA_LKT(41,2,1:6)=(/ 0.630387,0.774830,0.749910,0.631720,0.261817,0.063130 /) -XEXT_COEFF_550_LKT(41,2)=3268.200000 !rg=0.255998 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,3,1:6)=(/ 2542.400000,3782.900000,3164.200000,1452.800000,280.330000,25.505000 /) -XPIZA_LKT(41,3,1:6)=(/ 0.952794,0.980453,0.985558,0.992967,0.985902,0.939216 /) -XCGA_LKT(41,3,1:6)=(/ 0.662367,0.758537,0.755677,0.660133,0.370117,0.095397 /) -XEXT_COEFF_550_LKT(41,3)=3196.900000 !rg=0.255998 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,4,1:6)=(/ 2347.200000,3142.500000,2961.800000,1596.500000,370.220000,39.751000 /) -XPIZA_LKT(41,4,1:6)=(/ 0.949773,0.976365,0.984356,0.993415,0.988615,0.959493 /) -XCGA_LKT(41,4,1:6)=(/ 0.689660,0.740133,0.756627,0.693250,0.485330,0.158643 /) -XEXT_COEFF_550_LKT(41,4)=2982.800000 !rg=0.255998 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,5,1:6)=(/ 2084.000000,2584.700000,2633.900000,1685.800000,482.840000,62.422000 /) -XPIZA_LKT(41,5,1:6)=(/ 0.944643,0.971405,0.982193,0.993568,0.990681,0.972871 /) -XCGA_LKT(41,5,1:6)=(/ 0.710640,0.728313,0.751260,0.718080,0.575103,0.255150 /) -XEXT_COEFF_550_LKT(41,5)=2646.000000 !rg=0.255998 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,6,1:6)=(/ 1805.400000,2132.900000,2259.400000,1685.200000,601.610000,94.905000 /) -XPIZA_LKT(41,6,1:6)=(/ 0.938461,0.965351,0.979035,0.993373,0.992062,0.981003 /) -XCGA_LKT(41,6,1:6)=(/ 0.726397,0.721787,0.743137,0.732007,0.640230,0.364950 /) -XEXT_COEFF_550_LKT(41,6)=2262.400000 !rg=0.255998 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,7,1:6)=(/ 1532.100000,1750.600000,1891.700000,1591.600000,710.620000,138.090000 /) -XPIZA_LKT(41,7,1:6)=(/ 0.931269,0.958879,0.974900,0.992789,0.992915,0.985994 /) -XCGA_LKT(41,7,1:6)=(/ 0.742703,0.723097,0.735643,0.736477,0.686987,0.464867 /) -XEXT_COEFF_550_LKT(41,7)=1890.900000 !rg=0.255998 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,8,1:6)=(/ 1295.900000,1444.900000,1562.300000,1434.600000,788.770000,190.870000 /) -XPIZA_LKT(41,8,1:6)=(/ 0.920894,0.951102,0.969804,0.991803,0.993320,0.989103 /) -XCGA_LKT(41,8,1:6)=(/ 0.754197,0.728737,0.730610,0.735083,0.718247,0.549903 /) -XEXT_COEFF_550_LKT(41,8)=1561.000000 !rg=0.255998 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,9,1:6)=(/ 1081.200000,1179.800000,1283.600000,1250.500000,819.850000,249.750000 /) -XPIZA_LKT(41,9,1:6)=(/ 0.910143,0.943474,0.963282,0.990482,0.993323,0.991079 /) -XCGA_LKT(41,9,1:6)=(/ 0.770223,0.739120,0.728840,0.733170,0.736570,0.616357 /) -XEXT_COEFF_550_LKT(41,9)=1284.300000 !rg=0.255998 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,10,1:6)=(/ 904.590000,973.130000,1052.400000,1062.600000,797.340000,308.270000 /) -XPIZA_LKT(41,10,1:6)=(/ 0.897556,0.932998,0.956149,0.988603,0.992906,0.992313 /) -XCGA_LKT(41,10,1:6)=(/ 0.783013,0.745057,0.731747,0.730040,0.743597,0.667477 /) -XEXT_COEFF_550_LKT(41,10)=1045.100000 !rg=0.255998 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,11,1:6)=(/ 747.230000,799.550000,854.680000,888.030000,734.240000,358.460000 /) -XPIZA_LKT(41,11,1:6)=(/ 0.883796,0.922100,0.948264,0.986025,0.992102,0.993017 /) -XCGA_LKT(41,11,1:6)=(/ 0.792763,0.759577,0.736673,0.728560,0.744267,0.704417 /) -XEXT_COEFF_550_LKT(41,11)=852.100000 !rg=0.255998 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,12,1:6)=(/ 617.990000,653.020000,698.520000,731.910000,655.310000,389.760000 /) -XPIZA_LKT(41,12,1:6)=(/ 0.868452,0.910288,0.938791,0.983435,0.990950,0.993268 /) -XCGA_LKT(41,12,1:6)=(/ 0.807607,0.768553,0.746193,0.728530,0.743487,0.728197 /) -XEXT_COEFF_550_LKT(41,12)=692.100000 !rg=0.255998 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,13,1:6)=(/ 507.480000,534.930000,567.040000,599.400000,570.830000,394.320000 /) -XPIZA_LKT(41,13,1:6)=(/ 0.854553,0.896023,0.928204,0.979937,0.989484,0.993084 /) -XCGA_LKT(41,13,1:6)=(/ 0.817443,0.784180,0.753277,0.733840,0.744783,0.739677 /) -XEXT_COEFF_550_LKT(41,13)=565.150000 !rg=0.255998 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,14,1:6)=(/ 417.690000,437.610000,462.160000,487.230000,485.170000,373.100000 /) -XPIZA_LKT(41,14,1:6)=(/ 0.841351,0.880889,0.916406,0.976774,0.987133,0.992440 /) -XCGA_LKT(41,14,1:6)=(/ 0.829713,0.796570,0.767247,0.739463,0.744030,0.740783 /) -XEXT_COEFF_550_LKT(41,14)=461.600000 !rg=0.255998 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,15,1:6)=(/ 346.000000,359.530000,376.280000,398.080000,405.120000,337.100000 /) -XPIZA_LKT(41,15,1:6)=(/ 0.829480,0.866296,0.904187,0.971979,0.985053,0.991428 /) -XCGA_LKT(41,15,1:6)=(/ 0.838380,0.807103,0.778970,0.744393,0.747160,0.737980 /) -XEXT_COEFF_550_LKT(41,15)=377.870000 !rg=0.255998 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,16,1:6)=(/ 285.440000,295.630000,307.810000,325.670000,335.170000,299.660000 /) -XPIZA_LKT(41,16,1:6)=(/ 0.817676,0.852082,0.887672,0.966365,0.982454,0.990173 /) -XCGA_LKT(41,16,1:6)=(/ 0.845250,0.819057,0.788350,0.753110,0.749483,0.739140 /) -XEXT_COEFF_550_LKT(41,16)=306.510000 !rg=0.255998 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,17,1:6)=(/ 234.830000,242.480000,252.290000,264.450000,278.100000,262.160000 /) -XPIZA_LKT(41,17,1:6)=(/ 0.807202,0.838685,0.872321,0.960164,0.978534,0.988444 /) -XCGA_LKT(41,17,1:6)=(/ 0.853633,0.828313,0.801597,0.762340,0.753190,0.741350 /) -XEXT_COEFF_550_LKT(41,17)=251.900000 !rg=0.255998 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,18,1:6)=(/ 194.440000,199.920000,206.400000,216.180000,227.060000,221.560000 /) -XPIZA_LKT(41,18,1:6)=(/ 0.798813,0.827824,0.859045,0.953770,0.974890,0.986600 /) -XCGA_LKT(41,18,1:6)=(/ 0.859407,0.837193,0.813433,0.770903,0.759537,0.743460 /) -XEXT_COEFF_550_LKT(41,18)=206.870000 !rg=0.255998 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,19,1:6)=(/ 160.650000,164.690000,169.540000,177.320000,185.700000,187.300000 /) -XPIZA_LKT(41,19,1:6)=(/ 0.788909,0.817234,0.845650,0.945100,0.970629,0.984313 /) -XCGA_LKT(41,19,1:6)=(/ 0.864150,0.845670,0.821593,0.780850,0.765890,0.747043 /) -XEXT_COEFF_550_LKT(41,19)=169.040000 !rg=0.255998 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(41,20,1:6)=(/ 132.530000,135.680000,139.310000,144.370000,152.930000,156.590000 /) -XPIZA_LKT(41,20,1:6)=(/ 0.779260,0.806302,0.834012,0.937250,0.964464,0.980727 /) -XCGA_LKT(41,20,1:6)=(/ 0.869547,0.852437,0.831930,0.790570,0.772313,0.749530 /) -XEXT_COEFF_550_LKT(41,20)=139.270000 !rg=0.255998 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,1,1:6)=(/ 2180.300000,4346.400000,3315.000000,1401.000000,231.020000,17.996000 /) -XPIZA_LKT(42,1,1:6)=(/ 0.945101,0.983221,0.986467,0.992523,0.983543,0.915795 /) -XCGA_LKT(42,1,1:6)=(/ 0.572387,0.777217,0.757143,0.645573,0.245437,0.058410 /) -XEXT_COEFF_550_LKT(42,1)=3342.500000 !rg=0.277337 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,2,1:6)=(/ 2239.100000,3969.200000,3289.200000,1459.700000,263.130000,22.142000 /) -XPIZA_LKT(42,2,1:6)=(/ 0.946306,0.981346,0.986079,0.992947,0.985209,0.930537 /) -XCGA_LKT(42,2,1:6)=(/ 0.613353,0.766527,0.761540,0.652163,0.310050,0.074003 /) -XEXT_COEFF_550_LKT(42,2)=3325.300000 !rg=0.277337 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,3,1:6)=(/ 2261.700000,3367.400000,3151.900000,1580.200000,327.930000,31.626000 /) -XPIZA_LKT(42,3,1:6)=(/ 0.946426,0.977972,0.985322,0.993375,0.987494,0.949975 /) -XCGA_LKT(42,3,1:6)=(/ 0.658803,0.747450,0.763440,0.681813,0.422033,0.111690 /) -XEXT_COEFF_550_LKT(42,3)=3178.300000 !rg=0.277337 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,4,1:6)=(/ 2120.500000,2783.900000,2870.500000,1691.300000,425.330000,48.591000 /) -XPIZA_LKT(42,4,1:6)=(/ 0.944000,0.973340,0.983687,0.993648,0.989721,0.966092 /) -XCGA_LKT(42,4,1:6)=(/ 0.693583,0.730020,0.759467,0.709990,0.526157,0.184480 /) -XEXT_COEFF_550_LKT(42,4)=2885.500000 !rg=0.277337 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,5,1:6)=(/ 1879.900000,2302.500000,2492.900000,1734.400000,540.960000,74.884000 /) -XPIZA_LKT(42,5,1:6)=(/ 0.940170,0.967808,0.981024,0.993632,0.991409,0.976773 /) -XCGA_LKT(42,5,1:6)=(/ 0.718123,0.719663,0.750647,0.729073,0.604697,0.290413 /) -XEXT_COEFF_550_LKT(42,5)=2497.600000 !rg=0.277337 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,6,1:6)=(/ 1649.000000,1906.800000,2104.100000,1683.200000,656.340000,111.580000 /) -XPIZA_LKT(42,6,1:6)=(/ 0.932151,0.961572,0.977266,0.993269,0.992522,0.983357 /) -XCGA_LKT(42,6,1:6)=(/ 0.735410,0.718837,0.740147,0.738043,0.661583,0.401180 /) -XEXT_COEFF_550_LKT(42,6)=2103.500000 !rg=0.277337 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,7,1:6)=(/ 1403.500000,1575.000000,1741.500000,1548.800000,754.260000,159.070000 /) -XPIZA_LKT(42,7,1:6)=(/ 0.924832,0.954706,0.972585,0.992514,0.993170,0.987451 /) -XCGA_LKT(42,7,1:6)=(/ 0.751093,0.722717,0.732327,0.739087,0.701910,0.498567 /) -XEXT_COEFF_550_LKT(42,7)=1740.700000 !rg=0.277337 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,8,1:6)=(/ 1186.000000,1304.000000,1434.800000,1369.100000,813.660000,214.920000 /) -XPIZA_LKT(42,8,1:6)=(/ 0.914621,0.946360,0.966797,0.991370,0.993400,0.990029 /) -XCGA_LKT(42,8,1:6)=(/ 0.764483,0.729173,0.728673,0.736197,0.727717,0.577233 /) -XEXT_COEFF_550_LKT(42,8)=1428.000000 !rg=0.277337 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,9,1:6)=(/ 983.620000,1071.600000,1169.900000,1177.200000,821.950000,274.960000 /) -XPIZA_LKT(42,9,1:6)=(/ 0.905275,0.938627,0.960727,0.989779,0.993231,0.991669 /) -XCGA_LKT(42,9,1:6)=(/ 0.777440,0.742037,0.730777,0.732377,0.741347,0.638200 /) -XEXT_COEFF_550_LKT(42,9)=1168.800000 !rg=0.277337 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,10,1:6)=(/ 823.300000,883.650000,957.870000,987.920000,779.170000,331.050000 /) -XPIZA_LKT(42,10,1:6)=(/ 0.891051,0.928223,0.952439,0.987817,0.992665,0.992660 /) -XCGA_LKT(42,10,1:6)=(/ 0.788720,0.754050,0.731993,0.730673,0.745390,0.683607 /) -XEXT_COEFF_550_LKT(42,10)=957.030000 !rg=0.277337 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,11,1:6)=(/ 683.580000,726.040000,782.420000,818.640000,706.940000,374.650000 /) -XPIZA_LKT(42,11,1:6)=(/ 0.876098,0.916850,0.943538,0.985236,0.991684,0.993174 /) -XCGA_LKT(42,11,1:6)=(/ 0.802350,0.762763,0.740673,0.728877,0.744423,0.715397 /) -XEXT_COEFF_550_LKT(42,11)=775.760000 !rg=0.277337 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,12,1:6)=(/ 563.950000,595.650000,635.370000,671.860000,623.460000,395.530000 /) -XPIZA_LKT(42,12,1:6)=(/ 0.861744,0.903843,0.934046,0.982263,0.990450,0.993250 /) -XCGA_LKT(42,12,1:6)=(/ 0.812337,0.777960,0.747240,0.732197,0.745317,0.734080 /) -XEXT_COEFF_550_LKT(42,12)=634.160000 !rg=0.277337 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,13,1:6)=(/ 464.050000,487.790000,517.710000,548.000000,537.130000,389.020000 /) -XPIZA_LKT(42,13,1:6)=(/ 0.847927,0.889100,0.922637,0.978750,0.988562,0.992880 /) -XCGA_LKT(42,13,1:6)=(/ 0.825250,0.789857,0.760770,0.735930,0.744803,0.741107 /) -XEXT_COEFF_550_LKT(42,13)=516.220000 !rg=0.277337 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,14,1:6)=(/ 384.830000,400.200000,421.220000,446.390000,449.820000,359.790000 /) -XPIZA_LKT(42,14,1:6)=(/ 0.835073,0.874512,0.911074,0.975076,0.986658,0.992085 /) -XCGA_LKT(42,14,1:6)=(/ 0.834560,0.801513,0.772117,0.741083,0.745483,0.739937 /) -XEXT_COEFF_550_LKT(42,14)=422.710000 !rg=0.277337 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,15,1:6)=(/ 317.730000,330.360000,344.270000,366.490000,375.860000,322.620000 /) -XPIZA_LKT(42,15,1:6)=(/ 0.823086,0.859001,0.897311,0.969264,0.984039,0.990959 /) -XCGA_LKT(42,15,1:6)=(/ 0.841210,0.813640,0.782590,0.748447,0.748607,0.738460 /) -XEXT_COEFF_550_LKT(42,15)=343.870000 !rg=0.277337 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,16,1:6)=(/ 261.880000,270.030000,282.240000,296.280000,310.300000,285.450000 /) -XPIZA_LKT(42,16,1:6)=(/ 0.812596,0.846163,0.880756,0.964481,0.980814,0.989531 /) -XCGA_LKT(42,16,1:6)=(/ 0.850030,0.822637,0.795673,0.756123,0.751127,0.740213 /) -XEXT_COEFF_550_LKT(42,16)=280.610000 !rg=0.277337 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,17,1:6)=(/ 216.400000,221.980000,230.490000,241.410000,254.360000,245.110000 /) -XPIZA_LKT(42,17,1:6)=(/ 0.803328,0.833903,0.865577,0.958241,0.977742,0.987783 /) -XCGA_LKT(42,17,1:6)=(/ 0.856810,0.833303,0.806387,0.766413,0.755467,0.742243 /) -XEXT_COEFF_550_LKT(42,17)=230.960000 !rg=0.277337 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,18,1:6)=(/ 178.650000,183.830000,189.390000,198.670000,208.280000,207.130000 /) -XPIZA_LKT(42,18,1:6)=(/ 0.793711,0.822153,0.852891,0.949635,0.973320,0.985575 /) -XCGA_LKT(42,18,1:6)=(/ 0.861403,0.841883,0.816977,0.775773,0.762680,0.745100 /) -XEXT_COEFF_550_LKT(42,18)=188.910000 !rg=0.277337 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,19,1:6)=(/ 147.840000,150.870000,155.730000,161.420000,171.070000,174.230000 /) -XPIZA_LKT(42,19,1:6)=(/ 0.784899,0.812382,0.840300,0.942028,0.967905,0.982905 /) -XCGA_LKT(42,19,1:6)=(/ 0.867140,0.848483,0.827520,0.784760,0.768970,0.748543 /) -XEXT_COEFF_550_LKT(42,19)=155.360000 !rg=0.277337 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(42,20,1:6)=(/ 122.190000,124.380000,127.830000,132.190000,139.430000,144.230000 /) -XPIZA_LKT(42,20,1:6)=(/ 0.775612,0.802647,0.827911,0.934921,0.962821,0.980276 /) -XCGA_LKT(42,20,1:6)=(/ 0.871590,0.855690,0.836067,0.794753,0.776167,0.752537 /) -XEXT_COEFF_550_LKT(42,20)=127.860000 !rg=0.277337 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,1,1:6)=(/ 1877.200000,3906.600000,3347.400000,1553.700000,274.070000,22.411000 /) -XPIZA_LKT(43,1,1:6)=(/ 0.934644,0.980751,0.986251,0.993304,0.985715,0.931117 /) -XCGA_LKT(43,1,1:6)=(/ 0.549373,0.768077,0.763830,0.648107,0.293150,0.068490 /) -XEXT_COEFF_550_LKT(43,1)=3395.200000 !rg=0.300455 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,2,1:6)=(/ 2023.200000,3490.400000,3295.800000,1593.800000,308.370000,27.572000 /) -XPIZA_LKT(43,2,1:6)=(/ 0.939777,0.978675,0.985942,0.993431,0.986934,0.943092 /) -XCGA_LKT(43,2,1:6)=(/ 0.616407,0.752283,0.770097,0.671743,0.366207,0.086777 /) -XEXT_COEFF_550_LKT(43,2)=3325.700000 !rg=0.300455 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,3,1:6)=(/ 2045.500000,2940.900000,3083.700000,1695.300000,381.130000,39.123000 /) -XPIZA_LKT(43,3,1:6)=(/ 0.941701,0.974552,0.984834,0.993692,0.988806,0.958661 /) -XCGA_LKT(43,3,1:6)=(/ 0.674197,0.731173,0.768123,0.701550,0.474033,0.130780 /) -XEXT_COEFF_550_LKT(43,3)=3103.000000 !rg=0.300455 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,4,1:6)=(/ 1918.700000,2450.000000,2734.200000,1768.300000,484.520000,59.067000 /) -XPIZA_LKT(43,4,1:6)=(/ 0.938855,0.969409,0.982735,0.993806,0.990645,0.971408 /) -XCGA_LKT(43,4,1:6)=(/ 0.704350,0.716783,0.759827,0.724510,0.563823,0.213883 /) -XEXT_COEFF_550_LKT(43,4)=2743.000000 !rg=0.300455 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,5,1:6)=(/ 1719.700000,2041.000000,2325.800000,1760.900000,600.350000,89.226000 /) -XPIZA_LKT(43,5,1:6)=(/ 0.934314,0.963889,0.979501,0.993625,0.992017,0.979946 /) -XCGA_LKT(43,5,1:6)=(/ 0.727390,0.713840,0.747673,0.738073,0.631523,0.327177 /) -XEXT_COEFF_550_LKT(43,5)=2328.200000 !rg=0.300455 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,6,1:6)=(/ 1494.200000,1713.000000,1934.700000,1661.500000,708.890000,130.180000 /) -XPIZA_LKT(43,6,1:6)=(/ 0.927208,0.956982,0.975324,0.993080,0.992894,0.985287 /) -XCGA_LKT(43,6,1:6)=(/ 0.740757,0.717273,0.737363,0.742320,0.680720,0.437240 /) -XEXT_COEFF_550_LKT(43,6)=1934.700000 !rg=0.300455 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,7,1:6)=(/ 1276.900000,1426.800000,1590.500000,1494.000000,792.050000,181.830000 /) -XPIZA_LKT(43,7,1:6)=(/ 0.918745,0.949582,0.970090,0.992130,0.993353,0.988670 /) -XCGA_LKT(43,7,1:6)=(/ 0.754310,0.724430,0.730217,0.740190,0.714857,0.530493 /) -XEXT_COEFF_550_LKT(43,7)=1587.600000 !rg=0.300455 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,8,1:6)=(/ 1077.000000,1181.000000,1305.400000,1298.600000,830.000000,239.890000 /) -XPIZA_LKT(43,8,1:6)=(/ 0.909379,0.941645,0.963708,0.990824,0.993416,0.990797 /) -XCGA_LKT(43,8,1:6)=(/ 0.769933,0.735607,0.727473,0.736353,0.735457,0.602377 /) -XEXT_COEFF_550_LKT(43,8)=1304.100000 !rg=0.300455 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,9,1:6)=(/ 904.460000,972.300000,1064.900000,1098.800000,815.090000,299.510000 /) -XPIZA_LKT(43,9,1:6)=(/ 0.898160,0.933335,0.957115,0.989048,0.993080,0.992148 /) -XCGA_LKT(43,9,1:6)=(/ 0.785387,0.744910,0.730157,0.732130,0.744773,0.657707 /) -XEXT_COEFF_550_LKT(43,9)=1066.500000 !rg=0.300455 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,10,1:6)=(/ 749.930000,802.810000,871.250000,914.030000,756.750000,351.500000 /) -XPIZA_LKT(43,10,1:6)=(/ 0.885022,0.923279,0.949028,0.986868,0.992345,0.992931 /) -XCGA_LKT(43,10,1:6)=(/ 0.797257,0.758980,0.737143,0.729417,0.746310,0.697503 /) -XEXT_COEFF_550_LKT(43,10)=869.620000 !rg=0.300455 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,11,1:6)=(/ 624.960000,659.040000,710.460000,753.000000,676.490000,386.910000 /) -XPIZA_LKT(43,11,1:6)=(/ 0.868927,0.911966,0.939570,0.984369,0.991260,0.993261 /) -XCGA_LKT(43,11,1:6)=(/ 0.808653,0.772203,0.742547,0.731337,0.745693,0.724070 /) -XEXT_COEFF_550_LKT(43,11)=711.260000 !rg=0.300455 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,12,1:6)=(/ 515.150000,543.040000,579.140000,615.240000,591.290000,396.850000 /) -XPIZA_LKT(43,12,1:6)=(/ 0.855316,0.897774,0.929107,0.981030,0.989766,0.993160 /) -XCGA_LKT(43,12,1:6)=(/ 0.820173,0.783880,0.755007,0.732877,0.745810,0.738147 /) -XEXT_COEFF_550_LKT(43,12)=578.200000 !rg=0.300455 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,13,1:6)=(/ 427.410000,445.380000,471.220000,501.070000,500.000000,379.740000 /) -XPIZA_LKT(43,13,1:6)=(/ 0.841424,0.882668,0.917605,0.977306,0.987932,0.992621 /) -XCGA_LKT(43,13,1:6)=(/ 0.830347,0.795563,0.765450,0.737220,0.745250,0.741507 /) -XEXT_COEFF_550_LKT(43,13)=472.670000 !rg=0.300455 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,14,1:6)=(/ 353.650000,367.840000,384.380000,411.050000,418.620000,345.810000 /) -XPIZA_LKT(43,14,1:6)=(/ 0.828608,0.866813,0.905507,0.972173,0.985760,0.991679 /) -XCGA_LKT(43,14,1:6)=(/ 0.837510,0.808170,0.776580,0.744090,0.747793,0.739610 /) -XEXT_COEFF_550_LKT(43,14)=384.220000 !rg=0.300455 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,15,1:6)=(/ 292.280000,302.160000,316.150000,333.760000,347.400000,308.310000 /) -XPIZA_LKT(43,15,1:6)=(/ 0.817943,0.852900,0.889500,0.967604,0.982728,0.990454 /) -XCGA_LKT(43,15,1:6)=(/ 0.846277,0.816910,0.789260,0.749540,0.748993,0.739160 /) -XEXT_COEFF_550_LKT(43,15)=313.440000 !rg=0.300455 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,16,1:6)=(/ 240.770000,247.150000,257.400000,269.780000,286.110000,269.320000 /) -XPIZA_LKT(43,16,1:6)=(/ 0.807548,0.839931,0.874183,0.962391,0.979330,0.988947 /) -XCGA_LKT(43,16,1:6)=(/ 0.853800,0.829677,0.799463,0.763103,0.750923,0.742220 /) -XEXT_COEFF_550_LKT(43,16)=257.840000 !rg=0.300455 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,17,1:6)=(/ 199.260000,204.310000,210.700000,221.970000,233.600000,228.830000 /) -XPIZA_LKT(43,17,1:6)=(/ 0.798536,0.828769,0.860238,0.954778,0.976089,0.987047 /) -XCGA_LKT(43,17,1:6)=(/ 0.859190,0.838053,0.812107,0.771230,0.760057,0.744533 /) -XEXT_COEFF_550_LKT(43,17)=210.940000 !rg=0.300455 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,18,1:6)=(/ 164.800000,168.610000,174.010000,181.400000,191.580000,193.510000 /) -XPIZA_LKT(43,18,1:6)=(/ 0.789680,0.817227,0.846414,0.946504,0.971198,0.984420 /) -XCGA_LKT(43,18,1:6)=(/ 0.864697,0.844847,0.822580,0.778303,0.765053,0.746660 /) -XEXT_COEFF_550_LKT(43,18)=172.540000 !rg=0.300455 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,19,1:6)=(/ 136.050000,138.480000,142.390000,147.280000,156.980000,160.990000 /) -XPIZA_LKT(43,19,1:6)=(/ 0.780310,0.807156,0.834950,0.939180,0.965943,0.981747 /) -XCGA_LKT(43,19,1:6)=(/ 0.869697,0.853153,0.830807,0.791473,0.770070,0.748030 /) -XEXT_COEFF_550_LKT(43,19)=142.730000 !rg=0.300455 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(43,20,1:6)=(/ 112.500000,114.600000,117.070000,121.430000,127.780000,133.140000 /) -XPIZA_LKT(43,20,1:6)=(/ 0.770754,0.798080,0.824010,0.931539,0.959974,0.978975 /) -XCGA_LKT(43,20,1:6)=(/ 0.873343,0.859133,0.840187,0.799423,0.781677,0.756567 /) -XEXT_COEFF_550_LKT(43,20)=117.000000 !rg=0.300455 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,1,1:6)=(/ 1776.500000,3337.000000,3400.500000,1644.800000,320.050000,27.952000 /) -XPIZA_LKT(44,1,1:6)=(/ 0.930939,0.977772,0.986187,0.993760,0.987371,0.943623 /) -XCGA_LKT(44,1,1:6)=(/ 0.581197,0.746027,0.777597,0.661043,0.351203,0.080340 /) -XEXT_COEFF_550_LKT(44,1)=3428.900000 !rg=0.3255 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,2,1:6)=(/ 1910.700000,2978.600000,3241.400000,1714.300000,358.560000,34.326000 /) -XPIZA_LKT(44,2,1:6)=(/ 0.937285,0.974874,0.985550,0.993781,0.988307,0.953277 /) -XCGA_LKT(44,2,1:6)=(/ 0.653630,0.730980,0.775920,0.694053,0.428713,0.101803 /) -XEXT_COEFF_550_LKT(44,2)=3263.700000 !rg=0.3255 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,3,1:6)=(/ 1908.100000,2513.900000,2958.600000,1794.200000,440.110000,48.203000 /) -XPIZA_LKT(44,3,1:6)=(/ 0.937548,0.970343,0.984041,0.993924,0.989903,0.965643 /) -XCGA_LKT(44,3,1:6)=(/ 0.697603,0.712327,0.769583,0.719500,0.523173,0.153153 /) -XEXT_COEFF_550_LKT(44,3)=2970.100000 !rg=0.3255 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,4,1:6)=(/ 1763.600000,2129.900000,2560.700000,1823.600000,546.920000,71.342000 /) -XPIZA_LKT(44,4,1:6)=(/ 0.933673,0.965084,0.981391,0.993889,0.991421,0.975693 /) -XCGA_LKT(44,4,1:6)=(/ 0.722103,0.705270,0.757180,0.736820,0.597793,0.246907 /) -XEXT_COEFF_550_LKT(44,4)=2562.200000 !rg=0.3255 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,5,1:6)=(/ 1566.000000,1817.600000,2140.100000,1764.000000,659.570000,105.540000 /) -XPIZA_LKT(44,5,1:6)=(/ 0.928540,0.959027,0.977664,0.993539,0.992523,0.982531 /) -XCGA_LKT(44,5,1:6)=(/ 0.734573,0.707750,0.743787,0.744997,0.655583,0.365080 /) -XEXT_COEFF_550_LKT(44,5)=2138.100000 !rg=0.3255 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,6,1:6)=(/ 1354.100000,1528.300000,1768.800000,1619.300000,757.510000,150.840000 /) -XPIZA_LKT(44,6,1:6)=(/ 0.923620,0.952854,0.972766,0.992817,0.993191,0.986887 /) -XCGA_LKT(44,6,1:6)=(/ 0.756023,0.716407,0.733073,0.745047,0.697610,0.472940 /) -XEXT_COEFF_550_LKT(44,6)=1762.100000 !rg=0.3255 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,7,1:6)=(/ 1165.300000,1281.400000,1451.200000,1424.700000,822.370000,205.870000 /) -XPIZA_LKT(44,7,1:6)=(/ 0.912761,0.945205,0.966864,0.991693,0.993472,0.989679 /) -XCGA_LKT(44,7,1:6)=(/ 0.767817,0.725733,0.727400,0.740707,0.725897,0.559737 /) -XEXT_COEFF_550_LKT(44,7)=1443.000000 !rg=0.3255 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,8,1:6)=(/ 978.280000,1066.200000,1187.200000,1219.400000,837.380000,265.490000 /) -XPIZA_LKT(44,8,1:6)=(/ 0.904681,0.937369,0.960367,0.990156,0.993365,0.991442 /) -XCGA_LKT(44,8,1:6)=(/ 0.781053,0.739447,0.728223,0.735357,0.741540,0.625697 /) -XEXT_COEFF_550_LKT(44,8)=1182.000000 !rg=0.3255 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,9,1:6)=(/ 827.220000,889.310000,967.260000,1022.100000,800.940000,323.310000 /) -XPIZA_LKT(44,9,1:6)=(/ 0.890631,0.927123,0.953335,0.987953,0.992868,0.992535 /) -XCGA_LKT(44,9,1:6)=(/ 0.788320,0.751727,0.730927,0.730500,0.747390,0.675110 /) -XEXT_COEFF_550_LKT(44,9)=965.440000 !rg=0.3255 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,10,1:6)=(/ 690.550000,731.040000,790.950000,843.440000,729.420000,369.500000 /) -XPIZA_LKT(44,10,1:6)=(/ 0.877204,0.917735,0.945064,0.985806,0.991986,0.993122 /) -XCGA_LKT(44,10,1:6)=(/ 0.804023,0.763317,0.739040,0.729277,0.747093,0.709643 /) -XEXT_COEFF_550_LKT(44,10)=794.090000 !rg=0.3255 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,11,1:6)=(/ 572.070000,603.510000,644.390000,692.150000,645.250000,395.080000 /) -XPIZA_LKT(44,11,1:6)=(/ 0.862714,0.905413,0.935991,0.982822,0.990779,0.993280 /) -XCGA_LKT(44,11,1:6)=(/ 0.814053,0.777693,0.749517,0.730210,0.746880,0.731117 /) -XEXT_COEFF_550_LKT(44,11)=646.290000 !rg=0.3255 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,12,1:6)=(/ 474.660000,495.980000,526.600000,563.710000,554.680000,393.620000 /) -XPIZA_LKT(44,12,1:6)=(/ 0.848420,0.891150,0.924460,0.979559,0.989153,0.993001 /) -XCGA_LKT(44,12,1:6)=(/ 0.825637,0.788887,0.759377,0.733833,0.746470,0.740560 /) -XEXT_COEFF_550_LKT(44,12)=528.830000 !rg=0.3255 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,13,1:6)=(/ 392.880000,409.270000,429.240000,461.110000,465.520000,368.210000 /) -XPIZA_LKT(44,13,1:6)=(/ 0.834511,0.875060,0.912681,0.974764,0.987134,0.992293 /) -XCGA_LKT(44,13,1:6)=(/ 0.833463,0.802370,0.770320,0.739693,0.746907,0.741417 /) -XEXT_COEFF_550_LKT(44,13)=429.400000 !rg=0.3255 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,14,1:6)=(/ 325.040000,336.780000,353.020000,374.880000,388.300000,331.470000 /) -XPIZA_LKT(44,14,1:6)=(/ 0.823337,0.860002,0.898244,0.970395,0.984622,0.991206 /) -XCGA_LKT(44,14,1:6)=(/ 0.843107,0.811177,0.782920,0.744063,0.748347,0.739033 /) -XEXT_COEFF_550_LKT(44,14)=349.600000 !rg=0.3255 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,15,1:6)=(/ 267.920000,276.750000,288.570000,304.210000,320.330000,293.190000 /) -XPIZA_LKT(44,15,1:6)=(/ 0.812106,0.846465,0.882428,0.965216,0.981413,0.989935 /) -XCGA_LKT(44,15,1:6)=(/ 0.849727,0.824383,0.792353,0.757497,0.748263,0.741527 /) -XEXT_COEFF_550_LKT(44,15)=288.220000 !rg=0.3255 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,16,1:6)=(/ 221.280000,227.610000,234.950000,248.210000,263.290000,253.390000 /) -XPIZA_LKT(44,16,1:6)=(/ 0.803354,0.834180,0.867764,0.958925,0.977500,0.988027 /) -XCGA_LKT(44,16,1:6)=(/ 0.856257,0.834173,0.807430,0.765987,0.754680,0.743223 /) -XEXT_COEFF_550_LKT(44,16)=235.960000 !rg=0.3255 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,17,1:6)=(/ 183.300000,187.650000,193.810000,203.260000,214.110000,213.370000 /) -XPIZA_LKT(44,17,1:6)=(/ 0.793715,0.822585,0.853987,0.950786,0.973890,0.986127 /) -XCGA_LKT(44,17,1:6)=(/ 0.862800,0.840757,0.817607,0.772000,0.762310,0.745043 /) -XEXT_COEFF_550_LKT(44,17)=192.850000 !rg=0.3255 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,18,1:6)=(/ 151.260000,154.830000,159.390000,165.720000,176.320000,179.730000 /) -XPIZA_LKT(44,18,1:6)=(/ 0.784917,0.812512,0.840893,0.942581,0.968536,0.983381 /) -XCGA_LKT(44,18,1:6)=(/ 0.866753,0.849683,0.825730,0.785773,0.764800,0.746327 /) -XEXT_COEFF_550_LKT(44,18)=159.070000 !rg=0.3255 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,19,1:6)=(/ 125.200000,127.740000,130.490000,135.840000,143.960000,149.070000 /) -XPIZA_LKT(44,19,1:6)=(/ 0.775786,0.802763,0.829407,0.935353,0.963104,0.980332 /) -XCGA_LKT(44,19,1:6)=(/ 0.871350,0.856420,0.836883,0.794973,0.775160,0.752330 /) -XEXT_COEFF_550_LKT(44,19)=131.030000 !rg=0.3255 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(44,20,1:6)=(/ 103.610000,105.310000,107.750000,111.540000,116.890000,122.450000 /) -XPIZA_LKT(44,20,1:6)=(/ 0.765966,0.792976,0.818913,0.928326,0.956673,0.977228 /) -XCGA_LKT(44,20,1:6)=(/ 0.875813,0.860943,0.844453,0.800817,0.785310,0.758157 /) -XEXT_COEFF_550_LKT(44,20)=107.500000 !rg=0.3255 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,1,1:6)=(/ 1851.500000,2776.600000,3286.000000,1738.500000,368.870000,34.873000 /) -XPIZA_LKT(45,1,1:6)=(/ 0.934500,0.972892,0.985839,0.993917,0.988617,0.953778 /) -XCGA_LKT(45,1,1:6)=(/ 0.660900,0.719943,0.784697,0.695133,0.420183,0.094297 /) -XEXT_COEFF_550_LKT(45,1)=3299.800000 !rg=0.352632 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,2,1:6)=(/ 1884.100000,2467.700000,3121.200000,1824.400000,415.450000,42.656000 /) -XPIZA_LKT(45,2,1:6)=(/ 0.937434,0.969635,0.984849,0.994030,0.989437,0.961499 /) -XCGA_LKT(45,2,1:6)=(/ 0.702643,0.701507,0.778347,0.717463,0.493017,0.119523 /) -XEXT_COEFF_550_LKT(45,2)=3134.900000 !rg=0.352632 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,3,1:6)=(/ 1780.600000,2140.200000,2779.600000,1873.000000,504.500000,59.057000 /) -XPIZA_LKT(45,3,1:6)=(/ 0.934657,0.965005,0.982879,0.994075,0.990832,0.971240 /) -XCGA_LKT(45,3,1:6)=(/ 0.721913,0.691907,0.767627,0.735340,0.567030,0.179367 /) -XEXT_COEFF_550_LKT(45,3)=2783.700000 !rg=0.352632 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,4,1:6)=(/ 1613.200000,1862.800000,2353.800000,1853.900000,611.260000,85.561000 /) -XPIZA_LKT(45,4,1:6)=(/ 0.930213,0.960228,0.979678,0.993895,0.992071,0.979152 /) -XCGA_LKT(45,4,1:6)=(/ 0.737197,0.696213,0.752100,0.746860,0.627940,0.283440 /) -XEXT_COEFF_550_LKT(45,4)=2353.400000 !rg=0.352632 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,5,1:6)=(/ 1437.800000,1607.900000,1949.400000,1742.300000,717.150000,123.940000 /) -XPIZA_LKT(45,5,1:6)=(/ 0.922665,0.954273,0.975246,0.993375,0.992937,0.984649 /) -XCGA_LKT(45,5,1:6)=(/ 0.751103,0.705217,0.737273,0.749993,0.677043,0.403827 /) -XEXT_COEFF_550_LKT(45,5)=1941.800000 !rg=0.352632 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,6,1:6)=(/ 1240.000000,1370.200000,1598.900000,1560.000000,800.780000,173.400000 /) -XPIZA_LKT(45,6,1:6)=(/ 0.917961,0.948729,0.970076,0.992466,0.993415,0.988218 /) -XCGA_LKT(45,6,1:6)=(/ 0.764693,0.719180,0.728343,0.746593,0.712427,0.507127 /) -XEXT_COEFF_550_LKT(45,6)=1599.300000 !rg=0.352632 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,7,1:6)=(/ 1060.800000,1153.300000,1310.400000,1347.500000,844.290000,231.110000 /) -XPIZA_LKT(45,7,1:6)=(/ 0.907741,0.941552,0.963742,0.991145,0.993526,0.990518 /) -XCGA_LKT(45,7,1:6)=(/ 0.775970,0.733213,0.725050,0.740427,0.735130,0.586883 /) -XEXT_COEFF_550_LKT(45,7)=1310.600000 !rg=0.352632 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,8,1:6)=(/ 900.050000,965.420000,1073.000000,1136.200000,835.360000,290.820000 /) -XPIZA_LKT(45,8,1:6)=(/ 0.897537,0.932800,0.957005,0.989404,0.993255,0.991971 /) -XCGA_LKT(45,8,1:6)=(/ 0.788170,0.744160,0.727503,0.734353,0.746230,0.646717 /) -XEXT_COEFF_550_LKT(45,8)=1075.500000 !rg=0.352632 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,9,1:6)=(/ 758.110000,806.510000,882.700000,941.390000,780.580000,345.220000 /) -XPIZA_LKT(45,9,1:6)=(/ 0.882910,0.921829,0.948468,0.987027,0.992582,0.992844 /) -XCGA_LKT(45,9,1:6)=(/ 0.798550,0.754387,0.733353,0.729263,0.748780,0.690297 /) -XEXT_COEFF_550_LKT(45,9)=874.930000 !rg=0.352632 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,10,1:6)=(/ 633.120000,670.690000,718.860000,778.600000,700.100000,383.860000 /) -XPIZA_LKT(45,10,1:6)=(/ 0.869086,0.910726,0.940735,0.984204,0.991563,0.993246 /) -XCGA_LKT(45,10,1:6)=(/ 0.807377,0.770760,0.741627,0.728850,0.748113,0.719523 /) -XEXT_COEFF_550_LKT(45,10)=718.250000 !rg=0.352632 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,11,1:6)=(/ 526.220000,552.000000,588.490000,633.320000,610.930000,398.870000 /) -XPIZA_LKT(45,11,1:6)=(/ 0.855070,0.897853,0.930609,0.981034,0.990192,0.993226 /) -XCGA_LKT(45,11,1:6)=(/ 0.821040,0.781240,0.753023,0.729697,0.747453,0.736187 /) -XEXT_COEFF_550_LKT(45,11)=589.060000 !rg=0.352632 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,12,1:6)=(/ 436.020000,455.760000,479.900000,517.950000,518.300000,386.680000 /) -XPIZA_LKT(45,12,1:6)=(/ 0.841014,0.882954,0.919377,0.977246,0.988443,0.992775 /) -XCGA_LKT(45,12,1:6)=(/ 0.828910,0.796167,0.763537,0.735673,0.747217,0.741920 /) -XEXT_COEFF_550_LKT(45,12)=479.750000 !rg=0.352632 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,13,1:6)=(/ 360.930000,374.650000,394.060000,420.800000,432.640000,354.860000 /) -XPIZA_LKT(45,13,1:6)=(/ 0.828818,0.867477,0.905935,0.972844,0.986147,0.991901 /) -XCGA_LKT(45,13,1:6)=(/ 0.839570,0.805407,0.776480,0.739483,0.747120,0.740623 /) -XEXT_COEFF_550_LKT(45,13)=390.330000 !rg=0.352632 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,14,1:6)=(/ 297.570000,308.440000,322.420000,342.470000,358.930000,316.810000 /) -XPIZA_LKT(45,14,1:6)=(/ 0.817905,0.853443,0.890851,0.967677,0.982933,0.990733 /) -XCGA_LKT(45,14,1:6)=(/ 0.846273,0.818763,0.785627,0.751073,0.747077,0.740347 /) -XEXT_COEFF_550_LKT(45,14)=321.440000 !rg=0.352632 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,15,1:6)=(/ 245.770000,253.880000,263.640000,277.970000,296.450000,278.240000 /) -XPIZA_LKT(45,15,1:6)=(/ 0.807533,0.840504,0.875467,0.962616,0.979200,0.989229 /) -XCGA_LKT(45,15,1:6)=(/ 0.854210,0.829613,0.800983,0.761427,0.750897,0.742640 /) -XEXT_COEFF_550_LKT(45,15)=263.850000 !rg=0.352632 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,16,1:6)=(/ 203.420000,209.190000,216.070000,227.620000,240.250000,235.880000 /) -XPIZA_LKT(45,16,1:6)=(/ 0.798046,0.827996,0.861121,0.954847,0.975881,0.987469 /) -XCGA_LKT(45,16,1:6)=(/ 0.860120,0.837120,0.812483,0.767083,0.758127,0.744000 /) -XEXT_COEFF_550_LKT(45,16)=216.070000 !rg=0.352632 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,17,1:6)=(/ 168.210000,172.470000,177.710000,186.380000,197.040000,199.300000 /) -XPIZA_LKT(45,17,1:6)=(/ 0.789444,0.817547,0.847343,0.946519,0.971457,0.985000 /) -XCGA_LKT(45,17,1:6)=(/ 0.864817,0.845710,0.820490,0.778763,0.761873,0.745333 /) -XEXT_COEFF_550_LKT(45,17)=177.310000 !rg=0.352632 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,18,1:6)=(/ 139.070000,142.190000,146.100000,151.830000,161.990000,166.880000 /) -XPIZA_LKT(45,18,1:6)=(/ 0.780514,0.807531,0.835380,0.939677,0.965796,0.981342 /) -XCGA_LKT(45,18,1:6)=(/ 0.869873,0.853297,0.832067,0.790767,0.769203,0.748067 /) -XEXT_COEFF_550_LKT(45,18)=145.940000 !rg=0.352632 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,19,1:6)=(/ 115.220000,117.380000,120.250000,124.750000,131.050000,137.170000 /) -XPIZA_LKT(45,19,1:6)=(/ 0.771140,0.797561,0.824278,0.931668,0.960085,0.978851 /) -XCGA_LKT(45,19,1:6)=(/ 0.873780,0.858610,0.840793,0.796423,0.780000,0.755130 /) -XEXT_COEFF_550_LKT(45,19)=120.130000 !rg=0.352632 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(45,20,1:6)=(/ 95.276000,97.053000,99.023000,102.440000,107.610000,113.370000 /) -XPIZA_LKT(45,20,1:6)=(/ 0.761329,0.788766,0.813565,0.924857,0.952594,0.974675 /) -XCGA_LKT(45,20,1:6)=(/ 0.877270,0.864313,0.846840,0.806420,0.785487,0.757603 /) -XEXT_COEFF_550_LKT(45,20)=99.013000 !rg=0.352632 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,1,1:6)=(/ 1999.000000,2192.300000,3156.500000,1887.700000,423.140000,43.460000 /) -XPIZA_LKT(46,1,1:6)=(/ 0.938500,0.965919,0.984755,0.994067,0.989579,0.961988 /) -XCGA_LKT(46,1,1:6)=(/ 0.731800,0.674110,0.783413,0.734333,0.496907,0.110773 /) -XEXT_COEFF_550_LKT(46,1)=3176.700000 !rg=0.382026 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,2,1:6)=(/ 1855.100000,2011.900000,2935.200000,1919.500000,480.980000,52.819000 /) -XPIZA_LKT(46,2,1:6)=(/ 0.936632,0.962726,0.983755,0.994208,0.990416,0.968108 /) -XCGA_LKT(46,2,1:6)=(/ 0.742310,0.667930,0.776687,0.737990,0.551957,0.140480 /) -XEXT_COEFF_550_LKT(46,2)=2939.200000 !rg=0.382026 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,3,1:6)=(/ 1659.800000,1818.500000,2554.400000,1927.600000,573.110000,71.843000 /) -XPIZA_LKT(46,3,1:6)=(/ 0.932209,0.958725,0.981236,0.994149,0.991623,0.975718 /) -XCGA_LKT(46,3,1:6)=(/ 0.744037,0.670703,0.761930,0.748650,0.604447,0.210017 /) -XEXT_COEFF_550_LKT(46,3)=2550.400000 !rg=0.382026 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,4,1:6)=(/ 1479.900000,1635.600000,2130.700000,1856.800000,675.980000,101.870000 /) -XPIZA_LKT(46,4,1:6)=(/ 0.926872,0.954691,0.977417,0.993817,0.992615,0.981953 /) -XCGA_LKT(46,4,1:6)=(/ 0.751903,0.688190,0.744400,0.754527,0.654490,0.323173 /) -XEXT_COEFF_550_LKT(46,4)=2122.000000 !rg=0.382026 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,5,1:6)=(/ 1309.300000,1434.900000,1750.700000,1697.200000,771.300000,144.530000 /) -XPIZA_LKT(46,5,1:6)=(/ 0.918802,0.949930,0.972525,0.993116,0.993272,0.986396 /) -XCGA_LKT(46,5,1:6)=(/ 0.761887,0.708317,0.730657,0.753013,0.696000,0.442683 /) -XEXT_COEFF_550_LKT(46,5)=1748.500000 !rg=0.382026 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,6,1:6)=(/ 1134.600000,1240.100000,1440.300000,1486.000000,836.940000,197.590000 /) -XPIZA_LKT(46,6,1:6)=(/ 0.911714,0.943081,0.967014,0.991992,0.993572,0.989322 /) -XCGA_LKT(46,6,1:6)=(/ 0.770210,0.721810,0.724717,0.746080,0.725193,0.539117 /) -XEXT_COEFF_550_LKT(46,6)=1435.400000 !rg=0.382026 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,7,1:6)=(/ 968.220000,1046.800000,1182.000000,1262.100000,857.020000,257.220000 /) -XPIZA_LKT(46,7,1:6)=(/ 0.902619,0.936058,0.960673,0.990436,0.993514,0.991222 /) -XCGA_LKT(46,7,1:6)=(/ 0.783093,0.737350,0.725030,0.738237,0.742653,0.612107 /) -XEXT_COEFF_550_LKT(46,7)=1179.400000 !rg=0.382026 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,8,1:6)=(/ 825.230000,883.130000,970.680000,1053.100000,825.240000,315.690000 /) -XPIZA_LKT(46,8,1:6)=(/ 0.889608,0.926532,0.953345,0.988402,0.993079,0.992402 /) -XCGA_LKT(46,8,1:6)=(/ 0.791693,0.751000,0.728517,0.731777,0.749780,0.665623 /) -XEXT_COEFF_550_LKT(46,8)=969.180000 !rg=0.382026 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,9,1:6)=(/ 692.160000,731.650000,798.240000,865.460000,754.440000,364.930000 /) -XPIZA_LKT(46,9,1:6)=(/ 0.875553,0.916918,0.944157,0.986161,0.992261,0.993071 /) -XCGA_LKT(46,9,1:6)=(/ 0.804800,0.765607,0.734143,0.730423,0.750237,0.703670 /) -XEXT_COEFF_550_LKT(46,9)=797.420000 !rg=0.382026 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,10,1:6)=(/ 581.010000,610.760000,657.470000,710.930000,668.320000,394.460000 /) -XPIZA_LKT(46,10,1:6)=(/ 0.861663,0.904539,0.934959,0.982937,0.991061,0.993301 /) -XCGA_LKT(46,10,1:6)=(/ 0.815933,0.773423,0.746303,0.727577,0.748453,0.727770 /) -XEXT_COEFF_550_LKT(46,10)=650.750000 !rg=0.382026 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,11,1:6)=(/ 482.700000,506.080000,536.090000,581.900000,574.950000,398.060000 /) -XPIZA_LKT(46,11,1:6)=(/ 0.847797,0.890785,0.924621,0.979108,0.989563,0.993108 /) -XCGA_LKT(46,11,1:6)=(/ 0.824243,0.789820,0.755743,0.732003,0.747960,0.739813 /) -XEXT_COEFF_550_LKT(46,11)=534.170000 !rg=0.382026 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,12,1:6)=(/ 400.490000,416.660000,440.290000,472.100000,482.540000,376.590000 /) -XPIZA_LKT(46,12,1:6)=(/ 0.834664,0.875485,0.912675,0.975513,0.987425,0.992476 /) -XCGA_LKT(46,12,1:6)=(/ 0.835510,0.799260,0.769777,0.735210,0.746293,0.741987 /) -XEXT_COEFF_550_LKT(46,12)=435.650000 !rg=0.382026 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,13,1:6)=(/ 330.360000,343.320000,359.720000,384.390000,401.570000,340.470000 /) -XPIZA_LKT(46,13,1:6)=(/ 0.823177,0.860499,0.898962,0.970214,0.984819,0.991497 /) -XCGA_LKT(46,13,1:6)=(/ 0.842863,0.813420,0.779000,0.745553,0.746613,0.741037 /) -XEXT_COEFF_550_LKT(46,13)=358.280000 !rg=0.382026 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,14,1:6)=(/ 273.130000,282.600000,294.900000,311.510000,331.470000,302.240000 /) -XPIZA_LKT(46,14,1:6)=(/ 0.812215,0.846453,0.883281,0.965606,0.981397,0.990230 /) -XCGA_LKT(46,14,1:6)=(/ 0.851650,0.824137,0.794257,0.755547,0.748703,0.741847 /) -XEXT_COEFF_550_LKT(46,14)=294.600000 !rg=0.382026 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,15,1:6)=(/ 226.500000,233.210000,241.440000,254.520000,270.410000,261.150000 /) -XPIZA_LKT(46,15,1:6)=(/ 0.803129,0.834621,0.868877,0.959530,0.978422,0.988613 /) -XCGA_LKT(46,15,1:6)=(/ 0.857707,0.833177,0.806673,0.763163,0.754217,0.743760 /) -XEXT_COEFF_550_LKT(46,15)=242.130000 !rg=0.382026 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,16,1:6)=(/ 187.240000,192.220000,198.350000,208.500000,220.560000,220.280000 /) -XPIZA_LKT(46,16,1:6)=(/ 0.793488,0.822868,0.854061,0.951886,0.974684,0.986520 /) -XCGA_LKT(46,16,1:6)=(/ 0.862483,0.842487,0.815637,0.773797,0.760003,0.744477 /) -XEXT_COEFF_550_LKT(46,16)=197.700000 !rg=0.382026 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,17,1:6)=(/ 154.710000,158.250000,163.070000,169.730000,181.390000,185.820000 /) -XPIZA_LKT(46,17,1:6)=(/ 0.784357,0.811871,0.841406,0.942920,0.969010,0.983540 /) -XCGA_LKT(46,17,1:6)=(/ 0.868100,0.849143,0.826733,0.783270,0.765757,0.747253 /) -XEXT_COEFF_550_LKT(46,17)=163.110000 !rg=0.382026 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,18,1:6)=(/ 128.180000,130.950000,134.110000,139.410000,147.100000,153.240000 /) -XPIZA_LKT(46,18,1:6)=(/ 0.776444,0.803116,0.829825,0.936003,0.964224,0.980834 /) -XCGA_LKT(46,18,1:6)=(/ 0.872200,0.855853,0.836660,0.792947,0.774300,0.751243 /) -XEXT_COEFF_550_LKT(46,18)=134.200000 !rg=0.382026 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,19,1:6)=(/ 106.030000,108.060000,110.470000,114.440000,119.950000,126.340000 /) -XPIZA_LKT(46,19,1:6)=(/ 0.766491,0.793581,0.818487,0.929013,0.957839,0.977706 /) -XCGA_LKT(46,19,1:6)=(/ 0.875453,0.862057,0.843490,0.802273,0.782683,0.756013 /) -XEXT_COEFF_550_LKT(46,19)=110.170000 !rg=0.382026 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(46,20,1:6)=(/ 87.758000,89.230000,91.069000,93.586000,98.702000,104.620000 /) -XPIZA_LKT(46,20,1:6)=(/ 0.755969,0.783685,0.808810,0.921959,0.949164,0.972781 /) -XCGA_LKT(46,20,1:6)=(/ 0.879540,0.866760,0.851133,0.810007,0.790503,0.761263 /) -XEXT_COEFF_550_LKT(46,20)=91.099000 !rg=0.382026 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,1,1:6)=(/ 2010.700000,1727.500000,2940.100000,2012.400000,489.250000,54.010000 /) -XPIZA_LKT(47,1,1:6)=(/ 0.940632,0.955996,0.983884,0.994355,0.990421,0.968599 /) -XCGA_LKT(47,1,1:6)=(/ 0.784223,0.620833,0.779807,0.754760,0.570850,0.130303 /) -XEXT_COEFF_550_LKT(47,1)=2932.200000 !rg=0.41387 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,2,1:6)=(/ 1763.500000,1647.700000,2687.800000,1990.200000,555.280000,65.037000 /) -XPIZA_LKT(47,2,1:6)=(/ 0.934318,0.954009,0.982135,0.994320,0.991298,0.973400 /) -XCGA_LKT(47,2,1:6)=(/ 0.766057,0.628753,0.770303,0.753537,0.598913,0.165360 /) -XEXT_COEFF_550_LKT(47,2)=2683.200000 !rg=0.41387 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,3,1:6)=(/ 1548.700000,1567.500000,2294.600000,1953.700000,643.970000,86.682000 /) -XPIZA_LKT(47,3,1:6)=(/ 0.926990,0.952435,0.978980,0.994141,0.992294,0.979298 /) -XCGA_LKT(47,3,1:6)=(/ 0.763177,0.661773,0.751890,0.759127,0.635710,0.245640 /) -XEXT_COEFF_550_LKT(47,3)=2285.900000 !rg=0.41387 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,4,1:6)=(/ 1372.900000,1450.100000,1898.700000,1830.600000,739.250000,120.390000 /) -XPIZA_LKT(47,4,1:6)=(/ 0.921018,0.949371,0.974522,0.993651,0.993064,0.984233 /) -XCGA_LKT(47,4,1:6)=(/ 0.766847,0.689223,0.733467,0.759780,0.677837,0.365433 /) -XEXT_COEFF_550_LKT(47,4)=1891.000000 !rg=0.41387 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,5,1:6)=(/ 1194.200000,1288.400000,1565.000000,1629.500000,820.280000,167.230000 /) -XPIZA_LKT(47,5,1:6)=(/ 0.915187,0.944712,0.969310,0.992749,0.993532,0.987840 /) -XCGA_LKT(47,5,1:6)=(/ 0.772897,0.710837,0.723747,0.753797,0.712663,0.480570 /) -XEXT_COEFF_550_LKT(47,5)=1555.800000 !rg=0.41387 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,6,1:6)=(/ 1046.600000,1117.900000,1295.900000,1397.100000,864.740000,223.290000 /) -XPIZA_LKT(47,6,1:6)=(/ 0.904871,0.937567,0.963042,0.991446,0.993663,0.990241 /) -XCGA_LKT(47,6,1:6)=(/ 0.782370,0.725660,0.719490,0.745163,0.736050,0.569123 /) -XEXT_COEFF_550_LKT(47,6)=1287.600000 !rg=0.41387 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,7,1:6)=(/ 892.950000,948.980000,1066.300000,1169.800000,859.930000,283.470000 /) -XPIZA_LKT(47,7,1:6)=(/ 0.895355,0.930267,0.956438,0.989675,0.993441,0.991804 /) -XCGA_LKT(47,7,1:6)=(/ 0.792710,0.741513,0.722960,0.736547,0.748567,0.635023 /) -XEXT_COEFF_550_LKT(47,7)=1064.800000 !rg=0.41387 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,8,1:6)=(/ 757.370000,802.340000,882.550000,966.720000,807.400000,339.100000 /) -XPIZA_LKT(47,8,1:6)=(/ 0.882724,0.920438,0.948425,0.987334,0.992833,0.992752 /) -XCGA_LKT(47,8,1:6)=(/ 0.802067,0.753637,0.730093,0.729807,0.752003,0.682327 /) -XEXT_COEFF_550_LKT(47,8)=874.480000 !rg=0.41387 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,9,1:6)=(/ 632.140000,667.360000,722.430000,793.110000,725.290000,381.400000 /) -XPIZA_LKT(47,9,1:6)=(/ 0.869513,0.911140,0.940429,0.984900,0.991860,0.993232 /) -XCGA_LKT(47,9,1:6)=(/ 0.812180,0.771923,0.741507,0.728633,0.751137,0.714873 /) -XEXT_COEFF_550_LKT(47,9)=722.800000 !rg=0.41387 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,10,1:6)=(/ 530.860000,556.940000,596.610000,648.420000,632.910000,400.670000 /) -XPIZA_LKT(47,10,1:6)=(/ 0.854496,0.897863,0.929802,0.981683,0.990544,0.993286 /) -XCGA_LKT(47,10,1:6)=(/ 0.820850,0.784230,0.747883,0.731107,0.749643,0.734007 /) -XEXT_COEFF_550_LKT(47,10)=595.380000 !rg=0.41387 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,11,1:6)=(/ 442.550000,461.210000,490.720000,528.490000,537.860000,393.330000 /) -XPIZA_LKT(47,11,1:6)=(/ 0.840955,0.883756,0.918662,0.977954,0.988713,0.992917 /) -XCGA_LKT(47,11,1:6)=(/ 0.831423,0.793687,0.762993,0.732903,0.747317,0.741857 /) -XEXT_COEFF_550_LKT(47,11)=486.110000 !rg=0.41387 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,12,1:6)=(/ 366.480000,381.370000,401.210000,430.610000,448.160000,364.060000 /) -XPIZA_LKT(47,12,1:6)=(/ 0.828701,0.868015,0.906408,0.973303,0.986471,0.992144 /) -XCGA_LKT(47,12,1:6)=(/ 0.839210,0.808217,0.772120,0.741827,0.745893,0.742370 /) -XEXT_COEFF_550_LKT(47,12)=400.040000 !rg=0.41387 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,13,1:6)=(/ 303.130000,314.200000,329.050000,349.230000,371.620000,326.280000 /) -XPIZA_LKT(47,13,1:6)=(/ 0.816867,0.853292,0.891548,0.968270,0.983314,0.991023 /) -XCGA_LKT(47,13,1:6)=(/ 0.848700,0.818787,0.787680,0.749860,0.747617,0.741513 /) -XEXT_COEFF_550_LKT(47,13)=328.280000 !rg=0.41387 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,14,1:6)=(/ 251.890000,258.930000,269.320000,284.470000,303.330000,286.300000 /) -XPIZA_LKT(47,14,1:6)=(/ 0.807348,0.841265,0.876136,0.963395,0.980850,0.989642 /) -XCGA_LKT(47,14,1:6)=(/ 0.855247,0.828713,0.799900,0.758347,0.751393,0.743423 /) -XEXT_COEFF_550_LKT(47,14)=269.950000 !rg=0.41387 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,15,1:6)=(/ 208.280000,214.390000,221.310000,233.870000,247.850000,244.320000 /) -XPIZA_LKT(47,15,1:6)=(/ 0.798131,0.828133,0.862282,0.955766,0.976992,0.987899 /) -XCGA_LKT(47,15,1:6)=(/ 0.860007,0.838420,0.810637,0.768133,0.756877,0.744757 /) -XEXT_COEFF_550_LKT(47,15)=220.790000 !rg=0.41387 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,16,1:6)=(/ 172.120000,176.060000,182.090000,189.720000,202.910000,205.890000 /) -XPIZA_LKT(47,16,1:6)=(/ 0.789267,0.817887,0.848190,0.948565,0.972212,0.985256 /) -XCGA_LKT(47,16,1:6)=(/ 0.865687,0.845433,0.822257,0.777270,0.762387,0.745820 /) -XEXT_COEFF_550_LKT(47,16)=181.330000 !rg=0.41387 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,17,1:6)=(/ 142.580000,145.130000,149.400000,155.030000,165.200000,171.150000 /) -XPIZA_LKT(47,17,1:6)=(/ 0.780788,0.807551,0.835140,0.940517,0.967770,0.982970 /) -XCGA_LKT(47,17,1:6)=(/ 0.870303,0.853320,0.830973,0.788460,0.769060,0.748527 /) -XEXT_COEFF_550_LKT(47,17)=149.680000 !rg=0.41387 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,18,1:6)=(/ 117.890000,120.560000,123.230000,128.070000,134.500000,141.680000 /) -XPIZA_LKT(47,18,1:6)=(/ 0.771487,0.798017,0.824873,0.932340,0.961974,0.979603 /) -XCGA_LKT(47,18,1:6)=(/ 0.873700,0.859467,0.839760,0.797483,0.779180,0.753827 /) -XEXT_COEFF_550_LKT(47,18)=122.910000 !rg=0.41387 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,19,1:6)=(/ 97.618000,99.179000,101.550000,104.540000,110.460000,116.900000 /) -XPIZA_LKT(47,19,1:6)=(/ 0.762036,0.789221,0.814052,0.926163,0.954204,0.975424 /) -XCGA_LKT(47,19,1:6)=(/ 0.877557,0.864117,0.848007,0.805700,0.786883,0.758423 /) -XEXT_COEFF_550_LKT(47,19)=101.400000 !rg=0.41387 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(47,20,1:6)=(/ 80.878000,81.917000,83.654000,85.814000,90.137000,95.603000 /) -XPIZA_LKT(47,20,1:6)=(/ 0.751746,0.779518,0.803566,0.919906,0.946309,0.971633 /) -XCGA_LKT(47,20,1:6)=(/ 0.881060,0.869403,0.854290,0.814203,0.794590,0.764193 /) -XEXT_COEFF_550_LKT(47,20)=83.687000 !rg=0.41387 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,1,1:6)=(/ 1840.200000,1338.400000,2649.700000,2039.800000,573.870000,66.800000 /) -XPIZA_LKT(48,1,1:6)=(/ 0.938109,0.944449,0.981700,0.994502,0.991297,0.973903 /) -XCGA_LKT(48,1,1:6)=(/ 0.800133,0.568417,0.772177,0.759477,0.625370,0.153577 /) -XEXT_COEFF_550_LKT(48,1)=2647.500000 !rg=0.448369 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,2,1:6)=(/ 1609.500000,1378.600000,2391.300000,2030.200000,634.820000,79.459000 /) -XPIZA_LKT(48,2,1:6)=(/ 0.926989,0.945919,0.979800,0.994354,0.992094,0.977617 /) -XCGA_LKT(48,2,1:6)=(/ 0.782857,0.612347,0.758457,0.764830,0.631980,0.195017 /) -XEXT_COEFF_550_LKT(48,2)=2377.800000 !rg=0.448369 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,3,1:6)=(/ 1418.600000,1398.600000,2015.000000,1947.600000,714.720000,103.670000 /) -XPIZA_LKT(48,3,1:6)=(/ 0.920864,0.946185,0.976021,0.994046,0.992857,0.982162 /) -XCGA_LKT(48,3,1:6)=(/ 0.767833,0.660067,0.738337,0.766633,0.662113,0.286543 /) -XEXT_COEFF_550_LKT(48,3)=2001.500000 !rg=0.448369 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,4,1:6)=(/ 1260.400000,1312.000000,1670.300000,1775.500000,799.120000,141.250000 /) -XPIZA_LKT(48,4,1:6)=(/ 0.914530,0.943470,0.971087,0.993374,0.993430,0.986098 /) -XCGA_LKT(48,4,1:6)=(/ 0.769523,0.694587,0.722577,0.762370,0.698400,0.409143 /) -XEXT_COEFF_550_LKT(48,4)=1659.700000 !rg=0.448369 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,5,1:6)=(/ 1104.300000,1163.200000,1389.900000,1541.900000,862.290000,191.920000 /) -XPIZA_LKT(48,5,1:6)=(/ 0.908762,0.939664,0.965408,0.992277,0.993723,0.989038 /) -XCGA_LKT(48,5,1:6)=(/ 0.784080,0.717203,0.715350,0.753087,0.727130,0.516770 /) -XEXT_COEFF_550_LKT(48,5)=1385.500000 !rg=0.448369 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,6,1:6)=(/ 956.470000,1019.000000,1157.300000,1301.800000,882.910000,250.130000 /) -XPIZA_LKT(48,6,1:6)=(/ 0.899391,0.931398,0.959002,0.990720,0.993691,0.991012 /) -XCGA_LKT(48,6,1:6)=(/ 0.785667,0.736020,0.717160,0.742290,0.745083,0.597007 /) -XEXT_COEFF_550_LKT(48,6)=1152.600000 !rg=0.448369 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,7,1:6)=(/ 817.990000,868.750000,959.560000,1079.000000,853.460000,309.560000 /) -XPIZA_LKT(48,7,1:6)=(/ 0.888225,0.923908,0.952074,0.988591,0.993304,0.992283 /) -XCGA_LKT(48,7,1:6)=(/ 0.795043,0.751200,0.723273,0.733083,0.753213,0.655780 /) -XEXT_COEFF_550_LKT(48,7)=955.800000 !rg=0.448369 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,8,1:6)=(/ 691.490000,731.680000,796.590000,886.410000,782.730000,360.620000 /) -XPIZA_LKT(48,8,1:6)=(/ 0.875700,0.914281,0.943440,0.986131,0.992540,0.993018 /) -XCGA_LKT(48,8,1:6)=(/ 0.806670,0.765273,0.730893,0.729307,0.753927,0.697150 /) -XEXT_COEFF_550_LKT(48,8)=793.700000 !rg=0.448369 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,9,1:6)=(/ 582.410000,609.480000,655.730000,723.300000,691.880000,394.350000 /) -XPIZA_LKT(48,9,1:6)=(/ 0.861951,0.904613,0.935552,0.983373,0.991386,0.993322 /) -XCGA_LKT(48,9,1:6)=(/ 0.819230,0.776467,0.744923,0.727527,0.751527,0.724370 /) -XEXT_COEFF_550_LKT(48,9)=658.270000 !rg=0.448369 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,10,1:6)=(/ 485.460000,508.280000,542.150000,590.550000,596.710000,402.490000 /) -XPIZA_LKT(48,10,1:6)=(/ 0.848063,0.891563,0.924613,0.980208,0.989785,0.993206 /) -XCGA_LKT(48,10,1:6)=(/ 0.828393,0.791017,0.757140,0.731480,0.749277,0.738760 /) -XEXT_COEFF_550_LKT(48,10)=541.510000 !rg=0.448369 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,11,1:6)=(/ 406.300000,420.490000,445.750000,479.850000,499.930000,384.790000 /) -XPIZA_LKT(48,11,1:6)=(/ 0.833683,0.876687,0.913176,0.976615,0.987796,0.992678 /) -XCGA_LKT(48,11,1:6)=(/ 0.836597,0.803583,0.766043,0.738487,0.746273,0.743243 /) -XEXT_COEFF_550_LKT(48,11)=445.950000 !rg=0.448369 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,12,1:6)=(/ 336.120000,348.940000,366.290000,390.910000,416.490000,350.750000 /) -XPIZA_LKT(48,12,1:6)=(/ 0.822502,0.861186,0.899615,0.971651,0.984945,0.991741 /) -XCGA_LKT(48,12,1:6)=(/ 0.845457,0.814177,0.781460,0.745167,0.746777,0.742393 /) -XEXT_COEFF_550_LKT(48,12)=365.900000 !rg=0.448369 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,13,1:6)=(/ 279.360000,287.420000,300.080000,318.320000,340.100000,311.150000 /) -XPIZA_LKT(48,13,1:6)=(/ 0.811711,0.847876,0.884304,0.966396,0.982690,0.990504 /) -XCGA_LKT(48,13,1:6)=(/ 0.852590,0.824287,0.793287,0.752993,0.748800,0.742567 /) -XEXT_COEFF_550_LKT(48,13)=300.750000 !rg=0.448369 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,14,1:6)=(/ 231.590000,238.070000,246.250000,261.480000,278.440000,269.950000 /) -XPIZA_LKT(48,14,1:6)=(/ 0.801873,0.834679,0.870158,0.959751,0.979520,0.989001 /) -XCGA_LKT(48,14,1:6)=(/ 0.857727,0.834487,0.805140,0.763070,0.754763,0.744703 /) -XEXT_COEFF_550_LKT(48,14)=246.030000 !rg=0.448369 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,15,1:6)=(/ 191.870000,196.560000,203.380000,213.110000,227.830000,228.220000 /) -XPIZA_LKT(48,15,1:6)=(/ 0.793775,0.822968,0.854926,0.953107,0.974991,0.986716 /) -XCGA_LKT(48,15,1:6)=(/ 0.863363,0.841590,0.816963,0.770243,0.758890,0.744327 /) -XEXT_COEFF_550_LKT(48,15)=201.550000 !rg=0.448369 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,16,1:6)=(/ 158.540000,161.590000,166.420000,172.760000,186.210000,191.380000 /) -XPIZA_LKT(48,16,1:6)=(/ 0.784543,0.812021,0.842416,0.945324,0.969940,0.984216 /) -XCGA_LKT(48,16,1:6)=(/ 0.868317,0.850760,0.825703,0.785097,0.762483,0.745833 /) -XEXT_COEFF_550_LKT(48,16)=166.530000 !rg=0.448369 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,17,1:6)=(/ 131.330000,133.760000,136.760000,142.560000,151.270000,158.050000 /) -XPIZA_LKT(48,17,1:6)=(/ 0.776392,0.803257,0.830322,0.936810,0.965002,0.981811 /) -XCGA_LKT(48,17,1:6)=(/ 0.872097,0.856833,0.836233,0.793467,0.774623,0.751863 /) -XEXT_COEFF_550_LKT(48,17)=136.930000 !rg=0.448369 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,18,1:6)=(/ 108.760000,110.620000,113.410000,117.180000,123.660000,130.640000 /) -XPIZA_LKT(48,18,1:6)=(/ 0.767430,0.793328,0.819056,0.929580,0.958457,0.978016 /) -XCGA_LKT(48,18,1:6)=(/ 0.875907,0.861790,0.844420,0.800173,0.782110,0.755327 /) -XEXT_COEFF_550_LKT(48,18)=112.460000 !rg=0.448369 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,19,1:6)=(/ 89.994000,91.211000,93.095000,95.377000,101.370000,107.510000 /) -XPIZA_LKT(48,19,1:6)=(/ 0.757341,0.783988,0.809512,0.923711,0.950639,0.973897 /) -XCGA_LKT(48,19,1:6)=(/ 0.879457,0.867460,0.850693,0.811747,0.787987,0.758923 /) -XEXT_COEFF_550_LKT(48,19)=93.174000 !rg=0.448369 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(48,20,1:6)=(/ 74.502000,75.534000,76.717000,78.901000,82.652000,87.727000 /) -XPIZA_LKT(48,20,1:6)=(/ 0.746626,0.775532,0.799474,0.916772,0.942483,0.969495 /) -XCGA_LKT(48,20,1:6)=(/ 0.882513,0.871710,0.857820,0.818287,0.800283,0.769340 /) -XEXT_COEFF_550_LKT(48,20)=76.755000 !rg=0.448369 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,1,1:6)=(/ 1509.800000,1153.300000,2313.700000,2071.200000,672.190000,82.023000 /) -XPIZA_LKT(49,1,1:6)=(/ 0.928189,0.934502,0.979168,0.994418,0.992234,0.978136 /) -XCGA_LKT(49,1,1:6)=(/ 0.808493,0.552460,0.756477,0.767483,0.650747,0.181480 /) -XEXT_COEFF_550_LKT(49,1)=2289.900000 !rg=0.485743 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,2,1:6)=(/ 1424.300000,1249.100000,2062.600000,2036.200000,713.380000,96.120000 /) -XPIZA_LKT(49,2,1:6)=(/ 0.918021,0.939794,0.976494,0.994300,0.992780,0.980961 /) -XCGA_LKT(49,2,1:6)=(/ 0.775037,0.619503,0.740033,0.773207,0.655120,0.230473 /) -XEXT_COEFF_550_LKT(49,2)=2044.400000 !rg=0.485743 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,3,1:6)=(/ 1301.500000,1264.500000,1741.200000,1907.000000,782.980000,122.920000 /) -XPIZA_LKT(49,3,1:6)=(/ 0.913265,0.941394,0.971980,0.993847,0.993321,0.984462 /) -XCGA_LKT(49,3,1:6)=(/ 0.785007,0.674967,0.719377,0.771083,0.685190,0.332533 /) -XEXT_COEFF_550_LKT(49,3)=1721.900000 !rg=0.485743 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,4,1:6)=(/ 1158.700000,1186.600000,1464.800000,1692.000000,853.570000,164.500000 /) -XPIZA_LKT(49,4,1:6)=(/ 0.908110,0.938471,0.966700,0.992984,0.993717,0.987633 /) -XCGA_LKT(49,4,1:6)=(/ 0.786327,0.705013,0.708997,0.762407,0.716520,0.452960 /) -XEXT_COEFF_550_LKT(49,4)=1449.700000 !rg=0.485743 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,5,1:6)=(/ 1013.200000,1065.300000,1231.100000,1440.300000,895.550000,218.450000 /) -XPIZA_LKT(49,5,1:6)=(/ 0.901709,0.933395,0.961199,0.991634,0.993847,0.990037 /) -XCGA_LKT(49,5,1:6)=(/ 0.785140,0.727877,0.710363,0.749763,0.739533,0.550920 /) -XEXT_COEFF_550_LKT(49,5)=1223.800000 !rg=0.485743 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,6,1:6)=(/ 871.480000,921.330000,1040.400000,1197.200000,890.840000,277.550000 /) -XPIZA_LKT(49,6,1:6)=(/ 0.893888,0.927143,0.954075,0.989879,0.993650,0.991652 /) -XCGA_LKT(49,6,1:6)=(/ 0.799400,0.743763,0.716723,0.738293,0.752293,0.622497 /) -XEXT_COEFF_550_LKT(49,6)=1031.200000 !rg=0.485743 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,7,1:6)=(/ 749.650000,788.640000,869.920000,983.780000,838.250000,334.590000 /) -XPIZA_LKT(49,7,1:6)=(/ 0.880605,0.918811,0.946681,0.987585,0.993090,0.992675 /) -XCGA_LKT(49,7,1:6)=(/ 0.806140,0.755747,0.725880,0.729997,0.756280,0.674300 /) -XEXT_COEFF_550_LKT(49,7)=860.910000 !rg=0.485743 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,8,1:6)=(/ 631.160000,665.030000,722.570000,806.280000,753.500000,379.290000 /) -XPIZA_LKT(49,8,1:6)=(/ 0.868854,0.909021,0.938384,0.985010,0.992158,0.993218 /) -XCGA_LKT(49,8,1:6)=(/ 0.816337,0.772497,0.738073,0.727347,0.754813,0.709850 /) -XEXT_COEFF_550_LKT(49,8)=718.550000 !rg=0.485743 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,9,1:6)=(/ 534.720000,560.150000,595.330000,661.420000,655.760000,403.020000 /) -XPIZA_LKT(49,9,1:6)=(/ 0.853833,0.897241,0.930249,0.981365,0.990870,0.993347 /) -XCGA_LKT(49,9,1:6)=(/ 0.822420,0.785440,0.748293,0.727177,0.752130,0.731900 /) -XEXT_COEFF_550_LKT(49,9)=594.620000 !rg=0.485743 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,10,1:6)=(/ 447.590000,464.880000,492.570000,537.440000,556.230000,399.910000 /) -XPIZA_LKT(49,10,1:6)=(/ 0.840896,0.884606,0.919618,0.978517,0.989149,0.993063 /) -XCGA_LKT(49,10,1:6)=(/ 0.833907,0.796250,0.762530,0.732033,0.749067,0.742000 /) -XEXT_COEFF_550_LKT(49,10)=495.060000 !rg=0.485743 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,11,1:6)=(/ 372.480000,386.350000,404.960000,438.490000,464.640000,374.040000 /) -XPIZA_LKT(49,11,1:6)=(/ 0.828363,0.869540,0.907969,0.974333,0.986594,0.992361 /) -XCGA_LKT(49,11,1:6)=(/ 0.841140,0.809807,0.775947,0.739827,0.746983,0.743823 /) -XEXT_COEFF_550_LKT(49,11)=406.690000 !rg=0.485743 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,12,1:6)=(/ 309.870000,319.570000,333.930000,356.590000,382.040000,335.980000 /) -XPIZA_LKT(49,12,1:6)=(/ 0.816696,0.855085,0.893201,0.969567,0.984395,0.991328 /) -XCGA_LKT(49,12,1:6)=(/ 0.849723,0.819190,0.787430,0.747540,0.748110,0.743097 /) -XEXT_COEFF_550_LKT(49,12)=335.100000 !rg=0.485743 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,13,1:6)=(/ 257.150000,264.480000,273.910000,292.330000,312.500000,295.620000 /) -XPIZA_LKT(49,13,1:6)=(/ 0.806619,0.841293,0.878162,0.963261,0.981454,0.989990 /) -XCGA_LKT(49,13,1:6)=(/ 0.855147,0.830260,0.799403,0.757670,0.752000,0.744337 /) -XEXT_COEFF_550_LKT(49,13)=274.050000 !rg=0.485743 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,14,1:6)=(/ 213.090000,218.710000,226.360000,238.610000,254.920000,252.730000 /) -XPIZA_LKT(49,14,1:6)=(/ 0.797778,0.828444,0.862872,0.956916,0.977677,0.988203 /) -XCGA_LKT(49,14,1:6)=(/ 0.861403,0.837463,0.811670,0.763887,0.755927,0.744587 /) -XEXT_COEFF_550_LKT(49,14)=224.400000 !rg=0.485743 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,15,1:6)=(/ 176.090000,180.530000,186.120000,194.440000,209.090000,212.660000 /) -XPIZA_LKT(49,15,1:6)=(/ 0.789075,0.817700,0.848969,0.949106,0.972670,0.985814 /) -XCGA_LKT(49,15,1:6)=(/ 0.865590,0.846920,0.820173,0.778613,0.758177,0.744290 /) -XEXT_COEFF_550_LKT(49,15)=185.800000 !rg=0.485743 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,16,1:6)=(/ 145.660000,148.900000,152.400000,159.150000,170.690000,177.410000 /) -XPIZA_LKT(49,16,1:6)=(/ 0.780814,0.807711,0.836117,0.941151,0.967190,0.982809 /) -XCGA_LKT(49,16,1:6)=(/ 0.869910,0.854180,0.832597,0.788990,0.767287,0.748603 /) -XEXT_COEFF_550_LKT(49,16)=152.920000 !rg=0.485743 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,17,1:6)=(/ 120.980000,122.940000,125.930000,130.730000,138.140000,145.850000 /) -XPIZA_LKT(49,17,1:6)=(/ 0.771925,0.798129,0.825271,0.933297,0.962018,0.980228 /) -XCGA_LKT(49,17,1:6)=(/ 0.874597,0.859017,0.840693,0.794850,0.778273,0.753440 /) -XEXT_COEFF_550_LKT(49,17)=125.670000 !rg=0.485743 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,18,1:6)=(/ 99.938000,101.860000,103.980000,107.340000,113.760000,120.470000 /) -XPIZA_LKT(49,18,1:6)=(/ 0.762529,0.789371,0.814106,0.926064,0.954744,0.976012 /) -XCGA_LKT(49,18,1:6)=(/ 0.877383,0.865077,0.847247,0.806223,0.782373,0.754743 /) -XEXT_COEFF_550_LKT(49,18)=103.740000 !rg=0.485743 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,19,1:6)=(/ 82.730000,84.124000,85.467000,88.165000,93.050000,98.739000 /) -XPIZA_LKT(49,19,1:6)=(/ 0.752482,0.780061,0.804008,0.920044,0.946498,0.971809 /) -XCGA_LKT(49,19,1:6)=(/ 0.880510,0.869837,0.855227,0.815130,0.793347,0.763423 /) -XEXT_COEFF_550_LKT(49,19)=85.715000 !rg=0.485743 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(49,20,1:6)=(/ 68.721000,69.450000,70.699000,72.535000,75.518000,80.391000 /) -XPIZA_LKT(49,20,1:6)=(/ 0.741658,0.770126,0.795370,0.913972,0.939307,0.966936 /) -XCGA_LKT(49,20,1:6)=(/ 0.884463,0.873217,0.860847,0.819837,0.804457,0.772363 /) -XEXT_COEFF_550_LKT(49,20)=70.679000 !rg=0.485743 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,1,1:6)=(/ 1182.500000,1108.700000,1944.200000,2101.100000,760.820000,99.710000 /) -XPIZA_LKT(50,1,1:6)=(/ 0.915194,0.930989,0.974844,0.994417,0.993085,0.981492 /) -XCGA_LKT(50,1,1:6)=(/ 0.784587,0.585623,0.729213,0.781093,0.656810,0.215190 /) -XEXT_COEFF_550_LKT(50,1)=1925.400000 !rg=0.526233 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,2,1:6)=(/ 1241.300000,1184.500000,1730.600000,2004.500000,786.030000,114.940000 /) -XPIZA_LKT(50,2,1:6)=(/ 0.914318,0.937231,0.971795,0.994141,0.993331,0.983598 /) -XCGA_LKT(50,2,1:6)=(/ 0.795640,0.655350,0.713817,0.778847,0.675127,0.272847 /) -XEXT_COEFF_550_LKT(50,2)=1704.000000 !rg=0.526233 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,3,1:6)=(/ 1173.500000,1175.700000,1476.400000,1831.100000,846.690000,144.580000 /) -XPIZA_LKT(50,3,1:6)=(/ 0.910092,0.938242,0.967167,0.993525,0.993693,0.986320 /) -XCGA_LKT(50,3,1:6)=(/ 0.790547,0.699727,0.699380,0.772330,0.706053,0.382617 /) -XEXT_COEFF_550_LKT(50,3)=1466.800000 !rg=0.526233 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,4,1:6)=(/ 1053.900000,1083.500000,1271.900000,1585.000000,900.600000,190.120000 /) -XPIZA_LKT(50,4,1:6)=(/ 0.903849,0.935206,0.962011,0.992440,0.993931,0.988903 /) -XCGA_LKT(50,4,1:6)=(/ 0.793400,0.724243,0.698667,0.759727,0.732397,0.495533 /) -XEXT_COEFF_550_LKT(50,4)=1268.400000 !rg=0.526233 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,5,1:6)=(/ 930.240000,969.280000,1097.900000,1324.400000,918.620000,246.460000 /) -XPIZA_LKT(50,5,1:6)=(/ 0.894965,0.928244,0.956042,0.990875,0.993903,0.990871 /) -XCGA_LKT(50,5,1:6)=(/ 0.798227,0.735117,0.705733,0.745283,0.749907,0.582577 /) -XEXT_COEFF_550_LKT(50,5)=1086.200000 !rg=0.526233 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,6,1:6)=(/ 800.390000,836.190000,928.970000,1092.700000,887.770000,305.130000 /) -XPIZA_LKT(50,6,1:6)=(/ 0.887389,0.923380,0.949868,0.988902,0.993546,0.992183 /) -XCGA_LKT(50,6,1:6)=(/ 0.806683,0.755060,0.717143,0.734190,0.757920,0.645657 /) -XEXT_COEFF_550_LKT(50,6)=930.780000 !rg=0.526233 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,7,1:6)=(/ 685.840000,715.330000,782.080000,894.680000,814.360000,358.050000 /) -XPIZA_LKT(50,7,1:6)=(/ 0.873489,0.914606,0.942097,0.986518,0.992822,0.992983 /) -XCGA_LKT(50,7,1:6)=(/ 0.812833,0.769560,0.727687,0.728267,0.758570,0.690837 /) -XEXT_COEFF_550_LKT(50,7)=781.690000 !rg=0.526233 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,8,1:6)=(/ 581.900000,605.990000,652.370000,732.180000,718.600000,394.680000 /) -XPIZA_LKT(50,8,1:6)=(/ 0.861039,0.903953,0.933985,0.983640,0.991712,0.993346 /) -XCGA_LKT(50,8,1:6)=(/ 0.822553,0.779560,0.742490,0.726027,0.755260,0.720760 /) -XEXT_COEFF_550_LKT(50,8)=654.970000 !rg=0.526233 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,9,1:6)=(/ 491.070000,510.990000,545.020000,599.150000,617.120000,407.380000 /) -XPIZA_LKT(50,9,1:6)=(/ 0.846303,0.890685,0.923791,0.980005,0.990189,0.993305 /) -XCGA_LKT(50,9,1:6)=(/ 0.829990,0.788727,0.755463,0.726653,0.751320,0.737850 /) -XEXT_COEFF_550_LKT(50,9)=539.020000 !rg=0.526233 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,10,1:6)=(/ 411.460000,427.720000,448.570000,491.620000,516.920000,393.670000 /) -XPIZA_LKT(50,10,1:6)=(/ 0.833345,0.876257,0.914094,0.975902,0.988361,0.992854 /) -XCGA_LKT(50,10,1:6)=(/ 0.837187,0.804233,0.767233,0.734017,0.749050,0.744270 /) -XEXT_COEFF_550_LKT(50,10)=448.500000 !rg=0.526233 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,11,1:6)=(/ 342.540000,354.770000,370.700000,399.790000,427.920000,360.980000 /) -XPIZA_LKT(50,11,1:6)=(/ 0.821975,0.861649,0.901366,0.971164,0.985794,0.992002 /) -XCGA_LKT(50,11,1:6)=(/ 0.846483,0.813483,0.781670,0.740137,0.747833,0.744083 /) -XEXT_COEFF_550_LKT(50,11)=371.700000 !rg=0.526233 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,12,1:6)=(/ 284.930000,293.850000,305.000000,327.340000,350.920000,321.190000 /) -XPIZA_LKT(50,12,1:6)=(/ 0.810561,0.847712,0.886533,0.966144,0.983255,0.990847 /) -XCGA_LKT(50,12,1:6)=(/ 0.852443,0.825750,0.792860,0.751723,0.749763,0.744370 /) -XEXT_COEFF_550_LKT(50,12)=304.810000 !rg=0.526233 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,13,1:6)=(/ 236.440000,242.780000,251.770000,266.750000,286.520000,279.060000 /) -XPIZA_LKT(50,13,1:6)=(/ 0.801557,0.834415,0.870743,0.960230,0.979775,0.989299 /) -XCGA_LKT(50,13,1:6)=(/ 0.859300,0.833280,0.806043,0.758033,0.753057,0.744807 /) -XEXT_COEFF_550_LKT(50,13)=249.810000 !rg=0.526233 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,14,1:6)=(/ 195.520000,200.670000,207.390000,218.160000,234.630000,235.870000 /) -XPIZA_LKT(50,14,1:6)=(/ 0.793555,0.822993,0.855857,0.953136,0.974891,0.987237 /) -XCGA_LKT(50,14,1:6)=(/ 0.863700,0.843017,0.814687,0.771850,0.754940,0.744007 /) -XEXT_COEFF_550_LKT(50,14)=206.730000 !rg=0.526233 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,15,1:6)=(/ 162.020000,165.840000,170.600000,177.790000,192.050000,198.480000 /) -XPIZA_LKT(50,15,1:6)=(/ 0.784983,0.812494,0.842748,0.945726,0.970159,0.984390 /) -XCGA_LKT(50,15,1:6)=(/ 0.868867,0.850983,0.827350,0.784033,0.762547,0.746363 /) -XEXT_COEFF_550_LKT(50,15)=170.470000 !rg=0.526233 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,16,1:6)=(/ 134.090000,137.010000,140.340000,146.230000,154.910000,162.980000 /) -XPIZA_LKT(50,16,1:6)=(/ 0.776490,0.802750,0.830801,0.936507,0.965116,0.981629 /) -XCGA_LKT(50,16,1:6)=(/ 0.872723,0.856610,0.837013,0.790200,0.772633,0.750387 /) -XEXT_COEFF_550_LKT(50,16)=140.320000 !rg=0.526233 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,17,1:6)=(/ 111.120000,113.320000,115.670000,120.120000,126.790000,134.620000 /) -XPIZA_LKT(50,17,1:6)=(/ 0.767481,0.793952,0.819472,0.929345,0.959022,0.978481 /) -XCGA_LKT(50,17,1:6)=(/ 0.876110,0.862503,0.843343,0.800643,0.778837,0.753040 /) -XEXT_COEFF_550_LKT(50,17)=115.650000 !rg=0.526233 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,18,1:6)=(/ 92.122000,93.696000,95.555000,98.419000,104.200000,111.160000 /) -XPIZA_LKT(50,18,1:6)=(/ 0.758311,0.784863,0.809488,0.923483,0.951142,0.973829 /) -XCGA_LKT(50,18,1:6)=(/ 0.879657,0.867687,0.851803,0.811073,0.787610,0.758717 /) -XEXT_COEFF_550_LKT(50,18)=95.356000 !rg=0.526233 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,19,1:6)=(/ 76.255000,77.362000,78.782000,81.125000,84.529000,90.156000 /) -XPIZA_LKT(50,19,1:6)=(/ 0.747530,0.775205,0.799750,0.916567,0.943037,0.969581 /) -XCGA_LKT(50,19,1:6)=(/ 0.882697,0.871527,0.858307,0.816400,0.799170,0.767733 /) -XEXT_COEFF_550_LKT(50,19)=78.845000 !rg=0.526233 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(50,20,1:6)=(/ 63.190000,64.130000,64.982000,66.741000,69.529000,73.999000 /) -XPIZA_LKT(50,20,1:6)=(/ 0.736140,0.766301,0.790015,0.910733,0.935556,0.964046 /) -XCGA_LKT(50,20,1:6)=(/ 0.885757,0.875653,0.862747,0.824037,0.805483,0.772120 /) -XEXT_COEFF_550_LKT(50,20)=65.069000 !rg=0.526233 sigma=2.95 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET5',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET5 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET6() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET6',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(51,1,1:6)=(/ 1070.100000,1162.800000,1569.700000,2030.200000,820.670000,119.650000 /) -XPIZA_LKT(51,1,1:6)=(/ 0.902505,0.934400,0.968857,0.994241,0.993670,0.984126 /) -XCGA_LKT(51,1,1:6)=(/ 0.781037,0.663077,0.693750,0.787200,0.665610,0.256210 /) -XEXT_COEFF_550_LKT(51,1)=1536.100000 !rg=0.570098 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,2,1:6)=(/ 1128.700000,1170.700000,1412.800000,1932.100000,852.240000,135.810000 /) -XPIZA_LKT(51,2,1:6)=(/ 0.910202,0.937154,0.965524,0.993857,0.993748,0.985668 /) -XCGA_LKT(51,2,1:6)=(/ 0.797117,0.702913,0.679930,0.781053,0.696900,0.323037 /) -XEXT_COEFF_550_LKT(51,2)=1397.700000 !rg=0.570098 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,3,1:6)=(/ 1061.300000,1101.900000,1257.400000,1721.700000,903.980000,168.850000 /) -XPIZA_LKT(51,3,1:6)=(/ 0.906660,0.934863,0.961287,0.993047,0.993980,0.987837 /) -XCGA_LKT(51,3,1:6)=(/ 0.798900,0.723187,0.679757,0.770087,0.725117,0.434823 /) -XEXT_COEFF_550_LKT(51,3)=1238.800000 !rg=0.570098 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,4,1:6)=(/ 958.470000,997.150000,1116.000000,1458.600000,938.200000,217.980000 /) -XPIZA_LKT(51,4,1:6)=(/ 0.899939,0.930776,0.956962,0.991710,0.994074,0.989962 /) -XCGA_LKT(51,4,1:6)=(/ 0.800920,0.738720,0.692110,0.753837,0.746117,0.535663 /) -XEXT_COEFF_550_LKT(51,4)=1106.400000 !rg=0.570098 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,5,1:6)=(/ 849.080000,881.690000,973.840000,1205.600000,930.160000,275.500000 /) -XPIZA_LKT(51,5,1:6)=(/ 0.889071,0.924837,0.951079,0.989916,0.993892,0.991568 /) -XCGA_LKT(51,5,1:6)=(/ 0.804353,0.753737,0.704977,0.739217,0.758350,0.611497 /) -XEXT_COEFF_550_LKT(51,5)=972.680000 !rg=0.570098 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,6,1:6)=(/ 735.340000,769.920000,833.830000,991.660000,874.500000,332.070000 /) -XPIZA_LKT(51,6,1:6)=(/ 0.879661,0.916996,0.945775,0.987584,0.993366,0.992621 /) -XCGA_LKT(51,6,1:6)=(/ 0.810153,0.764553,0.721540,0.727800,0.761977,0.666447 /) -XEXT_COEFF_550_LKT(51,6)=833.940000 !rg=0.570098 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,7,1:6)=(/ 627.740000,655.620000,704.740000,811.000000,784.240000,379.020000 /) -XPIZA_LKT(51,7,1:6)=(/ 0.867216,0.908461,0.938392,0.985017,0.992463,0.993221 /) -XCGA_LKT(51,7,1:6)=(/ 0.818890,0.777273,0.736617,0.724027,0.759697,0.705227 /) -XEXT_COEFF_550_LKT(51,7)=706.110000 !rg=0.570098 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,8,1:6)=(/ 535.580000,557.940000,591.000000,666.150000,680.490000,406.000000 /) -XPIZA_LKT(51,8,1:6)=(/ 0.852387,0.896758,0.929523,0.981676,0.991202,0.993410 /) -XCGA_LKT(51,8,1:6)=(/ 0.825793,0.788443,0.748043,0.724567,0.755427,0.729743 /) -XEXT_COEFF_550_LKT(51,8)=591.600000 !rg=0.570098 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,9,1:6)=(/ 449.740000,466.300000,494.750000,542.470000,575.410000,407.220000 /) -XPIZA_LKT(51,9,1:6)=(/ 0.838452,0.883510,0.918288,0.978643,0.989463,0.993203 /) -XCGA_LKT(51,9,1:6)=(/ 0.834747,0.799957,0.758093,0.732000,0.750553,0.742343 /) -XEXT_COEFF_550_LKT(51,9)=494.030000 !rg=0.570098 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,10,1:6)=(/ 378.120000,391.360000,411.810000,446.130000,478.810000,384.230000 /) -XPIZA_LKT(51,10,1:6)=(/ 0.826776,0.868968,0.906973,0.974064,0.987277,0.992575 /) -XCGA_LKT(51,10,1:6)=(/ 0.843303,0.807433,0.774843,0.733883,0.747620,0.745307 /) -XEXT_COEFF_550_LKT(51,10)=407.200000 !rg=0.570098 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,11,1:6)=(/ 315.170000,325.820000,339.200000,365.780000,394.380000,346.950000 /) -XPIZA_LKT(51,11,1:6)=(/ 0.815484,0.854432,0.893694,0.968707,0.984745,0.991599 /) -XCGA_LKT(51,11,1:6)=(/ 0.849527,0.821137,0.785417,0.745707,0.747980,0.745050 /) -XEXT_COEFF_550_LKT(51,11)=338.270000 !rg=0.570098 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,12,1:6)=(/ 262.140000,269.680000,280.290000,298.000000,322.110000,305.770000 /) -XPIZA_LKT(51,12,1:6)=(/ 0.805992,0.840770,0.878549,0.963844,0.981686,0.990242 /) -XCGA_LKT(51,12,1:6)=(/ 0.856807,0.828953,0.800067,0.752213,0.749930,0.744673 /) -XEXT_COEFF_550_LKT(51,12)=277.590000 !rg=0.570098 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,13,1:6)=(/ 216.930000,222.930000,230.630000,243.950000,262.920000,261.540000 /) -XPIZA_LKT(51,13,1:6)=(/ 0.797268,0.828364,0.863190,0.956643,0.977478,0.988591 /) -XCGA_LKT(51,13,1:6)=(/ 0.861747,0.839297,0.809133,0.765657,0.751823,0.745167 /) -XEXT_COEFF_550_LKT(51,13)=229.810000 !rg=0.570098 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,14,1:6)=(/ 179.790000,184.470000,190.010000,198.620000,215.350000,220.280000 /) -XPIZA_LKT(51,14,1:6)=(/ 0.788311,0.816645,0.849345,0.949623,0.972851,0.986006 /) -XCGA_LKT(51,14,1:6)=(/ 0.867197,0.847223,0.821960,0.777370,0.758780,0.745130 /) -XEXT_COEFF_550_LKT(51,14)=190.000000 !rg=0.570098 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,15,1:6)=(/ 149.380000,152.610000,156.460000,163.100000,174.140000,182.720000 /) -XPIZA_LKT(51,15,1:6)=(/ 0.781087,0.807643,0.836856,0.941767,0.968747,0.983752 /) -XCGA_LKT(51,15,1:6)=(/ 0.871357,0.853860,0.832430,0.786583,0.767213,0.748607 /) -XEXT_COEFF_550_LKT(51,15)=156.640000 !rg=0.570098 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,16,1:6)=(/ 123.530000,126.030000,129.010000,133.970000,141.560000,150.520000 /) -XPIZA_LKT(51,16,1:6)=(/ 0.771998,0.797913,0.824871,0.934019,0.963178,0.980806 /) -XCGA_LKT(51,16,1:6)=(/ 0.874340,0.860470,0.839900,0.796833,0.775813,0.751627 /) -XEXT_COEFF_550_LKT(51,16)=128.670000 !rg=0.570098 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,17,1:6)=(/ 102.320000,104.010000,106.460000,109.610000,116.420000,124.250000 /) -XPIZA_LKT(51,17,1:6)=(/ 0.762519,0.789162,0.814473,0.926288,0.955711,0.976477 /) -XCGA_LKT(51,17,1:6)=(/ 0.878350,0.864703,0.848127,0.804640,0.783603,0.755680 /) -XEXT_COEFF_550_LKT(51,17)=106.450000 !rg=0.570098 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,18,1:6)=(/ 84.945000,86.266000,87.830000,90.440000,94.811000,101.230000 /) -XPIZA_LKT(51,18,1:6)=(/ 0.753617,0.780516,0.804685,0.920277,0.948101,0.972742 /) -XCGA_LKT(51,18,1:6)=(/ 0.881537,0.869487,0.855323,0.813383,0.793463,0.762633 /) -XEXT_COEFF_550_LKT(51,18)=87.738000 !rg=0.570098 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,19,1:6)=(/ 70.266000,71.314000,72.448000,74.430000,77.372000,82.611000 /) -XPIZA_LKT(51,19,1:6)=(/ 0.742395,0.771162,0.794822,0.914591,0.940306,0.968030 /) -XCGA_LKT(51,19,1:6)=(/ 0.884027,0.874027,0.860447,0.821107,0.802590,0.769847 /) -XEXT_COEFF_550_LKT(51,19)=72.376000 !rg=0.570098 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(51,20,1:6)=(/ 58.218000,58.929000,59.948000,61.107000,63.756000,68.052000 /) -XPIZA_LKT(51,20,1:6)=(/ 0.730420,0.760925,0.786242,0.908240,0.932877,0.961266 /) -XCGA_LKT(51,20,1:6)=(/ 0.887510,0.877307,0.865960,0.827137,0.810157,0.776567 /) -XEXT_COEFF_550_LKT(51,20)=59.895000 !rg=0.570098 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,1,1:6)=(/ 1089.000000,1245.700000,1224.500000,1958.700000,868.130000,141.400000 /) -XPIZA_LKT(52,1,1:6)=(/ 0.900207,0.938811,0.960342,0.993830,0.993947,0.986162 /) -XCGA_LKT(52,1,1:6)=(/ 0.782047,0.736940,0.644703,0.785907,0.693060,0.306300 /) -XEXT_COEFF_550_LKT(52,1)=1198.300000 !rg=0.617619 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,2,1:6)=(/ 1046.000000,1155.300000,1151.500000,1818.600000,913.730000,158.790000 /) -XPIZA_LKT(52,2,1:6)=(/ 0.905089,0.936083,0.957642,0.993412,0.994055,0.987298 /) -XCGA_LKT(52,2,1:6)=(/ 0.797837,0.741670,0.645890,0.779190,0.720530,0.380983 /) -XEXT_COEFF_550_LKT(52,2)=1126.000000 !rg=0.617619 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,3,1:6)=(/ 981.260000,1029.900000,1076.000000,1582.700000,952.950000,195.940000 /) -XPIZA_LKT(52,3,1:6)=(/ 0.899915,0.931634,0.954738,0.992380,0.994190,0.989091 /) -XCGA_LKT(52,3,1:6)=(/ 0.805807,0.742710,0.662303,0.764240,0.742233,0.486390 /) -XEXT_COEFF_550_LKT(52,3)=1070.300000 !rg=0.617619 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,4,1:6)=(/ 885.000000,917.120000,985.500000,1318.900000,964.520000,247.780000 /) -XPIZA_LKT(52,4,1:6)=(/ 0.892934,0.926293,0.951374,0.990795,0.994147,0.990847 /) -XCGA_LKT(52,4,1:6)=(/ 0.808793,0.750187,0.687590,0.746137,0.757667,0.572460 /) -XEXT_COEFF_550_LKT(52,4)=983.660000 !rg=0.617619 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,5,1:6)=(/ 774.350000,807.840000,872.000000,1084.800000,929.580000,305.010000 /) -XPIZA_LKT(52,5,1:6)=(/ 0.884180,0.920053,0.946727,0.988714,0.993804,0.992150 /) -XCGA_LKT(52,5,1:6)=(/ 0.811740,0.764327,0.710700,0.730723,0.764813,0.637640 /) -XEXT_COEFF_550_LKT(52,5)=869.120000 !rg=0.617619 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,6,1:6)=(/ 677.050000,704.370000,756.420000,891.140000,851.010000,357.750000 /) -XPIZA_LKT(52,6,1:6)=(/ 0.871802,0.910408,0.939975,0.986221,0.993106,0.992974 /) -XCGA_LKT(52,6,1:6)=(/ 0.818863,0.768490,0.725403,0.723473,0.764340,0.685050 /) -XEXT_COEFF_550_LKT(52,6)=750.310000 !rg=0.617619 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,7,1:6)=(/ 578.490000,600.520000,640.010000,731.280000,747.350000,396.940000 /) -XPIZA_LKT(52,7,1:6)=(/ 0.859125,0.901439,0.932899,0.983321,0.992020,0.993389 /) -XCGA_LKT(52,7,1:6)=(/ 0.826207,0.781780,0.741547,0.721660,0.759683,0.717743 /) -XEXT_COEFF_550_LKT(52,7)=641.810000 !rg=0.617619 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,8,1:6)=(/ 491.540000,510.660000,541.150000,601.830000,638.920000,413.060000 /) -XPIZA_LKT(52,8,1:6)=(/ 0.845453,0.889413,0.923211,0.979778,0.990540,0.993409 /) -XCGA_LKT(52,8,1:6)=(/ 0.833420,0.791177,0.755287,0.723040,0.754097,0.737063 /) -XEXT_COEFF_550_LKT(52,8)=535.080000 !rg=0.617619 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,9,1:6)=(/ 411.850000,427.270000,449.400000,491.820000,534.830000,403.130000 /) -XPIZA_LKT(52,9,1:6)=(/ 0.832187,0.876553,0.912961,0.976518,0.988385,0.993027 /) -XCGA_LKT(52,9,1:6)=(/ 0.840840,0.807050,0.769617,0.732707,0.749200,0.745447 /) -XEXT_COEFF_550_LKT(52,9)=450.310000 !rg=0.617619 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,10,1:6)=(/ 346.300000,358.460000,375.320000,404.860000,441.770000,372.110000 /) -XPIZA_LKT(52,10,1:6)=(/ 0.820603,0.861279,0.900472,0.971757,0.986236,0.992263 /) -XCGA_LKT(52,10,1:6)=(/ 0.846890,0.816583,0.777523,0.741600,0.746640,0.746543 /) -XEXT_COEFF_550_LKT(52,10)=374.320000 !rg=0.617619 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,11,1:6)=(/ 289.390000,297.940000,311.220000,331.450000,362.430000,332.160000 /) -XPIZA_LKT(52,11,1:6)=(/ 0.810074,0.847752,0.886228,0.966972,0.983250,0.991137 /) -XCGA_LKT(52,11,1:6)=(/ 0.854103,0.824820,0.793873,0.747810,0.747597,0.745633 /) -XEXT_COEFF_550_LKT(52,11)=308.670000 !rg=0.617619 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,12,1:6)=(/ 240.300000,247.270000,256.450000,271.760000,295.860000,288.710000 /) -XPIZA_LKT(52,12,1:6)=(/ 0.800997,0.834462,0.870988,0.960540,0.979548,0.989683 /) -XCGA_LKT(52,12,1:6)=(/ 0.859493,0.835530,0.803150,0.760650,0.748830,0.746097 /) -XEXT_COEFF_550_LKT(52,12)=255.580000 !rg=0.617619 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,13,1:6)=(/ 199.440000,204.580000,211.450000,221.730000,241.510000,244.690000 /) -XPIZA_LKT(52,13,1:6)=(/ 0.791716,0.821804,0.856258,0.953499,0.975517,0.987383 /) -XCGA_LKT(52,13,1:6)=(/ 0.865493,0.843577,0.816833,0.771043,0.755080,0.744793 /) -XEXT_COEFF_550_LKT(52,13)=211.290000 !rg=0.617619 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,14,1:6)=(/ 165.800000,169.150000,174.190000,181.570000,195.560000,203.920000 /) -XPIZA_LKT(52,14,1:6)=(/ 0.784558,0.812519,0.842414,0.946406,0.971712,0.985435 /) -XCGA_LKT(52,14,1:6)=(/ 0.869610,0.850897,0.827073,0.781453,0.762227,0.747010 /) -XEXT_COEFF_550_LKT(52,14)=174.360000 !rg=0.617619 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,15,1:6)=(/ 137.310000,140.330000,143.730000,149.880000,158.980000,168.630000 /) -XPIZA_LKT(52,15,1:6)=(/ 0.776359,0.802281,0.831199,0.937582,0.966785,0.982613 /) -XCGA_LKT(52,15,1:6)=(/ 0.872903,0.857620,0.836043,0.791593,0.772083,0.749980 /) -XEXT_COEFF_550_LKT(52,15)=143.320000 !rg=0.617619 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,16,1:6)=(/ 113.600000,115.650000,118.580000,122.270000,130.200000,139.060000 /) -XPIZA_LKT(52,16,1:6)=(/ 0.768309,0.793700,0.819435,0.930792,0.959945,0.978995 /) -XCGA_LKT(52,16,1:6)=(/ 0.876293,0.862673,0.845100,0.800133,0.779587,0.753523 /) -XEXT_COEFF_550_LKT(52,16)=118.180000 !rg=0.617619 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,17,1:6)=(/ 94.281000,95.536000,97.597000,100.310000,106.180000,113.680000 /) -XPIZA_LKT(52,17,1:6)=(/ 0.758691,0.784595,0.809308,0.923912,0.953104,0.975621 /) -XCGA_LKT(52,17,1:6)=(/ 0.879767,0.867973,0.851177,0.809940,0.787370,0.758323 /) -XEXT_COEFF_550_LKT(52,17)=97.791000 !rg=0.617619 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,18,1:6)=(/ 78.110000,79.338000,80.823000,83.085000,86.538000,92.770000 /) -XPIZA_LKT(52,18,1:6)=(/ 0.748263,0.775907,0.800215,0.917178,0.945202,0.971099 /) -XCGA_LKT(52,18,1:6)=(/ 0.882670,0.872000,0.857790,0.817363,0.799053,0.766703 /) -XEXT_COEFF_550_LKT(52,18)=80.558000 !rg=0.617619 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,19,1:6)=(/ 64.701000,65.534000,66.723000,68.184000,71.312000,76.137000 /) -XPIZA_LKT(52,19,1:6)=(/ 0.737520,0.766675,0.790814,0.911508,0.936757,0.965180 /) -XCGA_LKT(52,19,1:6)=(/ 0.885600,0.875533,0.863800,0.823907,0.806947,0.773240 /) -XEXT_COEFF_550_LKT(52,19)=66.637000 !rg=0.617619 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(52,20,1:6)=(/ 53.664000,54.200000,55.033000,56.093000,58.365000,62.086000 /) -XPIZA_LKT(52,20,1:6)=(/ 0.725363,0.756131,0.781008,0.906107,0.930363,0.959368 /) -XCGA_LKT(52,20,1:6)=(/ 0.888793,0.879407,0.868097,0.830727,0.813873,0.780297 /) -XEXT_COEFF_550_LKT(52,20)=55.167000 !rg=0.617619 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,1,1:6)=(/ 1095.900000,1249.100000,965.760000,1819.500000,936.570000,164.520000 /) -XPIZA_LKT(53,1,1:6)=(/ 0.907673,0.940059,0.948529,0.993469,0.994114,0.987708 /) -XCGA_LKT(53,1,1:6)=(/ 0.817427,0.783713,0.582280,0.782163,0.732503,0.367050 /) -XEXT_COEFF_550_LKT(53,1)=940.400000 !rg=0.669101 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,2,1:6)=(/ 982.090000,1091.800000,958.520000,1667.100000,969.820000,184.400000 /) -XPIZA_LKT(53,2,1:6)=(/ 0.899269,0.933780,0.948603,0.992752,0.994286,0.988601 /) -XCGA_LKT(53,2,1:6)=(/ 0.808130,0.767310,0.612577,0.772640,0.742607,0.444473 /) -XEXT_COEFF_550_LKT(53,2)=946.540000 !rg=0.669101 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,3,1:6)=(/ 902.240000,960.910000,942.210000,1423.300000,991.500000,225.880000 /) -XPIZA_LKT(53,3,1:6)=(/ 0.892244,0.925747,0.948643,0.991443,0.994327,0.990144 /) -XCGA_LKT(53,3,1:6)=(/ 0.802087,0.763390,0.660417,0.753843,0.757043,0.534427 /) -XEXT_COEFF_550_LKT(53,3)=934.800000 !rg=0.669101 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,4,1:6)=(/ 812.640000,851.650000,880.830000,1177.700000,977.890000,279.030000 /) -XPIZA_LKT(53,4,1:6)=(/ 0.885154,0.919626,0.946158,0.989563,0.994147,0.991590 /) -XCGA_LKT(53,4,1:6)=(/ 0.807910,0.766717,0.692133,0.734670,0.767003,0.605493 /) -XEXT_COEFF_550_LKT(53,4)=876.090000 !rg=0.669101 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,5,1:6)=(/ 714.840000,739.680000,785.500000,967.710000,916.210000,334.260000 /) -XPIZA_LKT(53,5,1:6)=(/ 0.876548,0.914704,0.941631,0.987346,0.993642,0.992632 /) -XCGA_LKT(53,5,1:6)=(/ 0.818800,0.771140,0.715387,0.723500,0.769337,0.661050 /) -XEXT_COEFF_550_LKT(53,5)=788.500000 !rg=0.669101 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,6,1:6)=(/ 619.160000,647.580000,683.650000,802.400000,818.440000,381.280000 /) -XPIZA_LKT(53,6,1:6)=(/ 0.864741,0.903794,0.934379,0.984394,0.992767,0.993252 /) -XCGA_LKT(53,6,1:6)=(/ 0.821817,0.781883,0.729967,0.719050,0.765640,0.701403 /) -XEXT_COEFF_550_LKT(53,6)=679.650000 !rg=0.669101 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,7,1:6)=(/ 531.080000,552.790000,581.150000,662.160000,705.770000,411.000000 /) -XPIZA_LKT(53,7,1:6)=(/ 0.850890,0.894526,0.927081,0.981140,0.991499,0.993491 /) -XCGA_LKT(53,7,1:6)=(/ 0.829267,0.792613,0.746170,0.720097,0.759277,0.728297 /) -XEXT_COEFF_550_LKT(53,7)=579.740000 !rg=0.669101 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,8,1:6)=(/ 449.770000,467.950000,492.270000,545.510000,594.580000,415.520000 /) -XPIZA_LKT(53,8,1:6)=(/ 0.837840,0.881754,0.916852,0.977544,0.989825,0.993346 /) -XCGA_LKT(53,8,1:6)=(/ 0.837237,0.802000,0.758057,0.727020,0.752907,0.742860 /) -XEXT_COEFF_550_LKT(53,8)=489.600000 !rg=0.669101 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,9,1:6)=(/ 379.550000,392.070000,409.880000,446.340000,491.840000,395.050000 /) -XPIZA_LKT(53,9,1:6)=(/ 0.825518,0.869041,0.907256,0.974327,0.987684,0.992800 /) -XCGA_LKT(53,9,1:6)=(/ 0.846013,0.811507,0.776270,0.733797,0.748480,0.747573 /) -XEXT_COEFF_550_LKT(53,9)=412.240000 !rg=0.669101 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,10,1:6)=(/ 317.810000,328.420000,342.650000,366.740000,407.350000,358.740000 /) -XPIZA_LKT(53,10,1:6)=(/ 0.814211,0.854316,0.893402,0.969903,0.984635,0.991875 /) -XCGA_LKT(53,10,1:6)=(/ 0.852593,0.822767,0.788167,0.745650,0.746500,0.747290 /) -XEXT_COEFF_550_LKT(53,10)=342.620000 !rg=0.669101 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,11,1:6)=(/ 266.310000,272.890000,283.830000,300.480000,331.750000,315.790000 /) -XPIZA_LKT(53,11,1:6)=(/ 0.803700,0.840374,0.879187,0.964932,0.981767,0.990645 /) -XCGA_LKT(53,11,1:6)=(/ 0.857773,0.832580,0.797600,0.757087,0.746147,0.747180 /) -XEXT_COEFF_550_LKT(53,11)=283.790000 !rg=0.669101 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,12,1:6)=(/ 220.870000,227.030000,234.860000,247.000000,271.330000,271.550000 /) -XPIZA_LKT(53,12,1:6)=(/ 0.795675,0.827407,0.863792,0.957897,0.977640,0.988767 /) -XCGA_LKT(53,12,1:6)=(/ 0.863553,0.840457,0.811710,0.766430,0.751287,0.745913 /) -XEXT_COEFF_550_LKT(53,12)=234.800000 !rg=0.669101 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,13,1:6)=(/ 183.810000,187.510000,193.490000,202.240000,219.460000,226.850000 /) -XPIZA_LKT(53,13,1:6)=(/ 0.788376,0.817066,0.849166,0.950961,0.974419,0.986819 /) -XCGA_LKT(53,13,1:6)=(/ 0.867927,0.848153,0.821923,0.776013,0.757860,0.745660 /) -XEXT_COEFF_550_LKT(53,13)=193.840000 !rg=0.669101 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,14,1:6)=(/ 152.550000,155.510000,159.500000,166.800000,178.460000,188.840000 /) -XPIZA_LKT(53,14,1:6)=(/ 0.780170,0.807264,0.837411,0.942287,0.969693,0.984499 /) -XCGA_LKT(53,14,1:6)=(/ 0.871427,0.855080,0.831883,0.787033,0.767763,0.749483 /) -XEXT_COEFF_550_LKT(53,14)=159.350000 !rg=0.669101 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,15,1:6)=(/ 126.590000,129.060000,132.120000,137.080000,145.760000,155.730000 /) -XPIZA_LKT(53,15,1:6)=(/ 0.772522,0.797923,0.824843,0.934580,0.963645,0.981080 /) -XCGA_LKT(53,15,1:6)=(/ 0.875047,0.860297,0.841107,0.794150,0.775057,0.750847 /) -XEXT_COEFF_550_LKT(53,15)=131.110000 !rg=0.669101 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,16,1:6)=(/ 104.860000,106.370000,108.630000,111.550000,119.440000,127.830000 /) -XPIZA_LKT(53,16,1:6)=(/ 0.763453,0.788479,0.814532,0.928051,0.956688,0.977162 /) -XCGA_LKT(53,16,1:6)=(/ 0.878297,0.866220,0.847930,0.807070,0.779997,0.752800 /) -XEXT_COEFF_550_LKT(53,16)=108.600000 !rg=0.669101 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,17,1:6)=(/ 86.838000,88.114000,89.526000,92.344000,97.269000,104.220000 /) -XPIZA_LKT(53,17,1:6)=(/ 0.753955,0.780859,0.804442,0.920613,0.948922,0.973554 /) -XCGA_LKT(53,17,1:6)=(/ 0.881237,0.870457,0.855537,0.814140,0.793507,0.762973 /) -XEXT_COEFF_550_LKT(53,17)=89.650000 !rg=0.669101 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,18,1:6)=(/ 72.045000,73.040000,74.271000,76.243000,79.671000,85.260000 /) -XPIZA_LKT(53,18,1:6)=(/ 0.743570,0.771395,0.795204,0.914653,0.940776,0.968494 /) -XCGA_LKT(53,18,1:6)=(/ 0.884303,0.873910,0.861123,0.819830,0.802327,0.769120 /) -XEXT_COEFF_550_LKT(53,18)=73.898000 !rg=0.669101 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,19,1:6)=(/ 59.680000,60.331000,61.249000,62.322000,65.522000,69.934000 /) -XPIZA_LKT(53,19,1:6)=(/ 0.731877,0.761365,0.786453,0.909294,0.933596,0.962473 /) -XCGA_LKT(53,19,1:6)=(/ 0.887277,0.877880,0.865783,0.828773,0.807673,0.773707 /) -XEXT_COEFF_550_LKT(53,19)=61.275000 !rg=0.669101 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(53,20,1:6)=(/ 49.459000,49.998000,50.563000,51.668000,53.617000,56.930000 /) -XPIZA_LKT(53,20,1:6)=(/ 0.719652,0.751685,0.776620,0.903078,0.926688,0.956004 /) -XCGA_LKT(53,20,1:6)=(/ 0.890210,0.881257,0.870823,0.833737,0.818403,0.786037 /) -XEXT_COEFF_550_LKT(53,20)=50.583000 !rg=0.669101 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,1,1:6)=(/ 986.360000,1138.300000,772.230000,1647.700000,1013.700000,189.210000 /) -XPIZA_LKT(54,1,1:6)=(/ 0.897858,0.937675,0.937647,0.992570,0.994391,0.988872 /) -XCGA_LKT(54,1,1:6)=(/ 0.816437,0.798877,0.549613,0.774817,0.760017,0.438437 /) -XEXT_COEFF_550_LKT(54,1)=778.990000 !rg=0.724875 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,2,1:6)=(/ 898.900000,996.230000,831.920000,1483.900000,1016.600000,213.600000 /) -XPIZA_LKT(54,2,1:6)=(/ 0.895142,0.925175,0.941687,0.991798,0.994455,0.989686 /) -XCGA_LKT(54,2,1:6)=(/ 0.807410,0.782427,0.613243,0.760597,0.760330,0.508183 /) -XEXT_COEFF_550_LKT(54,2)=830.390000 !rg=0.724875 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,3,1:6)=(/ 826.850000,880.990000,855.600000,1249.100000,1017.400000,258.400000 /) -XPIZA_LKT(54,3,1:6)=(/ 0.886022,0.919866,0.942975,0.990225,0.994391,0.991037 /) -XCGA_LKT(54,3,1:6)=(/ 0.811910,0.767137,0.667007,0.739637,0.769250,0.576760 /) -XEXT_COEFF_550_LKT(54,3)=846.640000 !rg=0.724875 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,4,1:6)=(/ 744.020000,781.060000,803.040000,1033.800000,977.050000,311.070000 /) -XPIZA_LKT(54,4,1:6)=(/ 0.878070,0.914390,0.940344,0.988136,0.994067,0.992213 /) -XCGA_LKT(54,4,1:6)=(/ 0.816943,0.769863,0.701183,0.722727,0.774017,0.634733 /) -XEXT_COEFF_550_LKT(54,4)=793.660000 !rg=0.724875 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,5,1:6)=(/ 656.740000,684.380000,711.710000,862.620000,890.720000,362.490000 /) -XPIZA_LKT(54,5,1:6)=(/ 0.868268,0.907608,0.936674,0.985552,0.993392,0.993026 /) -XCGA_LKT(54,5,1:6)=(/ 0.820723,0.783973,0.722983,0.714493,0.772053,0.681890 /) -XEXT_COEFF_550_LKT(54,5)=710.380000 !rg=0.724875 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,6,1:6)=(/ 567.320000,590.280000,624.650000,715.090000,778.570000,401.950000 /) -XPIZA_LKT(54,6,1:6)=(/ 0.855905,0.898716,0.928069,0.982858,0.992318,0.993460 /) -XCGA_LKT(54,6,1:6)=(/ 0.829563,0.788730,0.741213,0.715503,0.765157,0.715730 /) -XEXT_COEFF_550_LKT(54,6)=617.510000 !rg=0.724875 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,7,1:6)=(/ 487.360000,504.970000,532.910000,593.740000,660.670000,420.810000 /) -XPIZA_LKT(54,7,1:6)=(/ 0.842677,0.888338,0.920539,0.979630,0.990818,0.993528 /) -XCGA_LKT(54,7,1:6)=(/ 0.836167,0.796080,0.756257,0.719323,0.757153,0.737110 /) -XEXT_COEFF_550_LKT(54,7)=526.610000 !rg=0.724875 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,8,1:6)=(/ 412.360000,427.760000,449.610000,490.770000,550.850000,413.690000 /) -XPIZA_LKT(54,8,1:6)=(/ 0.829845,0.874507,0.910448,0.975851,0.988767,0.993212 /) -XCGA_LKT(54,8,1:6)=(/ 0.843963,0.808623,0.769670,0.729207,0.750473,0.747113 /) -XEXT_COEFF_550_LKT(54,8)=447.490000 !rg=0.724875 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,9,1:6)=(/ 348.910000,360.870000,374.470000,408.070000,452.670000,384.210000 /) -XPIZA_LKT(54,9,1:6)=(/ 0.818356,0.860780,0.900756,0.971244,0.986586,0.992515 /) -XCGA_LKT(54,9,1:6)=(/ 0.849287,0.819317,0.781057,0.737913,0.747883,0.749343 /) -XEXT_COEFF_550_LKT(54,9)=374.450000 !rg=0.724875 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,10,1:6)=(/ 293.070000,301.250000,312.770000,333.840000,370.750000,343.400000 /) -XPIZA_LKT(54,10,1:6)=(/ 0.808370,0.847874,0.886806,0.967544,0.983872,0.991451 /) -XCGA_LKT(54,10,1:6)=(/ 0.856627,0.827490,0.794973,0.748367,0.747050,0.748143 /) -XEXT_COEFF_550_LKT(54,10)=314.030000 !rg=0.724875 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,11,1:6)=(/ 244.340000,251.070000,259.010000,274.660000,304.590000,299.130000 /) -XPIZA_LKT(54,11,1:6)=(/ 0.799861,0.834299,0.871911,0.961895,0.979517,0.990014 /) -XCGA_LKT(54,11,1:6)=(/ 0.861047,0.837883,0.807390,0.761053,0.748370,0.747787 /) -XEXT_COEFF_550_LKT(54,11)=259.970000 !rg=0.724875 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,12,1:6)=(/ 203.790000,208.290000,214.930000,225.410000,246.080000,252.590000 /) -XPIZA_LKT(54,12,1:6)=(/ 0.791575,0.822604,0.856512,0.955252,0.976810,0.988155 /) -XCGA_LKT(54,12,1:6)=(/ 0.866427,0.844550,0.817500,0.770153,0.754243,0.746253 /) -XEXT_COEFF_550_LKT(54,12)=215.260000 !rg=0.724875 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,13,1:6)=(/ 169.330000,172.670000,177.020000,185.780000,200.120000,210.770000 /) -XPIZA_LKT(54,13,1:6)=(/ 0.784130,0.812151,0.843647,0.946898,0.972268,0.985952 /) -XCGA_LKT(54,13,1:6)=(/ 0.869940,0.852413,0.827747,0.781923,0.762987,0.748173 /) -XEXT_COEFF_550_LKT(54,13)=177.170000 !rg=0.724875 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,14,1:6)=(/ 140.610000,143.200000,146.660000,152.810000,162.950000,174.110000 /) -XPIZA_LKT(54,14,1:6)=(/ 0.776626,0.802127,0.831217,0.938594,0.966943,0.983163 /) -XCGA_LKT(54,14,1:6)=(/ 0.873850,0.857507,0.837360,0.788367,0.770957,0.749487 /) -XEXT_COEFF_550_LKT(54,14)=145.960000 !rg=0.724875 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,15,1:6)=(/ 116.300000,118.600000,121.330000,125.410000,133.990000,143.560000 /) -XPIZA_LKT(54,15,1:6)=(/ 0.768011,0.793582,0.819699,0.930815,0.960034,0.979492 /) -XCGA_LKT(54,15,1:6)=(/ 0.876577,0.863670,0.844217,0.801163,0.774713,0.750430 /) -XEXT_COEFF_550_LKT(54,15)=120.960000 !rg=0.724875 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,16,1:6)=(/ 96.372000,98.005000,99.752000,103.030000,109.590000,117.620000 /) -XPIZA_LKT(54,16,1:6)=(/ 0.759354,0.785002,0.808778,0.924444,0.952433,0.975076 /) -XCGA_LKT(54,16,1:6)=(/ 0.879560,0.868513,0.852987,0.811080,0.785313,0.756930 /) -XEXT_COEFF_550_LKT(54,16)=99.913000 !rg=0.724875 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,17,1:6)=(/ 80.131000,81.039000,82.528000,84.797000,88.699000,95.315000 /) -XPIZA_LKT(54,17,1:6)=(/ 0.749554,0.776011,0.800303,0.917896,0.945189,0.971300 /) -XCGA_LKT(54,17,1:6)=(/ 0.883093,0.872070,0.858850,0.815860,0.798107,0.765857 /) -XEXT_COEFF_550_LKT(54,17)=82.461000 !rg=0.724875 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,18,1:6)=(/ 66.260000,67.192000,68.336000,69.961000,73.433000,78.503000 /) -XPIZA_LKT(54,18,1:6)=(/ 0.738392,0.767039,0.790748,0.911426,0.936968,0.965455 /) -XCGA_LKT(54,18,1:6)=(/ 0.885477,0.875977,0.863483,0.824287,0.802763,0.768780 /) -XEXT_COEFF_550_LKT(54,18)=68.210000 !rg=0.724875 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,19,1:6)=(/ 54.916000,55.652000,56.328000,57.670000,60.180000,64.178000 /) -XPIZA_LKT(54,19,1:6)=(/ 0.726468,0.757465,0.781145,0.906402,0.930000,0.959225 /) -XCGA_LKT(54,19,1:6)=(/ 0.888337,0.879490,0.868993,0.831910,0.812510,0.778780 /) -XEXT_COEFF_550_LKT(54,19)=56.400000 !rg=0.724875 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(54,20,1:6)=(/ 45.638000,46.013000,46.630000,47.509000,49.025000,51.992000 /) -XPIZA_LKT(54,20,1:6)=(/ 0.714207,0.746182,0.772515,0.900771,0.924013,0.952367 /) -XCGA_LKT(54,20,1:6)=(/ 0.891900,0.882563,0.873103,0.835320,0.822767,0.789913 /) -XEXT_COEFF_550_LKT(54,20)=46.612000 !rg=0.724875 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,1,1:6)=(/ 809.490000,931.860000,710.300000,1435.100000,1051.700000,217.210000 /) -XPIZA_LKT(55,1,1:6)=(/ 0.886720,0.926547,0.932052,0.991553,0.994636,0.989789 /) -XCGA_LKT(55,1,1:6)=(/ 0.795933,0.805500,0.573180,0.757893,0.769503,0.515787 /) -XEXT_COEFF_550_LKT(55,1)=708.270000 !rg=0.785298 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,2,1:6)=(/ 819.120000,871.300000,783.780000,1280.900000,1050.200000,247.220000 /) -XPIZA_LKT(55,2,1:6)=(/ 0.886666,0.919742,0.937875,0.990435,0.994557,0.990639 /) -XCGA_LKT(55,2,1:6)=(/ 0.810413,0.783223,0.639860,0.741723,0.773643,0.564690 /) -XEXT_COEFF_550_LKT(55,2)=782.450000 !rg=0.785298 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,3,1:6)=(/ 757.430000,794.680000,785.340000,1078.400000,1028.400000,292.810000 /) -XPIZA_LKT(55,3,1:6)=(/ 0.878786,0.916628,0.938806,0.988587,0.994378,0.991797 /) -XCGA_LKT(55,3,1:6)=(/ 0.816573,0.789177,0.687767,0.721330,0.778713,0.612600 /) -XEXT_COEFF_550_LKT(55,3)=789.070000 !rg=0.785298 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,4,1:6)=(/ 681.490000,709.150000,730.850000,904.750000,961.120000,343.090000 /) -XPIZA_LKT(55,4,1:6)=(/ 0.870215,0.910941,0.935407,0.986398,0.993903,0.992733 /) -XCGA_LKT(55,4,1:6)=(/ 0.821677,0.789510,0.713110,0.710287,0.778713,0.660463 /) -XEXT_COEFF_550_LKT(55,4)=731.150000 !rg=0.785298 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,5,1:6)=(/ 601.680000,626.770000,653.860000,761.270000,853.950000,388.820000 /) -XPIZA_LKT(55,5,1:6)=(/ 0.860287,0.901987,0.930378,0.983772,0.993034,0.993342 /) -XCGA_LKT(55,5,1:6)=(/ 0.828317,0.785460,0.734930,0.708180,0.772557,0.700270 /) -XEXT_COEFF_550_LKT(55,5)=645.410000 !rg=0.785298 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,6,1:6)=(/ 521.460000,537.700000,565.730000,639.750000,731.120000,418.960000 /) -XPIZA_LKT(55,6,1:6)=(/ 0.848325,0.894075,0.923850,0.981144,0.991781,0.993600 /) -XCGA_LKT(55,6,1:6)=(/ 0.835817,0.799147,0.749150,0.714663,0.763793,0.728010 /) -XEXT_COEFF_550_LKT(55,6)=567.890000 !rg=0.785298 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,7,1:6)=(/ 447.380000,460.750000,484.500000,533.630000,611.720000,425.890000 /) -XPIZA_LKT(55,7,1:6)=(/ 0.833999,0.881662,0.915271,0.978141,0.990067,0.993504 /) -XCGA_LKT(55,7,1:6)=(/ 0.840983,0.807740,0.760493,0.724403,0.754983,0.744260 /) -XEXT_COEFF_550_LKT(55,7)=484.070000 !rg=0.785298 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,8,1:6)=(/ 380.220000,391.170000,408.930000,444.050000,504.980000,407.420000 /) -XPIZA_LKT(55,8,1:6)=(/ 0.822755,0.868409,0.904946,0.974102,0.987955,0.993026 /) -XCGA_LKT(55,8,1:6)=(/ 0.848883,0.815273,0.776880,0.731873,0.748690,0.750317 /) -XEXT_COEFF_550_LKT(55,8)=410.430000 !rg=0.785298 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,9,1:6)=(/ 321.030000,330.300000,344.410000,369.310000,415.150000,371.120000 /) -XPIZA_LKT(55,9,1:6)=(/ 0.811968,0.853828,0.893093,0.969369,0.985266,0.992148 /) -XCGA_LKT(55,9,1:6)=(/ 0.854063,0.822763,0.789910,0.739010,0.746267,0.750070 /) -XEXT_COEFF_550_LKT(55,9)=340.790000 !rg=0.785298 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,10,1:6)=(/ 269.600000,277.120000,286.060000,306.300000,338.580000,327.230000 /) -XPIZA_LKT(55,10,1:6)=(/ 0.802590,0.839978,0.879975,0.963841,0.982578,0.990970 /) -XCGA_LKT(55,10,1:6)=(/ 0.859267,0.834033,0.800507,0.753717,0.748283,0.749250 /) -XEXT_COEFF_550_LKT(55,10)=285.880000 !rg=0.785298 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,11,1:6)=(/ 224.930000,231.060000,237.870000,251.590000,275.840000,280.500000 /) -XPIZA_LKT(55,11,1:6)=(/ 0.795135,0.827571,0.864993,0.957441,0.978478,0.989373 /) -XCGA_LKT(55,11,1:6)=(/ 0.864573,0.841117,0.813640,0.762297,0.751297,0.747920 /) -XEXT_COEFF_550_LKT(55,11)=238.520000 !rg=0.785298 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,12,1:6)=(/ 187.410000,191.430000,196.790000,207.160000,224.380000,234.950000 /) -XPIZA_LKT(55,12,1:6)=(/ 0.786760,0.816520,0.850776,0.951034,0.975086,0.987339 /) -XCGA_LKT(55,12,1:6)=(/ 0.868533,0.849510,0.822753,0.776027,0.758843,0.747440 /) -XEXT_COEFF_550_LKT(55,12)=196.590000 !rg=0.785298 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,13,1:6)=(/ 155.900000,158.790000,162.960000,170.140000,182.440000,195.060000 /) -XPIZA_LKT(55,13,1:6)=(/ 0.779815,0.806230,0.837295,0.942696,0.969797,0.984843 /) -XCGA_LKT(55,13,1:6)=(/ 0.872653,0.855077,0.833410,0.782990,0.766110,0.748540 /) -XEXT_COEFF_550_LKT(55,13)=162.270000 !rg=0.785298 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,14,1:6)=(/ 129.150000,131.580000,134.800000,140.030000,149.690000,160.650000 /) -XPIZA_LKT(55,14,1:6)=(/ 0.772718,0.797498,0.824961,0.934538,0.963263,0.981288 /) -XCGA_LKT(55,14,1:6)=(/ 0.875357,0.861157,0.840240,0.795687,0.770107,0.748353 /) -XEXT_COEFF_550_LKT(55,14)=134.600000 !rg=0.785298 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,15,1:6)=(/ 107.220000,109.110000,111.360000,114.840000,122.570000,132.270000 /) -XPIZA_LKT(55,15,1:6)=(/ 0.764131,0.788996,0.814481,0.927910,0.957213,0.977406 /) -XCGA_LKT(55,15,1:6)=(/ 0.878797,0.866520,0.849220,0.806520,0.780487,0.753240 /) -XEXT_COEFF_550_LKT(55,15)=111.150000 !rg=0.785298 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,16,1:6)=(/ 88.832000,90.278000,91.840000,94.690000,99.286000,107.070000 /) -XPIZA_LKT(55,16,1:6)=(/ 0.755150,0.780608,0.804715,0.920099,0.949603,0.973674 /) -XCGA_LKT(55,16,1:6)=(/ 0.881607,0.870400,0.856223,0.812130,0.792183,0.761200 /) -XEXT_COEFF_550_LKT(55,16)=91.913000 !rg=0.785298 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,17,1:6)=(/ 73.686000,74.744000,75.868000,78.104000,81.450000,87.600000 /) -XPIZA_LKT(55,17,1:6)=(/ 0.744430,0.772056,0.795273,0.914119,0.941405,0.968974 /) -XCGA_LKT(55,17,1:6)=(/ 0.884307,0.874360,0.860973,0.820437,0.799733,0.766047 /) -XEXT_COEFF_550_LKT(55,17)=75.907000 !rg=0.785298 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,18,1:6)=(/ 61.159000,61.920000,62.803000,64.248000,67.171000,71.989000 /) -XPIZA_LKT(55,18,1:6)=(/ 0.733356,0.762494,0.786431,0.908747,0.933959,0.962940 /) -XCGA_LKT(55,18,1:6)=(/ 0.887323,0.877950,0.866453,0.828030,0.808017,0.773687 /) -XEXT_COEFF_550_LKT(55,18)=62.645000 !rg=0.785298 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,19,1:6)=(/ 50.678000,51.246000,51.934000,52.963000,54.805000,58.293000 /) -XPIZA_LKT(55,19,1:6)=(/ 0.721236,0.752399,0.777600,0.902995,0.927273,0.956439 /) -XCGA_LKT(55,19,1:6)=(/ 0.890217,0.881037,0.871077,0.832523,0.818143,0.784343 /) -XEXT_COEFF_550_LKT(55,19)=51.989000 !rg=0.785298 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(55,20,1:6)=(/ 42.020000,42.475000,42.892000,43.799000,45.161000,47.804000 /) -XPIZA_LKT(55,20,1:6)=(/ 0.708263,0.741513,0.767416,0.897646,0.920724,0.948292 /) -XCGA_LKT(55,20,1:6)=(/ 0.893177,0.884337,0.874593,0.838437,0.824443,0.790830 /) -XEXT_COEFF_550_LKT(55,20)=42.942000 !rg=0.785298 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,1,1:6)=(/ 754.920000,730.860000,729.130000,1211.400000,1070.800000,252.030000 /) -XPIZA_LKT(56,1,1:6)=(/ 0.879025,0.912839,0.933514,0.989775,0.994660,0.990627 /) -XCGA_LKT(56,1,1:6)=(/ 0.806477,0.772977,0.640473,0.732203,0.776533,0.586567 /) -XEXT_COEFF_550_LKT(56,1)=732.060000 !rg=0.850757 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,2,1:6)=(/ 749.450000,758.750000,764.080000,1072.600000,1068.300000,284.950000 /) -XPIZA_LKT(56,2,1:6)=(/ 0.878888,0.916407,0.936951,0.988530,0.994583,0.991501 /) -XCGA_LKT(56,2,1:6)=(/ 0.818133,0.795450,0.685207,0.715877,0.783873,0.608197 /) -XEXT_COEFF_550_LKT(56,2)=775.530000 !rg=0.850757 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,3,1:6)=(/ 692.510000,721.910000,734.200000,916.380000,1022.800000,328.060000 /) -XPIZA_LKT(56,3,1:6)=(/ 0.873115,0.912233,0.936100,0.986488,0.994282,0.992441 /) -XCGA_LKT(56,3,1:6)=(/ 0.822413,0.795293,0.715403,0.698407,0.785387,0.642537 /) -XEXT_COEFF_550_LKT(56,3)=737.110000 !rg=0.850757 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,4,1:6)=(/ 623.340000,649.180000,668.940000,788.150000,930.380000,374.150000 /) -XPIZA_LKT(56,4,1:6)=(/ 0.864127,0.905833,0.932280,0.984298,0.993635,0.993161 /) -XCGA_LKT(56,4,1:6)=(/ 0.827787,0.796870,0.734180,0.696430,0.780907,0.683093 /) -XEXT_COEFF_550_LKT(56,4)=670.830000 !rg=0.850757 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,5,1:6)=(/ 551.420000,571.380000,596.500000,675.700000,806.670000,412.350000 /) -XPIZA_LKT(56,5,1:6)=(/ 0.851461,0.896400,0.925050,0.981956,0.992579,0.993585 /) -XCGA_LKT(56,5,1:6)=(/ 0.832777,0.800243,0.741673,0.705687,0.771600,0.716390 /) -XEXT_COEFF_550_LKT(56,5)=594.970000 !rg=0.850757 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,6,1:6)=(/ 480.250000,496.630000,513.690000,576.380000,680.200000,431.620000 /) -XPIZA_LKT(56,6,1:6)=(/ 0.839755,0.886648,0.920140,0.978744,0.991100,0.993676 /) -XCGA_LKT(56,6,1:6)=(/ 0.839447,0.806633,0.761327,0.712860,0.761113,0.738427 /) -XEXT_COEFF_550_LKT(56,6)=517.480000 !rg=0.850757 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,7,1:6)=(/ 410.210000,423.490000,439.990000,482.230000,563.570000,426.330000 /) -XPIZA_LKT(56,7,1:6)=(/ 0.827341,0.874487,0.910730,0.975759,0.989045,0.993410 /) -XCGA_LKT(56,7,1:6)=(/ 0.846130,0.814693,0.774660,0.725277,0.751963,0.749813 /) -XEXT_COEFF_550_LKT(56,7)=442.460000 !rg=0.850757 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,8,1:6)=(/ 350.280000,360.440000,372.590000,405.270000,462.430000,397.820000 /) -XPIZA_LKT(56,8,1:6)=(/ 0.815607,0.860536,0.899973,0.971169,0.986918,0.992772 /) -XCGA_LKT(56,8,1:6)=(/ 0.851913,0.822650,0.784447,0.736110,0.747883,0.752690 /) -XEXT_COEFF_550_LKT(56,8)=373.500000 !rg=0.850757 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,9,1:6)=(/ 294.440000,302.860000,314.450000,334.450000,378.550000,355.750000 /) -XPIZA_LKT(56,9,1:6)=(/ 0.805672,0.846038,0.886232,0.967079,0.983904,0.991753 /) -XCGA_LKT(56,9,1:6)=(/ 0.857297,0.830743,0.793103,0.749707,0.744273,0.751310 /) -XEXT_COEFF_550_LKT(56,9)=314.070000 !rg=0.850757 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,10,1:6)=(/ 247.980000,254.450000,263.210000,278.590000,309.050000,309.870000 /) -XPIZA_LKT(56,10,1:6)=(/ 0.797602,0.833061,0.871756,0.961485,0.980823,0.990345 /) -XCGA_LKT(56,10,1:6)=(/ 0.862980,0.837387,0.808313,0.754553,0.748223,0.749073 /) -XEXT_COEFF_550_LKT(56,10)=260.560000 !rg=0.850757 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,11,1:6)=(/ 207.010000,212.320000,218.470000,230.500000,251.450000,261.850000 /) -XPIZA_LKT(56,11,1:6)=(/ 0.790183,0.821034,0.857355,0.954455,0.976905,0.988640 /) -XCGA_LKT(56,11,1:6)=(/ 0.866813,0.846630,0.817410,0.769777,0.752913,0.747947 /) -XEXT_COEFF_550_LKT(56,11)=217.900000 !rg=0.850757 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,12,1:6)=(/ 172.570000,176.280000,180.930000,189.390000,204.440000,218.100000 /) -XPIZA_LKT(56,12,1:6)=(/ 0.783302,0.810670,0.843693,0.947374,0.972730,0.986305 /) -XCGA_LKT(56,12,1:6)=(/ 0.871123,0.852373,0.829057,0.777283,0.760983,0.747287 /) -XEXT_COEFF_550_LKT(56,12)=179.630000 !rg=0.850757 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,13,1:6)=(/ 143.210000,146.140000,149.630000,156.010000,167.150000,180.080000 /) -XPIZA_LKT(56,13,1:6)=(/ 0.776079,0.801763,0.830599,0.938446,0.966885,0.983299 /) -XCGA_LKT(56,13,1:6)=(/ 0.874280,0.858983,0.836390,0.790410,0.765740,0.747320 /) -XEXT_COEFF_550_LKT(56,13)=149.410000 !rg=0.850757 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,14,1:6)=(/ 118.880000,121.200000,123.770000,127.830000,137.120000,148.320000 /) -XPIZA_LKT(56,14,1:6)=(/ 0.767772,0.792215,0.819468,0.931032,0.960593,0.979693 /) -XCGA_LKT(56,14,1:6)=(/ 0.877540,0.864183,0.845550,0.800577,0.775680,0.750887 /) -XEXT_COEFF_550_LKT(56,14)=123.840000 !rg=0.850757 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,15,1:6)=(/ 98.910000,100.440000,102.350000,105.570000,111.300000,120.450000 /) -XPIZA_LKT(56,15,1:6)=(/ 0.760019,0.784823,0.809242,0.924543,0.954641,0.976462 /) -XCGA_LKT(56,15,1:6)=(/ 0.880623,0.868423,0.853147,0.809187,0.786330,0.756750 /) -XEXT_COEFF_550_LKT(56,15)=102.270000 !rg=0.850757 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,16,1:6)=(/ 81.829000,83.162000,84.602000,86.907000,90.742000,98.074000 /) -XPIZA_LKT(56,16,1:6)=(/ 0.750228,0.776314,0.799917,0.917824,0.946200,0.972213 /) -XCGA_LKT(56,16,1:6)=(/ 0.882683,0.873063,0.858647,0.817503,0.796230,0.763353 /) -XEXT_COEFF_550_LKT(56,16)=84.404000 !rg=0.850757 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,17,1:6)=(/ 67.955000,68.662000,69.914000,71.449000,74.815000,80.573000 /) -XPIZA_LKT(56,17,1:6)=(/ 0.739541,0.767286,0.791032,0.911534,0.938155,0.966206 /) -XCGA_LKT(56,17,1:6)=(/ 0.885993,0.875870,0.864217,0.823697,0.804637,0.769833 /) -XEXT_COEFF_550_LKT(56,17)=69.939000 !rg=0.850757 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,18,1:6)=(/ 56.420000,56.974000,57.834000,59.138000,61.299000,65.431000 /) -XPIZA_LKT(56,18,1:6)=(/ 0.728147,0.758002,0.781972,0.906075,0.931370,0.960941 /) -XCGA_LKT(56,18,1:6)=(/ 0.888903,0.879080,0.869073,0.830220,0.813397,0.778750 /) -XEXT_COEFF_550_LKT(56,18)=57.756000 !rg=0.850757 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,19,1:6)=(/ 46.692000,47.239000,47.811000,48.768000,50.143000,53.327000 /) -XPIZA_LKT(56,19,1:6)=(/ 0.715348,0.747494,0.772826,0.900901,0.924483,0.953729 /) -XCGA_LKT(56,19,1:6)=(/ 0.891470,0.883000,0.872847,0.836293,0.821443,0.787643 /) -XEXT_COEFF_550_LKT(56,19)=47.772000 !rg=0.850757 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(56,20,1:6)=(/ 38.775000,39.066000,39.587000,40.173000,41.430000,43.896000 /) -XPIZA_LKT(56,20,1:6)=(/ 0.702564,0.735861,0.763169,0.894986,0.918181,0.944881 /) -XCGA_LKT(56,20,1:6)=(/ 0.894810,0.885623,0.876847,0.840497,0.828297,0.795647 /) -XEXT_COEFF_550_LKT(56,20)=39.569000 !rg=0.850757 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,1,1:6)=(/ 751.890000,676.490000,783.480000,973.640000,1101.100000,296.260000 /) -XPIZA_LKT(57,1,1:6)=(/ 0.880264,0.895121,0.938389,0.987331,0.994674,0.991523 /) -XCGA_LKT(57,1,1:6)=(/ 0.830903,0.777947,0.716433,0.695690,0.789690,0.634220 /) -XEXT_COEFF_550_LKT(57,1)=787.620000 !rg=0.921673 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,2,1:6)=(/ 690.750000,701.620000,754.170000,878.910000,1069.000000,324.580000 /) -XPIZA_LKT(57,2,1:6)=(/ 0.871952,0.908644,0.937199,0.985844,0.994524,0.992273 /) -XCGA_LKT(57,2,1:6)=(/ 0.824470,0.798797,0.729517,0.679870,0.791667,0.638293 /) -XEXT_COEFF_550_LKT(57,2)=762.360000 !rg=0.921673 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,3,1:6)=(/ 639.270000,656.460000,686.850000,775.560000,999.260000,362.960000 /) -XPIZA_LKT(57,3,1:6)=(/ 0.865038,0.906435,0.932924,0.984061,0.994086,0.992979 /) -XCGA_LKT(57,3,1:6)=(/ 0.828500,0.796310,0.738370,0.679237,0.789203,0.667997 /) -XEXT_COEFF_550_LKT(57,3)=694.470000 !rg=0.921673 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,4,1:6)=(/ 575.170000,593.410000,615.510000,689.000000,885.140000,403.290000 /) -XPIZA_LKT(57,4,1:6)=(/ 0.855666,0.899578,0.928107,0.982083,0.993252,0.993507 /) -XCGA_LKT(57,4,1:6)=(/ 0.833777,0.799263,0.748660,0.689077,0.780553,0.703037 /) -XEXT_COEFF_550_LKT(57,4)=622.130000 !rg=0.921673 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,5,1:6)=(/ 504.820000,523.340000,543.400000,601.180000,752.500000,432.200000 /) -XPIZA_LKT(57,5,1:6)=(/ 0.843922,0.890670,0.921338,0.979762,0.991967,0.993759 /) -XCGA_LKT(57,5,1:6)=(/ 0.839083,0.807347,0.760723,0.702347,0.768420,0.730347 /) -XEXT_COEFF_550_LKT(57,5)=544.740000 !rg=0.921673 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,6,1:6)=(/ 441.220000,456.310000,473.380000,516.870000,625.550000,439.430000 /) -XPIZA_LKT(57,6,1:6)=(/ 0.830845,0.878486,0.913644,0.976485,0.990276,0.993687 /) -XCGA_LKT(57,6,1:6)=(/ 0.845327,0.808723,0.770587,0.713633,0.756733,0.746977 /) -XEXT_COEFF_550_LKT(57,6)=470.510000 !rg=0.921673 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,7,1:6)=(/ 377.440000,389.480000,403.170000,436.380000,513.620000,421.900000 /) -XPIZA_LKT(57,7,1:6)=(/ 0.819571,0.866255,0.904688,0.972878,0.988126,0.993255 /) -XCGA_LKT(57,7,1:6)=(/ 0.851490,0.818273,0.782473,0.726920,0.748740,0.753937 /) -XEXT_COEFF_550_LKT(57,7)=405.520000 !rg=0.921673 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,8,1:6)=(/ 321.800000,330.940000,343.190000,367.630000,421.400000,385.070000 /) -XPIZA_LKT(57,8,1:6)=(/ 0.809017,0.852407,0.892716,0.968395,0.985635,0.992442 /) -XCGA_LKT(57,8,1:6)=(/ 0.856917,0.825707,0.793103,0.736360,0.745333,0.753880 /) -XEXT_COEFF_550_LKT(57,8)=339.760000 !rg=0.921673 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,9,1:6)=(/ 270.380000,278.050000,287.310000,304.030000,345.810000,339.180000 /) -XPIZA_LKT(57,9,1:6)=(/ 0.800079,0.838972,0.878721,0.964549,0.981852,0.991282 /) -XCGA_LKT(57,9,1:6)=(/ 0.861823,0.836623,0.803967,0.754890,0.744167,0.751927 /) -XEXT_COEFF_550_LKT(57,9)=287.960000 !rg=0.921673 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,10,1:6)=(/ 227.470000,233.510000,241.050000,253.890000,281.950000,290.850000 /) -XPIZA_LKT(57,10,1:6)=(/ 0.793184,0.826344,0.864370,0.957992,0.978551,0.989720 /) -XCGA_LKT(57,10,1:6)=(/ 0.865397,0.843463,0.811477,0.764707,0.746760,0.749373 /) -XEXT_COEFF_550_LKT(57,10)=240.300000 !rg=0.921673 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,11,1:6)=(/ 190.360000,194.700000,200.760000,209.550000,229.900000,243.700000 /) -XPIZA_LKT(57,11,1:6)=(/ 0.786089,0.815565,0.849979,0.951883,0.974709,0.987558 /) -XCGA_LKT(57,11,1:6)=(/ 0.869517,0.849920,0.824690,0.772837,0.755080,0.746953 /) -XEXT_COEFF_550_LKT(57,11)=199.430000 !rg=0.921673 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,12,1:6)=(/ 158.500000,161.830000,166.220000,173.290000,187.550000,202.000000 /) -XPIZA_LKT(57,12,1:6)=(/ 0.779669,0.805689,0.836726,0.942954,0.969331,0.985026 /) -XCGA_LKT(57,12,1:6)=(/ 0.872820,0.856647,0.832237,0.785723,0.760013,0.746633 /) -XEXT_COEFF_550_LKT(57,12)=165.780000 !rg=0.921673 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,13,1:6)=(/ 131.810000,134.210000,137.460000,142.210000,153.280000,166.030000 /) -XPIZA_LKT(57,13,1:6)=(/ 0.771424,0.796169,0.824685,0.934798,0.964020,0.981775 /) -XCGA_LKT(57,13,1:6)=(/ 0.876523,0.861850,0.842097,0.795330,0.770707,0.748607 /) -XEXT_COEFF_550_LKT(57,13)=137.620000 !rg=0.921673 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,14,1:6)=(/ 109.700000,111.210000,113.770000,117.120000,124.560000,135.320000 /) -XPIZA_LKT(57,14,1:6)=(/ 0.764517,0.788883,0.813193,0.928444,0.958638,0.978981 /) -XCGA_LKT(57,14,1:6)=(/ 0.879070,0.866780,0.849540,0.805103,0.780343,0.753323 /) -XEXT_COEFF_550_LKT(57,14)=113.770000 !rg=0.921673 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,15,1:6)=(/ 90.936000,92.384000,94.154000,96.967000,101.510000,110.310000 /) -XPIZA_LKT(57,15,1:6)=(/ 0.755195,0.780329,0.804617,0.920958,0.951652,0.974989 /) -XCGA_LKT(57,15,1:6)=(/ 0.881687,0.871113,0.855927,0.813627,0.792413,0.760523 /) -XEXT_COEFF_550_LKT(57,15)=93.852000 !rg=0.921673 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,16,1:6)=(/ 75.326000,76.354000,77.837000,79.539000,83.609000,90.214000 /) -XPIZA_LKT(57,16,1:6)=(/ 0.745544,0.771973,0.795153,0.914895,0.942430,0.969620 /) -XCGA_LKT(57,16,1:6)=(/ 0.884253,0.874660,0.862310,0.820480,0.800623,0.766277 /) -XEXT_COEFF_550_LKT(57,16)=77.670000 !rg=0.921673 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,17,1:6)=(/ 62.572000,63.272000,64.165000,65.463000,68.477000,73.475000 /) -XPIZA_LKT(57,17,1:6)=(/ 0.734440,0.763063,0.786338,0.909058,0.935494,0.964655 /) -XCGA_LKT(57,17,1:6)=(/ 0.887313,0.878247,0.866313,0.827993,0.808207,0.773070 /) -XEXT_COEFF_550_LKT(57,17)=64.313000 !rg=0.921673 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,18,1:6)=(/ 51.927000,52.477000,53.181000,54.333000,56.067000,59.757000 /) -XPIZA_LKT(57,18,1:6)=(/ 0.722423,0.753141,0.777881,0.903508,0.928869,0.958569 /) -XCGA_LKT(57,18,1:6)=(/ 0.889997,0.881240,0.870577,0.833510,0.818887,0.784187 /) -XEXT_COEFF_550_LKT(57,18)=53.111000 !rg=0.921673 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,19,1:6)=(/ 43.026000,43.445000,44.049000,44.694000,46.307000,49.136000 /) -XPIZA_LKT(57,19,1:6)=(/ 0.709887,0.742240,0.768225,0.898042,0.921638,0.949736 /) -XCGA_LKT(57,19,1:6)=(/ 0.892933,0.884200,0.875343,0.838343,0.825603,0.791920 /) -XEXT_COEFF_550_LKT(57,19)=43.974000 !rg=0.921673 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(57,20,1:6)=(/ 35.721000,36.012000,36.385000,36.922000,38.041000,40.114000 /) -XPIZA_LKT(57,20,1:6)=(/ 0.696585,0.730756,0.758045,0.892460,0.915622,0.942242 /) -XCGA_LKT(57,20,1:6)=(/ 0.896223,0.887393,0.878357,0.843283,0.831183,0.799377 /) -XEXT_COEFF_550_LKT(57,20)=36.434000 !rg=0.921673 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,1,1:6)=(/ 665.790000,675.900000,813.840000,757.730000,1092.300000,345.170000 /) -XPIZA_LKT(58,1,1:6)=(/ 0.867802,0.904200,0.941608,0.983725,0.994660,0.992457 /) -XCGA_LKT(58,1,1:6)=(/ 0.830813,0.787103,0.773773,0.643930,0.799963,0.653237 /) -XEXT_COEFF_550_LKT(58,1)=827.540000 !rg=0.9985 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,2,1:6)=(/ 638.410000,653.090000,728.790000,708.330000,1050.000000,362.990000 /) -XPIZA_LKT(58,2,1:6)=(/ 0.862864,0.902251,0.934850,0.982603,0.994366,0.992927 /) -XCGA_LKT(58,2,1:6)=(/ 0.831550,0.792557,0.760900,0.645350,0.796650,0.660037 /) -XEXT_COEFF_550_LKT(58,2)=726.120000 !rg=0.9985 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,3,1:6)=(/ 588.320000,607.680000,637.710000,668.140000,957.570000,396.360000 /) -XPIZA_LKT(58,3,1:6)=(/ 0.856362,0.898830,0.929466,0.981200,0.993771,0.993420 /) -XCGA_LKT(58,3,1:6)=(/ 0.833877,0.805570,0.754547,0.660340,0.790043,0.690457 /) -XEXT_COEFF_550_LKT(58,3)=639.010000 !rg=0.9985 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,4,1:6)=(/ 528.800000,547.950000,565.460000,612.260000,827.780000,429.500000 /) -XPIZA_LKT(58,4,1:6)=(/ 0.846840,0.891907,0.923610,0.979428,0.992728,0.993776 /) -XCGA_LKT(58,4,1:6)=(/ 0.838580,0.808697,0.758940,0.683900,0.777790,0.720593 /) -XEXT_COEFF_550_LKT(58,4)=566.900000 !rg=0.9985 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,5,1:6)=(/ 465.460000,479.950000,497.510000,538.340000,691.490000,447.540000 /) -XPIZA_LKT(58,5,1:6)=(/ 0.834977,0.883804,0.916775,0.977546,0.991221,0.993866 /) -XCGA_LKT(58,5,1:6)=(/ 0.844607,0.810843,0.771073,0.703837,0.763513,0.742240 /) -XEXT_COEFF_550_LKT(58,5)=502.560000 !rg=0.9985 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,6,1:6)=(/ 404.270000,418.500000,433.470000,469.520000,570.430000,442.000000 /) -XPIZA_LKT(58,6,1:6)=(/ 0.822852,0.871291,0.906866,0.973201,0.989312,0.993634 /) -XCGA_LKT(58,6,1:6)=(/ 0.849893,0.818293,0.774263,0.719163,0.752383,0.753880 /) -XEXT_COEFF_550_LKT(58,6)=430.380000 !rg=0.9985 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,7,1:6)=(/ 347.070000,358.190000,369.430000,398.520000,467.350000,413.240000 /) -XPIZA_LKT(58,7,1:6)=(/ 0.811813,0.858276,0.897741,0.969816,0.986931,0.993035 /) -XCGA_LKT(58,7,1:6)=(/ 0.855263,0.826253,0.787043,0.733457,0.745850,0.757063 /) -XEXT_COEFF_550_LKT(58,7)=369.280000 !rg=0.9985 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,8,1:6)=(/ 294.870000,303.770000,314.370000,335.020000,382.980000,369.620000 /) -XPIZA_LKT(58,8,1:6)=(/ 0.802931,0.844559,0.885016,0.965140,0.984038,0.992060 /) -XCGA_LKT(58,8,1:6)=(/ 0.860153,0.833053,0.795873,0.746137,0.742783,0.755090 /) -XEXT_COEFF_550_LKT(58,8)=312.590000 !rg=0.9985 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,9,1:6)=(/ 249.080000,255.760000,263.190000,277.400000,312.210000,320.520000 /) -XPIZA_LKT(58,9,1:6)=(/ 0.795334,0.832150,0.871780,0.961634,0.980885,0.990718 /) -XCGA_LKT(58,9,1:6)=(/ 0.865150,0.840427,0.811003,0.757800,0.745903,0.752003 /) -XEXT_COEFF_550_LKT(58,9)=264.370000 !rg=0.9985 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,10,1:6)=(/ 209.260000,214.600000,220.920000,230.790000,257.420000,271.980000 /) -XPIZA_LKT(58,10,1:6)=(/ 0.788141,0.819364,0.856795,0.955326,0.976372,0.988708 /) -XCGA_LKT(58,10,1:6)=(/ 0.868890,0.848117,0.820157,0.771487,0.749417,0.748350 /) -XEXT_COEFF_550_LKT(58,10)=220.980000 !rg=0.9985 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,11,1:6)=(/ 175.230000,178.890000,183.680000,190.690000,209.690000,225.770000 /) -XPIZA_LKT(58,11,1:6)=(/ 0.781463,0.808844,0.843595,0.948334,0.972422,0.986494 /) -XCGA_LKT(58,11,1:6)=(/ 0.871817,0.854963,0.828250,0.782837,0.754327,0.745997 /) -XEXT_COEFF_550_LKT(58,11)=183.490000 !rg=0.9985 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,12,1:6)=(/ 145.900000,149.000000,152.480000,158.040000,171.530000,186.650000 /) -XPIZA_LKT(58,12,1:6)=(/ 0.774872,0.799792,0.830528,0.939201,0.966965,0.983429 /) -XCGA_LKT(58,12,1:6)=(/ 0.875277,0.860070,0.838503,0.791617,0.765187,0.747327 /) -XEXT_COEFF_550_LKT(58,12)=152.590000 !rg=0.9985 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,13,1:6)=(/ 121.480000,123.230000,126.100000,129.960000,139.180000,151.910000 /) -XPIZA_LKT(58,13,1:6)=(/ 0.768306,0.792107,0.818343,0.932398,0.962382,0.980979 /) -XCGA_LKT(58,13,1:6)=(/ 0.877987,0.865240,0.846013,0.801000,0.774907,0.750337 /) -XEXT_COEFF_550_LKT(58,13)=126.310000 !rg=0.9985 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,14,1:6)=(/ 100.990000,102.490000,104.300000,107.580000,113.790000,123.820000 /) -XPIZA_LKT(58,14,1:6)=(/ 0.760335,0.784767,0.809294,0.924834,0.955422,0.977448 /) -XCGA_LKT(58,14,1:6)=(/ 0.880457,0.869627,0.853353,0.810330,0.787053,0.757270 /) -XEXT_COEFF_550_LKT(58,14)=104.220000 !rg=0.9985 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,15,1:6)=(/ 83.904000,85.026000,86.518000,88.915000,93.280000,101.110000 /) -XPIZA_LKT(58,15,1:6)=(/ 0.751171,0.776188,0.799331,0.918175,0.946861,0.972592 /) -XCGA_LKT(58,15,1:6)=(/ 0.883273,0.872983,0.859593,0.815943,0.796127,0.762350 /) -XEXT_COEFF_550_LKT(58,15)=86.072000 !rg=0.9985 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,16,1:6)=(/ 69.492000,70.294000,71.409000,72.870000,76.804000,82.782000 /) -XPIZA_LKT(58,16,1:6)=(/ 0.740368,0.767141,0.790765,0.912327,0.938943,0.966976 /) -XCGA_LKT(58,16,1:6)=(/ 0.885813,0.876977,0.864477,0.825663,0.801447,0.766070 /) -XEXT_COEFF_550_LKT(58,16)=71.385000 !rg=0.9985 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,17,1:6)=(/ 57.667000,58.355000,59.058000,60.309000,62.836000,67.278000 /) -XPIZA_LKT(58,17,1:6)=(/ 0.728971,0.758779,0.782169,0.906112,0.931708,0.961616 /) -XCGA_LKT(58,17,1:6)=(/ 0.888517,0.880163,0.869537,0.831103,0.813477,0.778830 /) -XEXT_COEFF_550_LKT(58,17)=59.103000 !rg=0.9985 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,18,1:6)=(/ 47.921000,48.349000,48.941000,49.937000,51.608000,54.940000 /) -XPIZA_LKT(58,18,1:6)=(/ 0.717174,0.748129,0.773110,0.900906,0.924604,0.954388 /) -XCGA_LKT(58,18,1:6)=(/ 0.891593,0.882683,0.873303,0.835230,0.821523,0.787263 /) -XEXT_COEFF_550_LKT(58,18)=48.855000 !rg=0.9985 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,19,1:6)=(/ 39.694000,40.038000,40.484000,41.052000,42.608000,45.122000 /) -XPIZA_LKT(58,19,1:6)=(/ 0.703790,0.736644,0.763582,0.895822,0.918871,0.946020 /) -XCGA_LKT(58,19,1:6)=(/ 0.894460,0.885977,0.876787,0.841810,0.826473,0.792633 /) -XEXT_COEFF_550_LKT(58,19)=40.487000 !rg=0.9985 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(58,20,1:6)=(/ 32.932000,33.220000,33.517000,33.991000,34.995000,36.815000 /) -XPIZA_LKT(58,20,1:6)=(/ 0.690510,0.725418,0.753423,0.889483,0.912473,0.938406 /) -XCGA_LKT(58,20,1:6)=(/ 0.897637,0.889103,0.880523,0.845450,0.834767,0.804827 /) -XEXT_COEFF_550_LKT(58,20)=33.533000 !rg=0.9985 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,1,1:6)=(/ 585.780000,677.650000,776.400000,596.740000,1065.800000,386.010000 /) -XPIZA_LKT(59,1,1:6)=(/ 0.851316,0.908914,0.937781,0.978919,0.994381,0.993257 /) -XCGA_LKT(59,1,1:6)=(/ 0.827483,0.815957,0.798303,0.587227,0.803117,0.657853 /) -XEXT_COEFF_550_LKT(59,1)=779.030000 !rg=1.08173 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,2,1:6)=(/ 580.150000,607.440000,669.650000,592.780000,1009.900000,398.200000 /) -XPIZA_LKT(59,2,1:6)=(/ 0.856673,0.898885,0.930817,0.978807,0.994087,0.993444 /) -XCGA_LKT(59,2,1:6)=(/ 0.838210,0.807000,0.775503,0.613377,0.798237,0.680183 /) -XEXT_COEFF_550_LKT(59,2)=663.160000 !rg=1.08173 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,3,1:6)=(/ 537.420000,557.500000,591.710000,579.980000,898.770000,427.270000 /) -XPIZA_LKT(59,3,1:6)=(/ 0.848344,0.893296,0.922984,0.978587,0.993305,0.993771 /) -XCGA_LKT(59,3,1:6)=(/ 0.839817,0.802830,0.772753,0.656310,0.787537,0.710867 /) -XEXT_COEFF_550_LKT(59,3)=581.880000 !rg=1.08173 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,4,1:6)=(/ 484.750000,501.310000,524.570000,544.030000,761.020000,451.770000 /) -XPIZA_LKT(59,4,1:6)=(/ 0.837683,0.886063,0.916780,0.977132,0.992017,0.993972 /) -XCGA_LKT(59,4,1:6)=(/ 0.844050,0.808787,0.774427,0.686587,0.771843,0.735943 /) -XEXT_COEFF_550_LKT(59,4)=516.910000 !rg=1.08173 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,5,1:6)=(/ 428.140000,442.670000,455.440000,488.970000,628.640000,457.630000 /) -XPIZA_LKT(59,5,1:6)=(/ 0.825856,0.875540,0.911471,0.974530,0.990304,0.993907 /) -XCGA_LKT(59,5,1:6)=(/ 0.849297,0.818983,0.777560,0.708637,0.757570,0.752160 /) -XEXT_COEFF_550_LKT(59,5)=456.940000 !rg=1.08173 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,6,1:6)=(/ 371.670000,382.690000,398.590000,421.510000,517.490000,439.370000 /) -XPIZA_LKT(59,6,1:6)=(/ 0.814152,0.863680,0.900330,0.971712,0.988052,0.993505 /) -XCGA_LKT(59,6,1:6)=(/ 0.854503,0.822680,0.787270,0.725663,0.746617,0.758987 /) -XEXT_COEFF_550_LKT(59,6)=394.450000 !rg=1.08173 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,7,1:6)=(/ 319.100000,327.720000,340.310000,360.190000,423.880000,400.830000 /) -XPIZA_LKT(59,7,1:6)=(/ 0.805003,0.850896,0.890479,0.968168,0.985445,0.992728 /) -XCGA_LKT(59,7,1:6)=(/ 0.859397,0.829773,0.797410,0.736783,0.742053,0.758667 /) -XEXT_COEFF_550_LKT(59,7)=336.890000 !rg=1.08173 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,8,1:6)=(/ 271.180000,278.570000,288.270000,302.980000,348.180000,352.320000 /) -XPIZA_LKT(59,8,1:6)=(/ 0.796126,0.836370,0.877230,0.962825,0.982165,0.991594 /) -XCGA_LKT(59,8,1:6)=(/ 0.864327,0.837870,0.806193,0.753297,0.741787,0.755310 /) -XEXT_COEFF_550_LKT(59,8)=287.670000 !rg=1.08173 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,9,1:6)=(/ 229.120000,235.140000,241.480000,255.130000,283.540000,300.940000 /) -XPIZA_LKT(59,9,1:6)=(/ 0.790255,0.824390,0.864568,0.957604,0.979282,0.990087 /) -XCGA_LKT(59,9,1:6)=(/ 0.867710,0.846003,0.815580,0.764813,0.747667,0.751843 /) -XEXT_COEFF_550_LKT(59,9)=241.120000 !rg=1.08173 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,10,1:6)=(/ 193.130000,197.080000,202.450000,210.900000,232.350000,251.540000 /) -XPIZA_LKT(59,10,1:6)=(/ 0.784297,0.814314,0.849464,0.952425,0.975373,0.988083 /) -XCGA_LKT(59,10,1:6)=(/ 0.871587,0.851720,0.826080,0.775493,0.753017,0.748120 /) -XEXT_COEFF_550_LKT(59,10)=202.760000 !rg=1.08173 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,11,1:6)=(/ 161.070000,164.610000,168.380000,175.010000,191.850000,209.170000 /) -XPIZA_LKT(59,11,1:6)=(/ 0.778285,0.804382,0.836044,0.944316,0.969104,0.985159 /) -XCGA_LKT(59,11,1:6)=(/ 0.874020,0.858763,0.835657,0.788377,0.759143,0.747033 /) -XEXT_COEFF_550_LKT(59,11)=168.650000 !rg=1.08173 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,12,1:6)=(/ 134.580000,136.710000,140.070000,144.640000,155.370000,170.450000 /) -XPIZA_LKT(59,12,1:6)=(/ 0.771705,0.796120,0.823584,0.936237,0.965492,0.982821 /) -XCGA_LKT(59,12,1:6)=(/ 0.877040,0.862957,0.843090,0.796157,0.769897,0.748513 /) -XEXT_COEFF_550_LKT(59,12)=140.080000 !rg=1.08173 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,13,1:6)=(/ 111.940000,113.580000,115.610000,119.550000,127.110000,139.230000 /) -XPIZA_LKT(59,13,1:6)=(/ 0.764372,0.788372,0.813531,0.928573,0.959128,0.979525 /) -XCGA_LKT(59,13,1:6)=(/ 0.879413,0.868017,0.850750,0.806410,0.781607,0.754177 /) -XEXT_COEFF_550_LKT(59,13)=115.730000 !rg=1.08173 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,14,1:6)=(/ 93.050000,94.275000,96.018000,98.932000,103.840000,113.330000 /) -XPIZA_LKT(59,14,1:6)=(/ 0.755913,0.780143,0.804300,0.921384,0.951533,0.975401 /) -XCGA_LKT(59,14,1:6)=(/ 0.882250,0.871233,0.857273,0.811930,0.791563,0.759300 /) -XEXT_COEFF_550_LKT(59,14)=95.849000 !rg=1.08173 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,15,1:6)=(/ 77.125000,78.220000,79.596000,81.600000,85.982000,92.952000 /) -XPIZA_LKT(59,15,1:6)=(/ 0.746425,0.772200,0.794923,0.914734,0.942222,0.969785 /) -XCGA_LKT(59,15,1:6)=(/ 0.884330,0.875127,0.862063,0.821213,0.796100,0.761813 /) -XEXT_COEFF_550_LKT(59,15)=79.471000 !rg=1.08173 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,16,1:6)=(/ 63.934000,64.762000,65.668000,67.272000,70.527000,75.935000 /) -XPIZA_LKT(59,16,1:6)=(/ 0.735521,0.763465,0.785760,0.909388,0.934699,0.963768 /) -XCGA_LKT(59,16,1:6)=(/ 0.887013,0.878440,0.867790,0.829097,0.806437,0.770987 /) -XEXT_COEFF_550_LKT(59,16)=65.680000 !rg=1.08173 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,17,1:6)=(/ 53.220000,53.659000,54.452000,55.473000,57.377000,61.330000 /) -XPIZA_LKT(59,17,1:6)=(/ 0.723883,0.753634,0.778128,0.903664,0.928379,0.958460 /) -XCGA_LKT(59,17,1:6)=(/ 0.890037,0.881323,0.871970,0.832943,0.818117,0.782933 /) -XEXT_COEFF_550_LKT(59,17)=54.397000 !rg=1.08173 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,18,1:6)=(/ 44.090000,44.538000,45.079000,45.901000,47.648000,50.613000 /) -XPIZA_LKT(59,18,1:6)=(/ 0.711187,0.743359,0.768501,0.898236,0.921108,0.949857 /) -XCGA_LKT(59,18,1:6)=(/ 0.892740,0.884353,0.875023,0.838713,0.822220,0.787157 /) -XEXT_COEFF_550_LKT(59,18)=45.057000 !rg=1.08173 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,19,1:6)=(/ 36.576000,36.921000,37.291000,37.960000,39.180000,41.442000 /) -XPIZA_LKT(59,19,1:6)=(/ 0.697842,0.731984,0.758337,0.893014,0.915266,0.941797 /) -XCGA_LKT(59,19,1:6)=(/ 0.895813,0.887333,0.879063,0.844033,0.830353,0.797617 /) -XEXT_COEFF_550_LKT(59,19)=37.281000 !rg=1.08173 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(59,20,1:6)=(/ 30.387000,30.581000,30.906000,31.300000,32.062000,33.621000 /) -XPIZA_LKT(59,20,1:6)=(/ 0.684673,0.719332,0.748615,0.886791,0.909689,0.935379 /) -XCGA_LKT(59,20,1:6)=(/ 0.899287,0.890317,0.882390,0.846943,0.838403,0.809217 /) -XEXT_COEFF_550_LKT(59,20)=30.874000 !rg=1.08173 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,1,1:6)=(/ 568.900000,602.110000,657.130000,479.260000,1022.700000,412.720000 /) -XPIZA_LKT(60,1,1:6)=(/ 0.853410,0.902301,0.932169,0.973830,0.994158,0.993763 /) -XCGA_LKT(60,1,1:6)=(/ 0.842340,0.816167,0.800420,0.539677,0.802000,0.670367 /) -XEXT_COEFF_550_LKT(60,1)=659.810000 !rg=1.1719 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,2,1:6)=(/ 533.440000,555.450000,601.630000,510.790000,948.600000,430.400000 /) -XPIZA_LKT(60,2,1:6)=(/ 0.844946,0.894055,0.919656,0.975653,0.993653,0.993831 /) -XCGA_LKT(60,2,1:6)=(/ 0.840243,0.808830,0.785333,0.606350,0.796027,0.702593 /) -XEXT_COEFF_550_LKT(60,2)=584.330000 !rg=1.1719 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,3,1:6)=(/ 493.250000,510.170000,540.810000,523.840000,824.770000,454.780000 /) -XPIZA_LKT(60,3,1:6)=(/ 0.838174,0.886236,0.916388,0.976428,0.992658,0.994038 /) -XCGA_LKT(60,3,1:6)=(/ 0.843820,0.812070,0.772007,0.665740,0.781653,0.729483 /) -XEXT_COEFF_550_LKT(60,3)=536.010000 !rg=1.1719 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,4,1:6)=(/ 444.760000,458.630000,480.980000,491.690000,687.170000,469.140000 /) -XPIZA_LKT(60,4,1:6)=(/ 0.827494,0.878194,0.911129,0.975335,0.991135,0.994099 /) -XCGA_LKT(60,4,1:6)=(/ 0.848280,0.817453,0.775437,0.699127,0.764127,0.749137 /) -XEXT_COEFF_550_LKT(60,4)=478.320000 !rg=1.1719 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,5,1:6)=(/ 393.510000,404.820000,421.310000,441.700000,565.940000,461.940000 /) -XPIZA_LKT(60,5,1:6)=(/ 0.816755,0.868799,0.904227,0.972357,0.989118,0.993876 /) -XCGA_LKT(60,5,1:6)=(/ 0.854140,0.821450,0.789630,0.713437,0.749160,0.760073 /) -XEXT_COEFF_550_LKT(60,5)=416.050000 !rg=1.1719 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,6,1:6)=(/ 342.200000,349.820000,363.520000,381.540000,464.910000,431.320000 /) -XPIZA_LKT(60,6,1:6)=(/ 0.806454,0.856492,0.895012,0.969863,0.986778,0.993312 /) -XCGA_LKT(60,6,1:6)=(/ 0.859413,0.830200,0.793300,0.735400,0.741633,0.762687 /) -XEXT_COEFF_550_LKT(60,6)=364.550000 !rg=1.1719 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,7,1:6)=(/ 293.230000,300.520000,311.030000,325.770000,382.150000,384.660000 /) -XPIZA_LKT(60,7,1:6)=(/ 0.797607,0.841991,0.884048,0.966357,0.983922,0.992368 /) -XCGA_LKT(60,7,1:6)=(/ 0.862777,0.836897,0.800550,0.750670,0.738730,0.759840 /) -XEXT_COEFF_550_LKT(60,7)=310.900000 !rg=1.1719 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,8,1:6)=(/ 249.950000,255.310000,263.570000,275.630000,313.660000,332.460000 /) -XPIZA_LKT(60,8,1:6)=(/ 0.791864,0.829898,0.869747,0.961165,0.981003,0.991050 /) -XCGA_LKT(60,8,1:6)=(/ 0.867387,0.843443,0.812390,0.759430,0.742020,0.755170 /) -XEXT_COEFF_550_LKT(60,8)=264.090000 !rg=1.1719 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,9,1:6)=(/ 211.110000,215.870000,222.320000,232.240000,257.560000,280.520000 /) -XPIZA_LKT(60,9,1:6)=(/ 0.786025,0.817970,0.856219,0.955344,0.977080,0.989271 /) -XCGA_LKT(60,9,1:6)=(/ 0.870247,0.849677,0.823083,0.766863,0.748390,0.750257 /) -XEXT_COEFF_550_LKT(60,9)=220.220000 !rg=1.1719 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,10,1:6)=(/ 177.490000,181.150000,185.630000,194.150000,210.970000,232.730000 /) -XPIZA_LKT(60,10,1:6)=(/ 0.780042,0.808016,0.843418,0.947795,0.973515,0.987174 /) -XCGA_LKT(60,10,1:6)=(/ 0.873330,0.856400,0.830970,0.782050,0.758017,0.748540 /) -XEXT_COEFF_550_LKT(60,10)=185.320000 !rg=1.1719 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,11,1:6)=(/ 148.490000,151.590000,154.810000,160.900000,172.960000,191.430000 /) -XPIZA_LKT(60,11,1:6)=(/ 0.775319,0.799230,0.830209,0.939488,0.967662,0.984319 /) -XCGA_LKT(60,11,1:6)=(/ 0.875987,0.861193,0.840880,0.790290,0.765217,0.748047 /) -XEXT_COEFF_550_LKT(60,11)=155.020000 !rg=1.1719 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,12,1:6)=(/ 123.800000,125.800000,128.390000,132.980000,141.580000,156.330000 /) -XPIZA_LKT(60,12,1:6)=(/ 0.767725,0.791596,0.818936,0.932382,0.962826,0.981563 /) -XCGA_LKT(60,12,1:6)=(/ 0.878477,0.866317,0.847347,0.801950,0.776573,0.751293 /) -XEXT_COEFF_550_LKT(60,12)=128.240000 !rg=1.1719 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,13,1:6)=(/ 103.190000,104.420000,106.510000,109.830000,115.790000,127.110000 /) -XPIZA_LKT(60,13,1:6)=(/ 0.760330,0.783675,0.808754,0.924968,0.955609,0.977632 /) -XCGA_LKT(60,13,1:6)=(/ 0.881220,0.869867,0.854757,0.808050,0.786320,0.755457 /) -XEXT_COEFF_550_LKT(60,13)=106.410000 !rg=1.1719 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,14,1:6)=(/ 85.625000,86.914000,88.329000,90.845000,95.527000,104.080000 /) -XPIZA_LKT(60,14,1:6)=(/ 0.751635,0.776483,0.799116,0.917699,0.946889,0.972471 /) -XCGA_LKT(60,14,1:6)=(/ 0.883340,0.873670,0.859583,0.817477,0.791853,0.758177 /) -XEXT_COEFF_550_LKT(60,14)=88.389000 !rg=1.1719 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,15,1:6)=(/ 71.163000,72.102000,73.146000,74.906000,78.563000,85.175000 /) -XPIZA_LKT(60,15,1:6)=(/ 0.741482,0.767988,0.790622,0.911773,0.939268,0.967445 /) -XCGA_LKT(60,15,1:6)=(/ 0.885990,0.877060,0.865277,0.825387,0.802400,0.766563 /) -XEXT_COEFF_550_LKT(60,15)=72.992000 !rg=1.1719 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,16,1:6)=(/ 59.010000,59.661000,60.489000,61.847000,64.107000,68.765000 /) -XPIZA_LKT(60,16,1:6)=(/ 0.730634,0.758978,0.782160,0.905905,0.931990,0.961918 /) -XCGA_LKT(60,16,1:6)=(/ 0.888590,0.879863,0.869990,0.830357,0.812887,0.776850 /) -XEXT_COEFF_550_LKT(60,16)=60.582000 !rg=1.1719 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,17,1:6)=(/ 48.976000,49.492000,50.039000,51.129000,52.725000,56.277000 /) -XPIZA_LKT(60,17,1:6)=(/ 0.717959,0.749157,0.773225,0.900906,0.925320,0.955209 /) -XCGA_LKT(60,17,1:6)=(/ 0.891363,0.882987,0.873403,0.835993,0.820127,0.784230 /) -XEXT_COEFF_550_LKT(60,17)=50.065000 !rg=1.1719 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,18,1:6)=(/ 40.660000,41.065000,41.503000,42.176000,43.612000,46.291000 /) -XPIZA_LKT(60,18,1:6)=(/ 0.705199,0.738093,0.764239,0.895351,0.918589,0.946599 /) -XCGA_LKT(60,18,1:6)=(/ 0.894270,0.885867,0.877170,0.841040,0.826707,0.792927 /) -XEXT_COEFF_550_LKT(60,18)=41.402000 !rg=1.1719 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,19,1:6)=(/ 33.747000,34.017000,34.368000,34.874000,35.786000,37.640000 /) -XPIZA_LKT(60,19,1:6)=(/ 0.692154,0.726397,0.754264,0.889895,0.912795,0.939164 /) -XCGA_LKT(60,19,1:6)=(/ 0.897540,0.888707,0.880587,0.845000,0.834947,0.804027 /) -XEXT_COEFF_550_LKT(60,19)=34.406000 !rg=1.1719 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(60,20,1:6)=(/ 27.992000,28.211000,28.432000,28.893000,29.540000,30.930000 /) -XPIZA_LKT(60,20,1:6)=(/ 0.678323,0.713943,0.742970,0.884074,0.906958,0.931889 /) -XCGA_LKT(60,20,1:6)=(/ 0.900757,0.891850,0.883590,0.849117,0.840013,0.810717 /) -XEXT_COEFF_550_LKT(60,20)=28.442000 !rg=1.1719 sigma=2.95 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET6',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET6 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET7() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET7',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(61,1,1:6)=(/ 511.090000,502.070000,520.650000,430.770000,946.590000,437.600000 /) -XPIZA_LKT(61,1,1:6)=(/ 0.842644,0.881515,0.918709,0.971421,0.993616,0.993986 /) -XCGA_LKT(61,1,1:6)=(/ 0.844147,0.792317,0.795810,0.562880,0.799427,0.702427 /) -XEXT_COEFF_550_LKT(61,1)=542.750000 !rg=1.26958 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,2,1:6)=(/ 490.760000,505.380000,525.210000,478.140000,867.890000,460.360000 /) -XPIZA_LKT(61,2,1:6)=(/ 0.836999,0.887094,0.914290,0.974009,0.993010,0.994117 /) -XCGA_LKT(61,2,1:6)=(/ 0.846640,0.811337,0.780853,0.633940,0.789457,0.726207 /) -XEXT_COEFF_550_LKT(61,2)=523.510000 !rg=1.26958 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,3,1:6)=(/ 452.030000,467.400000,488.290000,483.250000,740.690000,477.900000 /) -XPIZA_LKT(61,3,1:6)=(/ 0.829314,0.879829,0.912404,0.974485,0.991755,0.994230 /) -XCGA_LKT(61,3,1:6)=(/ 0.850230,0.818490,0.793013,0.681607,0.771577,0.746073 /) -XEXT_COEFF_550_LKT(61,3)=487.850000 !rg=1.26958 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,4,1:6)=(/ 407.810000,420.440000,437.130000,448.850000,612.920000,480.710000 /) -XPIZA_LKT(61,4,1:6)=(/ 0.818154,0.871427,0.906903,0.973244,0.989965,0.994153 /) -XCGA_LKT(61,4,1:6)=(/ 0.854460,0.823887,0.793887,0.709977,0.753403,0.760150 /) -XEXT_COEFF_550_LKT(61,4)=438.490000 !rg=1.26958 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,5,1:6)=(/ 360.690000,371.230000,385.950000,400.450000,504.360000,460.040000 /) -XPIZA_LKT(61,5,1:6)=(/ 0.807495,0.859678,0.898330,0.970687,0.987808,0.993775 /) -XCGA_LKT(61,5,1:6)=(/ 0.858093,0.828360,0.790413,0.730787,0.741707,0.766130 /) -XEXT_COEFF_550_LKT(61,5)=384.710000 !rg=1.26958 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,6,1:6)=(/ 315.190000,322.860000,331.170000,350.420000,417.650000,418.680000 /) -XPIZA_LKT(61,6,1:6)=(/ 0.799367,0.848000,0.890021,0.966859,0.985263,0.993033 /) -XCGA_LKT(61,6,1:6)=(/ 0.862693,0.835777,0.803820,0.742267,0.738150,0.764910 /) -XEXT_COEFF_550_LKT(61,6)=333.450000 !rg=1.26958 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,7,1:6)=(/ 269.340000,276.480000,284.120000,297.650000,345.770000,366.090000 /) -XPIZA_LKT(61,7,1:6)=(/ 0.792410,0.834693,0.876780,0.963348,0.981676,0.991909 /) -XCGA_LKT(61,7,1:6)=(/ 0.866567,0.842713,0.811660,0.756987,0.737463,0.759840 /) -XEXT_COEFF_550_LKT(61,7)=285.510000 !rg=1.26958 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,8,1:6)=(/ 230.360000,235.060000,240.960000,253.550000,283.710000,311.640000 /) -XPIZA_LKT(61,8,1:6)=(/ 0.787291,0.822939,0.863607,0.957769,0.979306,0.990405 /) -XCGA_LKT(61,8,1:6)=(/ 0.869737,0.848693,0.819363,0.767207,0.745300,0.754450 /) -XEXT_COEFF_550_LKT(61,8)=241.310000 !rg=1.26958 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,9,1:6)=(/ 193.840000,198.390000,203.620000,211.700000,234.330000,259.690000 /) -XPIZA_LKT(61,9,1:6)=(/ 0.781859,0.811609,0.849155,0.951591,0.974697,0.988351 /) -XCGA_LKT(61,9,1:6)=(/ 0.872237,0.854513,0.826497,0.778207,0.747643,0.748697 /) -XEXT_COEFF_550_LKT(61,9)=203.280000 !rg=1.26958 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,10,1:6)=(/ 163.570000,166.760000,170.770000,177.600000,191.890000,214.650000 /) -XPIZA_LKT(61,10,1:6)=(/ 0.777137,0.802310,0.835927,0.944335,0.970964,0.986026 /) -XCGA_LKT(61,10,1:6)=(/ 0.875257,0.859353,0.837253,0.783577,0.760923,0.747550 /) -XEXT_COEFF_550_LKT(61,10)=169.480000 !rg=1.26958 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,11,1:6)=(/ 136.600000,139.390000,142.450000,147.740000,157.550000,175.590000 /) -XPIZA_LKT(61,11,1:6)=(/ 0.770906,0.794134,0.823688,0.935825,0.965482,0.983044 /) -XCGA_LKT(61,11,1:6)=(/ 0.877373,0.864657,0.844070,0.797017,0.769610,0.748160 /) -XEXT_COEFF_550_LKT(61,11)=142.070000 !rg=1.26958 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,12,1:6)=(/ 114.160000,115.850000,118.090000,122.090000,129.130000,143.120000 /) -XPIZA_LKT(61,12,1:6)=(/ 0.764346,0.787050,0.813144,0.928653,0.959540,0.979865 /) -XCGA_LKT(61,12,1:6)=(/ 0.880197,0.868283,0.852033,0.803540,0.781077,0.752113 /) -XEXT_COEFF_550_LKT(61,12)=117.710000 !rg=1.26958 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,13,1:6)=(/ 94.836000,96.379000,97.928000,101.030000,106.240000,116.670000 /) -XPIZA_LKT(61,13,1:6)=(/ 0.756140,0.780185,0.803298,0.920847,0.951900,0.975426 /) -XCGA_LKT(61,13,1:6)=(/ 0.882357,0.872350,0.857313,0.813633,0.787353,0.755017 /) -XEXT_COEFF_550_LKT(61,13)=98.007000 !rg=1.26958 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,14,1:6)=(/ 78.893000,79.974000,81.301000,83.137000,87.544000,95.542000 /) -XPIZA_LKT(61,14,1:6)=(/ 0.746570,0.771842,0.794762,0.914578,0.943462,0.970273 /) -XCGA_LKT(61,14,1:6)=(/ 0.884890,0.875550,0.863090,0.820980,0.797897,0.762407 /) -XEXT_COEFF_550_LKT(61,14)=81.317000 !rg=1.26958 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,15,1:6)=(/ 65.637000,66.276000,67.367000,68.906000,71.644000,77.274000 /) -XPIZA_LKT(61,15,1:6)=(/ 0.736733,0.763865,0.786160,0.909114,0.936432,0.965806 /) -XCGA_LKT(61,15,1:6)=(/ 0.887533,0.878043,0.867973,0.827863,0.808073,0.771473 /) -XEXT_COEFF_550_LKT(61,15)=67.317000 !rg=1.26958 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,16,1:6)=(/ 54.335000,55.015000,55.705000,56.857000,58.599000,62.836000 /) -XPIZA_LKT(61,16,1:6)=(/ 0.724834,0.754485,0.777882,0.903513,0.928967,0.959486 /) -XCGA_LKT(61,16,1:6)=(/ 0.889660,0.881850,0.871713,0.833940,0.817157,0.780580 /) -XEXT_COEFF_550_LKT(61,16)=55.656000 !rg=1.26958 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,17,1:6)=(/ 45.183000,45.508000,46.138000,46.903000,48.475000,51.690000 /) -XPIZA_LKT(61,17,1:6)=(/ 0.712697,0.744135,0.769122,0.898202,0.922333,0.951492 /) -XCGA_LKT(61,17,1:6)=(/ 0.892773,0.884167,0.875573,0.838580,0.824747,0.788930 /) -XEXT_COEFF_550_LKT(61,17)=46.169000 !rg=1.26958 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,18,1:6)=(/ 37.529000,37.779000,38.261000,38.921000,39.944000,42.178000 /) -XPIZA_LKT(61,18,1:6)=(/ 0.699516,0.732918,0.759380,0.893097,0.916137,0.943660 /) -XCGA_LKT(61,18,1:6)=(/ 0.895900,0.886807,0.879050,0.843410,0.831283,0.798427 /) -XEXT_COEFF_550_LKT(61,18)=38.286000 !rg=1.26958 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,19,1:6)=(/ 31.097000,31.392000,31.659000,32.141000,32.806000,34.411000 /) -XPIZA_LKT(61,19,1:6)=(/ 0.686010,0.721112,0.749278,0.887303,0.910087,0.936204 /) -XCGA_LKT(61,19,1:6)=(/ 0.898770,0.890447,0.882037,0.847520,0.837900,0.807450 /) -XEXT_COEFF_550_LKT(61,19)=31.643000 !rg=1.26958 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(61,20,1:6)=(/ 25.831000,25.971000,26.225000,26.540000,27.147000,28.383000 /) -XPIZA_LKT(61,20,1:6)=(/ 0.672772,0.707799,0.738096,0.880636,0.904463,0.929209 /) -XCGA_LKT(61,20,1:6)=(/ 0.902323,0.893187,0.885253,0.850820,0.843280,0.815220 /) -XEXT_COEFF_550_LKT(61,20)=26.222000 !rg=1.26958 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,1,1:6)=(/ 468.690000,467.500000,428.760000,443.900000,857.720000,474.520000 /) -XPIZA_LKT(62,1,1:6)=(/ 0.832770,0.879949,0.906923,0.972118,0.992898,0.994170 /) -XCGA_LKT(62,1,1:6)=(/ 0.847993,0.807813,0.772673,0.633503,0.791613,0.741077 /) -XEXT_COEFF_550_LKT(62,1)=435.830000 !rg=1.37541 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,2,1:6)=(/ 452.580000,464.420000,464.220000,472.630000,771.270000,487.260000 /) -XPIZA_LKT(62,2,1:6)=(/ 0.827678,0.878765,0.912562,0.973315,0.992084,0.994333 /) -XCGA_LKT(62,2,1:6)=(/ 0.851170,0.817977,0.798207,0.673597,0.777680,0.747377 /) -XEXT_COEFF_550_LKT(62,2)=476.490000 !rg=1.37541 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,3,1:6)=(/ 416.780000,429.550000,443.690000,453.640000,649.490000,495.600000 /) -XPIZA_LKT(62,3,1:6)=(/ 0.818899,0.872931,0.908334,0.972984,0.990563,0.994349 /) -XCGA_LKT(62,3,1:6)=(/ 0.855573,0.822577,0.798267,0.703503,0.757377,0.760270 /) -XEXT_COEFF_550_LKT(62,3)=448.980000 !rg=1.37541 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,4,1:6)=(/ 375.600000,386.940000,399.610000,412.840000,538.290000,485.660000 /) -XPIZA_LKT(62,4,1:6)=(/ 0.808405,0.863705,0.901939,0.971226,0.988570,0.994135 /) -XCGA_LKT(62,4,1:6)=(/ 0.859640,0.827743,0.800713,0.721710,0.741003,0.768923 /) -XEXT_COEFF_550_LKT(62,4)=403.220000 !rg=1.37541 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,5,1:6)=(/ 331.170000,340.770000,352.340000,365.270000,449.300000,452.040000 /) -XPIZA_LKT(62,5,1:6)=(/ 0.798969,0.851901,0.892010,0.968644,0.986082,0.993587 /) -XCGA_LKT(62,5,1:6)=(/ 0.863440,0.834710,0.803997,0.740637,0.733560,0.770177 /) -XEXT_COEFF_550_LKT(62,5)=353.380000 !rg=1.37541 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,6,1:6)=(/ 289.500000,297.270000,305.800000,319.870000,372.930000,401.490000 /) -XPIZA_LKT(62,6,1:6)=(/ 0.792096,0.838992,0.882388,0.963974,0.983641,0.992665 /) -XCGA_LKT(62,6,1:6)=(/ 0.866600,0.839353,0.810777,0.745217,0.733900,0.765477 /) -XEXT_COEFF_550_LKT(62,6)=304.850000 !rg=1.37541 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,7,1:6)=(/ 247.830000,254.640000,260.970000,272.540000,309.350000,344.630000 /) -XPIZA_LKT(62,7,1:6)=(/ 0.787980,0.826624,0.869717,0.959736,0.980393,0.991347 /) -XCGA_LKT(62,7,1:6)=(/ 0.869710,0.846150,0.818573,0.759900,0.738297,0.758757 /) -XEXT_COEFF_550_LKT(62,7)=262.020000 !rg=1.37541 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,8,1:6)=(/ 211.830000,216.140000,222.070000,232.180000,256.170000,289.540000 /) -XPIZA_LKT(62,8,1:6)=(/ 0.782568,0.815290,0.855923,0.953956,0.977154,0.989619 /) -XCGA_LKT(62,8,1:6)=(/ 0.872550,0.852197,0.826273,0.767683,0.746293,0.752253 /) -XEXT_COEFF_550_LKT(62,8)=220.650000 !rg=1.37541 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,9,1:6)=(/ 178.550000,182.440000,186.820000,193.310000,213.710000,240.110000 /) -XPIZA_LKT(62,9,1:6)=(/ 0.778601,0.805512,0.841453,0.948530,0.971959,0.987106 /) -XCGA_LKT(62,9,1:6)=(/ 0.874960,0.858540,0.834007,0.785410,0.752123,0.747577 /) -XEXT_COEFF_550_LKT(62,9)=186.900000 !rg=1.37541 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,10,1:6)=(/ 150.250000,153.120000,156.900000,162.580000,175.750000,197.200000 /) -XPIZA_LKT(62,10,1:6)=(/ 0.774059,0.797739,0.828892,0.939865,0.967154,0.984581 /) -XCGA_LKT(62,10,1:6)=(/ 0.876657,0.862803,0.840513,0.792483,0.759943,0.746053 /) -XEXT_COEFF_550_LKT(62,10)=156.540000 !rg=1.37541 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,11,1:6)=(/ 126.070000,128.140000,130.940000,134.950000,144.220000,161.050000 /) -XPIZA_LKT(62,11,1:6)=(/ 0.768349,0.789872,0.817197,0.932657,0.962598,0.981462 /) -XCGA_LKT(62,11,1:6)=(/ 0.879037,0.867347,0.849227,0.800360,0.773813,0.748407 /) -XEXT_COEFF_550_LKT(62,11)=130.070000 !rg=1.37541 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,12,1:6)=(/ 104.970000,106.560000,108.680000,112.040000,118.720000,131.130000 /) -XPIZA_LKT(62,12,1:6)=(/ 0.760818,0.783116,0.807446,0.924596,0.955306,0.977400 /) -XCGA_LKT(62,12,1:6)=(/ 0.881197,0.870857,0.854717,0.810153,0.780717,0.750660 /) -XEXT_COEFF_550_LKT(62,12)=108.650000 !rg=1.37541 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,13,1:6)=(/ 87.382000,88.546000,90.207000,92.289000,97.482000,107.070000 /) -XPIZA_LKT(62,13,1:6)=(/ 0.751581,0.775903,0.798706,0.917672,0.948050,0.973036 /) -XCGA_LKT(62,13,1:6)=(/ 0.883917,0.873957,0.860997,0.817373,0.793100,0.758240 /) -XEXT_COEFF_550_LKT(62,13)=90.273000 !rg=1.37541 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,14,1:6)=(/ 72.724000,73.471000,74.749000,76.287000,79.863000,86.735000 /) -XPIZA_LKT(62,14,1:6)=(/ 0.742557,0.768070,0.789694,0.912363,0.940546,0.968983 /) -XCGA_LKT(62,14,1:6)=(/ 0.885963,0.877467,0.865713,0.825087,0.802663,0.766043 /) -XEXT_COEFF_550_LKT(62,14)=74.803000 !rg=1.37541 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,15,1:6)=(/ 60.388000,61.066000,61.914000,63.294000,65.492000,70.510000 /) -XPIZA_LKT(62,15,1:6)=(/ 0.731373,0.759482,0.782306,0.906479,0.933701,0.963651 /) -XCGA_LKT(62,15,1:6)=(/ 0.888457,0.880287,0.869540,0.831347,0.814083,0.776917 /) -XEXT_COEFF_550_LKT(62,15)=61.858000 !rg=1.37541 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,16,1:6)=(/ 50.091000,50.606000,51.307000,52.195000,54.158000,57.824000 /) -XPIZA_LKT(62,16,1:6)=(/ 0.719345,0.749893,0.773488,0.900912,0.925842,0.956036 /) -XCGA_LKT(62,16,1:6)=(/ 0.891230,0.883063,0.874253,0.836330,0.821010,0.784503 /) -XEXT_COEFF_550_LKT(62,16)=51.241000 !rg=1.37541 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,17,1:6)=(/ 41.622000,41.984000,42.396000,43.035000,44.523000,47.211000 /) -XPIZA_LKT(62,17,1:6)=(/ 0.706617,0.739286,0.764664,0.895731,0.919484,0.948476 /) -XCGA_LKT(62,17,1:6)=(/ 0.894287,0.885967,0.877033,0.841880,0.827240,0.792340 /) -XEXT_COEFF_550_LKT(62,17)=42.492000 !rg=1.37541 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,18,1:6)=(/ 34.547000,34.847000,35.171000,35.767000,36.656000,38.515000 /) -XPIZA_LKT(62,18,1:6)=(/ 0.693234,0.727734,0.754907,0.890584,0.913790,0.941042 /) -XCGA_LKT(62,18,1:6)=(/ 0.897180,0.888750,0.880103,0.845747,0.835687,0.804247 /) -XEXT_COEFF_550_LKT(62,18)=35.141000 !rg=1.37541 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,19,1:6)=(/ 28.669000,28.882000,29.200000,29.505000,30.314000,31.759000 /) -XPIZA_LKT(62,19,1:6)=(/ 0.679865,0.715114,0.744404,0.884149,0.907451,0.933012 /) -XCGA_LKT(62,19,1:6)=(/ 0.900417,0.891697,0.883973,0.849010,0.841180,0.811807 /) -XEXT_COEFF_550_LKT(62,19)=29.159000 !rg=1.37541 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(62,20,1:6)=(/ 23.811000,23.957000,24.129000,24.396000,24.983000,26.033000 /) -XPIZA_LKT(62,20,1:6)=(/ 0.666463,0.702123,0.732414,0.877538,0.901590,0.926620 /) -XCGA_LKT(62,20,1:6)=(/ 0.904007,0.894813,0.886607,0.852800,0.845117,0.818343 /) -XEXT_COEFF_550_LKT(62,20)=24.166000 !rg=1.37541 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,1,1:6)=(/ 437.190000,463.930000,441.400000,478.300000,744.750000,509.680000 /) -XPIZA_LKT(63,1,1:6)=(/ 0.823671,0.881232,0.897153,0.974358,0.991785,0.994466 /) -XCGA_LKT(63,1,1:6)=(/ 0.855760,0.833647,0.791067,0.712330,0.773503,0.763577 /) -XEXT_COEFF_550_LKT(63,1)=430.720000 !rg=1.49006 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,2,1:6)=(/ 413.650000,429.490000,435.750000,468.150000,664.730000,509.020000 /) -XPIZA_LKT(63,2,1:6)=(/ 0.817692,0.869756,0.906490,0.973296,0.990756,0.994487 /) -XCGA_LKT(63,2,1:6)=(/ 0.856187,0.824047,0.802363,0.718913,0.759183,0.763937 /) -XEXT_COEFF_550_LKT(63,2)=436.640000 !rg=1.49006 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,3,1:6)=(/ 383.650000,396.150000,404.280000,428.420000,559.890000,506.740000 /) -XPIZA_LKT(63,3,1:6)=(/ 0.808700,0.863980,0.902754,0.970615,0.989002,0.994395 /) -XCGA_LKT(63,3,1:6)=(/ 0.860893,0.829180,0.799823,0.727183,0.740007,0.771813 /) -XEXT_COEFF_550_LKT(63,3)=406.930000 !rg=1.49006 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,4,1:6)=(/ 345.510000,356.270000,365.360000,384.120000,470.630000,483.440000 /) -XPIZA_LKT(63,4,1:6)=(/ 0.798834,0.854644,0.895773,0.967845,0.986905,0.994036 /) -XCGA_LKT(63,4,1:6)=(/ 0.864583,0.834100,0.803387,0.737547,0.728953,0.775403 /) -XEXT_COEFF_550_LKT(63,4)=366.720000 !rg=1.49006 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,5,1:6)=(/ 305.010000,313.600000,322.460000,334.580000,396.590000,437.830000 /) -XPIZA_LKT(63,5,1:6)=(/ 0.791906,0.843604,0.886216,0.966320,0.984499,0.993315 /) -XCGA_LKT(63,5,1:6)=(/ 0.867570,0.838827,0.810930,0.747387,0.727023,0.772307 /) -XEXT_COEFF_550_LKT(63,5)=324.230000 !rg=1.49006 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,6,1:6)=(/ 266.020000,272.650000,281.170000,294.540000,334.240000,380.590000 /) -XPIZA_LKT(63,6,1:6)=(/ 0.786484,0.831053,0.873898,0.960051,0.981862,0.992206 /) -XCGA_LKT(63,6,1:6)=(/ 0.870247,0.845497,0.813047,0.757373,0.731310,0.765177 /) -XEXT_COEFF_550_LKT(63,6)=279.210000 !rg=1.49006 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,7,1:6)=(/ 228.070000,233.900000,239.980000,251.160000,279.230000,321.700000 /) -XPIZA_LKT(63,7,1:6)=(/ 0.782574,0.818491,0.861655,0.956201,0.978492,0.990692 /) -XCGA_LKT(63,7,1:6)=(/ 0.872400,0.851473,0.822300,0.769507,0.739383,0.757220 /) -XEXT_COEFF_550_LKT(63,7)=239.610000 !rg=1.49006 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,8,1:6)=(/ 194.520000,198.810000,204.000000,212.810000,232.830000,267.260000 /) -XPIZA_LKT(63,8,1:6)=(/ 0.779251,0.808902,0.847658,0.950073,0.974645,0.988708 /) -XCGA_LKT(63,8,1:6)=(/ 0.874577,0.856640,0.829450,0.777943,0.745907,0.750250 /) -XEXT_COEFF_550_LKT(63,8)=203.280000 !rg=1.49006 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,9,1:6)=(/ 164.510000,167.970000,171.540000,177.370000,192.320000,219.690000 /) -XPIZA_LKT(63,9,1:6)=(/ 0.775305,0.800315,0.834400,0.944669,0.970630,0.986287 /) -XCGA_LKT(63,9,1:6)=(/ 0.876913,0.861397,0.839600,0.788627,0.757870,0.747280 /) -XEXT_COEFF_550_LKT(63,9)=171.760000 !rg=1.49006 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,10,1:6)=(/ 138.390000,141.150000,143.990000,148.530000,160.610000,180.930000 /) -XPIZA_LKT(63,10,1:6)=(/ 0.769804,0.792029,0.822570,0.936096,0.964609,0.982879 /) -XCGA_LKT(63,10,1:6)=(/ 0.878610,0.865943,0.846157,0.798893,0.766410,0.746020 /) -XEXT_COEFF_550_LKT(63,10)=144.130000 !rg=1.49006 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,11,1:6)=(/ 115.920000,117.930000,120.160000,123.390000,132.190000,147.270000 /) -XPIZA_LKT(63,11,1:6)=(/ 0.763887,0.785099,0.811879,0.928671,0.959290,0.979835 /) -XCGA_LKT(63,11,1:6)=(/ 0.880367,0.870300,0.852503,0.807843,0.774247,0.747377 /) -XEXT_COEFF_550_LKT(63,11)=119.890000 !rg=1.49006 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,12,1:6)=(/ 96.678000,98.185000,99.868000,102.490000,108.690000,120.220000 /) -XPIZA_LKT(63,12,1:6)=(/ 0.756109,0.778637,0.802451,0.921044,0.952134,0.975428 /) -XCGA_LKT(63,12,1:6)=(/ 0.882787,0.873093,0.858730,0.814437,0.787337,0.754003 /) -XEXT_COEFF_550_LKT(63,12)=100.020000 !rg=1.49006 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,13,1:6)=(/ 80.498000,81.387000,82.816000,84.607000,88.910000,97.244000 /) -XPIZA_LKT(63,13,1:6)=(/ 0.747701,0.771674,0.793890,0.915135,0.945219,0.971814 /) -XCGA_LKT(63,13,1:6)=(/ 0.884853,0.876407,0.863480,0.822460,0.797610,0.761020 /) -XEXT_COEFF_550_LKT(63,13)=82.986000 !rg=1.49006 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,14,1:6)=(/ 66.984000,67.769000,68.622000,70.161000,73.227000,79.189000 /) -XPIZA_LKT(63,14,1:6)=(/ 0.737500,0.764608,0.785918,0.909068,0.936620,0.966447 /) -XCGA_LKT(63,14,1:6)=(/ 0.887200,0.879137,0.868543,0.829157,0.808840,0.771953 /) -XEXT_COEFF_550_LKT(63,14)=68.621000 !rg=1.49006 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,15,1:6)=(/ 55.707000,56.281000,56.988000,58.213000,60.212000,64.629000 /) -XPIZA_LKT(63,15,1:6)=(/ 0.726503,0.755043,0.777783,0.903610,0.929206,0.960190 /) -XCGA_LKT(63,15,1:6)=(/ 0.889873,0.881607,0.872460,0.833283,0.817457,0.780250 /) -XEXT_COEFF_550_LKT(63,15)=56.873000 !rg=1.49006 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,16,1:6)=(/ 46.176000,46.654000,47.169000,48.020000,49.770000,53.059000 /) -XPIZA_LKT(63,16,1:6)=(/ 0.713564,0.744913,0.769417,0.898259,0.922531,0.952497 /) -XCGA_LKT(63,16,1:6)=(/ 0.892613,0.884737,0.875800,0.839767,0.822063,0.785130 /) -XEXT_COEFF_550_LKT(63,16)=47.098000 !rg=1.49006 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,17,1:6)=(/ 38.357000,38.747000,39.099000,39.626000,40.905000,43.285000 /) -XPIZA_LKT(63,17,1:6)=(/ 0.700631,0.734424,0.760276,0.892877,0.916445,0.944416 /) -XCGA_LKT(63,17,1:6)=(/ 0.895427,0.887580,0.879373,0.843903,0.831587,0.798390 /) -XEXT_COEFF_550_LKT(63,17)=39.114000 !rg=1.49006 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,18,1:6)=(/ 31.885000,32.115000,32.416000,32.877000,33.692000,35.417000 /) -XPIZA_LKT(63,18,1:6)=(/ 0.687627,0.722043,0.750224,0.887468,0.909860,0.936585 /) -XCGA_LKT(63,18,1:6)=(/ 0.898660,0.889957,0.882270,0.846633,0.837930,0.807387 /) -XEXT_COEFF_550_LKT(63,18)=32.377000 !rg=1.49006 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,19,1:6)=(/ 26.450000,26.616000,26.846000,27.208000,27.896000,29.195000 /) -XPIZA_LKT(63,19,1:6)=(/ 0.673863,0.709056,0.739005,0.881520,0.904785,0.929902 /) -XCGA_LKT(63,19,1:6)=(/ 0.902017,0.893273,0.885240,0.851480,0.841873,0.812410 /) -XEXT_COEFF_550_LKT(63,19)=26.838000 !rg=1.49006 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(63,20,1:6)=(/ 21.950000,22.108000,22.256000,22.475000,22.958000,23.904000 /) -XPIZA_LKT(63,20,1:6)=(/ 0.660450,0.696347,0.727248,0.873998,0.898907,0.923204 /) -XCGA_LKT(63,20,1:6)=(/ 0.905437,0.896497,0.888387,0.854417,0.848050,0.822793 /) -XEXT_COEFF_550_LKT(63,20)=22.260000 !rg=1.49006 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,1,1:6)=(/ 398.630000,408.420000,449.150000,499.530000,624.760000,523.690000 /) -XPIZA_LKT(64,1,1:6)=(/ 0.811429,0.866921,0.910631,0.975302,0.990151,0.994661 /) -XCGA_LKT(64,1,1:6)=(/ 0.857763,0.831697,0.810147,0.765477,0.751050,0.770760 /) -XEXT_COEFF_550_LKT(64,1)=455.020000 !rg=1.61427 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,2,1:6)=(/ 380.260000,391.630000,406.400000,452.330000,555.770000,523.900000 /) -XPIZA_LKT(64,2,1:6)=(/ 0.806132,0.864511,0.899904,0.971621,0.988921,0.994571 /) -XCGA_LKT(64,2,1:6)=(/ 0.861950,0.832700,0.797993,0.751623,0.734453,0.776377 /) -XEXT_COEFF_550_LKT(64,2)=405.900000 !rg=1.61427 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,3,1:6)=(/ 353.840000,361.430000,374.220000,398.130000,476.660000,510.270000 /) -XPIZA_LKT(64,3,1:6)=(/ 0.797306,0.857290,0.895270,0.968502,0.986963,0.994363 /) -XCGA_LKT(64,3,1:6)=(/ 0.864873,0.835293,0.808413,0.739200,0.717717,0.780600 /) -XEXT_COEFF_550_LKT(64,3)=370.540000 !rg=1.61427 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,4,1:6)=(/ 318.610000,325.490000,337.400000,353.160000,411.060000,473.770000 /) -XPIZA_LKT(64,4,1:6)=(/ 0.789615,0.846933,0.887895,0.965858,0.984853,0.993845 /) -XCGA_LKT(64,4,1:6)=(/ 0.868210,0.839397,0.812083,0.742897,0.715503,0.779430 /) -XEXT_COEFF_550_LKT(64,4)=333.930000 !rg=1.61427 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,5,1:6)=(/ 280.520000,288.290000,295.730000,310.050000,352.260000,418.280000 /) -XPIZA_LKT(64,5,1:6)=(/ 0.784766,0.833994,0.879405,0.962465,0.982656,0.992939 /) -XCGA_LKT(64,5,1:6)=(/ 0.871223,0.844630,0.814733,0.759420,0.723280,0.772677 /) -XEXT_COEFF_550_LKT(64,5)=295.840000 !rg=1.61427 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,6,1:6)=(/ 244.920000,249.700000,257.780000,267.050000,301.020000,357.090000 /) -XPIZA_LKT(64,6,1:6)=(/ 0.782156,0.822509,0.866844,0.958814,0.979495,0.991598 /) -XCGA_LKT(64,6,1:6)=(/ 0.872970,0.849430,0.822180,0.765910,0.730570,0.762880 /) -XEXT_COEFF_550_LKT(64,6)=256.660000 !rg=1.61427 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,7,1:6)=(/ 210.220000,214.560000,220.780000,228.880000,252.650000,297.820000 /) -XPIZA_LKT(64,7,1:6)=(/ 0.779533,0.811484,0.853312,0.954245,0.976194,0.989845 /) -XCGA_LKT(64,7,1:6)=(/ 0.874400,0.855630,0.829743,0.772473,0.740883,0.753990 /) -XEXT_COEFF_550_LKT(64,7)=219.040000 !rg=1.61427 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,8,1:6)=(/ 179.070000,182.500000,187.310000,193.750000,212.250000,246.030000 /) -XPIZA_LKT(64,8,1:6)=(/ 0.774972,0.801708,0.839865,0.946520,0.971891,0.987486 /) -XCGA_LKT(64,8,1:6)=(/ 0.876760,0.860003,0.836383,0.784897,0.750423,0.747877 /) -XEXT_COEFF_550_LKT(64,8)=187.490000 !rg=1.61427 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,9,1:6)=(/ 151.230000,154.200000,157.720000,163.500000,174.670000,201.100000 /) -XPIZA_LKT(64,9,1:6)=(/ 0.771677,0.794349,0.827803,0.939729,0.968617,0.985153 /) -XCGA_LKT(64,9,1:6)=(/ 0.878210,0.864987,0.843477,0.794983,0.764053,0.747087 /) -XEXT_COEFF_550_LKT(64,9)=157.150000 !rg=1.61427 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,10,1:6)=(/ 127.750000,129.600000,132.430000,136.150000,145.200000,164.180000 /) -XPIZA_LKT(64,10,1:6)=(/ 0.767166,0.788574,0.815441,0.932935,0.963151,0.982115 /) -XCGA_LKT(64,10,1:6)=(/ 0.880050,0.868247,0.850540,0.803127,0.772347,0.747170 /) -XEXT_COEFF_550_LKT(64,10)=132.400000 !rg=1.61427 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,11,1:6)=(/ 106.600000,108.480000,110.440000,113.470000,121.090000,134.880000 /) -XPIZA_LKT(64,11,1:6)=(/ 0.760366,0.781804,0.805440,0.925352,0.955225,0.977211 /) -XCGA_LKT(64,11,1:6)=(/ 0.881827,0.872467,0.857253,0.813303,0.780557,0.749773 /) -XEXT_COEFF_550_LKT(64,11)=110.320000 !rg=1.61427 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,12,1:6)=(/ 89.184000,90.207000,91.890000,94.009000,98.894000,109.010000 /) -XPIZA_LKT(64,12,1:6)=(/ 0.752978,0.775371,0.796940,0.918490,0.949317,0.974343 /) -XCGA_LKT(64,12,1:6)=(/ 0.883803,0.875087,0.861903,0.818857,0.792653,0.757083 /) -XEXT_COEFF_550_LKT(64,12)=91.910000 !rg=1.61427 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,13,1:6)=(/ 74.152000,75.063000,76.046000,77.936000,81.495000,88.729000 /) -XPIZA_LKT(64,13,1:6)=(/ 0.743000,0.768385,0.789288,0.911741,0.940917,0.969405 /) -XCGA_LKT(64,13,1:6)=(/ 0.886093,0.878200,0.867030,0.826423,0.804217,0.766920 /) -XEXT_COEFF_550_LKT(64,13)=76.121000 !rg=1.61427 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,14,1:6)=(/ 61.836000,62.340000,63.270000,64.611000,66.884000,72.221000 /) -XPIZA_LKT(64,14,1:6)=(/ 0.732803,0.759647,0.782383,0.906319,0.933234,0.963536 /) -XCGA_LKT(64,14,1:6)=(/ 0.888753,0.880340,0.870990,0.830900,0.813767,0.775693 /) -XEXT_COEFF_550_LKT(64,14)=63.281000 !rg=1.61427 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,15,1:6)=(/ 51.311000,51.806000,52.502000,53.480000,55.630000,59.491000 /) -XPIZA_LKT(64,15,1:6)=(/ 0.720858,0.751085,0.773620,0.900961,0.925049,0.955861 /) -XCGA_LKT(64,15,1:6)=(/ 0.890980,0.882993,0.874130,0.837117,0.817817,0.779640 /) -XEXT_COEFF_550_LKT(64,15)=52.474000 !rg=1.61427 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,16,1:6)=(/ 42.538000,42.966000,43.467000,44.231000,45.764000,48.709000 /) -XPIZA_LKT(64,16,1:6)=(/ 0.707766,0.740435,0.764693,0.895981,0.918793,0.947671 /) -XCGA_LKT(64,16,1:6)=(/ 0.893970,0.885970,0.878013,0.842543,0.826197,0.790320 /) -XEXT_COEFF_550_LKT(64,16)=43.392000 !rg=1.61427 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,17,1:6)=(/ 35.409000,35.639000,36.064000,36.596000,37.453000,39.444000 /) -XPIZA_LKT(64,17,1:6)=(/ 0.694937,0.728576,0.755822,0.890497,0.913131,0.940791 /) -XCGA_LKT(64,17,1:6)=(/ 0.896997,0.888653,0.881237,0.845557,0.835563,0.803227 /) -XEXT_COEFF_550_LKT(64,17)=36.028000 !rg=1.61427 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,18,1:6)=(/ 29.380000,29.587000,29.862000,30.292000,31.120000,32.690000 /) -XPIZA_LKT(64,18,1:6)=(/ 0.681313,0.716820,0.745026,0.884876,0.906812,0.932579 /) -XCGA_LKT(64,18,1:6)=(/ 0.900100,0.891370,0.883580,0.849637,0.838797,0.807700 /) -XEXT_COEFF_550_LKT(64,18)=29.868000 !rg=1.61427 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,19,1:6)=(/ 24.376000,24.539000,24.733000,25.064000,25.667000,26.827000 /) -XPIZA_LKT(64,19,1:6)=(/ 0.667727,0.703516,0.733386,0.878447,0.901679,0.926109 /) -XCGA_LKT(64,19,1:6)=(/ 0.903537,0.894537,0.886967,0.853267,0.844713,0.817060 /) -XEXT_COEFF_550_LKT(64,19)=24.724000 !rg=1.61427 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(64,20,1:6)=(/ 20.264000,20.358000,20.535000,20.732000,21.115000,21.869000 /) -XPIZA_LKT(64,20,1:6)=(/ 0.654824,0.690072,0.721838,0.870609,0.896029,0.920287 /) -XCGA_LKT(64,20,1:6)=(/ 0.907200,0.897763,0.890103,0.855770,0.851060,0.826950 /) -XEXT_COEFF_550_LKT(64,20)=20.512000 !rg=1.61427 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,1,1:6)=(/ 365.740000,359.430000,419.120000,484.780000,506.130000,534.960000 /) -XPIZA_LKT(65,1,1:6)=(/ 0.802088,0.855063,0.906049,0.973370,0.987728,0.994653 /) -XCGA_LKT(65,1,1:6)=(/ 0.864407,0.831057,0.812623,0.786393,0.714127,0.779373 /) -XEXT_COEFF_550_LKT(65,1)=419.280000 !rg=1.74883 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,2,1:6)=(/ 350.250000,358.680000,373.860000,414.510000,455.940000,530.880000 /) -XPIZA_LKT(65,2,1:6)=(/ 0.795447,0.853948,0.895670,0.970241,0.986332,0.994577 /) -XCGA_LKT(65,2,1:6)=(/ 0.868217,0.836007,0.808687,0.768913,0.700077,0.786000 /) -XEXT_COEFF_550_LKT(65,2)=372.240000 !rg=1.74883 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,3,1:6)=(/ 323.700000,332.020000,343.360000,362.970000,403.230000,505.350000 /) -XPIZA_LKT(65,3,1:6)=(/ 0.786565,0.846746,0.889557,0.966968,0.984645,0.994244 /) -XCGA_LKT(65,3,1:6)=(/ 0.869570,0.838890,0.807127,0.765777,0.698737,0.786587 /) -XEXT_COEFF_550_LKT(65,3)=342.630000 !rg=1.74883 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,4,1:6)=(/ 291.850000,299.240000,308.730000,321.230000,359.190000,456.600000 /) -XPIZA_LKT(65,4,1:6)=(/ 0.781324,0.836500,0.881865,0.964353,0.982746,0.993556 /) -XCGA_LKT(65,4,1:6)=(/ 0.871880,0.843750,0.812817,0.766833,0.707673,0.781110 /) -XEXT_COEFF_550_LKT(65,4)=308.580000 !rg=1.74883 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,5,1:6)=(/ 258.660000,264.200000,272.750000,284.190000,314.450000,394.100000 /) -XPIZA_LKT(65,5,1:6)=(/ 0.779189,0.825412,0.870884,0.960399,0.980372,0.992429 /) -XCGA_LKT(65,5,1:6)=(/ 0.873703,0.849780,0.822340,0.760283,0.719850,0.770683 /) -XEXT_COEFF_550_LKT(65,5)=269.930000 !rg=1.74883 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,6,1:6)=(/ 225.400000,229.170000,235.770000,243.070000,270.230000,330.670000 /) -XPIZA_LKT(65,6,1:6)=(/ 0.777723,0.813957,0.858975,0.956742,0.977497,0.990910 /) -XCGA_LKT(65,6,1:6)=(/ 0.875287,0.855117,0.826240,0.777517,0.730430,0.760057 /) -XEXT_COEFF_550_LKT(65,6)=236.560000 !rg=1.74883 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,7,1:6)=(/ 193.200000,197.290000,202.080000,208.490000,228.940000,273.150000 /) -XPIZA_LKT(65,7,1:6)=(/ 0.775117,0.804274,0.845866,0.951077,0.973867,0.988900 /) -XCGA_LKT(65,7,1:6)=(/ 0.876297,0.859797,0.833393,0.785437,0.740890,0.750937 /) -XEXT_COEFF_550_LKT(65,7)=202.040000 !rg=1.74883 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,8,1:6)=(/ 164.940000,167.560000,171.740000,176.810000,191.550000,224.280000 /) -XPIZA_LKT(65,8,1:6)=(/ 0.773003,0.796497,0.831697,0.944382,0.970528,0.986547 /) -XCGA_LKT(65,8,1:6)=(/ 0.877980,0.864060,0.840890,0.791750,0.754730,0.746230 /) -XEXT_COEFF_550_LKT(65,8)=172.000000 !rg=1.74883 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,9,1:6)=(/ 139.490000,142.060000,144.960000,149.590000,159.400000,183.490000 /) -XPIZA_LKT(65,9,1:6)=(/ 0.768960,0.789886,0.820181,0.936738,0.965463,0.983613 /) -XCGA_LKT(65,9,1:6)=(/ 0.879530,0.867987,0.848817,0.797530,0.768440,0.745407 /) -XEXT_COEFF_550_LKT(65,9)=143.860000 !rg=1.74883 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,10,1:6)=(/ 117.390000,119.150000,121.520000,125.260000,132.250000,149.690000 /) -XPIZA_LKT(65,10,1:6)=(/ 0.763606,0.784464,0.810645,0.928788,0.960517,0.980709 /) -XCGA_LKT(65,10,1:6)=(/ 0.881187,0.871183,0.854263,0.808867,0.780170,0.749730 /) -XEXT_COEFF_550_LKT(65,10)=121.240000 !rg=1.74883 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,11,1:6)=(/ 98.388000,99.937000,101.580000,104.470000,109.520000,121.900000 /) -XPIZA_LKT(65,11,1:6)=(/ 0.757270,0.777883,0.801045,0.921298,0.952990,0.976109 /) -XCGA_LKT(65,11,1:6)=(/ 0.883147,0.874017,0.860813,0.815387,0.788343,0.753503 /) -XEXT_COEFF_550_LKT(65,11)=101.570000 !rg=1.74883 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,12,1:6)=(/ 82.133000,83.182000,84.352000,86.429000,90.469000,99.242000 /) -XPIZA_LKT(65,12,1:6)=(/ 0.748511,0.771935,0.793094,0.914930,0.945327,0.972302 /) -XCGA_LKT(65,12,1:6)=(/ 0.885097,0.877097,0.865013,0.823657,0.799810,0.762293 /) -XEXT_COEFF_550_LKT(65,12)=84.290000 !rg=1.74883 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,13,1:6)=(/ 68.468000,69.063000,70.106000,71.615000,74.339000,80.774000 /) -XPIZA_LKT(65,13,1:6)=(/ 0.738716,0.763975,0.785689,0.909158,0.937199,0.966575 /) -XCGA_LKT(65,13,1:6)=(/ 0.887553,0.879430,0.869597,0.828310,0.809453,0.770513 /) -XEXT_COEFF_550_LKT(65,13)=70.118000 !rg=1.74883 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,14,1:6)=(/ 56.878000,57.600000,58.189000,59.464000,61.622000,66.292000 /) -XPIZA_LKT(65,14,1:6)=(/ 0.727229,0.756363,0.777475,0.903033,0.929232,0.960085 /) -XCGA_LKT(65,14,1:6)=(/ 0.889797,0.882087,0.872653,0.834527,0.814987,0.775533 /) -XEXT_COEFF_550_LKT(65,14)=58.308000 !rg=1.74883 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,15,1:6)=(/ 47.273000,47.781000,48.274000,49.139000,50.883000,54.384000 /) -XPIZA_LKT(65,15,1:6)=(/ 0.714829,0.745807,0.769928,0.897987,0.922408,0.953005 /) -XCGA_LKT(65,15,1:6)=(/ 0.892367,0.884700,0.876087,0.839423,0.823010,0.785860 /) -XEXT_COEFF_550_LKT(65,15)=48.195000 !rg=1.74883 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,16,1:6)=(/ 39.266000,39.587000,40.021000,40.650000,41.771000,44.149000 /) -XPIZA_LKT(65,16,1:6)=(/ 0.702237,0.735155,0.760958,0.893051,0.916074,0.944860 /) -XCGA_LKT(65,16,1:6)=(/ 0.895453,0.887140,0.879570,0.843857,0.831437,0.797293 /) -XEXT_COEFF_550_LKT(65,16)=40.036000 !rg=1.74883 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,17,1:6)=(/ 32.596000,32.897000,33.157000,33.704000,34.447000,36.197000 /) -XPIZA_LKT(65,17,1:6)=(/ 0.688452,0.723723,0.750665,0.888096,0.910407,0.937466 /) -XCGA_LKT(65,17,1:6)=(/ 0.898463,0.890163,0.882330,0.847460,0.837337,0.805280 /) -XEXT_COEFF_550_LKT(65,17)=33.125000 !rg=1.74883 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,18,1:6)=(/ 27.091000,27.305000,27.487000,27.841000,28.515000,29.896000 /) -XPIZA_LKT(65,18,1:6)=(/ 0.675178,0.710836,0.740382,0.881704,0.904459,0.929924 /) -XCGA_LKT(65,18,1:6)=(/ 0.901573,0.892930,0.885027,0.851143,0.842133,0.812887 /) -XEXT_COEFF_550_LKT(65,18)=27.466000 !rg=1.74883 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,19,1:6)=(/ 22.497000,22.622000,22.797000,23.054000,23.544000,24.439000 /) -XPIZA_LKT(65,19,1:6)=(/ 0.661934,0.697476,0.728443,0.874925,0.899001,0.923628 /) -XCGA_LKT(65,19,1:6)=(/ 0.905233,0.895990,0.888213,0.854267,0.848103,0.822347 /) -XEXT_COEFF_550_LKT(65,19)=22.840000 !rg=1.74883 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(65,20,1:6)=(/ 18.669000,18.789000,18.897000,19.132000,19.425000,20.112000 /) -XPIZA_LKT(65,20,1:6)=(/ 0.648747,0.684448,0.715794,0.867373,0.893166,0.917434 /) -XCGA_LKT(65,20,1:6)=(/ 0.908817,0.899333,0.891243,0.857300,0.852103,0.828617 /) -XEXT_COEFF_550_LKT(65,20)=18.888000 !rg=1.74883 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,1,1:6)=(/ 336.570000,356.200000,349.900000,415.980000,391.390000,547.640000 /) -XPIZA_LKT(66,1,1:6)=(/ 0.789558,0.853688,0.888681,0.970478,0.984200,0.994689 /) -XCGA_LKT(66,1,1:6)=(/ 0.870337,0.842947,0.798413,0.778583,0.664070,0.792827 /) -XEXT_COEFF_550_LKT(66,1)=345.600000 !rg=1.89461 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,2,1:6)=(/ 323.030000,328.830000,340.270000,362.830000,367.900000,528.920000 /) -XPIZA_LKT(66,2,1:6)=(/ 0.782287,0.845822,0.890010,0.968696,0.983186,0.994495 /) -XCGA_LKT(66,2,1:6)=(/ 0.872387,0.841683,0.811320,0.782583,0.665647,0.793167 /) -XEXT_COEFF_550_LKT(66,2)=340.190000 !rg=1.89461 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,3,1:6)=(/ 297.650000,305.330000,314.570000,328.910000,347.350000,491.480000 /) -XPIZA_LKT(66,3,1:6)=(/ 0.775436,0.837889,0.881686,0.965554,0.981985,0.994021 /) -XCGA_LKT(66,3,1:6)=(/ 0.875070,0.845070,0.814700,0.776487,0.682457,0.789690 /) -XEXT_COEFF_550_LKT(66,3)=315.830000 !rg=1.89461 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,4,1:6)=(/ 268.550000,275.360000,282.800000,293.500000,319.160000,432.790000 /) -XPIZA_LKT(66,4,1:6)=(/ 0.774480,0.827309,0.873376,0.962439,0.980161,0.993135 /) -XCGA_LKT(66,4,1:6)=(/ 0.876007,0.849740,0.820347,0.776287,0.703503,0.780113 /) -XEXT_COEFF_550_LKT(66,4)=284.150000 !rg=1.89461 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,5,1:6)=(/ 237.270000,242.870000,249.520000,258.870000,281.830000,365.860000 /) -XPIZA_LKT(66,5,1:6)=(/ 0.774588,0.815878,0.863877,0.957647,0.978149,0.991811 /) -XCGA_LKT(66,5,1:6)=(/ 0.876123,0.854373,0.825237,0.778117,0.719753,0.767550 /) -XEXT_COEFF_550_LKT(66,5)=249.470000 !rg=1.89461 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,6,1:6)=(/ 207.650000,211.380000,215.660000,224.840000,244.270000,303.860000 /) -XPIZA_LKT(66,6,1:6)=(/ 0.774711,0.806244,0.851297,0.953087,0.975128,0.990039 /) -XCGA_LKT(66,6,1:6)=(/ 0.876973,0.859670,0.833593,0.783487,0.737437,0.756173 /) -XEXT_COEFF_550_LKT(66,6)=216.450000 !rg=1.89461 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,7,1:6)=(/ 177.600000,181.630000,185.450000,191.300000,208.900000,249.870000 /) -XPIZA_LKT(66,7,1:6)=(/ 0.772646,0.797906,0.837233,0.947418,0.970376,0.987633 /) -XCGA_LKT(66,7,1:6)=(/ 0.878217,0.863923,0.839920,0.792300,0.746997,0.747667 /) -XEXT_COEFF_550_LKT(66,7)=185.780000 !rg=1.89461 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,8,1:6)=(/ 152.100000,154.300000,157.380000,163.050000,174.030000,204.310000 /) -XPIZA_LKT(66,8,1:6)=(/ 0.770502,0.791992,0.825181,0.940301,0.968012,0.985354 /) -XCGA_LKT(66,8,1:6)=(/ 0.879420,0.867323,0.846547,0.798687,0.763673,0.745970 /) -XEXT_COEFF_550_LKT(66,8)=157.470000 !rg=1.89461 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,9,1:6)=(/ 128.190000,130.480000,133.240000,137.040000,146.280000,166.950000 /) -XPIZA_LKT(66,9,1:6)=(/ 0.766519,0.785795,0.813875,0.932075,0.961579,0.981963 /) -XCGA_LKT(66,9,1:6)=(/ 0.880377,0.870473,0.852410,0.805317,0.768107,0.743590 /) -XEXT_COEFF_550_LKT(66,9)=132.910000 !rg=1.89461 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,10,1:6)=(/ 108.270000,109.810000,111.710000,115.100000,120.720000,136.180000 /) -XPIZA_LKT(66,10,1:6)=(/ 0.760472,0.780387,0.804925,0.925043,0.956957,0.978797 /) -XCGA_LKT(66,10,1:6)=(/ 0.882517,0.872980,0.858613,0.810733,0.785393,0.750180 /) -XEXT_COEFF_550_LKT(66,10)=111.400000 !rg=1.89461 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,11,1:6)=(/ 90.484000,92.040000,93.560000,96.015000,99.915000,111.100000 /) -XPIZA_LKT(66,11,1:6)=(/ 0.752754,0.774224,0.796127,0.917552,0.949789,0.974367 /) -XCGA_LKT(66,11,1:6)=(/ 0.884010,0.876063,0.863183,0.820027,0.794447,0.756240 /) -XEXT_COEFF_550_LKT(66,11)=93.271000 !rg=1.89461 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,12,1:6)=(/ 75.743000,76.498000,77.713000,79.563000,82.635000,90.420000 /) -XPIZA_LKT(66,12,1:6)=(/ 0.744121,0.767679,0.788978,0.911679,0.941396,0.969786 /) -XCGA_LKT(66,12,1:6)=(/ 0.886533,0.878247,0.868010,0.825380,0.805080,0.765417 /) -XEXT_COEFF_550_LKT(66,12)=77.692000 !rg=1.89461 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,13,1:6)=(/ 62.984000,63.746000,64.485000,66.047000,68.350000,73.947000 /) -XPIZA_LKT(66,13,1:6)=(/ 0.733382,0.760470,0.781151,0.905405,0.933299,0.963913 /) -XCGA_LKT(66,13,1:6)=(/ 0.888530,0.880993,0.871383,0.832030,0.811293,0.771073 /) -XEXT_COEFF_550_LKT(66,13)=64.573000 !rg=1.89461 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,14,1:6)=(/ 52.419000,52.951000,53.704000,54.495000,56.501000,60.758000 /) -XPIZA_LKT(66,14,1:6)=(/ 0.721499,0.751305,0.774285,0.900569,0.926260,0.957002 /) -XCGA_LKT(66,14,1:6)=(/ 0.891223,0.883273,0.874927,0.836993,0.820080,0.781060 /) -XEXT_COEFF_550_LKT(66,14)=53.686000 !rg=1.89461 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,15,1:6)=(/ 43.663000,43.955000,44.522000,45.333000,46.597000,49.453000 /) -XPIZA_LKT(66,15,1:6)=(/ 0.709572,0.741169,0.765074,0.895866,0.919650,0.949995 /) -XCGA_LKT(66,15,1:6)=(/ 0.893907,0.885553,0.878130,0.841933,0.827717,0.791510 /) -XEXT_COEFF_550_LKT(66,15)=44.569000 !rg=1.89461 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,16,1:6)=(/ 36.154000,36.531000,36.864000,37.468000,38.216000,40.348000 /) -XPIZA_LKT(66,16,1:6)=(/ 0.695740,0.730192,0.756264,0.890681,0.913562,0.941633 /) -XCGA_LKT(66,16,1:6)=(/ 0.896640,0.888753,0.880843,0.845877,0.835627,0.801623 /) -XEXT_COEFF_550_LKT(66,16)=36.819000 !rg=1.89461 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,17,1:6)=(/ 30.080000,30.269000,30.593000,30.976000,31.703000,33.274000 /) -XPIZA_LKT(66,17,1:6)=(/ 0.682648,0.717932,0.746399,0.885010,0.907762,0.934123 /) -XCGA_LKT(66,17,1:6)=(/ 0.899957,0.891273,0.884000,0.849327,0.841360,0.810080 /) -XEXT_COEFF_550_LKT(66,17)=30.598000 !rg=1.89461 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,18,1:6)=(/ 25.002000,25.142000,25.370000,25.712000,26.231000,27.324000 /) -XPIZA_LKT(66,18,1:6)=(/ 0.669283,0.704936,0.734858,0.878983,0.901918,0.927315 /) -XCGA_LKT(66,18,1:6)=(/ 0.903330,0.894157,0.886737,0.852780,0.845457,0.817880 /) -XEXT_COEFF_550_LKT(66,18)=25.401000 !rg=1.89461 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,19,1:6)=(/ 20.734000,20.876000,21.010000,21.260000,21.566000,22.371000 /) -XPIZA_LKT(66,19,1:6)=(/ 0.655767,0.691749,0.722827,0.871451,0.896411,0.920748 /) -XCGA_LKT(66,19,1:6)=(/ 0.906737,0.897610,0.889597,0.855813,0.850873,0.825910 /) -XEXT_COEFF_550_LKT(66,19)=21.008000 !rg=1.89461 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(66,20,1:6)=(/ 17.226000,17.305000,17.438000,17.599000,17.888000,18.496000 /) -XPIZA_LKT(66,20,1:6)=(/ 0.643195,0.678131,0.710390,0.863051,0.890354,0.914806 /) -XCGA_LKT(66,20,1:6)=(/ 0.910483,0.900747,0.892763,0.858463,0.854810,0.832623 /) -XEXT_COEFF_550_LKT(66,20)=17.433000 !rg=1.89461 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,1,1:6)=(/ 309.090000,314.680000,306.510000,333.110000,307.140000,538.230000 /) -XPIZA_LKT(67,1,1:6)=(/ 0.776053,0.840280,0.878417,0.960778,0.979754,0.994609 /) -XCGA_LKT(67,1,1:6)=(/ 0.875490,0.843333,0.795063,0.769563,0.613143,0.801320 /) -XEXT_COEFF_550_LKT(67,1)=307.240000 !rg=2.05254 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,2,1:6)=(/ 297.340000,303.570000,310.730000,321.830000,307.410000,516.970000 /) -XPIZA_LKT(67,2,1:6)=(/ 0.769262,0.837215,0.882481,0.963633,0.979708,0.994310 /) -XCGA_LKT(67,2,1:6)=(/ 0.877640,0.846830,0.814920,0.783167,0.638057,0.797363 /) -XEXT_COEFF_550_LKT(67,2)=310.860000 !rg=2.05254 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,3,1:6)=(/ 274.010000,281.160000,288.040000,298.540000,302.990000,468.640000 /) -XPIZA_LKT(67,3,1:6)=(/ 0.768300,0.828829,0.874919,0.962973,0.979488,0.993673 /) -XCGA_LKT(67,3,1:6)=(/ 0.878987,0.849757,0.821453,0.777887,0.676253,0.789733 /) -XEXT_COEFF_550_LKT(67,3)=288.090000 !rg=2.05254 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,4,1:6)=(/ 247.100000,253.560000,259.220000,268.490000,283.570000,402.810000 /) -XPIZA_LKT(67,4,1:6)=(/ 0.770346,0.817963,0.866333,0.959797,0.978316,0.992573 /) -XCGA_LKT(67,4,1:6)=(/ 0.878677,0.854073,0.826890,0.778553,0.706130,0.776500 /) -XEXT_COEFF_550_LKT(67,4)=259.680000 !rg=2.05254 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,5,1:6)=(/ 218.590000,223.670000,228.920000,236.300000,255.900000,335.900000 /) -XPIZA_LKT(67,5,1:6)=(/ 0.771457,0.807053,0.854571,0.955484,0.975156,0.990985 /) -XCGA_LKT(67,5,1:6)=(/ 0.878710,0.859150,0.831590,0.786493,0.724547,0.762120 /) -XEXT_COEFF_550_LKT(67,5)=229.840000 !rg=2.05254 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,6,1:6)=(/ 190.770000,194.570000,199.010000,206.810000,219.690000,276.280000 /) -XPIZA_LKT(67,6,1:6)=(/ 0.771482,0.798449,0.842735,0.948875,0.972961,0.989041 /) -XCGA_LKT(67,6,1:6)=(/ 0.878627,0.863263,0.839047,0.783710,0.743770,0.750810 /) -XEXT_COEFF_550_LKT(67,6)=198.740000 !rg=2.05254 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,7,1:6)=(/ 163.730000,167.290000,170.550000,176.030000,187.570000,226.140000 /) -XPIZA_LKT(67,7,1:6)=(/ 0.771111,0.792109,0.829642,0.943255,0.969140,0.986590 /) -XCGA_LKT(67,7,1:6)=(/ 0.879573,0.866603,0.845640,0.794340,0.755617,0.744823 /) -XEXT_COEFF_550_LKT(67,7)=170.780000 !rg=2.05254 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,8,1:6)=(/ 140.080000,141.920000,144.970000,149.870000,158.020000,185.190000 /) -XPIZA_LKT(67,8,1:6)=(/ 0.767581,0.786874,0.818454,0.935883,0.964957,0.983838 /) -XCGA_LKT(67,8,1:6)=(/ 0.880823,0.869953,0.851443,0.799670,0.769527,0.743683 /) -XEXT_COEFF_550_LKT(67,8)=144.680000 !rg=2.05254 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,9,1:6)=(/ 118.310000,120.200000,122.350000,125.590000,133.820000,152.400000 /) -XPIZA_LKT(67,9,1:6)=(/ 0.763313,0.781641,0.807718,0.928473,0.958833,0.979793 /) -XCGA_LKT(67,9,1:6)=(/ 0.882100,0.872887,0.856853,0.811663,0.776307,0.744627 /) -XEXT_COEFF_550_LKT(67,9)=122.190000 !rg=2.05254 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,10,1:6)=(/ 99.600000,100.980000,102.880000,105.630000,111.260000,124.280000 /) -XPIZA_LKT(67,10,1:6)=(/ 0.757413,0.777051,0.799314,0.920918,0.952135,0.976054 /) -XCGA_LKT(67,10,1:6)=(/ 0.883257,0.874990,0.861363,0.816980,0.784857,0.748697 /) -XEXT_COEFF_550_LKT(67,10)=102.830000 !rg=2.05254 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,11,1:6)=(/ 83.655000,84.603000,86.057000,87.945000,91.971000,101.410000 /) -XPIZA_LKT(67,11,1:6)=(/ 0.749536,0.770650,0.791241,0.914642,0.945728,0.972099 /) -XCGA_LKT(67,11,1:6)=(/ 0.885390,0.877860,0.866367,0.823397,0.799267,0.758680 /) -XEXT_COEFF_550_LKT(67,11)=85.426000 !rg=2.05254 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,12,1:6)=(/ 69.700000,70.554000,71.477000,73.160000,76.124000,82.861000 /) -XPIZA_LKT(67,12,1:6)=(/ 0.739402,0.764625,0.784369,0.908108,0.936956,0.966418 /) -XCGA_LKT(67,12,1:6)=(/ 0.887393,0.879940,0.869847,0.829790,0.805803,0.764640 /) -XEXT_COEFF_550_LKT(67,12)=71.627000 !rg=2.05254 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,13,1:6)=(/ 58.114000,58.600000,59.481000,60.530000,62.787000,67.844000 /) -XPIZA_LKT(67,13,1:6)=(/ 0.728529,0.756005,0.777553,0.902924,0.930062,0.960675 /) -XCGA_LKT(67,13,1:6)=(/ 0.889917,0.882060,0.873640,0.834823,0.816550,0.775970 /) -XEXT_COEFF_550_LKT(67,13)=59.537000 !rg=2.05254 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,14,1:6)=(/ 48.323000,48.726000,49.342000,50.119000,51.782000,55.286000 /) -XPIZA_LKT(67,14,1:6)=(/ 0.716291,0.746721,0.769318,0.898465,0.923491,0.954653 /) -XCGA_LKT(67,14,1:6)=(/ 0.892270,0.884787,0.876557,0.840183,0.824053,0.785570 /) -XEXT_COEFF_550_LKT(67,14)=49.459000 !rg=2.05254 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,15,1:6)=(/ 40.173000,40.552000,40.938000,41.632000,42.739000,45.122000 /) -XPIZA_LKT(67,15,1:6)=(/ 0.703295,0.736561,0.761258,0.893503,0.917192,0.946927 /) -XCGA_LKT(67,15,1:6)=(/ 0.895060,0.887370,0.879180,0.844517,0.832753,0.798000 /) -XEXT_COEFF_550_LKT(67,15)=40.862000 !rg=2.05254 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,16,1:6)=(/ 33.395000,33.622000,33.996000,34.398000,35.381000,37.196000 /) -XPIZA_LKT(67,16,1:6)=(/ 0.690348,0.724429,0.751849,0.887819,0.910580,0.938250 /) -XCGA_LKT(67,16,1:6)=(/ 0.898223,0.889987,0.882673,0.847913,0.837833,0.805790 /) -XEXT_COEFF_550_LKT(67,16)=33.851000 !rg=2.05254 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,17,1:6)=(/ 27.734000,27.923000,28.127000,28.487000,29.172000,30.518000 /) -XPIZA_LKT(67,17,1:6)=(/ 0.676562,0.712108,0.741344,0.882405,0.905248,0.931329 /) -XCGA_LKT(67,17,1:6)=(/ 0.901497,0.892817,0.885070,0.851723,0.843153,0.812967 /) -XEXT_COEFF_550_LKT(67,17)=28.189000 !rg=2.05254 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,18,1:6)=(/ 23.040000,23.202000,23.355000,23.641000,24.117000,25.029000 /) -XPIZA_LKT(67,18,1:6)=(/ 0.663004,0.699412,0.729742,0.875744,0.899558,0.924917 /) -XCGA_LKT(67,18,1:6)=(/ 0.904853,0.895857,0.887853,0.854573,0.848553,0.823313 /) -XEXT_COEFF_550_LKT(67,18)=23.328000 !rg=2.05254 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,19,1:6)=(/ 19.138000,19.233000,19.386000,19.564000,19.973000,20.673000 /) -XPIZA_LKT(67,19,1:6)=(/ 0.650089,0.685582,0.717467,0.867710,0.893713,0.917942 /) -XCGA_LKT(67,19,1:6)=(/ 0.908543,0.898970,0.891250,0.857037,0.852360,0.829790 /) -XEXT_COEFF_550_LKT(67,19)=19.363000 !rg=2.05254 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(67,20,1:6)=(/ 15.885000,15.967000,16.051000,16.207000,16.479000,17.001000 /) -XPIZA_LKT(67,20,1:6)=(/ 0.637586,0.672132,0.704296,0.859183,0.887533,0.911987 /) -XCGA_LKT(67,20,1:6)=(/ 0.912197,0.902403,0.894070,0.860240,0.856233,0.834773 /) -XEXT_COEFF_550_LKT(67,20)=16.077000 !rg=2.05254 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,1,1:6)=(/ 287.130000,291.980000,305.100000,282.490000,252.930000,525.600000 /) -XPIZA_LKT(68,1,1:6)=(/ 0.758562,0.830638,0.881864,0.951206,0.975016,0.994318 /) -XCGA_LKT(68,1,1:6)=(/ 0.882543,0.848073,0.824857,0.708547,0.571327,0.803120 /) -XEXT_COEFF_550_LKT(68,1)=310.940000 !rg=2.22363 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,2,1:6)=(/ 272.610000,279.960000,286.380000,289.970000,268.220000,494.500000 /) -XPIZA_LKT(68,2,1:6)=(/ 0.755722,0.827545,0.874166,0.959169,0.976697,0.993997 /) -XCGA_LKT(68,2,1:6)=(/ 0.883043,0.852100,0.822203,0.767027,0.629413,0.798070 /) -XEXT_COEFF_550_LKT(68,2)=285.980000 !rg=2.22363 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,3,1:6)=(/ 251.850000,257.740000,264.770000,275.950000,273.820000,437.500000 /) -XPIZA_LKT(68,3,1:6)=(/ 0.761468,0.818410,0.868051,0.958441,0.977446,0.993168 /) -XCGA_LKT(68,3,1:6)=(/ 0.881853,0.855190,0.826107,0.786730,0.684110,0.786520 /) -XEXT_COEFF_550_LKT(68,3)=263.870000 !rg=2.22363 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,4,1:6)=(/ 227.170000,232.490000,238.530000,248.660000,257.060000,368.730000 /) -XPIZA_LKT(68,4,1:6)=(/ 0.766367,0.807468,0.858646,0.955330,0.976390,0.991834 /) -XCGA_LKT(68,4,1:6)=(/ 0.880707,0.859320,0.831123,0.787487,0.715077,0.770537 /) -XEXT_COEFF_550_LKT(68,4)=237.760000 !rg=2.22363 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,5,1:6)=(/ 201.300000,205.850000,210.210000,216.690000,229.610000,303.950000 /) -XPIZA_LKT(68,5,1:6)=(/ 0.769623,0.799307,0.846336,0.952541,0.973983,0.990034 /) -XCGA_LKT(68,5,1:6)=(/ 0.880250,0.862977,0.837683,0.789023,0.733797,0.755413 /) -XEXT_COEFF_550_LKT(68,5)=210.430000 !rg=2.22363 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,6,1:6)=(/ 175.950000,179.050000,183.330000,189.700000,200.100000,249.810000 /) -XPIZA_LKT(68,6,1:6)=(/ 0.770070,0.792683,0.833533,0.945600,0.971057,0.987871 /) -XCGA_LKT(68,6,1:6)=(/ 0.880217,0.866743,0.842697,0.794083,0.748270,0.745987 /) -XEXT_COEFF_550_LKT(68,6)=182.610000 !rg=2.22363 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,7,1:6)=(/ 150.580000,153.670000,157.040000,162.230000,170.820000,204.730000 /) -XPIZA_LKT(68,7,1:6)=(/ 0.768407,0.786350,0.821839,0.938778,0.966934,0.985233 /) -XCGA_LKT(68,7,1:6)=(/ 0.880537,0.869780,0.849137,0.801333,0.762607,0.742367 /) -XEXT_COEFF_550_LKT(68,7)=156.420000 !rg=2.22363 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,8,1:6)=(/ 128.750000,130.860000,133.290000,137.700000,144.800000,167.940000 /) -XPIZA_LKT(68,8,1:6)=(/ 0.765165,0.783047,0.811259,0.931268,0.962057,0.982122 /) -XCGA_LKT(68,8,1:6)=(/ 0.881747,0.872253,0.854883,0.806810,0.770857,0.741610 /) -XEXT_COEFF_550_LKT(68,8)=133.330000 !rg=2.22363 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,9,1:6)=(/ 109.100000,110.550000,112.590000,115.510000,121.130000,137.270000 /) -XPIZA_LKT(68,9,1:6)=(/ 0.760348,0.778688,0.801798,0.924760,0.956857,0.978738 /) -XCGA_LKT(68,9,1:6)=(/ 0.883343,0.874060,0.860607,0.814577,0.783880,0.747130 /) -XEXT_COEFF_550_LKT(68,9)=112.450000 !rg=2.22363 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,10,1:6)=(/ 91.749000,93.175000,94.513000,96.782000,101.890000,113.510000 /) -XPIZA_LKT(68,10,1:6)=(/ 0.752744,0.772860,0.794645,0.916906,0.948994,0.973818 /) -XCGA_LKT(68,10,1:6)=(/ 0.884503,0.876997,0.864667,0.821083,0.792613,0.752537 /) -XEXT_COEFF_550_LKT(68,10)=94.658000 !rg=2.22363 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,11,1:6)=(/ 76.888000,77.965000,79.085000,80.795000,84.664000,92.644000 /) -XPIZA_LKT(68,11,1:6)=(/ 0.744771,0.767911,0.787131,0.910544,0.941494,0.969515 /) -XCGA_LKT(68,11,1:6)=(/ 0.886133,0.879320,0.868987,0.827650,0.800193,0.758453 /) -XEXT_COEFF_550_LKT(68,11)=78.864000 !rg=2.22363 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,12,1:6)=(/ 64.234000,64.997000,65.876000,67.045000,69.815000,75.881000 /) -XPIZA_LKT(68,12,1:6)=(/ 0.734102,0.760200,0.780846,0.905225,0.933672,0.963754 /) -XCGA_LKT(68,12,1:6)=(/ 0.888690,0.881403,0.872313,0.832497,0.811823,0.770223 /) -XEXT_COEFF_550_LKT(68,12)=65.930000 !rg=2.22363 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,13,1:6)=(/ 53.522000,54.047000,54.635000,55.505000,57.556000,61.719000 /) -XPIZA_LKT(68,13,1:6)=(/ 0.723071,0.752219,0.773315,0.900384,0.927201,0.958669 /) -XCGA_LKT(68,13,1:6)=(/ 0.891077,0.883790,0.875160,0.838367,0.820307,0.779930 /) -XEXT_COEFF_550_LKT(68,13)=54.762000 !rg=2.22363 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,14,1:6)=(/ 44.537000,44.959000,45.371000,46.164000,47.610000,50.561000 /) -XPIZA_LKT(68,14,1:6)=(/ 0.710360,0.742490,0.765495,0.895502,0.919522,0.950719 /) -XCGA_LKT(68,14,1:6)=(/ 0.893587,0.886213,0.878490,0.842830,0.828430,0.792270 /) -XEXT_COEFF_550_LKT(68,14)=45.381000 !rg=2.22363 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,15,1:6)=(/ 37.078000,37.353000,37.727000,38.338000,39.256000,41.419000 /) -XPIZA_LKT(68,15,1:6)=(/ 0.697547,0.731291,0.756930,0.890697,0.913297,0.942343 /) -XCGA_LKT(68,15,1:6)=(/ 0.896580,0.888333,0.881270,0.845483,0.835763,0.801867 /) -XEXT_COEFF_550_LKT(68,15)=37.677000 !rg=2.22363 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,16,1:6)=(/ 30.768000,31.026000,31.271000,31.724000,32.538000,34.167000 /) -XPIZA_LKT(68,16,1:6)=(/ 0.683768,0.719345,0.746850,0.885139,0.907499,0.934652 /) -XCGA_LKT(68,16,1:6)=(/ 0.899707,0.891460,0.883983,0.849963,0.839267,0.806797 /) -XEXT_COEFF_550_LKT(68,16)=31.234000 !rg=2.22363 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,17,1:6)=(/ 25.571000,25.763000,25.946000,26.197000,26.828000,28.005000 /) -XPIZA_LKT(68,17,1:6)=(/ 0.670213,0.706533,0.736082,0.879000,0.902313,0.927906 /) -XCGA_LKT(68,17,1:6)=(/ 0.902990,0.894360,0.886780,0.853050,0.845917,0.818060 /) -XEXT_COEFF_550_LKT(68,17)=25.940000 !rg=2.22363 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,18,1:6)=(/ 21.265000,21.376000,21.545000,21.775000,22.195000,22.990000 /) -XPIZA_LKT(68,18,1:6)=(/ 0.657216,0.693183,0.724667,0.872299,0.896768,0.920735 /) -XCGA_LKT(68,18,1:6)=(/ 0.906570,0.897057,0.889633,0.855350,0.851057,0.826077 /) -XEXT_COEFF_550_LKT(68,18)=21.526000 !rg=2.22363 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,19,1:6)=(/ 17.645000,17.751000,17.850000,18.065000,18.354000,19.014000 /) -XPIZA_LKT(68,19,1:6)=(/ 0.644194,0.679791,0.711619,0.864108,0.890528,0.915160 /) -XCGA_LKT(68,19,1:6)=(/ 0.910173,0.900630,0.892507,0.858840,0.853083,0.830587 /) -XEXT_COEFF_550_LKT(68,19)=17.842000 !rg=2.22363 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(68,20,1:6)=(/ 14.655000,14.732000,14.809000,14.902000,15.157000,15.623000 /) -XPIZA_LKT(68,20,1:6)=(/ 0.632115,0.666311,0.698444,0.854307,0.884299,0.909295 /) -XCGA_LKT(68,20,1:6)=(/ 0.913867,0.904087,0.895710,0.861167,0.857993,0.838507 /) -XEXT_COEFF_550_LKT(68,20)=14.809000 !rg=2.22363 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,1,1:6)=(/ 262.030000,268.390000,282.790000,260.230000,230.620000,498.400000 /) -XPIZA_LKT(69,1,1:6)=(/ 0.737229,0.822873,0.874558,0.959473,0.972628,0.994075 /) -XCGA_LKT(69,1,1:6)=(/ 0.889493,0.856203,0.834623,0.791457,0.586847,0.801397 /) -XEXT_COEFF_550_LKT(69,1)=285.290000 !rg=2.40898 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,2,1:6)=(/ 252.090000,257.110000,265.150000,271.700000,251.850000,461.650000 /) -XPIZA_LKT(69,2,1:6)=(/ 0.749565,0.817612,0.865127,0.955986,0.975134,0.993518 /) -XCGA_LKT(69,2,1:6)=(/ 0.886030,0.856103,0.828473,0.785490,0.653370,0.794850 /) -XEXT_COEFF_550_LKT(69,2)=261.290000 !rg=2.40898 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,3,1:6)=(/ 232.220000,236.910000,244.260000,253.300000,253.990000,399.480000 /) -XPIZA_LKT(69,3,1:6)=(/ 0.759261,0.807204,0.858966,0.956078,0.975460,0.992456 /) -XCGA_LKT(69,3,1:6)=(/ 0.883093,0.860887,0.832407,0.777840,0.698710,0.779373 /) -XEXT_COEFF_550_LKT(69,3)=241.260000 !rg=2.40898 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,4,1:6)=(/ 209.590000,213.860000,219.620000,227.640000,235.590000,332.170000 /) -XPIZA_LKT(69,4,1:6)=(/ 0.765276,0.797591,0.849312,0.953404,0.973988,0.990853 /) -XCGA_LKT(69,4,1:6)=(/ 0.881497,0.864657,0.837203,0.784570,0.725180,0.761150 /) -XEXT_COEFF_550_LKT(69,4)=217.440000 !rg=2.40898 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,5,1:6)=(/ 185.140000,188.760000,193.350000,200.620000,209.240000,272.970000 /) -XPIZA_LKT(69,5,1:6)=(/ 0.768059,0.790705,0.838108,0.947573,0.972106,0.988878 /) -XCGA_LKT(69,5,1:6)=(/ 0.881173,0.867417,0.842053,0.796030,0.744937,0.748253 /) -XEXT_COEFF_550_LKT(69,5)=192.540000 !rg=2.40898 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,6,1:6)=(/ 161.710000,164.070000,168.190000,172.870000,183.470000,225.250000 /) -XPIZA_LKT(69,6,1:6)=(/ 0.768906,0.786842,0.826005,0.942674,0.967875,0.986349 /) -XCGA_LKT(69,6,1:6)=(/ 0.880937,0.869747,0.848550,0.798490,0.756543,0.740257 /) -XEXT_COEFF_550_LKT(69,6)=168.140000 !rg=2.40898 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,7,1:6)=(/ 139.100000,141.280000,144.260000,148.230000,156.330000,184.970000 /) -XPIZA_LKT(69,7,1:6)=(/ 0.767101,0.782464,0.813745,0.935871,0.964111,0.983510 /) -XCGA_LKT(69,7,1:6)=(/ 0.881473,0.872740,0.854133,0.804313,0.769240,0.739057 /) -XEXT_COEFF_550_LKT(69,7)=143.270000 !rg=2.40898 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,8,1:6)=(/ 118.610000,120.220000,122.680000,125.830000,133.080000,152.640000 /) -XPIZA_LKT(69,8,1:6)=(/ 0.762103,0.779124,0.804919,0.927102,0.958580,0.980022 /) -XCGA_LKT(69,8,1:6)=(/ 0.882900,0.874010,0.859037,0.811113,0.778443,0.741860 /) -XEXT_COEFF_550_LKT(69,8)=122.920000 !rg=2.40898 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,9,1:6)=(/ 100.260000,101.620000,103.540000,106.220000,110.440000,124.450000 /) -XPIZA_LKT(69,9,1:6)=(/ 0.756935,0.774600,0.797266,0.920247,0.954268,0.977055 /) -XCGA_LKT(69,9,1:6)=(/ 0.883880,0.876553,0.863133,0.819243,0.792027,0.750263 /) -XEXT_COEFF_550_LKT(69,9)=103.200000 !rg=2.40898 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,10,1:6)=(/ 84.661000,85.564000,87.105000,88.933000,92.774000,102.420000 /) -XPIZA_LKT(69,10,1:6)=(/ 0.749703,0.770377,0.789120,0.914237,0.946114,0.972670 /) -XCGA_LKT(69,10,1:6)=(/ 0.885433,0.878283,0.867600,0.824957,0.798597,0.756353 /) -XEXT_COEFF_550_LKT(69,10)=87.037000 !rg=2.40898 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,11,1:6)=(/ 70.810000,71.763000,72.795000,74.365000,77.610000,84.743000 /) -XPIZA_LKT(69,11,1:6)=(/ 0.740041,0.763871,0.783655,0.908187,0.937354,0.966103 /) -XCGA_LKT(69,11,1:6)=(/ 0.887533,0.880843,0.871430,0.832060,0.806410,0.763617 /) -XEXT_COEFF_550_LKT(69,11)=72.536000 !rg=2.40898 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,12,1:6)=(/ 59.243000,59.736000,60.626000,61.617000,63.863000,68.808000 /) -XPIZA_LKT(69,12,1:6)=(/ 0.729556,0.756317,0.776393,0.903057,0.930865,0.962083 /) -XCGA_LKT(69,12,1:6)=(/ 0.889707,0.882710,0.874297,0.835990,0.816563,0.774923 /) -XEXT_COEFF_550_LKT(69,12)=60.693000 !rg=2.40898 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,13,1:6)=(/ 49.328000,49.837000,50.332000,51.137000,52.890000,56.438000 /) -XPIZA_LKT(69,13,1:6)=(/ 0.717278,0.747809,0.769578,0.897573,0.923223,0.955043 /) -XCGA_LKT(69,13,1:6)=(/ 0.892210,0.885307,0.877510,0.841020,0.825213,0.786877 /) -XEXT_COEFF_550_LKT(69,13)=50.358000 !rg=2.40898 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,14,1:6)=(/ 41.130000,41.384000,41.854000,42.461000,43.577000,46.112000 /) -XPIZA_LKT(69,14,1:6)=(/ 0.704800,0.737124,0.761890,0.893438,0.916668,0.946705 /) -XCGA_LKT(69,14,1:6)=(/ 0.895210,0.887240,0.880207,0.844440,0.832863,0.797113 /) -XEXT_COEFF_550_LKT(69,14)=41.856000 !rg=2.40898 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,15,1:6)=(/ 34.162000,34.414000,34.761000,35.266000,36.279000,38.228000 /) -XPIZA_LKT(69,15,1:6)=(/ 0.691351,0.726058,0.752569,0.888234,0.909828,0.937602 /) -XCGA_LKT(69,15,1:6)=(/ 0.897863,0.889770,0.882407,0.848533,0.836457,0.801653 /) -XEXT_COEFF_550_LKT(69,15)=34.776000 !rg=2.40898 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,16,1:6)=(/ 28.343000,28.569000,28.845000,29.220000,29.934000,31.382000 /) -XPIZA_LKT(69,16,1:6)=(/ 0.677314,0.713416,0.742235,0.882839,0.904565,0.930530 /) -XCGA_LKT(69,16,1:6)=(/ 0.901223,0.892787,0.885623,0.852003,0.842227,0.811623 /) -XEXT_COEFF_550_LKT(69,16)=28.771000 !rg=2.40898 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,17,1:6)=(/ 23.598000,23.711000,23.937000,24.197000,24.659000,25.584000 /) -XPIZA_LKT(69,17,1:6)=(/ 0.664387,0.700283,0.731028,0.876076,0.899134,0.924326 /) -XCGA_LKT(69,17,1:6)=(/ 0.904660,0.895597,0.888440,0.854427,0.848643,0.822793 /) -XEXT_COEFF_550_LKT(69,17)=23.926000 !rg=2.40898 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,18,1:6)=(/ 19.600000,19.707000,19.848000,20.063000,20.443000,21.238000 /) -XPIZA_LKT(69,18,1:6)=(/ 0.651125,0.687155,0.718851,0.868857,0.893390,0.917264 /) -XCGA_LKT(69,18,1:6)=(/ 0.908113,0.898643,0.890727,0.857607,0.851853,0.826740 /) -XEXT_COEFF_550_LKT(69,18)=19.861000 !rg=2.40898 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,19,1:6)=(/ 16.266000,16.359000,16.472000,16.615000,16.901000,17.492000 /) -XPIZA_LKT(69,19,1:6)=(/ 0.638414,0.673587,0.706020,0.860212,0.887463,0.911773 /) -XCGA_LKT(69,19,1:6)=(/ 0.911850,0.902120,0.894157,0.860237,0.855383,0.833817 /) -XEXT_COEFF_550_LKT(69,19)=16.453000 !rg=2.40898 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(69,20,1:6)=(/ 13.523000,13.578000,13.663000,13.758000,13.972000,14.327000 /) -XPIZA_LKT(69,20,1:6)=(/ 0.626927,0.660248,0.692669,0.849752,0.880863,0.906244 /) -XCGA_LKT(69,20,1:6)=(/ 0.915647,0.905580,0.897343,0.862497,0.859850,0.841953 /) -XEXT_COEFF_550_LKT(69,20)=13.661000 !rg=2.40898 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,1,1:6)=(/ 240.290000,247.860000,243.880000,277.750000,236.250000,460.350000 /) -XPIZA_LKT(70,1,1:6)=(/ 0.732652,0.811541,0.853904,0.961644,0.973474,0.993435 /) -XCGA_LKT(70,1,1:6)=(/ 0.892207,0.861500,0.824557,0.810337,0.654830,0.798520 /) -XEXT_COEFF_550_LKT(70,1)=248.270000 !rg=2.60978 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,2,1:6)=(/ 231.970000,234.990000,241.580000,250.750000,248.700000,419.480000 /) -XPIZA_LKT(70,2,1:6)=(/ 0.750879,0.806686,0.859553,0.956961,0.974636,0.992814 /) -XCGA_LKT(70,2,1:6)=(/ 0.886673,0.861623,0.836547,0.789553,0.693553,0.787093 /) -XEXT_COEFF_550_LKT(70,2)=241.170000 !rg=2.60978 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,3,1:6)=(/ 213.310000,218.060000,222.990000,231.140000,238.240000,356.270000 /) -XPIZA_LKT(70,3,1:6)=(/ 0.761197,0.796780,0.851768,0.952585,0.973973,0.991508 /) -XCGA_LKT(70,3,1:6)=(/ 0.883367,0.866263,0.838660,0.791723,0.718397,0.768760 /) -XEXT_COEFF_550_LKT(70,3)=223.110000 !rg=2.60978 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,4,1:6)=(/ 192.620000,196.650000,200.820000,207.780000,217.320000,294.460000 /) -XPIZA_LKT(70,4,1:6)=(/ 0.766209,0.789095,0.841127,0.949378,0.971766,0.989674 /) -XCGA_LKT(70,4,1:6)=(/ 0.881783,0.869090,0.842773,0.795523,0.733657,0.750843 /) -XEXT_COEFF_550_LKT(70,4)=200.980000 !rg=2.60978 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,5,1:6)=(/ 170.710000,173.940000,177.690000,183.400000,191.600000,243.490000 /) -XPIZA_LKT(70,5,1:6)=(/ 0.767450,0.784010,0.828461,0.945476,0.969421,0.987409 /) -XCGA_LKT(70,5,1:6)=(/ 0.881730,0.871277,0.847740,0.796680,0.754133,0.739027 /) -XEXT_COEFF_550_LKT(70,5)=176.300000 !rg=2.60978 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,6,1:6)=(/ 148.960000,151.040000,154.000000,157.630000,167.890000,201.470000 /) -XPIZA_LKT(70,6,1:6)=(/ 0.767371,0.780908,0.817416,0.939476,0.965562,0.984833 /) -XCGA_LKT(70,6,1:6)=(/ 0.881860,0.873297,0.852490,0.806903,0.759237,0.735617 /) -XEXT_COEFF_550_LKT(70,6)=154.320000 !rg=2.60978 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,7,1:6)=(/ 127.860000,130.100000,132.420000,135.860000,143.640000,166.530000 /) -XPIZA_LKT(70,7,1:6)=(/ 0.764821,0.779157,0.806962,0.930823,0.960887,0.981802 /) -XCGA_LKT(70,7,1:6)=(/ 0.881977,0.874870,0.858277,0.810993,0.770027,0.736417 /) -XEXT_COEFF_550_LKT(70,7)=132.160000 !rg=2.60978 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,8,1:6)=(/ 109.220000,110.500000,112.580000,115.100000,121.100000,137.430000 /) -XPIZA_LKT(70,8,1:6)=(/ 0.760168,0.775320,0.798693,0.924070,0.956894,0.978686 /) -XCGA_LKT(70,8,1:6)=(/ 0.883353,0.876577,0.862033,0.817253,0.784100,0.742707 /) -XEXT_COEFF_550_LKT(70,8)=112.860000 !rg=2.60978 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,9,1:6)=(/ 92.524000,93.707000,95.092000,97.538000,101.370000,113.130000 /) -XPIZA_LKT(70,9,1:6)=(/ 0.753773,0.771529,0.791385,0.916829,0.949885,0.974622 /) -XCGA_LKT(70,9,1:6)=(/ 0.884967,0.878213,0.866860,0.822010,0.797330,0.752140 /) -XEXT_COEFF_550_LKT(70,9)=94.695000 !rg=2.60978 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,10,1:6)=(/ 77.888000,78.888000,79.950000,81.678000,84.895000,93.035000 /) -XPIZA_LKT(70,10,1:6)=(/ 0.745126,0.767351,0.785985,0.910598,0.942387,0.970607 /) -XCGA_LKT(70,10,1:6)=(/ 0.886510,0.879980,0.869957,0.829467,0.806157,0.762630 /) -XEXT_COEFF_550_LKT(70,10)=79.830000 !rg=2.60978 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,11,1:6)=(/ 65.346000,66.116000,66.986000,68.491000,70.621000,76.452000 /) -XPIZA_LKT(70,11,1:6)=(/ 0.735680,0.760579,0.779300,0.904717,0.934467,0.964594 /) -XCGA_LKT(70,11,1:6)=(/ 0.888777,0.881697,0.873733,0.833870,0.813270,0.770247 /) -XEXT_COEFF_550_LKT(70,11)=66.837000 !rg=2.60978 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,12,1:6)=(/ 54.572000,55.133000,55.683000,56.672000,58.702000,62.789000 /) -XPIZA_LKT(70,12,1:6)=(/ 0.724006,0.752888,0.772873,0.899939,0.926501,0.958928 /) -XCGA_LKT(70,12,1:6)=(/ 0.890880,0.884050,0.876267,0.839313,0.821883,0.781970 /) -XEXT_COEFF_550_LKT(70,12)=55.683000 !rg=2.60978 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,13,1:6)=(/ 45.537000,45.829000,46.408000,47.095000,48.363000,51.355000 /) -XPIZA_LKT(70,13,1:6)=(/ 0.711941,0.742688,0.765937,0.895369,0.919805,0.951258 /) -XCGA_LKT(70,13,1:6)=(/ 0.893600,0.886173,0.879323,0.842853,0.829930,0.792053 /) -XEXT_COEFF_550_LKT(70,13)=46.366000 !rg=2.60978 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,14,1:6)=(/ 37.863000,38.224000,38.505000,39.165000,40.181000,42.385000 /) -XPIZA_LKT(70,14,1:6)=(/ 0.698467,0.732643,0.757052,0.890486,0.913199,0.942568 /) -XCGA_LKT(70,14,1:6)=(/ 0.896320,0.888647,0.881363,0.846810,0.834747,0.798220 /) -XEXT_COEFF_550_LKT(70,14)=38.607000 !rg=2.60978 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,15,1:6)=(/ 31.495000,31.760000,31.997000,32.381000,33.225000,34.945000 /) -XPIZA_LKT(70,15,1:6)=(/ 0.684983,0.720417,0.748088,0.885279,0.907421,0.934834 /) -XCGA_LKT(70,15,1:6)=(/ 0.899283,0.891180,0.883943,0.849797,0.840080,0.807750 /) -XEXT_COEFF_550_LKT(70,15)=31.989000 !rg=2.60978 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,16,1:6)=(/ 26.171000,26.333000,26.548000,26.876000,27.441000,28.571000 /) -XPIZA_LKT(70,16,1:6)=(/ 0.671648,0.707487,0.737131,0.879669,0.902258,0.927800 /) -XCGA_LKT(70,16,1:6)=(/ 0.902817,0.893947,0.886907,0.853247,0.846050,0.817693 /) -XEXT_COEFF_550_LKT(70,16)=26.551000 !rg=2.60978 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,17,1:6)=(/ 21.743000,21.881000,22.018000,22.292000,22.646000,23.490000 /) -XPIZA_LKT(70,17,1:6)=(/ 0.657927,0.694620,0.725385,0.873212,0.896506,0.921463 /) -XCGA_LKT(70,17,1:6)=(/ 0.906243,0.897080,0.889477,0.856047,0.850250,0.824957 /) -XEXT_COEFF_550_LKT(70,17)=22.003000 !rg=2.60978 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,18,1:6)=(/ 18.074000,18.180000,18.287000,18.441000,18.770000,19.438000 /) -XPIZA_LKT(70,18,1:6)=(/ 0.645099,0.681049,0.713126,0.864857,0.890741,0.914929 /) -XCGA_LKT(70,18,1:6)=(/ 0.909770,0.900210,0.892297,0.858537,0.853827,0.830990 /) -XEXT_COEFF_550_LKT(70,18)=18.277000 !rg=2.60978 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,19,1:6)=(/ 15.013000,15.084000,15.173000,15.295000,15.544000,15.992000 /) -XPIZA_LKT(70,19,1:6)=(/ 0.633133,0.667465,0.699989,0.855658,0.884709,0.909142 /) -XCGA_LKT(70,19,1:6)=(/ 0.913573,0.903663,0.895507,0.861400,0.858017,0.838243 /) -XEXT_COEFF_550_LKT(70,19)=15.174000 !rg=2.60978 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(70,20,1:6)=(/ 12.469000,12.529000,12.586000,12.695000,12.842000,13.184000 /) -XPIZA_LKT(70,20,1:6)=(/ 0.621587,0.654547,0.686522,0.845352,0.877480,0.903590 /) -XCGA_LKT(70,20,1:6)=(/ 0.917323,0.907317,0.898657,0.863930,0.860810,0.843393 /) -XEXT_COEFF_550_LKT(70,20)=12.574000 !rg=2.60978 sigma=2.95 wvl=0.55 - - IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET7',1,ZHOOK_HANDLE) - END SUBROUTINE DUST_OPT_LKT_SET7 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET8() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET8',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(71,1,1:6)=(/ 220.270000,228.550000,230.480000,262.220000,252.450000,411.740000 /) -XPIZA_LKT(71,1,1:6)=(/ 0.751647,0.801675,0.854372,0.958853,0.975633,0.992690 /) -XCGA_LKT(71,1,1:6)=(/ 0.886540,0.862543,0.839427,0.805113,0.728693,0.787477 /) -XEXT_COEFF_550_LKT(71,1)=233.860000 !rg=2.82732 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,2,1:6)=(/ 213.230000,216.050000,221.200000,229.780000,245.280000,369.940000 /) -XPIZA_LKT(71,2,1:6)=(/ 0.755432,0.793764,0.848813,0.954824,0.974547,0.991804 /) -XCGA_LKT(71,2,1:6)=(/ 0.885607,0.867937,0.839433,0.794993,0.734320,0.773827 /) -XEXT_COEFF_550_LKT(71,2)=223.350000 !rg=2.82732 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,3,1:6)=(/ 196.900000,200.990000,204.750000,211.060000,225.330000,311.690000 /) -XPIZA_LKT(71,3,1:6)=(/ 0.762618,0.785511,0.841506,0.950406,0.971109,0.990203 /) -XCGA_LKT(71,3,1:6)=(/ 0.883903,0.870187,0.842573,0.798280,0.739073,0.753347 /) -XEXT_COEFF_550_LKT(71,3)=206.090000 !rg=2.82732 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,4,1:6)=(/ 177.740000,181.240000,184.580000,189.720000,202.010000,259.160000 /) -XPIZA_LKT(71,4,1:6)=(/ 0.766595,0.780815,0.830812,0.946662,0.968354,0.988142 /) -XCGA_LKT(71,4,1:6)=(/ 0.882733,0.872510,0.847230,0.802463,0.748383,0.737993 /) -XEXT_COEFF_550_LKT(71,4)=185.290000 !rg=2.82732 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,5,1:6)=(/ 156.920000,159.930000,163.060000,168.090000,176.760000,215.790000 /) -XPIZA_LKT(71,5,1:6)=(/ 0.767865,0.779082,0.819566,0.940427,0.966071,0.985827 /) -XCGA_LKT(71,5,1:6)=(/ 0.881767,0.874307,0.852913,0.803530,0.756397,0.731880 /) -XEXT_COEFF_550_LKT(71,5)=162.880000 !rg=2.82732 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,6,1:6)=(/ 137.310000,139.300000,141.440000,145.890000,153.790000,180.670000 /) -XPIZA_LKT(71,6,1:6)=(/ 0.766004,0.777321,0.808753,0.934652,0.962557,0.983026 /) -XCGA_LKT(71,6,1:6)=(/ 0.882157,0.875670,0.857877,0.810867,0.771793,0.733673 /) -XEXT_COEFF_550_LKT(71,6)=141.880000 !rg=2.82732 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,7,1:6)=(/ 117.820000,119.610000,121.780000,124.760000,131.970000,150.860000 /) -XPIZA_LKT(71,7,1:6)=(/ 0.762643,0.775372,0.800467,0.927249,0.957201,0.979212 /) -XCGA_LKT(71,7,1:6)=(/ 0.883263,0.876750,0.862133,0.817380,0.779480,0.736747 /) -XEXT_COEFF_550_LKT(71,7)=121.500000 !rg=2.82732 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,8,1:6)=(/ 100.580000,101.870000,103.370000,106.130000,110.820000,124.290000 /) -XPIZA_LKT(71,8,1:6)=(/ 0.756956,0.773213,0.793031,0.919778,0.953218,0.976754 /) -XCGA_LKT(71,8,1:6)=(/ 0.884200,0.878207,0.866173,0.822093,0.793283,0.747647 /) -XEXT_COEFF_550_LKT(71,8)=103.530000 !rg=2.82732 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,9,1:6)=(/ 85.088000,86.170000,87.624000,89.562000,93.765000,103.110000 /) -XPIZA_LKT(71,9,1:6)=(/ 0.749987,0.769082,0.787009,0.912831,0.944355,0.971621 /) -XCGA_LKT(71,9,1:6)=(/ 0.885580,0.879417,0.869540,0.826830,0.796580,0.751270 /) -XEXT_COEFF_550_LKT(71,9)=87.478000 !rg=2.82732 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,10,1:6)=(/ 71.887000,72.595000,73.632000,75.236000,77.699000,84.617000 /) -XPIZA_LKT(71,10,1:6)=(/ 0.740957,0.763561,0.782207,0.907301,0.938206,0.967817 /) -XCGA_LKT(71,10,1:6)=(/ 0.887810,0.880883,0.872623,0.831383,0.811617,0.766393 /) -XEXT_COEFF_550_LKT(71,10)=73.638000 !rg=2.82732 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,11,1:6)=(/ 60.163000,60.994000,61.711000,62.885000,64.529000,69.636000 /) -XPIZA_LKT(71,11,1:6)=(/ 0.730087,0.756903,0.776128,0.901840,0.931307,0.962204 /) -XCGA_LKT(71,11,1:6)=(/ 0.889643,0.883150,0.875107,0.836883,0.819517,0.775647 /) -XEXT_COEFF_550_LKT(71,11)=61.536000 !rg=2.82732 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,12,1:6)=(/ 50.388000,50.706000,51.354000,52.193000,53.673000,57.228000 /) -XPIZA_LKT(71,12,1:6)=(/ 0.718826,0.747980,0.769766,0.897553,0.923277,0.955390 /) -XCGA_LKT(71,12,1:6)=(/ 0.892390,0.884953,0.878060,0.841020,0.826717,0.786860 /) -XEXT_COEFF_550_LKT(71,12)=51.400000 !rg=2.82732 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,13,1:6)=(/ 41.911000,42.287000,42.663000,43.427000,44.492000,47.100000 /) -XPIZA_LKT(71,13,1:6)=(/ 0.705613,0.738230,0.761440,0.892963,0.916540,0.947391 /) -XCGA_LKT(71,13,1:6)=(/ 0.894820,0.887447,0.880397,0.845087,0.831853,0.793867 /) -XEXT_COEFF_550_LKT(71,13)=42.694000 !rg=2.82732 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,14,1:6)=(/ 34.944000,35.168000,35.562000,35.981000,36.863000,38.895000 /) -XPIZA_LKT(71,14,1:6)=(/ 0.692599,0.726922,0.753431,0.888063,0.910575,0.939137 /) -XCGA_LKT(71,14,1:6)=(/ 0.897847,0.889697,0.882960,0.848333,0.838460,0.803840 /) -XEXT_COEFF_550_LKT(71,14)=35.547000 !rg=2.82732 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,15,1:6)=(/ 29.069000,29.248000,29.530000,29.939000,30.560000,31.911000 /) -XPIZA_LKT(71,15,1:6)=(/ 0.679029,0.714758,0.743021,0.883018,0.904638,0.931980 /) -XCGA_LKT(71,15,1:6)=(/ 0.900933,0.892370,0.885443,0.851693,0.843490,0.813050 /) -XEXT_COEFF_550_LKT(71,15)=29.542000 !rg=2.82732 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,16,1:6)=(/ 24.113000,24.307000,24.467000,24.765000,25.125000,26.110000 /) -XPIZA_LKT(71,16,1:6)=(/ 0.665026,0.701915,0.731827,0.876801,0.899573,0.924999 /) -XCGA_LKT(71,16,1:6)=(/ 0.904320,0.895517,0.887997,0.854503,0.849497,0.822357 /) -XEXT_COEFF_550_LKT(71,16)=24.437000 !rg=2.82732 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,17,1:6)=(/ 20.061000,20.166000,20.318000,20.492000,20.884000,21.631000 /) -XPIZA_LKT(71,17,1:6)=(/ 0.652076,0.688348,0.720241,0.869541,0.893800,0.918488 /) -XCGA_LKT(71,17,1:6)=(/ 0.907927,0.898443,0.890980,0.857177,0.853287,0.829553 /) -XEXT_COEFF_550_LKT(71,17)=20.309000 !rg=2.82732 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,18,1:6)=(/ 16.681000,16.754000,16.870000,17.035000,17.317000,17.841000 /) -XPIZA_LKT(71,18,1:6)=(/ 0.639578,0.674887,0.707178,0.861191,0.887811,0.912187 /) -XCGA_LKT(71,18,1:6)=(/ 0.911547,0.901690,0.893793,0.859923,0.856037,0.834767 /) -XEXT_COEFF_550_LKT(71,18)=16.884000 !rg=2.82732 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,19,1:6)=(/ 13.843000,13.919000,13.988000,14.112000,14.263000,14.644000 /) -XPIZA_LKT(71,19,1:6)=(/ 0.627531,0.661641,0.693903,0.851437,0.881527,0.906733 /) -XCGA_LKT(71,19,1:6)=(/ 0.915263,0.905337,0.896893,0.862340,0.860187,0.841760 /) -XEXT_COEFF_550_LKT(71,19)=13.977000 !rg=2.82732 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(71,20,1:6)=(/ 11.505000,11.548000,11.616000,11.680000,11.840000,12.141000 /) -XPIZA_LKT(71,20,1:6)=(/ 0.616698,0.648563,0.680753,0.839954,0.874046,0.901068 /) -XCGA_LKT(71,20,1:6)=(/ 0.919070,0.908857,0.900340,0.864843,0.863040,0.846953 /) -XEXT_COEFF_550_LKT(71,20)=11.602000 !rg=2.82732 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,1,1:6)=(/ 203.440000,208.990000,217.190000,215.450000,262.210000,356.280000 /) -XPIZA_LKT(72,1,1:6)=(/ 0.766075,0.789502,0.846820,0.952100,0.976658,0.991421 /) -XCGA_LKT(72,1,1:6)=(/ 0.883193,0.869100,0.844530,0.788467,0.778473,0.769180 /) -XEXT_COEFF_550_LKT(72,1)=213.360000 !rg=3.06299 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,2,1:6)=(/ 195.970000,199.800000,203.130000,210.680000,237.030000,316.700000 /) -XPIZA_LKT(72,2,1:6)=(/ 0.765139,0.781069,0.839900,0.950760,0.973035,0.990361 /) -XCGA_LKT(72,2,1:6)=(/ 0.882343,0.873727,0.844610,0.797210,0.764030,0.754010 /) -XEXT_COEFF_550_LKT(72,2)=203.220000 !rg=3.06299 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,3,1:6)=(/ 181.370000,184.860000,188.520000,193.660000,206.240000,266.840000 /) -XPIZA_LKT(72,3,1:6)=(/ 0.766103,0.776167,0.831911,0.947800,0.970904,0.988545 /) -XCGA_LKT(72,3,1:6)=(/ 0.883320,0.874413,0.848057,0.800157,0.760100,0.734407 /) -XEXT_COEFF_550_LKT(72,3)=188.500000 !rg=3.06299 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,4,1:6)=(/ 163.830000,166.800000,169.960000,174.400000,182.900000,225.480000 /) -XPIZA_LKT(72,4,1:6)=(/ 0.767799,0.775238,0.821146,0.943341,0.968114,0.986420 /) -XCGA_LKT(72,4,1:6)=(/ 0.882810,0.875247,0.852673,0.804527,0.764923,0.725130 /) -XEXT_COEFF_550_LKT(72,4)=170.030000 !rg=3.06299 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,5,1:6)=(/ 144.960000,147.270000,149.890000,153.790000,163.100000,192.040000 /) -XPIZA_LKT(72,5,1:6)=(/ 0.767170,0.774217,0.810549,0.936790,0.962952,0.983741 /) -XCGA_LKT(72,5,1:6)=(/ 0.882623,0.876497,0.857437,0.810507,0.768917,0.725163 /) -XEXT_COEFF_550_LKT(72,5)=150.030000 !rg=3.06299 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,6,1:6)=(/ 126.210000,128.100000,130.470000,134.670000,139.380000,161.170000 /) -XPIZA_LKT(72,6,1:6)=(/ 0.764291,0.773509,0.801567,0.929207,0.959561,0.981239 /) -XCGA_LKT(72,6,1:6)=(/ 0.882747,0.877620,0.862223,0.812123,0.782543,0.731697 /) -XEXT_COEFF_550_LKT(72,6)=130.370000 !rg=3.06299 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,7,1:6)=(/ 108.570000,110.320000,112.020000,115.050000,119.420000,134.880000 /) -XPIZA_LKT(72,7,1:6)=(/ 0.760311,0.773171,0.794181,0.922504,0.955531,0.977934 /) -XCGA_LKT(72,7,1:6)=(/ 0.884077,0.878060,0.865850,0.819357,0.789093,0.739577 /) -XEXT_COEFF_550_LKT(72,7)=111.930000 !rg=3.06299 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,8,1:6)=(/ 92.882000,93.727000,95.250000,97.590000,101.030000,112.290000 /) -XPIZA_LKT(72,8,1:6)=(/ 0.754131,0.770142,0.788896,0.916065,0.949283,0.974395 /) -XCGA_LKT(72,8,1:6)=(/ 0.885363,0.879443,0.869163,0.824353,0.800213,0.750337 /) -XEXT_COEFF_550_LKT(72,8)=95.330000 !rg=3.06299 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,9,1:6)=(/ 78.437000,79.478000,80.521000,82.294000,85.776000,94.122000 /) -XPIZA_LKT(72,9,1:6)=(/ 0.745748,0.765682,0.783410,0.908992,0.941467,0.969000 /) -XCGA_LKT(72,9,1:6)=(/ 0.886543,0.880933,0.871827,0.830670,0.804930,0.757093 /) -XEXT_COEFF_550_LKT(72,9)=80.347000 !rg=3.06299 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,10,1:6)=(/ 66.189000,66.858000,67.760000,69.182000,71.749000,77.595000 /) -XPIZA_LKT(72,10,1:6)=(/ 0.736256,0.760230,0.778016,0.903817,0.933386,0.963922 /) -XCGA_LKT(72,10,1:6)=(/ 0.888543,0.882227,0.874273,0.835347,0.811917,0.765683 /) -XEXT_COEFF_550_LKT(72,10)=67.900000 !rg=3.06299 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,11,1:6)=(/ 55.565000,56.052000,56.871000,57.801000,59.625000,63.815000 /) -XPIZA_LKT(72,11,1:6)=(/ 0.725392,0.752496,0.772280,0.899157,0.926875,0.958998 /) -XCGA_LKT(72,11,1:6)=(/ 0.890963,0.884387,0.877150,0.839870,0.822850,0.780050 /) -XEXT_COEFF_550_LKT(72,11)=56.479000 !rg=3.06299 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,12,1:6)=(/ 46.354000,46.874000,47.222000,48.125000,49.494000,52.579000 /) -XPIZA_LKT(72,12,1:6)=(/ 0.712670,0.744343,0.765422,0.894560,0.919395,0.951309 /) -XCGA_LKT(72,12,1:6)=(/ 0.893380,0.886393,0.879253,0.843650,0.828407,0.787353 /) -XEXT_COEFF_550_LKT(72,12)=47.358000 !rg=3.06299 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,13,1:6)=(/ 38.675000,38.907000,39.362000,39.877000,40.922000,43.273000 /) -XPIZA_LKT(72,13,1:6)=(/ 0.699945,0.733065,0.757697,0.890317,0.913616,0.943468 /) -XCGA_LKT(72,13,1:6)=(/ 0.896210,0.888430,0.881887,0.847007,0.836310,0.799303 /) -XEXT_COEFF_550_LKT(72,13)=39.388000 !rg=3.06299 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,14,1:6)=(/ 32.201000,32.432000,32.698000,33.112000,33.894000,35.538000 /) -XPIZA_LKT(72,14,1:6)=(/ 0.686285,0.721802,0.748528,0.885671,0.907880,0.936470 /) -XCGA_LKT(72,14,1:6)=(/ 0.899220,0.891103,0.884027,0.850470,0.841217,0.808250 /) -XEXT_COEFF_550_LKT(72,14)=32.741000 !rg=3.06299 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,15,1:6)=(/ 26.786000,26.984000,27.171000,27.524000,28.101000,29.213000 /) -XPIZA_LKT(72,15,1:6)=(/ 0.672498,0.709327,0.738275,0.880206,0.902249,0.929236 /) -XCGA_LKT(72,15,1:6)=(/ 0.902453,0.893910,0.886540,0.853587,0.846707,0.818970 /) -XEXT_COEFF_550_LKT(72,15)=27.133000 !rg=3.06299 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,16,1:6)=(/ 22.267000,22.372000,22.583000,22.757000,23.281000,24.140000 /) -XPIZA_LKT(72,16,1:6)=(/ 0.659326,0.695530,0.726867,0.873487,0.896965,0.921837 /) -XCGA_LKT(72,16,1:6)=(/ 0.906040,0.896843,0.889563,0.856243,0.850847,0.825440 /) -XEXT_COEFF_550_LKT(72,16)=22.478000 !rg=3.06299 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,17,1:6)=(/ 18.501000,18.594000,18.714000,18.888000,19.215000,19.879000 /) -XPIZA_LKT(72,17,1:6)=(/ 0.646124,0.682179,0.714395,0.865914,0.891457,0.915873 /) -XCGA_LKT(72,17,1:6)=(/ 0.909623,0.899927,0.892157,0.859157,0.854497,0.831533 /) -XEXT_COEFF_550_LKT(72,17)=18.743000 !rg=3.06299 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,18,1:6)=(/ 15.380000,15.463000,15.536000,15.680000,15.940000,16.392000 /) -XPIZA_LKT(72,18,1:6)=(/ 0.633902,0.669039,0.701388,0.856942,0.884944,0.909886 /) -XCGA_LKT(72,18,1:6)=(/ 0.913207,0.903360,0.895090,0.861543,0.857787,0.838960 /) -XEXT_COEFF_550_LKT(72,18)=15.523000 !rg=3.06299 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,19,1:6)=(/ 12.779000,12.826000,12.907000,12.986000,13.201000,13.557000 /) -XPIZA_LKT(72,19,1:6)=(/ 0.622608,0.655418,0.688074,0.846429,0.878426,0.904006 /) -XCGA_LKT(72,19,1:6)=(/ 0.917033,0.906903,0.898520,0.863830,0.861303,0.843663 /) -XEXT_COEFF_550_LKT(72,19)=12.877000 !rg=3.06299 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(72,20,1:6)=(/ 10.612000,10.649000,10.702000,10.776000,10.905000,11.172000 /) -XPIZA_LKT(72,20,1:6)=(/ 0.611861,0.642685,0.674506,0.834662,0.870565,0.898457 /) -XCGA_LKT(72,20,1:6)=(/ 0.920783,0.910527,0.901740,0.866567,0.864207,0.848543 /) -XEXT_COEFF_550_LKT(72,20)=10.711000 !rg=3.06299 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,1,1:6)=(/ 188.340000,192.570000,192.720000,187.800000,255.510000,295.270000 /) -XPIZA_LKT(73,1,1:6)=(/ 0.773258,0.775407,0.832234,0.947109,0.973850,0.989641 /) -XCGA_LKT(73,1,1:6)=(/ 0.881267,0.875727,0.843343,0.782217,0.789337,0.742883 /) -XEXT_COEFF_550_LKT(73,1)=192.610000 !rg=3.31831 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,2,1:6)=(/ 180.080000,183.160000,187.260000,193.930000,214.060000,262.970000 /) -XPIZA_LKT(73,2,1:6)=(/ 0.769939,0.767528,0.831177,0.943764,0.972139,0.988340 /) -XCGA_LKT(73,2,1:6)=(/ 0.881997,0.878270,0.850237,0.796290,0.786103,0.725813 /) -XEXT_COEFF_550_LKT(73,2)=186.910000 !rg=3.31831 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,3,1:6)=(/ 166.760000,169.430000,173.330000,179.400000,189.150000,226.900000 /) -XPIZA_LKT(73,3,1:6)=(/ 0.769210,0.767176,0.822623,0.942272,0.969274,0.986478 /) -XCGA_LKT(73,3,1:6)=(/ 0.882553,0.878817,0.852930,0.804703,0.778307,0.714327 /) -XEXT_COEFF_550_LKT(73,3)=172.490000 !rg=3.31831 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,4,1:6)=(/ 150.580000,152.960000,156.360000,161.400000,167.760000,196.940000 /) -XPIZA_LKT(73,4,1:6)=(/ 0.768436,0.768803,0.811907,0.937587,0.966304,0.984467 /) -XCGA_LKT(73,4,1:6)=(/ 0.882537,0.878667,0.857130,0.808870,0.778787,0.714877 /) -XEXT_COEFF_550_LKT(73,4)=155.520000 !rg=3.31831 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,5,1:6)=(/ 133.580000,135.480000,138.020000,141.420000,147.550000,169.620000 /) -XPIZA_LKT(73,5,1:6)=(/ 0.766523,0.772094,0.801693,0.933101,0.962430,0.982075 /) -XCGA_LKT(73,5,1:6)=(/ 0.883263,0.877713,0.861687,0.813347,0.780780,0.721563 /) -XEXT_COEFF_550_LKT(73,5)=137.930000 !rg=3.31831 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,6,1:6)=(/ 116.290000,118.060000,120.110000,123.180000,127.730000,144.850000 /) -XPIZA_LKT(73,6,1:6)=(/ 0.762695,0.771784,0.794078,0.926014,0.958084,0.979410 /) -XCGA_LKT(73,6,1:6)=(/ 0.883400,0.878930,0.865597,0.819067,0.787527,0.731263 /) -XEXT_COEFF_550_LKT(73,6)=120.000000 !rg=3.31831 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,7,1:6)=(/ 99.906000,101.470000,103.240000,105.700000,109.080000,121.880000 /) -XPIZA_LKT(73,7,1:6)=(/ 0.757167,0.770398,0.789363,0.917700,0.952999,0.975961 /) -XCGA_LKT(73,7,1:6)=(/ 0.884500,0.879387,0.868400,0.823563,0.797130,0.742743 /) -XEXT_COEFF_550_LKT(73,7)=102.740000 !rg=3.31831 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,8,1:6)=(/ 85.422000,86.484000,87.621000,89.912000,92.918000,102.170000 /) -XPIZA_LKT(73,8,1:6)=(/ 0.750114,0.767945,0.784231,0.911097,0.945587,0.971992 /) -XCGA_LKT(73,8,1:6)=(/ 0.885963,0.880520,0.871607,0.828443,0.802033,0.750897 /) -XEXT_COEFF_550_LKT(73,8)=87.800000 !rg=3.31831 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,9,1:6)=(/ 72.470000,73.060000,74.207000,75.781000,78.232000,84.803000 /) -XPIZA_LKT(73,9,1:6)=(/ 0.741618,0.763023,0.779005,0.905875,0.938380,0.967630 /) -XCGA_LKT(73,9,1:6)=(/ 0.887990,0.881290,0.874153,0.833547,0.811210,0.763407 /) -XEXT_COEFF_550_LKT(73,9)=74.211000 !rg=3.31831 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,10,1:6)=(/ 61.014000,61.635000,62.363000,63.471000,65.775000,70.990000 /) -XPIZA_LKT(73,10,1:6)=(/ 0.730913,0.756500,0.774693,0.900933,0.930143,0.961206 /) -XCGA_LKT(73,10,1:6)=(/ 0.889757,0.883527,0.876157,0.837587,0.818217,0.772580 /) -XEXT_COEFF_550_LKT(73,10)=62.419000 !rg=3.31831 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,11,1:6)=(/ 51.123000,51.710000,52.239000,53.160000,54.979000,58.585000 /) -XPIZA_LKT(73,11,1:6)=(/ 0.719358,0.749124,0.768445,0.896191,0.922836,0.955292 /) -XCGA_LKT(73,11,1:6)=(/ 0.891897,0.885463,0.878827,0.841993,0.824017,0.780527 /) -XEXT_COEFF_550_LKT(73,11)=52.175000 !rg=3.31831 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,12,1:6)=(/ 42.723000,43.110000,43.631000,44.127000,45.397000,48.210000 /) -XPIZA_LKT(73,12,1:6)=(/ 0.706486,0.739262,0.762373,0.892370,0.916506,0.947590 /) -XCGA_LKT(73,12,1:6)=(/ 0.894813,0.887243,0.880890,0.845530,0.832817,0.793683 /) -XEXT_COEFF_550_LKT(73,12)=43.609000 !rg=3.31831 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,13,1:6)=(/ 35.638000,35.912000,36.191000,36.632000,37.642000,39.555000 /) -XPIZA_LKT(73,13,1:6)=(/ 0.693496,0.728131,0.753456,0.887936,0.910634,0.940583 /) -XCGA_LKT(73,13,1:6)=(/ 0.897733,0.889880,0.882940,0.849417,0.838687,0.803297 /) -XEXT_COEFF_550_LKT(73,13)=36.269000 !rg=3.31831 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,14,1:6)=(/ 29.689000,29.918000,30.132000,30.470000,31.203000,32.613000 /) -XPIZA_LKT(73,14,1:6)=(/ 0.679915,0.716339,0.744014,0.882855,0.904689,0.932279 /) -XCGA_LKT(73,14,1:6)=(/ 0.900673,0.892600,0.885660,0.852210,0.844183,0.813913 /) -XEXT_COEFF_550_LKT(73,14)=30.145000 !rg=3.31831 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,15,1:6)=(/ 24.724000,24.860000,25.052000,25.339000,25.834000,26.821000 /) -XPIZA_LKT(73,15,1:6)=(/ 0.666456,0.703187,0.733405,0.877273,0.899568,0.925179 /) -XCGA_LKT(73,15,1:6)=(/ 0.904167,0.895007,0.888133,0.854360,0.849507,0.822730 /) -XEXT_COEFF_550_LKT(73,15)=25.070000 !rg=3.31831 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,16,1:6)=(/ 20.516000,20.643000,20.772000,21.032000,21.382000,22.196000 /) -XPIZA_LKT(73,16,1:6)=(/ 0.652913,0.689832,0.721038,0.870253,0.894157,0.918407 /) -XCGA_LKT(73,16,1:6)=(/ 0.907600,0.898273,0.890827,0.857520,0.852033,0.826777 /) -XEXT_COEFF_550_LKT(73,16)=20.769000 !rg=3.31831 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,17,1:6)=(/ 17.058000,17.155000,17.244000,17.396000,17.700000,18.274000 /) -XPIZA_LKT(73,17,1:6)=(/ 0.640197,0.676222,0.708332,0.861964,0.888576,0.912809 /) -XCGA_LKT(73,17,1:6)=(/ 0.911223,0.901560,0.893570,0.860297,0.856590,0.835383 /) -XEXT_COEFF_550_LKT(73,17)=17.252000 !rg=3.31831 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,18,1:6)=(/ 14.192000,14.253000,14.339000,14.439000,14.668000,15.055000 /) -XPIZA_LKT(73,18,1:6)=(/ 0.628497,0.662726,0.695700,0.852468,0.882364,0.906946 /) -XCGA_LKT(73,18,1:6)=(/ 0.915017,0.904880,0.896690,0.862227,0.860493,0.841943 /) -XEXT_COEFF_550_LKT(73,18)=14.342000 !rg=3.31831 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,19,1:6)=(/ 11.783000,11.835000,11.889000,11.996000,12.137000,12.463000 /) -XPIZA_LKT(73,19,1:6)=(/ 0.617398,0.649876,0.681690,0.841573,0.874618,0.901079 /) -XCGA_LKT(73,19,1:6)=(/ 0.918720,0.908523,0.899963,0.865197,0.862083,0.844753 /) -XEXT_COEFF_550_LKT(73,19)=11.885000 !rg=3.31831 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(73,20,1:6)=(/ 9.790400,9.830300,9.865800,9.929900,10.049000,10.270000 /) -XPIZA_LKT(73,20,1:6)=(/ 0.607205,0.637415,0.668272,0.829048,0.866644,0.895450 /) -XCGA_LKT(73,20,1:6)=(/ 0.922480,0.912303,0.903327,0.867683,0.865567,0.850787 /) -XEXT_COEFF_550_LKT(73,20)=9.868300 !rg=3.31831 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,1,1:6)=(/ 174.250000,176.140000,181.950000,189.270000,218.110000,235.440000 /) -XPIZA_LKT(74,1,1:6)=(/ 0.777475,0.758477,0.827891,0.947301,0.971233,0.987017 /) -XCGA_LKT(74,1,1:6)=(/ 0.880113,0.882613,0.854793,0.807443,0.780947,0.704023 /) -XEXT_COEFF_550_LKT(74,1)=180.820000 !rg=3.59491 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,2,1:6)=(/ 166.530000,168.980000,172.860000,176.590000,190.510000,214.230000 /) -XPIZA_LKT(74,2,1:6)=(/ 0.774337,0.755587,0.821097,0.943806,0.969361,0.985681 /) -XCGA_LKT(74,2,1:6)=(/ 0.880817,0.883133,0.855177,0.807070,0.788377,0.693683 /) -XEXT_COEFF_550_LKT(74,2)=173.020000 !rg=3.59491 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,3,1:6)=(/ 153.890000,156.480000,158.810000,163.530000,172.120000,192.960000 /) -XPIZA_LKT(74,3,1:6)=(/ 0.771387,0.761340,0.811882,0.940649,0.966467,0.983954 /) -XCGA_LKT(74,3,1:6)=(/ 0.882253,0.881583,0.858577,0.810517,0.788453,0.692223 /) -XEXT_COEFF_550_LKT(74,3)=158.220000 !rg=3.59491 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,4,1:6)=(/ 138.840000,141.210000,143.330000,147.100000,153.890000,173.080000 /) -XPIZA_LKT(74,4,1:6)=(/ 0.768761,0.766169,0.801445,0.935445,0.963299,0.982153 /) -XCGA_LKT(74,4,1:6)=(/ 0.882657,0.880540,0.862430,0.813840,0.787877,0.705273 /) -XEXT_COEFF_550_LKT(74,4)=142.650000 !rg=3.59491 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,5,1:6)=(/ 122.660000,124.410000,126.940000,130.370000,134.910000,151.430000 /) -XPIZA_LKT(74,5,1:6)=(/ 0.765451,0.768596,0.794590,0.927420,0.960319,0.980140 /) -XCGA_LKT(74,5,1:6)=(/ 0.883203,0.880020,0.865370,0.817580,0.791547,0.721873 /) -XEXT_COEFF_550_LKT(74,5)=126.340000 !rg=3.59491 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,6,1:6)=(/ 107.020000,108.420000,110.510000,112.660000,117.940000,130.940000 /) -XPIZA_LKT(74,6,1:6)=(/ 0.760617,0.770517,0.788845,0.921266,0.954321,0.976817 /) -XCGA_LKT(74,6,1:6)=(/ 0.883867,0.879890,0.868837,0.821943,0.795007,0.733153 /) -XEXT_COEFF_550_LKT(74,6)=110.580000 !rg=3.59491 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,7,1:6)=(/ 92.251000,93.471000,94.815000,96.909000,100.490000,110.610000 /) -XPIZA_LKT(74,7,1:6)=(/ 0.754471,0.768316,0.783809,0.913943,0.948888,0.973456 /) -XCGA_LKT(74,7,1:6)=(/ 0.885347,0.880923,0.871350,0.827580,0.802803,0.745953 /) -XEXT_COEFF_550_LKT(74,7)=94.217000 !rg=3.59491 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,8,1:6)=(/ 78.830000,79.502000,80.769000,82.285000,85.646000,93.385000 /) -XPIZA_LKT(74,8,1:6)=(/ 0.746571,0.765164,0.780533,0.907602,0.941450,0.968906 /) -XCGA_LKT(74,8,1:6)=(/ 0.887073,0.881300,0.873650,0.831273,0.808373,0.756370 /) -XEXT_COEFF_550_LKT(74,8)=80.993000 !rg=3.59491 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,9,1:6)=(/ 66.574000,67.286000,68.214000,69.509000,71.545000,77.096000 /) -XPIZA_LKT(74,9,1:6)=(/ 0.736593,0.759979,0.776369,0.902897,0.935147,0.965483 /) -XCGA_LKT(74,9,1:6)=(/ 0.888613,0.882860,0.875277,0.836917,0.818283,0.770773 /) -XEXT_COEFF_550_LKT(74,9)=68.057000 !rg=3.59491 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,10,1:6)=(/ 56.271000,56.720000,57.452000,58.397000,60.242000,64.331000 /) -XPIZA_LKT(74,10,1:6)=(/ 0.726143,0.753121,0.770852,0.898704,0.926868,0.959508 /) -XCGA_LKT(74,10,1:6)=(/ 0.890733,0.884583,0.877923,0.840577,0.822980,0.778437 /) -XEXT_COEFF_550_LKT(74,10)=57.506000 !rg=3.59491 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,11,1:6)=(/ 47.168000,47.621000,48.165000,48.972000,50.413000,53.647000 /) -XPIZA_LKT(74,11,1:6)=(/ 0.713888,0.744728,0.765687,0.894154,0.919444,0.951419 /) -XCGA_LKT(74,11,1:6)=(/ 0.893283,0.886563,0.880203,0.844467,0.828883,0.787247 /) -XEXT_COEFF_550_LKT(74,11)=47.987000 !rg=3.59491 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,12,1:6)=(/ 39.412000,39.691000,40.115000,40.648000,41.698000,43.943000 /) -XPIZA_LKT(74,12,1:6)=(/ 0.700824,0.734177,0.758133,0.890236,0.913621,0.944834 /) -XCGA_LKT(74,12,1:6)=(/ 0.895913,0.888647,0.881877,0.848003,0.836260,0.798727 /) -XEXT_COEFF_550_LKT(74,12)=40.178000 !rg=3.59491 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,13,1:6)=(/ 32.850000,33.149000,33.396000,33.729000,34.631000,36.290000 /) -XPIZA_LKT(74,13,1:6)=(/ 0.687169,0.723030,0.749284,0.885240,0.907632,0.936470 /) -XCGA_LKT(74,13,1:6)=(/ 0.898930,0.891347,0.884637,0.851037,0.842197,0.809563 /) -XEXT_COEFF_550_LKT(74,13)=33.396000 !rg=3.59491 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,14,1:6)=(/ 27.399000,27.545000,27.800000,28.069000,28.631000,29.794000 /) -XPIZA_LKT(74,14,1:6)=(/ 0.673756,0.710063,0.739547,0.880351,0.902027,0.928930 /) -XCGA_LKT(74,14,1:6)=(/ 0.902337,0.893680,0.887100,0.853583,0.847490,0.818867 /) -XEXT_COEFF_550_LKT(74,14)=27.768000 !rg=3.59491 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,15,1:6)=(/ 22.788000,22.920000,23.085000,23.351000,23.817000,24.775000 /) -XPIZA_LKT(74,15,1:6)=(/ 0.660114,0.697115,0.728055,0.874242,0.896298,0.921061 /) -XCGA_LKT(74,15,1:6)=(/ 0.905637,0.896553,0.889093,0.856607,0.850520,0.823093 /) -XEXT_COEFF_550_LKT(74,15)=23.110000 !rg=3.59491 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,16,1:6)=(/ 18.919000,19.029000,19.165000,19.369000,19.698000,20.408000 /) -XPIZA_LKT(74,16,1:6)=(/ 0.646924,0.683563,0.715920,0.866731,0.891477,0.915192 /) -XCGA_LKT(74,16,1:6)=(/ 0.909257,0.899823,0.892173,0.858597,0.854300,0.830697 /) -XEXT_COEFF_550_LKT(74,16)=19.119000 !rg=3.59491 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,17,1:6)=(/ 15.741000,15.809000,15.914000,16.044000,16.302000,16.741000 /) -XPIZA_LKT(74,17,1:6)=(/ 0.634748,0.669854,0.702826,0.858001,0.885489,0.909371 /) -XCGA_LKT(74,17,1:6)=(/ 0.912970,0.903070,0.895097,0.861313,0.858453,0.838953 /) -XEXT_COEFF_550_LKT(74,17)=15.921000 !rg=3.59491 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,18,1:6)=(/ 13.089000,13.147000,13.212000,13.332000,13.507000,13.887000 /) -XPIZA_LKT(74,18,1:6)=(/ 0.623112,0.656757,0.689340,0.847968,0.878763,0.903499 /) -XCGA_LKT(74,18,1:6)=(/ 0.916703,0.906613,0.898013,0.864003,0.861300,0.842687 /) -XEXT_COEFF_550_LKT(74,18)=13.221000 !rg=3.59491 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,19,1:6)=(/ 10.868000,10.914000,10.972000,11.045000,11.176000,11.474000 /) -XPIZA_LKT(74,19,1:6)=(/ 0.612435,0.643920,0.676122,0.836309,0.871138,0.898199 /) -XCGA_LKT(74,19,1:6)=(/ 0.920440,0.910313,0.901510,0.866307,0.863773,0.847487 /) -XEXT_COEFF_550_LKT(74,19)=10.956000 !rg=3.59491 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(74,20,1:6)=(/ 9.033300,9.062200,9.106900,9.159400,9.271500,9.454200 /) -XPIZA_LKT(74,20,1:6)=(/ 0.602874,0.631847,0.662603,0.823124,0.862650,0.892242 /) -XCGA_LKT(74,20,1:6)=(/ 0.924163,0.913933,0.905060,0.868833,0.867103,0.853070 /) -XEXT_COEFF_550_LKT(74,20)=9.106000 !rg=3.59491 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,1,1:6)=(/ 159.730000,162.660000,163.900000,175.100000,179.350000,184.800000 /) -XPIZA_LKT(75,1,1:6)=(/ 0.779284,0.737236,0.814689,0.944541,0.957084,0.983139 /) -XCGA_LKT(75,1,1:6)=(/ 0.879927,0.889963,0.857783,0.820543,0.756777,0.650320 /) -XEXT_COEFF_550_LKT(75,1)=164.720000 !rg=3.89457 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,2,1:6)=(/ 152.600000,155.210000,158.610000,162.120000,168.580000,175.190000 /) -XPIZA_LKT(75,2,1:6)=(/ 0.776462,0.751138,0.810868,0.938961,0.963953,0.982254 /) -XCGA_LKT(75,2,1:6)=(/ 0.880117,0.886053,0.858977,0.809980,0.792470,0.655363 /) -XEXT_COEFF_550_LKT(75,2)=158.100000 !rg=3.89457 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,3,1:6)=(/ 141.450000,143.600000,146.230000,150.120000,158.710000,165.750000 /) -XPIZA_LKT(75,3,1:6)=(/ 0.772190,0.761177,0.800344,0.934915,0.961798,0.981405 /) -XCGA_LKT(75,3,1:6)=(/ 0.881460,0.882543,0.864093,0.811253,0.780913,0.680293 /) -XEXT_COEFF_550_LKT(75,3)=146.230000 !rg=3.89457 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,4,1:6)=(/ 127.700000,129.810000,132.010000,135.270000,142.530000,153.220000 /) -XPIZA_LKT(75,4,1:6)=(/ 0.768593,0.765671,0.791816,0.929538,0.958559,0.979927 /) -XCGA_LKT(75,4,1:6)=(/ 0.882317,0.881703,0.867400,0.815777,0.783713,0.703163 /) -XEXT_COEFF_550_LKT(75,4)=131.730000 !rg=3.89457 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,5,1:6)=(/ 113.120000,114.870000,116.430000,119.350000,123.780000,136.090000 /) -XPIZA_LKT(75,5,1:6)=(/ 0.763958,0.767944,0.786358,0.923593,0.956892,0.977753 /) -XCGA_LKT(75,5,1:6)=(/ 0.883577,0.880850,0.869810,0.822067,0.798523,0.722580 /) -XEXT_COEFF_550_LKT(75,5)=115.940000 !rg=3.89457 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,6,1:6)=(/ 98.807000,99.918000,101.310000,103.030000,108.670000,118.240000 /) -XPIZA_LKT(75,6,1:6)=(/ 0.758010,0.767807,0.783801,0.916978,0.951044,0.974557 /) -XCGA_LKT(75,6,1:6)=(/ 0.884823,0.881273,0.871673,0.827503,0.795730,0.734133 /) -XEXT_COEFF_550_LKT(75,6)=101.320000 !rg=3.89457 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,7,1:6)=(/ 84.841000,86.091000,87.297000,89.107000,92.956000,100.600000 /) -XPIZA_LKT(75,7,1:6)=(/ 0.750418,0.767019,0.779934,0.909139,0.944203,0.970888 /) -XCGA_LKT(75,7,1:6)=(/ 0.885873,0.881740,0.874193,0.830657,0.802470,0.746503 /) -XEXT_COEFF_550_LKT(75,7)=86.950000 !rg=3.89457 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,8,1:6)=(/ 72.542000,73.346000,74.186000,75.440000,78.377000,84.551000 /) -XPIZA_LKT(75,8,1:6)=(/ 0.742039,0.763090,0.776910,0.904307,0.938717,0.967435 /) -XCGA_LKT(75,8,1:6)=(/ 0.887853,0.882697,0.875307,0.835807,0.813087,0.760820 /) -XEXT_COEFF_550_LKT(75,8)=74.395000 !rg=3.89457 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,9,1:6)=(/ 61.459000,62.054000,62.738000,64.063000,65.821000,70.392000 /) -XPIZA_LKT(75,9,1:6)=(/ 0.731988,0.756570,0.772944,0.899633,0.930163,0.962206 /) -XCGA_LKT(75,9,1:6)=(/ 0.889767,0.883713,0.877510,0.839010,0.822527,0.775787 /) -XEXT_COEFF_550_LKT(75,9)=62.634000 !rg=3.89457 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,10,1:6)=(/ 51.828000,52.355000,52.832000,53.689000,55.402000,58.691000 /) -XPIZA_LKT(75,10,1:6)=(/ 0.720186,0.749764,0.768074,0.895683,0.922698,0.956361 /) -XCGA_LKT(75,10,1:6)=(/ 0.891957,0.885680,0.879437,0.843770,0.827997,0.786517 /) -XEXT_COEFF_550_LKT(75,10)=52.815000 !rg=3.89457 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,11,1:6)=(/ 43.525000,43.880000,44.339000,45.109000,46.116000,48.639000 /) -XPIZA_LKT(75,11,1:6)=(/ 0.707974,0.739975,0.761970,0.891537,0.916501,0.948672 /) -XCGA_LKT(75,11,1:6)=(/ 0.894827,0.887377,0.881520,0.846293,0.834117,0.794720 /) -XEXT_COEFF_550_LKT(75,11)=44.241000 !rg=3.89457 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,12,1:6)=(/ 36.325000,36.627000,36.909000,37.429000,38.391000,40.272000 /) -XPIZA_LKT(75,12,1:6)=(/ 0.694214,0.729485,0.753808,0.887574,0.909814,0.940522 /) -XCGA_LKT(75,12,1:6)=(/ 0.897430,0.889930,0.883550,0.849913,0.839653,0.805510 /) -XEXT_COEFF_550_LKT(75,12)=36.896000 !rg=3.89457 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,13,1:6)=(/ 30.339000,30.499000,30.808000,31.181000,31.752000,33.099000 /) -XPIZA_LKT(75,13,1:6)=(/ 0.681261,0.716976,0.744900,0.883112,0.904374,0.932734 /) -XCGA_LKT(75,13,1:6)=(/ 0.900590,0.892307,0.886127,0.852637,0.845603,0.814973 /) -XEXT_COEFF_550_LKT(75,13)=30.774000 !rg=3.89457 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,14,1:6)=(/ 25.246000,25.413000,25.579000,25.926000,26.400000,27.432000 /) -XPIZA_LKT(75,14,1:6)=(/ 0.667090,0.704448,0.733997,0.877635,0.899151,0.925192 /) -XCGA_LKT(75,14,1:6)=(/ 0.903843,0.895080,0.888050,0.855197,0.848763,0.820633 /) -XEXT_COEFF_550_LKT(75,14)=25.602000 !rg=3.89457 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,15,1:6)=(/ 21.012000,21.143000,21.277000,21.427000,21.856000,22.672000 /) -XPIZA_LKT(75,15,1:6)=(/ 0.653797,0.691007,0.722617,0.870887,0.893900,0.918448 /) -XCGA_LKT(75,15,1:6)=(/ 0.907297,0.898037,0.890597,0.857397,0.852800,0.827727 /) -XEXT_COEFF_550_LKT(75,15)=21.263000 !rg=3.89457 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,16,1:6)=(/ 17.458000,17.546000,17.659000,17.822000,18.117000,18.656000 /) -XPIZA_LKT(75,16,1:6)=(/ 0.641129,0.677323,0.709962,0.862723,0.888656,0.912768 /) -XCGA_LKT(75,16,1:6)=(/ 0.911060,0.901207,0.893630,0.860007,0.856533,0.835423 /) -XEXT_COEFF_550_LKT(75,16)=17.649000 !rg=3.89457 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,17,1:6)=(/ 14.515000,14.589000,14.656000,14.797000,14.960000,15.378000 /) -XPIZA_LKT(75,17,1:6)=(/ 0.628999,0.663927,0.696539,0.853861,0.882339,0.906855 /) -XCGA_LKT(75,17,1:6)=(/ 0.914700,0.904750,0.896437,0.862813,0.859623,0.841110 /) -XEXT_COEFF_550_LKT(75,17)=14.649000 !rg=3.89457 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,18,1:6)=(/ 12.074000,12.124000,12.184000,12.245000,12.405000,12.738000 /) -XPIZA_LKT(75,18,1:6)=(/ 0.617939,0.650765,0.683234,0.842869,0.875608,0.901056 /) -XCGA_LKT(75,18,1:6)=(/ 0.918457,0.908250,0.899680,0.864877,0.862923,0.845533 /) -XEXT_COEFF_550_LKT(75,18)=12.177000 !rg=3.89457 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,19,1:6)=(/ 10.029000,10.063000,10.113000,10.173000,10.309000,10.528000 /) -XPIZA_LKT(75,19,1:6)=(/ 0.607856,0.638184,0.669756,0.830477,0.867596,0.895754 /) -XCGA_LKT(75,19,1:6)=(/ 0.922193,0.911883,0.903180,0.867453,0.865217,0.850770 /) -XEXT_COEFF_550_LKT(75,19)=10.115000 !rg=3.89457 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(75,20,1:6)=(/ 8.333000,8.362700,8.392200,8.451600,8.514900,8.686900 /) -XPIZA_LKT(75,20,1:6)=(/ 0.598506,0.626662,0.656572,0.817272,0.858068,0.889278 /) -XCGA_LKT(75,20,1:6)=(/ 0.925863,0.915697,0.906557,0.870257,0.867817,0.854240 /) -XEXT_COEFF_550_LKT(75,20)=8.389100 !rg=3.89457 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,1,1:6)=(/ 147.140000,150.170000,154.370000,150.070000,139.460000,142.520000 /) -XPIZA_LKT(76,1,1:6)=(/ 0.776457,0.736825,0.806877,0.935689,0.959522,0.978438 /) -XCGA_LKT(76,1,1:6)=(/ 0.881400,0.890853,0.864457,0.808993,0.767063,0.595993 /) -XEXT_COEFF_550_LKT(76,1)=154.720000 !rg=4.21921 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,2,1:6)=(/ 140.960000,143.110000,145.010000,147.800000,154.520000,145.840000 /) -XPIZA_LKT(76,2,1:6)=(/ 0.774974,0.749119,0.799447,0.935394,0.959466,0.978861 /) -XCGA_LKT(76,2,1:6)=(/ 0.881660,0.887480,0.865060,0.816403,0.773850,0.633140 /) -XEXT_COEFF_550_LKT(76,2)=144.390000 !rg=4.21921 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,3,1:6)=(/ 130.430000,132.360000,134.640000,137.570000,145.550000,147.160000 /) -XPIZA_LKT(76,3,1:6)=(/ 0.771782,0.759047,0.790240,0.930486,0.958173,0.978777 /) -XCGA_LKT(76,3,1:6)=(/ 0.881673,0.883907,0.869180,0.818010,0.792587,0.676857 /) -XEXT_COEFF_550_LKT(76,3)=134.620000 !rg=4.21921 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,4,1:6)=(/ 117.960000,119.500000,121.430000,124.240000,130.880000,138.420000 /) -XPIZA_LKT(76,4,1:6)=(/ 0.767143,0.764796,0.784079,0.924641,0.955881,0.977147 /) -XCGA_LKT(76,4,1:6)=(/ 0.882873,0.882420,0.871613,0.821910,0.795223,0.706283 /) -XEXT_COEFF_550_LKT(76,4)=121.110000 !rg=4.21921 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,5,1:6)=(/ 104.230000,105.450000,107.360000,109.680000,114.920000,123.150000 /) -XPIZA_LKT(76,5,1:6)=(/ 0.761576,0.768630,0.780473,0.918173,0.951097,0.975250 /) -XCGA_LKT(76,5,1:6)=(/ 0.883853,0.881073,0.873117,0.825527,0.794983,0.724917 /) -XEXT_COEFF_550_LKT(76,5)=107.150000 !rg=4.21921 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,6,1:6)=(/ 90.780000,92.095000,93.288000,95.472000,99.710000,107.480000 /) -XPIZA_LKT(76,6,1:6)=(/ 0.754330,0.766965,0.778125,0.911629,0.947148,0.971908 /) -XCGA_LKT(76,6,1:6)=(/ 0.884770,0.881770,0.874863,0.831323,0.803760,0.743497 /) -XEXT_COEFF_550_LKT(76,6)=93.484000 !rg=4.21921 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,7,1:6)=(/ 78.320000,79.230000,80.362000,81.999000,85.137000,92.047000 /) -XPIZA_LKT(76,7,1:6)=(/ 0.746839,0.764757,0.777180,0.905805,0.940818,0.967476 /) -XCGA_LKT(76,7,1:6)=(/ 0.887000,0.882530,0.876120,0.835157,0.810583,0.754157 /) -XEXT_COEFF_550_LKT(76,7)=79.892000 !rg=4.21921 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,8,1:6)=(/ 66.838000,67.609000,68.332000,69.543000,72.042000,76.989000 /) -XPIZA_LKT(76,8,1:6)=(/ 0.736911,0.760205,0.773854,0.900678,0.934035,0.964602 /) -XCGA_LKT(76,8,1:6)=(/ 0.888693,0.883823,0.877637,0.839067,0.819020,0.770483 /) -XEXT_COEFF_550_LKT(76,8)=68.452000 !rg=4.21921 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,9,1:6)=(/ 56.606000,57.106000,57.868000,58.840000,60.977000,64.809000 /) -XPIZA_LKT(76,9,1:6)=(/ 0.726341,0.753706,0.769779,0.897006,0.924967,0.957533 /) -XCGA_LKT(76,9,1:6)=(/ 0.890747,0.884627,0.878920,0.842467,0.822373,0.775037 /) -XEXT_COEFF_550_LKT(76,9)=57.845000 !rg=4.21921 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,10,1:6)=(/ 47.860000,48.152000,48.722000,49.451000,50.706000,53.564000 /) -XPIZA_LKT(76,10,1:6)=(/ 0.714849,0.744833,0.765457,0.893479,0.919305,0.952561 /) -XCGA_LKT(76,10,1:6)=(/ 0.893440,0.886330,0.880793,0.845290,0.832670,0.792143 /) -XEXT_COEFF_550_LKT(76,10)=48.783000 !rg=4.21921 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,11,1:6)=(/ 40.067000,40.447000,40.860000,41.420000,42.234000,44.366000 /) -XPIZA_LKT(76,11,1:6)=(/ 0.701361,0.735443,0.758236,0.889630,0.913708,0.945452 /) -XCGA_LKT(76,11,1:6)=(/ 0.895903,0.888653,0.882400,0.848603,0.839100,0.801430 /) -XEXT_COEFF_550_LKT(76,11)=40.745000 !rg=4.21921 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,12,1:6)=(/ 33.539000,33.727000,34.050000,34.434000,35.189000,36.770000 /) -XPIZA_LKT(76,12,1:6)=(/ 0.688318,0.723540,0.750187,0.885655,0.907099,0.936751 /) -XCGA_LKT(76,12,1:6)=(/ 0.898970,0.890953,0.884880,0.851257,0.843363,0.810817 /) -XEXT_COEFF_550_LKT(76,12)=34.050000 !rg=4.21921 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,13,1:6)=(/ 27.930000,28.156000,28.325000,28.719000,29.224000,30.399000 /) -XPIZA_LKT(76,13,1:6)=(/ 0.674288,0.711809,0.739721,0.880934,0.901746,0.929270 /) -XCGA_LKT(76,13,1:6)=(/ 0.902077,0.893713,0.886957,0.853863,0.847290,0.817170 /) -XEXT_COEFF_550_LKT(76,13)=28.296000 !rg=4.21921 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,14,1:6)=(/ 23.297000,23.405000,23.602000,23.836000,24.242000,25.176000 /) -XPIZA_LKT(76,14,1:6)=(/ 0.661251,0.698082,0.729210,0.874537,0.896796,0.922260 /) -XCGA_LKT(76,14,1:6)=(/ 0.905410,0.896337,0.889373,0.856393,0.851943,0.825400 /) -XEXT_COEFF_550_LKT(76,14)=23.593000 !rg=4.21921 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,15,1:6)=(/ 19.391000,19.482000,19.628000,19.831000,20.154000,20.803000 /) -XPIZA_LKT(76,15,1:6)=(/ 0.647944,0.684767,0.716964,0.867783,0.891137,0.915493 /) -XCGA_LKT(76,15,1:6)=(/ 0.909007,0.899480,0.892027,0.858800,0.854993,0.831820 /) -XEXT_COEFF_550_LKT(76,15)=19.634000 !rg=4.21921 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,16,1:6)=(/ 16.099000,16.195000,16.276000,16.427000,16.624000,17.088000 /) -XPIZA_LKT(76,16,1:6)=(/ 0.635224,0.671390,0.704062,0.859192,0.886025,0.910197 /) -XCGA_LKT(76,16,1:6)=(/ 0.912713,0.902890,0.894767,0.861387,0.859313,0.839753 /) -XEXT_COEFF_550_LKT(76,16)=16.265000 !rg=4.21921 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,17,1:6)=(/ 13.393000,13.449000,13.526000,13.604000,13.812000,14.172000 /) -XPIZA_LKT(76,17,1:6)=(/ 0.623718,0.657819,0.690739,0.849056,0.879472,0.903972 /) -XCGA_LKT(76,17,1:6)=(/ 0.916447,0.906257,0.898017,0.863577,0.862257,0.844540 /) -XEXT_COEFF_550_LKT(76,17)=13.512000 !rg=4.21921 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,18,1:6)=(/ 11.140000,11.179000,11.239000,11.320000,11.454000,11.734000 /) -XPIZA_LKT(76,18,1:6)=(/ 0.613137,0.644877,0.677180,0.837792,0.871965,0.898274 /) -XCGA_LKT(76,18,1:6)=(/ 0.920130,0.909903,0.901240,0.866060,0.864090,0.848360 /) -XEXT_COEFF_550_LKT(76,18)=11.241000 !rg=4.21921 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,19,1:6)=(/ 9.251700,9.289900,9.322300,9.387000,9.466700,9.648700 /) -XPIZA_LKT(76,19,1:6)=(/ 0.603234,0.632918,0.663684,0.824991,0.863539,0.892805 /) -XCGA_LKT(76,19,1:6)=(/ 0.923917,0.913680,0.904583,0.868620,0.867220,0.853490 /) -XEXT_COEFF_550_LKT(76,19)=9.321100 !rg=4.21921 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(76,20,1:6)=(/ 7.688600,7.711900,7.744200,7.780700,7.860400,8.010900 /) -XPIZA_LKT(76,20,1:6)=(/ 0.594537,0.621430,0.650902,0.810690,0.853726,0.886311 /) -XCGA_LKT(76,20,1:6)=(/ 0.927480,0.917367,0.908267,0.871350,0.869793,0.856937 /) -XEXT_COEFF_550_LKT(76,20)=7.738700 !rg=4.21921 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,1,1:6)=(/ 135.230000,138.450000,139.750000,147.410000,139.520000,119.500000 /) -XPIZA_LKT(77,1,1:6)=(/ 0.776038,0.747038,0.794279,0.929890,0.956622,0.974345 /) -XCGA_LKT(77,1,1:6)=(/ 0.881143,0.888267,0.865740,0.818647,0.780017,0.574830 /) -XEXT_COEFF_550_LKT(77,1)=139.750000 !rg=4.57091 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,2,1:6)=(/ 129.560000,131.830000,133.360000,136.630000,143.020000,130.360000 /) -XPIZA_LKT(77,2,1:6)=(/ 0.773444,0.757283,0.785840,0.931109,0.956493,0.976297 /) -XCGA_LKT(77,2,1:6)=(/ 0.881087,0.885530,0.871330,0.820173,0.793257,0.635933 /) -XEXT_COEFF_550_LKT(77,2)=133.660000 !rg=4.57091 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,3,1:6)=(/ 120.490000,121.670000,123.960000,126.690000,131.280000,132.900000 /) -XPIZA_LKT(77,3,1:6)=(/ 0.770434,0.763560,0.778473,0.926425,0.958879,0.976832 /) -XCGA_LKT(77,3,1:6)=(/ 0.881923,0.882630,0.873020,0.821960,0.800497,0.686270 /) -XEXT_COEFF_550_LKT(77,3)=123.960000 !rg=4.57091 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,4,1:6)=(/ 108.850000,109.900000,111.810000,114.330000,118.530000,124.580000 /) -XPIZA_LKT(77,4,1:6)=(/ 0.764952,0.767033,0.776425,0.920269,0.955152,0.975706 /) -XCGA_LKT(77,4,1:6)=(/ 0.883777,0.881553,0.874543,0.825290,0.802890,0.716160 /) -XEXT_COEFF_550_LKT(77,4)=111.660000 !rg=4.57091 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,5,1:6)=(/ 95.971000,97.307000,98.611000,100.930000,105.370000,112.680000 /) -XPIZA_LKT(77,5,1:6)=(/ 0.758251,0.766665,0.777047,0.912700,0.948936,0.972140 /) -XCGA_LKT(77,5,1:6)=(/ 0.884397,0.882410,0.875417,0.829527,0.805140,0.733360 /) -XEXT_COEFF_550_LKT(77,5)=98.371000 !rg=4.57091 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,6,1:6)=(/ 83.747000,84.743000,86.010000,88.001000,90.542000,96.826000 /) -XPIZA_LKT(77,6,1:6)=(/ 0.751004,0.765625,0.775033,0.906575,0.943450,0.969678 /) -XCGA_LKT(77,6,1:6)=(/ 0.886060,0.882667,0.876897,0.833453,0.812183,0.752397 /) -XEXT_COEFF_550_LKT(77,6)=85.975000 !rg=4.57091 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,7,1:6)=(/ 72.261000,73.038000,73.945000,75.590000,77.625000,82.848000 /) -XPIZA_LKT(77,7,1:6)=(/ 0.742294,0.762452,0.773934,0.901704,0.937562,0.966233 /) -XCGA_LKT(77,7,1:6)=(/ 0.888273,0.882950,0.877743,0.837320,0.816877,0.763587 /) -XEXT_COEFF_550_LKT(77,7)=73.713000 !rg=4.57091 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,8,1:6)=(/ 61.750000,62.140000,62.980000,63.991000,65.804000,69.920000 /) -XPIZA_LKT(77,8,1:6)=(/ 0.732352,0.756646,0.771481,0.898239,0.929686,0.961484 /) -XCGA_LKT(77,8,1:6)=(/ 0.889943,0.884280,0.879240,0.841520,0.824653,0.777337 /) -XEXT_COEFF_550_LKT(77,8)=62.999000 !rg=4.57091 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,9,1:6)=(/ 52.175000,52.759000,53.191000,54.077000,55.742000,59.314000 /) -XPIZA_LKT(77,9,1:6)=(/ 0.720542,0.749657,0.767603,0.894008,0.921943,0.954844 /) -XCGA_LKT(77,9,1:6)=(/ 0.891803,0.885867,0.880037,0.844227,0.828280,0.783623 /) -XEXT_COEFF_550_LKT(77,9)=53.131000 !rg=4.57091 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,10,1:6)=(/ 44.062000,44.517000,44.819000,45.583000,46.811000,49.338000 /) -XPIZA_LKT(77,10,1:6)=(/ 0.708355,0.741478,0.761280,0.890826,0.915022,0.947915 /) -XCGA_LKT(77,10,1:6)=(/ 0.894523,0.887693,0.881703,0.847680,0.834093,0.792267 /) -XEXT_COEFF_550_LKT(77,10)=44.936000 !rg=4.57091 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,11,1:6)=(/ 36.973000,37.243000,37.618000,38.132000,39.048000,40.874000 /) -XPIZA_LKT(77,11,1:6)=(/ 0.695260,0.730047,0.754424,0.887316,0.909255,0.940917 /) -XCGA_LKT(77,11,1:6)=(/ 0.897380,0.889790,0.883767,0.850407,0.840670,0.805810 /) -XEXT_COEFF_550_LKT(77,11)=37.495000 !rg=4.57091 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,12,1:6)=(/ 30.894000,31.151000,31.338000,31.823000,32.464000,33.851000 /) -XPIZA_LKT(77,12,1:6)=(/ 0.681565,0.718625,0.745231,0.883059,0.903724,0.932653 /) -XCGA_LKT(77,12,1:6)=(/ 0.900313,0.892307,0.885827,0.853003,0.845023,0.812263 /) -XEXT_COEFF_550_LKT(77,12)=31.385000 !rg=4.57091 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,13,1:6)=(/ 25.774000,25.911000,26.150000,26.420000,26.905000,27.969000 /) -XPIZA_LKT(77,13,1:6)=(/ 0.668080,0.705493,0.735480,0.877822,0.899262,0.925851 /) -XCGA_LKT(77,13,1:6)=(/ 0.903663,0.894813,0.888287,0.855197,0.850833,0.822270 /) -XEXT_COEFF_550_LKT(77,13)=26.142000 !rg=4.57091 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,14,1:6)=(/ 21.480000,21.594000,21.725000,21.932000,22.350000,23.114000 /) -XPIZA_LKT(77,14,1:6)=(/ 0.654696,0.692066,0.723493,0.871531,0.894118,0.919491 /) -XCGA_LKT(77,14,1:6)=(/ 0.907167,0.897843,0.890493,0.857790,0.853517,0.828733 /) -XEXT_COEFF_550_LKT(77,14)=21.758000 !rg=4.57091 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,15,1:6)=(/ 17.879000,17.985000,18.072000,18.258000,18.550000,19.106000 /) -XPIZA_LKT(77,15,1:6)=(/ 0.641828,0.678803,0.711295,0.864017,0.888542,0.912915 /) -XCGA_LKT(77,15,1:6)=(/ 0.910727,0.901103,0.893287,0.860410,0.856590,0.836257 /) -XEXT_COEFF_550_LKT(77,15)=18.055000 !rg=4.57091 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,16,1:6)=(/ 14.857000,14.920000,15.023000,15.117000,15.369000,15.799000 /) -XPIZA_LKT(77,16,1:6)=(/ 0.629784,0.664790,0.698339,0.854683,0.882921,0.907097 /) -XCGA_LKT(77,16,1:6)=(/ 0.914487,0.904463,0.896353,0.862800,0.859850,0.841497 /) -XEXT_COEFF_550_LKT(77,16)=14.983000 !rg=4.57091 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,17,1:6)=(/ 12.356000,12.401000,12.465000,12.547000,12.729000,13.041000 /) -XPIZA_LKT(77,17,1:6)=(/ 0.618564,0.651651,0.684648,0.844343,0.876472,0.901845 /) -XCGA_LKT(77,17,1:6)=(/ 0.918177,0.907873,0.899340,0.865280,0.863133,0.846153 /) -XEXT_COEFF_550_LKT(77,17)=12.469000 !rg=4.57091 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,18,1:6)=(/ 10.277000,10.318000,10.357000,10.437000,10.551000,10.791000 /) -XPIZA_LKT(77,18,1:6)=(/ 0.608270,0.639342,0.671026,0.832358,0.868191,0.895612 /) -XCGA_LKT(77,18,1:6)=(/ 0.921927,0.911660,0.902753,0.867423,0.865057,0.850647 /) -XEXT_COEFF_550_LKT(77,18)=10.349000 !rg=4.57091 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,19,1:6)=(/ 8.537900,8.563300,8.606800,8.647500,8.751500,8.942000 /) -XPIZA_LKT(77,19,1:6)=(/ 0.599045,0.627325,0.657996,0.818734,0.859491,0.889970 /) -XCGA_LKT(77,19,1:6)=(/ 0.925607,0.915367,0.906337,0.870100,0.868150,0.854633 /) -XEXT_COEFF_550_LKT(77,19)=8.588000 !rg=4.57091 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(77,20,1:6)=(/ 7.094000,7.113700,7.139100,7.179900,7.246100,7.371300 /) -XPIZA_LKT(77,20,1:6)=(/ 0.590719,0.616428,0.645056,0.804195,0.849167,0.883702 /) -XCGA_LKT(77,20,1:6)=(/ 0.929080,0.919050,0.909860,0.872837,0.870847,0.858463 /) -XEXT_COEFF_550_LKT(77,20)=7.144300 !rg=4.57091 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,1,1:6)=(/ 124.720000,126.860000,128.540000,132.510000,145.200000,113.320000 /) -XPIZA_LKT(78,1,1:6)=(/ 0.772805,0.764428,0.781769,0.929533,0.961530,0.972725 /) -XCGA_LKT(78,1,1:6)=(/ 0.880820,0.883137,0.873403,0.825473,0.820463,0.603210 /) -XEXT_COEFF_550_LKT(78,1)=129.030000 !rg=4.95192 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,2,1:6)=(/ 119.390000,121.350000,123.440000,126.990000,132.180000,123.820000 /) -XPIZA_LKT(78,2,1:6)=(/ 0.772081,0.764434,0.772708,0.924754,0.954759,0.974977 /) -XCGA_LKT(78,2,1:6)=(/ 0.881860,0.883757,0.876797,0.823090,0.803070,0.662880 /) -XEXT_COEFF_550_LKT(78,2)=123.220000 !rg=4.95192 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,3,1:6)=(/ 110.620000,111.770000,114.060000,116.430000,120.090000,123.490000 /) -XPIZA_LKT(78,3,1:6)=(/ 0.767428,0.766516,0.770749,0.921066,0.956391,0.975402 /) -XCGA_LKT(78,3,1:6)=(/ 0.883103,0.882470,0.876907,0.826380,0.806890,0.706450 /) -XEXT_COEFF_550_LKT(78,3)=113.610000 !rg=4.95192 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,4,1:6)=(/ 99.850000,101.050000,102.870000,104.870000,108.180000,114.110000 /) -XPIZA_LKT(78,4,1:6)=(/ 0.761688,0.767564,0.771974,0.914509,0.952603,0.973992 /) -XCGA_LKT(78,4,1:6)=(/ 0.884107,0.882190,0.876933,0.829443,0.809740,0.730597 /) -XEXT_COEFF_550_LKT(78,4)=102.430000 !rg=4.95192 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,5,1:6)=(/ 88.703000,89.438000,90.891000,92.812000,95.910000,101.590000 /) -XPIZA_LKT(78,5,1:6)=(/ 0.755116,0.767210,0.771554,0.908149,0.946971,0.971318 /) -XCGA_LKT(78,5,1:6)=(/ 0.885507,0.881827,0.877850,0.833063,0.810930,0.744900 /) -XEXT_COEFF_550_LKT(78,5)=90.829000 !rg=4.95192 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,6,1:6)=(/ 77.165000,78.158000,79.143000,80.749000,82.832000,88.440000 /) -XPIZA_LKT(78,6,1:6)=(/ 0.746315,0.764446,0.772308,0.903557,0.940787,0.968127 /) -XCGA_LKT(78,6,1:6)=(/ 0.886840,0.883247,0.878547,0.837170,0.816647,0.758153 /) -XEXT_COEFF_550_LKT(78,6)=79.116000 !rg=4.95192 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,7,1:6)=(/ 66.420000,67.175000,68.165000,69.261000,70.906000,75.523000 /) -XPIZA_LKT(78,7,1:6)=(/ 0.736637,0.760022,0.771666,0.898348,0.934286,0.964081 /) -XCGA_LKT(78,7,1:6)=(/ 0.888807,0.883697,0.878820,0.840317,0.823647,0.771907 /) -XEXT_COEFF_550_LKT(78,7)=67.883000 !rg=4.95192 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,8,1:6)=(/ 56.753000,57.354000,57.894000,59.013000,60.505000,64.110000 /) -XPIZA_LKT(78,8,1:6)=(/ 0.726188,0.753717,0.768391,0.895152,0.925636,0.958659 /) -XCGA_LKT(78,8,1:6)=(/ 0.890863,0.885197,0.880257,0.843503,0.826947,0.779427 /) -XEXT_COEFF_550_LKT(78,8)=57.954000 !rg=4.95192 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,9,1:6)=(/ 48.190000,48.495000,49.139000,49.941000,51.143000,53.820000 /) -XPIZA_LKT(78,9,1:6)=(/ 0.715078,0.745505,0.764046,0.892051,0.918332,0.952763 /) -XCGA_LKT(78,9,1:6)=(/ 0.893353,0.886417,0.881550,0.846403,0.832750,0.790843 /) -XEXT_COEFF_550_LKT(78,9)=49.137000 !rg=4.95192 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,10,1:6)=(/ 40.607000,40.958000,41.407000,41.818000,42.908000,45.259000 /) -XPIZA_LKT(78,10,1:6)=(/ 0.701871,0.735939,0.758961,0.888859,0.912103,0.944377 /) -XCGA_LKT(78,10,1:6)=(/ 0.895947,0.888683,0.883043,0.849147,0.838277,0.799533 /) -XEXT_COEFF_550_LKT(78,10)=41.378000 !rg=4.95192 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,11,1:6)=(/ 34.059000,34.328000,34.647000,35.123000,36.030000,37.695000 /) -XPIZA_LKT(78,11,1:6)=(/ 0.688564,0.724851,0.750252,0.885067,0.906074,0.936566 /) -XCGA_LKT(78,11,1:6)=(/ 0.898683,0.890890,0.885033,0.851777,0.842150,0.806457 /) -XEXT_COEFF_550_LKT(78,11)=34.619000 !rg=4.95192 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,12,1:6)=(/ 28.507000,28.662000,28.941000,29.232000,29.776000,31.075000 /) -XPIZA_LKT(78,12,1:6)=(/ 0.675373,0.712413,0.741283,0.880633,0.901490,0.929444 /) -XCGA_LKT(78,12,1:6)=(/ 0.901893,0.893277,0.887087,0.854280,0.848447,0.817763 /) -XEXT_COEFF_550_LKT(78,12)=28.918000 !rg=4.95192 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,13,1:6)=(/ 23.769000,23.906000,24.055000,24.320000,24.781000,25.686000 /) -XPIZA_LKT(78,13,1:6)=(/ 0.661779,0.699329,0.730205,0.875216,0.896743,0.922834 /) -XCGA_LKT(78,13,1:6)=(/ 0.905280,0.896253,0.889183,0.856933,0.852280,0.825190 /) -XEXT_COEFF_550_LKT(78,13)=24.103000 !rg=4.95192 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,14,1:6)=(/ 19.805000,19.930000,20.044000,20.198000,20.549000,21.253000 /) -XPIZA_LKT(78,14,1:6)=(/ 0.648442,0.686046,0.718203,0.868036,0.891566,0.915817 /) -XCGA_LKT(78,14,1:6)=(/ 0.908747,0.899490,0.891947,0.859107,0.855700,0.832910 /) -XEXT_COEFF_550_LKT(78,14)=20.042000 !rg=4.95192 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,15,1:6)=(/ 16.496000,16.567000,16.680000,16.798000,17.071000,17.538000 /) -XPIZA_LKT(78,15,1:6)=(/ 0.636151,0.672243,0.705614,0.859983,0.886343,0.909897 /) -XCGA_LKT(78,15,1:6)=(/ 0.912467,0.902413,0.894763,0.861067,0.859383,0.839713 /) -XEXT_COEFF_550_LKT(78,15)=16.684000 !rg=4.95192 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,16,1:6)=(/ 13.698000,13.764000,13.831000,13.960000,14.141000,14.529000 /) -XPIZA_LKT(78,16,1:6)=(/ 0.624181,0.658840,0.691756,0.850476,0.879953,0.904130 /) -XCGA_LKT(78,16,1:6)=(/ 0.916147,0.906047,0.897770,0.863763,0.861380,0.842913 /) -XEXT_COEFF_550_LKT(78,16)=13.835000 !rg=4.95192 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,17,1:6)=(/ 11.394000,11.444000,11.491000,11.583000,11.715000,12.009000 /) -XPIZA_LKT(78,17,1:6)=(/ 0.613369,0.645930,0.678258,0.839226,0.872733,0.898927 /) -XCGA_LKT(78,17,1:6)=(/ 0.919900,0.909640,0.900850,0.866460,0.864390,0.848807 /) -XEXT_COEFF_550_LKT(78,17)=11.491000 !rg=4.95192 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,18,1:6)=(/ 9.483300,9.511900,9.560000,9.608700,9.717500,9.921400 /) -XPIZA_LKT(78,18,1:6)=(/ 0.603795,0.633536,0.665238,0.826492,0.864823,0.893348 /) -XCGA_LKT(78,18,1:6)=(/ 0.923660,0.913297,0.904417,0.868320,0.867430,0.853813 /) -XEXT_COEFF_550_LKT(78,18)=9.558600 !rg=4.95192 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,19,1:6)=(/ 7.875300,7.901300,7.928900,7.987200,8.047300,8.212900 /) -XPIZA_LKT(78,19,1:6)=(/ 0.594829,0.622229,0.651798,0.812781,0.854880,0.886675 /) -XCGA_LKT(78,19,1:6)=(/ 0.927260,0.917087,0.907943,0.871170,0.869100,0.855733 /) -XEXT_COEFF_550_LKT(78,19)=7.930700 !rg=4.95192 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(78,20,1:6)=(/ 6.544600,6.564500,6.584300,6.620800,6.676200,6.790100 /) -XPIZA_LKT(78,20,1:6)=(/ 0.586978,0.611709,0.639375,0.797295,0.844031,0.880416 /) -XCGA_LKT(78,20,1:6)=(/ 0.930700,0.920823,0.911503,0.874010,0.872183,0.860250 /) -XEXT_COEFF_550_LKT(78,20)=6.584200 !rg=4.95192 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,1,1:6)=(/ 114.540000,116.760000,119.110000,119.380000,136.400000,118.620000 /) -XPIZA_LKT(79,1,1:6)=(/ 0.769857,0.775021,0.765133,0.920185,0.957914,0.974015 /) -XCGA_LKT(79,1,1:6)=(/ 0.882340,0.880670,0.879650,0.821100,0.818470,0.672673 /) -XEXT_COEFF_550_LKT(79,1)=118.920000 !rg=5.36469 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,2,1:6)=(/ 110.170000,111.930000,113.130000,115.820000,121.070000,122.730000 /) -XPIZA_LKT(79,2,1:6)=(/ 0.768919,0.770263,0.760765,0.921297,0.955013,0.974789 /) -XCGA_LKT(79,2,1:6)=(/ 0.882463,0.882653,0.881200,0.827697,0.804790,0.703710 /) -XEXT_COEFF_550_LKT(79,2)=112.810000 !rg=5.36469 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,3,1:6)=(/ 101.870000,103.510000,104.600000,106.860000,110.340000,115.990000 /) -XPIZA_LKT(79,3,1:6)=(/ 0.763729,0.769537,0.763322,0.915464,0.952594,0.973704 /) -XCGA_LKT(79,3,1:6)=(/ 0.883643,0.881710,0.880750,0.830953,0.810980,0.727013 /) -XEXT_COEFF_550_LKT(79,3)=104.300000 !rg=5.36469 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,4,1:6)=(/ 92.079000,93.302000,94.407000,96.447000,99.339000,105.090000 /) -XPIZA_LKT(79,4,1:6)=(/ 0.758153,0.768361,0.767471,0.908823,0.948541,0.971664 /) -XCGA_LKT(79,4,1:6)=(/ 0.884790,0.882193,0.879770,0.833810,0.814297,0.743317 /) -XEXT_COEFF_550_LKT(79,4)=94.055000 !rg=5.36469 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,5,1:6)=(/ 81.445000,82.356000,83.573000,84.973000,87.642000,92.835000 /) -XPIZA_LKT(79,5,1:6)=(/ 0.750342,0.766520,0.770514,0.903536,0.943652,0.969473 /) -XCGA_LKT(79,5,1:6)=(/ 0.886130,0.882680,0.878763,0.837173,0.817553,0.758053 /) -XEXT_COEFF_550_LKT(79,5)=83.310000 !rg=5.36469 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,6,1:6)=(/ 71.126000,71.901000,72.951000,74.026000,76.633000,81.308000 /) -XPIZA_LKT(79,6,1:6)=(/ 0.741792,0.763107,0.770463,0.898869,0.936367,0.964846 /) -XCGA_LKT(79,6,1:6)=(/ 0.887863,0.883383,0.879867,0.840467,0.821273,0.766873 /) -XEXT_COEFF_550_LKT(79,6)=72.955000 !rg=5.36469 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,7,1:6)=(/ 61.358000,61.932000,62.589000,63.800000,65.532000,69.244000 /) -XPIZA_LKT(79,7,1:6)=(/ 0.731955,0.757265,0.768931,0.895295,0.928797,0.960776 /) -XCGA_LKT(79,7,1:6)=(/ 0.890077,0.884663,0.880090,0.843197,0.827073,0.778550 /) -XEXT_COEFF_550_LKT(79,7)=62.371000 !rg=5.36469 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,8,1:6)=(/ 52.423000,52.748000,53.410000,54.161000,55.720000,59.028000 /) -XPIZA_LKT(79,8,1:6)=(/ 0.721027,0.749894,0.766140,0.892644,0.921661,0.954869 /) -XCGA_LKT(79,8,1:6)=(/ 0.892160,0.885810,0.881253,0.845870,0.831707,0.786623 /) -XEXT_COEFF_550_LKT(79,8)=53.529000 !rg=5.36469 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,9,1:6)=(/ 44.333000,44.756000,45.135000,45.813000,46.936000,49.129000 /) -XPIZA_LKT(79,9,1:6)=(/ 0.708298,0.741612,0.761349,0.890031,0.915197,0.949681 /) -XCGA_LKT(79,9,1:6)=(/ 0.894453,0.887823,0.882097,0.848787,0.837667,0.799063 /) -XEXT_COEFF_550_LKT(79,9)=45.040000 !rg=5.36469 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,10,1:6)=(/ 37.449000,37.691000,38.085000,38.530000,39.449000,41.284000 /) -XPIZA_LKT(79,10,1:6)=(/ 0.695642,0.730699,0.754451,0.887017,0.909114,0.941528 /) -XCGA_LKT(79,10,1:6)=(/ 0.897217,0.889780,0.884080,0.850917,0.841550,0.805077 /) -XEXT_COEFF_550_LKT(79,10)=38.158000 !rg=5.36469 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,11,1:6)=(/ 31.428000,31.657000,31.937000,32.334000,33.023000,34.512000 /) -XPIZA_LKT(79,11,1:6)=(/ 0.682183,0.719293,0.746280,0.882517,0.903302,0.933034 /) -XCGA_LKT(79,11,1:6)=(/ 0.900230,0.892210,0.886150,0.852693,0.845367,0.812813 /) -XEXT_COEFF_550_LKT(79,11)=31.826000 !rg=5.36469 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,12,1:6)=(/ 26.284000,26.441000,26.615000,26.912000,27.445000,28.466000 /) -XPIZA_LKT(79,12,1:6)=(/ 0.668710,0.706664,0.736058,0.878141,0.898826,0.926537 /) -XCGA_LKT(79,12,1:6)=(/ 0.903510,0.894737,0.887913,0.855783,0.850327,0.821963 /) -XEXT_COEFF_550_LKT(79,12)=26.650000 !rg=5.36469 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,13,1:6)=(/ 21.917000,22.058000,22.196000,22.354000,22.808000,23.605000 /) -XPIZA_LKT(79,13,1:6)=(/ 0.655245,0.693374,0.724799,0.871757,0.894100,0.919331 /) -XCGA_LKT(79,13,1:6)=(/ 0.906897,0.897790,0.890580,0.857870,0.854460,0.829857 /) -XEXT_COEFF_550_LKT(79,13)=22.181000 !rg=5.36469 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,14,1:6)=(/ 18.283000,18.357000,18.497000,18.639000,18.922000,19.460000 /) -XPIZA_LKT(79,14,1:6)=(/ 0.642600,0.679406,0.712661,0.864657,0.888900,0.912763 /) -XCGA_LKT(79,14,1:6)=(/ 0.910547,0.900810,0.893483,0.860357,0.858023,0.837000 /) -XEXT_COEFF_550_LKT(79,14)=18.478000 !rg=5.36469 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,15,1:6)=(/ 15.213000,15.298000,15.358000,15.513000,15.740000,16.190000 /) -XPIZA_LKT(79,15,1:6)=(/ 0.630240,0.666313,0.699297,0.856046,0.883000,0.906384 /) -XCGA_LKT(79,15,1:6)=(/ 0.914183,0.904177,0.895853,0.862773,0.860253,0.840743 /) -XEXT_COEFF_550_LKT(79,15)=15.377000 !rg=5.36469 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,16,1:6)=(/ 12.637000,12.693000,12.760000,12.852000,13.027000,13.367000 /) -XPIZA_LKT(79,16,1:6)=(/ 0.618863,0.652737,0.685924,0.845320,0.876850,0.901445 /) -XCGA_LKT(79,16,1:6)=(/ 0.917947,0.907717,0.899213,0.864360,0.862640,0.845780 /) -XEXT_COEFF_550_LKT(79,16)=12.747000 !rg=5.36469 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,17,1:6)=(/ 10.515000,10.551000,10.606000,10.663000,10.799000,11.038000 /) -XPIZA_LKT(79,17,1:6)=(/ 0.608676,0.639997,0.672430,0.833671,0.869367,0.895883 /) -XCGA_LKT(79,17,1:6)=(/ 0.921700,0.911310,0.902510,0.867170,0.866077,0.851377 /) -XEXT_COEFF_550_LKT(79,17)=10.611000 !rg=5.36469 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,18,1:6)=(/ 8.747000,8.780500,8.808900,8.876600,8.959300,9.144200 /) -XPIZA_LKT(79,18,1:6)=(/ 0.599327,0.628436,0.658883,0.820706,0.860401,0.889887 /) -XCGA_LKT(79,18,1:6)=(/ 0.925333,0.915030,0.905903,0.869937,0.868200,0.854430 /) -XEXT_COEFF_550_LKT(79,18)=8.812100 !rg=5.36469 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,19,1:6)=(/ 7.265800,7.288000,7.315800,7.358400,7.427400,7.562100 /) -XPIZA_LKT(79,19,1:6)=(/ 0.590948,0.617144,0.646190,0.805904,0.850588,0.883885 /) -XCGA_LKT(79,19,1:6)=(/ 0.928870,0.918830,0.909583,0.872173,0.870403,0.857857 /) -XEXT_COEFF_550_LKT(79,19)=7.309600 !rg=5.36469 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(79,20,1:6)=(/ 6.039400,6.055200,6.076100,6.100600,6.160300,6.257900 /) -XPIZA_LKT(79,20,1:6)=(/ 0.583578,0.607000,0.633991,0.790092,0.839071,0.876945 /) -XCGA_LKT(79,20,1:6)=(/ 0.932270,0.922550,0.913303,0.875013,0.873377,0.862033 /) -XEXT_COEFF_550_LKT(79,20)=6.078200 !rg=5.36469 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,1,1:6)=(/ 105.630000,106.560000,108.740000,112.850000,112.340000,126.820000 /) -XPIZA_LKT(80,1,1:6)=(/ 0.766318,0.776465,0.745792,0.919315,0.950307,0.975977 /) -XCGA_LKT(80,1,1:6)=(/ 0.882440,0.880480,0.887053,0.834320,0.799720,0.742607 /) -XEXT_COEFF_550_LKT(80,1)=108.540000 !rg=5.81187 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,2,1:6)=(/ 101.270000,102.630000,104.350000,105.830000,110.710000,121.450000 /) -XPIZA_LKT(80,2,1:6)=(/ 0.763553,0.774276,0.750736,0.915189,0.952265,0.974198 /) -XCGA_LKT(80,2,1:6)=(/ 0.883563,0.881140,0.885483,0.830853,0.807447,0.741927 /) -XEXT_COEFF_550_LKT(80,2)=104.540000 !rg=5.81187 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,3,1:6)=(/ 94.087000,94.866000,96.522000,98.435000,102.550000,108.960000 /) -XPIZA_LKT(80,3,1:6)=(/ 0.759977,0.771937,0.759582,0.909995,0.945801,0.971958 /) -XCGA_LKT(80,3,1:6)=(/ 0.884473,0.881307,0.882640,0.835560,0.807283,0.742480 /) -XEXT_COEFF_550_LKT(80,3)=96.434000 !rg=5.81187 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,4,1:6)=(/ 84.948000,85.704000,87.159000,88.687000,92.391000,97.394000 /) -XPIZA_LKT(80,4,1:6)=(/ 0.753475,0.769398,0.765359,0.903509,0.941832,0.968887 /) -XCGA_LKT(80,4,1:6)=(/ 0.885677,0.881880,0.881153,0.838287,0.811217,0.749237 /) -XEXT_COEFF_550_LKT(80,4)=86.956000 !rg=5.81187 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,5,1:6)=(/ 75.184000,76.048000,76.816000,78.439000,80.548000,85.082000 /) -XPIZA_LKT(80,5,1:6)=(/ 0.745775,0.765712,0.768409,0.898475,0.938860,0.966784 /) -XCGA_LKT(80,5,1:6)=(/ 0.887370,0.882597,0.880630,0.840067,0.822183,0.767667 /) -XEXT_COEFF_550_LKT(80,5)=76.656000 !rg=5.81187 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,6,1:6)=(/ 65.640000,66.219000,66.996000,67.801000,70.697000,74.725000 /) -XPIZA_LKT(80,6,1:6)=(/ 0.736362,0.759879,0.769418,0.895862,0.932050,0.961956 /) -XCGA_LKT(80,6,1:6)=(/ 0.889157,0.884127,0.880630,0.843713,0.822793,0.768297 /) -XEXT_COEFF_550_LKT(80,6)=66.933000 !rg=5.81187 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,7,1:6)=(/ 56.442000,56.979000,57.757000,58.661000,60.698000,63.836000 /) -XPIZA_LKT(80,7,1:6)=(/ 0.725750,0.754115,0.767245,0.892398,0.923650,0.956961 /) -XCGA_LKT(80,7,1:6)=(/ 0.890963,0.885190,0.881467,0.845453,0.827317,0.778633 /) -XEXT_COEFF_550_LKT(80,7)=57.602000 !rg=5.81187 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,8,1:6)=(/ 48.294000,48.710000,49.093000,49.720000,51.218000,53.885000 /) -XPIZA_LKT(80,8,1:6)=(/ 0.714594,0.746195,0.763723,0.890190,0.918131,0.952787 /) -XCGA_LKT(80,8,1:6)=(/ 0.893577,0.886977,0.881917,0.848323,0.835093,0.791427 /) -XEXT_COEFF_550_LKT(80,8)=49.218000 !rg=5.81187 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,9,1:6)=(/ 40.944000,41.206000,41.594000,42.251000,43.160000,45.071000 /) -XPIZA_LKT(80,9,1:6)=(/ 0.702251,0.736723,0.758473,0.887897,0.911033,0.945119 /) -XCGA_LKT(80,9,1:6)=(/ 0.896073,0.888313,0.883537,0.849953,0.840930,0.804503 /) -XEXT_COEFF_550_LKT(80,9)=41.634000 !rg=5.81187 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,10,1:6)=(/ 34.535000,34.811000,35.032000,35.469000,36.360000,37.864000 /) -XPIZA_LKT(80,10,1:6)=(/ 0.688970,0.725938,0.750593,0.884469,0.905147,0.937301 /) -XCGA_LKT(80,10,1:6)=(/ 0.898700,0.891013,0.885213,0.852753,0.844403,0.811907 /) -XEXT_COEFF_550_LKT(80,10)=35.028000 !rg=5.81187 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,11,1:6)=(/ 29.008000,29.149000,29.417000,29.817000,30.317000,31.478000 /) -XPIZA_LKT(80,11,1:6)=(/ 0.675784,0.713238,0.741784,0.880258,0.900860,0.929911 /) -XCGA_LKT(80,11,1:6)=(/ 0.901887,0.893127,0.887223,0.854380,0.848930,0.818927 /) -XEXT_COEFF_550_LKT(80,11)=29.377000 !rg=5.81187 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,12,1:6)=(/ 24.239000,24.398000,24.554000,24.765000,25.252000,26.179000 /) -XPIZA_LKT(80,12,1:6)=(/ 0.662107,0.700667,0.731305,0.875204,0.895923,0.922291 /) -XCGA_LKT(80,12,1:6)=(/ 0.905123,0.896300,0.889347,0.857063,0.852473,0.826707 /) -XEXT_COEFF_550_LKT(80,12)=24.546000 !rg=5.81187 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,13,1:6)=(/ 20.224000,20.311000,20.480000,20.658000,20.992000,21.604000 /) -XPIZA_LKT(80,13,1:6)=(/ 0.649196,0.686779,0.719499,0.868800,0.891141,0.915601 /) -XCGA_LKT(80,13,1:6)=(/ 0.908633,0.899103,0.892090,0.859190,0.856377,0.834220 /) -XEXT_COEFF_550_LKT(80,13)=20.471000 !rg=5.81187 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,14,1:6)=(/ 16.851000,16.942000,17.023000,17.203000,17.424000,17.929000 /) -XPIZA_LKT(80,14,1:6)=(/ 0.636409,0.673465,0.706291,0.861434,0.886226,0.909650 /) -XCGA_LKT(80,14,1:6)=(/ 0.912240,0.902377,0.894577,0.861493,0.858897,0.838650 /) -XEXT_COEFF_550_LKT(80,14)=17.014000 !rg=5.81187 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,15,1:6)=(/ 14.034000,14.099000,14.183000,14.247000,14.460000,14.825000 /) -XPIZA_LKT(80,15,1:6)=(/ 0.624723,0.659830,0.693557,0.851516,0.880541,0.904137 /) -XCGA_LKT(80,15,1:6)=(/ 0.915927,0.905793,0.897533,0.863663,0.862047,0.843993 /) -XEXT_COEFF_550_LKT(80,15)=14.161000 !rg=5.81187 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,16,1:6)=(/ 11.662000,11.706000,11.764000,11.842000,11.989000,12.264000 /) -XPIZA_LKT(80,16,1:6)=(/ 0.613856,0.646648,0.679741,0.840277,0.873547,0.898984 /) -XCGA_LKT(80,16,1:6)=(/ 0.919777,0.909380,0.900743,0.865770,0.864670,0.849147 /) -XEXT_COEFF_550_LKT(80,16)=11.762000 !rg=5.81187 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,17,1:6)=(/ 9.699900,9.736900,9.774200,9.853500,9.914000,10.119000 /) -XPIZA_LKT(80,17,1:6)=(/ 0.603936,0.634405,0.666078,0.828331,0.864914,0.893131 /) -XCGA_LKT(80,17,1:6)=(/ 0.923433,0.913113,0.904067,0.868653,0.866283,0.852900 /) -XEXT_COEFF_550_LKT(80,17)=9.773200 !rg=5.81187 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,18,1:6)=(/ 8.070000,8.097300,8.132900,8.161000,8.251800,8.394500 /) -XPIZA_LKT(80,18,1:6)=(/ 0.595133,0.622937,0.653408,0.814106,0.856192,0.887431 /) -XCGA_LKT(80,18,1:6)=(/ 0.927017,0.916797,0.907587,0.870930,0.869213,0.856637 /) -XEXT_COEFF_550_LKT(80,18)=8.125500 !rg=5.81187 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,19,1:6)=(/ 6.704600,6.724000,6.746300,6.779700,6.846000,6.963800 /) -XPIZA_LKT(80,19,1:6)=(/ 0.587301,0.612232,0.640431,0.798981,0.845529,0.880901 /) -XCGA_LKT(80,19,1:6)=(/ 0.930483,0.920560,0.911307,0.873557,0.871813,0.859893 /) -XEXT_COEFF_550_LKT(80,19)=6.746800 !rg=5.81187 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(80,20,1:6)=(/ 5.572300,5.587500,5.603800,5.631800,5.664000,5.743900 /) -XPIZA_LKT(80,20,1:6)=(/ 0.580339,0.602616,0.628518,0.782986,0.832845,0.873046 /) -XCGA_LKT(80,20,1:6)=(/ 0.933757,0.924280,0.915040,0.876503,0.873933,0.862717 /) -XEXT_COEFF_550_LKT(80,20)=5.601900 !rg=5.81187 sigma=2.95 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET8',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET8 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET9() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET9',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(81,1,1:6)=(/ 98.528000,99.670000,100.560000,101.780000,98.949000,132.390000 /) -XPIZA_LKT(81,1,1:6)=(/ 0.764207,0.777747,0.730800,0.911237,0.947466,0.975518 /) -XCGA_LKT(81,1,1:6)=(/ 0.884603,0.880620,0.892387,0.830657,0.794577,0.774727 /) -XEXT_COEFF_550_LKT(81,1)=99.359000 !rg=6.29632 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,2,1:6)=(/ 93.675000,94.724000,95.962000,97.386000,101.660000,115.450000 /) -XPIZA_LKT(81,2,1:6)=(/ 0.760202,0.774840,0.750235,0.908731,0.948202,0.973100 /) -XCGA_LKT(81,2,1:6)=(/ 0.884617,0.881323,0.886860,0.835417,0.809150,0.764460 /) -XEXT_COEFF_550_LKT(81,2)=95.589000 !rg=6.29632 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,3,1:6)=(/ 86.445000,87.830000,88.548000,90.763000,93.996000,102.030000 /) -XPIZA_LKT(81,3,1:6)=(/ 0.754182,0.771970,0.760822,0.902827,0.944738,0.968311 /) -XCGA_LKT(81,3,1:6)=(/ 0.885210,0.882100,0.882970,0.837000,0.815820,0.759407 /) -XEXT_COEFF_550_LKT(81,3)=88.606000 !rg=6.29632 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,4,1:6)=(/ 78.173000,79.179000,79.944000,81.761000,84.546000,90.360000 /) -XPIZA_LKT(81,4,1:6)=(/ 0.748076,0.767979,0.766451,0.897426,0.939990,0.965383 /) -XCGA_LKT(81,4,1:6)=(/ 0.886507,0.882970,0.881397,0.840130,0.819470,0.763560 /) -XEXT_COEFF_550_LKT(81,4)=79.795000 !rg=6.29632 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,5,1:6)=(/ 69.276000,69.865000,70.895000,72.075000,74.746000,78.768000 /) -XPIZA_LKT(81,5,1:6)=(/ 0.740220,0.763735,0.767556,0.894608,0.932588,0.962548 /) -XCGA_LKT(81,5,1:6)=(/ 0.888303,0.883277,0.881307,0.844133,0.820893,0.767830 /) -XEXT_COEFF_550_LKT(81,5)=70.867000 !rg=6.29632 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,6,1:6)=(/ 60.392000,61.068000,61.731000,62.904000,64.980000,68.577000 /) -XPIZA_LKT(81,6,1:6)=(/ 0.730280,0.758181,0.766845,0.892321,0.926847,0.958602 /) -XCGA_LKT(81,6,1:6)=(/ 0.889927,0.884393,0.881823,0.846633,0.826763,0.779843 /) -XEXT_COEFF_550_LKT(81,6)=61.779000 !rg=6.29632 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,7,1:6)=(/ 52.123000,52.563000,53.067000,54.022000,55.409000,58.586000 /) -XPIZA_LKT(81,7,1:6)=(/ 0.719914,0.750558,0.765504,0.890067,0.920154,0.953873 /) -XCGA_LKT(81,7,1:6)=(/ 0.892400,0.886230,0.881997,0.847563,0.832873,0.788400 /) -XEXT_COEFF_550_LKT(81,7)=52.867000 !rg=6.29632 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,8,1:6)=(/ 44.488000,44.960000,45.320000,45.806000,47.161000,49.380000 /) -XPIZA_LKT(81,8,1:6)=(/ 0.708028,0.742007,0.761165,0.887975,0.913885,0.948751 /) -XCGA_LKT(81,8,1:6)=(/ 0.894537,0.888200,0.883303,0.850340,0.838683,0.799913 /) -XEXT_COEFF_550_LKT(81,8)=45.335000 !rg=6.29632 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,9,1:6)=(/ 37.713000,37.974000,38.327000,38.840000,39.897000,41.719000 /) -XPIZA_LKT(81,9,1:6)=(/ 0.695481,0.731460,0.754993,0.885946,0.906843,0.939505 /) -XCGA_LKT(81,9,1:6)=(/ 0.897243,0.889670,0.884013,0.852383,0.842050,0.803710 /) -XEXT_COEFF_550_LKT(81,9)=38.382000 !rg=6.29632 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,10,1:6)=(/ 31.885000,32.031000,32.344000,32.665000,33.322000,34.623000 /) -XPIZA_LKT(81,10,1:6)=(/ 0.682626,0.719649,0.747088,0.882930,0.902779,0.933419 /) -XCGA_LKT(81,10,1:6)=(/ 0.900400,0.891947,0.886350,0.854017,0.847897,0.817390 /) -XEXT_COEFF_550_LKT(81,10)=32.358000 !rg=6.29632 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,11,1:6)=(/ 26.736000,26.895000,27.075000,27.424000,27.854000,28.783000 /) -XPIZA_LKT(81,11,1:6)=(/ 0.669060,0.707635,0.736931,0.878439,0.898677,0.927004 /) -XCGA_LKT(81,11,1:6)=(/ 0.903367,0.894640,0.887813,0.856267,0.852343,0.825140 /) -XEXT_COEFF_550_LKT(81,11)=27.077000 !rg=6.29632 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,12,1:6)=(/ 22.368000,22.468000,22.653000,22.826000,23.226000,23.948000 /) -XPIZA_LKT(81,12,1:6)=(/ 0.655846,0.693985,0.726179,0.872416,0.893541,0.919035 /) -XCGA_LKT(81,12,1:6)=(/ 0.906827,0.897487,0.890783,0.858173,0.855233,0.831403 /) -XEXT_COEFF_550_LKT(81,12)=22.620000 !rg=6.29632 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,13,1:6)=(/ 18.642000,18.744000,18.839000,19.044000,19.289000,19.852000 /) -XPIZA_LKT(81,13,1:6)=(/ 0.642717,0.680773,0.713507,0.865801,0.888528,0.912658 /) -XCGA_LKT(81,13,1:6)=(/ 0.910340,0.900600,0.893067,0.860477,0.857453,0.836447 /) -XEXT_COEFF_550_LKT(81,13)=18.829000 !rg=6.29632 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,14,1:6)=(/ 15.547000,15.611000,15.712000,15.826000,16.042000,16.472000 /) -XPIZA_LKT(81,14,1:6)=(/ 0.630723,0.666824,0.700776,0.856830,0.883679,0.907156 /) -XCGA_LKT(81,14,1:6)=(/ 0.913983,0.903873,0.895960,0.862227,0.861357,0.842570 /) -XEXT_COEFF_550_LKT(81,14)=15.701000 !rg=6.29632 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,15,1:6)=(/ 12.949000,12.994000,13.070000,13.158000,13.337000,13.658000 /) -XPIZA_LKT(81,15,1:6)=(/ 0.619428,0.653553,0.687140,0.846969,0.877411,0.901203 /) -XCGA_LKT(81,15,1:6)=(/ 0.917710,0.907383,0.898973,0.864690,0.863343,0.846680 /) -XEXT_COEFF_550_LKT(81,15)=13.075000 !rg=6.29632 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,16,1:6)=(/ 10.757000,10.800000,10.848000,10.926000,11.016000,11.246000 /) -XPIZA_LKT(81,16,1:6)=(/ 0.608900,0.640960,0.673426,0.835357,0.870025,0.896406 /) -XCGA_LKT(81,16,1:6)=(/ 0.921507,0.911087,0.902220,0.867393,0.866080,0.852380 /) -XEXT_COEFF_550_LKT(81,16)=10.836000 !rg=6.29632 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,17,1:6)=(/ 8.949700,8.978900,9.019900,9.070300,9.165200,9.344200 /) -XPIZA_LKT(81,17,1:6)=(/ 0.599554,0.628750,0.660150,0.822086,0.861518,0.890456 /) -XCGA_LKT(81,17,1:6)=(/ 0.925140,0.914783,0.905780,0.869697,0.868750,0.855890 /) -XEXT_COEFF_550_LKT(81,17)=9.014900 !rg=6.29632 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,18,1:6)=(/ 7.446500,7.466600,7.497100,7.536200,7.606800,7.742800 /) -XPIZA_LKT(81,18,1:6)=(/ 0.591216,0.617627,0.647230,0.807761,0.851619,0.884240 /) -XCGA_LKT(81,18,1:6)=(/ 0.928677,0.918547,0.909273,0.872163,0.870313,0.858383 /) -XEXT_COEFF_550_LKT(81,18)=7.501100 !rg=6.29632 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,19,1:6)=(/ 6.186200,6.204600,6.223500,6.255100,6.292300,6.388500 /) -XPIZA_LKT(81,19,1:6)=(/ 0.583754,0.607635,0.634828,0.792212,0.840185,0.877675 /) -XCGA_LKT(81,19,1:6)=(/ 0.932080,0.922300,0.912980,0.874937,0.873123,0.862277 /) -XEXT_COEFF_550_LKT(81,19)=6.220200 !rg=6.29632 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(81,20,1:6)=(/ 5.141900,5.154100,5.171000,5.188800,5.226300,5.302200 /) -XPIZA_LKT(81,20,1:6)=(/ 0.577256,0.598343,0.623415,0.775396,0.827446,0.869504 /) -XCGA_LKT(81,20,1:6)=(/ 0.935263,0.925903,0.916803,0.877827,0.875827,0.864947 /) -XEXT_COEFF_550_LKT(81,20)=5.168000 !rg=6.29632 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,1,1:6)=(/ 90.449000,91.209000,92.448000,93.310000,98.930000,121.320000 /) -XPIZA_LKT(82,1,1:6)=(/ 0.758046,0.776991,0.745618,0.907750,0.948667,0.975361 /) -XCGA_LKT(82,1,1:6)=(/ 0.886483,0.879573,0.887877,0.838320,0.818307,0.798257 /) -XEXT_COEFF_550_LKT(82,1)=91.446000 !rg=6.82116 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,2,1:6)=(/ 86.027000,86.962000,88.493000,90.260000,93.283000,106.470000 /) -XPIZA_LKT(82,2,1:6)=(/ 0.754138,0.775134,0.752191,0.902273,0.944008,0.968843 /) -XCGA_LKT(82,2,1:6)=(/ 0.885360,0.880197,0.886950,0.840813,0.814480,0.777823 /) -XEXT_COEFF_550_LKT(82,2)=88.159000 !rg=6.82116 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,3,1:6)=(/ 79.950000,80.533000,81.819000,83.339000,85.981000,92.024000 /) -XPIZA_LKT(82,3,1:6)=(/ 0.750181,0.772071,0.760812,0.896775,0.941541,0.968313 /) -XCGA_LKT(82,3,1:6)=(/ 0.886737,0.881703,0.883723,0.841367,0.819220,0.774963 /) -XEXT_COEFF_550_LKT(82,3)=81.684000 !rg=6.82116 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,4,1:6)=(/ 72.219000,72.774000,73.776000,75.213000,77.341000,81.641000 /) -XPIZA_LKT(82,4,1:6)=(/ 0.743332,0.767078,0.765065,0.892533,0.936397,0.965441 /) -XCGA_LKT(82,4,1:6)=(/ 0.888133,0.882490,0.882683,0.843663,0.822873,0.777520 /) -XEXT_COEFF_550_LKT(82,4)=73.737000 !rg=6.82116 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,5,1:6)=(/ 63.816000,64.588000,65.088000,66.301000,68.368000,72.597000 /) -XPIZA_LKT(82,5,1:6)=(/ 0.734093,0.761248,0.767997,0.890498,0.929389,0.959702 /) -XCGA_LKT(82,5,1:6)=(/ 0.889303,0.884253,0.881503,0.845290,0.827353,0.780067 /) -XEXT_COEFF_550_LKT(82,5)=65.088000 !rg=6.82116 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,6,1:6)=(/ 55.819000,56.255000,56.867000,57.757000,59.154000,62.086000 /) -XPIZA_LKT(82,6,1:6)=(/ 0.725016,0.754640,0.766756,0.889290,0.922997,0.955990 /) -XCGA_LKT(82,6,1:6)=(/ 0.891640,0.885467,0.881907,0.847863,0.832853,0.790857 /) -XEXT_COEFF_550_LKT(82,6)=56.892000 !rg=6.82116 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,7,1:6)=(/ 48.092000,48.334000,48.932000,49.831000,50.840000,53.166000 /) -XPIZA_LKT(82,7,1:6)=(/ 0.713740,0.746097,0.763270,0.887958,0.916116,0.951752 /) -XCGA_LKT(82,7,1:6)=(/ 0.893843,0.886440,0.883017,0.849113,0.837263,0.796900 /) -XEXT_COEFF_550_LKT(82,7)=48.795000 !rg=6.82116 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,8,1:6)=(/ 41.116000,41.326000,41.793000,42.338000,43.184000,44.990000 /) -XPIZA_LKT(82,8,1:6)=(/ 0.702062,0.736553,0.758238,0.886748,0.909598,0.944640 /) -XCGA_LKT(82,8,1:6)=(/ 0.896200,0.888777,0.884430,0.851977,0.842470,0.807033 /) -XEXT_COEFF_550_LKT(82,8)=41.738000 !rg=6.82116 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,9,1:6)=(/ 34.764000,35.045000,35.291000,35.672000,36.500000,38.188000 /) -XPIZA_LKT(82,9,1:6)=(/ 0.688438,0.726168,0.751243,0.883790,0.903971,0.936527 /) -XCGA_LKT(82,9,1:6)=(/ 0.898700,0.890913,0.885210,0.853150,0.845357,0.811450 /) -XEXT_COEFF_550_LKT(82,9)=35.264000 !rg=6.82116 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,10,1:6)=(/ 29.363000,29.616000,29.745000,30.167000,30.774000,31.934000 /) -XPIZA_LKT(82,10,1:6)=(/ 0.675516,0.714676,0.742056,0.880401,0.899423,0.928995 /) -XCGA_LKT(82,10,1:6)=(/ 0.901780,0.893437,0.887060,0.855510,0.849750,0.818460 /) -XEXT_COEFF_550_LKT(82,10)=29.823000 !rg=6.82116 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,11,1:6)=(/ 24.673000,24.786000,24.965000,25.219000,25.706000,26.581000 /) -XPIZA_LKT(82,11,1:6)=(/ 0.662725,0.701183,0.732225,0.875648,0.894954,0.922125 /) -XCGA_LKT(82,11,1:6)=(/ 0.905083,0.895893,0.889280,0.857037,0.853103,0.828040 /) -XEXT_COEFF_550_LKT(82,11)=24.972000 !rg=6.82116 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,12,1:6)=(/ 20.617000,20.732000,20.846000,21.087000,21.392000,22.068000 /) -XPIZA_LKT(82,12,1:6)=(/ 0.649363,0.687851,0.720202,0.869904,0.891137,0.915256 /) -XCGA_LKT(82,12,1:6)=(/ 0.908423,0.898990,0.891697,0.859457,0.856427,0.833227 /) -XEXT_COEFF_550_LKT(82,12)=20.854000 !rg=6.82116 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,13,1:6)=(/ 17.201000,17.281000,17.388000,17.512000,17.788000,18.286000 /) -XPIZA_LKT(82,13,1:6)=(/ 0.636762,0.674126,0.707967,0.861880,0.885944,0.909764 /) -XCGA_LKT(82,13,1:6)=(/ 0.912120,0.902110,0.894497,0.861303,0.859927,0.840727 /) -XEXT_COEFF_550_LKT(82,13)=17.376000 !rg=6.82116 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,14,1:6)=(/ 14.341000,14.402000,14.468000,14.594000,14.786000,15.164000 /) -XPIZA_LKT(82,14,1:6)=(/ 0.625075,0.660596,0.694330,0.852954,0.880914,0.904265 /) -XCGA_LKT(82,14,1:6)=(/ 0.915773,0.905513,0.897210,0.863743,0.862473,0.844653 /) -XEXT_COEFF_550_LKT(82,14)=14.487000 !rg=6.82116 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,15,1:6)=(/ 11.944000,11.994000,12.039000,12.130000,12.280000,12.581000 /) -XPIZA_LKT(82,15,1:6)=(/ 0.614176,0.647761,0.680806,0.841994,0.873731,0.898510 /) -XCGA_LKT(82,15,1:6)=(/ 0.919497,0.909073,0.900420,0.865820,0.864003,0.849070 /) -XEXT_COEFF_550_LKT(82,15)=12.036000 !rg=6.82116 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,16,1:6)=(/ 9.925000,9.957400,10.008000,10.066000,10.185000,10.404000 /) -XPIZA_LKT(82,16,1:6)=(/ 0.604190,0.634920,0.667493,0.829571,0.866182,0.893360 /) -XCGA_LKT(82,16,1:6)=(/ 0.923260,0.912830,0.903853,0.868520,0.866567,0.853080 /) -XEXT_COEFF_550_LKT(82,16)=9.995700 !rg=6.82116 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,17,1:6)=(/ 8.256800,8.281600,8.314300,8.359200,8.441000,8.607400 /) -XPIZA_LKT(82,17,1:6)=(/ 0.595299,0.623370,0.653955,0.816085,0.857427,0.888102 /) -XCGA_LKT(82,17,1:6)=(/ 0.926823,0.916527,0.907323,0.871133,0.869757,0.857007 /) -XEXT_COEFF_550_LKT(82,17)=8.316300 !rg=6.82116 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,18,1:6)=(/ 6.870700,6.891900,6.910400,6.948700,7.007600,7.130000 /) -XPIZA_LKT(82,18,1:6)=(/ 0.587465,0.612963,0.641220,0.800979,0.846555,0.881037 /) -XCGA_LKT(82,18,1:6)=(/ 0.930303,0.920277,0.910967,0.873323,0.871593,0.859700 /) -XEXT_COEFF_550_LKT(82,18)=6.910700 !rg=6.82116 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,19,1:6)=(/ 5.708300,5.722200,5.743100,5.765300,5.814400,5.907500 /) -XPIZA_LKT(82,19,1:6)=(/ 0.580479,0.603006,0.629537,0.784816,0.834867,0.874225 /) -XCGA_LKT(82,19,1:6)=(/ 0.933610,0.923970,0.914753,0.876370,0.873967,0.863287 /) -XEXT_COEFF_550_LKT(82,19)=5.736900 !rg=6.82116 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(82,20,1:6)=(/ 0.000000,4.755000,4.768700,4.788300,4.821900,4.889100 /) -XPIZA_LKT(82,20,1:6)=(/ 0.900,0.594268,0.618308,0.768095,0.821452,0.865808 /) -XCGA_LKT(82,20,1:6)=(/ 0.900,0.927553,0.918447,0.879327,0.876680,0.865860 /) -XEXT_COEFF_550_LKT(82,20)=4.768600 !rg=6.82116 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,1,1:6)=(/ 82.572000,83.550000,85.468000,86.000000,90.604000,98.295000 /) -XPIZA_LKT(83,1,1:6)=(/ 0.751040,0.776566,0.759142,0.898377,0.945383,0.971116 /) -XCGA_LKT(83,1,1:6)=(/ 0.885427,0.879603,0.885200,0.840620,0.828737,0.812767 /) -XEXT_COEFF_550_LKT(83,1)=83.806000 !rg=7.38975 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,2,1:6)=(/ 79.770000,80.556000,81.402000,83.085000,84.996000,90.864000 /) -XPIZA_LKT(83,2,1:6)=(/ 0.750563,0.774234,0.761586,0.894232,0.941109,0.967763 /) -XCGA_LKT(83,2,1:6)=(/ 0.887100,0.881953,0.884430,0.842873,0.821383,0.792993 /) -XEXT_COEFF_550_LKT(83,2)=81.524000 !rg=7.38975 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,3,1:6)=(/ 73.402000,74.226000,75.056000,76.084000,78.627000,83.574000 /) -XPIZA_LKT(83,3,1:6)=(/ 0.743567,0.770111,0.765590,0.890611,0.936973,0.966346 /) -XCGA_LKT(83,3,1:6)=(/ 0.887337,0.882293,0.882450,0.846033,0.824003,0.790710 /) -XEXT_COEFF_550_LKT(83,3)=74.999000 !rg=7.38975 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,4,1:6)=(/ 66.351000,67.060000,67.826000,68.723000,70.779000,74.633000 /) -XPIZA_LKT(83,4,1:6)=(/ 0.736814,0.765021,0.767828,0.888921,0.932302,0.963443 /) -XCGA_LKT(83,4,1:6)=(/ 0.888687,0.883323,0.881730,0.847190,0.828450,0.790147 /) -XEXT_COEFF_550_LKT(83,4)=67.649000 !rg=7.38975 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,5,1:6)=(/ 58.965000,59.327000,60.179000,61.165000,62.698000,65.768000 /) -XPIZA_LKT(83,5,1:6)=(/ 0.728755,0.758227,0.766764,0.887962,0.924886,0.959246 /) -XCGA_LKT(83,5,1:6)=(/ 0.890890,0.884497,0.882523,0.848007,0.831120,0.789867 /) -XEXT_COEFF_550_LKT(83,5)=60.055000 !rg=7.38975 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,6,1:6)=(/ 51.351000,51.892000,52.430000,53.172000,54.137000,56.847000 /) -XPIZA_LKT(83,6,1:6)=(/ 0.718318,0.750829,0.765479,0.887853,0.918331,0.954344 /) -XCGA_LKT(83,6,1:6)=(/ 0.892420,0.886540,0.882927,0.849633,0.837190,0.796080 /) -XEXT_COEFF_550_LKT(83,6)=52.363000 !rg=7.38975 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,7,1:6)=(/ 44.258000,44.604000,45.000000,45.685000,46.552000,48.555000 /) -XPIZA_LKT(83,7,1:6)=(/ 0.706836,0.741973,0.761056,0.886738,0.912722,0.949016 /) -XCGA_LKT(83,7,1:6)=(/ 0.894867,0.887880,0.882847,0.851397,0.842300,0.805013 /) -XEXT_COEFF_550_LKT(83,7)=45.004000 !rg=7.38975 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,8,1:6)=(/ 37.819000,38.171000,38.412000,38.974000,39.700000,41.343000 /) -XPIZA_LKT(83,8,1:6)=(/ 0.694519,0.732198,0.754602,0.885365,0.906102,0.940971 /) -XCGA_LKT(83,8,1:6)=(/ 0.897500,0.890047,0.884853,0.852727,0.844803,0.809487 /) -XEXT_COEFF_550_LKT(83,8)=38.359000 !rg=7.38975 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,9,1:6)=(/ 32.095000,32.264000,32.579000,32.999000,33.625000,34.902000 /) -XPIZA_LKT(83,9,1:6)=(/ 0.681973,0.720324,0.747131,0.882478,0.900635,0.933298 /) -XCGA_LKT(83,9,1:6)=(/ 0.900417,0.891970,0.886433,0.854453,0.848260,0.816977 /) -XEXT_COEFF_550_LKT(83,9)=32.599000 !rg=7.38975 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,10,1:6)=(/ 27.094000,27.245000,27.509000,27.695000,28.192000,29.306000 /) -XPIZA_LKT(83,10,1:6)=(/ 0.668965,0.708015,0.738313,0.878264,0.897199,0.925652 /) -XCGA_LKT(83,10,1:6)=(/ 0.903413,0.894510,0.888410,0.856453,0.852500,0.824037 /) -XEXT_COEFF_550_LKT(83,10)=27.462000 !rg=7.38975 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,11,1:6)=(/ 22.735000,22.865000,23.008000,23.247000,23.725000,24.564000 /) -XPIZA_LKT(83,11,1:6)=(/ 0.655859,0.694989,0.726747,0.873114,0.892786,0.918296 /) -XCGA_LKT(83,11,1:6)=(/ 0.906673,0.897403,0.890373,0.858447,0.854917,0.828990 /) -XEXT_COEFF_550_LKT(83,11)=23.011000 !rg=7.38975 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,12,1:6)=(/ 19.022000,19.100000,19.237000,19.402000,19.679000,20.260000 /) -XPIZA_LKT(83,12,1:6)=(/ 0.643198,0.681174,0.714817,0.866117,0.888867,0.912568 /) -XCGA_LKT(83,12,1:6)=(/ 0.910153,0.900363,0.893033,0.860357,0.858967,0.837517 /) -XEXT_COEFF_550_LKT(83,12)=19.222000 !rg=7.38975 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,13,1:6)=(/ 15.866000,15.936000,16.022000,16.153000,16.374000,16.827000 /) -XPIZA_LKT(83,13,1:6)=(/ 0.630835,0.667716,0.701736,0.857990,0.883771,0.907067 /) -XCGA_LKT(83,13,1:6)=(/ 0.913913,0.903640,0.895663,0.862927,0.861117,0.842533 /) -XEXT_COEFF_550_LKT(83,13)=16.045000 !rg=7.38975 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,14,1:6)=(/ 13.230000,13.288000,13.349000,13.416000,13.594000,13.942000 /) -XPIZA_LKT(83,14,1:6)=(/ 0.619604,0.654505,0.688225,0.847848,0.877816,0.901514 /) -XCGA_LKT(83,14,1:6)=(/ 0.917543,0.907227,0.898750,0.864437,0.863757,0.847563 /) -XEXT_COEFF_550_LKT(83,14)=13.345000 !rg=7.38975 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,15,1:6)=(/ 11.023000,11.057000,11.115000,11.176000,11.305000,11.547000 /) -XPIZA_LKT(83,15,1:6)=(/ 0.609365,0.641594,0.674958,0.836725,0.870987,0.896533 /) -XCGA_LKT(83,15,1:6)=(/ 0.921273,0.910730,0.901963,0.866873,0.866257,0.852673 /) -XEXT_COEFF_550_LKT(83,15)=11.118000 !rg=7.38975 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,16,1:6)=(/ 9.155500,9.187200,9.222300,9.288600,9.376300,9.579800 /) -XPIZA_LKT(83,16,1:6)=(/ 0.599642,0.629423,0.660965,0.823896,0.862332,0.890772 /) -XCGA_LKT(83,16,1:6)=(/ 0.924973,0.914547,0.905463,0.869587,0.868043,0.854773 /) -XEXT_COEFF_550_LKT(83,16)=9.220800 !rg=7.38975 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,17,1:6)=(/ 7.617500,7.642600,7.666500,7.711600,7.779900,7.925800 /) -XPIZA_LKT(83,17,1:6)=(/ 0.591269,0.618306,0.647916,0.809488,0.852658,0.884667 /) -XCGA_LKT(83,17,1:6)=(/ 0.928477,0.918273,0.908990,0.872080,0.870493,0.858630 /) -XEXT_COEFF_550_LKT(83,17)=7.667900 !rg=7.38975 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,18,1:6)=(/ 6.340200,6.356300,6.379400,6.405300,6.462000,6.558100 /) -XPIZA_LKT(83,18,1:6)=(/ 0.583955,0.608033,0.635960,0.793945,0.842025,0.878400 /) -XCGA_LKT(83,18,1:6)=(/ 0.931903,0.921997,0.912683,0.874660,0.873443,0.862157 /) -XEXT_COEFF_550_LKT(83,18)=6.377900 !rg=7.38975 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,19,1:6)=(/ 5.266700,5.279900,5.294900,5.321900,5.358500,5.430900 /) -XPIZA_LKT(83,19,1:6)=(/ 0.577370,0.598766,0.624050,0.777632,0.829103,0.870251 /) -XCGA_LKT(83,19,1:6)=(/ 0.935070,0.925667,0.916440,0.877600,0.875123,0.864000 /) -XEXT_COEFF_550_LKT(83,19)=5.295100 !rg=7.38975 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(83,20,1:6)=(/ 0.000000,4.388000,4.398700,4.417700,4.445200,4.502600 /) -XPIZA_LKT(83,20,1:6)=(/ 0.900,0.590511,0.613345,0.760255,0.814943,0.861454 /) -XCGA_LKT(83,20,1:6)=(/ 0.900,0.929187,0.920183,0.880657,0.877540,0.867343 /) -XEXT_COEFF_550_LKT(83,20)=4.399000 !rg=7.38975 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,1,1:6)=(/ 76.850000,77.201000,78.552000,79.438000,79.873000,80.824000 /) -XPIZA_LKT(84,1,1:6)=(/ 0.746676,0.772759,0.772437,0.891968,0.932713,0.962032 /) -XCGA_LKT(84,1,1:6)=(/ 0.887767,0.882443,0.881247,0.846247,0.813707,0.753587 /) -XEXT_COEFF_550_LKT(84,1)=78.024000 !rg=8.00573 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,2,1:6)=(/ 72.996000,73.963000,74.988000,76.132000,77.291000,80.850000 /) -XPIZA_LKT(84,2,1:6)=(/ 0.743130,0.770901,0.768019,0.886565,0.937875,0.964120 /) -XCGA_LKT(84,2,1:6)=(/ 0.887363,0.882500,0.882893,0.846003,0.829330,0.790543 /) -XEXT_COEFF_550_LKT(84,2)=74.884000 !rg=8.00573 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,3,1:6)=(/ 67.951000,68.484000,69.033000,70.324000,72.170000,75.851000 /) -XPIZA_LKT(84,3,1:6)=(/ 0.738572,0.767610,0.768400,0.884845,0.932178,0.963379 /) -XCGA_LKT(84,3,1:6)=(/ 0.889343,0.882450,0.882257,0.848030,0.829590,0.797920 /) -XEXT_COEFF_550_LKT(84,3)=69.301000 !rg=8.00573 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,4,1:6)=(/ 61.351000,61.851000,62.346000,63.634000,65.160000,68.311000 /) -XPIZA_LKT(84,4,1:6)=(/ 0.731097,0.761908,0.768464,0.885050,0.926744,0.960296 /) -XCGA_LKT(84,4,1:6)=(/ 0.890490,0.883623,0.882113,0.848643,0.832837,0.797480 /) -XEXT_COEFF_550_LKT(84,4)=62.387000 !rg=8.00573 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,5,1:6)=(/ 54.201000,54.786000,55.222000,55.954000,57.562000,60.099000 /) -XPIZA_LKT(84,5,1:6)=(/ 0.721455,0.755029,0.767104,0.886161,0.920366,0.956727 /) -XCGA_LKT(84,5,1:6)=(/ 0.891807,0.885580,0.882247,0.850550,0.835920,0.799783 /) -XEXT_COEFF_550_LKT(84,5)=55.113000 !rg=8.00573 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,6,1:6)=(/ 47.378000,47.771000,48.296000,48.856000,50.174000,52.518000 /) -XPIZA_LKT(84,6,1:6)=(/ 0.711662,0.746369,0.763297,0.885870,0.914030,0.950456 /) -XCGA_LKT(84,6,1:6)=(/ 0.894083,0.887043,0.883687,0.851917,0.840990,0.802533 /) -XEXT_COEFF_550_LKT(84,6)=48.305000 !rg=8.00573 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,7,1:6)=(/ 40.872000,41.094000,41.450000,42.091000,43.035000,44.734000 /) -XPIZA_LKT(84,7,1:6)=(/ 0.700440,0.736612,0.758301,0.884993,0.907102,0.944302 /) -XCGA_LKT(84,7,1:6)=(/ 0.896540,0.888817,0.884150,0.852430,0.844030,0.810160 /) -XEXT_COEFF_550_LKT(84,7)=41.482000 !rg=8.00573 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,8,1:6)=(/ 34.903000,35.108000,35.467000,35.855000,36.548000,38.139000 /) -XPIZA_LKT(84,8,1:6)=(/ 0.687870,0.726224,0.751824,0.883482,0.903023,0.936642 /) -XCGA_LKT(84,8,1:6)=(/ 0.899030,0.890863,0.885847,0.854213,0.848930,0.815100 /) -XEXT_COEFF_550_LKT(84,8)=35.470000 !rg=8.00573 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,9,1:6)=(/ 29.571000,29.797000,29.960000,30.325000,30.967000,31.977000 /) -XPIZA_LKT(84,9,1:6)=(/ 0.674887,0.714739,0.743010,0.880369,0.898202,0.929802 /) -XCGA_LKT(84,9,1:6)=(/ 0.901857,0.893403,0.887177,0.856300,0.850870,0.823377 /) -XEXT_COEFF_550_LKT(84,9)=29.910000 !rg=8.00573 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,10,1:6)=(/ 24.989000,25.125000,25.290000,25.572000,25.985000,26.870000 /) -XPIZA_LKT(84,10,1:6)=(/ 0.662358,0.701939,0.732871,0.876043,0.894638,0.922594 /) -XCGA_LKT(84,10,1:6)=(/ 0.904967,0.895893,0.889163,0.857930,0.854297,0.828273 /) -XEXT_COEFF_550_LKT(84,10)=25.307000 !rg=8.00573 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,11,1:6)=(/ 20.970000,21.089000,21.216000,21.406000,21.766000,22.472000 /) -XPIZA_LKT(84,11,1:6)=(/ 0.649256,0.688454,0.721476,0.869803,0.890377,0.915122 /) -XCGA_LKT(84,11,1:6)=(/ 0.908387,0.898840,0.891670,0.859237,0.856457,0.833673 /) -XEXT_COEFF_550_LKT(84,11)=21.179000 !rg=8.00573 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,12,1:6)=(/ 17.543000,17.627000,17.711000,17.866000,18.140000,18.642000 /) -XPIZA_LKT(84,12,1:6)=(/ 0.636916,0.674869,0.708585,0.862843,0.886021,0.909648 /) -XCGA_LKT(84,12,1:6)=(/ 0.911997,0.901950,0.894170,0.861707,0.859767,0.840267 /) -XEXT_COEFF_550_LKT(84,12)=17.735000 !rg=8.00573 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,13,1:6)=(/ 14.632000,14.701000,14.768000,14.873000,15.084000,15.483000 /) -XPIZA_LKT(84,13,1:6)=(/ 0.625047,0.661416,0.695410,0.853701,0.881056,0.904108 /) -XCGA_LKT(84,13,1:6)=(/ 0.915637,0.905367,0.897007,0.863810,0.862737,0.845687 /) -XEXT_COEFF_550_LKT(84,13)=14.767000 !rg=8.00573 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,14,1:6)=(/ 12.209000,12.252000,12.319000,12.387000,12.556000,12.811000 /) -XPIZA_LKT(84,14,1:6)=(/ 0.614403,0.648231,0.682176,0.843008,0.874588,0.898626 /) -XCGA_LKT(84,14,1:6)=(/ 0.919387,0.908870,0.900333,0.865717,0.864870,0.850547 /) -XEXT_COEFF_550_LKT(84,14)=12.315000 !rg=8.00573 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,15,1:6)=(/ 10.166000,10.208000,10.241000,10.326000,10.424000,10.655000 /) -XPIZA_LKT(84,15,1:6)=(/ 0.604429,0.635980,0.668365,0.831329,0.866984,0.893101 /) -XCGA_LKT(84,15,1:6)=(/ 0.923030,0.912553,0.903437,0.868407,0.867163,0.853443 /) -XEXT_COEFF_550_LKT(84,15)=10.243000 !rg=8.00573 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,16,1:6)=(/ 8.447500,8.473500,8.510400,8.548000,8.640100,8.810500 /) -XPIZA_LKT(84,16,1:6)=(/ 0.595409,0.623887,0.655005,0.817187,0.858150,0.887872 /) -XCGA_LKT(84,16,1:6)=(/ 0.926663,0.916303,0.907143,0.870217,0.868953,0.856373 /) -XEXT_COEFF_550_LKT(84,16)=8.502600 !rg=8.00573 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,17,1:6)=(/ 7.030100,7.049800,7.075600,7.101500,7.177100,7.293700 /) -XPIZA_LKT(84,17,1:6)=(/ 0.587557,0.613221,0.642330,0.802578,0.848346,0.881862 /) -XCGA_LKT(84,17,1:6)=(/ 0.930153,0.920067,0.910677,0.873087,0.872087,0.860863 /) -XEXT_COEFF_550_LKT(84,17)=7.076400 !rg=8.00573 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,18,1:6)=(/ 5.849300,5.866100,5.881800,5.916800,5.954400,6.048400 /) -XPIZA_LKT(84,18,1:6)=(/ 0.580570,0.603607,0.630187,0.786932,0.836175,0.874665 /) -XCGA_LKT(84,18,1:6)=(/ 0.933430,0.923727,0.914380,0.876123,0.873750,0.863320 /) -XEXT_COEFF_550_LKT(84,18)=5.881600 !rg=8.00573 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,19,1:6)=(/ 4.859800,4.871200,4.885600,4.905000,4.940700,5.010700 /) -XPIZA_LKT(84,19,1:6)=(/ 0.574439,0.594647,0.619039,0.769762,0.823077,0.866728 /) -XCGA_LKT(84,19,1:6)=(/ 0.936520,0.927343,0.918190,0.878703,0.876193,0.865357 /) -XEXT_COEFF_550_LKT(84,19)=4.884100 !rg=8.00573 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(84,20,1:6)=(/ 0.000000,4.048400,4.059300,4.070500,4.101600,4.151900 /) -XPIZA_LKT(84,20,1:6)=(/ 0.900,0.586850,0.608801,0.752260,0.808681,0.857356 /) -XCGA_LKT(84,20,1:6)=(/ 0.900,0.930790,0.921897,0.881993,0.878940,0.868793 /) -XEXT_COEFF_550_LKT(84,20)=4.059300 !rg=8.00573 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,1,1:6)=(/ 70.769000,71.365000,71.586000,72.455000,76.049000,71.081000 /) -XPIZA_LKT(85,1,1:6)=(/ 0.741324,0.770455,0.776832,0.882355,0.935913,0.954159 /) -XCGA_LKT(85,1,1:6)=(/ 0.889457,0.882953,0.879337,0.849100,0.833303,0.769713 /) -XEXT_COEFF_550_LKT(85,1)=71.346000 !rg=8.67306 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,2,1:6)=(/ 67.670000,68.236000,69.146000,70.237000,71.949000,74.118000 /) -XPIZA_LKT(85,2,1:6)=(/ 0.738310,0.767802,0.772989,0.879289,0.932318,0.959630 /) -XCGA_LKT(85,2,1:6)=(/ 0.889580,0.883007,0.881827,0.853070,0.830723,0.796017 /) -XEXT_COEFF_550_LKT(85,2)=69.220000 !rg=8.67306 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,3,1:6)=(/ 62.504000,63.031000,63.782000,64.750000,66.791000,70.238000 /) -XPIZA_LKT(85,3,1:6)=(/ 0.731538,0.763067,0.771152,0.880313,0.926900,0.957764 /) -XCGA_LKT(85,3,1:6)=(/ 0.890137,0.883573,0.881177,0.852083,0.830770,0.788633 /) -XEXT_COEFF_550_LKT(85,3)=63.898000 !rg=8.67306 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,4,1:6)=(/ 56.482000,56.908000,57.674000,58.430000,60.319000,63.381000 /) -XPIZA_LKT(85,4,1:6)=(/ 0.724195,0.757331,0.769045,0.882968,0.920753,0.954444 /) -XCGA_LKT(85,4,1:6)=(/ 0.891550,0.884913,0.881883,0.852080,0.833700,0.791860 /) -XEXT_COEFF_550_LKT(85,4)=57.665000 !rg=8.67306 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,5,1:6)=(/ 50.116000,50.408000,50.872000,51.735000,52.929000,55.087000 /) -XPIZA_LKT(85,5,1:6)=(/ 0.715362,0.750346,0.766144,0.884505,0.914849,0.953019 /) -XCGA_LKT(85,5,1:6)=(/ 0.893637,0.885900,0.882870,0.851543,0.839837,0.806000 /) -XEXT_COEFF_550_LKT(85,5)=51.001000 !rg=8.67306 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,6,1:6)=(/ 43.698000,44.017000,44.437000,44.877000,46.211000,48.460000 /) -XPIZA_LKT(85,6,1:6)=(/ 0.704692,0.741150,0.761518,0.885175,0.909701,0.946683 /) -XCGA_LKT(85,6,1:6)=(/ 0.895437,0.888157,0.883857,0.853360,0.842937,0.802800 /) -XEXT_COEFF_550_LKT(85,6)=44.428000 !rg=8.67306 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,7,1:6)=(/ 37.634000,37.888000,38.218000,38.747000,39.792000,41.465000 /) -XPIZA_LKT(85,7,1:6)=(/ 0.693059,0.731465,0.755111,0.884052,0.903265,0.938878 /) -XCGA_LKT(85,7,1:6)=(/ 0.897860,0.889970,0.884947,0.854253,0.845753,0.809140 /) -XEXT_COEFF_550_LKT(85,7)=38.238000 !rg=8.67306 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,8,1:6)=(/ 32.188000,32.399000,32.608000,33.000000,33.663000,34.981000 /) -XPIZA_LKT(85,8,1:6)=(/ 0.681031,0.720344,0.747822,0.881805,0.899932,0.933685 /) -XCGA_LKT(85,8,1:6)=(/ 0.900593,0.892147,0.886327,0.855623,0.850673,0.819010 /) -XEXT_COEFF_550_LKT(85,8)=32.689000 !rg=8.67306 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,9,1:6)=(/ 27.295000,27.433000,27.667000,27.928000,28.430000,29.364000 /) -XPIZA_LKT(85,9,1:6)=(/ 0.668272,0.708065,0.738799,0.878330,0.895885,0.925304 /) -XCGA_LKT(85,9,1:6)=(/ 0.903613,0.894450,0.888400,0.856743,0.853960,0.827820 /) -XEXT_COEFF_550_LKT(85,9)=27.685000 !rg=8.67306 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,10,1:6)=(/ 23.042000,23.174000,23.320000,23.534000,23.942000,24.738000 /) -XPIZA_LKT(85,10,1:6)=(/ 0.655484,0.695511,0.727880,0.873194,0.891849,0.918079 /) -XCGA_LKT(85,10,1:6)=(/ 0.906730,0.897437,0.890463,0.858537,0.855847,0.832537 /) -XEXT_COEFF_550_LKT(85,10)=23.298000 !rg=8.67306 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,11,1:6)=(/ 19.350000,19.421000,19.570000,19.785000,20.038000,20.606000 /) -XPIZA_LKT(85,11,1:6)=(/ 0.643068,0.681659,0.715690,0.867203,0.888490,0.912321 /) -XCGA_LKT(85,11,1:6)=(/ 0.910167,0.900117,0.892937,0.860843,0.859300,0.838287 /) -XEXT_COEFF_550_LKT(85,11)=19.594000 !rg=8.67306 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,12,1:6)=(/ 16.180000,16.270000,16.346000,16.437000,16.681000,17.157000 /) -XPIZA_LKT(85,12,1:6)=(/ 0.630906,0.668559,0.702818,0.858677,0.883673,0.906337 /) -XCGA_LKT(85,12,1:6)=(/ 0.913690,0.903687,0.895597,0.862503,0.861557,0.843443 /) -XEXT_COEFF_550_LKT(85,12)=16.340000 !rg=8.67306 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,13,1:6)=(/ 13.503000,13.553000,13.628000,13.718000,13.913000,14.212000 /) -XPIZA_LKT(85,13,1:6)=(/ 0.619685,0.654898,0.689438,0.849304,0.878143,0.900805 /) -XCGA_LKT(85,13,1:6)=(/ 0.917440,0.906980,0.898573,0.864753,0.863920,0.848477 /) -XEXT_COEFF_550_LKT(85,13)=13.634000 !rg=8.67306 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,14,1:6)=(/ 11.260000,11.306000,11.351000,11.436000,11.550000,11.793000 /) -XPIZA_LKT(85,14,1:6)=(/ 0.609222,0.642307,0.675681,0.838321,0.871218,0.896055 /) -XCGA_LKT(85,14,1:6)=(/ 0.921157,0.910647,0.901727,0.867027,0.865580,0.851877 /) -XEXT_COEFF_550_LKT(85,14)=11.340000 !rg=8.67306 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,15,1:6)=(/ 9.378400,9.411100,9.458200,9.497600,9.598000,9.783400 /) -XPIZA_LKT(85,15,1:6)=(/ 0.599815,0.630115,0.662556,0.825352,0.863598,0.891047 /) -XCGA_LKT(85,15,1:6)=(/ 0.924763,0.914250,0.905190,0.869387,0.868293,0.855823 /) -XEXT_COEFF_550_LKT(85,15)=9.447600 !rg=8.67306 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,16,1:6)=(/ 7.795000,7.815900,7.846700,7.887700,7.960200,8.102100 /) -XPIZA_LKT(85,16,1:6)=(/ 0.591346,0.618560,0.648875,0.810953,0.854237,0.885201 /) -XCGA_LKT(85,16,1:6)=(/ 0.928383,0.918043,0.908790,0.871617,0.870793,0.859073 /) -XEXT_COEFF_550_LKT(85,16)=7.845700 !rg=8.67306 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,17,1:6)=(/ 6.485800,6.504800,6.524600,6.562400,6.590400,6.691600 /) -XPIZA_LKT(85,17,1:6)=(/ 0.583904,0.608503,0.636487,0.795978,0.842725,0.878253 /) -XCGA_LKT(85,17,1:6)=(/ 0.931763,0.921793,0.912420,0.874617,0.872507,0.861480 /) -XEXT_COEFF_550_LKT(85,17)=6.524900 !rg=8.67306 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,18,1:6)=(/ 5.397300,5.410600,5.429400,5.445600,5.489700,5.565800 /) -XPIZA_LKT(85,18,1:6)=(/ 0.577427,0.599130,0.625075,0.779341,0.830806,0.871268 /) -XCGA_LKT(85,18,1:6)=(/ 0.934940,0.925420,0.916163,0.877227,0.875250,0.864390 /) -XEXT_COEFF_550_LKT(85,18)=5.425300 !rg=8.67306 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,19,1:6)=(/ 0.000000,4.494100,4.506700,4.522600,4.555800,4.615800 /) -XPIZA_LKT(85,19,1:6)=(/ 0.900,0.590750,0.614062,0.761997,0.816790,0.862615 /) -XCGA_LKT(85,19,1:6)=(/ 0.900,0.928953,0.919927,0.880217,0.877490,0.867103 /) -XEXT_COEFF_550_LKT(85,19)=4.506000 !rg=8.67306 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(85,20,1:6)=(/ 0.000000,3.735600,3.744300,3.759700,3.772700,3.814300 /) -XPIZA_LKT(85,20,1:6)=(/ 0.900,0.583472,0.604242,0.744724,0.801508,0.852207 /) -XCGA_LKT(85,20,1:6)=(/ 0.900,0.932327,0.923607,0.883657,0.879767,0.869407 /) -XEXT_COEFF_550_LKT(85,20)=3.743800 !rg=8.67306 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,1,1:6)=(/ 64.909000,65.343000,66.106000,67.692000,70.067000,69.986000 /) -XPIZA_LKT(86,1,1:6)=(/ 0.734050,0.765440,0.776817,0.868619,0.929981,0.959728 /) -XCGA_LKT(86,1,1:6)=(/ 0.890627,0.882803,0.880603,0.856283,0.832260,0.798617 /) -XEXT_COEFF_550_LKT(86,1)=66.115000 !rg=9.39601 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,2,1:6)=(/ 62.212000,62.792000,63.425000,64.256000,66.520000,69.457000 /) -XPIZA_LKT(86,2,1:6)=(/ 0.731013,0.764310,0.775297,0.874004,0.928078,0.957436 /) -XCGA_LKT(86,2,1:6)=(/ 0.890393,0.883860,0.881090,0.855110,0.833837,0.789170 /) -XEXT_COEFF_550_LKT(86,2)=63.181000 !rg=9.39601 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,3,1:6)=(/ 57.648000,58.235000,58.648000,59.363000,61.163000,64.404000 /) -XPIZA_LKT(86,3,1:6)=(/ 0.725199,0.759505,0.772201,0.878627,0.922075,0.955616 /) -XCGA_LKT(86,3,1:6)=(/ 0.891560,0.884777,0.881223,0.852690,0.834947,0.800233 /) -XEXT_COEFF_550_LKT(86,3)=58.621000 !rg=9.39601 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,4,1:6)=(/ 52.079000,52.575000,52.934000,53.683000,55.060000,58.119000 /) -XPIZA_LKT(86,4,1:6)=(/ 0.717187,0.753242,0.768751,0.881308,0.916024,0.952404 /) -XCGA_LKT(86,4,1:6)=(/ 0.892860,0.885960,0.882167,0.852507,0.838317,0.802587 /) -XEXT_COEFF_550_LKT(86,4)=52.942000 !rg=9.39601 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,5,1:6)=(/ 46.143000,46.488000,46.922000,47.537000,48.908000,51.137000 /) -XPIZA_LKT(86,5,1:6)=(/ 0.707979,0.745243,0.764687,0.883473,0.909307,0.947045 /) -XCGA_LKT(86,5,1:6)=(/ 0.894750,0.887357,0.882767,0.853773,0.841670,0.802570 /) -XEXT_COEFF_550_LKT(86,5)=47.037000 !rg=9.39601 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,6,1:6)=(/ 40.303000,40.616000,40.952000,41.632000,42.561000,44.494000 /) -XPIZA_LKT(86,6,1:6)=(/ 0.697479,0.736358,0.758331,0.884182,0.904551,0.942110 /) -XCGA_LKT(86,6,1:6)=(/ 0.896923,0.889143,0.884630,0.854690,0.845310,0.809547 /) -XEXT_COEFF_550_LKT(86,6)=40.928000 !rg=9.39601 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,7,1:6)=(/ 34.707000,34.954000,35.193000,35.617000,36.346000,37.906000 /) -XPIZA_LKT(86,7,1:6)=(/ 0.685755,0.725686,0.751944,0.882264,0.900163,0.936000 /) -XCGA_LKT(86,7,1:6)=(/ 0.899403,0.891180,0.885663,0.854663,0.848683,0.817127 /) -XEXT_COEFF_550_LKT(86,7)=35.120000 !rg=9.39601 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,8,1:6)=(/ 29.673000,29.900000,30.099000,30.327000,31.008000,32.168000 /) -XPIZA_LKT(86,8,1:6)=(/ 0.673745,0.714443,0.743485,0.879642,0.896964,0.929164 /) -XCGA_LKT(86,8,1:6)=(/ 0.902147,0.893643,0.887410,0.856610,0.853110,0.824173 /) -XEXT_COEFF_550_LKT(86,8)=30.067000 !rg=9.39601 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,9,1:6)=(/ 25.161000,25.306000,25.460000,25.754000,26.249000,27.169000 /) -XPIZA_LKT(86,9,1:6)=(/ 0.661148,0.701675,0.733336,0.876110,0.892749,0.920319 /) -XCGA_LKT(86,9,1:6)=(/ 0.905220,0.896063,0.889073,0.858413,0.855180,0.828160 /) -XEXT_COEFF_550_LKT(86,9)=25.508000 !rg=9.39601 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,10,1:6)=(/ 21.265000,21.355000,21.505000,21.666000,22.015000,22.644000 /) -XPIZA_LKT(86,10,1:6)=(/ 0.649092,0.688584,0.722412,0.870467,0.890026,0.914874 /) -XCGA_LKT(86,10,1:6)=(/ 0.908477,0.898763,0.891793,0.859737,0.858510,0.836937 /) -XEXT_COEFF_550_LKT(86,10)=21.489000 !rg=9.39601 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,11,1:6)=(/ 17.843000,17.935000,18.007000,18.217000,18.443000,18.893000 /) -XPIZA_LKT(86,11,1:6)=(/ 0.636675,0.675451,0.709434,0.863901,0.886313,0.909683 /) -XCGA_LKT(86,11,1:6)=(/ 0.911957,0.901967,0.893847,0.862010,0.860903,0.842810 /) -XEXT_COEFF_550_LKT(86,11)=18.017000 !rg=9.39601 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,12,1:6)=(/ 14.933000,14.990000,15.088000,15.187000,15.384000,15.734000 /) -XPIZA_LKT(86,12,1:6)=(/ 0.625256,0.661859,0.696804,0.854721,0.881042,0.903361 /) -XCGA_LKT(86,12,1:6)=(/ 0.915533,0.905170,0.897173,0.863800,0.863367,0.846763 /) -XEXT_COEFF_550_LKT(86,12)=15.073000 !rg=9.39601 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,13,1:6)=(/ 12.454000,12.507000,12.556000,12.659000,12.769000,13.059000 /) -XPIZA_LKT(86,13,1:6)=(/ 0.614184,0.648770,0.682833,0.844690,0.874813,0.898226 /) -XCGA_LKT(86,13,1:6)=(/ 0.919253,0.908740,0.899970,0.866123,0.864537,0.850153 /) -XEXT_COEFF_550_LKT(86,13)=12.549000 !rg=9.39601 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,14,1:6)=(/ 10.388000,10.423000,10.476000,10.524000,10.646000,10.857000 /) -XPIZA_LKT(86,14,1:6)=(/ 0.604395,0.636182,0.669614,0.832530,0.867819,0.893697 /) -XCGA_LKT(86,14,1:6)=(/ 0.922920,0.912317,0.903397,0.867757,0.867393,0.855083 /) -XEXT_COEFF_550_LKT(86,14)=10.461000 !rg=9.39601 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,15,1:6)=(/ 8.653200,8.679300,8.715000,8.763900,8.847400,9.013900 /) -XPIZA_LKT(86,15,1:6)=(/ 0.595459,0.624458,0.656094,0.819330,0.859431,0.888156 /) -XCGA_LKT(86,15,1:6)=(/ 0.926513,0.916007,0.906737,0.870533,0.869377,0.857147 /) -XEXT_COEFF_550_LKT(86,15)=8.720100 !rg=9.39601 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,16,1:6)=(/ 7.192100,7.212300,7.234100,7.277400,7.328300,7.438500 /) -XPIZA_LKT(86,16,1:6)=(/ 0.587530,0.613602,0.642853,0.804547,0.849210,0.882233 /) -XCGA_LKT(86,16,1:6)=(/ 0.930027,0.919817,0.910367,0.873077,0.871667,0.860793 /) -XEXT_COEFF_550_LKT(86,16)=7.233600 !rg=9.39601 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,17,1:6)=(/ 5.984700,5.999700,6.020300,6.045500,6.095000,6.184800 /) -XPIZA_LKT(86,17,1:6)=(/ 0.580561,0.603773,0.631034,0.788499,0.837970,0.875684 /) -XCGA_LKT(86,17,1:6)=(/ 0.933317,0.923487,0.914183,0.875787,0.874493,0.864297 /) -XEXT_COEFF_550_LKT(86,17)=6.015600 !rg=9.39601 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,18,1:6)=(/ 4.980400,4.991600,5.006500,5.025800,5.060900,5.128200 /) -XPIZA_LKT(86,18,1:6)=(/ 0.574527,0.594961,0.619718,0.771759,0.824758,0.867549 /) -XCGA_LKT(86,18,1:6)=(/ 0.936370,0.927090,0.917873,0.878650,0.876360,0.865690 /) -XEXT_COEFF_550_LKT(86,18)=5.005100 !rg=9.39601 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,19,1:6)=(/ 0.000000,4.147100,4.157000,4.174200,4.194300,4.240700 /) -XPIZA_LKT(86,19,1:6)=(/ 0.900,0.587139,0.609283,0.754472,0.810063,0.858274 /) -XCGA_LKT(86,19,1:6)=(/ 0.900,0.930553,0.921597,0.881837,0.878440,0.868643 /) -XEXT_COEFF_550_LKT(86,19)=4.156100 !rg=9.39601 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(86,20,1:6)=(/ 0.000000,3.446600,3.455000,3.465600,3.485400,3.523300 /) -XPIZA_LKT(86,20,1:6)=(/ 0.900,0.580162,0.600041,0.736500,0.794875,0.847942 /) -XCGA_LKT(86,20,1:6)=(/ 0.900,0.933837,0.925277,0.885173,0.881457,0.871540 /) -XEXT_COEFF_550_LKT(86,20)=3.453500 !rg=9.39601 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,1,1:6)=(/ 59.702000,60.722000,60.959000,62.295000,62.369000,71.927000 /) -XPIZA_LKT(87,1,1:6)=(/ 0.726686,0.763454,0.778354,0.859716,0.924199,0.961031 /) -XCGA_LKT(87,1,1:6)=(/ 0.889877,0.883893,0.878713,0.857193,0.830993,0.815000 /) -XEXT_COEFF_550_LKT(87,1)=61.203000 !rg=10.1792 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,2,1:6)=(/ 57.393000,57.822000,58.458000,59.678000,61.125000,64.686000 /) -XPIZA_LKT(87,2,1:6)=(/ 0.723969,0.759534,0.774606,0.871878,0.922478,0.953199 /) -XCGA_LKT(87,2,1:6)=(/ 0.891703,0.884680,0.881367,0.856120,0.834770,0.800000 /) -XEXT_COEFF_550_LKT(87,2)=58.697000 !rg=10.1792 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,3,1:6)=(/ 53.241000,53.545000,54.234000,54.866000,56.149000,58.569000 /) -XPIZA_LKT(87,3,1:6)=(/ 0.718612,0.754884,0.771659,0.878748,0.916935,0.955609 /) -XCGA_LKT(87,3,1:6)=(/ 0.893040,0.885773,0.882240,0.854123,0.839147,0.805800 /) -XEXT_COEFF_550_LKT(87,3)=54.076000 !rg=10.1792 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,4,1:6)=(/ 48.107000,48.338000,48.967000,49.644000,50.684000,52.831000 /) -XPIZA_LKT(87,4,1:6)=(/ 0.710657,0.747751,0.767360,0.881472,0.910264,0.951333 /) -XCGA_LKT(87,4,1:6)=(/ 0.894643,0.886677,0.883080,0.853893,0.842073,0.808343 /) -XEXT_COEFF_550_LKT(87,4)=48.861000 !rg=10.1792 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,5,1:6)=(/ 42.539000,42.892000,43.190000,43.582000,44.626000,46.896000 /) -XPIZA_LKT(87,5,1:6)=(/ 0.700808,0.740139,0.762166,0.883143,0.904894,0.944743 /) -XCGA_LKT(87,5,1:6)=(/ 0.896213,0.888487,0.883580,0.854210,0.845567,0.811523 /) -XEXT_COEFF_550_LKT(87,5)=43.182000 !rg=10.1792 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,6,1:6)=(/ 37.196000,37.376000,37.724000,38.068000,38.938000,40.380000 /) -XPIZA_LKT(87,6,1:6)=(/ 0.690653,0.730136,0.755936,0.883166,0.901086,0.939043 /) -XCGA_LKT(87,6,1:6)=(/ 0.898593,0.890153,0.884943,0.855550,0.849453,0.817540 /) -XEXT_COEFF_550_LKT(87,6)=37.793000 !rg=10.1792 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,7,1:6)=(/ 32.033000,32.168000,32.480000,32.948000,33.474000,34.648000 /) -XPIZA_LKT(87,7,1:6)=(/ 0.678957,0.719169,0.747975,0.881335,0.897036,0.932366 /) -XCGA_LKT(87,7,1:6)=(/ 0.901040,0.892073,0.886743,0.856337,0.852157,0.822463 /) -XEXT_COEFF_550_LKT(87,7)=32.557000 !rg=10.1792 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,8,1:6)=(/ 27.387000,27.506000,27.777000,28.037000,28.490000,29.385000 /) -XPIZA_LKT(87,8,1:6)=(/ 0.667152,0.707678,0.739043,0.878106,0.893890,0.924440 /) -XCGA_LKT(87,8,1:6)=(/ 0.903863,0.894673,0.888713,0.857753,0.855150,0.829520 /) -XEXT_COEFF_550_LKT(87,8)=27.750000 !rg=10.1792 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,9,1:6)=(/ 23.204000,23.331000,23.479000,23.630000,24.029000,24.864000 /) -XPIZA_LKT(87,9,1:6)=(/ 0.654401,0.695051,0.728033,0.873770,0.891003,0.917134 /) -XCGA_LKT(87,9,1:6)=(/ 0.906903,0.897437,0.890500,0.859183,0.857347,0.833223 /) -XEXT_COEFF_550_LKT(87,9)=23.457000 !rg=10.1792 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,10,1:6)=(/ 19.603000,19.710000,19.806000,20.035000,20.304000,20.890000 /) -XPIZA_LKT(87,10,1:6)=(/ 0.642368,0.682264,0.716109,0.867841,0.887244,0.910922 /) -XCGA_LKT(87,10,1:6)=(/ 0.910193,0.900343,0.892780,0.861077,0.859327,0.838843 /) -XEXT_COEFF_550_LKT(87,10)=19.834000 !rg=10.1792 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,11,1:6)=(/ 16.465000,16.529000,16.628000,16.712000,16.995000,17.432000 /) -XPIZA_LKT(87,11,1:6)=(/ 0.630819,0.668604,0.703774,0.859592,0.883108,0.905270 /) -XCGA_LKT(87,11,1:6)=(/ 0.913713,0.903420,0.895563,0.862313,0.861600,0.844347 /) -XEXT_COEFF_550_LKT(87,11)=16.620000 !rg=10.1792 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,12,1:6)=(/ 13.770000,13.834000,13.890000,14.008000,14.165000,14.493000 /) -XPIZA_LKT(87,12,1:6)=(/ 0.619472,0.655680,0.690106,0.850777,0.878351,0.900702 /) -XCGA_LKT(87,12,1:6)=(/ 0.917337,0.906890,0.898370,0.864770,0.864023,0.848417 /) -XEXT_COEFF_550_LKT(87,12)=13.877000 !rg=10.1792 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,13,1:6)=(/ 11.492000,11.532000,11.589000,11.642000,11.789000,12.047000 /) -XPIZA_LKT(87,13,1:6)=(/ 0.609144,0.642546,0.676659,0.839339,0.871930,0.895593 /) -XCGA_LKT(87,13,1:6)=(/ 0.921047,0.910383,0.901620,0.866783,0.866827,0.853240 /) -XEXT_COEFF_550_LKT(87,13)=11.576000 !rg=10.1792 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,14,1:6)=(/ 9.584300,9.613800,9.652700,9.714300,9.807800,10.001000 /) -XPIZA_LKT(87,14,1:6)=(/ 0.599758,0.630247,0.663044,0.826871,0.864306,0.891139 /) -XCGA_LKT(87,14,1:6)=(/ 0.924687,0.914083,0.904883,0.869333,0.868493,0.856353 /) -XEXT_COEFF_550_LKT(87,14)=9.661500 !rg=10.1792 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,15,1:6)=(/ 7.984900,8.009600,8.034600,8.084100,8.146300,8.303600 /) -XPIZA_LKT(87,15,1:6)=(/ 0.591374,0.619217,0.649836,0.812843,0.854813,0.885005 /) -XCGA_LKT(87,15,1:6)=(/ 0.928243,0.917833,0.908393,0.871653,0.869940,0.858737 /) -XEXT_COEFF_550_LKT(87,15)=8.035200 !rg=10.1792 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,16,1:6)=(/ 6.636300,6.653200,6.675300,6.703400,6.765800,6.878200 /) -XPIZA_LKT(87,16,1:6)=(/ 0.583894,0.608670,0.637264,0.797357,0.844255,0.878993 /) -XCGA_LKT(87,16,1:6)=(/ 0.931667,0.921550,0.912127,0.874200,0.872663,0.861717 /) -XEXT_COEFF_550_LKT(87,16)=6.674600 !rg=10.1792 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,17,1:6)=(/ 5.522200,5.535300,5.551100,5.574400,5.613300,5.695600 /) -XPIZA_LKT(87,17,1:6)=(/ 0.577379,0.599312,0.625443,0.781144,0.832338,0.872264 /) -XCGA_LKT(87,17,1:6)=(/ 0.934827,0.925213,0.915843,0.877107,0.875227,0.865043 /) -XEXT_COEFF_550_LKT(87,17)=5.551200 !rg=10.1792 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,18,1:6)=(/ 0.000000,4.606100,4.617700,4.634800,4.661900,4.723300 /) -XPIZA_LKT(87,18,1:6)=(/ 0.900,0.591044,0.614680,0.764070,0.818400,0.863259 /) -XCGA_LKT(87,18,1:6)=(/ 0.900,0.928773,0.919590,0.879923,0.876943,0.866687 /) -XEXT_COEFF_550_LKT(87,18)=4.616900 !rg=10.1792 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,19,1:6)=(/ 0.000000,3.826200,3.835800,3.849300,3.873500,3.919400 /) -XPIZA_LKT(87,19,1:6)=(/ 0.900,0.583592,0.604838,0.746391,0.803515,0.853874 /) -XCGA_LKT(87,19,1:6)=(/ 0.900,0.932140,0.923300,0.883310,0.879487,0.869477 /) -XEXT_COEFF_550_LKT(87,19)=3.834900 !rg=10.1792 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(87,20,1:6)=(/ 0.000000,3.180300,3.187100,3.197300,3.213100,3.247100 /) -XPIZA_LKT(87,20,1:6)=(/ 0.900,0.577131,0.595806,0.728612,0.787548,0.842974 /) -XCGA_LKT(87,20,1:6)=(/ 0.900,0.935297,0.926933,0.886720,0.882423,0.872650 /) -XEXT_COEFF_550_LKT(87,20)=3.187200 !rg=10.1792 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,1,1:6)=(/ 55.512000,55.760000,56.132000,57.432000,59.899000,64.820000 /) -XPIZA_LKT(88,1,1:6)=(/ 0.720871,0.757781,0.777807,0.867217,0.920708,0.959773 /) -XCGA_LKT(88,1,1:6)=(/ 0.892477,0.886097,0.880157,0.855663,0.842850,0.816537 /) -XEXT_COEFF_550_LKT(88,1)=56.564000 !rg=11.0277 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,2,1:6)=(/ 53.054000,53.267000,53.679000,54.664000,55.461000,58.982000 /) -XPIZA_LKT(88,2,1:6)=(/ 0.717444,0.754211,0.773865,0.873844,0.918098,0.952099 /) -XCGA_LKT(88,2,1:6)=(/ 0.893630,0.885700,0.880580,0.857163,0.840557,0.805727 /) -XEXT_COEFF_550_LKT(88,2)=53.894000 !rg=11.0277 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,3,1:6)=(/ 48.972000,49.514000,49.777000,50.311000,51.897000,53.626000 /) -XPIZA_LKT(88,3,1:6)=(/ 0.710452,0.750144,0.771103,0.878967,0.911288,0.952407 /) -XCGA_LKT(88,3,1:6)=(/ 0.894263,0.886987,0.882287,0.855123,0.843040,0.810517 /) -XEXT_COEFF_550_LKT(88,3)=49.609000 !rg=11.0277 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,4,1:6)=(/ 44.264000,44.714000,44.935000,45.497000,46.655000,48.268000 /) -XPIZA_LKT(88,4,1:6)=(/ 0.702817,0.743322,0.765695,0.882190,0.905515,0.948084 /) -XCGA_LKT(88,4,1:6)=(/ 0.895723,0.888200,0.883060,0.855063,0.846423,0.814323 /) -XEXT_COEFF_550_LKT(88,4)=44.839000 !rg=11.0277 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,5,1:6)=(/ 39.268000,39.485000,39.905000,40.381000,41.179000,42.792000 /) -XPIZA_LKT(88,5,1:6)=(/ 0.693744,0.734140,0.759346,0.883275,0.899720,0.942125 /) -XCGA_LKT(88,5,1:6)=(/ 0.897890,0.889607,0.884670,0.855080,0.848613,0.816303 /) -XEXT_COEFF_550_LKT(88,5)=39.869000 !rg=11.0277 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,6,1:6)=(/ 34.273000,34.552000,34.762000,35.154000,35.686000,36.931000 /) -XPIZA_LKT(88,6,1:6)=(/ 0.683179,0.724744,0.752188,0.882176,0.896942,0.935577 /) -XCGA_LKT(88,6,1:6)=(/ 0.900023,0.891810,0.885863,0.856087,0.852300,0.822393 /) -XEXT_COEFF_550_LKT(88,6)=34.794000 !rg=11.0277 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,7,1:6)=(/ 29.518000,29.714000,29.865000,30.268000,30.787000,31.678000 /) -XPIZA_LKT(88,7,1:6)=(/ 0.671639,0.713291,0.743173,0.880340,0.894963,0.928961 /) -XCGA_LKT(88,7,1:6)=(/ 0.902570,0.893870,0.887073,0.857470,0.855160,0.828790 /) -XEXT_COEFF_550_LKT(88,7)=29.868000 !rg=11.0277 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,8,1:6)=(/ 25.237000,25.389000,25.519000,25.817000,26.196000,26.985000 /) -XPIZA_LKT(88,8,1:6)=(/ 0.659694,0.701481,0.733643,0.876537,0.891546,0.920618 /) -XCGA_LKT(88,8,1:6)=(/ 0.905527,0.896143,0.889343,0.858707,0.856493,0.832300 /) -XEXT_COEFF_550_LKT(88,8)=25.499000 !rg=11.0277 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,9,1:6)=(/ 21.407000,21.502000,21.648000,21.846000,22.189000,22.847000 /) -XPIZA_LKT(88,9,1:6)=(/ 0.647857,0.688207,0.722461,0.871182,0.888391,0.913423 /) -XCGA_LKT(88,9,1:6)=(/ 0.908617,0.898867,0.891693,0.859977,0.858830,0.837037 /) -XEXT_COEFF_550_LKT(88,9)=21.672000 !rg=11.0277 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,10,1:6)=(/ 18.087000,18.160000,18.291000,18.426000,18.639000,19.155000 /) -XPIZA_LKT(88,10,1:6)=(/ 0.636227,0.675225,0.710705,0.864157,0.885514,0.908142 /) -XCGA_LKT(88,10,1:6)=(/ 0.911957,0.901750,0.894213,0.861883,0.861553,0.842667 /) -XEXT_COEFF_550_LKT(88,10)=18.261000 !rg=11.0277 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,11,1:6)=(/ 15.184000,15.242000,15.319000,15.450000,15.649000,16.112000 /) -XPIZA_LKT(88,11,1:6)=(/ 0.624696,0.662136,0.697200,0.855985,0.880729,0.902346 /) -XCGA_LKT(88,11,1:6)=(/ 0.915560,0.905010,0.896757,0.864003,0.862733,0.845810 /) -XEXT_COEFF_550_LKT(88,11)=15.326000 !rg=11.0277 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,12,1:6)=(/ 12.705000,12.752000,12.822000,12.902000,13.048000,13.328000 /) -XPIZA_LKT(88,12,1:6)=(/ 0.614059,0.649068,0.684122,0.845597,0.875715,0.898266 /) -XCGA_LKT(88,12,1:6)=(/ 0.919177,0.908530,0.899953,0.865513,0.866113,0.851677 /) -XEXT_COEFF_550_LKT(88,12)=12.809000 !rg=11.0277 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,13,1:6)=(/ 10.602000,10.635000,10.682000,10.750000,10.870000,11.081000 /) -XPIZA_LKT(88,13,1:6)=(/ 0.604248,0.636412,0.670210,0.834136,0.868783,0.893656 /) -XCGA_LKT(88,13,1:6)=(/ 0.922827,0.912093,0.903053,0.868387,0.867567,0.854707 /) -XEXT_COEFF_550_LKT(88,13)=10.685000 !rg=11.0277 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,14,1:6)=(/ 8.842900,8.871900,8.902400,8.947700,9.037900,9.199800 /) -XPIZA_LKT(88,14,1:6)=(/ 0.595350,0.624839,0.656568,0.820689,0.860367,0.888327 /) -XCGA_LKT(88,14,1:6)=(/ 0.926450,0.915877,0.906547,0.870243,0.869580,0.857923 /) -XEXT_COEFF_550_LKT(88,14)=8.901700 !rg=11.0277 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,15,1:6)=(/ 7.367900,7.388700,7.414800,7.446700,7.519600,7.635400 /) -XPIZA_LKT(88,15,1:6)=(/ 0.587507,0.613989,0.644001,0.806114,0.850950,0.882826 /) -XCGA_LKT(88,15,1:6)=(/ 0.929907,0.919593,0.910173,0.872877,0.872117,0.861100 /) -XEXT_COEFF_550_LKT(88,15)=7.413000 !rg=11.0277 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,16,1:6)=(/ 6.122700,6.138900,6.156700,6.188300,6.231100,6.334600 /) -XPIZA_LKT(88,16,1:6)=(/ 0.580456,0.603986,0.631530,0.790383,0.839185,0.876047 /) -XCGA_LKT(88,16,1:6)=(/ 0.933227,0.923333,0.913827,0.875597,0.873893,0.863257 /) -XEXT_COEFF_550_LKT(88,16)=6.156000 !rg=11.0277 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,17,1:6)=(/ 5.095600,5.107700,5.121300,5.142500,5.176600,5.247500 /) -XPIZA_LKT(88,17,1:6)=(/ 0.574385,0.595141,0.620155,0.773560,0.826330,0.868093 /) -XCGA_LKT(88,17,1:6)=(/ 0.936320,0.926930,0.917620,0.878367,0.876190,0.865673 /) -XEXT_COEFF_550_LKT(88,17)=5.120500 !rg=11.0277 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,18,1:6)=(/ 0.000000,4.249700,4.261000,4.275600,4.304900,4.355200 /) -XPIZA_LKT(88,18,1:6)=(/ 0.900,0.587285,0.609903,0.756180,0.812313,0.859799 /) -XCGA_LKT(88,18,1:6)=(/ 0.900,0.930373,0.921370,0.881480,0.878717,0.868900 /) -XEXT_COEFF_550_LKT(88,18)=4.260100 !rg=11.0277 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,19,1:6)=(/ 0.000000,3.530700,3.538500,3.552300,3.569100,3.611300 /) -XPIZA_LKT(88,19,1:6)=(/ 0.900,0.580343,0.600342,0.738588,0.796466,0.849181 /) -XCGA_LKT(88,19,1:6)=(/ 0.900,0.933657,0.925037,0.884827,0.880917,0.870790 /) -XEXT_COEFF_550_LKT(88,19)=3.537700 !rg=11.0277 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(88,20,1:6)=(/ 0.000000,0.000000,2.940600,2.949000,2.963200,2.992200 /) -XPIZA_LKT(88,20,1:6)=(/ 0.900,0.900,0.591926,0.720609,0.780093,0.837368 /) -XCGA_LKT(88,20,1:6)=(/ 0.900,0.900,0.928547,0.888270,0.883763,0.873367 /) -XEXT_COEFF_550_LKT(88,20)=2.940200 !rg=11.0277 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,1,1:6)=(/ 51.195000,50.761000,51.720000,52.883000,53.924000,54.191000 /) -XPIZA_LKT(89,1,1:6)=(/ 0.714388,0.750069,0.775068,0.878802,0.911335,0.941271 /) -XCGA_LKT(89,1,1:6)=(/ 0.895020,0.884810,0.880437,0.854543,0.836173,0.785943 /) -XEXT_COEFF_550_LKT(89,1)=51.749000 !rg=11.9469 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,2,1:6)=(/ 48.757000,49.291000,49.549000,50.466000,50.897000,53.463000 /) -XPIZA_LKT(89,2,1:6)=(/ 0.709401,0.749712,0.772543,0.879358,0.911656,0.950959 /) -XCGA_LKT(89,2,1:6)=(/ 0.894563,0.887233,0.881720,0.856143,0.846417,0.807563 /) -XEXT_COEFF_550_LKT(89,2)=49.699000 !rg=11.9469 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,3,1:6)=(/ 45.213000,45.427000,45.910000,46.516000,47.603000,49.190000 /) -XPIZA_LKT(89,3,1:6)=(/ 0.703828,0.743405,0.768504,0.881553,0.905422,0.948003 /) -XCGA_LKT(89,3,1:6)=(/ 0.895903,0.887460,0.882787,0.855533,0.846740,0.814897 /) -XEXT_COEFF_550_LKT(89,3)=45.972000 !rg=11.9469 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,4,1:6)=(/ 40.880000,41.066000,41.465000,42.060000,42.872000,44.302000 /) -XPIZA_LKT(89,4,1:6)=(/ 0.695723,0.736589,0.763119,0.882906,0.899815,0.943662 /) -XCGA_LKT(89,4,1:6)=(/ 0.897497,0.888777,0.883880,0.855350,0.849467,0.819043 /) -XEXT_COEFF_550_LKT(89,4)=41.548000 !rg=11.9469 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,5,1:6)=(/ 36.177000,36.503000,36.671000,37.116000,37.973000,39.192000 /) -XPIZA_LKT(89,5,1:6)=(/ 0.686003,0.728518,0.756229,0.882652,0.896064,0.937998 /) -XCGA_LKT(89,5,1:6)=(/ 0.899373,0.891143,0.885233,0.856393,0.851810,0.821830 /) -XEXT_COEFF_550_LKT(89,5)=36.591000 !rg=11.9469 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,6,1:6)=(/ 31.606000,31.764000,32.095000,32.349000,33.081000,34.198000 /) -XPIZA_LKT(89,6,1:6)=(/ 0.675789,0.717688,0.748306,0.880847,0.894243,0.931094 /) -XCGA_LKT(89,6,1:6)=(/ 0.901687,0.892697,0.887097,0.856883,0.855577,0.826447 /) -XEXT_COEFF_550_LKT(89,6)=32.063000 !rg=11.9469 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,7,1:6)=(/ 27.246000,27.367000,27.566000,27.837000,28.338000,29.241000 /) -XPIZA_LKT(89,7,1:6)=(/ 0.664756,0.706280,0.738836,0.878296,0.890961,0.923322 /) -XCGA_LKT(89,7,1:6)=(/ 0.904300,0.894967,0.888580,0.857593,0.855943,0.831993 /) -XEXT_COEFF_550_LKT(89,7)=27.572000 !rg=11.9469 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,8,1:6)=(/ 23.286000,23.405000,23.556000,23.752000,24.144000,24.882000 /) -XPIZA_LKT(89,8,1:6)=(/ 0.652839,0.694408,0.728637,0.874047,0.889350,0.916647 /) -XCGA_LKT(89,8,1:6)=(/ 0.907310,0.897537,0.890580,0.859330,0.859313,0.836880 /) -XEXT_COEFF_550_LKT(89,8)=23.537000 !rg=11.9469 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,9,1:6)=(/ 19.746000,19.855000,19.944000,20.154000,20.461000,21.023000 /) -XPIZA_LKT(89,9,1:6)=(/ 0.641153,0.681697,0.716516,0.868032,0.886254,0.910103 /) -XCGA_LKT(89,9,1:6)=(/ 0.910493,0.900537,0.892890,0.861293,0.859757,0.840993 /) -XEXT_COEFF_550_LKT(89,9)=19.921000 !rg=11.9469 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,10,1:6)=(/ 16.683000,16.753000,16.834000,16.970000,17.212000,17.626000 /) -XPIZA_LKT(89,10,1:6)=(/ 0.629931,0.668596,0.704015,0.860692,0.883071,0.905197 /) -XCGA_LKT(89,10,1:6)=(/ 0.913823,0.903393,0.895280,0.862783,0.862327,0.845390 /) -XEXT_COEFF_550_LKT(89,10)=16.856000 !rg=11.9469 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,11,1:6)=(/ 14.007000,14.064000,14.123000,14.220000,14.399000,14.750000 /) -XPIZA_LKT(89,11,1:6)=(/ 0.619083,0.655505,0.690933,0.851455,0.878309,0.899818 /) -XCGA_LKT(89,11,1:6)=(/ 0.917280,0.906757,0.898143,0.864803,0.863983,0.848580 /) -XEXT_COEFF_550_LKT(89,11)=14.114000 !rg=11.9469 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,12,1:6)=(/ 11.722000,11.763000,11.812000,11.899000,12.027000,12.280000 /) -XPIZA_LKT(89,12,1:6)=(/ 0.608948,0.642710,0.677398,0.840808,0.872655,0.895453 /) -XCGA_LKT(89,12,1:6)=(/ 0.920970,0.910270,0.901320,0.866940,0.866813,0.853110 /) -XEXT_COEFF_550_LKT(89,12)=11.824000 !rg=11.9469 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,13,1:6)=(/ 9.779100,9.814400,9.848800,9.916600,10.006000,10.209000 /) -XPIZA_LKT(89,13,1:6)=(/ 0.599450,0.630648,0.663642,0.828367,0.864937,0.890883 /) -XCGA_LKT(89,13,1:6)=(/ 0.924617,0.913950,0.904613,0.869457,0.868540,0.856700 /) -XEXT_COEFF_550_LKT(89,13)=9.849000 !rg=11.9469 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,14,1:6)=(/ 8.159200,8.182800,8.215900,8.254800,8.345300,8.481300 /) -XPIZA_LKT(89,14,1:6)=(/ 0.591221,0.619369,0.650675,0.814353,0.856206,0.885380 /) -XCGA_LKT(89,14,1:6)=(/ 0.928157,0.917613,0.908273,0.871480,0.870537,0.859563 /) -XEXT_COEFF_550_LKT(89,14)=8.215500 !rg=11.9469 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,15,1:6)=(/ 6.797400,6.817900,6.837900,6.878200,6.920100,7.042200 /) -XPIZA_LKT(89,15,1:6)=(/ 0.583797,0.609092,0.637962,0.799517,0.845666,0.879652 /) -XCGA_LKT(89,15,1:6)=(/ 0.931527,0.921367,0.911863,0.874123,0.872550,0.862480 /) -XEXT_COEFF_550_LKT(89,15)=6.837400 !rg=11.9469 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,16,1:6)=(/ 5.649400,5.663500,5.680700,5.701200,5.745700,5.829200 /) -XPIZA_LKT(89,16,1:6)=(/ 0.577196,0.599458,0.626048,0.782778,0.833599,0.872462 /) -XCGA_LKT(89,16,1:6)=(/ 0.934777,0.925050,0.915640,0.876720,0.874743,0.864303 /) -XEXT_COEFF_550_LKT(89,16)=5.678200 !rg=11.9469 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,17,1:6)=(/ 0.000000,4.712200,4.725700,4.740300,4.778500,4.838300 /) -XPIZA_LKT(89,17,1:6)=(/ 0.900,0.591093,0.615170,0.765783,0.820325,0.864739 /) -XCGA_LKT(89,17,1:6)=(/ 0.900,0.928600,0.919380,0.879717,0.877390,0.867603 /) -XEXT_COEFF_550_LKT(89,17)=4.725100 !rg=11.9469 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,18,1:6)=(/ 0.000000,3.921600,3.930500,3.946800,3.963800,4.011300 /) -XPIZA_LKT(89,18,1:6)=(/ 0.900,0.583804,0.605208,0.748514,0.805223,0.854828 /) -XCGA_LKT(89,18,1:6)=(/ 0.900,0.931957,0.923050,0.882953,0.879303,0.869210 /) -XEXT_COEFF_550_LKT(89,18)=3.930700 !rg=11.9469 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,19,1:6)=(/ 0.000000,3.257900,3.264900,3.273800,3.292400,3.328200 /) -XPIZA_LKT(89,19,1:6)=(/ 0.900,0.577284,0.596232,0.730297,0.789318,0.844226 /) -XCGA_LKT(89,19,1:6)=(/ 0.900,0.935123,0.926683,0.886260,0.881903,0.871950 /) -XEXT_COEFF_550_LKT(89,19)=3.264100 !rg=11.9469 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(89,20,1:6)=(/ 0.000000,0.000000,2.713400,2.720100,2.736200,2.760600 /) -XPIZA_LKT(89,20,1:6)=(/ 0.900,0.900,0.588246,0.712654,0.772831,0.832031 /) -XCGA_LKT(89,20,1:6)=(/ 0.900,0.900,0.930157,0.889963,0.885193,0.874817 /) -XEXT_COEFF_550_LKT(89,20)=2.713200 !rg=11.9469 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,1,1:6)=(/ 46.898000,47.745000,47.831000,48.518000,49.875000,48.610000 /) -XPIZA_LKT(90,1,1:6)=(/ 0.704683,0.747466,0.771654,0.884624,0.907904,0.947709 /) -XCGA_LKT(90,1,1:6)=(/ 0.896217,0.888050,0.883020,0.854570,0.845580,0.798470 /) -XEXT_COEFF_550_LKT(90,1)=47.929000 !rg=12.9427 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,2,1:6)=(/ 44.980000,45.181000,45.666000,46.293000,47.482000,49.120000 /) -XPIZA_LKT(90,2,1:6)=(/ 0.701931,0.742768,0.768571,0.883565,0.905158,0.947852 /) -XCGA_LKT(90,2,1:6)=(/ 0.896203,0.887640,0.882937,0.855350,0.848657,0.810993 /) -XEXT_COEFF_550_LKT(90,2)=45.605000 !rg=12.9427 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,3,1:6)=(/ 41.652000,42.125000,42.308000,42.758000,43.877000,45.588000 /) -XPIZA_LKT(90,3,1:6)=(/ 0.695711,0.738909,0.765201,0.883122,0.898171,0.942340 /) -XCGA_LKT(90,3,1:6)=(/ 0.897317,0.889427,0.883080,0.855873,0.849877,0.814103 /) -XEXT_COEFF_550_LKT(90,3)=42.434000 !rg=12.9427 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,4,1:6)=(/ 37.672000,37.931000,38.192000,38.622000,39.603000,41.125000 /) -XPIZA_LKT(90,4,1:6)=(/ 0.687812,0.730591,0.759405,0.883329,0.894298,0.937504 /) -XCGA_LKT(90,4,1:6)=(/ 0.898963,0.890573,0.884130,0.856407,0.852223,0.817603 /) -XEXT_COEFF_550_LKT(90,4)=38.306000 !rg=12.9427 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,5,1:6)=(/ 33.387000,33.533000,33.881000,34.219000,34.790000,35.977000 /) -XPIZA_LKT(90,5,1:6)=(/ 0.678992,0.721197,0.752383,0.882513,0.893056,0.933108 /) -XCGA_LKT(90,5,1:6)=(/ 0.901030,0.891830,0.886250,0.856640,0.854803,0.826703 /) -XEXT_COEFF_550_LKT(90,5)=33.900000 !rg=12.9427 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,6,1:6)=(/ 29.144000,29.285000,29.499000,29.912000,30.389000,31.551000 /) -XPIZA_LKT(90,6,1:6)=(/ 0.668461,0.710883,0.743206,0.880414,0.891661,0.926624 /) -XCGA_LKT(90,6,1:6)=(/ 0.903317,0.894240,0.887603,0.857990,0.856503,0.828157 /) -XEXT_COEFF_550_LKT(90,6)=29.533000 !rg=12.9427 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,7,1:6)=(/ 25.115000,25.243000,25.396000,25.665000,26.161000,27.094000 /) -XPIZA_LKT(90,7,1:6)=(/ 0.657330,0.699878,0.733251,0.876697,0.889298,0.917962 /) -XCGA_LKT(90,7,1:6)=(/ 0.906040,0.896427,0.889377,0.859360,0.857987,0.832257 /) -XEXT_COEFF_550_LKT(90,7)=25.414000 !rg=12.9427 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,8,1:6)=(/ 21.479000,21.582000,21.713000,21.902000,22.215000,22.891000 /) -XPIZA_LKT(90,8,1:6)=(/ 0.646007,0.687492,0.722639,0.871426,0.887814,0.913223 /) -XCGA_LKT(90,8,1:6)=(/ 0.909103,0.898990,0.891620,0.860813,0.860297,0.839453 /) -XEXT_COEFF_550_LKT(90,8)=21.752000 !rg=12.9427 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,9,1:6)=(/ 18.220000,18.287000,18.418000,18.525000,18.787000,19.280000 /) -XPIZA_LKT(90,9,1:6)=(/ 0.634884,0.674504,0.710811,0.864663,0.885110,0.906854 /) -XCGA_LKT(90,9,1:6)=(/ 0.912310,0.901907,0.894297,0.861693,0.862060,0.844740 /) -XEXT_COEFF_550_LKT(90,9)=18.423000 !rg=12.9427 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,10,1:6)=(/ 15.389000,15.461000,15.530000,15.624000,15.820000,16.245000 /) -XPIZA_LKT(90,10,1:6)=(/ 0.623943,0.661994,0.697831,0.856533,0.880868,0.901716 /) -XCGA_LKT(90,10,1:6)=(/ 0.915637,0.905227,0.896753,0.863790,0.863633,0.847883 /) -XEXT_COEFF_550_LKT(90,10)=15.528000 !rg=12.9427 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,11,1:6)=(/ 12.924000,12.971000,13.033000,13.131000,13.290000,13.570000 /) -XPIZA_LKT(90,11,1:6)=(/ 0.613595,0.648981,0.684422,0.846923,0.875963,0.897481 /) -XCGA_LKT(90,11,1:6)=(/ 0.919220,0.908447,0.899723,0.865887,0.865847,0.851923 /) -XEXT_COEFF_550_LKT(90,11)=13.048000 !rg=12.9427 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,12,1:6)=(/ 10.815000,10.853000,10.894000,10.944000,11.064000,11.294000 /) -XPIZA_LKT(90,12,1:6)=(/ 0.603893,0.636731,0.670712,0.834985,0.869193,0.893090 /) -XCGA_LKT(90,12,1:6)=(/ 0.922817,0.912050,0.902923,0.867653,0.867557,0.855430 /) -XEXT_COEFF_550_LKT(90,12)=10.891000 !rg=12.9427 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,13,1:6)=(/ 9.024500,9.052000,9.089800,9.125400,9.233900,9.402700 /) -XPIZA_LKT(90,13,1:6)=(/ 0.595088,0.624871,0.657492,0.822082,0.861477,0.888035 /) -XCGA_LKT(90,13,1:6)=(/ 0.926393,0.915723,0.906380,0.870150,0.869950,0.858307 /) -XEXT_COEFF_550_LKT(90,13)=9.091900 !rg=12.9427 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,14,1:6)=(/ 7.527800,7.550600,7.573600,7.616900,7.666700,7.796900 /) -XPIZA_LKT(90,14,1:6)=(/ 0.587219,0.614171,0.644481,0.807922,0.851539,0.882573 /) -XCGA_LKT(90,14,1:6)=(/ 0.929867,0.919427,0.909863,0.872860,0.871223,0.860550 /) -XEXT_COEFF_550_LKT(90,14)=7.570900 !rg=12.9427 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,15,1:6)=(/ 6.272500,6.288100,6.310800,6.333300,6.383300,6.475000 /) -XPIZA_LKT(90,15,1:6)=(/ 0.580383,0.604176,0.632386,0.792070,0.840784,0.876859 /) -XCGA_LKT(90,15,1:6)=(/ 0.933120,0.923120,0.913637,0.875237,0.874030,0.863870 /) -XEXT_COEFF_550_LKT(90,15)=6.305100 !rg=12.9427 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,16,1:6)=(/ 5.213300,5.224500,5.240400,5.262800,5.298300,5.369300 /) -XPIZA_LKT(90,16,1:6)=(/ 0.574247,0.595168,0.620636,0.775356,0.828166,0.869511 /) -XCGA_LKT(90,16,1:6)=(/ 0.936263,0.926733,0.917403,0.878237,0.876570,0.866383 /) -XEXT_COEFF_550_LKT(90,16)=5.240900 !rg=12.9427 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,17,1:6)=(/ 0.000000,4.348600,4.358800,4.376500,4.397700,4.441700 /) -XPIZA_LKT(90,17,1:6)=(/ 0.900,0.587396,0.610180,0.758078,0.813665,0.860258 /) -XCGA_LKT(90,17,1:6)=(/ 0.900,0.930233,0.921120,0.881283,0.878227,0.868173 /) -XEXT_COEFF_550_LKT(90,17)=4.358400 !rg=12.9427 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,18,1:6)=(/ 0.000000,3.618000,3.626900,3.638400,3.657300,3.696400 /) -XPIZA_LKT(90,18,1:6)=(/ 0.900,0.580439,0.600847,0.740262,0.798539,0.850577 /) -XCGA_LKT(90,18,1:6)=(/ 0.900,0.933477,0.924773,0.884447,0.880830,0.871013 /) -XEXT_COEFF_550_LKT(90,18)=3.625400 !rg=12.9427 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,19,1:6)=(/ 0.000000,3.006000,3.012400,3.020500,3.036400,3.067800 /) -XPIZA_LKT(90,19,1:6)=(/ 0.900,0.574304,0.592284,0.722400,0.782244,0.839253 /) -XCGA_LKT(90,19,1:6)=(/ 0.900,0.936600,0.928307,0.887863,0.883580,0.873883 /) -XEXT_COEFF_550_LKT(90,19)=3.012100 !rg=12.9427 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(90,20,1:6)=(/ 0.000000,0.000000,2.503500,2.510500,2.520000,2.537000 /) -XPIZA_LKT(90,20,1:6)=(/ 0.900,0.900,0.584701,0.704877,0.764919,0.825679 /) -XCGA_LKT(90,20,1:6)=(/ 0.900,0.900,0.931747,0.891703,0.886403,0.875340 /) -XEXT_COEFF_550_LKT(90,20)=2.503200 !rg=12.9427 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,1,1:6)=(/ 43.083000,43.620000,43.935000,44.660000,45.419000,48.941000 /) -XPIZA_LKT(91,1,1:6)=(/ 0.696820,0.740044,0.767753,0.889189,0.902857,0.947601 /) -XCGA_LKT(91,1,1:6)=(/ 0.896167,0.888927,0.882840,0.854867,0.849970,0.825273 /) -XEXT_COEFF_550_LKT(91,1)=44.046000 !rg=14.0216 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,2,1:6)=(/ 41.493000,41.861000,42.159000,42.613000,43.420000,45.702000 /) -XPIZA_LKT(91,2,1:6)=(/ 0.694209,0.738008,0.765279,0.886242,0.899016,0.942680 /) -XCGA_LKT(91,2,1:6)=(/ 0.897797,0.889540,0.883540,0.855633,0.853320,0.814310 /) -XEXT_COEFF_550_LKT(91,2)=42.027000 !rg=14.0216 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,3,1:6)=(/ 38.433000,38.720000,39.121000,39.327000,39.925000,41.990000 /) -XPIZA_LKT(91,3,1:6)=(/ 0.687990,0.731588,0.761480,0.885151,0.892995,0.939669 /) -XCGA_LKT(91,3,1:6)=(/ 0.898990,0.890497,0.884413,0.856250,0.854630,0.820143 /) -XEXT_COEFF_550_LKT(91,3)=38.965000 !rg=14.0216 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,4,1:6)=(/ 34.734000,34.968000,35.191000,35.489000,36.081000,37.706000 /) -XPIZA_LKT(91,4,1:6)=(/ 0.680323,0.724102,0.754582,0.884094,0.890482,0.934701 /) -XCGA_LKT(91,4,1:6)=(/ 0.900580,0.891760,0.885467,0.856913,0.855437,0.824150 /) -XEXT_COEFF_550_LKT(91,4)=35.178000 !rg=14.0216 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,5,1:6)=(/ 30.768000,31.025000,31.140000,31.495000,32.169000,33.289000 /) -XPIZA_LKT(91,5,1:6)=(/ 0.671002,0.715263,0.747063,0.881644,0.889013,0.927481 /) -XCGA_LKT(91,5,1:6)=(/ 0.902617,0.893667,0.886590,0.857690,0.856737,0.826893 /) -XEXT_COEFF_550_LKT(91,5)=31.235000 !rg=14.0216 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,6,1:6)=(/ 26.879000,27.032000,27.184000,27.527000,27.996000,29.002000 /) -XPIZA_LKT(91,6,1:6)=(/ 0.661072,0.704495,0.737926,0.879087,0.889260,0.921227 /) -XCGA_LKT(91,6,1:6)=(/ 0.905040,0.895447,0.888873,0.859013,0.858023,0.831600 /) -XEXT_COEFF_550_LKT(91,6)=27.178000 !rg=14.0216 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,7,1:6)=(/ 23.162000,23.283000,23.413000,23.596000,23.980000,24.725000 /) -XPIZA_LKT(91,7,1:6)=(/ 0.650448,0.692656,0.728095,0.874266,0.887609,0.914681 /) -XCGA_LKT(91,7,1:6)=(/ 0.907640,0.897943,0.890627,0.859950,0.859093,0.837333 /) -XEXT_COEFF_550_LKT(91,7)=23.375000 !rg=14.0216 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,8,1:6)=(/ 19.806000,19.908000,20.012000,20.157000,20.472000,21.087000 /) -XPIZA_LKT(91,8,1:6)=(/ 0.639294,0.680671,0.716499,0.868435,0.886010,0.909178 /) -XCGA_LKT(91,8,1:6)=(/ 0.910850,0.900677,0.892800,0.861493,0.861963,0.842680 /) -XEXT_COEFF_550_LKT(91,8)=19.995000 !rg=14.0216 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,9,1:6)=(/ 16.802000,16.893000,16.948000,17.122000,17.345000,17.811000 /) -XPIZA_LKT(91,9,1:6)=(/ 0.628501,0.668216,0.703908,0.861339,0.882632,0.902823 /) -XCGA_LKT(91,9,1:6)=(/ 0.914110,0.903687,0.895293,0.863440,0.863623,0.845997 /) -XEXT_COEFF_550_LKT(91,9)=16.963000 !rg=14.0216 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,10,1:6)=(/ 14.201000,14.253000,14.333000,14.418000,14.598000,14.904000 /) -XPIZA_LKT(91,10,1:6)=(/ 0.618277,0.655151,0.691423,0.852257,0.878713,0.899172 /) -XCGA_LKT(91,10,1:6)=(/ 0.917507,0.906840,0.898420,0.864907,0.865453,0.850977 /) -XEXT_COEFF_550_LKT(91,10)=14.315000 !rg=14.0216 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,11,1:6)=(/ 11.924000,11.971000,12.015000,12.099000,12.239000,12.484000 /) -XPIZA_LKT(91,11,1:6)=(/ 0.608306,0.642830,0.677755,0.841837,0.873084,0.895392 /) -XCGA_LKT(91,11,1:6)=(/ 0.921067,0.910280,0.901160,0.866940,0.866717,0.854563 /) -XEXT_COEFF_550_LKT(91,11)=12.011000 !rg=14.0216 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,12,1:6)=(/ 9.979100,10.009000,10.054000,10.100000,10.226000,10.398000 /) -XPIZA_LKT(91,12,1:6)=(/ 0.599194,0.630622,0.664493,0.829403,0.865667,0.890389 /) -XCGA_LKT(91,12,1:6)=(/ 0.924647,0.913873,0.904617,0.869007,0.868377,0.857587 /) -XEXT_COEFF_550_LKT(91,12)=10.053000 !rg=14.0216 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,13,1:6)=(/ 8.325800,8.352100,8.379200,8.437600,8.478500,8.625400 /) -XPIZA_LKT(91,13,1:6)=(/ 0.590822,0.619366,0.651043,0.816112,0.856613,0.885274 /) -XCGA_LKT(91,13,1:6)=(/ 0.928137,0.917560,0.908007,0.871660,0.869917,0.859383 /) -XEXT_COEFF_550_LKT(91,13)=8.378800 !rg=14.0216 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,14,1:6)=(/ 6.946100,6.964400,6.988900,7.014300,7.077800,7.189200 /) -XPIZA_LKT(91,14,1:6)=(/ 0.583572,0.609033,0.638609,0.800742,0.846995,0.879803 /) -XCGA_LKT(91,14,1:6)=(/ 0.931487,0.921200,0.911647,0.873870,0.872933,0.862873 /) -XEXT_COEFF_550_LKT(91,14)=6.983600 !rg=14.0216 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,15,1:6)=(/ 5.787600,5.801100,5.818200,5.844600,5.884200,5.967000 /) -XPIZA_LKT(91,15,1:6)=(/ 0.577125,0.599664,0.626522,0.784825,0.835199,0.873376 /) -XCGA_LKT(91,15,1:6)=(/ 0.934677,0.924820,0.915377,0.876607,0.874987,0.864920 /) -XEXT_COEFF_550_LKT(91,15)=5.817700 !rg=14.0216 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,16,1:6)=(/ 0.000000,4.821400,4.832600,4.853700,4.880100,4.939600 /) -XPIZA_LKT(91,16,1:6)=(/ 0.900,0.591163,0.615419,0.767632,0.821745,0.865410 /) -XCGA_LKT(91,16,1:6)=(/ 0.900,0.928473,0.919087,0.879557,0.877047,0.867467 /) -XEXT_COEFF_550_LKT(91,16)=4.832700 !rg=14.0216 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,17,1:6)=(/ 0.000000,4.011700,4.022600,4.034600,4.059900,4.108300 /) -XPIZA_LKT(91,17,1:6)=(/ 0.900,0.583739,0.605614,0.749975,0.807126,0.856391 /) -XCGA_LKT(91,17,1:6)=(/ 0.900,0.931837,0.922877,0.882590,0.879347,0.870313 /) -XEXT_COEFF_550_LKT(91,17)=4.020400 !rg=14.0216 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,18,1:6)=(/ 0.000000,3.338300,3.345500,3.356700,3.373800,3.407000 /) -XPIZA_LKT(91,18,1:6)=(/ 0.900,0.577271,0.596519,0.732272,0.791320,0.845607 /) -XCGA_LKT(91,18,1:6)=(/ 0.900,0.935000,0.926430,0.886047,0.881943,0.872207 /) -XEXT_COEFF_550_LKT(91,18)=3.345500 !rg=14.0216 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(91,19,1:6)=(/ 0.000000,0.000000,2.779100,2.787100,2.798800,2.821400 /) -XPIZA_LKT(91,19,1:6)=(/ 0.900,0.900,0.588411,0.714432,0.774547,0.833311 /) -XCGA_LKT(91,19,1:6)=(/ 0.900,0.900,0.929967,0.889603,0.884670,0.874490 /) -XEXT_COEFF_550_LKT(91,19)=2.778600 !rg=14.0216 sigma=2.85 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET9',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET9 - -!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -SUBROUTINE DUST_OPT_LKT_SET10() - - USE MODD_DUST_OPT_LKT - - IMPLICIT NONE - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET10',0,ZHOOK_HANDLE) -XEXT_COEFF_WVL_LKT(91,20,1:6)=(/ 0.000000,0.000000,2.310300,2.315500,2.325900,2.345100 /) -XPIZA_LKT(91,20,1:6)=(/ 0.900,0.900,0.581451,0.696978,0.757133,0.819978 /) -XCGA_LKT(91,20,1:6)=(/ 0.900,0.900,0.933277,0.893380,0.887830,0.877120 /) -XEXT_COEFF_550_LKT(91,20)=2.309500 !rg=14.0216 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,1,1:6)=(/ 39.896000,40.228000,40.329000,40.793000,41.609000,43.289000 /) -XPIZA_LKT(92,1,1:6)=(/ 0.689281,0.734307,0.762122,0.889002,0.897673,0.944111 /) -XCGA_LKT(92,1,1:6)=(/ 0.898053,0.890873,0.883123,0.854543,0.858030,0.829960 /) -XEXT_COEFF_550_LKT(92,1)=40.360000 !rg=15.1904 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,2,1:6)=(/ 38.253000,38.533000,38.877000,39.304000,40.085000,41.706000 /) -XPIZA_LKT(92,2,1:6)=(/ 0.686222,0.730793,0.762288,0.888554,0.889335,0.939827 /) -XCGA_LKT(92,2,1:6)=(/ 0.899353,0.890703,0.884700,0.855893,0.854430,0.822037 /) -XEXT_COEFF_550_LKT(92,2)=38.823000 !rg=15.1904 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,3,1:6)=(/ 35.469000,35.627000,35.966000,36.295000,36.950000,38.360000 /) -XPIZA_LKT(92,3,1:6)=(/ 0.680671,0.724477,0.756925,0.886029,0.886681,0.936280 /) -XCGA_LKT(92,3,1:6)=(/ 0.900600,0.891540,0.885267,0.856120,0.856197,0.824533 /) -XEXT_COEFF_550_LKT(92,3)=36.026000 !rg=15.1904 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,4,1:6)=(/ 32.046000,32.215000,32.492000,32.862000,33.385000,34.530000 /) -XPIZA_LKT(92,4,1:6)=(/ 0.672747,0.716830,0.750229,0.883909,0.886070,0.930499 /) -XCGA_LKT(92,4,1:6)=(/ 0.902243,0.893073,0.886583,0.857123,0.857403,0.827827 /) -XEXT_COEFF_550_LKT(92,4)=32.513000 !rg=15.1904 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,5,1:6)=(/ 28.383000,28.565000,28.824000,28.932000,29.387000,30.482000 /) -XPIZA_LKT(92,5,1:6)=(/ 0.663601,0.707850,0.742668,0.880997,0.887652,0.923455 /) -XCGA_LKT(92,5,1:6)=(/ 0.904320,0.895023,0.888227,0.858657,0.859117,0.832103 /) -XEXT_COEFF_550_LKT(92,5)=28.704000 !rg=15.1904 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,6,1:6)=(/ 24.804000,24.907000,25.074000,25.259000,25.746000,26.437000 /) -XPIZA_LKT(92,6,1:6)=(/ 0.653979,0.696880,0.732702,0.877131,0.887100,0.917362 /) -XCGA_LKT(92,6,1:6)=(/ 0.906850,0.897040,0.889780,0.859643,0.859893,0.837260 /) -XEXT_COEFF_550_LKT(92,6)=25.135000 !rg=15.1904 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,7,1:6)=(/ 21.372000,21.467000,21.612000,21.831000,22.130000,22.728000 /) -XPIZA_LKT(92,7,1:6)=(/ 0.643485,0.685446,0.722010,0.872086,0.885883,0.910571 /) -XCGA_LKT(92,7,1:6)=(/ 0.909643,0.899447,0.891917,0.860773,0.861233,0.841277 /) -XEXT_COEFF_550_LKT(92,7)=21.650000 !rg=15.1904 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,8,1:6)=(/ 18.275000,18.349000,18.464000,18.603000,18.884000,19.316000 /) -XPIZA_LKT(92,8,1:6)=(/ 0.632983,0.673406,0.710436,0.865406,0.883914,0.905038 /) -XCGA_LKT(92,8,1:6)=(/ 0.912663,0.902190,0.894307,0.862357,0.862693,0.846107 /) -XEXT_COEFF_550_LKT(92,8)=18.478000 !rg=15.1904 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,9,1:6)=(/ 15.498000,15.568000,15.668000,15.727000,15.943000,16.306000 /) -XPIZA_LKT(92,9,1:6)=(/ 0.622366,0.661008,0.698242,0.857158,0.880768,0.900506 /) -XCGA_LKT(92,9,1:6)=(/ 0.915970,0.905327,0.896987,0.864093,0.864183,0.849197 /) -XEXT_COEFF_550_LKT(92,9)=15.643000 !rg=15.1904 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,10,1:6)=(/ 13.098000,13.147000,13.202000,13.305000,13.447000,13.751000 /) -XPIZA_LKT(92,10,1:6)=(/ 0.612624,0.648617,0.684465,0.848050,0.876171,0.896264 /) -XCGA_LKT(92,10,1:6)=(/ 0.919353,0.908557,0.899713,0.865993,0.865980,0.852310 /) -XEXT_COEFF_550_LKT(92,10)=13.204000 !rg=15.1904 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,11,1:6)=(/ 11.002000,11.037000,11.091000,11.135000,11.285000,11.494000 /) -XPIZA_LKT(92,11,1:6)=(/ 0.603266,0.636471,0.671506,0.836321,0.870090,0.891839 /) -XCGA_LKT(92,11,1:6)=(/ 0.922903,0.911983,0.902910,0.867590,0.868123,0.855757 /) -XEXT_COEFF_550_LKT(92,11)=11.084000 !rg=15.1904 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,12,1:6)=(/ 9.204300,9.236000,9.267100,9.329800,9.402600,9.570500 /) -XPIZA_LKT(92,12,1:6)=(/ 0.594579,0.624952,0.657851,0.823772,0.861823,0.887941 /) -XCGA_LKT(92,12,1:6)=(/ 0.926407,0.915673,0.906217,0.870293,0.869003,0.858580 /) -XEXT_COEFF_550_LKT(92,12)=9.262900 !rg=15.1904 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,13,1:6)=(/ 7.682400,7.703800,7.732600,7.768800,7.838100,7.965100 /) -XPIZA_LKT(92,13,1:6)=(/ 0.586884,0.613936,0.644912,0.809206,0.852946,0.882840 /) -XCGA_LKT(92,13,1:6)=(/ 0.929830,0.919340,0.909827,0.872697,0.872200,0.862103 /) -XEXT_COEFF_550_LKT(92,13)=7.728500 !rg=15.1904 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,14,1:6)=(/ 6.408900,6.424500,6.444400,6.476800,6.525200,6.616500 /) -XPIZA_LKT(92,14,1:6)=(/ 0.580059,0.604185,0.632601,0.793842,0.842099,0.877205 /) -XCGA_LKT(92,14,1:6)=(/ 0.933110,0.922927,0.913380,0.875403,0.873923,0.864093 /) -XEXT_COEFF_550_LKT(92,14)=6.446900 !rg=15.1904 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,15,1:6)=(/ 5.340600,5.352900,5.367000,5.386900,5.418200,5.493000 /) -XPIZA_LKT(92,15,1:6)=(/ 0.574124,0.595331,0.621173,0.777058,0.829389,0.869568 /) -XCGA_LKT(92,15,1:6)=(/ 0.936177,0.926590,0.917080,0.877917,0.875657,0.865563 /) -XEXT_COEFF_550_LKT(92,15)=5.365800 !rg=15.1904 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,16,1:6)=(/ 0.000000,4.448000,4.460200,4.474000,4.505100,4.560900 /) -XPIZA_LKT(92,16,1:6)=(/ 0.900,0.587292,0.610541,0.759589,0.815524,0.861180 /) -XCGA_LKT(92,16,1:6)=(/ 0.900,0.930100,0.920957,0.880933,0.878250,0.868197 /) -XEXT_COEFF_550_LKT(92,16)=4.458400 !rg=15.1904 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,17,1:6)=(/ 0.000000,3.701400,3.709900,3.724500,3.742100,3.782800 /) -XPIZA_LKT(92,17,1:6)=(/ 0.900,0.580341,0.600977,0.742099,0.800270,0.851864 /) -XCGA_LKT(92,17,1:6)=(/ 0.900,0.933397,0.924573,0.884207,0.880347,0.870947 /) -XEXT_COEFF_550_LKT(92,17)=3.709800 !rg=15.1904 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,18,1:6)=(/ 0.000000,3.080700,3.086600,3.095000,3.109300,3.138400 /) -XPIZA_LKT(92,18,1:6)=(/ 0.900,0.574380,0.592482,0.724137,0.783977,0.840253 /) -XCGA_LKT(92,18,1:6)=(/ 0.900,0.936470,0.928097,0.887630,0.883237,0.872823 /) -XEXT_COEFF_550_LKT(92,18)=3.086300 !rg=15.1904 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,19,1:6)=(/ 0.000000,0.000000,2.564500,2.571400,2.583800,2.607200 /) -XPIZA_LKT(92,19,1:6)=(/ 0.900,0.900,0.584903,0.706459,0.766921,0.827508 /) -XCGA_LKT(92,19,1:6)=(/ 0.900,0.900,0.931557,0.891307,0.886127,0.875200 /) -XEXT_COEFF_550_LKT(92,19)=2.564000 !rg=15.1904 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(92,20,1:6)=(/ 0.000000,0.000000,2.131500,2.137200,2.144900,2.160900 /) -XPIZA_LKT(92,20,1:6)=(/ 0.900,0.900,0.578275,0.689389,0.749311,0.813468 /) -XCGA_LKT(92,20,1:6)=(/ 0.900,0.900,0.934757,0.895220,0.889167,0.877860 /) -XEXT_COEFF_550_LKT(92,20)=2.131200 !rg=15.1904 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,1,1:6)=(/ 36.990000,36.816000,37.184000,37.812000,38.475000,37.410000 /) -XPIZA_LKT(93,1,1:6)=(/ 0.682672,0.724868,0.758878,0.890291,0.883452,0.936677 /) -XCGA_LKT(93,1,1:6)=(/ 0.900260,0.890493,0.884283,0.856220,0.854717,0.824933 /) -XEXT_COEFF_550_LKT(93,1)=37.725000 !rg=16.4566 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,2,1:6)=(/ 35.338000,35.497000,35.761000,35.937000,37.054000,37.972000 /) -XPIZA_LKT(93,2,1:6)=(/ 0.678898,0.723577,0.756582,0.888717,0.882396,0.936110 /) -XCGA_LKT(93,2,1:6)=(/ 0.901043,0.891690,0.885537,0.857160,0.860723,0.826177 /) -XEXT_COEFF_550_LKT(93,2)=35.601000 !rg=16.4566 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,3,1:6)=(/ 32.704000,32.937000,33.080000,33.453000,34.115000,35.242000 /) -XPIZA_LKT(93,3,1:6)=(/ 0.672695,0.718526,0.751555,0.885636,0.881763,0.930512 /) -XCGA_LKT(93,3,1:6)=(/ 0.902310,0.893113,0.886267,0.856583,0.859240,0.827983 /) -XEXT_COEFF_550_LKT(93,3)=33.046000 !rg=16.4566 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,4,1:6)=(/ 29.567000,29.775000,29.892000,30.265000,30.806000,31.724000 /) -XPIZA_LKT(93,4,1:6)=(/ 0.665176,0.710354,0.744755,0.882890,0.884076,0.925502 /) -XCGA_LKT(93,4,1:6)=(/ 0.904093,0.894733,0.887627,0.858197,0.859377,0.832247 /) -XEXT_COEFF_550_LKT(93,4)=29.828000 !rg=16.4566 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,5,1:6)=(/ 26.184000,26.302000,26.512000,26.733000,27.153000,27.991000 /) -XPIZA_LKT(93,5,1:6)=(/ 0.656297,0.700349,0.736502,0.879487,0.885735,0.918676 /) -XCGA_LKT(93,5,1:6)=(/ 0.906090,0.896343,0.889253,0.858790,0.860190,0.835997 /) -XEXT_COEFF_550_LKT(93,5)=26.547000 !rg=16.4566 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,6,1:6)=(/ 22.872000,23.007000,23.089000,23.309000,23.600000,24.194000 /) -XPIZA_LKT(93,6,1:6)=(/ 0.646820,0.690346,0.726158,0.874834,0.885913,0.912543 /) -XCGA_LKT(93,6,1:6)=(/ 0.908587,0.898643,0.890927,0.859930,0.861870,0.841663 /) -XEXT_COEFF_550_LKT(93,6)=23.108000 !rg=16.4566 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,7,1:6)=(/ 19.715000,19.822000,19.899000,20.104000,20.395000,20.861000 /) -XPIZA_LKT(93,7,1:6)=(/ 0.636676,0.678774,0.715391,0.869092,0.884860,0.907382 /) -XCGA_LKT(93,7,1:6)=(/ 0.911513,0.901203,0.893030,0.861853,0.862533,0.845640 /) -XEXT_COEFF_550_LKT(93,7)=19.885000 !rg=16.4566 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,8,1:6)=(/ 16.856000,16.936000,17.001000,17.167000,17.333000,17.738000 /) -XPIZA_LKT(93,8,1:6)=(/ 0.626510,0.666545,0.703535,0.861951,0.881938,0.901902 /) -XCGA_LKT(93,8,1:6)=(/ 0.914547,0.903970,0.895473,0.863740,0.863177,0.848427 /) -XEXT_COEFF_550_LKT(93,8)=16.992000 !rg=16.4566 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,9,1:6)=(/ 14.299000,14.349000,14.429000,14.524000,14.695000,15.026000 /) -XPIZA_LKT(93,9,1:6)=(/ 0.616582,0.653946,0.691027,0.852901,0.878449,0.897348 /) -XCGA_LKT(93,9,1:6)=(/ 0.917847,0.907027,0.898367,0.864993,0.865133,0.851567 /) -XEXT_COEFF_550_LKT(93,9)=14.446000 !rg=16.4566 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,10,1:6)=(/ 12.084000,12.124000,12.180000,12.259000,12.382000,12.611000 /) -XPIZA_LKT(93,10,1:6)=(/ 0.607298,0.642030,0.677933,0.842461,0.873521,0.894109 /) -XCGA_LKT(93,10,1:6)=(/ 0.921217,0.910283,0.901290,0.866547,0.867607,0.855357 /) -XEXT_COEFF_550_LKT(93,10)=12.167000 !rg=16.4566 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,11,1:6)=(/ 10.149000,10.181000,10.221000,10.287000,10.372000,10.599000 /) -XPIZA_LKT(93,11,1:6)=(/ 0.598449,0.630405,0.664694,0.830945,0.866323,0.889579 /) -XCGA_LKT(93,11,1:6)=(/ 0.924707,0.913807,0.904367,0.869230,0.868760,0.857073 /) -XEXT_COEFF_550_LKT(93,11)=10.222000 !rg=16.4566 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,12,1:6)=(/ 8.493400,8.518200,8.551900,8.586600,8.673100,8.815000 /) -XPIZA_LKT(93,12,1:6)=(/ 0.590382,0.619201,0.651649,0.817154,0.857902,0.885692 /) -XCGA_LKT(93,12,1:6)=(/ 0.928160,0.917457,0.907953,0.871150,0.870723,0.861230 /) -XEXT_COEFF_550_LKT(93,12)=8.543800 !rg=16.4566 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,13,1:6)=(/ 7.088200,7.106300,7.129700,7.163800,7.219600,7.337900 /) -XPIZA_LKT(93,13,1:6)=(/ 0.583126,0.608808,0.638663,0.802487,0.848424,0.880612 /) -XCGA_LKT(93,13,1:6)=(/ 0.931497,0.921137,0.911493,0.874053,0.873257,0.863220 /) -XEXT_COEFF_550_LKT(93,13)=7.130300 !rg=16.4566 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,14,1:6)=(/ 5.913700,5.928200,5.944200,5.971400,6.012500,6.097400 /) -XPIZA_LKT(93,14,1:6)=(/ 0.576790,0.599582,0.626923,0.786412,0.836644,0.874081 /) -XCGA_LKT(93,14,1:6)=(/ 0.934683,0.924747,0.915063,0.876543,0.875063,0.865507 /) -XEXT_COEFF_550_LKT(93,14)=5.943700 !rg=16.4566 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,15,1:6)=(/ 4.928000,4.939000,4.952400,4.969300,5.006500,5.067200 /) -XPIZA_LKT(93,15,1:6)=(/ 0.571281,0.591187,0.615979,0.769276,0.823624,0.866546 /) -XCGA_LKT(93,15,1:6)=(/ 0.937647,0.928317,0.918913,0.879227,0.877280,0.867777 /) -XEXT_COEFF_550_LKT(93,15)=4.951100 !rg=16.4566 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,16,1:6)=(/ 0.000000,4.104200,4.113900,4.129800,4.148200,4.200900 /) -XPIZA_LKT(93,16,1:6)=(/ 0.900,0.583709,0.605697,0.751790,0.808617,0.857191 /) -XCGA_LKT(93,16,1:6)=(/ 0.900,0.931700,0.922653,0.882487,0.878917,0.869600 /) -XEXT_COEFF_550_LKT(93,16)=4.113300 !rg=16.4566 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,17,1:6)=(/ 0.000000,3.415700,3.422500,3.433500,3.452300,3.487300 /) -XPIZA_LKT(93,17,1:6)=(/ 0.900,0.577254,0.596625,0.733879,0.793250,0.846897 /) -XCGA_LKT(93,17,1:6)=(/ 0.900,0.934883,0.926277,0.885803,0.881793,0.872100 /) -XEXT_COEFF_550_LKT(93,17)=3.422900 !rg=16.4566 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,18,1:6)=(/ 0.000000,0.000000,2.848400,2.855500,2.871600,2.897300 /) -XPIZA_LKT(93,18,1:6)=(/ 0.900,0.900,0.588706,0.716084,0.776646,0.835169 /) -XCGA_LKT(93,18,1:6)=(/ 0.900,0.900,0.929773,0.889260,0.884640,0.874760 /) -XEXT_COEFF_550_LKT(93,18)=2.847800 !rg=16.4566 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,19,1:6)=(/ 0.000000,0.000000,2.366200,2.372500,2.381700,2.400900 /) -XPIZA_LKT(93,19,1:6)=(/ 0.900,0.900,0.581558,0.698580,0.759082,0.821498 /) -XCGA_LKT(93,19,1:6)=(/ 0.900,0.900,0.933073,0.893113,0.887473,0.876490 /) -XEXT_COEFF_550_LKT(93,19)=2.365800 !rg=16.4566 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(93,20,1:6)=(/ 0.000000,0.000000,1.966700,1.971200,1.978900,1.993200 /) -XPIZA_LKT(93,20,1:6)=(/ 0.900,0.900,0.575305,0.681725,0.741253,0.806839 /) -XCGA_LKT(93,20,1:6)=(/ 0.900,0.900,0.936200,0.897077,0.890600,0.879137 /) -XEXT_COEFF_550_LKT(93,20)=0.000000 !rg=16.4566 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,1,1:6)=(/ 34.106000,34.325000,34.362000,34.877000,35.458000,37.678000 /) -XPIZA_LKT(94,1,1:6)=(/ 0.675023,0.720843,0.754795,0.890264,0.871234,0.934095 /) -XCGA_LKT(94,1,1:6)=(/ 0.902353,0.892447,0.885840,0.858617,0.861243,0.835743 /) -XEXT_COEFF_550_LKT(94,1)=34.364000 !rg=17.8284 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,2,1:6)=(/ 32.585000,32.794000,32.908000,33.284000,33.875000,34.584000 /) -XPIZA_LKT(94,2,1:6)=(/ 0.671221,0.716895,0.750815,0.887905,0.875266,0.932553 /) -XCGA_LKT(94,2,1:6)=(/ 0.902867,0.893573,0.886547,0.857240,0.862053,0.834193 /) -XEXT_COEFF_550_LKT(94,2)=32.910000 !rg=17.8284 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,3,1:6)=(/ 30.182000,30.276000,30.586000,30.855000,31.186000,32.334000 /) -XPIZA_LKT(94,3,1:6)=(/ 0.665277,0.710199,0.746586,0.884864,0.880967,0.926068 /) -XCGA_LKT(94,3,1:6)=(/ 0.904023,0.894220,0.887613,0.857343,0.861897,0.833723 /) -XEXT_COEFF_550_LKT(94,3)=30.601000 !rg=17.8284 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,4,1:6)=(/ 27.271000,27.378000,27.649000,27.838000,28.201000,29.143000 /) -XPIZA_LKT(94,4,1:6)=(/ 0.657789,0.702418,0.739658,0.881610,0.883986,0.920186 /) -XCGA_LKT(94,4,1:6)=(/ 0.905720,0.895833,0.889033,0.858313,0.861973,0.837003 /) -XEXT_COEFF_550_LKT(94,4)=27.621000 !rg=17.8284 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,5,1:6)=(/ 24.155000,24.292000,24.396000,24.652000,25.082000,25.790000 /) -XPIZA_LKT(94,5,1:6)=(/ 0.649011,0.693622,0.730261,0.877337,0.883759,0.913527 /) -XCGA_LKT(94,5,1:6)=(/ 0.907923,0.897893,0.890377,0.859700,0.860773,0.839783 /) -XEXT_COEFF_550_LKT(94,5)=24.373000 !rg=17.8284 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,6,1:6)=(/ 21.103000,21.190000,21.347000,21.468000,21.878000,22.450000 /) -XPIZA_LKT(94,6,1:6)=(/ 0.639906,0.682677,0.720735,0.871903,0.884924,0.908316 /) -XCGA_LKT(94,6,1:6)=(/ 0.910447,0.900067,0.892490,0.860657,0.862170,0.844960 /) -XEXT_COEFF_550_LKT(94,6)=21.308000 !rg=17.8284 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,7,1:6)=(/ 18.190000,18.266000,18.386000,18.488000,18.764000,19.217000 /) -XPIZA_LKT(94,7,1:6)=(/ 0.630197,0.671501,0.709517,0.865592,0.883608,0.902428 /) -XCGA_LKT(94,7,1:6)=(/ 0.913363,0.902663,0.894727,0.862160,0.863943,0.847763 /) -XEXT_COEFF_550_LKT(94,7)=18.368000 !rg=17.8284 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,8,1:6)=(/ 15.553000,15.612000,15.697000,15.767000,15.995000,16.359000 /) -XPIZA_LKT(94,8,1:6)=(/ 0.620510,0.659517,0.697115,0.857605,0.880223,0.898703 /) -XCGA_LKT(94,8,1:6)=(/ 0.916417,0.905547,0.897117,0.863957,0.865537,0.851953 /) -XEXT_COEFF_550_LKT(94,8)=15.676000 !rg=17.8284 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,9,1:6)=(/ 13.194000,13.247000,13.290000,13.395000,13.530000,13.861000 /) -XPIZA_LKT(94,9,1:6)=(/ 0.611087,0.647667,0.683923,0.848216,0.875740,0.894484 /) -XCGA_LKT(94,9,1:6)=(/ 0.919730,0.908790,0.899820,0.865977,0.865880,0.853270 /) -XEXT_COEFF_550_LKT(94,9)=13.294000 !rg=17.8284 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,10,1:6)=(/ 11.148000,11.185000,11.226000,11.300000,11.419000,11.639000 /) -XPIZA_LKT(94,10,1:6)=(/ 0.602224,0.635768,0.670975,0.837496,0.870095,0.891551 /) -XCGA_LKT(94,10,1:6)=(/ 0.923063,0.912083,0.902817,0.867963,0.867723,0.856687 /) -XEXT_COEFF_550_LKT(94,10)=11.232000 !rg=17.8284 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,11,1:6)=(/ 9.362900,9.391900,9.426400,9.469800,9.558200,9.731500 /) -XPIZA_LKT(94,11,1:6)=(/ 0.593891,0.624499,0.658061,0.824681,0.862815,0.887469 /) -XCGA_LKT(94,11,1:6)=(/ 0.926487,0.915593,0.906123,0.870033,0.869540,0.858763 /) -XEXT_COEFF_550_LKT(94,11)=9.422600 !rg=17.8284 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,12,1:6)=(/ 7.836000,7.857300,7.885000,7.928800,7.990100,8.123700 /) -XPIZA_LKT(94,12,1:6)=(/ 0.586331,0.613751,0.645161,0.810744,0.853947,0.883156 /) -XCGA_LKT(94,12,1:6)=(/ 0.929890,0.919237,0.909600,0.872670,0.871837,0.862113 /) -XEXT_COEFF_550_LKT(94,12)=7.889000 !rg=17.8284 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,13,1:6)=(/ 6.540200,6.557600,6.575500,6.605500,6.653900,6.756900 /) -XPIZA_LKT(94,13,1:6)=(/ 0.579620,0.603992,0.632709,0.795174,0.843084,0.877255 /) -XCGA_LKT(94,13,1:6)=(/ 0.933123,0.922930,0.913247,0.875030,0.873640,0.864317 /) -XEXT_COEFF_550_LKT(94,13)=6.576200 !rg=17.8284 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,14,1:6)=(/ 5.456900,5.469900,5.485400,5.503400,5.551400,5.627400 /) -XPIZA_LKT(94,14,1:6)=(/ 0.573764,0.595174,0.621466,0.778703,0.831317,0.870693 /) -XCGA_LKT(94,14,1:6)=(/ 0.936200,0.926523,0.916943,0.877643,0.876113,0.866520 /) -XEXT_COEFF_550_LKT(94,14)=5.486500 !rg=17.8284 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,15,1:6)=(/ 0.000000,4.557100,4.568700,4.586000,4.610200,4.665100 /) -XPIZA_LKT(94,15,1:6)=(/ 0.900,0.587295,0.610851,0.761691,0.817184,0.862188 /) -XCGA_LKT(94,15,1:6)=(/ 0.900,0.929997,0.920697,0.880720,0.878017,0.868040 /) -XEXT_COEFF_550_LKT(94,15)=4.567600 !rg=17.8284 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,16,1:6)=(/ 0.000000,3.787100,3.795400,3.808100,3.827700,3.870800 /) -XPIZA_LKT(94,16,1:6)=(/ 0.900,0.580263,0.601182,0.743611,0.801910,0.852637 /) -XCGA_LKT(94,16,1:6)=(/ 0.900,0.933317,0.924353,0.883937,0.880420,0.870477 /) -XEXT_COEFF_550_LKT(94,16)=3.794700 !rg=17.8284 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,17,1:6)=(/ 0.000000,3.152000,3.158200,3.166500,3.185600,3.217200 /) -XPIZA_LKT(94,17,1:6)=(/ 0.900,0.574269,0.592599,0.725669,0.786007,0.841994 /) -XCGA_LKT(94,17,1:6)=(/ 0.900,0.936400,0.927950,0.887333,0.883220,0.873530 /) -XEXT_COEFF_550_LKT(94,17)=3.158600 !rg=17.8284 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,18,1:6)=(/ 0.000000,0.000000,2.628100,2.635000,2.646700,2.667000 /) -XPIZA_LKT(94,18,1:6)=(/ 0.900,0.900,0.585091,0.708165,0.768939,0.828997 /) -XCGA_LKT(94,18,1:6)=(/ 0.900,0.900,0.931363,0.890967,0.885933,0.875117 /) -XEXT_COEFF_550_LKT(94,18)=2.627500 !rg=17.8284 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,19,1:6)=(/ 0.000000,0.000000,2.183400,2.187900,2.197500,2.214400 /) -XPIZA_LKT(94,19,1:6)=(/ 0.900,0.900,0.578370,0.690717,0.751146,0.815071 /) -XCGA_LKT(94,19,1:6)=(/ 0.900,0.900,0.934610,0.894807,0.888833,0.877463 /) -XEXT_COEFF_550_LKT(94,19)=2.182900 !rg=17.8284 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(94,20,1:6)=(/ 0.000000,0.000000,0.000000,1.818400,1.826000,1.839800 /) -XPIZA_LKT(94,20,1:6)=(/ 0.900,0.900,0.900,0.674164,0.733394,0.800154 /) -XCGA_LKT(94,20,1:6)=(/ 0.900,0.900,0.900,0.898920,0.892233,0.880450 /) -XEXT_COEFF_550_LKT(94,20)=0.000000 !rg=17.8284 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,1,1:6)=(/ 31.303000,31.603000,31.656000,31.684000,32.339000,33.635000 /) -XPIZA_LKT(95,1,1:6)=(/ 0.666339,0.713413,0.747991,0.887778,0.862005,0.926199 /) -XCGA_LKT(95,1,1:6)=(/ 0.903757,0.894873,0.886507,0.857707,0.865080,0.829387 /) -XEXT_COEFF_550_LKT(95,1)=31.342000 !rg=19.3145 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,2,1:6)=(/ 30.016000,30.174000,30.497000,30.619000,31.335000,32.139000 /) -XPIZA_LKT(95,2,1:6)=(/ 0.662946,0.709479,0.746376,0.886564,0.873934,0.927228 /) -XCGA_LKT(95,2,1:6)=(/ 0.904463,0.894653,0.888113,0.858617,0.864033,0.835853 /) -XEXT_COEFF_550_LKT(95,2)=30.321000 !rg=19.3145 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,3,1:6)=(/ 27.817000,28.004000,28.066000,28.398000,28.906000,29.789000 /) -XPIZA_LKT(95,3,1:6)=(/ 0.657330,0.703430,0.739426,0.883521,0.878845,0.920839 /) -XCGA_LKT(95,3,1:6)=(/ 0.905730,0.896140,0.888270,0.858410,0.863213,0.835703 /) -XEXT_COEFF_550_LKT(95,3)=28.161000 !rg=19.3145 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,4,1:6)=(/ 25.142000,25.296000,25.373000,25.661000,26.113000,26.892000 /) -XPIZA_LKT(95,4,1:6)=(/ 0.650087,0.695585,0.732450,0.879639,0.882169,0.914394 /) -XCGA_LKT(95,4,1:6)=(/ 0.907533,0.897580,0.889597,0.859567,0.862717,0.838950 /) -XEXT_COEFF_550_LKT(95,4)=25.442000 !rg=19.3145 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,5,1:6)=(/ 22.290000,22.374000,22.544000,22.690000,22.975000,23.639000 /) -XPIZA_LKT(95,5,1:6)=(/ 0.642067,0.685780,0.724565,0.874823,0.884581,0.908888 /) -XCGA_LKT(95,5,1:6)=(/ 0.909750,0.899357,0.891723,0.860337,0.863117,0.843880 /) -XEXT_COEFF_550_LKT(95,5)=22.554000 !rg=19.3145 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,6,1:6)=(/ 19.460000,19.548000,19.640000,19.886000,20.074000,20.652000 /) -XPIZA_LKT(95,6,1:6)=(/ 0.632943,0.675552,0.713669,0.869326,0.883511,0.904264 /) -XCGA_LKT(95,6,1:6)=(/ 0.912327,0.901680,0.893480,0.862110,0.862893,0.846957 /) -XEXT_COEFF_550_LKT(95,6)=19.663000 !rg=19.3145 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,7,1:6)=(/ 16.774000,16.842000,16.923000,17.065000,17.269000,17.766000 /) -XPIZA_LKT(95,7,1:6)=(/ 0.623782,0.664192,0.702528,0.861980,0.881652,0.898831 /) -XCGA_LKT(95,7,1:6)=(/ 0.915183,0.904377,0.895720,0.863857,0.865060,0.849417 /) -XEXT_COEFF_550_LKT(95,7)=16.934000 !rg=19.3145 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,8,1:6)=(/ 14.347000,14.397000,14.465000,14.570000,14.749000,15.050000 /) -XPIZA_LKT(95,8,1:6)=(/ 0.614684,0.652512,0.690163,0.853531,0.878690,0.896435 /) -XCGA_LKT(95,8,1:6)=(/ 0.918287,0.907240,0.898430,0.865657,0.866250,0.853440 /) -XEXT_COEFF_550_LKT(95,8)=14.474000 !rg=19.3145 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,9,1:6)=(/ 12.173000,12.213000,12.274000,12.335000,12.474000,12.706000 /) -XPIZA_LKT(95,9,1:6)=(/ 0.605759,0.640815,0.677625,0.843126,0.873944,0.893004 /) -XCGA_LKT(95,9,1:6)=(/ 0.921610,0.910577,0.901437,0.866983,0.867877,0.856160 /) -XEXT_COEFF_550_LKT(95,9)=12.269000 !rg=19.3145 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,10,1:6)=(/ 10.286000,10.321000,10.360000,10.398000,10.496000,10.705000 /) -XPIZA_LKT(95,10,1:6)=(/ 0.597442,0.629662,0.664455,0.831395,0.867067,0.889325 /) -XCGA_LKT(95,10,1:6)=(/ 0.924897,0.913930,0.904467,0.868680,0.869013,0.858513 /) -XEXT_COEFF_550_LKT(95,10)=10.357000 !rg=19.3145 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,11,1:6)=(/ 8.639500,8.663200,8.695000,8.742400,8.836200,8.978200 /) -XPIZA_LKT(95,11,1:6)=(/ 0.589638,0.618748,0.651534,0.818511,0.859028,0.885187 /) -XCGA_LKT(95,11,1:6)=(/ 0.928277,0.917413,0.907790,0.871250,0.870793,0.860817 /) -XEXT_COEFF_550_LKT(95,11)=8.699700 !rg=19.3145 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,12,1:6)=(/ 7.230100,7.250200,7.270600,7.305000,7.362800,7.476700 /) -XPIZA_LKT(95,12,1:6)=(/ 0.582589,0.608665,0.638779,0.803801,0.849366,0.880484 /) -XCGA_LKT(95,12,1:6)=(/ 0.931567,0.921083,0.911327,0.873690,0.872920,0.863413 /) -XEXT_COEFF_550_LKT(95,12)=7.271600 !rg=19.3145 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,13,1:6)=(/ 6.035400,6.050100,6.068100,6.087600,6.143300,6.227200 /) -XPIZA_LKT(95,13,1:6)=(/ 0.576381,0.599291,0.627079,0.787639,0.838242,0.874476 /) -XCGA_LKT(95,13,1:6)=(/ 0.934727,0.924753,0.915037,0.876203,0.875103,0.865857 /) -XEXT_COEFF_550_LKT(95,13)=6.068300 !rg=19.3145 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,14,1:6)=(/ 5.035300,5.046800,5.060200,5.081000,5.105500,5.166600 /) -XPIZA_LKT(95,14,1:6)=(/ 0.570956,0.591008,0.616066,0.771061,0.824662,0.866786 /) -XCGA_LKT(95,14,1:6)=(/ 0.937653,0.928250,0.918760,0.879157,0.876487,0.866963 /) -XEXT_COEFF_550_LKT(95,14)=5.058100 !rg=19.3145 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,15,1:6)=(/ 0.000000,4.204400,4.215100,4.228400,4.251600,4.299500 /) -XPIZA_LKT(95,15,1:6)=(/ 0.900,0.583631,0.606008,0.753375,0.810550,0.858436 /) -XCGA_LKT(95,15,1:6)=(/ 0.900,0.931603,0.922477,0.882183,0.878973,0.869823 /) -XEXT_COEFF_550_LKT(95,15)=4.213300 !rg=19.3145 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,16,1:6)=(/ 0.000000,3.494500,3.501900,3.512800,3.533400,3.568900 /) -XPIZA_LKT(95,16,1:6)=(/ 0.900,0.577066,0.596773,0.735417,0.795061,0.848437 /) -XCGA_LKT(95,16,1:6)=(/ 0.900,0.934853,0.926120,0.885510,0.881727,0.872497 /) -XEXT_COEFF_550_LKT(95,16)=3.502200 !rg=19.3145 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,17,1:6)=(/ 0.000000,0.000000,2.914100,2.922300,2.934600,2.958800 /) -XPIZA_LKT(95,17,1:6)=(/ 0.900,0.900,0.588739,0.717577,0.778354,0.836321 /) -XCGA_LKT(95,17,1:6)=(/ 0.900,0.900,0.929630,0.889000,0.884317,0.874313 /) -XEXT_COEFF_550_LKT(95,17)=2.913500 !rg=19.3145 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,18,1:6)=(/ 0.000000,0.000000,2.425000,2.430600,2.440500,2.459600 /) -XPIZA_LKT(95,18,1:6)=(/ 0.900,0.900,0.581682,0.700061,0.760979,0.823260 /) -XCGA_LKT(95,18,1:6)=(/ 0.900,0.900,0.932923,0.892673,0.887207,0.876537 /) -XEXT_COEFF_550_LKT(95,18)=2.424200 !rg=19.3145 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,19,1:6)=(/ 0.000000,0.000000,2.014600,2.019000,2.027400,2.042000 /) -XPIZA_LKT(95,19,1:6)=(/ 0.900,0.900,0.575408,0.683069,0.743324,0.808939 /) -XCGA_LKT(95,19,1:6)=(/ 0.900,0.900,0.936043,0.896693,0.890533,0.879180 /) -XEXT_COEFF_550_LKT(95,19)=2.014600 !rg=19.3145 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(95,20,1:6)=(/ 0.000000,0.000000,0.000000,1.678300,1.684000,1.693900 /) -XPIZA_LKT(95,20,1:6)=(/ 0.900,0.900,0.900,0.667020,0.725198,0.792918 /) -XCGA_LKT(95,20,1:6)=(/ 0.900,0.900,0.900,0.900807,0.893517,0.881467 /) -XEXT_COEFF_550_LKT(95,20)=0.000000 !rg=19.3145 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,1,1:6)=(/ 28.781000,28.957000,29.243000,29.824000,30.094000,30.629000 /) -XPIZA_LKT(96,1,1:6)=(/ 0.657201,0.704540,0.742826,0.886452,0.865611,0.922810 /) -XCGA_LKT(96,1,1:6)=(/ 0.905170,0.895800,0.888413,0.858210,0.867473,0.832000 /) -XEXT_COEFF_550_LKT(96,1)=29.679000 !rg=20.9245 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,2,1:6)=(/ 27.646000,27.793000,27.904000,28.301000,28.686000,29.738000 /) -XPIZA_LKT(96,2,1:6)=(/ 0.654698,0.701696,0.738663,0.884713,0.874103,0.921754 /) -XCGA_LKT(96,2,1:6)=(/ 0.906087,0.895990,0.888333,0.858043,0.864420,0.838807 /) -XEXT_COEFF_550_LKT(96,2)=28.070000 !rg=20.9245 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,3,1:6)=(/ 25.639000,25.786000,26.040000,26.139000,26.445000,27.217000 /) -XPIZA_LKT(96,3,1:6)=(/ 0.649369,0.695640,0.734847,0.881583,0.880914,0.915586 /) -XCGA_LKT(96,3,1:6)=(/ 0.907427,0.897413,0.890333,0.859977,0.864340,0.840247 /) -XEXT_COEFF_550_LKT(96,3)=25.917000 !rg=20.9245 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,4,1:6)=(/ 23.188000,23.317000,23.499000,23.567000,23.893000,24.547000 /) -XPIZA_LKT(96,4,1:6)=(/ 0.642696,0.687819,0.727198,0.877433,0.883243,0.909260 /) -XCGA_LKT(96,4,1:6)=(/ 0.909267,0.899140,0.891490,0.860807,0.863450,0.843233 /) -XEXT_COEFF_550_LKT(96,4)=23.402000 !rg=20.9245 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,5,1:6)=(/ 20.554000,20.664000,20.725000,20.980000,21.277000,21.821000 /) -XPIZA_LKT(96,5,1:6)=(/ 0.634937,0.678621,0.716993,0.872216,0.883669,0.903260 /) -XCGA_LKT(96,5,1:6)=(/ 0.911610,0.901167,0.892720,0.861787,0.864337,0.846187 /) -XEXT_COEFF_550_LKT(96,5)=20.752000 !rg=20.9245 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,6,1:6)=(/ 17.948000,18.030000,18.130000,18.251000,18.529000,19.009000 /) -XPIZA_LKT(96,6,1:6)=(/ 0.626348,0.668049,0.707365,0.865739,0.882667,0.899866 /) -XCGA_LKT(96,6,1:6)=(/ 0.914167,0.903447,0.894990,0.862993,0.864060,0.848903 /) -XEXT_COEFF_550_LKT(96,6)=18.103000 !rg=20.9245 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,7,1:6)=(/ 15.473000,15.534000,15.605000,15.687000,15.883000,16.239000 /) -XPIZA_LKT(96,7,1:6)=(/ 0.617563,0.657066,0.695474,0.857678,0.880101,0.896101 /) -XCGA_LKT(96,7,1:6)=(/ 0.917100,0.906093,0.897357,0.864340,0.865280,0.851850 /) -XEXT_COEFF_550_LKT(96,7)=15.590000 !rg=20.9245 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,8,1:6)=(/ 13.234000,13.286000,13.335000,13.437000,13.568000,13.879000 /) -XPIZA_LKT(96,8,1:6)=(/ 0.608982,0.645804,0.683074,0.848755,0.876149,0.893684 /) -XCGA_LKT(96,8,1:6)=(/ 0.920203,0.909130,0.899890,0.866527,0.867293,0.855527 /) -XEXT_COEFF_550_LKT(96,8)=13.334000 !rg=20.9245 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,9,1:6)=(/ 11.229000,11.271000,11.308000,11.408000,11.497000,11.736000 /) -XPIZA_LKT(96,9,1:6)=(/ 0.600615,0.634588,0.670267,0.838084,0.870576,0.890138 /) -XCGA_LKT(96,9,1:6)=(/ 0.923470,0.912397,0.902970,0.868410,0.868017,0.857970 /) -XEXT_COEFF_550_LKT(96,9)=11.310000 !rg=20.9245 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,10,1:6)=(/ 9.490500,9.520700,9.558800,9.605000,9.712500,9.858200 /) -XPIZA_LKT(96,10,1:6)=(/ 0.592887,0.623748,0.657815,0.825422,0.863654,0.887170 /) -XCGA_LKT(96,10,1:6)=(/ 0.926720,0.915753,0.906213,0.870173,0.869757,0.860577 /) -XEXT_COEFF_550_LKT(96,10)=9.556800 !rg=20.9245 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,11,1:6)=(/ 7.972100,7.993900,8.018100,8.060500,8.135000,8.268000 /) -XPIZA_LKT(96,11,1:6)=(/ 0.585688,0.613345,0.645054,0.811753,0.854694,0.883011 /) -XCGA_LKT(96,11,1:6)=(/ 0.929993,0.919273,0.909490,0.872543,0.871353,0.862230 /) -XEXT_COEFF_550_LKT(96,11)=8.016400 !rg=20.9245 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,12,1:6)=(/ 6.671700,6.689100,6.709400,6.735700,6.800600,6.898300 /) -XPIZA_LKT(96,12,1:6)=(/ 0.579095,0.603669,0.632968,0.796449,0.844721,0.877486 /) -XCGA_LKT(96,12,1:6)=(/ 0.933217,0.922910,0.913150,0.874860,0.873863,0.864330 /) -XEXT_COEFF_550_LKT(96,12)=6.710600 !rg=20.9245 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,13,1:6)=(/ 5.568800,5.582200,5.597400,5.624400,5.644100,5.715200 /) -XPIZA_LKT(96,13,1:6)=(/ 0.573297,0.594909,0.621415,0.780399,0.832101,0.870647 /) -XCGA_LKT(96,13,1:6)=(/ 0.936273,0.926487,0.916880,0.877723,0.875447,0.865927 /) -XEXT_COEFF_550_LKT(96,13)=5.596900 !rg=20.9245 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,14,1:6)=(/ 0.000000,4.656100,4.668700,4.682400,4.710600,4.769600 /) -XPIZA_LKT(96,14,1:6)=(/ 0.900,0.587081,0.610961,0.762876,0.818835,0.863303 /) -XCGA_LKT(96,14,1:6)=(/ 0.900,0.929897,0.920567,0.880570,0.878293,0.868997 /) -XEXT_COEFF_550_LKT(96,14)=4.666200 !rg=20.9245 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,15,1:6)=(/ 0.000000,3.879400,3.888100,3.901700,3.922800,3.965600 /) -XPIZA_LKT(96,15,1:6)=(/ 0.900,0.580170,0.601331,0.745397,0.803817,0.854000 /) -XCGA_LKT(96,15,1:6)=(/ 0.900,0.933200,0.924183,0.883657,0.879877,0.870827 /) -XEXT_COEFF_550_LKT(96,15)=3.888100 !rg=20.9245 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,16,1:6)=(/ 0.000000,3.224700,3.231000,3.240100,3.256800,3.287400 /) -XPIZA_LKT(96,16,1:6)=(/ 0.900,0.574123,0.592622,0.727194,0.787580,0.843127 /) -XCGA_LKT(96,16,1:6)=(/ 0.900,0.936330,0.927813,0.887037,0.882733,0.872997 /) -XEXT_COEFF_550_LKT(96,16)=3.230400 !rg=20.9245 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,17,1:6)=(/ 0.000000,0.000000,2.689000,2.695200,2.708700,2.732800 /) -XPIZA_LKT(96,17,1:6)=(/ 0.900,0.900,0.585140,0.709413,0.770578,0.830792 /) -XCGA_LKT(96,17,1:6)=(/ 0.900,0.900,0.931230,0.890633,0.885510,0.875370 /) -XEXT_COEFF_550_LKT(96,17)=2.688100 !rg=20.9245 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,18,1:6)=(/ 0.000000,0.000000,2.237400,2.243100,2.251900,2.269800 /) -XPIZA_LKT(96,18,1:6)=(/ 0.900,0.900,0.578450,0.692342,0.753124,0.816926 /) -XCGA_LKT(96,18,1:6)=(/ 0.900,0.900,0.934440,0.894500,0.888463,0.877417 /) -XEXT_COEFF_550_LKT(96,18)=2.237000 !rg=20.9245 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,19,1:6)=(/ 0.000000,0.000000,0.000000,1.862900,1.869500,1.881600 /) -XPIZA_LKT(96,19,1:6)=(/ 0.900,0.900,0.900,0.675591,0.735051,0.801841 /) -XCGA_LKT(96,19,1:6)=(/ 0.900,0.900,0.900,0.898507,0.891747,0.879957 /) -XEXT_COEFF_550_LKT(96,19)=0.000000 !rg=20.9245 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(96,20,1:6)=(/ 0.000000,0.000000,0.000000,1.548400,1.553600,1.563500 /) -XPIZA_LKT(96,20,1:6)=(/ 0.900,0.900,0.900,0.659858,0.717186,0.785783 /) -XCGA_LKT(96,20,1:6)=(/ 0.900,0.900,0.900,0.902737,0.895133,0.882873 /) -XEXT_COEFF_550_LKT(96,20)=0.000000 !rg=20.9245 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,1,1:6)=(/ 26.588000,26.632000,26.860000,27.202000,27.567000,28.750000 /) -XPIZA_LKT(97,1,1:6)=(/ 0.650027,0.695955,0.735528,0.883836,0.878720,0.920984 /) -XCGA_LKT(97,1,1:6)=(/ 0.906587,0.896570,0.889700,0.860387,0.865810,0.842993 /) -XEXT_COEFF_550_LKT(97,1)=26.812000 !rg=22.6687 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,2,1:6)=(/ 25.507000,25.638000,25.894000,26.130000,26.525000,27.275000 /) -XPIZA_LKT(97,2,1:6)=(/ 0.646896,0.693682,0.734075,0.881628,0.880093,0.915774 /) -XCGA_LKT(97,2,1:6)=(/ 0.907873,0.897733,0.890330,0.859663,0.864847,0.838803 /) -XEXT_COEFF_550_LKT(97,2)=25.694000 !rg=22.6687 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,3,1:6)=(/ 23.662000,23.785000,23.927000,24.123000,24.438000,25.067000 /) -XPIZA_LKT(97,3,1:6)=(/ 0.642060,0.688049,0.727364,0.878851,0.882350,0.909977 /) -XCGA_LKT(97,3,1:6)=(/ 0.909297,0.898943,0.891187,0.860260,0.864523,0.844173 /) -XEXT_COEFF_550_LKT(97,3)=23.988000 !rg=22.6687 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,4,1:6)=(/ 21.396000,21.478000,21.628000,21.784000,22.071000,22.635000 /) -XPIZA_LKT(97,4,1:6)=(/ 0.635531,0.679714,0.719926,0.874452,0.883504,0.903369 /) -XCGA_LKT(97,4,1:6)=(/ 0.911270,0.900723,0.892707,0.861107,0.863910,0.846623 /) -XEXT_COEFF_550_LKT(97,4)=21.668000 !rg=22.6687 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,5,1:6)=(/ 18.955000,19.039000,19.181000,19.254000,19.481000,19.924000 /) -XPIZA_LKT(97,5,1:6)=(/ 0.627997,0.670921,0.711037,0.868599,0.883598,0.899567 /) -XCGA_LKT(97,5,1:6)=(/ 0.913463,0.902703,0.894610,0.862523,0.864683,0.850050 /) -XEXT_COEFF_550_LKT(97,5)=19.132000 !rg=22.6687 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,6,1:6)=(/ 16.563000,16.630000,16.713000,16.813000,17.040000,17.431000 /) -XPIZA_LKT(97,6,1:6)=(/ 0.620133,0.660728,0.700044,0.861561,0.881678,0.896312 /) -XCGA_LKT(97,6,1:6)=(/ 0.916100,0.905193,0.896510,0.863867,0.865110,0.852667 /) -XEXT_COEFF_550_LKT(97,6)=16.723000 !rg=22.6687 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,7,1:6)=(/ 14.277000,14.327000,14.391000,14.499000,14.678000,14.981000 /) -XPIZA_LKT(97,7,1:6)=(/ 0.611770,0.650025,0.688433,0.853408,0.878236,0.893066 /) -XCGA_LKT(97,7,1:6)=(/ 0.919047,0.907823,0.898833,0.865437,0.866430,0.854627 /) -XEXT_COEFF_550_LKT(97,7)=14.412000 !rg=22.6687 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,8,1:6)=(/ 12.212000,12.253000,12.309000,12.357000,12.523000,12.765000 /) -XPIZA_LKT(97,8,1:6)=(/ 0.603721,0.639132,0.676316,0.843311,0.873989,0.890947 /) -XCGA_LKT(97,8,1:6)=(/ 0.922097,0.910917,0.901670,0.866977,0.868167,0.857283 /) -XEXT_COEFF_550_LKT(97,8)=12.312000 !rg=22.6687 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,9,1:6)=(/ 10.360000,10.393000,10.442000,10.481000,10.587000,10.764000 /) -XPIZA_LKT(97,9,1:6)=(/ 0.595803,0.628188,0.663825,0.831911,0.867768,0.888465 /) -XCGA_LKT(97,9,1:6)=(/ 0.925317,0.914223,0.904747,0.869047,0.869303,0.859440 /) -XEXT_COEFF_550_LKT(97,9)=10.430000 !rg=22.6687 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,10,1:6)=(/ 8.756200,8.783900,8.814000,8.864500,8.931000,9.082600 /) -XPIZA_LKT(97,10,1:6)=(/ 0.588589,0.618004,0.651226,0.819419,0.859661,0.884930 /) -XCGA_LKT(97,10,1:6)=(/ 0.928507,0.917623,0.907863,0.871420,0.870493,0.861250 /) -XEXT_COEFF_550_LKT(97,10)=8.806900 !rg=22.6687 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,11,1:6)=(/ 7.355400,7.375300,7.399200,7.428300,7.503600,7.616500 /) -XPIZA_LKT(97,11,1:6)=(/ 0.581866,0.608020,0.638937,0.804731,0.850669,0.880737 /) -XCGA_LKT(97,11,1:6)=(/ 0.931720,0.921163,0.911293,0.873560,0.873217,0.863873 /) -XEXT_COEFF_550_LKT(97,11)=7.398300 !rg=22.6687 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,12,1:6)=(/ 6.156200,6.171800,6.188800,6.217200,6.250600,6.340700 /) -XPIZA_LKT(97,12,1:6)=(/ 0.575814,0.598943,0.627048,0.789280,0.838978,0.874495 /) -XCGA_LKT(97,12,1:6)=(/ 0.934803,0.924720,0.914927,0.876280,0.874437,0.865123 /) -XEXT_COEFF_550_LKT(97,12)=6.186600 !rg=22.6687 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,13,1:6)=(/ 5.138800,5.149700,5.164400,5.184200,5.217700,5.282700 /) -XPIZA_LKT(97,13,1:6)=(/ 0.570486,0.590651,0.616090,0.772336,0.826598,0.867982 /) -XCGA_LKT(97,13,1:6)=(/ 0.937747,0.928200,0.918683,0.879060,0.877203,0.868427 /) -XEXT_COEFF_550_LKT(97,13)=5.161500 !rg=22.6687 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,14,1:6)=(/ 0.000000,4.296000,4.306400,4.323100,4.347100,4.398100 /) -XPIZA_LKT(97,14,1:6)=(/ 0.900,0.583345,0.606008,0.755106,0.812336,0.859505 /) -XCGA_LKT(97,14,1:6)=(/ 0.900,0.931560,0.922290,0.882107,0.879190,0.869893 /) -XEXT_COEFF_550_LKT(97,14)=4.305800 !rg=22.6687 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,15,1:6)=(/ 0.000000,3.580000,3.587200,3.598000,3.614200,3.648200 /) -XPIZA_LKT(97,15,1:6)=(/ 0.900,0.576975,0.596876,0.737067,0.796626,0.849258 /) -XCGA_LKT(97,15,1:6)=(/ 0.900,0.934770,0.925930,0.885177,0.881403,0.871627 /) -XEXT_COEFF_550_LKT(97,15)=3.587000 !rg=22.6687 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,16,1:6)=(/ 0.000000,0.000000,2.981500,2.989200,3.006400,3.033300 /) -XPIZA_LKT(97,16,1:6)=(/ 0.900,0.900,0.588778,0.719001,0.780270,0.837948 /) -XCGA_LKT(97,16,1:6)=(/ 0.900,0.900,0.929483,0.888717,0.884233,0.874307 /) -XEXT_COEFF_550_LKT(97,16)=2.981000 !rg=22.6687 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,17,1:6)=(/ 0.000000,0.000000,2.480800,2.488000,2.497300,2.517500 /) -XPIZA_LKT(97,17,1:6)=(/ 0.900,0.900,0.581614,0.701568,0.762665,0.824847 /) -XCGA_LKT(97,17,1:6)=(/ 0.900,0.900,0.932807,0.892437,0.886807,0.876133 /) -XEXT_COEFF_550_LKT(97,17)=2.480500 !rg=22.6687 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,18,1:6)=(/ 0.000000,0.000000,2.064600,2.068800,2.076800,2.090000 /) -XPIZA_LKT(97,18,1:6)=(/ 0.900,0.900,0.575470,0.684479,0.745103,0.810367 /) -XCGA_LKT(97,18,1:6)=(/ 0.900,0.900,0.935897,0.896257,0.889963,0.878673 /) -XEXT_COEFF_550_LKT(97,18)=2.064300 !rg=22.6687 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,19,1:6)=(/ 0.000000,0.000000,0.000000,1.718900,1.725500,1.736800 /) -XPIZA_LKT(97,19,1:6)=(/ 0.900,0.900,0.900,0.668227,0.727157,0.795033 /) -XCGA_LKT(97,19,1:6)=(/ 0.900,0.900,0.900,0.900440,0.893397,0.881387 /) -XEXT_COEFF_550_LKT(97,19)=0.000000 !rg=22.6687 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(97,20,1:6)=(/ 0.000000,0.000000,0.000000,1.428900,1.433000,1.441200 /) -XPIZA_LKT(97,20,1:6)=(/ 0.900,0.900,0.900,0.653004,0.709204,0.778351 /) -XCGA_LKT(97,20,1:6)=(/ 0.900,0.900,0.900,0.904690,0.896753,0.883963 /) -XEXT_COEFF_550_LKT(97,20)=0.000000 !rg=22.6687 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,1,1:6)=(/ 24.558000,24.732000,24.876000,24.877000,25.296000,26.332000 /) -XPIZA_LKT(98,1,1:6)=(/ 0.642210,0.689813,0.730140,0.880403,0.886410,0.912463 /) -XCGA_LKT(98,1,1:6)=(/ 0.908480,0.898147,0.891077,0.858863,0.863940,0.844343 /) -XEXT_COEFF_550_LKT(98,1)=24.732000 !rg=24.5583 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,2,1:6)=(/ 23.552000,23.686000,23.850000,23.979000,24.301000,24.803000 /) -XPIZA_LKT(98,2,1:6)=(/ 0.639673,0.686505,0.727052,0.878564,0.883944,0.910771 /) -XCGA_LKT(98,2,1:6)=(/ 0.909720,0.899267,0.891763,0.860230,0.862403,0.846020 /) -XEXT_COEFF_550_LKT(98,2)=23.880000 !rg=24.5583 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,3,1:6)=(/ 21.843000,21.938000,22.018000,22.249000,22.479000,23.208000 /) -XPIZA_LKT(98,3,1:6)=(/ 0.635003,0.680368,0.720287,0.875655,0.883483,0.903506 /) -XCGA_LKT(98,3,1:6)=(/ 0.911320,0.900657,0.892333,0.861270,0.862977,0.847943 /) -XEXT_COEFF_550_LKT(98,3)=21.998000 !rg=24.5583 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,4,1:6)=(/ 19.738000,19.831000,19.904000,20.102000,20.387000,20.899000 /) -XPIZA_LKT(98,4,1:6)=(/ 0.628596,0.672743,0.712365,0.870996,0.883121,0.898323 /) -XCGA_LKT(98,4,1:6)=(/ 0.913210,0.902343,0.893947,0.862180,0.863533,0.850223 /) -XEXT_COEFF_550_LKT(98,4)=19.889000 !rg=24.5583 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,5,1:6)=(/ 17.489000,17.554000,17.650000,17.788000,17.986000,18.387000 /) -XPIZA_LKT(98,5,1:6)=(/ 0.621440,0.663226,0.703442,0.864884,0.882689,0.895324 /) -XCGA_LKT(98,5,1:6)=(/ 0.915457,0.904400,0.895777,0.863567,0.865020,0.852383 /) -XEXT_COEFF_550_LKT(98,5)=17.677000 !rg=24.5583 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,6,1:6)=(/ 15.282000,15.342000,15.405000,15.523000,15.658000,15.959000 /) -XPIZA_LKT(98,6,1:6)=(/ 0.614145,0.653641,0.692709,0.857619,0.880314,0.893308 /) -XCGA_LKT(98,6,1:6)=(/ 0.918057,0.906900,0.897937,0.864503,0.866527,0.855663 /) -XEXT_COEFF_550_LKT(98,6)=15.394000 !rg=24.5583 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,7,1:6)=(/ 13.174000,13.220000,13.268000,13.367000,13.512000,13.792000 /) -XPIZA_LKT(98,7,1:6)=(/ 0.606324,0.643183,0.681134,0.848486,0.876042,0.891416 /) -XCGA_LKT(98,7,1:6)=(/ 0.920950,0.909687,0.900380,0.866653,0.866450,0.857030 /) -XEXT_COEFF_550_LKT(98,7)=13.261000 !rg=24.5583 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,8,1:6)=(/ 11.266000,11.305000,11.344000,11.437000,11.494000,11.713000 /) -XPIZA_LKT(98,8,1:6)=(/ 0.598612,0.632599,0.669110,0.838247,0.870561,0.888849 /) -XCGA_LKT(98,8,1:6)=(/ 0.923993,0.912800,0.903183,0.868613,0.867863,0.858523 /) -XEXT_COEFF_550_LKT(98,8)=11.343000 !rg=24.5583 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,9,1:6)=(/ 9.559300,9.586700,9.621700,9.679300,9.762100,9.924900 /) -XPIZA_LKT(98,9,1:6)=(/ 0.591346,0.622176,0.656664,0.825902,0.864142,0.886265 /) -XCGA_LKT(98,9,1:6)=(/ 0.927103,0.916020,0.906370,0.870377,0.870183,0.860633 /) -XEXT_COEFF_550_LKT(98,9)=9.622300 !rg=24.5583 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,10,1:6)=(/ 8.079300,8.101100,8.132700,8.159400,8.237200,8.358200 /) -XPIZA_LKT(98,10,1:6)=(/ 0.584576,0.612360,0.644794,0.812422,0.855630,0.882927 /) -XCGA_LKT(98,10,1:6)=(/ 0.930257,0.919450,0.909680,0.872077,0.872110,0.863617 /) -XEXT_COEFF_550_LKT(98,10)=8.124200 !rg=24.5583 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,11,1:6)=(/ 6.786800,6.804100,6.824700,6.862300,6.895900,7.006500 /) -XPIZA_LKT(98,11,1:6)=(/ 0.578334,0.603012,0.632666,0.797871,0.845431,0.877670 /) -XCGA_LKT(98,11,1:6)=(/ 0.933373,0.922987,0.913113,0.875033,0.874087,0.864887 /) -XEXT_COEFF_550_LKT(98,11)=6.823700 !rg=24.5583 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,12,1:6)=(/ 5.680900,5.693700,5.710600,5.727900,5.769600,5.848100 /) -XPIZA_LKT(98,12,1:6)=(/ 0.572792,0.594447,0.621403,0.781500,0.833698,0.871430 /) -XCGA_LKT(98,12,1:6)=(/ 0.936350,0.926473,0.916777,0.877453,0.875977,0.866963 /) -XEXT_COEFF_550_LKT(98,12)=5.706600 !rg=24.5583 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,13,1:6)=(/ 0.000000,4.751500,4.763100,4.780600,4.807200,4.866000 /) -XPIZA_LKT(98,13,1:6)=(/ 0.900,0.586671,0.610768,0.764318,0.820330,0.864402 /) -XCGA_LKT(98,13,1:6)=(/ 0.900,0.929913,0.920437,0.880420,0.878030,0.869240 /) -XEXT_COEFF_550_LKT(98,13)=4.762800 !rg=24.5583 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,14,1:6)=(/ 0.000000,3.964200,3.972800,3.986900,4.007600,4.050400 /) -XPIZA_LKT(98,14,1:6)=(/ 0.900,0.579892,0.601227,0.746754,0.805407,0.855074 /) -XCGA_LKT(98,14,1:6)=(/ 0.900,0.933190,0.924083,0.883457,0.880067,0.871097 /) -XEXT_COEFF_550_LKT(98,14)=3.973000 !rg=24.5583 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,15,1:6)=(/ 0.000000,3.303300,3.310300,3.319300,3.339200,3.371900 /) -XPIZA_LKT(98,15,1:6)=(/ 0.900,0.573956,0.592746,0.728811,0.789585,0.844694 /) -XCGA_LKT(98,15,1:6)=(/ 0.900,0.936267,0.927670,0.886830,0.882783,0.873440 /) -XEXT_COEFF_550_LKT(98,15)=3.309600 !rg=24.5583 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,16,1:6)=(/ 0.000000,0.000000,2.750800,2.758400,2.768600,2.791100 /) -XPIZA_LKT(98,16,1:6)=(/ 0.900,0.900,0.585039,0.710930,0.772226,0.832019 /) -XCGA_LKT(98,16,1:6)=(/ 0.900,0.900,0.931117,0.890433,0.885263,0.874877 /) -XEXT_COEFF_550_LKT(98,16)=2.750300 !rg=24.5583 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,17,1:6)=(/ 0.000000,0.000000,2.289300,2.294400,2.304300,2.321500 /) -XPIZA_LKT(98,17,1:6)=(/ 0.900,0.900,0.578430,0.693490,0.754860,0.818636 /) -XCGA_LKT(98,17,1:6)=(/ 0.900,0.900,0.934337,0.894183,0.888247,0.877313 /) -XEXT_COEFF_550_LKT(98,17)=2.289000 !rg=24.5583 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,18,1:6)=(/ 0.000000,0.000000,0.000000,1.909000,1.917300,1.930800 /) -XPIZA_LKT(98,18,1:6)=(/ 0.900,0.900,0.900,0.676848,0.737132,0.803860 /) -XCGA_LKT(98,18,1:6)=(/ 0.900,0.900,0.900,0.898183,0.891590,0.880043 /) -XEXT_COEFF_550_LKT(98,18)=0.000000 !rg=24.5583 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,19,1:6)=(/ 0.000000,0.000000,0.000000,1.586200,1.590500,1.600300 /) -XPIZA_LKT(98,19,1:6)=(/ 0.900,0.900,0.900,0.661093,0.718803,0.787535 /) -XCGA_LKT(98,19,1:6)=(/ 0.900,0.900,0.900,0.902370,0.894723,0.882267 /) -XEXT_COEFF_550_LKT(98,19)=0.000000 !rg=24.5583 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(98,20,1:6)=(/ 0.000000,0.000000,0.000000,1.318300,1.322300,1.329900 /) -XPIZA_LKT(98,20,1:6)=(/ 0.900,0.900,0.900,0.646262,0.701320,0.770825 /) -XCGA_LKT(98,20,1:6)=(/ 0.900,0.900,0.900,0.906643,0.898437,0.885433 /) -XEXT_COEFF_550_LKT(98,20)=0.000000 !rg=24.5583 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,1,1:6)=(/ 22.735000,22.875000,22.971000,23.140000,23.567000,24.274000 /) -XPIZA_LKT(99,1,1:6)=(/ 0.635815,0.681996,0.723315,0.877620,0.889178,0.906424 /) -XCGA_LKT(99,1,1:6)=(/ 0.910807,0.900413,0.891407,0.860570,0.866137,0.846480 /) -XEXT_COEFF_550_LKT(99,1)=22.961000 !rg=26.6054 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,2,1:6)=(/ 21.753000,21.863000,21.925000,22.110000,22.417000,22.765000 /) -XPIZA_LKT(99,2,1:6)=(/ 0.632818,0.678912,0.719304,0.875994,0.887731,0.903601 /) -XCGA_LKT(99,2,1:6)=(/ 0.911760,0.901160,0.892477,0.860800,0.865370,0.850573 /) -XEXT_COEFF_550_LKT(99,2)=21.910000 !rg=26.6054 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,3,1:6)=(/ 20.147000,20.243000,20.347000,20.457000,20.717000,21.213000 /) -XPIZA_LKT(99,3,1:6)=(/ 0.627974,0.672550,0.713814,0.871880,0.885796,0.897915 /) -XCGA_LKT(99,3,1:6)=(/ 0.913190,0.902520,0.894057,0.861903,0.865013,0.851070 /) -XEXT_COEFF_550_LKT(99,3)=20.340000 !rg=26.6054 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,4,1:6)=(/ 18.209000,18.285000,18.390000,18.484000,18.704000,19.128000 /) -XPIZA_LKT(99,4,1:6)=(/ 0.621975,0.664876,0.706049,0.867083,0.884516,0.894222 /) -XCGA_LKT(99,4,1:6)=(/ 0.915107,0.904087,0.895467,0.863017,0.865420,0.853417 /) -XEXT_COEFF_550_LKT(99,4)=18.390000 !rg=26.6054 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,5,1:6)=(/ 16.141000,16.197000,16.261000,16.395000,16.550000,16.991000 /) -XPIZA_LKT(99,5,1:6)=(/ 0.615363,0.656049,0.695949,0.860514,0.881747,0.891120 /) -XCGA_LKT(99,5,1:6)=(/ 0.917457,0.906177,0.897180,0.864263,0.865190,0.854697 /) -XEXT_COEFF_550_LKT(99,5)=16.266000 !rg=26.6054 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,6,1:6)=(/ 14.099000,14.147000,14.220000,14.268000,14.509000,14.816000 /) -XPIZA_LKT(99,6,1:6)=(/ 0.608292,0.646552,0.685662,0.852454,0.878672,0.891009 /) -XCGA_LKT(99,6,1:6)=(/ 0.919997,0.908670,0.899623,0.865560,0.866440,0.856830 /) -XEXT_COEFF_550_LKT(99,6)=14.197000 !rg=26.6054 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,7,1:6)=(/ 12.154000,12.195000,12.248000,12.296000,12.459000,12.682000 /) -XPIZA_LKT(99,7,1:6)=(/ 0.600998,0.636388,0.674233,0.842908,0.874546,0.889325 /) -XCGA_LKT(99,7,1:6)=(/ 0.922857,0.911580,0.902093,0.867190,0.868820,0.858803 /) -XEXT_COEFF_550_LKT(99,7)=12.244000 !rg=26.6054 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,8,1:6)=(/ 10.395000,10.426000,10.470000,10.520000,10.625000,10.811000 /) -XPIZA_LKT(99,8,1:6)=(/ 0.593866,0.626170,0.662196,0.831986,0.868213,0.886909 /) -XCGA_LKT(99,8,1:6)=(/ 0.925857,0.914647,0.905033,0.869433,0.870160,0.861360 /) -XEXT_COEFF_550_LKT(99,8)=10.462000 !rg=26.6054 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,9,1:6)=(/ 8.820700,8.844900,8.873500,8.917100,8.981100,9.144400 /) -XPIZA_LKT(99,9,1:6)=(/ 0.587053,0.616340,0.649991,0.819436,0.860150,0.883721 /) -XCGA_LKT(99,9,1:6)=(/ 0.928970,0.917957,0.908033,0.871273,0.870433,0.861587 /) -XEXT_COEFF_550_LKT(99,9)=8.873700 !rg=26.6054 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,10,1:6)=(/ 7.454900,7.473300,7.496700,7.534100,7.594700,7.706900 /) -XPIZA_LKT(99,10,1:6)=(/ 0.580825,0.606926,0.638203,0.805637,0.851286,0.880503 /) -XCGA_LKT(99,10,1:6)=(/ 0.931977,0.921327,0.911400,0.873647,0.873027,0.864370 /) -XEXT_COEFF_550_LKT(99,10)=7.499700 !rg=26.6054 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,11,1:6)=(/ 6.262200,6.277500,6.295700,6.313100,6.356300,6.445500 /) -XPIZA_LKT(99,11,1:6)=(/ 0.575043,0.598224,0.626655,0.789984,0.840177,0.875007 /) -XCGA_LKT(99,11,1:6)=(/ 0.934993,0.924803,0.914977,0.876077,0.874643,0.865660 /) -XEXT_COEFF_550_LKT(99,11)=6.293800 !rg=26.6054 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,12,1:6)=(/ 5.242000,5.252800,5.267000,5.289300,5.322100,5.385300 /) -XPIZA_LKT(99,12,1:6)=(/ 0.569974,0.590168,0.615887,0.773668,0.827859,0.868537 /) -XCGA_LKT(99,12,1:6)=(/ 0.937830,0.928210,0.918547,0.878993,0.876900,0.867987 /) -XEXT_COEFF_550_LKT(99,12)=5.266900 !rg=26.6054 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,13,1:6)=(/ 0.000000,4.384500,4.394600,4.409500,4.434000,4.483500 /) -XPIZA_LKT(99,13,1:6)=(/ 0.900,0.582982,0.605781,0.756146,0.813656,0.860055 /) -XCGA_LKT(99,13,1:6)=(/ 0.900,0.931583,0.922243,0.881777,0.878940,0.869653 /) -XEXT_COEFF_550_LKT(99,13)=4.394700 !rg=26.6054 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,14,1:6)=(/ 0.000000,3.658000,3.665900,3.675600,3.699400,3.739000 /) -XPIZA_LKT(99,14,1:6)=(/ 0.900,0.576671,0.596801,0.738364,0.798611,0.850886 /) -XCGA_LKT(99,14,1:6)=(/ 0.900,0.934753,0.925853,0.884953,0.881490,0.872163 /) -XEXT_COEFF_550_LKT(99,14)=3.665600 !rg=26.6054 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,15,1:6)=(/ 0.000000,3.048200,3.054100,3.063100,3.076000,3.102300 /) -XPIZA_LKT(99,15,1:6)=(/ 0.900,0.571179,0.588727,0.720684,0.781904,0.839367 /) -XCGA_LKT(99,15,1:6)=(/ 0.900,0.937700,0.929370,0.888443,0.883767,0.874083 /) -XEXT_COEFF_550_LKT(99,15)=3.053300 !rg=26.6054 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,16,1:6)=(/ 0.000000,0.000000,2.538200,2.543900,2.555200,2.575500 /) -XPIZA_LKT(99,16,1:6)=(/ 0.900,0.900,0.581568,0.702691,0.764530,0.826387 /) -XCGA_LKT(99,16,1:6)=(/ 0.900,0.900,0.932707,0.892093,0.886723,0.876287 /) -XEXT_COEFF_550_LKT(99,16)=2.537700 !rg=26.6054 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,17,1:6)=(/ 0.000000,0.000000,2.112300,2.116900,2.126400,2.142600 /) -XPIZA_LKT(99,17,1:6)=(/ 0.900,0.900,0.575364,0.685629,0.746921,0.812285 /) -XCGA_LKT(99,17,1:6)=(/ 0.900,0.900,0.935833,0.896007,0.889900,0.878773 /) -XEXT_COEFF_550_LKT(99,17)=2.112200 !rg=26.6054 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,18,1:6)=(/ 0.000000,0.000000,0.000000,1.761600,1.767300,1.778800 /) -XPIZA_LKT(99,18,1:6)=(/ 0.900,0.900,0.900,0.669452,0.728816,0.796838 /) -XCGA_LKT(99,18,1:6)=(/ 0.900,0.900,0.900,0.900083,0.892987,0.881007 /) -XEXT_COEFF_550_LKT(99,18)=0.000000 !rg=26.6054 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,19,1:6)=(/ 0.000000,0.000000,0.000000,1.463500,1.468000,1.476900 /) -XPIZA_LKT(99,19,1:6)=(/ 0.900,0.900,0.900,0.654006,0.710905,0.780193 /) -XCGA_LKT(99,19,1:6)=(/ 0.900,0.900,0.900,0.904310,0.896457,0.883687 /) -XEXT_COEFF_550_LKT(99,19)=0.000000 !rg=26.6054 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(99,20,1:6)=(/ 0.000000,0.000000,0.000000,0.000000,1.220100,1.226900 /) -XPIZA_LKT(99,20,1:6)=(/ 0.900,0.900,0.900,0.900,0.693473,0.763204 /) -XCGA_LKT(99,20,1:6)=(/ 0.900,0.900,0.900,0.900,0.900167,0.886890 /) -XEXT_COEFF_550_LKT(99,20)=0.000000 !rg=26.6054 sigma=2.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,1,1:6)=(/ 20.982000,21.090000,21.183000,21.503000,21.559000,22.000000 /) -XPIZA_LKT(100,1,1:6)=(/ 0.628567,0.674456,0.715980,0.875687,0.890660,0.898705 /) -XCGA_LKT(100,1,1:6)=(/ 0.913093,0.902423,0.893757,0.864203,0.861800,0.848947 /) -XEXT_COEFF_550_LKT(100,1)=21.258000 !rg=28.8231 sigma=1.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,2,1:6)=(/ 20.075000,20.151000,20.254000,20.353000,20.653000,21.275000 /) -XPIZA_LKT(100,2,1:6)=(/ 0.625903,0.670913,0.712071,0.871715,0.888637,0.895532 /) -XCGA_LKT(100,2,1:6)=(/ 0.913840,0.902910,0.894330,0.862043,0.862753,0.852503 /) -XEXT_COEFF_550_LKT(100,2)=20.224000 !rg=28.8231 sigma=1.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,3,1:6)=(/ 18.577000,18.660000,18.731000,18.953000,19.163000,19.591000 /) -XPIZA_LKT(100,3,1:6)=(/ 0.620957,0.664710,0.705692,0.868986,0.886689,0.890430 /) -XCGA_LKT(100,3,1:6)=(/ 0.915167,0.904067,0.895297,0.863143,0.865127,0.854350 /) -XEXT_COEFF_550_LKT(100,3)=18.750000 !rg=28.8231 sigma=1.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,4,1:6)=(/ 16.797000,16.868000,16.925000,17.132000,17.295000,17.680000 /) -XPIZA_LKT(100,4,1:6)=(/ 0.615520,0.657266,0.697855,0.863263,0.884524,0.888880 /) -XCGA_LKT(100,4,1:6)=(/ 0.917080,0.905847,0.896800,0.864633,0.866537,0.856007 /) -XEXT_COEFF_550_LKT(100,4)=16.931000 !rg=28.8231 sigma=1.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,5,1:6)=(/ 14.886000,14.947000,15.011000,15.088000,15.264000,15.546000 /) -XPIZA_LKT(100,5,1:6)=(/ 0.609268,0.648801,0.688935,0.855729,0.881061,0.889654 /) -XCGA_LKT(100,5,1:6)=(/ 0.919370,0.908093,0.898893,0.865333,0.867023,0.857547 /) -XEXT_COEFF_550_LKT(100,5)=15.005000 !rg=28.8231 sigma=1.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,6,1:6)=(/ 13.007000,13.049000,13.099000,13.209000,13.316000,13.588000 /) -XPIZA_LKT(100,6,1:6)=(/ 0.602794,0.639501,0.678241,0.848071,0.876330,0.888564 /) -XCGA_LKT(100,6,1:6)=(/ 0.921933,0.910470,0.901033,0.867110,0.866917,0.858390 /) -XEXT_COEFF_550_LKT(100,6)=13.102000 !rg=28.8231 sigma=1.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,7,1:6)=(/ 11.212000,11.249000,11.292000,11.377000,11.455000,11.695000 /) -XPIZA_LKT(100,7,1:6)=(/ 0.595902,0.629824,0.666843,0.837764,0.871358,0.887061 /) -XCGA_LKT(100,7,1:6)=(/ 0.924787,0.913460,0.903757,0.868803,0.869207,0.860453 /) -XEXT_COEFF_550_LKT(100,7)=11.291000 !rg=28.8231 sigma=1.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,8,1:6)=(/ 9.590800,9.616800,9.652000,9.705400,9.785100,9.955100 /) -XPIZA_LKT(100,8,1:6)=(/ 0.589363,0.620109,0.655028,0.826054,0.864980,0.885791 /) -XCGA_LKT(100,8,1:6)=(/ 0.927687,0.916500,0.906670,0.870750,0.871073,0.862310 /) -XEXT_COEFF_550_LKT(100,8)=9.652000 !rg=28.8231 sigma=1.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,9,1:6)=(/ 8.138300,8.160600,8.188200,8.221600,8.300300,8.415300 /) -XPIZA_LKT(100,9,1:6)=(/ 0.583082,0.610815,0.643422,0.812517,0.856505,0.882574 /) -XCGA_LKT(100,9,1:6)=(/ 0.930700,0.919807,0.909920,0.872517,0.872507,0.863810 /) -XEXT_COEFF_550_LKT(100,9)=8.186600 !rg=28.8231 sigma=1.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,10,1:6)=(/ 6.879000,6.896200,6.915100,6.942400,6.996000,7.083500 /) -XPIZA_LKT(100,10,1:6)=(/ 0.577330,0.602031,0.631807,0.798260,0.846362,0.877976 /) -XCGA_LKT(100,10,1:6)=(/ 0.933660,0.923143,0.913227,0.874723,0.873727,0.865413 /) -XEXT_COEFF_550_LKT(100,10)=6.915800 !rg=28.8231 sigma=1.95 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,11,1:6)=(/ 5.778600,5.791300,5.807600,5.829900,5.874100,5.956500 /) -XPIZA_LKT(100,11,1:6)=(/ 0.572042,0.593693,0.620903,0.782410,0.834804,0.872015 /) -XCGA_LKT(100,11,1:6)=(/ 0.936537,0.926570,0.916773,0.877370,0.875550,0.866947 /) -XEXT_COEFF_550_LKT(100,11)=5.807600 !rg=28.8231 sigma=2.05 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,12,1:6)=(/ 4.837100,4.847100,4.858500,4.877000,4.904700,4.961700 /) -XPIZA_LKT(100,12,1:6)=(/ 0.567323,0.586216,0.610544,0.765554,0.821489,0.864977 /) -XCGA_LKT(100,12,1:6)=(/ 0.939293,0.929940,0.920347,0.880310,0.877807,0.869093 /) -XEXT_COEFF_550_LKT(100,12)=4.858400 !rg=28.8231 sigma=2.15 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,13,1:6)=(/ 0.000000,4.045600,4.055000,4.065900,4.093800,4.138200 /) -XPIZA_LKT(100,13,1:6)=(/ 0.900,0.579464,0.601067,0.747849,0.807032,0.856428 /) -XCGA_LKT(100,13,1:6)=(/ 0.900,0.933227,0.924053,0.883227,0.880237,0.871270 /) -XEXT_COEFF_550_LKT(100,13)=4.054500 !rg=28.8231 sigma=2.25 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,14,1:6)=(/ 0.000000,3.375400,3.382200,3.393800,3.403600,3.436200 /) -XPIZA_LKT(100,14,1:6)=(/ 0.900,0.573672,0.592563,0.730328,0.790882,0.845374 /) -XCGA_LKT(100,14,1:6)=(/ 0.900,0.936253,0.927587,0.886657,0.882310,0.872583 /) -XEXT_COEFF_550_LKT(100,14)=3.381600 !rg=28.8231 sigma=2.35 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,15,1:6)=(/ 0.000000,0.000000,2.818000,2.825200,2.837300,2.861800 /) -XPIZA_LKT(100,15,1:6)=(/ 0.900,0.900,0.585054,0.712345,0.774175,0.833906 /) -XCGA_LKT(100,15,1:6)=(/ 0.900,0.900,0.930977,0.890030,0.885067,0.875200 /) -XEXT_COEFF_550_LKT(100,15)=2.817100 !rg=28.8231 sigma=2.45 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,16,1:6)=(/ 0.000000,0.000000,2.342000,2.347200,2.358900,2.377500 /) -XPIZA_LKT(100,16,1:6)=(/ 0.900,0.900,0.578301,0.694652,0.756646,0.820422 /) -XCGA_LKT(100,16,1:6)=(/ 0.900,0.900,0.934253,0.893887,0.888227,0.877450 /) -XEXT_COEFF_550_LKT(100,16)=2.341700 !rg=28.8231 sigma=2.55 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,17,1:6)=(/ 0.000000,0.000000,0.000000,1.953300,1.960200,1.972500 /) -XPIZA_LKT(100,17,1:6)=(/ 0.900,0.900,0.900,0.677978,0.738648,0.805453 /) -XCGA_LKT(100,17,1:6)=(/ 0.900,0.900,0.900,0.897820,0.891203,0.879753 /) -XEXT_COEFF_550_LKT(100,17)=0.000000 !rg=28.8231 sigma=2.65 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,18,1:6)=(/ 0.000000,0.000000,0.000000,1.625400,1.630400,1.640400 /) -XPIZA_LKT(100,18,1:6)=(/ 0.900,0.900,0.900,0.662174,0.720632,0.789541 /) -XCGA_LKT(100,18,1:6)=(/ 0.900,0.900,0.900,0.901963,0.894483,0.882260 /) -XEXT_COEFF_550_LKT(100,18)=0.000000 !rg=28.8231 sigma=2.75 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,19,1:6)=(/ 0.000000,0.000000,0.000000,1.350400,1.354700,1.362800 /) -XPIZA_LKT(100,19,1:6)=(/ 0.900,0.900,0.900,0.647238,0.702931,0.772925 /) -XCGA_LKT(100,19,1:6)=(/ 0.900,0.900,0.900,0.906290,0.898083,0.885340 /) -XEXT_COEFF_550_LKT(100,19)=0.000000 !rg=28.8231 sigma=2.85 wvl=0.55 - -XEXT_COEFF_WVL_LKT(100,20,1:6)=(/ 0.000000,0.000000,0.000000,0.000000,1.125500,1.130900 /) -XPIZA_LKT(100,20,1:6)=(/ 0.900,0.900,0.900,0.900,0.685665,0.755238 /) -XCGA_LKT(100,20,1:6)=(/ 0.900,0.900,0.900,0.900,0.901823,0.888070 /) -XEXT_COEFF_550_LKT(100,20)=0.000000 !rg=28.8231 sigma=2.95 wvl=0.55 - -IF (LHOOK) CALL DR_HOOK('MODE_DUSTOPT:DUST_OPT_LKT_SET10',1,ZHOOK_HANDLE) -END SUBROUTINE DUST_OPT_LKT_SET10 - - -END MODULE MODE_DUSTOPT diff --git a/src/arome/chem/module/mode_firstguess.F90 b/src/arome/chem/module/mode_firstguess.F90 deleted file mode 100644 index 5720dc4bd24d364c4371aea25f260e1b902ff594..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_firstguess.F90 +++ /dev/null @@ -1,149 +0,0 @@ -MODULE MODE_FIRSTGUESS -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - !Purpose: Make a first guess of the aerosol concentration in aquous phase and in organic phase - !History: Original code recieved fro Robert Griffin, 2005 - !Rewritten by Alf Grini, alf.grini@cnrm.meteo.fr - - USE MODD_GLO, only : HLCRIT - - IMPLICIT NONE - -CONTAINS - - SUBROUTINE GUESS_AERO(& - CB & !I [ug/m3] total (gas + aerosol + ions) of component - ,AERO_ORG & !O [ug/m3] liquid aerosol concentrations - ,AERO_AQ & !O [ug/m3] solid aerosol concentration - ,GAS & !O [ug/m3] gaseous concentration - ,LWC & !I [ug/m3] liquid water content already available for partitioning - ,acHP & !I [umol/kg_{water}] proton concentration - ,VP & !I [torr] saturation vapor pressure of organic precursors - ,K & !I [m3/ug and mole/kg] Henry's law and dissociation constants - ) - - !Purpose: Make initial guess for all concentrations when using Griffin's model - !********************************************************************************************** - !Make initial gas phase concentrations: For a set of acids we have the following equilibriums - !1) H2A(g) <--> H2A - !2) H2A <--> H+ + HA- - !3) HA- <--> H+ + A(2-) - - !We have the following equations: - !1) K(1) = H2A/H2A(g) (Henry's law) - !2) [H+]*[HA-]/[H2A] = K(2) (acid dissociation) - !3) [H+]*[A(2-)]/[HA-] = K(3) (acid dissociation) - - !The mole balance: - !totAER = H2A + HA- + A(2-) - !totAER = K(1)*[H2A(g)] + K(2)[H2A]/[H+] + K(3)*[HA-]/[H+] - !totAER = K(1)*[H2A(g)] + K(2)K(1)[H2A(g)]/[H+] + K(3)K(2)K(1)[H2A(g)]/([H+])^2 - !totAER = K(1)*[H2A(g)]* (1 + K(2)/[H+] + K(3)K(2)/([H+])^2) - !totAER = [H2A]*(1 + K(2)/[H+] + K(3)K(2)/([H+])^2) = [H2A]/"nominator" - !*********************************************************************************************** - - USE MODE_SOAEQLUTL - - IMPLICIT NONE - - !INPUT - REAL, DIMENSION(:,:), INTENT(IN) :: CB !I [ug/m3] total (gas+aerosol) concentration - REAL, DIMENSION(:), INTENT(IN) :: LWC !I [ug/m3] Liquid water content already ready for partitioning - REAL, DIMENSION(:), INTENT(IN) :: acHP !I [umol/kg_{water}] proton concentration - REAL, DIMENSION(:,:), INTENT(IN) :: VP !I [torr] temperature corrected vapor pressure of gas precursors - REAL, DIMENSION(:,:), INTENT(IN) :: K !I [m3/ug and mole/kg] Henry's law and dissociation constants - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: GAS !O [ug/m3] gas phase concentrations - REAL, DIMENSION(:,:), INTENT(OUT) :: AERO_ORG !O [ug/m3] liquid aerosol concentrations - REAL, DIMENSION(:,:), INTENT(OUT) :: AERO_AQ !O [ug/m3] solid aerosol concentrations - - !LOCAL, SMALL COUNTERS AND OTHER VARS - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: NOMINATOR ![-] factor to transfer between totAER and acid/ions in aq - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: totAER_AQ ![ug/m3] total SOA in aq. phase (acid+ions) - INTEGER :: I ![idx] counter for main components (1-NAMOL) - INTEGER :: J ![idx] counter for sub-componnets or ions - INTEGER :: COMP_IDX ![idx] index for aerosol components (1-NAAERO) - - - !****************************************************************************** - - !Start part which will make guesses for the - !aerosol concentrations before the iterations start - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_FIRSTGUESS:GUESS_AERO',0,ZHOOK_HANDLE) - COMP_IDX=1 - DO I=1,NBSP - - !If saturation vapor pressure is low, then guess 30% in organic aerosol phase - !If not, guess 15% in organic aerosol phase - WHERE(VP(:,I).lt.VPCRIT) - AERO_ORG(:,I)=0.3d0*CB(:,I) - ELSEWHERE - AERO_ORG(:,I)=0.15*CB(:,I) - ENDWHERE - - !If high LWC and high Henry's law constant guess 10% in aerosol phase - !Else, guess 5% in aerosol phase - WHERE(LWC(:).gt.LWCCRIT.AND.K(:,COMP_IDX).gt.HLCRIT) - AERO_AQ(:,COMP_IDX)=0.1*CB(:,I) - ELSEWHERE - AERO_AQ(:,COMP_IDX)=0.05*CB(:,I) - ENDWHERE - - !Prepare for next component - COMP_IDX=COMP_IDX+1 - - !Skip ions for correct indexing of K - DO J=2,NKAQ(I) - COMP_IDX=COMP_IDX+1 - ENDDO - - ENDDO !I - - !Guess for gas phase has to be whatever is not in aquous or gaseous phase - !GAS(:,:)=CB(:,:) - AERO_ORG(:,:) - totAER_AQ(:,:) - !The guess for gas is not really used anywhere since gas is calculated from - !the aerosol guesses during the iterations.. See figure explaining iteration - !cycle in the theory paper. Set it to zero anyway just to have a number... - !fxm: in a future version GAS should not be output from this routine! - GAS(:,:)=0.d0 - - !Get nominator to transfer total aquous to acid/ions - CALL NOMINATOR_GET( & - acHP & !I [mol/kg_{water}] proton concentration - ,nominator & !O [-] term to transfer between acid and total aerosol - ,K & !I [m3/ug and mole/kg] Henry's law and dissociation constants - ,NKAQ & !I [nbr] number of main and sub components - ,NBSP & !I [nbr] total number of components - ) - - !Transfer the H2A concentration to total aerosol concentration (acid and ions) - CALL AERO_TO_totAER( & - AERO_AQ & !I [ug/m3] aquous phase concentrations (acid + ions) - ,totAER_AQ & !O [ug/m3] aquous phase concentrations (total = sum of acid+ions) - ,nominator & !I [-] transforming factor between acid and total - ,NKAQ & !I [nbr] number of main and sub components - ,NBSP & !I [nbr] total number of components - ) - - !transfer total aerosol to aquous/ions - CALL totAER_TO_AERO( & - totAER_AQ & !I [ug/m3] total aerosol (acid+ions) in aq phase - ,NOMINATOR & !I [-] term which gives acid if we know total (acid+ions) - ,AERO_AQ & !O [ug/m3] acid and aerosol concentrations - ,acHP & !I [mole/kg_{water}] proton concentration - ,MW_SOA & !I [g/mol] molecular weight of species - ,K & !I [m3/ug and mole/kg] Henry's law and acid diss. constants - ,NKAQ & !I [nbr] number of sub and main components for a species - ,NBSP & !I nbr] number of main species to take into account - ) - - IF (LHOOK) CALL DR_HOOK('MODE_FIRSTGUESS:GUESS_AERO',1,ZHOOK_HANDLE) - END SUBROUTINE GUESS_AERO - !************************************************ - -END MODULE mode_firstguess - - diff --git a/src/arome/chem/module/mode_modeln_handler.F90 b/src/arome/chem/module/mode_modeln_handler.F90 deleted file mode 100644 index 01b1892fb06d3c917f16db4bc424337b89fad861..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_modeln_handler.F90 +++ /dev/null @@ -1,42 +0,0 @@ -! ######spl -MODULE MODE_MODELN_HANDLER -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -IMPLICIT NONE - -INTEGER, SAVE, PRIVATE :: ICURRENT_MODEL = -1 - -CONTAINS - -FUNCTION GET_CURRENT_MODEL_INDEX() -INTEGER :: GET_CURRENT_MODEL_INDEX -!! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_MODELN_HANDLER:GET_CURRENT_MODEL_INDEX',0,ZHOOK_HANDLE) -GET_CURRENT_MODEL_INDEX = ICURRENT_MODEL -!! -IF (LHOOK) CALL DR_HOOK('MODE_MODELN_HANDLER:GET_CURRENT_MODEL_INDEX',1,ZHOOK_HANDLE) -END FUNCTION GET_CURRENT_MODEL_INDEX - -SUBROUTINE GOTO_MODEL(KMI) -INTEGER, INTENT(IN) :: KMI -!! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_MODELN_HANDLER:GOTO_MODEL',0,ZHOOK_HANDLE) -IF (ICURRENT_MODEL == -1) THEN - ICURRENT_MODEL = 1 ! Default model index -!***AROME*** -! CALL GOTO_MODEL_WRAPPER(ICURRENT_MODEL, KMI) - ICURRENT_MODEL = KMI -ELSE - IF (ICURRENT_MODEL /= KMI) THEN -! Switch to model KMI, only if necessary -! CALL GOTO_MODEL_WRAPPER(ICURRENT_MODEL, KMI) - ICURRENT_MODEL = KMI - END IF -END IF -!! -IF (LHOOK) CALL DR_HOOK('MODE_MODELN_HANDLER:GOTO_MODEL',1,ZHOOK_HANDLE) -END SUBROUTINE GOTO_MODEL - -END MODULE MODE_MODELN_HANDLER diff --git a/src/arome/chem/module/mode_oamain.F90 b/src/arome/chem/module/mode_oamain.F90 deleted file mode 100644 index 27e2c2b3f36dd2e3eb27aab72a00f7659db0f648..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_oamain.F90 +++ /dev/null @@ -1,348 +0,0 @@ -! ######spl -MODULE MODE_OAMAIN -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - !Purpose: main subroutine for calling SOA equilibrium routines - !Similar programs recieved from B. Pun and R. Griffin, 2005 - !Rewritten by Alf Grini, alf.grini@cnrm.meteo.fr, 2005 - - USE modd_glo - -IMPLICIT NONE - -CONTAINS - - SUBROUTINE MPMPO( & - TEMPK & !I [K] Temperature - ,RH & !I [-] Relative humidity - ,CB & !O [ug/m3] total (aerosol+gas) conc - ,CPT & !I [ug/m3] primary aerosol concentration - ,GAS & !O [ug/m3] gas phase concentrations - ,AERO_ORG & !O [ug/m3] organic phase concentrations - ,AERO_AQ & !I [ug/m3] aquous phase concentration of acid and ions - ,PARTORG & !O [ug/m3] aerosol phase concentration (aq+org) - ,LWC & !I [ug/m3] liquid water content available for partitioning - ,acHP & !I [mol/kg_{water}] H+ concentrations - ,DELTALWC & !O [ug/m3] change in LWC - ,ORGANION & !O [mole/m3] anion charge - ,PSOLORG & !IO [%] soluble SOA mass fraction - ) - - USE mode_soatinit !Module which calculates parameters only dependent on temperature - USE mode_firstguess !Module which calculates first guesses of components - USE mode_soaeql !Module which does the equilibrium between aquous phase, organic phase and gas phase - USE mode_zsrpun !Module to get water associated with aquous organics - USE modd_unifacparam !Module with unifac coefficients - USE modd_binsolu, only: molalbinAQ - - IMPLICIT NONE - - !INPUTS/OUTPUTS - REAL, DIMENSION(:), INTENT(IN) :: TEMPK !I [K] Temperature - REAL, DIMENSION(:), INTENT(IN) :: RH !I [0-1] Relative humidity - REAL, DIMENSION(:,:), INTENT(IN) :: CB !I [ug/m3] total (g+p) aerosol organic species - REAL, DIMENSION(:,:), INTENT(IN) :: CPT !I [ug/m3] - REAL, DIMENSION(:,:), INTENT(OUT) :: GAS !I [ug/m3] gas of organic species - REAL, DIMENSION(:,:), INTENT(OUT) :: AERO_AQ !I [ug/m3] aqueous species - REAL, DIMENSION(:,:), INTENT(OUT) :: AERO_ORG !I [ug/m3] organic phase species - REAL, DIMENSION(:,:), INTENT(OUT) :: PARTORG !I [ug/m3] aerosol phase organic species - REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG !I soluble SOA mass fraction - REAL, DIMENSION(:), INTENT(IN) :: LWC !I [ug/m3] liquid water content of aerosols - REAL, DIMENSION(:), INTENT(IN) :: acHP !I [mol_{H+}/kg_{water}] concentration of H+ ions - REAL, DIMENSION(:), INTENT(OUT) :: DELTALWC !I [ug/m3] LWC assiciated with organics - REAL, DIMENSION(:), INTENT(OUT) :: ORGANION !I [mole/m3] organic anion concentratios - - !Local variables - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: VP ![torr] temp. dependent vapor pressures of organic phase - REAL, DIMENSION(SIZE(AERO_AQ,1),SIZE(AERO_AQ,2)) :: K ![m3/ug and mole/kg] temp. dependent Henry's law and diss. const - REAL, DIMENSION(:,:,:), ALLOCATABLE :: SI_ORG ![-] temp. dependent unifac coefficient - REAL, DIMENSION(:,:,:), ALLOCATABLE :: SI_AQ ![-] temp. dependent unifac coefficient - - !Small variables - INTEGER :: I ![idx] counter for main type A components - INTEGER :: J ![idx] counter for sub type A components - INTEGER :: COMP_IDX ![idx] index for right type A comp (sub or main) - INTEGER :: COMP_IDX2 ![idx] help counter for idx of main components - REAL :: XX ![idx] account for difference in molecular weight - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_OAMAIN:MPMPO',0,ZHOOK_HANDLE) - ALLOCATE(SI_ORG(SIZE(AERO_ORG,1),NFUNC_ORG,NFUNC_ORG)) - ALLOCATE(SI_AQ(SIZE(AERO_ORG,1),NFUNC_AQ,NFUNC_AQ)) - - !Initialize the negative charge associated with type AQ organics (moles/m3) - ORGANION(:)=0.d0 - - !Initialize the liquid water content associated with AQ organics (ug/m3) - deltaLWC(:)=0.d0 - - !Initialize AERO_AQ - AERO_AQ(:,:)=0.d0 - - !Initialize AERO_ORG - AERO_ORG(:,:)=0.d0 - - !Initialize PARTORG / PSOLORG - PARTORG(:,:)=0.d0 - PSOLORG(:,:)=0.d0 - - !Initialize GAS - GAS(:,:)=0.d0 - - !Get termperature corrected vapor pressures - CALL VP_GET( & - TEMPK & !I [K] Temperature - ,VP & !I [torr] saturation vapor pressures - ) - - !Get temperature corrected henry's law constants - CALL AQCONST_GET( & - TEMPK & !I [K] temperature - ,K & !O [m3/ug and mole/kg] Henry's law and dissociation constants - ,NKAQ & !I [nbr] Number of total and sub-components for one acid - ) - - !Get temperature dependent coefficients needed in UNIFAC parameterization - CALL SI_GET( & - TEMPK & !I [K] temperature - ,A_ORG & !I [units?] term in UNIFAC parameterization - ,SI_ORG & !O [units?] term in UNIFAC parameterization - ,NFUNC_ORG & !I [nbr] number of functional group in mixture - ) - - !Do the same thing, but now get the coefficients for aquous phase - CALL SI_GET( & - TEMPK & !I [K] temperature - ,A_AQ & !I [units?] term in UNIFAC parameterization - ,SI_AQ & !O [units?] term in UNIFAC parameterization - ,NFUNC_AQ & !I [nbr] number of functional group in mixture - ) - - !Get first guesses for aerosols - CALL GUESS_AERO( & - CB & !I [ug/m3] total (gas + aerosol + ions) of component - ,AERO_ORG & !O [ug/m3] liquid aerosol concentrations - ,AERO_AQ & !O [ug/m3] solid aerosol concentration - ,GAS & !O [ug/m3] gaseous concentration - ,LWC & !I [ug/m3] liquid water content already available for partitioning - ,acHP & !I [umol/kg_{water}] proton concentration - ,VP & !I [torr] saturation vapor pressure of organic precursors - ,K & !I [m3/ug and mole/kg] Henry's law and dissociation constants - ) - - !Use the guesses to iterate for the right solution - CALL SOAEQL( & - acHP & !I [mol/kg_{water}] proton concentration - ,LWC & !I [ug/m3] liquid water content - ,CPT & !I [ug/m3] primary organic concentration - ,TEMPK & !I [K] temperature - ,GAS & !I/O [ug/m3] gas phase concentrations of SOA - ,AERO_AQ & !I/O [ug/m3] aquous phase concentrations of SOA and ions - ,AERO_ORG & !I/O [ug/m3] organic phase concentrations of SOA - ,CB & !I [ug/m3] total SOA concentration (GAS + AQ + ORG) - ,K & !I [m3/ug and mole/kg] Henry's law and dissocation constants at right T - ,SI_ORG & !I [?] T-dependent coefficient in UNIFAC parameterization - ,SI_AQ & !I [?] T-dependent coefficient in UNIFAC parameterization - ,VP & !I [torr] saturation vapor pressure - ) - - !Get the wataer associated with the extra organics using ZSR - CALL ZSRPUN( & - AERO_AQ & !I [ug/m3] guess for aerosol concentrations - ,RH & !I [0-1] relative humidity - ,DELTALWC & !O [ug/m3] liquid water content - ,MOLALBINAQ & !I [umol/ug_{water}] molality of binary solutions - ,NBSP & !I [nbr] number of species to take into account - ,NKAQ & !I [nbr] number of sub and main component for main component - ,MW_SOA & !I [g/mol] molecular weight of species - ) - - COMP_IDX=1 - DO I=1,NBSP - - !Start with summing the organic part - PARTORG(:,I)=AERO_ORG(:,I) - - !Conserve COMP_IDX of main component - COMP_IDX2 = COMP_IDX - - !Initiate partorg from this component - PARTORG(:,I)=PARTORG(:,I) + AERO_AQ(:,COMP_IDX) - PSOLORG(:,I)= AERO_AQ(:,COMP_IDX) - COMP_IDX=COMP_IDX+1 - - !Add the contribution of the ions - DO J=2,NKAQ(I) - XX=MW_SOA(COMP_IDX2) & !MW of main component - /MW_SOA(COMP_IDX) !MW of this component - - !Sum PARTORG - PARTORG(:,I) = PARTORG(:,I) + AERO_AQ(:,COMP_IDX)*XX - PSOLORG(:,I) = PSOLORG(:,I) + AERO_AQ(:,COMP_IDX)*XX - - !Get anion concentration in mole/m3 - organion(:)=organion(:) & - +AERO_AQ(:,COMP_IDX)/MW_SOA(COMP_IDX) & !umole/m3 - *dble(J-1) & !number of negative charges - *1.d-6 !==> mole/m3 - - !Prepare for next component - COMP_IDX=COMP_IDX+1 - ENDDO - PSOLORG(:,I) = PSOLORG(:,I) / PARTORG(:,I) - ENDDO - - DEALLOCATE(SI_ORG) - DEALLOCATE(SI_AQ) - - IF (LHOOK) CALL DR_HOOK('MODE_OAMAIN:MPMPO',1,ZHOOK_HANDLE) - END SUBROUTINE MPMPO - - !************************************************************* - - SUBROUTINE PUN( & - TEMPK & !I [K] Temperature - ,RH & !I [-] Relative humidity - ,WORG & !I [ug/m3] total (aerosol+gas) conc - ,GASORG & !O [ug/m3] gas phase concentrations - ,PAOM & !I [ug/m3] Primary aerosol organic matter - ,PARTORG & !O [ug/m3] aerosol phase concentrations - ,LWC & !I [ug/m3] liquid water content - ,acHP & !I [mol/kg_{water}] H+ concentrations - ,DELTALWC & !O [ug/m3] change in LWC - ,ORGANION & !O [mole//m3] anion charge - ,TBOAFLAG & !I [1/0] Flag for iteration or not - ) - - USE mode_bmain - USE mode_amain - - IMPLICIT NONE - - !INPUTS/OUTPUTS - REAL, DIMENSION(:), INTENT(IN) :: TEMPK ![K] Temperature - REAL, DIMENSION(:), INTENT(IN) :: RH ![0-1] Relative humidity - REAL, DIMENSION(:,:), INTENT(IN) :: WORG !I[ug/m3] total (g+p) aerosol organic species - REAL, DIMENSION(:,:), INTENT(OUT) :: GASORG !I[ug/m3] gas of organic species - REAL, DIMENSION(:), INTENT(IN) :: PAOM !I[ug/m3] Primary aerosol organic matter - REAL, DIMENSION(:,:), INTENT(OUT) :: PARTORG !I[ug/m3] aerosol phase organic species - REAL, DIMENSION(:), INTENT(IN) :: LWC !I[ug/m3] liquid water content of aerosols - REAL, DIMENSION(:), INTENT(IN) :: acHP !I [mol_{H+}/kg_{water}] concentration of H+ ions - REAL, DIMENSION(:), INTENT(OUT) :: DELTALWC !I [ug/m3] LWC assiciated with organics - REAL, DIMENSION(:), INTENT(OUT) :: ORGANION !I [??] organic anion concentratios - INTEGER, INTENT(INOUT) :: TBOAFLAG !I [flg] do type B calculations (1) or not (0) - - !LOCAL - REAL, DIMENSION(SIZE(TEMPK),NBSPA) :: AEROS ![ug/m3] type A solid species below DRH - REAL, DIMENSION(SIZE(TEMPK),NAAEROA) :: AERO ![ug/m3] type A aqueous species - REAL, DIMENSION(SIZE(TEMPK),NBSPA) :: GASA ![ug/m3] type A gas concentrations - REAL, DIMENSION(SIZE(TEMPK),NBSPA) :: totA ![ug/m3] total (gas+aer) type A species - REAL, DIMENSION(SIZE(TEMPK),NBSPB) :: AEROB ![ug/m3] type B concentration - REAL, DIMENSION(SIZE(TEMPK),NBSPB) :: GASB ![ug/m3] type B gas species - REAL, DIMENSION(SIZE(TEMPK),NBSPB) :: CB ![ug/m3] total concentration of type A - - !Small variables - INTEGER :: I ![idx] counter for main type A components - INTEGER :: J ![idx] counter for sub type A components - INTEGER :: COMP_IDX ![idx] index for right type A comp (sub or main) - INTEGER :: COMP_IDX2 ![idx] help counter for idx of main components - REAL :: XX ![idx] account for difference in molecular weight - - !*************************************************** - !FROM HERE WE ARE DEALING WITH TYPE A AEROSOL - !************************************************** - !Initialize the negative charge associated with type A organics (moles/m3) - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_OAMAIN:PUN',0,ZHOOK_HANDLE) - ORGANION(:)=0.d0 - - !Initialize the liquid water content associated with type A organics (ug/m3) - deltaLWC(:)=0.d0 - - !Initialize AERO (aquous type A species where RH > DRH) - AERO(:,:)=0.d0 - !Initialize AEROS (solid type A species) - AEROS(:,:)=0.d0 - - !Put total aerosol A content in totA array - totA(:,:)=worg(:,1:NBSPA) - - !Skipped a lot of checks here to see if aerosol concentrations are smaller or - !larger than a lot of limits. Since the code is supposed to be called for a - !vector it is unlikely that the tests will apply for the whole vector. - - !Call equilibrium for type A aerosols - CALL AMAIN( & - totA & !I [ug/m3] total (gas+aerosol) organic content - ,AERO & !I/O [ug/m3] initial guess for Ai, also contain final output - ,AEROS & !I/O [ug/m3] solid aerosol concentration (==0 for the moment in this code) - ,GASA & !I/O [ug/m3] gas aerosol concentration - ,LWC & !I [ug/m3] input LWC (associated with inorganics), available for partitioning - ,acHP & !I [mole_{H+}/kg_{water}] H+ concentration - ,DELTALWC & !O [ug/m3] output LWC associated with aerosol - ,ORGANION & !O [mol/m3] moles negative charge - ,RH & !I [0-1] relative humidity - ,TEMPK & !I [K] temperature - ) - - !Get the ouput values for PARTORG - COMP_IDX=1 - DO I=1,NBSPA - - !Conserve COMP_IDX of main component - COMP_IDX2 = COMP_IDX - - !Initiate partorg from this component - PARTORG(:,I)=AERO(:,COMP_IDX) - COMP_IDX=COMP_IDX+1 - - DO J=2,NKA(I) - XX=MWA(COMP_IDX2) & !MW of main component - /MWA(COMP_IDX) !MW of this component - - !Sum PARTORG - PARTORG(:,I) = PARTORG(:,I) + AERO(:,COMP_IDX)*XX - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - - !Get the output values for GASORG - GASORG(:,1:NBSPA)=GASA(:,:) - - !************************END OF TYPE A AEROSOL************* - - !************************THE REST OF THE CALCULATIONS ARE FOR TYPE B AEROSOLS******** - IF(TBOAFLAG==1)THEN !Check for doing type B aerosol - - !Get gas phase concentration of type B aerosol - !GASB(:,:) = GASORG(:,NBSPA+1:NBSPA+NBSPB) - - !Get aerosol phase concentration of type B aerosol - !AEROB(:,:) = PARTORG(:,NBSPA+1:NBSPA+NBSPB) - - CB(:,:)=WORG(:,NBSPA+1:NBSPA+NBSPB) - - CALL BMAIN ( & - CB & !I [ug/m3] total concentration - ,GASB & !I/O [ug/m3] concentration of type B gas - ,AEROB & !I/O [ug/m3] concentration of type B aerosol - ,PAOM & !I [ug/m3] Primary aerosol organic matter - ,TEMPK & !I [K] temperature - ) - - !Set values back to the PARTORG table - PARTORG(:,NBSPA+1:NBSPA+NBSPB) = AEROB(:,:) - - !Set values back to the GASORG table - GASORG(:,NBSPA+1:NBSPA+NBSPB) = GASB(:,:) - - !Don't do type B calculations again if done once - TBOAFLAG=0 - - ENDIF !TBOAFLAG is 1 - - IF (LHOOK) CALL DR_HOOK('MODE_OAMAIN:PUN',1,ZHOOK_HANDLE) - END SUBROUTINE PUN - -END MODULE MODE_OAMAIN diff --git a/src/arome/chem/module/mode_salt_psd.F90 b/src/arome/chem/module/mode_salt_psd.F90 deleted file mode 100644 index c4a4092f55b02cdacef633ebba432f2ca5e81170..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_salt_psd.F90 +++ /dev/null @@ -1,530 +0,0 @@ -! ######spl - MODULE MODE_SALT_PSD - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -!! ######################## -!! -!! PURPOSE -!! ------- -!! MODULE SALT PSD (Particle Size Distribution) -!! Purpose: Contains subroutines to convert from transported variables (ppp) -!! to understandable aerosol variables, e.g. #/m3, kg/m3, sigma, R_{n} -!! -!! AUTHOR -!! ------ -!! Alf Grini (CNRM/GMEI) -!! -!! MODIFICATIONS -!! ------------- -!! -!------------------------------------------------------------------------------- -! -USE MODD_CSTS_SALT !Constants which are important for sea salt calculations -USE MODD_SALT !Dust module which contains even more constants -! -IMPLICIT NONE -! -CONTAINS -! -!! ############################################################ - SUBROUTINE PPP2SALT( & - PSVT & !I [ppp] input scalar variables (moment of distribution) - , PRHODREF & !I [kg/m3] density of air - , PSIG3D & !O [-] standard deviation of aerosol distribution - , PRG3D & !O [um] number median diameter of aerosol distribution - , PN3D & !O [#/m3] number concentration of aerosols - , PMASS3D & !O [kg/m3] mass concentration of aerosol - , PM3D & !O aerosols moments 0, 3 and 6 - ) -!! ############################################################ -! -!! -!! PURPOSE -!! ------- -!! Translate the three moments M0, M3 and M6 given in ppp into -!! Values which can be understood more easily (R, sigma, N, M) -!! -!! CALLING STRUCTURE NOTE: OPTIONAL VARIABLES -!! ------- -!! CALL PPP2AEROS(PSVT, PRHODREF, PSIG3D=SIGVAR, & -!! PRG3D=RVAR, PN3D=NVAR, PM3D=MASSVAR) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! 2005 Alf Grini (CNRM) -!! 2006 Jean-Pierre Chaboureau (LA) -!! -!! EXTERNAL -!! -------- -!! None -!! - IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !I [ppp] first moment -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF !I [kg/m3] density of air - -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PSIG3D !O [-] standard deviation -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PRG3D !O [um] number median diameter -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PN3D !O [#/m3] number concentration -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PMASS3D !O [kg_{aer}/m3] mass concentration -REAL, DIMENSION(:,:,:,:), OPTIONAL, INTENT(OUT) :: PM3D !O aerosols moments -! -! -!* 0.2 declarations local variables -! -REAL :: ZRHOI ! [kg/m3] density of aerosol -REAL :: ZMI ! [kg/mol] molar weight of aerosol -REAL :: ZRGMIN ! [um] minimum radius accepted -REAL :: ZSIGMIN ! minimum standard deviation accepted -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM ! [aerosol units] local array which goes to output later -REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZSV ! [sea salts moment concentration] -REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZSIGMA ! [-] standard deviation -REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZRG ! [um] number median diameter -REAL,DIMENSION(:), ALLOCATABLE :: ZMMIN ! [aerosol units] minimum values for N, sigma, M -INTEGER,DIMENSION(:), ALLOCATABLE :: NM0 ! [idx] index for Mode 0 in passed variables -INTEGER,DIMENSION(:), ALLOCATABLE :: NM3 ! [idx] indexes for Mode 3 in passed variables -INTEGER,DIMENSION(:), ALLOCATABLE :: NM6 ! [idx] indexes for Mode 6 in passed variables -REAL,DIMENSION(:), ALLOCATABLE :: ZINIRADIUS ! initial mean radius -INTEGER :: JN,IMODEIDX,JJ ! [idx] loop counters -! -!------------------------------------------------------------------------------- -! -! 1.1 initialisation -! -!Calculations here are for one mode only -! -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('MODE_SALT_PSD:PPP2SALT',0,ZHOOK_HANDLE) -ALLOCATE (NM0(NMODE_SLT)) -ALLOCATE (NM3(NMODE_SLT)) -ALLOCATE (NM6(NMODE_SLT)) -ALLOCATE (ZM(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3), NMODE_SLT*3)) -ALLOCATE (ZMMIN(NMODE_SLT*3)) -ALLOCATE (ZSIGMA(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3))) -ALLOCATE (ZRG(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3))) -ALLOCATE (ZSV(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3), SIZE(PSVT,4))) -ALLOCATE (ZINIRADIUS(NMODE_SLT)) - -ZSV(:,:,:,:) = MAX(PSVT(:,:,:,:), 1.E-80) - -DO JN=1,NMODE_SLT - IMODEIDX = JPSALTORDER(JN) - !Calculations here are for one mode only - IF (CRGUNITS=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) * EXP(-3.*(LOG(XINISIG_SLT(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) - END IF - - !Set counter for number, M3 and M6 - NM0(JN) = 1+(JN-1)*3 - NM3(JN) = 2+(JN-1)*3 - NM6(JN) = 3+(JN-1)*3 - !Get minimum values possible - ZMMIN(NM0(JN)) = XN0MIN_SLT(IMODEIDX) - ZRGMIN = ZINIRADIUS(JN) - IF (LVARSIG_SLT) THEN - ZSIGMIN = XSIGMIN_SLT - ELSE - ZSIGMIN = XINISIG_SLT(IMODEIDX) - ENDIF - ZMMIN(NM3(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**3)*EXP(4.5 * LOG(ZSIGMIN)**2) - ZMMIN(NM6(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**6)*EXP(18. * LOG(ZSIGMIN)**2) -END DO -! -!Set density of aerosol, here sea salt (kg/m3) -ZRHOI = XDENSITY_SALT -!Set molecular weight of sea salt !NOTE THAT THIS IS NOW IN KG -ZMI = XMOLARWEIGHT_SALT -! -! -DO JN=1,NMODE_SLT - ! - IF (LVARSIG_SLT) THEN ! give M6 (case of variable standard deviation) - ! - !Get number concentration (#/molec_{air}==>#/m3) - ZM(:,:,:,NM0(JN))= & - ZSV(:,:,:,1+(JN-1)*3) & !#/molec_{air} - * XAVOGADRO & !==>#/mole - / XMD & !==>#/kg_{air} - * PRHODREF(:,:,:) !==>#/m3 - ! - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - ZM(:,:,:,NM3(JN)) = & - ZSV(:,:,:,2+(JN-1)*3) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3_SALT & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - !Limit mass concentration to minimum value - ZM(:,:,:,NM3(JN)) = MAX(ZM(:,:,:,NM3(JN)), ZMMIN(NM3(JN))) - ! - ZM(:,:,:,NM6(JN)) = ZSV(:,:,:,3+(JN-1)*3) & !um6/molec_{air}*(cm3/m3) - * 1.d-6 & !==> um6/molec_{air} - * XAVOGADRO & !==> um6/mole_{air} - / XMD & !==> um6/kg_{air} - * PRHODREF(:,:,:) !==> um6/m3_{air} - !Limit m6 concentration to minimum value - ZM(:,:,:,NM6(JN)) = MAX(ZM(:,:,:,NM6(JN)), ZMMIN(NM6(JN))) - ! - !Get sigma (only if sigma is allowed to vary) - !Get intermediate values for sigma M3^2/(M0*M6) (ORILAM paper, eqn 8) - ZSIGMA(:,:,:)=ZM(:,:,:,NM3(JN))**2/(ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM6(JN))) - !Limit the intermediate value, can not be larger than 1 - ZSIGMA(:,:,:)=MIN(1-1E-10,ZSIGMA(:,:,:)) - !Limit the value for intermediate, can not be smaller than 0 - ZSIGMA(:,:,:)=MAX(1E-10,ZSIGMA(:,:,:)) - !Calculate log(sigma) - ZSIGMA(:,:,:)= LOG(ZSIGMA(:,:,:)) - !Finally get the real sigma the negative sign is because of - !The way the equation is written (M3^2/(M0*M6)) instead of (M0*M6)/M3^3 - ZSIGMA(:,:,:)= EXP(1./3.*SQRT(-ZSIGMA(:,:,:))) - !Limit the value to reasonable ones - ZSIGMA(:,:,:) = MAX( XSIGMIN_SLT, MIN( XSIGMAX_SLT, ZSIGMA(:,:,:) ) ) - - ! - !Put back M6 so that it fits the sigma which is possibly modified above - !The following makes M6 consistent with N, R, SIGMA - ZM(:,:,:,NM6(JN)) = ZM(:,:,:,NM0(JN)) & - * ( (ZM(:,:,:,NM3(JN))/ZM(:,:,:,NM0(JN)))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:,:,:))**2))**6 & - * exp(18.*log(ZSIGMA(:,:,:))**2) - - ELSE ! compute M6 from M0, M3 and SIGMA - ! - ZSIGMA(:,:,:) = XINISIG_SLT(JPSALTORDER(JN)) - IF (LRGFIX_SLT) THEN - - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - ZM(:,:,:,NM3(JN)) = & - ZSV(:,:,:,JN) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3_SALT & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - ZM(:,:,:,NM3(JN)) = MAX(ZM(:,:,:,NM3(JN)), ZMMIN(NM3(JN))) - - ZM(:,:,:,NM0(JN))= ZM(:,:,:,NM3(JN))/& - ((ZINIRADIUS(JN)**3)*EXP(4.5 * LOG(XINISIG_SLT(JPSALTORDER(JN)))**2)) - - ELSE - - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - ZM(:,:,:,NM3(JN)) = & - ZSV(:,:,:,2+(JN-1)*2) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3_SALT & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - - - !Get number concentration (#/molec_{air}==>#/m3) - ZM(:,:,:,NM0(JN))= & - ZSV(:,:,:,1+(JN-1)*2) & !#/molec_{air} - * XAVOGADRO & !==>#/mole - / XMD & !==>#/kg_{air} - * PRHODREF(:,:,:) !==>#/m3 - - ! Limit concentration to minimum values - WHERE ((ZM(:,:,:,NM0(JN)) < ZMMIN(NM0(JN)) ).OR. & - (ZM(:,:,:,NM3(JN)) < ZMMIN(NM3(JN)) )) - ZM(:,:,:,NM0(JN)) = ZMMIN(NM0(JN)) - ZM(:,:,:,NM3(JN)) = ZMMIN(NM3(JN)) - PSVT(:,:,:,1+(JN-1)*2) = ZM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO * PRHODREF(:,:,:) ) - PSVT(:,:,:,2+(JN-1)*2) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) - ENDWHERE - - END IF - - ZM(:,:,:,NM6(JN)) = ZM(:,:,:,NM0(JN)) & - * ( (ZM(:,:,:,NM3(JN))/ZM(:,:,:,NM0(JN)))**(1./3.) & - * exp(-(3./2.)*log(ZSIGMA(:,:,:))**2))**6 & - * exp(18.*log(ZSIGMA(:,:,:))**2) - - ! - END IF - ! - !Get number median radius (eqn. 7 in Orilam manuscript) - ZRG(:,:,:)= & - ( & - ZM(:,:,:,NM3(JN))*ZM(:,:,:,NM3(JN))*ZM(:,:,:,NM3(JN))*ZM(:,:,:,NM3(JN)) & - /(ZM(:,:,:,NM6(JN))*ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM0(JN))*ZM(:,:,:,NM0(JN))) & - ) & - ** XSIXTH_SALT - !ZRG(:,:,:)=MIN(ZRG(:,:,:),ZINIRADIUS(JN)) - !Give the sigma-values to the passed array - IF(PRESENT(PSIG3D)) PSIG3D(:,:,:,JN) = ZSIGMA(:,:,:) - ! - !Set the number concentrations in the passed array - IF(PRESENT(PN3D)) PN3D(:,:,:,JN) = ZM(:,:,:,NM0(JN)) - ! - !Get the number median radius - IF(PRESENT(PRG3D)) PRG3D(:,:,:,JN)= ZRG(:,:,:) - ! - IF(PRESENT(PMASS3D))THEN - PMASS3D(:,:,:,JN)= & - ZM(:,:,:,NM0(JN)) & !#/m^3_{air} - * XPI*4./3. & - * ZRHOI & !==>kg/m^3_{aeros}/m^3_{air} - * ZRG(:,:,:) * ZRG(:,:,:) * ZRG(:,:,:) & - * XUM3TOM3_SALT & !==>kg/m^3_{air} - * exp(4.5*log(ZSIGMA(:,:,:))*log(ZSIGMA(:,:,:))) - ENDIF -! -END DO !Loop on modes -! -IF(PRESENT(PM3D)) PM3D(:,:,:,:) = ZM(:,:,:,:) -! -DEALLOCATE(ZINIRADIUS) -DEALLOCATE(ZSV) -DEALLOCATE(ZRG) -DEALLOCATE(ZSIGMA) -DEALLOCATE(ZMMIN) -DEALLOCATE(ZM) -DEALLOCATE(NM6) -DEALLOCATE(NM3) -DEALLOCATE(NM0) -! -! -IF (LHOOK) CALL DR_HOOK('MODE_SALT_PSD:PPP2SALT',1,ZHOOK_HANDLE) -END SUBROUTINE PPP2SALT - -!! ############################################################ - SUBROUTINE SALT2PPP( & - PSVT & !IO [ppp] input scalar variables (moment of distribution) - , PRHODREF & !I [kg/m3] density of air - , PSIG3D & !I [-] standard deviation of aerosol distribution - , PRG3D & !I [um] number median diameter of aerosol distribution - ) -!! ############################################################ -! -!! -!! PURPOSE -!! ------- -!! Translate the sea salt Mass, RG and SIGMA in the three moments M0, M3 and M6 given in ppp -!! -!! CALLING STRUCTURE NOTE: OPTIONAL VARIABLES -!! ------- -!! CALL PPP2AEROS(PSVT, PRHODREF, PSIG3D=SIGVAR, & -!! PRG3D=RVAR, PN3D=NVAR) -!! -!! REFERENCE -!! --------- -!! none -!! -!! AUTHOR -!! ------ -!! Pierre TULET (LA) -!! -!! MODIFICATIONS -!! ------------- -!! Alf Grini (CNRM) -!! -!! EXTERNAL -!! -------- -!! None -!! - IMPLICIT NONE -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -!* 0.1 declarations of arguments -! - !INPUT - REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF !I [kg/m3] density of air - REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG3D !O [-] standard deviation - REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRG3D !O [um] number median diameter - - !OUTPUT - REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !IO [#/molec_{air}] first moment - !IO [molec_{aer}/molec_{air} 3rd moment - !IO [um6/molec_{air}*(cm3/m3)] 6th moment -! -! -!* 0.2 declarations local variables -! - REAL :: ZRHOI ! [kg/m3] density of aerosol - REAL :: ZMI ! [kg/mol] molar weight of aerosol - REAL :: ZRGMIN ! [um] minimum radius accepted - REAL :: ZSIGMIN ! minimum standard deviation accepted - REAL,DIMENSION(:,:,:,:), ALLOCATABLE :: ZM ! [aerosol units] local array which goes to output later - REAL,DIMENSION(:,:,:), ALLOCATABLE :: ZSIGMA ! aersol standard deviation - REAL,DIMENSION(:), ALLOCATABLE :: ZMMIN ! [aerosol units] minimum values for N, sigma, M - REAL,DIMENSION(:), ALLOCATABLE :: ZINIRADIUS ! initial mean radius - INTEGER,DIMENSION(:), ALLOCATABLE :: NM0 ! [idx] index for Mode 0 in passed variables - INTEGER,DIMENSION(:), ALLOCATABLE :: NM3 ! [idx] indexes for Mode 3 in passed variables - INTEGER,DIMENSION(:), ALLOCATABLE :: NM6 ! [idx] indexes for Mode 6 in passed variables - INTEGER :: JJ, JN ! [idx] loop counters - INTEGER :: IMODEIDX -! -!------------------------------------------------------------------------------- -! -! 1.1 initialisation - - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SALT_PSD:SALT2PPP',0,ZHOOK_HANDLE) - ALLOCATE (NM0(NMODE_SLT)) - ALLOCATE (NM3(NMODE_SLT)) - ALLOCATE (NM6(NMODE_SLT)) - ALLOCATE (ZINIRADIUS(NMODE_SLT)) - ALLOCATE (ZMMIN(NMODE_SLT*3)) - ALLOCATE (ZM(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3), NMODE_SLT*3)) - ALLOCATE (ZSIGMA(SIZE(PSVT,1), SIZE(PSVT,2), SIZE(PSVT,3))) - - !Set density of aerosol, here sea salt (kg/m3) - ZRHOI = XDENSITY_SALT - !Set molecular weight of sea salt !NOTE THAT THIS IS NOW IN KG - ZMI = XMOLARWEIGHT_SALT -! - - ! PSVT need to be positive - PSVT(:,:,:,:) = MAX(PSVT(:,:,:,:), 1E-80) - - DO JN=1,NMODE_SLT - IMODEIDX = JPSALTORDER(JN) - !Calculations here are for one mode only - IF (CRGUNITS=="MASS") THEN - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) * EXP(-3.*(LOG(XINISIG_SLT(IMODEIDX)))**2) - ELSE - ZINIRADIUS(JN) = XINIRADIUS_SLT(IMODEIDX) - END IF - - !Set counter for number, M3 and M6 - NM0(JN) = 1+(JN-1)*3 - NM3(JN) = 2+(JN-1)*3 - NM6(JN) = 3+(JN-1)*3 - - !Get minimum values possible - ZMMIN(NM0(JN)) = XN0MIN_SLT(IMODEIDX) - ZRGMIN = ZINIRADIUS(JN) - IF (LVARSIG_SLT) THEN - ZSIGMIN = XSIGMIN_SLT - ELSE - ZSIGMIN = XINISIG_SLT(IMODEIDX) - ENDIF - ZMMIN(NM3(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**3)*EXP(4.5 * LOG(ZSIGMIN)**2) - ZMMIN(NM6(JN)) = ZMMIN(NM0(JN)) * (ZRGMIN**6)*EXP(18. * LOG(ZSIGMIN)**2) - END DO - - !Set density of aerosol, here sea salt (kg/m3) - ZRHOI = XDENSITY_SALT - !Set molecular weight of sea salt !NOTE THAT THIS IS NOW IN KG - ZMI = XMOLARWEIGHT_SALT -! - DO JN=1,NMODE_SLT - !calculate moment 3 from total aerosol mass (molec_{aer}/molec_{air} ==> - IF (LVARSIG_SLT) THEN - ZM(:,:,:,NM3(JN)) = & - PSVT(:,:,:,2+(JN-1)*3) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3_SALT & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - ELSE - IF ((LRGFIX_SLT)) THEN - ZM(:,:,:,NM3(JN)) = & - PSVT(:,:,:,JN) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3_SALT & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - ZM(:,:,:,NM3(JN)) = MAX(ZM(:,:,:,NM3(JN)), ZMMIN(NM3(JN))) - ELSE - ZM(:,:,:,NM3(JN)) = & - PSVT(:,:,:,2+(JN-1)*2) & !molec_{aer}/molec_{aer} - * (ZMI/XMD) & !==>kg_{aer}/kg_{aer} - * PRHODREF(:,:,:) & !==>kg_{aer}/m3_{air} - * (1.d0/ZRHOI) & !==>m3_{aer}/m3_{air} - * XM3TOUM3_SALT & !==>um3_{aer}/m3_{air} - / (XPI * 4./3.) !==>um3_{aer}/m3_{air} (volume ==> 3rd moment) - END IF - END IF -! calculate moment 0 from dispersion and mean radius - ZM(:,:,:,NM0(JN))= ZM(:,:,:,NM3(JN))/& - ((PRG3D(:,:,:,JN)**3)*EXP(4.5 * LOG(PSIG3D(:,:,:,JN))**2)) - - -! calculate moment 6 from dispersion and mean radius - ZM(:,:,:,NM6(JN)) = ZM(:,:,:,NM0(JN)) * (PRG3D(:,:,:,JN)**6) * & - EXP(18 *(LOG(PSIG3D(:,:,:,JN)))**2) - - IF (LVARSIG_SLT) THEN - WHERE ((ZM(:,:,:,NM0(JN)) .LT. ZMMIN(NM0(JN))).OR.& - (ZM(:,:,:,NM3(JN)) .LT. ZMMIN(NM3(JN))).OR.& - (ZM(:,:,:,NM6(JN)) .LT. ZMMIN(NM6(JN)))) - ZM(:,:,:,NM0(JN)) = ZMMIN(NM0(JN)) - ZM(:,:,:,NM3(JN)) = ZMMIN(NM3(JN)) - ZM(:,:,:,NM6(JN)) = ZMMIN(NM6(JN)) - END WHERE - ELSE IF (.NOT.(LRGFIX_SLT)) THEN - - WHERE ((ZM(:,:,:,NM0(JN)) .LT. ZMMIN(NM0(JN))).OR.& - (ZM(:,:,:,NM3(JN)) .LT. ZMMIN(NM3(JN)))) - ZM(:,:,:,NM0(JN)) = ZMMIN(NM0(JN)) - ZM(:,:,:,NM3(JN)) = ZMMIN(NM3(JN)) - END WHERE - ENDIF - - - ! return to concentration #/m3 => (#/molec_{air} - IF (LVARSIG_SLT) THEN - PSVT(:,:,:,1+(JN-1)*3) = ZM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - - PSVT(:,:,:,2+(JN-1)*3) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3 * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) - - PSVT(:,:,:,3+(JN-1)*3) = ZM(:,:,:,NM6(JN)) * XMD / & - ( XAVOGADRO*PRHODREF(:,:,:) * 1.d-6) - ELSE IF (LRGFIX_SLT) THEN - PSVT(:,:,:,JN) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) - ELSE - PSVT(:,:,:,1+(JN-1)*2) = ZM(:,:,:,NM0(JN)) * XMD / & - (XAVOGADRO*PRHODREF(:,:,:)) - - PSVT(:,:,:,2+(JN-1)*2) = ZM(:,:,:,NM3(JN)) * XMD * XPI * 4./3. * ZRHOI / & - (ZMI*PRHODREF(:,:,:)*XM3TOUM3_SALT) - END IF - -! - END DO !Loop on modes - -DEALLOCATE(ZINIRADIUS) -DEALLOCATE(ZMMIN) -DEALLOCATE(ZSIGMA) -DEALLOCATE(ZM) -DEALLOCATE(NM6) -DEALLOCATE(NM3) -DEALLOCATE(NM0) -! -IF (LHOOK) CALL DR_HOOK('MODE_SALT_PSD:SALT2PPP',1,ZHOOK_HANDLE) -END SUBROUTINE SALT2PPP -! -END MODULE MODE_SALT_PSD diff --git a/src/arome/chem/module/mode_soaeql.F90 b/src/arome/chem/module/mode_soaeql.F90 deleted file mode 100644 index 84ebd945f4f324fbfc48676654d159dfde5cf1df..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_soaeql.F90 +++ /dev/null @@ -1,329 +0,0 @@ -! ######spl -module mode_soaeql -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - !Purpose: module to iterate on the SOA concentration until equilibrium - !Inspired by programs recieved from B. Pun/R. Griffin, 2005 - !Written by Alf Grini, alf.grini@cnrm.meteo.fr, 2005 - - use modd_glo - use modd_unifacparam - use mode_soaeqlutl - use mode_unifac - - IMPLICIT NONE - -CONTAINS - - subroutine soaeql( & - acHP & !I [mol/kg_{water}] proton concentration - ,LWC & !I [ug/m3] liquid water content - ,CPT & !I [ug/m3] primary organic concentration - ,TEMPK & !I [K] temperature - ,GAS & !I/O [ug/m3] gas phase concentrations of SOA - ,AERO_AQ & !I/O [ug/m3] aquous phase concentrations of SOA and ions - ,AERO_ORG & !I/O [ug/m3] organic phase concentrations of SOA - ,CB & !I [ug/m3] total SOA concentration (GAS + AQ + ORG) - ,K & !I [m3/ug and mole/kg] Henry's law and dissocation constants at right T - ,SI_ORG & !I [?] T-dependent coefficient in UNIFAC parameterization - ,SI_AQ & !I [?] T-dependent coefficient in UNIFAC parameterization - ,VP & !I [torr] saturation vapor pressures for organic phase SOA - ) - - !Purpose: Iterate the following equations until convergence - !1) Equilibrium between organic phase and gas phase - !2) Equilibrium between aquous phase and gas phase - !3) Dissociation in aquous phase (H2A = H+ + HA- + A--) - !4) Mass balance for all species - IMPLICIT NONE - - !Input - REAL, INTENT(IN), DIMENSION(:,:) :: CPT !I [ug/m3] Primary organic aerosols - REAL, INTENT(IN), DIMENSION(:) :: TEMPK !I [K] Temperature - REAL, INTENT(IN), DIMENSION(:) :: acHP !I [mol/kg_{water}] proton concentration - REAL, INTENT(IN), DIMENSION(:) :: LWC !I [ug/m3] liquid water content - REAL, INTENT(IN), DIMENSION(:,:,:) :: SI_AQ !I [-] term in UNIFAC for aquous component - REAL, INTENT(IN), DIMENSION(:,:,:) :: SI_ORG !I [-] term in UNIFAC for organic phase - REAL, INTENT(IN), DIMENSION(:,:) :: VP !I [torr] saturation vapor pressures for SOA phase - REAL, INTENT(IN), DIMENSION(:,:) :: CB !I [ug/m3] total concentration of (AQ+ORG+GAS) - REAL, INTENT(IN), DIMENSION(:,:) :: K !I [m3/ug and mole/kg] Henry's law and dissociation constants - - !Input/output - REAL, INTENT(INOUT), DIMENSION(:,:) :: AERO_ORG !I/O [ug/m3] SOA in organic phase - REAL, INTENT(INOUT), DIMENSION(:,:) :: AERO_AQ !I/O [ug/m3] SOA in aquous phase (acids and ions) - REAL, INTENT(INOUT), DIMENSION(:,:) :: GAS !I/O [ug/m3] SOA in gas phase - - !Local - REAL, DIMENSION(SIZE(TEMPK)) :: M0_ORG ![ug/m3] total organic aerosol in grid cell - REAL, DIMENSION(SIZE(TEMPK)) :: MW_AVG_ORG ![g/mol] average molecular weight of organic phase - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: NOMINATOR ![-] term to transfer between H2A and total AQ aerosol - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: GAS_ORG ![ug/m3] gas concentration in eql with organic phase - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: GAS_AQ ![ug/m3] gas concentration in eql with aquous phase - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: KPART ![m3/ug] partitioning coeffient for organic phase - REAL, DIMENSION(SIZE(AERO_ORG,1)) :: TMOL_AQ ![umol/m3] total moles of aquous phase - REAL, DIMENSION(SIZE(AERO_ORG,1),SIZE(AERO_ORG,2)) :: totAER_AQ ![ug/m3] total (acid +ions) concentration of aq. phase - REAL, DIMENSION(:,:), ALLOCATABLE :: X_ORG ![frc] fraction of component in organic phase POA + SOA - REAL, DIMENSION(:,:), ALLOCATABLE :: X_AQ ![frc] fraction of main components in aquous phase (SOA + H2O) - REAL, DIMENSION(:,:), ALLOCATABLE :: GAMMA_ORG ![-] activity coefficients for organic phase (POA and SOA) - REAL, DIMENSION(:,:), ALLOCATABLE :: GAMMA_AQ ![-] activity coefficients for aquous phase (Raoult and main components) - REAL, DIMENSION(:,:), ALLOCATABLE :: GAMMA_AQ_HENRY ![-] activity coefficients for aquous phase (Henry's law std. state) - REAL, DIMENSION(:,:), ALLOCATABLE :: GAMMA_AQ_RAOULT ![-] activity coefficients for aquous phase (Raoult's law std. state) - INTEGER :: I ![idx] counter for main components (acids) - INTEGER :: J ![idx] counter for sub components (ions) - INTEGER :: COMP_IDX ![idx] pointer to right component - INTEGER :: ITER_IDX ![idx] counter for number of iterations - INTEGER, PARAMETER :: MAX_ITER=6 !Number of iterations performed - - !Allocate memory - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQL:SOAEQL',0,ZHOOK_HANDLE) - ALLOCATE(X_ORG(SIZE(AERO_ORG,1),NBSP+NBSPOA)) - ALLOCATE(X_AQ(SIZE(AERO_ORG,1),NBSP+1)) - ALLOCATE(GAMMA_ORG(SIZE(AERO_ORG,1),NBSP+NBSPOA)) - ALLOCATE(GAMMA_AQ(SIZE(AERO_ORG,1),NBSP+1)) - ALLOCATE(GAMMA_AQ_RAOULT(SIZE(AERO_ORG,1),NAAERO)) - ALLOCATE(GAMMA_AQ_HENRY(SIZE(AERO_ORG,1),NAAERO)) - - - !Before starting iterations, get "nominator" which is term to transfer between totAER_AQ and AERO_AQ (acid) - CALL NOMINATOR_GET( & - acHP & !I [mol/kg_{water}] proton concentration - ,nominator & !O [-] term to transfer between acid and total aerosol - ,K & !I [m3/ug and mole/kg] Henry's law and acid dissociation constants - ,NKAQ & !I [nbr] number of sub and main comp for acid - ,NBSP & !I [nbr] number of (main) species to take into account - ) - - DO ITER_IDX = 1,MAX_ITER - IF(LBOX)THEN - write(6,*)"*******************************************" - write(6,*)"**************NEW ITERATION #", ITER_IDX,"********" - write(6,*)"********************************************" - ENDIF - - !Get molar fraction of species in organic phase - CALL XORG_GET( & - CPT & !I [ug/m3] concentrations of primary organic aerosols - ,AERO_ORG & !I [ug/m3] guessed concentration of aerosols - ,M0_ORG & !O [ug/m3] total organic mass (POA + SOA) - ,X_ORG & !O [frc] fractions in organic phase of POA and SOA - ,MW_AVG_ORG & !I [g/mol] average molecular weight of organic phase - ) - IF(LPRINT)THEN - DO I=1,NBSPOA - write(6,*)"CPT", CPT(:,I) - ENDDO - DO I=1,NBSP - write(6,*)"AERO/CB", AERO_ORG(:,I), CB(:,I) - ENDDO - ENDIF - IF(LBOX)THEN - do I =1,NBSP+NBSPOA - write(6,*)"X_ORG",I, X_ORG(:,I) - ENDDO - ENDIF - - !Get activity coefficients - CALL ACT_COEFF_GET( & - NU_ORG & - ,X_ORG & - ,QG_ORG & - ,GAMMA_ORG & - ,THTAGP_ORG & - ,Q_ORG & - ,R_ORG & - ,L_ORG & - ,SI_ORG & - ,NMOL_ORG & !POA and SOA species (normally 18 species) - ,NFUNC_ORG & - ) - - !Get partitioning coefficients - CALL KPART_GET( & - TEMPK & !I [K] temperature - , GAMMA_ORG & !I [-] Activity coefficient - , MW_AVG_ORG & !I [g/mol] Molecular weight of organic matter - , KPART & !O [m3/ug] partitioning coefficient for species - , VP & !I [torr] vapor pressures - , NBSPOA & !I [nbr] number of activity coefficients to skip in GAMMA_ORG - ) - - IF(LBOX)THEN - do I=1,NBSP - write(6,*)"KOM/GAMMA_ORG",I, KPART(:,I),GAMMA_ORG(:,I) - enddo - ENDIF - - !Calculate gas phase concentrations from organic aerosol phase - DO I=1,NBSP - GAS_ORG(:,I) = AERO_ORG(:,I) & ![ug/m3] - /(KPART(:,I)*M0_ORG(:)) ![no unit] ==> [ug/m3] - ENDDO - - !At this point, we have aerosol and gas phase concentrations which probably - !are not in accordance with mass balance, we check for this lower down in the - !subroutine, now take care of aquous phase - - !Get molar fraction of component in aquous phase - !Only main components, not ions! Ions are summed into main component! - CALL XAQ_GET( & - LWC & !I [ug/m3] liquid water content - ,AERO_AQ & !I [ug/m3] concentrations of acids and ions in aquous phase - ,X_AQ & !O [frc] molar fraction of main component (sum of acid+ions) in aq phase - ,TMOL_AQ & !O [umol/m3] total mole of aquous phase - ,MW_SOA & !I [g/mol] molecular weight of species - ,NKAQ & !I [nbr] number of components for main acid - ,NBSP & !I [nbr] number of main species - ) - - IF(LBOX)THEN - DO I=1,NBSP+1 - write(6,*)"X_AQ" , I, X_AQ(:,I) - ENDDO - ENDIF - - IF(LPRINT)THEN - COMP_IDX=1 - DO I=1,NBSP - write(6,*)"AERO_AQ",I, AERO_AQ(:,COMP_IDX) - COMP_IDX=COMP_IDX+1 - DO J=2,NKAQ(I) - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - write(6,*)"LWC", LWC(:) - write(6,*)"HPLUS", acHP(:) - ENDIF - - !Get raoult's law standard state activity coefficients - !Here, only treat main components, i.e. (H2A, HA- and A(2-) as one comp) - CALL ACT_COEFF_GET( & - NU_AQ & - ,X_AQ & - ,QG_AQ & - ,GAMMA_AQ & - ,THTAGP_AQ & - ,Q_AQ & - ,R_AQ & - ,L_AQ & - ,SI_AQ & - ,NMOL_AQ & !Use the 10 main components and water (=11 components) - ,NFUNC_AQ & - ) - - IF(LPRINT)THEN - do I=1,11 - write(6,*)"GAMMA_AQ",I,gamma_aq(:,I) - enddo - ENDIF - - !Set activity coeffients for all components, ions and acids - !to the Raoult's law standard state value for the real X - COMP_IDX=1 - DO I=1,NBSP - GAMMA_AQ_RAOULT(:,COMP_IDX)=GAMMA_AQ(:,I) - COMP_IDX = COMP_IDX +1 - !Set activity coefficients for the sub-components - !equal to those for the main components - DO J=2,NKAQ(I) - GAMMA_AQ_RAOULT(:,COMP_IDX) = GAMMA_AQ(:,I) - COMP_IDX=COMP_IDX + 1 - ENDDO !loop on ions - ENDDO !loop on main comp - - !Get the activity coefficients for Henry's law standard state - CALL ACT_COEFF_HENRY_GET( & - X_AQ & !I [frc] molar fraction of components in aquous phase - ,TMOL_AQ & !I [umol/m3] total number of umol in aquous phase - ,GAMMA_AQ_RAOULT & !I [-] Raoult's law standard state activity coefficents - ,SI_AQ & !I [?] temperature dependent UNIFAC parameter - ,GAMMA_AQ_HENRY & !O [-] Henry's law standard state activity coefficients - ) - - !write things - IF(LPRINT)THEN - COMP_IDX=1 - DO I=1,NBSP - write(6,*)"gamma_henry",I, GAMMA_AQ_HENRY(:,COMP_IDX) - COMP_IDX=COMP_IDX+1 - DO J=2,NKAQ(I) - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - ENDIF - - !Get the gas phase concentrations - CALL GAS_FROM_HENRY( & - AERO_AQ & !I [ug/m3] aerosol concentration of acid [H2A] and ions - ,GAMMA_AQ_HENRY & !I [-] Henry's law standard state activity coefficient - ,GAS_AQ & !O [ug/m3] gas phase concentrations - ,K & !I [m3/ug and mole/kg] Henry's law and acid diss. constants - ,LWC & !I [ug/m3] Liquid water content - ,NKAQ & !I [nbr] number of sub and main species for component - ,NBSP & !I [nbr] number of main species to take into account) - ) - - !Knowing the concentration of H2A and acids (via the "nominator") we can - !get the concentration of total aerosol by summing them and taking into account the - !difference in molecular weight between acids and ions - CALL AERO_TO_totAER ( & - AERO_AQ & !I [ug/m3] aquous phase concentrations (acid + ions) - ,totAER_AQ & !O [ug/m3] aquous phase concentrations (total = sum of acid+ions) - ,nominator & !I [-] transforming factor between acid and total - ,NKAQ & !I [nbr] number of sub and mean species - ,NBSP & !I [nbr] number of main species to take into account - ) - - !Adjust mass balance for all components, both in aq phase - !and in organic phase - CALL MB_ADJUST( & - CB & !I [ug/m3] total (aerosol + gas) concentration - ,GAS_AQ & !I [ug/m3] gas concentration in eql with aquous phase - ,GAS_ORG & !I [ug/m3] gas concentration in eql with org phase - ,totAER_AQ & !I/O [ug/m3] total aerosol concentration (acid+ions) aq phase - ,AERO_ORG & !I/O [ug/m3] total aerosol concentration in org phase - ,GAS & !O [ug/m3] new guess for gas phase concentration - ) - - IF(LBOX)THEN - DO I=1,NBSP - write(6,'(a,i5,3e15.4)')"GAS ORG/AQ/NEW", I, GAS_ORG(:,I),GAS_AQ(:,I), GAS(:,I) - ENDDO - - write(6,*)"budget" - DO I=1,NBSP - write(6,'(a,i5,3f17.11,e15.4)')"budget", I & - ,AERO_ORG(:,I)/CB(:,I)*100.& - ,totAER_AQ(:,I)/CB(:,I)*100. & - ,GAS(:,I)/CB(:,I)*100.d0 & - ,(CB(:,I)-totAER_AQ(:,I)-AERO_ORG(:,I)-GAS(:,I))/CB(:,I)*100.d0 - ENDDO - ENDIF - - - !Prepare for new iteration, get concentrations of H2A from knowing the corrected totAER_AQ - CALL totAER_TO_AERO( & - totAER_AQ & !I [ug/m3] total aerosol (acid+ions) in aq phase - ,NOMINATOR & !I [-] term which gives acid if we know total (acid+ions) - ,AERO_AQ & !O [ug/m3] acid and aerosol concentrations - ,acHP & !I [mole/kg_{water}] proton concentration - ,MW_SOA & !I [g/mol] molecular weight of species - ,K & !I [m3/ug and mole/kg] Henry's law and acid diss. constants - ,NKAQ & !I [nbr] number of sub and main components for a species - ,NBSP & !I nbr] number of main species to take into account - ) - - ENDDO - - DEALLOCATE(X_ORG) - DEALLOCATE(X_AQ) - DEALLOCATE(GAMMA_ORG) - DEALLOCATE(GAMMA_AQ) - DEALLOCATE(GAMMA_AQ_RAOULT) - DEALLOCATE(GAMMA_AQ_HENRY) - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQL:SOAEQL',1,ZHOOK_HANDLE) - END SUBROUTINE SOAEQL - -end module mode_soaeql diff --git a/src/arome/chem/module/mode_soaeqlutl.F90 b/src/arome/chem/module/mode_soaeqlutl.F90 deleted file mode 100644 index b952876731b7545cd2fda15606842c6278647cb6..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_soaeqlutl.F90 +++ /dev/null @@ -1,637 +0,0 @@ -! ######spl -module mode_soaeqlutl -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - !Purpose: module to iterate on the SOA concentration until equilibrium - !Inspired by programs recieved from B. Pun/R. Griffin, 2005 - !Written by Alf Grini, alf.grini@cnrm.meteo.fr, 2005 - - use modd_glo - use modd_unifacparam - use mode_unifac !To get activity coefficients - - implicit none - -contains - - !*********************************************** - subroutine XORG_GET( & - CPT & !I [ug/m3] primary organic aerosol - ,AERO_ORG & !I [ug/m3] guessed SOA concentrations organic phase - ,M0_ORG & !O [ug/m3] total weight of organic aerosol (POA+SOA) - ,X_ORG & !O [frc] molar fraction of organics - ,MW_AVG_ORG & !O [g/mol] average molecular weight of organic phase - ) - - !Purpose: Calculate molar fraction of each component, both SOA and POA - - implicit none - !Input - REAL, DIMENSION(:,:), INTENT(IN) :: CPT ![ug/m3] concentration of POA - REAL, DIMENSION(:,:), INTENT(IN) :: AERO_ORG ![ug/m3] concentration of SOA organic phase - - !Output - REAL, DIMENSION(:), INTENT(OUT) :: M0_ORG ![ug/m3] total mass of organic aerosol - REAL, DIMENSION(:,:), INTENT(OUT) :: X_ORG ![frc] molar fraction of organic SOA components - REAL, DIMENSION(:), INTENT(OUT) :: MW_AVG_ORG ![g/mol] average molar weight of organic phase - - !Local - INTEGER :: I ![idx] counter for components - INTEGER :: J ![idx] counter for ionic species - INTEGER :: COMP_IDX ![idx] pointer to non-ion component - REAL, DIMENSION(SIZE(CPT,1)) :: NTOT_ORG ![umol/m3] total moles of organic phase - - !Initialize - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:XORG_GET',0,ZHOOK_HANDLE) - M0_ORG(:)=0.d0 - NTOT_ORG(:)=0.d0 - MW_AVG_ORG(:)=0.d0 - - !Add up total mass and moles of POA species - DO I=1,NBSPOA - M0_ORG(:) = M0_ORG(:)+CPT(:,I) - NTOT_ORG(:)= NTOT_ORG(:) + CPT(:,I)/MW_POA(I) - ENDDO - - !Add up total mass and moles of SOA species - COMP_IDX=1 - DO I=1,NBSP - M0_ORG(:) = M0_ORG(:) + AERO_ORG(:,I) !Total ug/m3 - NTOT_ORG(:)= NTOT_ORG(:) + AERO_ORG(:,I)/MW_SOA(COMP_IDX) !Total umol/m3 - COMP_IDX=COMP_IDX+1 - !Skip ionic components - DO J=2,NKAQ(I) - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - - !Get molecular fraction and average molecular weight of organic phase - !First calcualte for POA species - DO I=1,NBSPOA - X_ORG(:,I) = CPT(:,I)/MW_POA(I) & ![umol/m3] - /NTOT_ORG(:) ![umol/m3] - - MW_AVG_ORG(:) = MW_AVG_ORG(:) + X_ORG(:,I)*MW_POA(I) - ENDDO - - !Then calculate for SOA species - COMP_IDX = 1 - DO I=1,NBSP - - !Get molar fraction of SOA component - X_ORG(:,I+NBSPOA) = AERO_ORG(:,I) & - /MW_SOA(COMP_IDX)/NTOT_ORG(:) - - !Add up the average molar weight of mixture - MW_AVG_ORG(:)= MW_AVG_ORG(:) & - + X_ORG(:,I+NBSPOA)*MW_SOA(COMP_IDX) - - !Prepare for next compoenents - COMP_IDX = COMP_IDX +1 - - !Skip ionic components here - DO J=2,NKAQ(I) - COMP_IDX = COMP_IDX +1 - ENDDO !J - - ENDDO !I - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:XORG_GET',1,ZHOOK_HANDLE) - end subroutine XORG_GET - - !********************************************* - - subroutine XAQ_GET( & - LWC & !I [ug/m3] liquid water content - ,AERO_AQ & !I [ug/m3] aquous phase aerosol concentrations of acids and ions - ,X_AQ & !O [frc] molar fraction of main component in aq phase - ,TMOL & !O [umole/m3] total aquous phase aerosol - ,MW & !I [g/mol] molecular weight of species - ,NK & !I [nbr] number of components for main acid - ,NSPIN &! I [nbr] number of main species - ) - - !Purpose: Get the molar fractions in the aquous phase - implicit none - - !Input: - REAL, DIMENSION(:), INTENT(IN) :: LWC !I [ug/m3] liquid water content - REAL, DIMENSION(:,:), INTENT(IN) :: AERO_AQ !I [ug/m3] aquous phase aerosol concentrations of acids and ions - INTEGER, DIMENSION(:), INTENT(IN) :: NK !I [nbr] number of components for main acid - INTEGER, INTENT(IN) :: NSPIN !I [nbr] number of main species (not including water!!) - REAL, DIMENSION(:) :: MW !I [g/mol] molecular weight of species - - !Output - REAL, DIMENSION(:,:), INTENT(OUT) :: X_AQ !O [frc] molar fraction of main component in aquous phase - REAL, DIMENSION(:), INTENT(OUT) :: TMOL !O [umol/m3] total moles of aquous phase - - !Local - REAL, DIMENSION(SIZE(LWC)) :: TMOLINV ![m3/umol] inverse total moles of aquous phase - INTEGER :: I ![idx] counter for aquous phase species - INTEGER :: COMP_IDX ![idx] pointer to correct aquous phase species - INTEGER :: J ![idx] counter for ions - INTEGER :: NBR_SUB_AND_MAIN ![nbr] number of sub and main species - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:XAQ_GET',0,ZHOOK_HANDLE) - NBR_SUB_AND_MAIN = SUM(NK) - - ! Calculate mole fraction (molecules only) - TMOL(:) = LWC(:) & ![ug/m3] - / MW_WATER ![g/mol] ==> umol/m3 - - DO I=1,NBR_SUB_AND_MAIN !All molecules and ions - TMOL(:) = TMOL(:) & - + AERO_AQ(:,I)/MW(I) - ENDDO - TMOLINV(:)=1.d0/TMOL(:) - - !Get the molar fraction of water as the last components - X_AQ(:,NSPIN+1) = LWC(:)/MW_WATER & - *TMOLINV(:) - - !Only count X of main components - !(i.e. acids and their dissociating products) - COMP_IDX=1 - DO I=1,NSPIN - - !Start by taking the amount of acid (non-dissociated component, H2A) - X_AQ(:,I)=AERO_AQ(:,COMP_IDX)/MW(COMP_IDX)*TMOLINV(:) - COMP_IDX=COMP_IDX + 1 - - !Add up any concentration of dissociated species (HA- or A2-) - DO J=2,NK(I) - X_AQ(:,I)=X_AQ(:,I)+AERO_AQ(:,COMP_IDX)/MW(COMP_IDX)*TMOLINV(:) - COMP_IDX=COMP_IDX + 1 - ENDDO - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:XAQ_GET',1,ZHOOK_HANDLE) - end subroutine XAQ_GET - - !***************************************** - - !************************************************ - subroutine kpart_get( & - TEMPK & !I [K] temperature - ,GAMMA_ORG & !I [-] activity coefficient - ,MW_AVG_ORG & !I [g/mol] average molar weight of organics - ,KB & !O [m3/ug] partitioning coefficient - ,VP & !I [torr] vapor pressure of SOA components - ,NSKIP & !I [nbr] number of species not used in the gamma_org array - ) - - !Purpose: get the partitioning coefficient - !Note that the activity coefficients here are for 18 species (POA + SOA) - !Whereas we calculate the K only for 10 species (SOA) - implicit none - - !INPUT - REAL, DIMENSION(:), INTENT(IN) :: TEMPK !I [K] temperature - REAL, DIMENSION(:,:), INTENT(IN) :: GAMMA_ORG !I [-] activity coefficients - REAL, DIMENSION(:) :: MW_AVG_ORG !I [g/mol] molecular weight organics - REAL, DIMENSION(:,:) :: VP !I [torr] saturation vapor pressure of component - INTEGER, INTENT(IN) :: NSKIP !I [nbr] number of species not used in the gamma_org array - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: KB !O [m3/ug] partitioning coefficient - - !LOCAL - INTEGER :: I - - !The only goal of this routine is to get the partitioning coeffient: - !So here is the way to do it: - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:KPART_GET',0,ZHOOK_HANDLE) - do i=1,NBSP - KB(:,i)= 760.d0 &!torr/atm - *R_UNIV &!(m3*atm)/(mol*K) - *1.d-6 &!g/ug - *TEMPK(:) &!K - /VP(:,I) &!torr - /MW_AVG_ORG(:) &!g/mol - /GAMMA_ORG(:,i+NSKIP) !Note that we use I+NBSPOA here to avoid the POA species - !==> m3/ug - enddo - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:KPART_GET',1,ZHOOK_HANDLE) - end subroutine kpart_get - - !************************************************************ - - subroutine gas_from_henry( & - AERO_AQ & !I [ug/m3] aerosol concentration of acid [H2A] and ions - ,GAMMA_HENRY & !I [-] Henry's law activity coeffients - ,GAS_AQ & !O [ug/m3] gas phase concentrations - ,K & !I [m3/ug and mole/kg] Henry's law and acid diss. constants - ,LWC & !I [ug/m3] Liquid water content - ,NK & !I [nbr] number of sub and main species for component - ,NSPIN & !I [nbr] number of main species to take into account - ) - - implicit none - - !INPUT - REAL, DIMENSION(:,:), INTENT(IN) :: AERO_AQ !I [ug/m3] aerosol concentration of acid [H2A] and ions - REAL, DIMENSION(:,:), INTENT(IN) :: K !I [m3/ug and mole/kg] Henry's law and acid diss. const - REAL, DIMENSION(:), INTENT(IN) :: LWC !I [ug/m3] liquid water content - REAL, DIMENSION(:,:), INTENT(IN) :: GAMMA_HENRY !I [-] Henry's law std. state act. coeff - INTEGER, DIMENSION(:), INTENT(IN) :: NK !I [nbr] number of sub and main species for component - INTEGER, INTENT(IN) :: NSPIN !I [nbr] number of main species to take into account - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: GAS_AQ !O [ug/m3] gas phase concentration in Henry's law eql with aerosol phase - - !LOCAL - INTEGER :: I ![idx] counter for aquous phase species - INTEGER :: COMP_IDX ![idx] pointer to correct aquous phase species - INTEGER :: J ![idx] counter for ions - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:GAS_FROM_HENRY',0,ZHOOK_HANDLE) - COMP_IDX=1 - DO I=1,NSPIN - - !Apply Henry's law to get the Gas phase concentrations - GAS_AQ(:,I)= & - AERO_AQ(:,COMP_IDX)*GAMMA_HENRY(:,COMP_IDX) & - /(LWC(:)*K(:,COMP_IDX)) !Henry's law equilibrium - - !Prepare for next component - COMP_IDX = COMP_IDX +1 - - !Skip ionic components - DO J=2,NK(I) - COMP_IDX = COMP_IDX +1 - ENDDO - - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:GAS_FROM_HENRY',1,ZHOOK_HANDLE) - end subroutine gas_from_henry - - !*********************************************** - subroutine ACT_COEFF_HENRY_GET( & - X_AQ & !I [frc] molar fraction of components in aquous phase - ,TMOL_AQ & !I [umol/m3] total number of umol in aquous phase - ,GAMMA_RAOULT & !I [-] Raoult's law standard state activity coefficents - ,SI_AQ & !I [?] temperature dependent term for UNIFAC - ,GAMMA_HENRY & !O [-] Henry's law standard state activity coefficients - ) - - !Purpose: transform Raoult's law standard state activity coefficients - !into Henry' law standard state. This involves calculating activity coefficients - !for component "i" in infinite dillute solution, and normalize the Raoult's - !law activity coefficients - implicit none - !Input - REAL, DIMENSION(:,:), INTENT(INOUT) :: X_AQ ![frc] fraction of components in aquous phase - REAL, DIMENSION(:), INTENT(IN) :: TMOL_AQ ![umol/m3] total moles of aquous phase mixture - REAL, DIMENSION(:,:), INTENT(IN) :: GAMMA_RAOULT ![-] raoult's law standard state activity coeffients - REAL, DIMENSION(:,:,:), INTENT(IN) :: SI_AQ ![?] temperature dependent term for unifac - - !Output - REAL, DIMENSION(:,:), INTENT(OUT) :: GAMMA_HENRY ![-] Henry's law standard state activity coeffients - - !Local - REAL, DIMENSION(SIZE(X_AQ,1)) :: TMPX ![frc] saved value for mole fractions - REAL, DIMENSION(SIZE(X_AQ,1),SIZE(X_AQ,2)) :: X2 ![frc] normalized mole fraction when one component is dilluted - REAL, DIMENSION(SIZE(X_AQ,1),SIZE(X_AQ,2)) :: GAMMA ![-] activity coeffients when one component is dilluted - INTEGER :: I ![idx] counter for main components (acids) - INTEGER :: J ![idx] counter for main components (acids) - INTEGER :: COMP_IDX ![idx] pointer to correct components - - - ! calculate solute activity coefficient at infinite dilution - ! according to the standard state of Raoults Law - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:ACT_COEFF_HENRY_GET',0,ZHOOK_HANDLE) - COMP_IDX = 1 - DO I=1,NBSP - - !Save the real value of "X" - TMPX(:) = X_AQ(:,I) - - !Set component "I" to a value of inifinte dilution - X_AQ(:,I) = TMOL_AQ(:) * TINY - - !Make sure sum(X)=1 after modifying one value - DO J=1,NMOL_AQ - X2(:,J) = X_AQ(:,J)/SUM(X_AQ(:,1:NMOL_AQ)) - !write(6,*)"X2", X2(:,J) - ENDDO - - ! gamma (Raoults law std st) at infinite dilution */ - CALL ACT_COEFF_GET ( & - NU_AQ & - ,X2 & - ,QG_AQ & - ,GAMMA & - ,THTAGP_AQ & - ,Q_AQ & - ,R_AQ & - ,L_AQ & - ,SI_AQ & - ,NMOL_AQ & !!note, NAMOL is not equal to NMOL_AQ since NMOL_AQ contains water - ,NFUNC_AQ & - ) - - !convert gamma for solutes to Henry's Law standard state - !and set it equal for all main and sub-components "fxm: I am not sure where this equation comes from" - DO J=1,NKAQ(I) - GAMMA_HENRY(:,COMP_IDX)= & !Value for real "X" and Henry's law std. state - GAMMA_RAOULT(:,COMP_IDX) & !Value for real "X" and Raoult's law std. state - / GAMMA(:,I) !Value for dilute "X" and Raoult's law std. state - - COMP_IDX=COMP_IDX+1 - ENDDO - !write(6,*)"act_coeff_henry", I, gamma_henry(:,COMP_IDX-1) - - !Set back X to the value before the "inifinite dilution" value - X_AQ(:,I) = TMPX(:) - - ENDDO !Loop on components - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:ACT_COEFF_HENRY_GET',1,ZHOOK_HANDLE) - end subroutine ACT_COEFF_HENRY_GET - - !******************************************** - - subroutine MB_adjust( & - CB & !I [ug/m3] total (aerosol + gas) concentration - ,GAS_AQ & !I [ug/m3] gas concentration in eql with aquous phase - ,GAS_ORG & !I [ug/m3] gas concentration in eql with org phase - ,totAER_AQ & !I/O [ug/m3] total aerosol concentration (acid+ions) aq phase - ,AERO_ORG & !I/O [ug/m3] total aerosol concentration in org phase - ,GAS & !O [ug/m3] new guess for gas phase concentration - ) - - !Purpose: Adjust mass balance after that we have calculated aerosol phase - !concentrations in equilibrium with each other - - !Author: Alf Grini, alf.grini@cnrm.meteo.fr, 2005 - - implicit none - - !INPUT - REAL, INTENT(IN), DIMENSION(:,:) :: CB ![ug/m3] total (aq + org + gas) SOA concentration - REAL, INTENT(IN), DIMENSION(:,:) :: GAS_AQ ![ug/m3] gas phase concentration in eql with aq. phase - REAL, INTENT(IN), DIMENSION(:,:) :: GAS_ORG ![ug/m3] gas phase concentration in eql with org. phase - - !INPUT/OUTPUT - REAL, INTENT(INOUT), DIMENSION(:,:) :: totAER_AQ ![ug/m3] total concentration of H2A + HA- + HA(2-) - REAL, INTENT(INOUT), DIMENSION(:,:) :: AERO_ORG ![ug/m3] organic aerosol of organic phase - - !OUTPUT - REAL, INTENT(OUT), DIMENSION(:,:) :: GAS ![ug/m3] new guess for gas concentration - - !LOCAL - REAL, DIMENSION(SIZE(CB,1),SIZE(CB,2)) :: FRAC_ORG ![-] adjustment factor for organic aerosol phase - REAL, DIMENSION(SIZE(CB,1),SIZE(CB,2)) :: FRAC_AQ ![-] adjustment factor for aquous aerosol phase - REAL, DIMENSION(SIZE(CB,1),SIZE(CB,2)) :: XMB ![ug/m3] sum of component in all phases - REAL, DIMENSION(SIZE(CB,1),SIZE(CB,2)) :: GAS_MEAN ![ug/m3] mean of gas in eql with ORG and AQ phases - REAL, DIMENSION(SIZE(CB,1),SIZE(CB,2)) :: FRAC_MB ![-] correction factor for all phases to get mass balance - INTEGER :: I - - !Get mean gas phase concentration over organic phase and over aquous phase. - !If one is higher than the other, we know that the aerosol concentration in the - !phase with highest gas is too high relative to aerosol conc in the other phase. - !GAS_MEAN(:,:)=0.5d0*(GAS_AQ(:,:) + GAS_ORG(:,:)) - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:MB_ADJUST',0,ZHOOK_HANDLE) - GAS_MEAN(:,:)=sqrt(GAS_AQ(:,:)*GAS_ORG(:,:)) - - IF(LPRINT)THEN - DO I=1, NBSP - write(6,*)"GAS_MEAN, GAS_AQ, GAS_ORG", I, GAS_MEAN(:,I), GAS_AQ(:,I), GAS_ORG(:,I) - ENDDO - ENDIF - !Get deviation from mean for organics. - !If this is higher than 1 it means the vapor pressure over the organic phase is low - !compared to the pressure over the aq. phase. (I.e. the aerosol concentration of org. phase is too low) - FRAC_ORG(:,:)=GAS_MEAN(:,:)/GAS_ORG(:,:) - - !Get deviation from mean for aquous phase - !If this is higher than 1 it means the vapor pressure over the aq phase is low - !compared to the pressure over the org. phase. (I.e. the aerosol concentration of aq. phase is too low) - FRAC_AQ(:,:)=GAS_MEAN(:,:)/GAS_AQ(:,:) - - IF(LPRINT)THEN - DO I=1,NBSP - write(6,*)"FRACS ORG/AQ ",I, FRAC_ORG(:,I), FRAC_AQ(:,I) - ENDDO - ENDIF - - !Adjust the aq aerosol phase using the information from the gas phase - totAER_AQ(:,:)=totAER_AQ(:,:)*FRAC_AQ(:,:) - - !Adjust the org aerosol phase using the information from the gas phase - AERO_ORG(:,:)=AERO_ORG(:,:)*FRAC_ORG(:,:) - - !Get the sum of all mass in the system. This equation will probably deviate from the - !total mass of the system which is the input - XMB(:,:)=GAS_MEAN(:,:) + totAER_AQ(:,:) + AERO_ORG(:,:) - IF(LPRINT)THEN - DO I=1,NBSP - write(6,*)"XMB/CB/Ratio",I, XMB(:,I), CB(:,I), XMB(:,I)/CB(:,I) - ENDDO - ENDIF - - !Get the adjustment factor for the mass balance - FRAC_MB(:,:)=CB(:,:)/XMB(:,:) - - !The new guess for all is that we adjust everything linearly to the mass balance - GAS(:,:)=GAS_MEAN(:,:)*FRAC_MB(:,:) - - !Total aerosol concentration of aquous phase - totAER_AQ(:,:)=totAER_AQ(:,:)*FRAC_MB(:,:) - - !Total aerosol concentration of organic phase - AERO_ORG(:,:)=AERO_ORG(:,:)*FRAC_MB(:,:) - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:MB_ADJUST',1,ZHOOK_HANDLE) - end subroutine MB_adjust - - !******************************************************************** - - subroutine totAER_to_AERO( & - totAER_AQ & !I [ug/m3] total aerosol (acid+ions) in aq phase - ,NOMINATOR & !I [-] term which gives acid if we know total (acid+ions) - ,AERO_AQ & !O [ug/m3] acid and aerosol concentrations - ,acHP & !I [mol/kg_{water}] proton concentration - ,MW & !I [g/mol] molecular weight of species - ,K & !I [m3/ug and mole/kg] Henry's law and acid diss. constants - ,NK & !I [nbr] number of sub and main components for a species - ,NSPIN & !I nbr] number of main species to take into account - ) - - !Purpose: Calculate the concentrations of ions and acids given - !that we know the gas concentrations of a component - - implicit none - - !INPUT - REAL, DIMENSION(:,:), INTENT(IN) :: totAER_AQ !I [ug/m3] total (H2A+HA-+A(2-)) aq aerosol - REAL, DIMENSION(:,:), INTENT(IN) :: NOMINATOR !I [-] factor which says how much of totAER_AQ which - !has dissociated - REAL, DIMENSION(:,:), INTENT(IN) :: K !I [m3/ug and mole/kg] Henry and dissociation constants - REAL, DIMENSION(:), INTENT(IN) :: MW !I [g/mol] molecular weight - REAL, DIMENSION(:), INTENT(IN) :: acHP !I [mol/kg_{water}] proton concentration - INTEGER, DIMENSION(:), INTENT(IN) :: NK !I [nbr] number of acid and ions for main component - INTEGER, INTENT(IN) :: NSPIN !I [nbr] number of species to take into account - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: AERO_AQ ![ug/m3] all aq. phase aerosol sub components - - !LOCAL - INTEGER :: COMP_IDX ![idx] pointer to sub (ions) and main components - INTEGER :: I ![idx] counter for main components - INTEGER :: J ![idx] counter for ions - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:TOTAER_TO_AERO',0,ZHOOK_HANDLE) - COMP_IDX = 1 - DO I=1,NSPIN - - !Get aerosol concentration of first (main) component (H2A) - !These have the same molar weight, so this is OK - AERO_AQ(:,COMP_IDX) = totAER_AQ(:,I)/nominator(:,I) - - !Prepare for sub components - COMP_IDX = COMP_IDX +1 - - !Get aerosol concentrations of sub-components - !Simply use equilibrium constants in aquous phase - DO J=2,NK(I) - !Note that we skip activity coefficients from this calculations since - !they are anyway equal for all ions which are "children" of same main comp - AERO_AQ(:,COMP_IDX) = K(:,COMP_IDX) * AERO_AQ(:,COMP_IDX-1)/acHP(:) & - * MW(COMP_IDX)/MW(COMP_IDX-1) !eqn 6/7 in Griffin 2003 - !Prepare for next sub-component - COMP_IDX = COMP_IDX +1 - ENDDO - - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:TOTAER_TO_AERO',1,ZHOOK_HANDLE) - end subroutine totAER_to_AERO - - !********************************************************************************** - - subroutine AERO_to_totAER( & - AERO_AQ & !I [ug/m3] aquous phase concentrations (acid + ions) - ,totAER_AQ & !O [ug/m3] aquous phase concentrations (total = sum of acid+ions) - ,nominator & !I [-] transforming factor between acid and total - ,NK & !I [nbr] number of sub and mean species - ,NSPIN & !I [nbr] number of main species to take into account - ) - - !Purpose: knowing the amount of acid, we can calculate the total amount of aerosol - implicit none - REAL, DIMENSION(:,:), INTENT(IN) :: AERO_AQ ![ug/m3] - REAL, DIMENSION(:,:), INTENT(IN) :: NOMINATOR ![-] term to transfer between acid and acid+ions - INTEGER, DIMENSION(:), INTENT(IN) :: NK ![nbr] number of sub and mean species - INTEGER, INTENT(IN) :: NSPIN ![nbr] number of main species to take into account - - REAL, DIMENSION(:,:), INTENT(OUT) :: totAER_AQ ![ug/m3] - INTEGER :: I ![idx] counter for main component - INTEGER :: COMP_IDX ![idx] pointer to right component including ions - INTEGER :: J ![idx] counter for ions - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:AERO_TO_TOTAER',0,ZHOOK_HANDLE) - COMP_IDX=1 - DO I=1,NSPIN - - !Get aerosol concentration of first (main) component - totAER_AQ(:,I) = AERO_AQ(:,COMP_IDX)*nominator(:,I) - !Prepare for sub components - COMP_IDX = COMP_IDX +1 - - !Don't need to care about ion concentrations here because they don't influence - !anything as long as we know the "nominator" for main component. - !The "nominator" is only dependent on (H+) concentrations and on dissociation - !coefficients. Just go ahead and skip the indexes concerning ions - DO J=2,NK(I) - COMP_IDX = COMP_IDX +1 - ENDDO - - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:AERO_TO_TOTAER',1,ZHOOK_HANDLE) - end subroutine AERO_to_totAER - - !**************************************************************** - - subroutine nominator_get( & - acHP & !I [mol/kg_{water}] proton concentration - ,nominator & !O [-] term to transfer between acid and total aerosol - ,K & !I [m3/ug and mole/kg] Henry's law and dissociation constants - ,NK & !I [nbr] number of sub and main comp for acid - ,NSPIN & !I [nbr] number of (main) species to take into account - ) - - !Purpose: - !In the aquous phase, we have the following equations: - !1) K(1) = H2A*gamma(1)/H2A(g) (Henry's law) - !2) [H+]*[HA-]*gamma(2)/[H2A]/gamma(1) = K(2) (acid dissociation) - !3) [H+]*[A(2-)*gamma(3)]/[HA-]/gamma(2) = K(3) (acid dissociation) - - !Remember that gamma(2) is equal to gamma(3) so we get back the original equations for (2) and (3) - !1) K(1) = H2A*gamma(1)/H2A(g) (Henry's law) - !2) [H+]*[HA-]/[H2A] = K(2) (acid dissociation) - !3) [H+]*[A(2-)/[HA-] = K(3) (acid dissociation) - - - !The mole balance: - !totAER = H2A + HA- + A(2-) - !totAER = K(1)*[H2A(g)]/gamma(1) + K(2)[H2A]/[H+] + K(3)*[HA-]/[H+] - !totAER = K(1)*[H2A(g)]/gamma(1) + K(2)K(1)[H2A(g)]/gamma(1)/[H+] + K(3)K(2)K(1)[H2A(g)]/gamma(1)//([H+])^2 - !totAER = K(1)*[H2A(g)]/gamma(1)* (1 + K(2)/[H+] + K(3)K(2)/([H+])^2) - !totAER = [H2A]*(1 + K(2)/[H+] + K(3)K(2)/([H+])^2) = [H2A]/"nominator" - - !Remember that this is the mole balance, however, setting this up with mass, it turns - !out that molecular weights disappears so "nominator is the same" - !*********************************************************************************************** - implicit none - - REAL, DIMENSION(:), INTENT(IN) :: acHP ![mol/kg_{water}] proton concentration - REAL, DIMENSION(:,:), INTENT(OUT) :: NOMINATOR ![-] factor to convert H2A to total aerosol - REAL, DIMENSION(:,:), INTENT(IN) :: K ![m3/ug and mole/kg] dissociation constants - INTEGER, DIMENSION(:), INTENT(IN) :: NK ![nbr] number of sub and main comp for acid - INTEGER, INTENT(IN) :: NSPIN ![nbr] number of species to take into account - - REAL, DIMENSION(SIZE(NOMINATOR,1)) :: THISTERM ![-] term in nominator - INTEGER :: I ![idx] counter for main component - INTEGER :: J ![idx] counter for sub components (ions) - INTEGER :: COMP_IDX ![idx] pointer to correct sub-component - - - !Initialize - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:NOMINATOR_GET',0,ZHOOK_HANDLE) - NOMINATOR(:,:)=1.d0 - COMP_IDX=1 - DO I=1, NSPIN - - !Initialize term in nominator calculations - THISTERM(:)=1.d0 - - !Prepare for next term - COMP_IDX = COMP_IDX + 1 - - !Start loop on ion concentrations - DO J=2,NK(I) - THISTERM(:)=THISTERM(:)*K(:,COMP_IDX)/acHP(:) - NOMINATOR(:,I)=NOMINATOR(:,I) + THISTERM(:) - COMP_IDX = COMP_IDX + 1 - ENDDO !Loop on J - - ENDDO !Loop on I - - IF (LHOOK) CALL DR_HOOK('MODE_SOAEQLUTL:NOMINATOR_GET',1,ZHOOK_HANDLE) - end subroutine nominator_get - -end module mode_soaeqlutl diff --git a/src/arome/chem/module/mode_soatinit.F90 b/src/arome/chem/module/mode_soatinit.F90 deleted file mode 100644 index c916cbd9be70eabce606695f905914e287d8e766..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_soatinit.F90 +++ /dev/null @@ -1,166 +0,0 @@ -! ######spl -module mode_soatinit -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - use modd_glo - - implicit none - - !Purpose: Contains subroutines to initialize all parameters which are - !only Temperature-dependent - -contains - - !********************************** - subroutine VP_GET( & - TEMPK & !I [K] Temperature - ,VP & !I [torr] saturation vapor pressures - ) - - !Purpose: Find the saturation vapor pressures corrected for temperature - implicit none - - !Input - REAL, DIMENSION(:), INTENT(IN) :: TEMPK !I [K] Temperature - - !Output - REAL, DIMENSION(:,:), INTENT(OUT) :: VP !O [torr] saturation vapor pressures - - !Local - REAL, DIMENSION(SIZE(VP,2)) :: DELCP - REAL, DIMENSION(SIZE(VP,2)) :: DELSB - REAL, DIMENSION(SIZE(VP,1),SIZE(VP,2)) :: TERM1 - REAL, DIMENSION(SIZE(VP,1),SIZE(VP,2)) :: TERM2 - - INTEGER :: I ![idx] counter for component - - !The following is cut and paste from Griffin's code - !I have to check the units here! - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOATINIT:VP_GET',0,ZHOOK_HANDLE) - DO I = 1,NBSP - - !Calculate DELSB - DELSB(I)= 86.0 + 0.4*TAUVP(I)+1421.*HBN(I) - - !Calculate DELCP - DELCP(I) = -90.-2.1*TAUVP(I) - - !Calculate Intermediate terms 1 - TERM1(:,I) = DELSB(I)*(TEMPK(:)-TBOIL(I)) & - /19.1/TEMPK(:) - - !Calcualte intermediate term 2 - TERM2(:,I) = ((TBOIL(I)-TEMPK(:))/TEMPK(:) & - -LOG(TBOIL(I)/TEMPK(:))) & - *DELCP(I)/19.1 - - !Get the temperature-dependent - VP(:,I) = 760.*(10.**(TERM1(:,I)+TERM2(:,I))) - - ENDDO - - !Tuning: Correct vp so that they match chamber data - VP(:,1) = VP(:,1)/1.5 - VP(:,2) = VP(:,2)/1.4 - VP(:,3) = VP(:,3)/2.4 - VP(:,5) = VP(:,5)/66. - VP(:,8) = VP(:,8)/33. - VP(:,9) = VP(:,9)/3.3 - VP(:,10) = VP(:,10)/15. - - - IF (LHOOK) CALL DR_HOOK('MODE_SOATINIT:VP_GET',1,ZHOOK_HANDLE) - end subroutine VP_GET - - !********************************* - - subroutine AQCONST_GET( & - TEMPK & !I [K] temperature - ,K & !O [units] Henry's law and dissociation constants - ,NK & !I [nbr] Number of total and sub-components for one acid - ) - - !Purpose: Calculate - implicit none - !Input - REAL, INTENT(IN), DIMENSION(:) :: TEMPK !I [K] temperature - INTEGER, INTENT(IN), DIMENSION(:) :: NK !I [nbr] Number of total and sub-components for one acid - - !Output - REAL, INTENT(OUT), DIMENSION(:,:) :: K !O [units] temperature dependent value of K_298 - - !Local - INTEGER :: I ![idx] counter for components - INTEGER :: COMP_IDX ![idx] pointer to right component - INTEGER :: J ![idx] counter for sub components (ions) - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOATINIT:AQCONST_GET',0,ZHOOK_HANDLE) - COMP_IDX=1 - DO I=1,NBSP - - !Adjust Henry's law constant - K(:,COMP_IDX) = K_298(COMP_IDX) & - *EXP(15.*((1./TEMPK(:))-(1./298.15))/0.001987) - !Prepare for next component - COMP_IDX=COMP_IDX+1 - - !Calculate dissociation constants of sub-components (ions) - DO J=2,NK(I) - K(:,COMP_IDX) = K_298(COMP_IDX) & - *EXP(0.5*((1./TEMPK(:))-(1./298.15))/0.001987) - !Prepare for next component - COMP_IDX=COMP_IDX + 1 - ENDDO - - ENDDO !loop on I - - IF (LHOOK) CALL DR_HOOK('MODE_SOATINIT:AQCONST_GET',1,ZHOOK_HANDLE) - end subroutine AQCONST_GET - - !************************************* - - subroutine SI_GET( & - TEMPK & !I [K] temperature - ,A & !I [units?] term in UNIFAC parameterization - ,SI & !O [units?] term in UNIFAC parameterization - ,NFUNC & !I [nbr] number of functional group in mixture - ) - - !Purpose: Calculate the term in the unifac method which - !is dependent only on temperature. This term includes - !exponential of a large matrix, so it presumably takes - !up a lot of computer time. - implicit none - - !Input - REAL, DIMENSION(:), INTENT(IN) :: TEMPK !I [K] temperature - REAL, DIMENSION(:,:), INTENT(IN) :: A !I [?] Term in UNIFAC parameterization - INTEGER, INTENT(IN) :: NFUNC !I [nbr] number of functional groups in mixture - - !Output - REAL, DIMENSION(:,:,:), INTENT(OUT) :: SI !O [?] term in UNIFAC parameterization - - !Local - REAL, DIMENSION(SIZE(TEMPK)) :: TEMPKINV ![1/K] inverse of temperature - INTEGER :: J1, J2 ![idx] counter for functional groups - - - !Get values of SI (temperature dependent), don't need to be in the iteration! - !eqn 9 in MaP05 - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_SOATINIT:SI_GET',0,ZHOOK_HANDLE) - TEMPKINV(:) = 1.d0/TEMPK(:) - DO J1=1,NFUNC - DO J2=1,NFUNC - SI(:,J1,J2) = EXP(-A(J1,J2)*TEMPKINV(:)) - ENDDO - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_SOATINIT:SI_GET',1,ZHOOK_HANDLE) - end subroutine SI_GET - -end module mode_soatinit diff --git a/src/arome/chem/module/mode_typea.F90 b/src/arome/chem/module/mode_typea.F90 deleted file mode 100644 index feea4c999f5d2dab8a0876f28703d2804682d756..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_typea.F90 +++ /dev/null @@ -1,516 +0,0 @@ -! ######spl -module mode_typea -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - use modd_unifacparam - use mode_unifac - use mode_soatinit, only: SI_GET - use modd_glo, only: NBSPA, NAAEROA, NKA - - IMPLICIT NONE - - PUBLIC - PRIVATE :: PARTFUNC2 - - !*************************************************************************** - !Purpose: - !Type A module: takes input of particle concentrations and returns - !the values obtained after iterations - ! - !Preconditions: This subroutine is called from amain, and takes the - !the qualified guesses for aerosol concentrations as input. - !Hopefully it finds the solutions for aerosol/gas partitioning - ! - !Subroutines called: - !unidriver and partition - !(unidriver is always called with all 7 molecules that may be present) - ! - !Revisions: 1. Developed by Betty Pun, AER, Jan 99, under EPRI funding for - ! prototype SOA module with 2 condensable compounds (malic acid, - ! glyoxalic acid) and water - ! - ! 2. Modified November 99 to accept 6 model compounds + water under - ! CARB funding (for the list of condensables see main) - ! - ! 3. Modified treatment of negative test concentrations so that - ! program does not exit prematurely. B. Pun Jan 2000. - !************************************************************************** - - CONTAINS - - SUBROUTINE TYPEA ( & - AERO & !I/O [ug/m3] aerosol phase concentrations - ,GAS & !O [ug/m3] gas phase concentrations - ,totA & !I [ug/m3] total (aerosol+gas concentration) - ,TEMPK & !I [K] temperature - ,LWC & !I [ug/m3] Liquid water content of aerosols - ,acHP & !I [mol/kg_{water}] proton concentration - ) - - USE mode_soaeqlutl, only: XAQ_GET - - IMPLICIT NONE - !INPUT - REAL, DIMENSION(:,:), INTENT(INOUT) :: AERO !I/O [ug/m3] aerosol concentration (ions and molecules) - REAL, DIMENSION(:,:), INTENT(IN) :: totA !I [ug/m3] total (gas+aerosol) concentrations - REAL, DIMENSION(:), INTENT(IN) :: TEMPK !I [K] - REAL, DIMENSION(:), INTENT(IN) :: LWC !I [ug/m3] liquid water content of aerosols - REAL, DIMENSION(:), INTENT(IN) :: acHP !I [mol/kg_{water}] proton concentration - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: GAS !I/O [ug/m3] gas phase concentrations - - !Local, automatic arrays - REAL, DIMENSION(SIZE(TEMPK,1)) :: TMOL ![umol/m3] total moles in aquous phase - REAL, DIMENSION(SIZE(TEMPK,1)) :: TMPX ![-] temporary save variable for mole fraction - REAL, DIMENSION(SIZE(GAS,1),SIZE(GAS,2)) :: totAER ![ug/m3] total aerosol - REAL, DIMENSION(SIZE(GAS,1),NBSPA,3) :: ACIDFRC ![frc] fraction of different acids - - !Local, allocatable - REAL, ALLOCATABLE, DIMENSION(:,:) :: X ![-] molar fraction of components - REAL, ALLOCATABLE, DIMENSION(:,:) :: X2 ![-] molar fraction of components after one is dilluted - REAL, ALLOCATABLE, DIMENSION(:,:) :: GAMMA ![-] activity coefficients Henry's law std. state all comps - REAL, ALLOCATABLE, DIMENSION(:,:) :: GAMMAR ![-] activity coefficients Raoult's law std. state main comps - REAL, ALLOCATABLE, DIMENSION(:,:,:) :: SI_A ![?] temperature dependent activity coefficient - - !Local small counters etc - REAL :: XX - INTEGER :: COMP_IDX ![idx] index for component number (1-13 currently) - INTEGER :: I ![idx] counter for main component (molecules) - INTEGER :: J ![idx] counter for sub components (ions) - INTEGER :: ITER_IDX ![idx] counter for number of iterations - INTEGER, PARAMETER :: MAX_ITER=10 ![nbr] max number of iterations - - !Allocate memory - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_TYPEA:TYPEA',0,ZHOOK_HANDLE) - ALLOCATE(X(SIZE(TEMPK,1),NBSPA+1)) !The extra component is water, could have used NMOL_A here - ALLOCATE(X2(SIZE(TEMPK,1),NBSPA+1)) !The extra component is water, could have used NMOL_A here - ALLOCATE(GAMMAR(SIZE(TEMPK,1),NBSPA+1)) !The extra component is water, could have used NMOL_A here - ALLOCATE(GAMMA(SIZE(TEMPK,1),NAAEROA)) - ALLOCATE(SI_A(SIZE(TEMPK,1),NFUNC_A,NFUNC_A)) !Temperature dependent factor for act. coeff - - IF(LPRINT)THEN - write(6,*)" " - write(6,*)"*****************" - write(6,'(a10,13e10.3)')"AERO",AERO - write(6,'(a10,6e10.3)')"GAS",GAS - write(6,'(a10,6e10.3)')"totA", totA - write(6,'(a10,7e14.6)')"X",X - write(6,*)"*****************" - ENDIF - - !Get temperature dependent UNIFAC coefficient - CALL SI_GET( & - TEMPK & !I [K] temperature - ,A_A & !I [units?] term in UNIFAC parameterization - ,SI_A & !O [units?] term in UNIFAC parameterization - ,NFUNC_A & !I [nbr] number of functional group in mixture - ) - - !Start the iterations to make sure things converge at this H+/LWC - DO ITER_IDX = 1, MAX_ITER - - !Get the molar fraction of water - CALL XAQ_GET( & - LWC & !I [ug/m3] liquid water content - ,AERO & !I [ug/m3] aquous phase aerosol concentrations of acids and ions - ,X & !O [frc] molar fraction of main component in aq phase - ,TMOL & !O [umole/m3] total aquous phase aerosol - ,MWA & !I [g/mol] molecular weight of species - ,NKA & !I [nbr] number of components for main acid - ,NBSPA & !I [nbr] number of main species - ) - - !Get first Raoult's law activity coefficients - CALL ACT_COEFF_GET( & - NU_A & !I [nbr] number of functional groups in molecule I - ,X & !I [frc] mole fraction of molecule I - ,QG_A & !I [m2(?)] group surface area parameter - ,GAMMAR & !O [-] activity coefficient - ,THTAGP_A & !I [-] surface area ratio of groups (j) in pure component (i) - ,Q_A & !I [m2] surface area of pure component - ,R_A & !I [m3] total volume of pure component - ,L_A & !I [?] unifac parameter pure component - ,SI_A & !I [?] temperature dependent term - ,NMOL_A & !I [nbr] total number of molecules (including water) - ,NFUNC_A & !I [nbr] total number of functional groups (e.g. CH2, NO3 ..) - ) - - !Set activity coeffients for all components, ions and acids - !to the Raoult's law standard state value for the real X - COMP_IDX=1 - DO I=1,NBSPA - GAMMA(:,COMP_IDX)=GAMMAR(:,I) - COMP_IDX = COMP_IDX +1 - !Set activity coefficients for the sub-components - !equal to those for the main components - DO J=2,NKA(I) - GAMMA(:,COMP_IDX) = GAMMAR(:,I) - COMP_IDX=COMP_IDX + 1 - ENDDO !loop on ions - ENDDO !loop on main comp - - ! calculate solute activity coefficient at infinite dilution - ! according to the standard state of Raoults Law - COMP_IDX = 1 - DO I=1,NBSPA - - !Save the real value of "X" - TMPX(:) = X(:,I) - - !Set component "I" to a value of inifinte dilution - X(:,I) = TMOL(:) * TINY - - !Make sure sum(X)=1 after modifying one value - DO J=1,NBSPA+1 - X2(:,J) = X(:,J)/SUM(X(:,1:NBSPA+1)) - ENDDO - - ! gamma (Raoults law std st) at infinite dilution */ - CALL ACT_COEFF_GET( & - NU_A & !I [nbr] number of functional groups in molecule I - ,X2 & !I [frc] mole fraction of molecule I - ,QG_A & !I [m2(?)] group surface area parameter - ,GAMMAR & !O [-] activity coefficient - ,THTAGP_A & !I [-] surface area ratio of groups (j) in pure component (i) - ,Q_A & !I [m2] surface area of pure component - ,R_A & !I [m3] total volume of pure component - ,L_A & !I [?] unifac parameter pure component - ,SI_A & !I [?] temperature dependent term - ,NMOL_A & !I [nbr] total number of molecules (including water) - ,NFUNC_A & !I [nbr] total number of functional groups (e.g. CH2, NO3 ..) - ) - - !convert gamma for solutes to Henry's Law standard state - !and set it equal for all main and sub-components "fxm: I am not sure where this equation comes from" - DO J=1,NKA(I) - GAMMA(:,COMP_IDX)= & !Value for real "X" and Henry's law std. state - GAMMA(:,COMP_IDX) & !Value for real "X" and Raoult's law std. state - / GAMMAR(:,I) !Value for dilute "X" and Raoult's law std. state - - COMP_IDX=COMP_IDX+1 - ENDDO - - !Set back X to the value before the "inifinite dilution" value - X(:,I) = TMPX(:) - - ENDDO !Loop on components - - !Now that we have the gammas, and the mole fractions - !we can have get the gas and aerosol partitioning in thermodynamic - !equilibrium with these conditions - CALL PARTFUNC2( & - AERO & !I/O [ug/m3] aerosol concentration in Henry's law eql - ,GAS & !O [ug/m3] gas concentrations - ,totA & !I [ug/m3] total aerosol concentration - ,GAMMA & !I [-] Henry's law std. state activity coefficients - ,acHP & !I [mol/kg_{water}] proton concentration - ,LWC & !I [ug/m3] Liquid water content - ) - - - IF(LPRINT)THEN - write(6,*)"*****************" - write(6,'(a10,7e14.6)')"GAMMAR", GAMMAR - write(6,'(a10,13e10.3)')"GAMMA", GAMMA - write(6,'(a10,13e10.3)')"AERO",AERO - write(6,'(a10,6e10.3)')"GAS",GAS - write(6,'(a10,6e10.3)')"totA", totA - write(6,'(a10,7e14.6)')"X",X - write(6,*)"*****************" - ENDIF - - ENDDO !Loop on iterations - - IF(LBOX)THEN - !Check mass balance after iterations - COMP_IDX=1 - DO I=1,NBSPA - totAER(:,I)=0.d0 - DO J=1,NKA(I) - IF(J.eq.1)THEN - XX=1.d0 - ELSE - XX=MWA(COMP_IDX-1)/MWA(COMP_IDX) - ENDIF - totAER(:,I) = totAER(:,I) + AERO(:,COMP_IDX)*XX - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - - ACIDFRC=0.d0 - COMP_IDX=1 - DO I=1,NBSPA - DO J=1,NKA(I) - - IF(J.eq.1)THEN - XX=1.d0 - ELSE - XX=MWA(COMP_IDX-1)/MWA(COMP_IDX) - ENDIF - - ACIDFRC(:,I,J)=AERO(:,COMP_IDX)*XX/totAER(:,I) - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - - write(6,*)"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" - write(6,*)"TYPE A TOTALS" - write(6,*) - write(6,'(a10,6e10.3)')"GAS",GAS - write(6,'(a10,6e10.3)')"totAER",totAER - write(6,'(a10,6e10.3)')"totA",totA - write(6,'(a10,6e10.3)')"aerfrc",totAER/totA - write(6,'(a10,6e10.3)')"diff",totA-totAER-GAS - write(6,*)'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%' - - write(6,*)" TYPE A ACID FRACTIONS" - do I=1,NBSPA - write(6,'(a10,i5,3f12.5)')"frc : I ",I,acidfrc(:,I,1:3) - ENDDO - ENDIF !LBOX - - DEALLOCATE(X) - DEALLOCATE(X2) - DEALLOCATE(GAMMAR) - DEALLOCATE(GAMMA) - DEALLOCATE(SI_A) - - - IF (LHOOK) CALL DR_HOOK('MODE_TYPEA:TYPEA',1,ZHOOK_HANDLE) - END SUBROUTINE TYPEA - - - !**************************************************************************** - - SUBROUTINE PARTFUNC2( & - AERO & !I/O [ug/m3] guessed aerosol concentration of main and sub components - ,GAS & !O [ug/m3] gas concentrations in eql with aerosol concentrations - ,totA & !I [ug/m3] total (gas+aerosol) concentration of main components - ,GAMMA & !I [-] Activity coefficients (Henry's law standard state) - ,acHP & !I [mol/kg_{water}] proton concentration - ,LWC & !I [ug/m3] Liquid water content - ) - - - !Purpose: having guessed the aerosol phase concentrations, we want to check if this is - !consistent with Henry's law equilibrium with gas phase. - !If the resulting gas phase concentration is too high, we have reduce the aerosol phase concentrations - - !In amain we used K2=[HA-][H+]/[HA] where [X] represented concentrations of X. This was only - !an approximation to get first guess. Here, we remember that [X] is ACTIVITY of X, and therefore - ![X]=gamma_X*{X} where {X} is concentration - - !The equations given on top of amain transforms to - !We have the following equations: - !1) K(1) = H2A*gamma(1)/H2A(g) (Henry's law) - !2) [H+]*[HA-]*gamma(2)/[H2A]/gamma(1) = K(2) (acid dissociation) - !3) [H+]*[A(2-)*gamma(3)]/[HA-]/gamma(2) = K(3) (acid dissociation) - - !Remember that gamma(2) is equal to gamma(3) so we get back the original equations for (2) and (3) - !1) K(1) = H2A*gamma(1)/H2A(g) (Henry's law) - !2) [H+]*[HA-]/[H2A] = K(2) (acid dissociation) - !3) [H+]*[A(2-)/[HA-] = K(3) (acid dissociation) - - - !The mole balance: - !totAER = H2A + HA- + A(2-) - !totAER = K(1)*[H2A(g)]/gamma(1) + K(2)[H2A]/[H+] + K(3)*[HA-]/[H+] - !totAER = K(1)*[H2A(g)]/gamma(1) + K(2)K(1)[H2A(g)]/gamma(1)/[H+] + K(3)K(2)K(1)[H2A(g)]/gamma(1)//([H+])^2 - !totAER = K(1)*[H2A(g)]/gamma(1)* (1 + K(2)/[H+] + K(3)K(2)/([H+])^2) - !totAER = [H2A]*(1 + K(2)/[H+] + K(3)K(2)/([H+])^2) = [H2A]/"nominator" - !*********************************************************************************************** - - IMPLICIT NONE - - !INPUT - REAL, DIMENSION(:,:), INTENT(IN) :: totA !I [ug/m3] total (gas+aerosol) - REAL, DIMENSION(:,:), INTENT(IN) :: GAMMA !I [-] Henry's law std. state act. coefficients - REAL, DIMENSION(:), INTENT(IN) :: acHP !I [mol/kg_{water}] proton concentration - REAL, DIMENSION(:), INTENT(IN) :: LWC !I [ug/m3] liquid water content - - !INPUT/OUTPUT - REAL, DIMENSION(:,:), INTENT(INOUT) :: AERO !I/O [ug/m3] aerosol concentrations of all (molecs and ions) - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: GAS !I/O [ug/m3] gas phase concentrations - - !Local, automatic arrays - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: AERO_NEW ![ug/m3] aerosol concentration in Henry's law eql - REAL, DIMENSION(SIZE(GAS,1),SIZE(GAS,2)) :: GAS_NEW1 ![ug/m3] gas in eql with guessed aerosol - REAL, DIMENSION(SIZE(GAS,1),SIZE(GAS,2)) :: GAS_NEW2 ![ug/m3] gas in eql with guessed aerosol - REAL, DIMENSION(SIZE(GAS,1),SIZE(GAS,2)) :: totAER_OLD ![ug/m3] total aerosol (main+sub components), not in MB - REAL, DIMENSION(SIZE(GAS,1),SIZE(GAS,2)) :: totAER_NEW ![ug/m3] total aerosol (main+sub components), in MB - REAL, DIMENSION(SIZE(GAS,1),SIZE(GAS,2)) :: totA_NEW ![ug/m3] new total which can deviate from mass balance - - REAL, DIMENSION(SIZE(totA,1)) :: THISTERM ![-] term in solving equilibrium for main component - REAL, DIMENSION(SIZE(totA,1)) :: NOMINATOR ![-] term in solving equilibrium for main component - - !Local, small counter etc - INTEGER :: I ![idx] counter for main component - INTEGER :: J ![idx] counter for sub-components (ions) - INTEGER :: COMP_IDX ![idx] pointer to right component in AERO array - INTEGER :: COMP_IDX2 ![idx] pointer to right index in K-array (eql constants) - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_TYPEA:PARTFUNC2',0,ZHOOK_HANDLE) - COMP_IDX = 1 - DO I=1,NBSPA - - !***********PART 1********************************************** - !Guess that the gas is the concentration in Henry's law equilibrium - !Note that this IS the correct gas, given that our guess for aerosol is OK - GAS_NEW1(:,I)=MIN(totA(:,I)-TINY, & !Total aerosol concentration - AERO(:,COMP_IDX)*GAMMA(:,COMP_IDX)/(LWC(:)*K_A_298(COMP_IDX))) !Henry's law equilibrium - - !At this point, get first totAER which is input aerosol concentration - COMP_IDX2=COMP_IDX - totAER_OLD(:,I)=AERO(:,COMP_IDX) - DO J=2,NKA(I) - COMP_IDX2=COMP_IDX2 +1 - totAER_OLD(:,I) = totAER_OLD(:,I) + AERO(:,COMP_IDX2)*MWA(COMP_IDX)/MWA(COMP_IDX2) - ENDDO - - !totA_NEW is GAS+AEROSOL which might deviate from mass balance - totA_NEW(:,I)=totAER_OLD(:,I) + GAS_NEW1(:,I) - - !Scale with this one to obtain totAER and GAS_NEW in accordance with mass balance - totAER_NEW(:,I)=totAER_OLD(:,I)*totA(:,I)/totA_NEW(:,I) - - !Get gas concentration in accordance with mass balance - GAS_NEW1(:,I)=GAS_NEW1(:,I)*totA(:,I)/totA_NEW(:,I) - - !write(6,'(a,i5, 6f10.5)')"GAS_FRC A0",I,100.*(GAS_NEW1(:,I))/totA(:,I), (GAS_NEW1(:,I)+totAER_NEW(:,I))/totA(:,I) - - !Now, force the aerosol concentrations with this new gas concentrations - !Get the nominator in the mass balance equation (see mode_amain) - NOMINATOR(:)=1.d0 - THISTERM(:)=1.d0 - - COMP_IDX2 = COMP_IDX !counter for sub-components for which we sum - DO J=2,NKA(I) - COMP_IDX2=COMP_IDX2 + 1 - THISTERM(:)=THISTERM(:)*K_A_298(COMP_IDX2)/acHP(:)*MWA(COMP_IDX2-1)/MWA(COMP_IDX2) - NOMINATOR(:)=NOMINATOR(:) + THISTERM(:) - ENDDO - - !Get new aerosol concentration of main component - !This IS the correct aerosol concentration given that the gas phase was OK - !However, this aerosol concentration can differ from the orignal one - AERO_NEW(:,COMP_IDX) = totAER_NEW(:,I)/NOMINATOR(:) - COMP_IDX = COMP_IDX +1 - - !Get aerosol concentrations of sub-components - !Simply use equilibrium constants in aquous phase - DO J=2,NKA(I) - !Note that we skip activity coefficients from this calculations since - !they are anyway equal for all ions which are "children" of same main comp - AERO_NEW(:,COMP_IDX) = K_A_298(COMP_IDX) * AERO_NEW(:,COMP_IDX-1)/acHP(:) - COMP_IDX = COMP_IDX +1 - ENDDO - - !*************END PART 1********************************************** - !Now we have obtained GAS_NEW1 from eql with original mass balance, and we have - !Gotten back a new TOTAER_NEW from MB with GAS_NEW1******************** - !********************************************************************** - - !Do an extra calculation here to make sure that the calculations don't oscillate - !Now, the aerosol concentration is the one in equilibrium with the gas phase (gas_new) - !Remember that GAS_NEW was obtained from Henry's law with guessed aerosol concentrations. - !The aerosol concentrations are now reduced if the original guess was too high - - !****************PART 2*********************************************** - !Get another guess for gas, obtained from the new aerosol conc - !******************************************************************** - - !First: go back to main component - COMP_IDX = COMP_IDX - NKA(I) - - !Re-calculate gas using Henry' law - GAS_NEW2(:,I)=MIN(totA(:,I)-TINY, & !Total aerosol concentration - AERO_NEW(:,COMP_IDX)*GAMMA(:,COMP_IDX)/(LWC(:)*K_A_298(COMP_IDX))) !Henry's law equilibrium - - - !totA_NEW is GAS+AEROSOL which might deviate from mass balance - totA_NEW(:,I)=totAER_NEW(:,I) + GAS_NEW2(:,I) - - !Get total aerosol in accordance with mass balance - totAER_NEW(:,I)=totAER_NEW(:,I)*totA(:,I)/totA_NEW(:,I) - - !Get gas in accordance with mass balance - GAS_NEW2(:,I)=GAS_NEW2(:,I)*totA(:,I)/totA_NEW(:,I) - - !write(6,'(a,i5,6f10.5)')"GAS_FRC A1",I,100.*(GAS_NEW2(:,I))/totA(:,I),(GAS_NEW2(:,I)+totAER_NEW(:,I))/totA(:,I) - - !************END PART 2 *************************************** - - !***********PART 3********************************************* - !Here we assume that both guesses for gas are OK - !so we use the mean of them as the "true" answer - !and obtain totAER from the mass balance again - - GAS_NEW2(:,I)=0.5*(GAS_NEW2(:,I) + GAS_NEW1(:,I)) - totAER_NEW(:,I)=totA(:,I) - GAS_NEW2(:,I) !Total aerosol obtained from mass balance - - !*********END PART 3********************************************* - - !**********PART 4 ********************************************* - !Get the aerosol concentrations assuming that totAER_NEW is the true - !total aerosol concentration - !**************************************************************** - - !Get the nominator in the mass balance equation (see mode_amain) - NOMINATOR(:)=1.d0 - THISTERM(:)=1.d0 - COMP_IDX2 = COMP_IDX - DO J=2,NKA(I) - COMP_IDX2=COMP_IDX2 + 1 - THISTERM(:)=THISTERM(:)*K_A_298(COMP_IDX2)/acHP(:)*MWA(COMP_IDX2-1)/MWA(COMP_IDX2) - NOMINATOR(:)=NOMINATOR(:) + THISTERM(:) - ENDDO - - !Get new aerosol concentration of main component - AERO_NEW(:,COMP_IDX) = totAER_NEW(:,I)/NOMINATOR(:) - - !This is also the output - AERO(:,COMP_IDX) = AERO_NEW(:,COMP_IDX) - - !Prepare for next component - COMP_IDX = COMP_IDX +1 - - !Get output aerosol concentrations of sub-components - !Simply use equilibrium constants in aquous phase - - DO J=2,NKA(I) - !New iterated concentrations of ions. - !Note that we skip activity coefficients from this calculations since - !they are anyway equal for all ions which are "children" of same main comp - AERO_NEW(:,COMP_IDX) = K_A_298(COMP_IDX) * AERO_NEW(:,COMP_IDX-1)/acHP(:) - !This is also the output - AERO(:,COMP_IDX) = AERO_NEW(:,COMP_IDX) - !Prepare for next component - COMP_IDX = COMP_IDX +1 - ENDDO - - !Check new mass balance - !COMP_IDX2=COMP_IDX - NK(I) - !totAER_NEW(:,I)=AERO(:,COMP_IDX2) - !DO J=2,NK(I) - ! COMP_IDX2=COMP_IDX2 + 1 - ! totAER_NEW(:,I) = totAER_NEW(:,I) + AERO(:,COMP_IDX2)*MW(COMP_IDX-NK(I))/MW(COMP_IDX2) - !ENDDO - - !Set output gas concentrations here - GAS(:,I) = GAS_NEW2(:,I) - !write(6,'(a,i5,6f10.5)')"GAS_FRC A2",I,100.*(GAS(:,I))/totA(:,I),(GAS(:,I)+totAER_NEW(:,I))/totA(:,I) - - !Set output gas concentration - - ENDDO !Loop on components - IF (LHOOK) CALL DR_HOOK('MODE_TYPEA:PARTFUNC2',1,ZHOOK_HANDLE) - END SUBROUTINE PARTFUNC2 - !******************************************************************** - -END MODULE mode_typea diff --git a/src/arome/chem/module/mode_typeb.F90 b/src/arome/chem/module/mode_typeb.F90 deleted file mode 100644 index 2a9eaaecf8d9dbbd967402cb8f3792421932210a..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_typeb.F90 +++ /dev/null @@ -1,351 +0,0 @@ -! ######spl -module mode_typeb -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - use modd_glo - use modd_unifacparam ! definition of variables for unifac - use mode_unifac ! UNIFAC module - use mode_soatinit, only: SI_GET - - IMPLICIT NONE - - PUBLIC - PRIVATE :: KPART_PUN_GET - -!*************************************************************************** -!Purpose: Partition of Type B condensables, -! Ai orig used in Unifac --> gamma, -! gamma --> Ki; Ki --> the distribution of OC -! Particle phase OC (Ai final) calculated -! need f = Ai orig - Ai final = 0, f = delta aerosol is output -! -!Notes: 1. defined (hardcoded in glo.h or glodef.h) values used: -!! MWaom (non-volatile) = 280 -! NBSPAOM = 5, -! xaom = {0.4, 0.05, 0.15, 0.12, 0.28}; -! default breakdown of AOM -! compound mass frac. mole frac. -! C24 alkanoic acid 0.50 0.40 -! C18 alkenoic acid 0.05 0.05 -! actonyl syringol 0.11 0.15 -! C20 alkane 0.17 0.12 -! arom. dicarboxylic acid 0.17 0.28 -! -!Revision history: Developed by Betty Pun, AER, Jan 99 Under EPRI -! Modified by Betty Pun, AER, Nov 99 Under CARB -! 1. increase the number of partitioning compound -! 2. conform to models-3 coding standard -! 3. allow the selection of equations to solve when -! using Newt. -! 4. Rewritten to f90 and MESONH style: Alf Grini, CNRM -!***************************************************************************/ - -contains - - subroutine TypeB( & - PAOM & !I [ug/m3] primary aerosol concentrations - ,AERO & !I/O [ug/m3] "iteratable" secondary aerosol concentrations - ,GAS & !I/O [ug/m3] "iteratable" condenseable gas concentrations - ,CB & !I [ug/m3] total (gas+aerosol) semi volatile species - ,TEMPK & !I [K] temperature - ) - - IMPLICIT NONE - - !INPUT/OUTPUT - REAL, DIMENSION(:), INTENT(IN) :: PAOM ![ug/m3] Non volatile organic absorbing compounds - REAL, DIMENSION(:,:), INTENT(INOUT) :: AERO ![ug/m3] iteratable secondary aerosol concentration - REAL, DIMENSION(:,:), INTENT(INOUT) :: GAS ![ug/m3] iteratable condenseable gas concentration - REAL, DIMENSION(:,:), INTENT(IN) :: CB ![ug/m3] total (gas+aerosol) semi volatile (B) species - REAL, DIMENSION(:), INTENT(IN) :: TEMPK ![K] temperature - - !LOCAL, WORKING ARRAYS (AUTOMATIC ARRAYS) - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: AERO_OLD ![ug/m3] old secondary aerosol concentrations - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: AERO_NEW ![ug/m3] new secondary aerosol concentrations - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: GAS_OLD ![ug/m3] old condenseable gas concentrations - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: GAS_NEW1 ![ug/m3] new guess for gas OK with mass balance - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: GAS_NEW2 ![ug/m3] new guess for gas also OK with mass balance - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: CB_NEW ![ug/m3] "mass balance" not equal to CB - REAL, DIMENSION(SIZE(AERO,1)) :: M0_OLD ![ug/m3] old value for total aerosol mass - REAL, DIMENSION(SIZE(AERO,1)) :: M0_NEW ![ug/m3] new value of total aerosol mass - REAL, DIMENSION(SIZE(AERO,1),SIZE(AERO,2)) :: KPART ![m3/ug] partitioning coefficient - - REAL, DIMENSION(SIZE(AERO,1)) :: TMOLAOM ![umol/m3] total mole primary absorbing organic medium - REAL, DIMENSION(SIZE(AERO,1)) :: TMOL ![umol/m3] total mole of all organic b in aerosol phase - REAL, DIMENSION(SIZE(AERO,1)) :: TMOLINV ![m3/umol] 1/TMOL - REAL, DIMENSION(SIZE(AERO,1)) :: MWOM ![g/mol] average molar weight of semi volatile organics - - !LOCAL, WORKING ARRAYS (ALLOCATABLES) - REAL, ALLOCATABLE, DIMENSION(:,:) :: X ![frc] molar fraction all organics - REAL, ALLOCATABLE, DIMENSION(:,:) :: GAMA ![-] activity coefficient for all species - REAL, ALLOCATABLE, DIMENSION(:,:) :: GAMA_B ![-] activity coefficients for partitioning species - REAL, ALLOCATABLE, DIMENSION(:,:) :: ORGP ![umol/m3] concentration of primary absorbing species - REAL, ALLOCATABLE, DIMENSION(:,:,:) :: SI_B ![?] temperature dependent coefficient in UNIFAC - - INTEGER :: ITER_IDX !Counter for number of iterations - INTEGER :: I !Counter for components - INTEGER, PARAMETER :: MAX_ITER=10 !Max number of iterations - - !Allocate memory for X, GAMA, ORGP - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_TYPEB:TYPEB',0,ZHOOK_HANDLE) - ALLOCATE(X(SIZE(AERO,1),NBSPAO_PUN+NBSPB)) - ALLOCATE(GAMA(SIZE(AERO,1),NBSPAO_PUN+NBSPB)) - ALLOCATE(GAMA_B(SIZE(AERO,1),NBSPB)) - ALLOCATE(ORGP(SIZE(AERO,1),NBSPAO_PUN)) - ALLOCATE(SI_B(SIZE(AERO,1),NFUNC_B,NFUNC_B)) - - !Initialize the "old" arrays with guessed concentrations - AERO_OLD(:,:)=AERO(:,:) !initial Guess for aerosol - GAS_OLD(:,:)=GAS(:,:) !initial Guess for gas - - - IF(LBOX)THEN - write(6,*)" " - write(6,*)"************************START TYPE B VALUES********" - write(6,'(a10,5e14.5)')"AERO",AERO - write(6,'(a10,5e14.5)')"GAS",GAS - write(6,'(a10,5e14.5)')"CB",CB - write(6,'(a10,e14.5)')"PAOM",PAOM - write(6,*)"********************************************" - write(6,*)" " - ENDIF - - !Initialize the temperature dependent UNIFAC coefficients outside iterations - CALL SI_GET( & - TEMPK & !I [K] temperature - ,A_B & !I [units?] term in UNIFAC parameterization - ,SI_B & !O [units?] term in UNIFAC parameterization - ,NFUNC_B & !I [nbr] number of functional group in mixture - ) - - !Get total moles of primary aerosol (umol/m3) - DO I=1,NBSPAO_PUN - TMOLAOM(:) = & !umol/m3 - PAOM(:) & !ug/m3 - / MWAOM !g/mol ==> umol/m3 - ENDDO - - !Distribute the PAOM into components (XAOM) which are already fixed in modd_glo - DO I=1,NBSPAO_PUN - ORGP(:,I) = & !umol/m3 - TMOLAOM(:) & !umol/m3 - * XAOM(I) !frc ==> umol/m3 - ENDDO - - !Get the value for M0 (total organic in aerosol phase) - M0_OLD(:)=PAOM(:) - DO I=1,NBSPB - M0_OLD(:)=M0_OLD(:) + AERO_OLD(:,I) !ug/m3 - ENDDO - - !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - !From here on, we iterate - !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - DO ITER_IDX = 1,MAX_ITER - - !Initialize the "total mol" array with only primary aerosols - TMOL(:) = TMOLAOM(:) - - !Add the guessed aerosol concentrations to the TMOL array - DO I=1,NBSPAO_PUN - TMOL(:)= TMOL(:) & - + AERO_OLD(:,I)/MWB(I) ![umol/m3] of condenseable organic - ENDDO - - !Get the inverse of TMOL to multiply with this variable later - TMOLINV(:) = 1.d0/TMOL(:) - - !Get the mole fraction of each primary constituent - DO I = 1,NBSPAO_PUN - X(:,I) = ORGP(:,I) * TMOLINV(:) - ENDDO - - !Get molar fraction for the partitioning species - DO I = 1,NBSPB - X(:,NBSPAO_PUN+I) = AERO_OLD(:,I) / MWB(I) * TMOLINV(:) - ENDDO - - !Get average molar weight of non partitioning organic species - !Initalize molecular weight to zero - MWOM(:) = 0.d0 - DO I=1, NBSPAO_PUN - MWOM(:) = MWOM(:) + X(:,i) * MWAOM - ENDDO - - !Add the partitioning species - DO I=1, NBSPB - MWOM(:) = MWOM(:) + X(:,NBSPAO_PUN+I) * MWB(I) - ENDDO - - !Get activity coefficients given the current X - CALL ACT_COEFF_GET(& - NU_B & !I [nbr] number of functional groups in molecule I - ,X & !I [frc] mole fraction of molecule I - ,QG_B & !I [m2(?)] group surface area parameter - ,GAMA & !O [-] activity coefficient - ,THTAGP_B & !I [-] surface area ratio of groups (j) in pure component (i) - ,Q_B & !I [m2] surface area of pure component - ,R_B & !I [m3] total volume of pure component - ,L_B & !I [?] unifac parameter pure component - ,SI_B & !I [?] temperature dependent term - ,NMOL_B & !I [nbr] total number of molecules - ,NFUNC_B & !I [nbr] total number of functional groups (e.g. CH2, NO3 ..) - ) - - !We are really only interested in gama for the partitioning species - !Remember that the first 5 are POA species - GAMA_B(:,:)=GAMA(:,NBSPAO_PUN+1:NBSPAO_PUN+NBSPB) - - !/* calculate partition coefficient */ - Call KPART_PUN_GET( & - TEMPK & !I [K] temperature - , GAMA_B & !I [-] Activity coefficient - , MWOM & !I [g/mol] Molecular weight of organic matter - , KPART & !O [m3/ug] partitioning coefficient for species - ) - - !Get new aerosol concentrations - DO I=1,NBSPB - AERO_NEW(:,I)= & - KPART(:,I) & !m3/ug - *GAS_OLD(:,I) & !ug/m3 - *M0_OLD(:) !ug/m3 ==> ug/m3 - ENDDO - - !At this point we have only gas_old (from last iteration) and aero_new - !We might now be in the situation that AERO_NEW + GAS_OLD .NE.CB - !correct for it! - DO I=1,NBSPB - CB_NEW(:,I) = AERO_NEW(:,I) + GAS_OLD(:,I) !New mass balance, not equal to CB - AERO_NEW(:,I)=AERO_NEW(:,I)*CB(:,I)/CB_NEW(:,I) - GAS_NEW1(:,I)=GAS_OLD(:,I)*CB(:,I)/CB_NEW(:,I) - !write(6,*)"GASFRCB0", I, GAS_NEW1(:,I)/CB(:,I), (GAS_NEW1(:,I)+AERO_NEW(:,I))/CB(:,I) - ENDDO - - !Get the new, total aerosol mass - M0_NEW(:)=PAOM(:) - DO I=1,NBSPB - M0_NEW(:) = M0_NEW(:) + AERO_NEW(:,I) - ENDDO - - !Get the gas phase concentration which would be in equilibrium with what we just found - DO I=1,NBSPB - GAS_NEW2(:,I)= AERO_NEW(:,I)/M0_NEW(:)/KPART(:,I) - ENDDO - - !We might now be in the situation that AERO_NEW + GAS .NE.CB - !correct for it! - DO I=1,NBSPB - CB_NEW(:,I) = AERO_NEW(:,I) + GAS_NEW2(:,I) !New mass balance, not equal to CB - AERO_NEW(:,I)=AERO_NEW(:,I)*CB(:,I)/CB_NEW(:,I) - GAS_NEW2(:,I)=GAS_NEW2(:,I)*CB(:,I)/CB_NEW(:,I) - ENDDO - - !Use the new value of AERO_NEW to make a new guess for AERO_OLD - !if the sum of aero+gas is larger than the total, it means that two - !much is in the aerosol phase, and we guess a concentration which - !is lower than what we just calculated - - IF(LPRINT)THEN - write(6,*)" " - write(6,*)"*****************" - write(6,'(a10,5e14.6)')"KPART",KPART - write(6,'(a10,5e14.6)')"GAMA_B", GAMA_B - write(6,'(a10,5e14.6)')"AERO_OLD",AERO_OLD - write(6,'(a10,5e14.6)')"AERO_NEW",AERO_NEW - write(6,'(a10,5e14.6)')"GAS_OLD",GAS_OLD - write(6,'(a10,5e14.6)')"GAS_NEW",GAS_NEW1 - write(6,'(a10,5e14.6)')"GAS_NEW",GAS_NEW2 - write(6,'(a10,5e14.6)')"XPOA",X(:,1:5) - write(6,'(a10,5e14.6)')"XSOA",X(:,6:10) - write(6,*)"M0_OLD",M0_OLD, PAOM, M0_OLD-PAOM - ENDIF - - !New guess for aerosol concentration - !AERO_OLD(:,:) = AERO_NEW(:,:) - - !Our new guess for gas phase - !GAS_OLD(:,:)=0.5*(GAS_NEW1(:,:)+GAS_NEW2(:,:)) - GAS_OLD(:,:)=sqrt(GAS_NEW1(:,:)*GAS_NEW2(:,:)) - - !New guess for aerosol concentration - AERO_OLD(:,:)=CB(:,:)-GAS_OLD(:,:) - - !Make a new guess for M0 - M0_OLD(:)=PAOM(:) - DO I=1,NBSPB - M0_OLD(:) = & - M0_OLD(:) + AERO_OLD(:,I) - ENDDO - - ENDDO !Loop on iterations - - IF(LBOX)write(6,*)"sum X",sum(X) - - !Allocate memory for X, GAMA, ORGP - DEALLOCATE(X) - DEALLOCATE(GAMA) - DEALLOCATE(GAMA_B) - DEALLOCATE(ORGP) - DEALLOCATE(SI_B) - - AERO(:,:)=AERO_OLD(:,:) - GAS(:,:)=GAS_OLD(:,:) - - IF(LBOX)THEN - write(6,*)"************************END VALUES********" - write(6,'(a10,5e14.5)')"AERO",AERO - write(6,'(a10,5e14.5)')"GAS",GAS - write(6,'(a10,5e14.5)')"CB",CB - write(6,'(a10,5e14.5)')"DIFF",CB-GAS-AERO - write(6,'(a10,e14.5)')"PAOM",PAOM - write(6,*)"********************************************" - write(6,*)" " - ENDIF - - IF (LHOOK) CALL DR_HOOK('MODE_TYPEB:TYPEB',1,ZHOOK_HANDLE) - END SUBROUTINE TYPEB - - !************************************************ - subroutine kpart_pun_get( & - TEMPK & !I [K] temperature - ,GAMA & !I [-] activity coefficient - ,MWOM & !I [g/mol] average molar weight of organics - ,KB & !O [m3/ug] partitioning coefficient - ) - - implicit none - - !INPUT - REAL, DIMENSION(:), INTENT(IN) :: TEMPK !I [K] temperature - REAL, DIMENSION(:,:), INTENT(IN) :: GAMA !I [-] activity coefficients - REAL, DIMENSION(:) :: MWOM !I [g/mol] molecular weight organics - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: KB !O [m3/ug] partitioning coefficient - - !LOCAL - INTEGER :: I - - !The only goal of this routine is to get the partitioning coeffient: - !So here is the way to do it: - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_TYPEB:KPART_PUN_GET',0,ZHOOK_HANDLE) - do i=1,NBSPB - KB(:,i)= 760.d0 &!torr/atm - *R_UNIV &!(m3*atm)/(mol*K) - *1.d-6 &!g/ug - *TEMPK(:) &!K - /VPB(i) &!torr - /MWOM(:) &!g/mol - /GAMA(:,i) !==> m3/ug - enddo - - IF (LHOOK) CALL DR_HOOK('MODE_TYPEB:KPART_PUN_GET',1,ZHOOK_HANDLE) - end subroutine kpart_pun_get - !************************************************************ - - -END MODULE mode_typeb diff --git a/src/arome/chem/module/mode_unifac.F90 b/src/arome/chem/module/mode_unifac.F90 deleted file mode 100644 index 42ead8358f0df12d32904cc6d90c87de034edc84..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_unifac.F90 +++ /dev/null @@ -1,870 +0,0 @@ -! ######spl -MODULE MODE_UNIFAC -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - !******************************************************************* - !Theory: Basics of UNIFAC group combination method to get activity - !coefficients for mixtures. This is nicely outlined in - !Marcolli and Peter, ACP, vol 5, pp 1501-1527, 2005 - !http://overview.sref.org/1680-7324/acp/2005-5-1545 - !In the following I follow notations of their eqn 1-9 - - !Approximately following original code recieved from Pierre Tulet - !who got it from Betty Pun who (it seems) got it from Pradeep Saxena - - !Adopted to MESONH by Alf Grini, CNRM, 2005 - !******************************************************************* - !MAIN CHANGES: - !1) Doing calculations on a vector instead of on a point - !2) A lot of calcualtions taken out and done in unifac_ini routines - IMPLICIT NONE - - PUBLIC - PRIVATE :: LNGAMMA_RESIDUAL_GET, LNGAMMA_COMBINATORY_GET - -CONTAINS - - SUBROUTINE ACT_COEFF_GET( & - NU & !I [nbr] number of functional groups in molecule I - ,X & !I [frc] mole fraction of molecule I - ,QG & !I [m2(?)] group surface area parameter - ,GAMA & !O [-] activity coefficient - ,THTAGP & !I [-] surface area ratio of groups (j) in pure component (i) - ,Q & !I [m2] surface area of pure component - ,R & !I [m3] total volume of pure component - ,L & !I [?] unifac parameter pure component - ,SI & !I [?] temperature dependent term - ,NMOL & !I [nbr] total number of molecules - ,NFUNC & !I [nbr] total number of functional groups (e.g. CH2, NO3 ..) - ) - - !Purpose: Get the activity coefficients for any mixture using the UNIFAC method - - IMPLICIT NONE - - !INPUT - INTEGER, INTENT(IN) :: NFUNC ![nbr] number of functional groups - INTEGER, INTENT(IN) :: NMOL ![nbr] number of molecules in question - INTEGER, DIMENSION(:,:) :: NU ![nbr] number of func. groups (j) in molec (i) - REAL, DIMENSION(:,:) :: X ![-] molar fraction of components - REAL, DIMENSION(:), INTENT(IN) :: R ![m3] volume of molecules - REAL, DIMENSION(:), INTENT(IN) :: Q ![m2] surface of molecule - REAL, DIMENSION(:), INTENT(IN) :: QG ![m2] surface of groups - REAL, DIMENSION(:), INTENT(IN) :: L ![??] UNIFAC parameter - REAL, DIMENSION(:,:), INTENT(IN) :: THTAGP ![-] sfc area frc of group j in comp i - REAL, DIMENSION(:,:,:), INTENT(IN) :: SI ![?] temperature dependent term - - !OUTPUT - REAL, DIMENSION(:,:), INTENT(OUT) :: GAMA ![-] activity coefficient of comp i in mix - - !LOCAL - REAL, DIMENSION(SIZE(X,1),SIZE(X,2)) :: LNGAMMA_C ![-] log of combinatory part of gamma - REAL, DIMENSION(SIZE(X,1),SIZE(X,2)) :: LNGAMMA_R ![-] log of residual part of gamma - INTEGER :: I ![idx] counter for molecules - - !Get the combinatory part of gamma - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ACT_COEFF_GET',0,ZHOOK_HANDLE) - CALL LNGAMMA_COMBINATORY_GET ( & - Q & !I [m2] surface of one molecule - ,R & !I [m3] volume of one molecule - ,L & !L [?] unifac parameter - ,X & ![-] molar fraction of components - ,LNGAMMA_C & ![-] log of combinatory part of act. coeff - ,NMOL & ![nbr] number of molecules - ) - - !Get the residual part of gamma - CALL LNGAMMA_RESIDUAL_GET( & - QG & !I [m2] surface of groups - ,NU & !I [nbr] number of functional groups in components - ,X & !I [-] molar fraction of species - ,THTAGP & !I [-] area fraction of groups in pure components - ,SI & !I [?] temperature dependent term - ,LNGAMMA_R & !O [-] log of residual part of gamma - ,NMOL & !I [nbr] number of molecules - ,NFUNC & !I [nbr] number of functional groups - ) - - !Get the total activity coefificent - DO I=1,NMOL - GAMA(:,I)=EXP(LNGAMMA_C(:,I) + LNGAMMA_R(:,I)) - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ACT_COEFF_GET',1,ZHOOK_HANDLE) - END SUBROUTINE ACT_COEFF_GET - - !*************************************************************************** - - SUBROUTINE LNGAMMA_COMBINATORY_GET( & - Q & !I [m2] surface of one molecule - ,R & !I [m3] volume of one molecule - ,L & !L [?] unifac parameter - ,X & ![-] molar fraction of components - ,LNGAMMA_C & ![-] log of combinatory part of act. coeff - ,NMOL & ![nbr] number of molecules - ) - - !Purpose: Find the combinatory part of the activity coefficient - IMPLICIT NONE - - !INPUT/OUTPUT - REAL, DIMENSION(:), INTENT(IN) :: R ![m3] volume of molecules - REAL, DIMENSION(:), INTENT(IN) :: Q ![m2] surface of molecule - REAL, DIMENSION(:), INTENT(IN) :: L ![??] UNIFAC parameter - REAL, DIMENSION(:,:), INTENT(IN) :: X ![-] molar fraction of components - REAL, DIMENSION(:,:), INTENT(OUT) :: LNGAMMA_C ![-] log of combinatory part of gamma - INTEGER, INTENT(IN) :: NMOL ![nbr] number of molecules - - !Local variables - REAL, DIMENSION(SIZE(X,1),SIZE(X,2)) :: RX ![m3] volume of one component - REAL, DIMENSION(SIZE(X,1)) :: SUMRX ![m3] sum of volume - REAL, DIMENSION(SIZE(X,1)) :: SUMRXINV ![m-3] inverse sum of volume - REAL, DIMENSION(SIZE(X,1),SIZE(X,2)) :: QX ![m2] surface of one component - REAL, DIMENSION(SIZE(X,1)) :: SUMQX ![m2] sum of area - REAL, DIMENSION(SIZE(X,1)) :: SUMQXINV ![m-2] inverse sum of area - REAL, DIMENSION(SIZE(X,1)) :: SUMXL ![??] sum of "L" - REAL, DIMENSION(SIZE(X,1),SIZE(X,2)) :: PHI ![??] parameter in eqn 4 - REAL, DIMENSION(SIZE(X,1),SIZE(X,2)) :: THETA ![??] parameter in eqn 4 - INTEGER :: I ![idx] counter for molecules - REAL, PARAMETER :: ZHALF=5.d0 ![-] constant in UNIFAC parameterization - - - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:LNGAMMA_COMBINATORY_GET',0,ZHOOK_HANDLE) - SUMRX(:)=0.d0 - SUMQX(:)=0.d0 - SUMXL(:)=0.d0 - DO I=1,NMOL - RX(:,I)=X(:,I)*R(I) !Needed for numerator in eqn 4 - QX(:,I)=X(:,I)*Q(I) !Needed for numerator in eqn 4 - SUMRX(:)=SUMRX(:) + RX(:,I) !Needed in denominator in eqn 4 - SUMQX(:)=SUMQX(:) + QX(:,I) !Needed in denominator in eqn 4 - SUMXL(:)=SUMXL(:) + X(:,I)*L(I) !Needed at the end of eqn 3 - ENDDO - SUMRXINV(:) = 1.d0/SUMRX(:) - SUMQXINV(:) = 1.d0/SUMQX(:) - - !Solve eqn 4 (for volume ==> phi and surface ==> theta) - DO I=1,NMOL - PHI(:,I) = RX(:,I)*SUMRXINV(:) - THETA(:,I) = QX(:,I)*SUMQXINV(:) - ENDDO - - !Get the combinatorial part of the activity coefficient - !This is obtained through solving eqn 3 - DO I=1,NMOL - WHERE(X(:,I).gt.0.) - LNGAMMA_C(:,I) = & - log(PHI(:,I)/X(:,I)) & - + ZHALF*Q(I)*log(THETA(:,I)/PHI(:,I)) & - + L(I) & - - PHI(:,I)/X(:,I)*SUMXL(:) - ELSEWHERE - LNGAMMA_C(:,I)=0.d0 - ENDWHERE - ENDDO - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:LNGAMMA_COMBINATORY_GET',1,ZHOOK_HANDLE) - END SUBROUTINE LNGAMMA_COMBINATORY_GET - - !********************************************************* - - SUBROUTINE LNGAMMA_RESIDUAL_GET( & - QG & !I [m2] surface of groups - ,NU & !I [nbr] number of functional groups in components - ,X & !I [-] molar fraction of species - ,THTAGP & !I [-] area fraction of groups in pure components - ,SI & !I [-] temperature dependent term - ,LNGAMMA_R & !O [-] log of residual part of gamma - ,NMOL & !I [nbr] number of molecules - ,NFUNC & !I [nbr] number of functional groups - ) - - !*********************************************** - !Purpose: - !Get the residual part of the activity coefficients - !basically, solve eqn 7-9 in MaP05 - ! ************************************************ - - IMPLICIT NONE - !INPUTS - REAL, DIMENSION(:), INTENT(IN) :: QG ![m2] surface of groups - INTEGER, DIMENSION(:,:), INTENT(IN) :: NU ![nbr] number of groups (j) in molecule (i) - REAL, DIMENSION(:,:), INTENT(IN) :: X ![frc] molar fraction of components - REAL, DIMENSION(:,:), INTENT(IN) :: THTAGP ![frc] area fraction of groups in pure comp - REAL, DIMENSION(:,:,:) :: SI ![?] temperature dependent term - INTEGER, INTENT(IN) :: NMOL ![nbr] number of molecules - INTEGER, INTENT(IN) :: NFUNC ![nbr] number of functional groups - - - !OUTPUTS - REAL, DIMENSION(:,:) :: LNGAMMA_R ![-] log of residual part of act. coeff - - !LOCAL - REAL, DIMENSION(SIZE(X,1)) :: SUMXGM ![nbr] number of groups in mixtures - REAL, DIMENSION(SIZE(X,1)) :: SUMXGMINV ![1/nbr] (number of groups in mix)**(-1) - REAL, DIMENSION(SIZE(X,1)) :: SUMJX ![nbr] total number of one group - REAL, DIMENSION(SIZE(X,1),SIZE(QG)) :: XGM ![-] fraction of groups (of total) - REAL, DIMENSION(SIZE(X,1)) :: SUMTGM ![m2] sum of functional group area - REAL, DIMENSION(SIZE(X,1)) :: SUMTGMINV ![m-2] 1/"sum of functional group area" - REAL, DIMENSION(SIZE(X,1),SIZE(QG)) :: THTAGM ![frc] surface fraction of groups - REAL, DIMENSION(SIZE(X,1),SIZE(QG)) :: TTSIM ![-] mix: part of term 2 of eq 8 (sum{theta x psi}) - REAL, DIMENSION(SIZE(X,1)) :: TERM3 ![-] term 3 of equation 8 - REAL, DIMENSION(SIZE(X,1), SIZE(QG)) :: TTSIP ![-] pure: part of term 2 of eq 8 (sum{theta x psi}) - REAL, DIMENSION(SIZE(X,1), SIZE(X,2),SIZE(QG)) :: GAMPLN ![-] log of large gamma, pure comp - REAL, DIMENSION(SIZE(X,1), SIZE(QG)) :: GAMMLN ![-] log of large gamma, mix - INTEGER :: I ![idx] counter for molecules - INTEGER :: J, J1,J2 ![idx] counter for functional groups - - !Get sum of "molar fractions" of functional groups - !(i.e. NOT molar fractions of components) - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:LNGAMMA_RESIDUAL_GET',0,ZHOOK_HANDLE) - SUMXGM(:)=0.d0 !sum of molar fraction of functional groups in pure state - DO J=1,NFUNC - DO I=1,NMOL - SUMXGM(:)=SUMXGM(:) + DBLE(NU(I,J))*X(:,I) - ENDDO - ENDDO - SUMXGMINV(:)=1.d0/SUMXGM(:) !ZTOT7 in orig code - - DO J=1,NFUNC - SUMJX(:)=0.d0 !Sum of one particular functional group - DO I=1,NMOL - SUMJX(:)=DBLE(NU(I,J))*X(:,I) + SUMJX(:) - ENDDO - XGM(:,J)=SUMJX(:)*SUMXGMINV(:) !Mole fraction of one group in mixture - ENDDO - - !Get total group area in mixture - SUMTGM(:)=0.d0 - DO J=1,NFUNC - SUMTGM(:)=SUMTGM(:) & !Old sum - + XGM(:,J)*QG(J) !Sum of functional group area of component j - ENDDO - SUMTGMINV(:)=1.d0/SUMTGM(:) - - !Get theta (eqn 9) for the mixture - DO J=1,NFUNC - THTAGM(:,J)=QG(J)*XGM(:,J)*SUMTGMINV(:) - ENDDO - - !Get values of SI (temperature dependent), don't need to be in the iteration! - !eqn 9 in MaP05 - !Sent in as input to save computer time - !TEMPKINV(:) = 1.d0/TEMPK(:) - !DO J1=1,NFUNC - ! DO J2=1,NFUNC - ! SI(:,J1,J2) = EXP(-A(J1,J2)*TEMPKINV(:)) - ! ENDDO - !ENDDO - - !Get capital gammas, (eqn 8) for pure and mix - DO J1=1,NFUNC - TTSIM(:,J1)=0.d0 - DO J2=1,NFUNC - !TTSIM is part of second term in eqn 8 - TTSIM(:,J1)=TTSIM(:,J1)+THTAGM(:,J2)*SI(:,J2,J1) - ENDDO - ENDDO - - !DONE ALL INTERMEDIATE EQNATIONS ==> ATTACK EQN 8 - DO J1=1,NFUNC - TERM3(:)=0.d0 !Term 3 in eqn 8 (ZOT10 in Saxena's code) - !Now: first get the third term, and then solve all eqn 8 for all func. groups - DO J2=1,NFUNC - TERM3(:)=TERM3(:)+THTAGM(:,J2)*SI(:,J1,J2)/TTSIM(:,J2) - ENDDO - !Now solve the whole eqn 8 for mixture - GAMMLN(:,J1)=QG(J1)*(1. - LOG(TTSIM(:,J1)) - TERM3(:)) - ENDDO - - !DO THE SAME FOR PURE COMPONENTS - DO I=1,NMOL - DO J1=1,NFUNC - TTSIP(:,J1)=0.d0 - DO J2=1,NFUNC - !Sum of seconnd term in eqn 8 - TTSIP(:,J1)=TTSIP(:,J1) &!old value - + THTAGP(I,J2)*SI(:,J2,J1) - ENDDO - ENDDO - - DO J1=1,NFUNC - TERM3(:)=0.d0 !ZOT11 in original code - DO J2=1,NFUNC - !Get term 3 in equation 8 for pure components - TERM3(:)=TERM3(:) + THTAGP(I,J2)*SI(:,J1,J2)/TTSIP(:,J2) - ENDDO - - !Get capital gamma (eqn 8) for pure components - GAMPLN(:,I,J1)=QG(J1)*(1.d0 - LOG(TTSIP(:,J1)) -TERM3(:)) - - ENDDO - - ENDDO !Loop on moles - - !Get the log of the residual part of the activity coefficient - !Equation 7 in MaP05 - DO I=1,NMOL - LNGAMMA_R(:,I)=0.d0 - DO J=1,NFUNC - LNGAMMA_R(:,I)=LNGAMMA_R(:,I) & - + DBLE(NU(I,J))*(GAMMLN(:,J)-GAMPLN(:,I,J)) - ENDDO - ENDDO - - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:LNGAMMA_RESIDUAL_GET',1,ZHOOK_HANDLE) - END SUBROUTINE LNGAMMA_RESIDUAL_GET - - !****************************************************************** - - SUBROUTINE UNIFAC_INI( & - QG & !I [m2] surface of functional groups - ,RG & !I [m3] volume of functional groups - ,NU & !I [nbr] number of functional groups in molec - ,THTAGP & !O [frc] surface fraction of group (j) in molecule (i) - ,Q & !O [m2] surface of molecule - ,R & !O [m3] volume of molecule - ,L & !O [?] UNIFAC parameter for molecule - ,NMOL & !I [nbr] number of molecules used - ,NFUNC & !I [nbr] number of functional groups used - ) - - !Purpose: Set all non-time varying variables needed for UNIFAC formulation - !Following the equations given in - !Marcolli and Peter, ACP, vol 5, pp 1501-1527, 2005 - !http://overview.sref.org/1680-7324/acp/2005-5-1545 - !In the following I follow notations of their eqn 1-9 - - IMPLICIT NONE - - !IN - INTEGER :: NMOL ![nbr] number of molecules - INTEGER :: NFUNC ![nbr] number of functional groups - REAL, DIMENSION(NFUNC), INTENT(IN) :: QG ![m2] group surface parameter - REAL, DIMENSION(NFUNC), INTENT(IN) :: RG ![m3] group volume parameter - INTEGER, DIMENSION(NMOL,NFUNC), INTENT(IN) :: NU ![nbr] number of groups (j) in comp (i) - REAL, DIMENSION(NMOL,NFUNC), INTENT(OUT) :: THTAGP![-] sfc fraction of group (j) in comp (i) - - !OUT - REAL, DIMENSION(NMOL), INTENT(OUT) :: Q ![m2] total surface area of molec - REAL, DIMENSION(NMOL), INTENT(OUT) :: R ![m3] total volume of molec - REAL, DIMENSION(NMOL), INTENT(OUT) :: L ![?] IUPAC parameter - - !LOCAL VARIABLES - REAL :: SUMXGP ![-] sum of groups in one comp - REAL :: SUMXGPINV ![-] 1/"sum of groups in one comp" - REAL, DIMENSION(NMOL,NFUNC) :: XGP ![-] fraction of groups in one comp - REAL :: SUMTGP ![m2] sum sfc area of one group in one comp - REAL :: SUMTGPINV ![m-2] 1/"sum sfc area of one group in one comp" - INTEGER :: I ![idx] counter for components - INTEGER :: J ![idx] counter for functional group - - REAL, PARAMETER :: ZHALF=5.d0 ! parameter in UNIFAC - - !First: get total surface (Q) and volume (R) for all molecules - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:UNIFAC_INI',0,ZHOOK_HANDLE) - Q(:)=0.d0 - R(:)=0.d0 - - !This can be moved to an initialization routine, cause it will always - !give same answer for Q and R - !Solve eqn 6: - DO J=1,NFUNC - DO I=1,NMOL - Q(I) = Q(I) + dble(NU(I,J))*QG(J) !==> total surface of molec - R(I) = R(I) + dble(NU(I,J))*RG(J) !==> total volume of molec - ENDDO - ENDDO - - !Get the parameter L (eqn 5) - DO I=1,NMOL - L(I)=ZHALF*(R(I) - Q(I)) - (R(I) -1.d0) - ENDDO - - !==> all the below can be done in initialization - !Get molar fraction of group n in pure component - DO I=1,NMOL - SUMXGP = 0.d0 - DO J=1,NFUNC - SUMXGP = SUMXGP + DBLE(NU(I,J)) !sum of molar groups in ONE component - ENDDO - SUMXGPINV = 1.d0/SUMXGP - DO J=1,NFUNC - XGP(I,J)=DBLE(NU(I,J))*SUMXGPINV !Molar fraction of group j in pure component i - ENDDO - ENDDO - - !Get the area fraction - DO I=1,NMOL - SUMTGP = 0.d0 - DO J=1,NFUNC - SUMTGP = SUMTGP + XGP(I,J)*QG(J) !Sum of surface area of all groups in one comp - ENDDO - SUMTGPINV = 1.d0/SUMTGP !Inverse sum of surface area of all groups in one comp - DO J=1,NFUNC - !Get theta, (eqn 9) for pure components - THTAGP(I,J) = QG(J)*XGP(I,J)*SUMTGPINV - ENDDO - ENDDO - - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:UNIFAC_INI',1,ZHOOK_HANDLE) - END SUBROUTINE UNIFAC_INI - - !************************************************************************** - - !*********************************************************************************** - !*****INITIALIZATION ROUTINES FOR GRIFFIN'S CODES ********************************* - !********************************************************************************** - - !****************************************************************** - SUBROUTINE ORG_UNIFAC_INI() - - !Purpose: Set the values of declared in the bunifacparam module - - USE MODD_UNIFACPARAM - - IMPLICIT NONE - - !Notes: 8 primary compounds: - ! nC29 - ! C4 diacid - ! naphthalene - 2,6-diacid - ! benzo(ghi) perylene - ! biomarker compound - ! 4-carboxybenzoic acid - ! C18 acid - ! 1,5-ditertbutyl-4,8-di(dimethylpropyl)-decalin - - !order for functional groups: CH3, CH2, CH, C, C=C, C=CH - !aroC, pahC, tol, ethylbenz, OH, phen, ketone, alde, COOH, NO2 - - !Group volume parameters - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ORG_UNIFAC_INI',0,ZHOOK_HANDLE) - RG_ORG(1:NFUNC_ORG) = (/0.9011, 0.6744, 0.4469, 0.2195, 0.6605, 0.8886, & - 0.5313, 0.3562, 1.2663, 1.0396, 1.0000, 0.8952, & - 1.6724, 0.9980, 1.3013, 1.4199/) - - !Group surface parameters - QG_ORG(1:NFUNC_ORG)= (/0.8480, 0.5400, 0.2280, 0.0, 0.4850, 0.6760, & - 0.4000, 0.1200, 0.9680, 0.6600, 1.2000, 0.6800, & - 1.4880, 0.9480, 1.2440, 1.1040/) - - !Set number of functional groups in each molecule. - !Each column corresponds to a molecule - NU_ORG(:,1)=(/ 2, 0, 0, 0, 8, 0, 1, 12, 0, 0, 0, 2, 3, 0, 1, 2, 2, 2 /) !CH3 - NU_ORG(:,2)=(/27, 2, 0, 0, 11, 0, 16, 6, 0, 0, 0, 12, 3, 0, 0, 0, 0, 2 /) !CH2 - NU_ORG(:,3)=(/0, 0, 0, 0, 6, 0, 0, 6, 0, 0, 0, 1, 2, 0, 0, 0, 2, 3 /) !CH - NU_ORG(:,4)=(/0, 0, 0, 0, 5, 0, 0, 4, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 /) !C - NU_ORG(:,5)=(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,0, 0 /) !C==C - NU_ORG(:,6)=(/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 0 /) !C==CH - NU_ORG(:,7)=(/ 0, 0, 8, 12, 0, 6, 0, 0, 2, 3, 7, 0, 0, 0, 0, 0, 0, 0 /) !aeroC - NU_ORG(:,8)=(/0, 0, 2, 10, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0 /) !pahC - NU_ORG(:,9)=(/ 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0 /) !tol - NU_ORG(:,10)=(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /) !EB - NU_ORG(:,11)=(/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1 /) !OH - NU_ORG(:,12)=(/0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 /) !phen - NU_ORG(:,13)=(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1 /) !ket - NU_ORG(:,14)=(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 2, 0, 1 /) !ald - NU_ORG(:,15)=(/0, 2, 2, 0, 0, 2, 1, 0, 1, 1, 0, 0, 0, 2, 2, 0, 1, 0 /) !COOH - NU_ORG(:,16)=(/0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0 /) !CNO2 - - !CH3 - A_ORG(:,1)=(/ 0.0, 0.0, 0.0, 0.0, 2520.00, 2520.00, -11.1200, & - -11.1200, -69.700, -69.700, 156.400, 10000.00, & - 26.7600, 505.700, 315.300, 5541.0 /) - !CH2 - A_ORG(:,2)=(/0.0, 0.0, 0.0, & - 0.0, 2520.00, 2520.00, -11.1200, -11.1200, -69.700, & - -69.700, 156.400, 10000.00, 26.7600, 505.700, & - 315.300, 5541.00 /) - !CH - A_ORG(:,3)=(/ 0.0, 0.0, 0.0, 0.0, 2520.00, & - 2520.00, -11.1200, -11.1200, -69.700, -69.700, & - 156.400, 10000.00, 26.7600, 505.700, 315.300, & - 5541.00 /) - !C - A_ORG(:,4)=(/0.0, 0.0, 0.0, 0.0, 2520.00, 2520.00, & - -11.1200, -11.1200, -69.700, -69.700, 156.400, & - 10000.00, 26.7600, 505.700, 315.300, 5541.00 /) - !C==C - A_ORG(:,5)=(/-200.00, -200.00, -200.00, -200.00, 0.0, 0.0, & - -97.7800, -97.7800, -269.700, -269.700, 8694.00, & - 732.200, -82.9200, 0.0, 349.200, 0.0 /) - !C==CH - A_ORG(:,6)=(/-200.00, & - -200.00, -200.00, -200.00, 0.0, 0.0, -97.7800, & - -97.7800, -269.700, -269.700, 8694.00, 732.200, & - -82.9200, 0.0, 349.200, 0.0 /) - !aero - A_ORG(:,7)=(/61.1300, 61.1300, & - 61.1300, 61.1300, 340.700, 340.700, 0.0, 0.0, & - -146.800, -146.800, 89.600, 270.200, 140.100, 0.0, & - 62.3200, 1824.00 /) - !pah - A_ORG(:,8)=(/ 61.1300, 61.1300, 61.1300, 61.1300, & - 340.700, 340.700, 0.0, 0.0, -146.800, -146.800, 89.600, & - 270.200, 140.100, 0.0, 62.3200, 1824.00 /) - !tol - A_ORG(:,9)= (/ 76.500, & - 76.500, 76.500, 76.500, 4102.00, 4102.00, 167.00, & - 167.00, 0.0, 0.0, 25.8200, 10000.00, 365.800, 0.0, & - 268.200, -127.800 /) - !EB - A_ORG(:,10)=(/76.500, 76.500, 76.500, 76.500, & - 4102.00, 4102.00, 167.00, 167.00, 0.0, 0.0, 25.8200, & - 10000.00, 365.800, 0.0, 268.200, -127.800 /) - !OH - A_ORG(:,11)=(/986.500, 986.500, 986.500, 986.500, 693.900, 693.900, & - 636.100, 636.100, 803.200, 803.200, 0.0, -274.500, & - 164.500, -404.800, -151.00, 561.600 /) - !phenol - A_ORG(:,12)=(/912.200, 912.200, & - 912.200, 912.200, 926.300, 926.300, 1174.00, 1174.00, & - 674.300, 674.300, -442.100, 0.0, -246.800, 0.0, 0.0, & - 0.0/) - !ket - A_ORG(:,13)=(/476.400, 476.400, 476.400, 476.400, 524.500, & - 524.500, 25.7700, 25.7700, -52.100, -52.100, 84.00, & - -158.800, 0.0, 128.00, -297.800, 0.0 /) - !ald - A_ORG(:,14)=(/677.00, 677.00, & - 677.00, 677.00, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 441.800,& - 0.0, -37.3600, 0.0, 0.0, 0.0 /) - !COOH - A_ORG(:,15)=(/663.500, 663.500, 663.500, & - 663.500, 730.400, 730.400, 537.400, 537.400, 603.800, & - 603.800, 119.00, 0.0, 669.400, 0.0, 0.0, 0.0 /) - !CNO2 - A_ORG(:,16)=(/543.00, & - 543.00, 543.00, 543.00, 0.0, 0.0, 194.900, 194.900, & - 4448.00, 4448.00, 157.100, 0.0, 0.0, 0.0, 0.0, 0.0 /) - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ORG_UNIFAC_INI',1,ZHOOK_HANDLE) - END SUBROUTINE ORG_UNIFAC_INI - - - !*************************************************************************************** - SUBROUTINE AQ_UNIFAC_INI() - - !Purpose: Set the values of declared in the bunifacparam module - - USE modd_unifacparam - - IMPLICIT NONE - - !Functional groups: - !CH3, CH2, CH, C=C, C=CH, aero, pah, tol, EB, OH - !phenol, ketone, aldehyde, COOH, aroNO2, water, C - - !Group volume parameters - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:AQ_UNIFAC_INI',0,ZHOOK_HANDLE) - RG_AQ(1:NFUNC_AQ) = (/0.9011, 0.6744, 0.4469, 0.6605, 0.8886, & - 0.5313, 0.3562, 1.2663, 1.0396, 1.0000, 0.8952, & - 1.6724, 0.9980, 1.3013, 1.4199, 0.9200, 0.2195/) - - !Group surface parameters - QG_AQ(1:NFUNC_AQ)= (/0.8480, 0.5400, 0.2280, 0.4850, 0.6760, & - 0.4000, 0.1200, 0.9680, 0.6600, 1.2000, 0.6800, & - 1.4880, 0.9480, 1.2440, 1.1040, 1.4000, 0.0/) - - !Set number of functional groups in each molecule. - !Each row corresponds to a molecule ==> - !Functional groups: - !CH3, CH2, CH, C=C, C=CH, aero, pah, tol, EB, OH, phenol, ketone, aldehyde, COOH, aroNO2, water, C - NU_AQ( 1,:)=(/0 ,0 ,0 ,0 ,0 ,2 ,0 ,2 ,0 ,0 ,1 ,0 ,0 ,1 ,1 ,0 ,0 /) - NU_AQ( 2,:)=(/0 ,0 ,0 ,0 ,0 ,3 ,0 ,2 ,0 ,0 ,0 ,0 ,1 ,1 ,0 ,0 ,0 /) - NU_AQ( 3,:)=(/0 ,0 ,0 ,0 ,0 ,7 ,2 ,1 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0 ,0 /) - NU_AQ( 4,:)=(/2 ,12 ,1 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0 ,0 ,0 ,0 ,1 ,0 ,0 /) - NU_AQ( 5,:)=(/3 ,3 ,2 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0 ,0 ,0 ,0 ,1 ,0 ,1 /) - NU_AQ( 6,:)=(/0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,2 ,0 ,0 /) - NU_AQ( 7,:)=(/1 ,0 ,0 ,0 ,2 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,2 ,0 ,0 ,0 /) - NU_AQ( 8,:)=(/2 ,0 ,0 ,1 ,1 ,0 ,0 ,0 ,0 ,1 ,0 ,0 ,2 ,0 ,0 ,0 ,0 /) - NU_AQ( 9,:)=(/2 ,0 ,2 ,0 ,1 ,0 ,0 ,0 ,0 ,1 ,0 ,1 ,0 ,1 ,0 ,0 ,0 /) - NU_AQ(10,:)=(/2 ,2 ,3 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0 ,1 ,1 ,0 ,0 ,0 ,0 /) - NU_AQ(11,:)=(/0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,1 ,0 /) - - - !Copy and paste values from Griffin - !interaction parameters group-group - !CH3 - A_AQ(:,1)=(/ 0.0, 0.0, 0.0, 2520.00, 2520.00, -11.1200, & - -11.1200, -69.700, -69.700, 156.400, 10000.00, & - 26.7600, 505.700, 315.300, 5541.00, 300.0, 0.0 /) - !CH2 - A_AQ(:,2)=(/ 0.0, 0.0, & - 0.0, 2520.00, 2520.00, -11.1200, -11.1200, -69.700, & - -69.700, 156.400, 10000.00, 26.7600, 505.700, & - 315.300, 5541.00, 300.0, 0.0 /) - !CH - A_AQ(:,3)= (/ 0.0, 0.0, 0.0, 2520.00, & - 2520.00, -11.1200, -11.1200, -69.700, -69.700, & - 156.400, 10000.00, 26.7600, 505.700, 315.300, & - 5541.00, 300.0, 0.0 /) - !C=C - A_AQ(:,4) =(/ -200.00, -200.00, -200.00, 0.0, 0.0, & - -97.7800, -97.7800, -269.700, -269.700, 8694.00, & - 732.200, -82.9200, 0.0, 349.200, 0.0, 692.7, -200.00 & - /) - !C=CH - A_AQ(:,5) = (/ -200.00, -200.00, -200.00, 0.0, 0.0, -97.7800, & - -97.7800, -269.700, -269.700, 8694.00, 732.200, & - -82.9200, 0.0, 349.200, 0.0, 692.7, -200.00 /) - !aro - A_AQ(:,6) = (/ 61.1300, & - 61.1300, 61.1300, 340.700, 340.700, 0.0, 0.0, & - -146.800, -146.800, 89.600, 270.200, 140.100, 0.0, & - 62.3200, 1824.00, 362.3, 61.1300 /) - !pah - A_AQ(:,7) = (/ 61.1300, 61.1300, 61.1300, & - 340.700, 340.700, 0.0, 0.0, -146.800, -146.800, 89.600, & - 270.200, 140.100, 0.0, 62.3200, 1824.00, 362.3, 61.1300 & - /) - !tol - A_AQ(:,8) = (/ & - 76.500, 76.500, 76.500, 4102.00, 4102.00, 167.00, & - 167.00, 0.0, 0.0, 25.8200, 10000.00, 365.800, 0.0, & - 268.200, -127.800, 377.6, 76.500 /) - !EB - A_AQ(:,9) = (/ & - 76.500, 76.500, 76.500, & - 4102.00, 4102.00, 167.00, 167.00, 0.0, 0.0, 25.8200, & - 10000.00, 365.800, 0.0, 268.200, -127.800, 377.6, & - 76.500 /) - !OH - A_AQ(:,10) = (/ & - 986.500, 986.500, 986.500, 693.900, 693.900, & - 636.100, 636.100, 803.200, 803.200, 0.0, -274.500, & - 164.500, -404.800, -151.00, 561.600, -229.1, 986.500 /) - !phenol - A_AQ(:,11) = (/ & - 912.200, & - 912.200, 912.200, 926.300, 926.300, 1174.00, 1174.00, & - 674.300, 674.300, -442.100, 0.0, -246.800, 0.0, 0.0, & - 0.0, 324.5, 912.200 /) - !ketone - A_AQ(:,12) = (/ & - 476.400, 476.400, 476.400, 524.500, & - 524.500, 25.7700, 25.7700, -52.100, -52.100, 84.00, & - -158.800, 0.0, 128.00, -297.800, 0.0, -195.4, 476.400 /) - !aldehyde - A_AQ(:,13) = (/ & - 677.00, & - 677.00, 677.00, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 441.800, & - 0.0, -37.3600, 0.0, 0.0, 0.0, -257.3, 677.00 /) - !COOH - A_AQ(:,14) = (/ & - 663.500, 663.500, & - 663.500, 730.400, 730.400, 537.400, 537.400, 603.800, & - 603.800, 119.00, 0.0, 669.400, 0.0, 0.0, 0.0, -14.090, & - 663.500 /) -!aro NO2 - A_AQ(:,15) = (/ & - 543.00, 543.00, 543.00, 0.0, 0.0, 194.900, 194.900, & - 4448.00, 4448.00, 157.100, 0.0, 0.0, 0.0, 0.0, 0.0, & - 399.50, 543.00 /) -!water - A_AQ(:,16) = (/ & - 1318.00, 1318.00, 1318.00, 634.2, 634.2, 903.8, & - 903.8, 5695.0, 5695.0, 353.5, -601.8, 472.5, 232.7, & - -66.17, 360.7, 0.0, 1318.00 /) - !C - A_AQ(:,17) = (/ & - 0.0, 0.0, & - 0.0, 2520.00, 2520.00, -11.1200, -11.1200, -69.700, & - -69.700, 156.400, 10000.00, 26.7600, 505.700, & - 315.300, 5541.00, 300.0, 0.0 /) - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:AQ_UNIFAC_INI',1,ZHOOK_HANDLE) - END SUBROUTINE AQ_UNIFAC_INI - - - !************************************************************************* - - SUBROUTINE ZSR_INI_MPMPO() - use modd_binsolu - implicit none - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ZSR_INI_MPMPO',0,ZHOOK_HANDLE) - molalbinAQ(:,1) = (/ 555.600, 0.65000, 0.30762, 0.19305, 0.13537, 0.10038, 0.07666, 0.05927, 0.04567, 0.03431, 0.00000 /) - molalbinAQ(:,2) = (/ 555.600, 1.98908, 0.95252, 0.60644, 0.43292, 0.32835, 0.25820, 0.20764, 0.16923, 0.13830, 0.00000 /) - molalbinAQ(:,3) = (/ 555.600,63.80219,31.65389,20.93034,15.57215,12.35612,10.21267, 8.68083, 7.53173, 6.63831, 0.00000 /) - molalbinAQ(:,4) = (/ 555.600, 2.81667, 1.37478, 0.89336, 0.65205, 0.50667, 0.40951, 0.33965, 0.28692, 0.24558, 0.00000 /) - molalbinAQ(:,5) = (/ 555.600, 1.37882, 0.63792, 0.39248, 0.27079, 0.19847, 0.15067, 0.11672, 0.09124, 0.07117, 0.00000 /) - molalbinAQ(:,6) = (/ 555.600, 0.49396, 0.22574, 0.13569, 0.09018, 0.06232, 0.04319, 0.02890, 0.01740, 0.00755, 0.00000 /) - molalbinAQ(:,7) = (/ 555.600, 0.45742, 0.21651, 0.13549, 0.09439, 0.06918, 0.05184, 0.03891, 0.02848, 0.01921, 0.00000 /) - molalbinAQ(:,8) = (/ 555.600, 0.86272, 0.40057, 0.24605, 0.16855, 0.12160, 0.08988, 0.06671, 0.04860, 0.03329, 0.00000 /) - molalbinAQ(:,9) = (/ 555.600, 0.55832, 0.26300, 0.16412, 0.11418, 0.08375, 0.06308, 0.04780, 0.03574, 0.02543, 0.00000 /) - molalbinAQ(:,10)= (/ 555.600, 0.92947, 0.42461, 0.25726, 0.17392, 0.12435, 0.09149, 0.06809, 0.05035, 0.03601, 0.00000 /) - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ZSR_INI_MPMPO',1,ZHOOK_HANDLE) - END SUBROUTINE ZSR_INI_MPMPO - - !*********************************************************************************** - !************INITIALIZATION ROUTINES FOR PUN'S CODE********************************** - !*********************************************************************************** - SUBROUTINE BUNIFAC_INI() - - !Purpose: Set the values of declared in the bunifacparam module - - USE MODD_UNIFACPARAM - - IMPLICIT NONE - - !Group volume parameters - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:BUNIFAC_INI',0,ZHOOK_HANDLE) - RG_B(1:NFUNC_B)=(/0.9011, 0.6744, 0.4469, 1.1167, 0.8886, 0.5313, 0.3562, 1.2663 & - , 1.0396, 1.0000, 0.8952, 1.6724, 0.9980, 1.1450, 1.3013, 1.4199 /) - - !Group surface parameters - QG_B(1:NFUNC_B)=(/ 0.8480, 0.5400, 0.2280, 0.8670, 0.6760, 0.4000, 0.1200, 0.9680, & - 0.6600, 1.2000, 0.6800, 1.4880, 0.9480, 1.0880, 1.2440, 1.1040 /) - - !Set number of functional groups in each molecule. - !Each vector corresponds to a molecule - !fxm: it would be nice here to know what functional groups we actually talked about! - NU_B(1,:)=(/1, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 /) - NU_B(2,:)=(/1, 14, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 /) - NU_B(3,:)=(/0, 0 , 0, 0, 0, 2, 2, 0, 1, 0, 1, 1, 0, 2, 0, 0 /) - NU_B(4,:)=(/2, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /) - NU_B(5,:)=(/0, 0 , 0, 0, 0, 4, 2, 0, 0, 0, 0, 0, 0, 0, 2, 0 /) - NU_B(6,:)=(/0, 0 , 0, 0, 0, 1, 1, 2, 0, 0, 1, 0, 0, 0, 1, 1 /) - NU_B(7,:)=(/ 0, 0 , 0, 0, 0, 3, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0 /) - NU_B(8,:)=(/ 0, 0 , 0, 0, 0, 6, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1 /) - NU_B(9,:)=(/ 2, 12, 2, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1 /) - NU_B(10,:)=(/ 2, 3 , 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0 /) - - A_B(1,:)=(/ 0.0, 0.0, 0.0, -200.00, -200.00, 61.13, 61.13, 76.50, 76.50 & - , 986.5, 912.2, 476.4, 677., 215.5, 663.5, 543.0 /) - A_B(2,:)=(/0.0 , 0.0 , 0.0 , -200.00, -200.00, 61.13, 61.13 , 76.50, 76.50 & - , 986.5 , 912.2 , 476.4 , 677. , 215.5 , 663.5, 543.0 /) - A_B(3,:)=(/ 0.0 , 0.0 , 0.0 , -200.00, -200.00, 61.13, 61.13 , 76.50, 76.50 & - , 986.5 , 912.2 , 476.4 , 677. , 215.5 , 663.5, 543.0 /) - A_B(4,:)=(/ 2520. , 2520. , 2520., 0.0 , 0.0, 340.7 , 340.7 , 4102. , 4102. & - , 693.9 , 926.3 , 524.5 , 0.0 , 389.3 , 730.4, 0.0 /) - A_B(5,:)=(/ 2520. , 2520. , 2520., 0.0 , 0.0 , 340.7 , 340.7 , 4102. , 4102. & - ,693.9 , 926.3, 524.5 , 0.0 , 389.3 , 730.4, 0.0 /) - A_B(6,:)= (/ -11.12, -11.12, -11.12, -97.78, -94.78, 0.0, 0.0, 167., 167. & - ,636.1 , 1174., 25.77, 0.0 , 32.14, 537.4, 194.9 /) - A_B(7,:)=(/ -11.12, -11.12, -11.12 ,-97.78, -94.78 , 0.0 , 0.0 , 167., 167. & - ,636.1 , 1174. , 25.77, 0.0 , 32.14 , 537.4, 194.9 /) - A_B(8,:)=(/ -69.70, -69.70, -69.70, -269.7, -269.7 , -146.8, -146.8, 0.0, 0.0 & - , 803.2 , 674.3 , -52.10, 0.0, 213.1 , 603.8, 4448. /) - A_B(9,:)= (/ -69.70, -69.70, -69.70, -269.7, -269.7 , -146.8, -146.8, 0.0 , 0.0 & - , 803.2 , 674.3 , -52.10, 0.0 , 213.1 , 603.8, 4448. /) - A_B(10,:)=(/ 156.4 ,156.4 , 156.4 , 8694., 8694., 89.60 , 89.60 , 25.82, 25.82 & - , 0.0, -442.1, 84.00 , 441.8, 28.06, 119.0, 157.1 /) - A_B(11,:)=(/10000. ,10000. , 10000. , 732.2, 732.2, 270.2 , 270.2 , 10000., 10000. & - , -274.5, 0.0 , -158.8, 0.0 , 0.0 , 0.0, 0.0 /) - A_B(12,:)=(/ 26.76, 26.76, 26.76, -82.92, -82.92, 140.1, 140.1, 365.8, 365.8 & - , 164.5 , -246.8, 0.0 , -37.36, 5.202 , 669.4, 0.0 /) - A_B(13,:)=(/505.7, 505.7 , 505.7 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0, 0.0 & - , -404.8, 0.0 , 128. , 0.0 , 304.1 , 0.0 , 0.0 /) - A_B(14,:)=(/ 83.36, 83.36 , 83.36 , 76.44 , 76.44 , 52.13, 52.13, 65.69, 65.69 & - , 237.7 , 0.0 , 2038. , -7.838, 0.0 , 664.6, 0.0 /) - A_B(15,:)=(/ 315.3 , 315.3 , 315.3 , 349.2 , 349.2 , 62.32 , 62.32 , 268.2, 268.2, & - -151., 0.0 , -297.8, 0.0, -338.5, 0.0 , 0.0 /) - A_B(16,:)=(/ 5541. ,5541. , 5541. , 0.0, 0.0, 1824. ,1824. , -27.8, -127.8 & - , 561.6, 0.0, 0.0 , 0.0 , 0.0 , 0.0 , 0.0 /) - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:BUNIFAC_INI',1,ZHOOK_HANDLE) - END SUBROUTINE BUNIFAC_INI - - - !*************************************************************************************** - SUBROUTINE AUNIFAC_INI() - - !Purpose: Set the values of declared in the bunifacparam module - - USE modd_unifacparam - - IMPLICIT NONE - - !Group volume parameters - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:AUNIFAC_INI',0,ZHOOK_HANDLE) - RG_A(1:NFUNC_A)= (/ 0.9011, 0.6744, 0.4469, 1.1167, 0.8886, 0.6605 & - , 1.00, 0.92, 1.6724, 0.998, 1.3013 /) - - !Group surface parameters - QG_A(1:NFUNC_A)= (/0.8480, 0.5400, 0.2280, 0.8670, 0.6760, 0.4850 & - , 1.20, 1.40, 1.4880, 0.948, 1.2240 /) - - !Set number of functional groups in each molecule. - !Each vector corresponds to a molecule - !fxm: it would be nice here to know what functional groups we actually talked about! - NU_A(1,:)=(/0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 2 /) - NU_A(2,:)=(/1, 0, 0, 0, 2, 0, 0, 0, 0, 1, 2 /) - NU_A(3,:)=(/2, 0, 0, 0, 1, 1, 1, 0, 0, 2, 0 /) - NU_A(4,:)=(/1, 2, 1, 1, 0, 0, 1, 0, 1, 0, 1 /) - NU_A(5,:)=(/0, 6, 1, 0, 0, 0, 1, 0, 1, 1, 0 /) - NU_A(6,:)=(/0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2 /) - NU_A(7,:)=(/0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0 /) - - A_A(1,:)=(/ 0.0, 0.0, 0.0, -200.00, -200.00, -200.00, 986.500 & - , 1318.00, 476.400, 677.000, 663.500 /) - - A_A(2,:)=(/ 0.0, 0.0, 0.0, -200.00, -200.00, -200.00, 986.500 & - , 1318.00, 476.400, 677.000, 663.500 /) - - A_A(3,:)=(/ 0.0, 0.0, 0.0, -200.00, -200.00, -200.00, 986.500 & - , 1318.00, 476.400, 677.000, 663.500 /) - - A_A(4,:)=(/ 2520.00, 2520.00, 2520.00, 0.0, 0.0, 0.0, 693.900 & - , 634.200, 524.500, 0.0, 730.400 /) - - A_A(5,:)=(/ 2520.00, 2520.00, 2520.00, 0.0, 0.0, 0.0, 693.900 & - , 634.200, 524.500, 0.0, 730.400 /) - - A_A(6,:)= (/ 2520.00, 2520.00, 2520.00, 0.0, 0.0, 0.0, 693.900 & - , 634.200, 524.500, 0.0, 730.400 /) - - A_A(7,:)=(/ 156.400, 156.400, 156.400, 869.400, 869.400, 869.400, 0.0 & - , 353.500, 84.0000, 441.800, 119.000 /) - - A_A(8,:)=(/ 300.000, 300.000, 300.000, 692.700, 692.700, 692.700, -229.10 & - , 0.0, -195.40, -257.30, -14.090 /) - - A_A(9,:)= (/ 26.7600, 26.7600, 26.7600, -82.920, -82.920, -82.920, 164.500 & - , 472.500, 0.0, -37.360, 669.400 /) - - A_A(10,:)=(/ 505.700, 505.700, 505.700, 0.0, 0.0, 0.0, -404.80 & - , 232.700, 128.000, 0.0, 0.0 /) - - A_A(11,:)=(/315.300, 315.300, 315.311, 349.200, 349.200, 349.200, -151.00, & - -66.170, -297.80, 0.0, 0.0 /) - - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:AUNIFAC_INI',1,ZHOOK_HANDLE) - END SUBROUTINE AUNIFAC_INI - - !************************************************************************* - - - !**************************************************************************** - - SUBROUTINE ZSR_INI_PUN() - use modd_binsolu - implicit none - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ZSR_INI_PUN',0,ZHOOK_HANDLE) - molalbinA(:,1) = (/ 555.600, 0.49396, 0.22574, 0.13569, 0.09018, 0.06232, 0.04319, 0.02890, 0.01740, 0.00755, 0.00000 /) - molalbinA(:,2) = (/ 555.600, 0.45742, 0.21651, 0.13549, 0.09439, 0.06918, 0.05184, 0.03891, 0.02848, 0.01921, 0.00000 /) - molalbinA(:,3) = (/ 555.600, 0.86272, 0.40057, 0.24605, 0.16855, 0.12160, 0.08988, 0.06671, 0.04860, 0.03329, 0.00000 /) - molalbinA(:,4) = (/ 555.600, 0.55832, 0.26300, 0.16412, 0.11418, 0.08375, 0.06308, 0.04780, 0.03574, 0.02543, 0.00000 /) - molalbinA(:,5) = (/ 555.600, 0.92947, 0.42461, 0.25726, 0.17392, 0.12435, 0.09149, 0.06809, 0.05035, 0.03601, 0.00000 /) - molalbinA(:,6) = (/ 555.600, 0.54700, 0.25189, 0.15283, 0.10277, 0.07213, 0.05104, 0.03516, 0.02212, 0.00997, 0.00000 /) - IF (LHOOK) CALL DR_HOOK('MODE_UNIFAC:ZSR_INI_PUN',1,ZHOOK_HANDLE) - END SUBROUTINE ZSR_INI_PUN - -!************************************************************************************* - -END MODULE MODE_UNIFAC diff --git a/src/arome/chem/module/mode_zsrpun.F90 b/src/arome/chem/module/mode_zsrpun.F90 deleted file mode 100644 index fe0ca526f71db73f0753c98a417e7eb640b63aa8..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/mode_zsrpun.F90 +++ /dev/null @@ -1,135 +0,0 @@ -! ######spl -MODULE mode_zsrpun -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - - USE modd_glo - - IMPLICIT NONE - - !************************************************************************** - !Purpose: ZSR is used to calculate the amount of water associated with Type - ! A organic molecules only when zsrflag = 1; when zsrflag = 0 use - ! Newt and UNIFAC to solve for Aw = RH - ! - !Revision history: 1. Developed by Betty Pun, AER, Feb 99 under EPRI funding - ! for the prototype SOA module. - ! 2. Modified November 99 by Betty Pun, AER, under CARB - ! funding to adhere to models-3 coding standards - ! 3. Modified to use ZSR or unifac to calculate water - ! associated with organics, as specified by zsrflag - ! by Betty Pun, Nov, 99. A file with xi at given Aw - ! is included binsolu.h - ! 4. Rewritten to FORTRAN90 by Alf Grini (alf.grini@cnrm.meteo.fr) - ! - !***************************************************************************/ - -CONTAINS - - subroutine ZSRPUN( & - AERO & !I [ug/m3] guess for aerosol concentrations - ,RH & !I [0-1] relative humidity - ,DELTALWC & !O [ug/m3] liquid water content - ,MOLALBIN & !I [umol/ug_{water}] molality of binary solutions - ,NSPIN & !I [nbr] number of species to take into account - ,NK & !I [nbr] number of sub and main component for main component - ,MW & !I [g/mol] molecular weight of species - ) - - USE modd_binsolu - - IMPLICIT NONE - - !INPUT - REAL, DIMENSION(:,:), INTENT(IN) :: AERO !I [ug/m3] guess for aerosol concentrations - REAL, DIMENSION(:), INTENT(IN) :: RH !I [0-1] relative humidity - REAL, DIMENSION(:,:), INTENT(IN) :: MOLALBIN !I ![umol/ug_{water}] molality of binary solutions - INTEGER, INTENT(IN) :: NSPIN !I [nbr] number of (main) species to take into account - INTEGER, DIMENSION(:), INTENT(IN) :: NK !I [nbr] number of sub and main component for main component - REAL, DIMENSION(:), INTENT(IN) :: MW !I [g/mol] molecular weight of species - - !OUTPUT - REAL, DIMENSION(:), INTENT(OUT) :: DELTALWC ![ug/m3] Liquid water content associated with organics - - !LOCAL, AUTOMATIC ARRAYS - REAL, DIMENSION(SIZE(AERO,1)) :: MOLAL1 ![umol_{aer}/ug_{water}] molality of aerosol in binary water mix @ RH1 - REAL, DIMENSION(SIZE(AERO,1)) :: MOLAL2 ![umol_{aer}/ug_{water}] molality of aerosol in binary water mix @ RH2 - REAL, DIMENSION(SIZE(AERO,1)) :: MOLALW ![umol_{aer}/ug_{water}] molality of aerosol binary water mix @ RH - INTEGER, DIMENSION(SIZE(AERO,1)) :: IRH1 ![0-10] lower index for relative humidity - INTEGER, DIMENSION(SIZE(AERO,1)) :: IRH2 ![1-11] upper index for relative humidity - - !LOCAL, ALLOCATABLE ARRAYS - REAL, DIMENSION(:,:), ALLOCATABLE :: AEROMOLEC ![umol/m3] concentration of main components - - !Small, integers, counters - INTEGER :: COMP_IDX ![idx] index for components (ions and main comp) - INTEGER :: I,J ![idx] counter for main and sub-components - INTEGER :: IX ![idx] conter for physical points - - !Allocate memory - REAL(KIND=JPRB) :: ZHOOK_HANDLE - IF (LHOOK) CALL DR_HOOK('MODE_ZSRPUN:ZSRPUN',0,ZHOOK_HANDLE) - ALLOCATE(AEROMOLEC(SIZE(AERO,1),NSPIN)) - - !Initialize water associated with organics - deltaLWC(:)=0.d0 - AEROMOLEC(:,:)=0.d0 - - !Start code - IF (ZSRFLAG.eq.0)THEN - stop "ZSRFLAG=0 not implemented yet" - - ELSE ! zsrflag = 1 - - !Get the total moles (umole/m3) of the main components, - !i.e. sum ions into main components - COMP_IDX=1 - DO I =1,NSPIN - AEROMOLEC(:,I)=AERO(:,COMP_IDX)/MW(COMP_IDX) - COMP_IDX=COMP_IDX+1 - - !add up the number of moles of ions - DO J=2,NK(I) - AEROMOLEC(:,I)=AEROMOLEC(:,I) & - + AERO(:,COMP_IDX)/MW(COMP_IDX) - - COMP_IDX=COMP_IDX+1 - ENDDO - ENDDO - - !Get the molality of component I in mix with water - !Note that is molality is low, it means RH is high, since we then - !have much water. So for RH=100%, molality should be very low - DO I=1,NSPIN - - DO IX=1,SIZE(AERO,1) !Loop on points - - IRH1(IX)=int(RH(IX)/RHGRAD) +1 !==> transforms lower RH into a 1-11 scale, we know binsolu for 0, 1, 2, 3, ..10 - - IRH2(IX)=int(RH(IX)/RHGRAD) +2 !==> transforms upper RH into a 1-11 scale, we know binsolu for 0, 1, 2, 3, ..10 - - !Get lower part of RH spectre - MOLAL1(IX)=MOLALBIN(IRH1(IX),I) - - !Get upper part of RH spectre - MOLAL2(IX)=MOLALBIN(IRH2(IX),I) - ENDDO !!Loop on points - - !Interpolate ==> molality at current RH for current component - MOLALW(:) = MOLAL1(:) & - +(MOLAL2(:)-MOLAL1(:))/RHgrad *(RH(:) - RHgrad*DBLE(IRH1(:)-1)) - - - !Use ZSR equation to add total water to deltaLWC - deltaLWC(:) = deltaLWC(:) + AEROMOLEC(:,I)/MOLALW(:) - - ENDDO - - ENDIF - - DEALLOCATE(AEROMOLEC) - - IF (LHOOK) CALL DR_HOOK('MODE_ZSRPUN:ZSRPUN',1,ZHOOK_HANDLE) - END SUBROUTINE ZSRPUN - -END MODULE mode_zsrpun diff --git a/src/arome/chem/module/modi_aer_effic.F90 b/src/arome/chem/module/modi_aer_effic.F90 deleted file mode 100644 index 8d2c3f684863ebff77bc7325011699ed68860bb8..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_aer_effic.F90 +++ /dev/null @@ -1,33 +0,0 @@ -! ######spl - MODULE MODI_AER_EFFIC -!! ######################## -!! -! -INTERFACE -!! -SUBROUTINE AER_EFFIC(PRG,PVGG, & !aerosol radius/fall speed (m/s) - PRHODREF, & !Air density - PMUW, PMU, & !mu water/air - PDPG, PEFC, & !diffusivity, efficiency - PRRS, & ! Rain water m.r. at time - KMODE, & ! Number of aerosol modes - PTEMP, PCOR, & ! air temp, cunningham corr factor - PDENSITY_AER ) ! aerosol density -! -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(IN) :: PRG, PVGG -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF -REAL, DIMENSION(:,:), INTENT(IN) :: PDPG -REAL, DIMENSION(:), INTENT(IN) :: PMU, PMUW -REAL, DIMENSION(:,:), INTENT(INOUT) :: PEFC -REAL, DIMENSION(:), INTENT(IN) :: PRRS -REAL, DIMENSION(:), INTENT(IN) :: PTEMP -REAL, DIMENSION(:,:), INTENT(IN) :: PCOR -INTEGER, INTENT(IN) :: KMODE -REAL, INTENT(IN) :: PDENSITY_AER - - -END SUBROUTINE AER_EFFIC -!! -END INTERFACE -END MODULE MODI_AER_EFFIC diff --git a/src/arome/chem/module/modi_aer_effic_dep.F90 b/src/arome/chem/module/modi_aer_effic_dep.F90 deleted file mode 100644 index 8b4074ccfae752ad2969aac410edf0410e8f11b3..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_aer_effic_dep.F90 +++ /dev/null @@ -1,33 +0,0 @@ -! ######spl - MODULE MODI_AER_EFFIC_DEP -!! ######################## -!! -! -INTERFACE -!! -SUBROUTINE AER_EFFIC_DEP(PRG,PVGG, & !aerosol radius/fall speed (m/s) - PRHODREF, & !Air density - PMUW, PMU, & !mu water/air - PDPG, PEFC, & !diffusivity, efficiency - PRRS, & ! Rain water m.r. at time - KMODE, & ! Number of aerosol modes - PTEMP, PCOR, & ! air temp, cunningham corr factor - PDENSITY_AER ) ! aerosol density -! -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(IN) :: PRG, PVGG -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF -REAL, DIMENSION(:,:), INTENT(IN) :: PDPG -REAL, DIMENSION(:), INTENT(IN) :: PMU, PMUW -REAL, DIMENSION(:,:), INTENT(INOUT) :: PEFC -REAL, DIMENSION(:), INTENT(IN) :: PRRS -REAL, DIMENSION(:), INTENT(IN) :: PTEMP -REAL, DIMENSION(:,:), INTENT(IN) :: PCOR -INTEGER, INTENT(IN) :: KMODE -REAL, INTENT(IN) :: PDENSITY_AER - - -END SUBROUTINE AER_EFFIC_DEP -!! -END INTERFACE -END MODULE MODI_AER_EFFIC_DEP diff --git a/src/arome/chem/module/modi_aer_velgrav.F90 b/src/arome/chem/module/modi_aer_velgrav.F90 deleted file mode 100644 index 9cfd6e26d1f26c4e2ae45bf944ec4ae6c97f15d1..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_aer_velgrav.F90 +++ /dev/null @@ -1,22 +0,0 @@ -! ######spl - MODULE MODI_AER_VELGRAV -!! ######################## -!! -INTERFACE -!! -SUBROUTINE AER_VELGRAV(PRG, PABST, KMODE, PMU, & - PVGG, PDPG,PTEMP, PCOR, PDENSITY_AER) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(IN) :: PRG -REAL, DIMENSION(:), INTENT(IN) :: PTEMP -REAL, DIMENSION(:), INTENT(IN) :: PABST -INTEGER, INTENT(IN) :: KMODE -REAL, INTENT(IN) :: PDENSITY_AER -REAL, DIMENSION(:), INTENT(OUT) :: PMU -REAL, DIMENSION(:,:), INTENT(OUT) :: PVGG, PDPG -REAL, DIMENSION(:,:), INTENT(OUT) :: PCOR -END SUBROUTINE AER_VELGRAV -!! -END INTERFACE -!! -END MODULE MODI_AER_VELGRAV diff --git a/src/arome/chem/module/modi_aer_wet_dep.F90 b/src/arome/chem/module/modi_aer_wet_dep.F90 deleted file mode 100644 index e8c8a022383158fd0cb96d09ea4eb4beb6c5c54c..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_aer_wet_dep.F90 +++ /dev/null @@ -1,46 +0,0 @@ -! ######spl - MODULE MODI_AER_WET_DEP -!! ################################ -!! -! -INTERFACE -!! -SUBROUTINE AER_WET_DEP (KSPLITR, PTSTEP, PZZ, PRHODREF, & - PRCT, PRRT, & - PRCS, PRRS, PSVT, PTHT, & - PPABST, PRGAER, PEVAP3D, KMODE, & - PDENSITY_AER, PMASSMIN, PSEA, PTOWN, & - PCCT, PCRT ) -! -IMPLICIT NONE -INTEGER, INTENT(IN) :: KSPLITR ! Number of small time step - ! integration for rain sedimendation -REAL, INTENT(IN) :: PTSTEP ! Time step -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference [kg/m3] air density -! -! -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) :: PSVT ! Tracer m.r. at t -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCS ! Cloud water conc derived from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRS ! Rain water conc derifed from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PEVAP3D ! Instantaneous 3D Rain Evaporation flux (KG/KG/S) -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT !Potential temp -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! [Pa] pressure -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRGAER ! Aerosol radius (um) -INTEGER, INTENT(IN) :: KMODE ! Nb aerosols mode -REAL, INTENT(IN) :: PDENSITY_AER ! Begin Index for aerosol in cloud -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PMASSMIN ! Aerosol mass minimum value -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PSEA ! Sea mask -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PTOWN ! Town mask -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCCT ! Cloud water concentration -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCRT ! Rain water concentration -! -END SUBROUTINE AER_WET_DEP -!! -END INTERFACE -END MODULE MODI_AER_WET_DEP diff --git a/src/arome/chem/module/modi_aer_wet_dep_kmt_warm.F90 b/src/arome/chem/module/modi_aer_wet_dep_kmt_warm.F90 deleted file mode 100644 index 734817f62a9a5c5fe77a2af036779c19ae16de27..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_aer_wet_dep_kmt_warm.F90 +++ /dev/null @@ -1,46 +0,0 @@ -! ######spl - MODULE MODI_AER_WET_DEP_KMT_WARM -!! ################################ -!! -! -INTERFACE -!! -SUBROUTINE AER_WET_DEP_KMT_WARM(KSPLITR, PTSTEP, PZZ, PRHODREF, & - PRCT, PRRT, & - PRCS, PRRS, PSVT, PTHT, & - PPABST, PRGAER, PEVAP3D, KMODE, & - PDENSITY_AER, PMASSMIN, PSEA, PTOWN, & - PCCT, PCRT ) -! -IMPLICIT NONE -INTEGER, INTENT(IN) :: KSPLITR ! Number of small time step - ! integration for rain sedimendation -REAL, INTENT(IN) :: PTSTEP ! Time step -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! Height (z) -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF! Reference [kg/m3] air density -! -! -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) :: PSVT ! Tracer m.r. at t -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRCS ! Cloud water conc derived from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRRS ! Rain water conc derifed from source term -REAL, DIMENSION(:,:,:), INTENT(IN) :: PEVAP3D ! Instantaneous 3D Rain Evaporation flux (KG/KG/S) -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT !Potential temp -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! [Pa] pressure -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRGAER ! Aerosol radius (um) -INTEGER, INTENT(IN) :: KMODE ! Nb aerosols mode -REAL, INTENT(IN) :: PDENSITY_AER ! Begin Index for aerosol in cloud -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PMASSMIN ! Aerosol mass minimum value -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PSEA ! Sea mask -REAL, DIMENSION(:,:),OPTIONAL, INTENT(IN) :: PTOWN ! Town mask -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCCT ! Cloud water concentration -REAL, DIMENSION(:,:,:),OPTIONAL, INTENT(IN) :: PCRT ! Rain water concentration -! -END SUBROUTINE AER_WET_DEP_KMT_WARM -!! -END INTERFACE -END MODULE MODI_AER_WET_DEP_KMT_WARM diff --git a/src/arome/chem/module/modi_ch_aer_coag.F90 b/src/arome/chem/module/modi_ch_aer_coag.F90 deleted file mode 100644 index 43a553b67f987cc688b73e9296aebc7e7f6f4b24..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_coag.F90 +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_COAG -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_COAG(PM, PSIG0, PRG0, PN0,PDMINTRA,PDMINTER,PTGAS,PMU,& - PLAMBDA,PRHOP0) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM,PRHOP0 -REAL, DIMENSION(:), INTENT(INOUT) :: PLAMBDA, PMU -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTRA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTER -REAL, DIMENSION(:),INTENT(IN) :: PTGAS -REAL, DIMENSION(:,:), INTENT(IN) :: PSIG0, PRG0, PN0 -END SUBROUTINE CH_AER_COAG -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_COAG diff --git a/src/arome/chem/module/modi_ch_aer_driver.F90 b/src/arome/chem/module/modi_ch_aer_driver.F90 deleted file mode 100644 index de1929ff0491c99f554a082d41a58e6e0de103f3..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_driver.F90 +++ /dev/null @@ -1,28 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_DRIVER -! ######################### -! -INTERFACE -! -SUBROUTINE CH_AER_DRIVER(PM, PSIG0, PRG0, PN0, PCTOTG, PCTOTA,& - PCCTOT, PDTACT, PSEDA,& - PMU, PLAMBDA, PRHOP0, POM, PSO4RAT, & - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, PMASK,& - PTIME, PSOLORG) -IMPLICIT NONE -REAL, INTENT(IN) :: PDTACT, PTIME -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRHOP0, POM -REAL, DIMENSION(:), INTENT(INOUT) :: PLAMBDA, PMU, PSO4RAT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMASK -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -END SUBROUTINE CH_AER_DRIVER -! -END INTERFACE -! -END MODULE MODI_CH_AER_DRIVER diff --git a/src/arome/chem/module/modi_ch_aer_eqm_cormass.F90 b/src/arome/chem/module/modi_ch_aer_eqm_cormass.F90 deleted file mode 100644 index 7e844a370f852449f4d322851812d42d0dac71e5..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_eqm_cormass.F90 +++ /dev/null @@ -1,14 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_EQM_CORMASS -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_EQM_CORMASS(PSVT) -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT -END SUBROUTINE CH_AER_EQM_CORMASS -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_EQM_CORMASS diff --git a/src/arome/chem/module/modi_ch_aer_eqm_init0d.F90 b/src/arome/chem/module/modi_ch_aer_eqm_init0d.F90 deleted file mode 100644 index 023cc3595905e9c79e1324e8f6c30b4f1618e83c..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_eqm_init0d.F90 +++ /dev/null @@ -1,17 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_EQM_INIT0d -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_EQM_INIT0d(PMI, PAERO, PM3D, PRHOP3D, PSIG3D, PRG3D, & - PN3D, PCTOTA) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAERO, PMI -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM3D, PRHOP3D, PSIG3D, PRG3D, PN3D -REAL, DIMENSION(:,:,:),INTENT(INOUT) :: PCTOTA -END SUBROUTINE CH_AER_EQM_INIT0d -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_EQM_INIT0d diff --git a/src/arome/chem/module/modi_ch_aer_eqm_init_n.F90 b/src/arome/chem/module/modi_ch_aer_eqm_init_n.F90 deleted file mode 100644 index 4f7635654e7aa538964804e93049e1a354cc7447..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_eqm_init_n.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_EQM_INIT_n -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_EQM_INIT_n(PCHEM, PAERO, PM3D, PRHOP3D, PSIG3D, PRG3D, & - PN3D, PRHODREF, PCTOTA) -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PCHEM, PAERO -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PM3D, PRHOP3D, PSIG3D, PRG3D, PN3D -REAL, DIMENSION(:,:,:,:,:),INTENT(INOUT) :: PCTOTA -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -END SUBROUTINE CH_AER_EQM_INIT_n -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_EQM_INIT_n diff --git a/src/arome/chem/module/modi_ch_aer_eqsam.F90 b/src/arome/chem/module/modi_ch_aer_eqsam.F90 deleted file mode 100644 index 2df646dc62971c1ec94f4f395576c1367ab9a500..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_eqsam.F90 +++ /dev/null @@ -1,15 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_EQSAM -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_EQSAM(PAER,PRH, PPRESSURE, PTEMP) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PPRESSURE, PTEMP -END SUBROUTINE CH_AER_EQSAM -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_EQSAM diff --git a/src/arome/chem/module/modi_ch_aer_growth.F90 b/src/arome/chem/module/modi_ch_aer_growth.F90 deleted file mode 100644 index b97aa834fc0ebc2701237eb20d72c857403684aa..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_growth.F90 +++ /dev/null @@ -1,21 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_GROWTH -!! ######################### -!! -INTERFACE -!! -SUBROUTINE CH_AER_GROWTH(PM,PSIG0, PRG0, PDMCOND,PDENAIR,PGASMW,PPGAS,PTGAS,PRH, POM,& - PSO4RAT, PDT) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMCOND, POM -REAL, DIMENSION(:), INTENT(IN) :: PDENAIR,PPGAS,PTGAS -REAL, DIMENSION(:), INTENT(INOUT) :: PRH, PSO4RAT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0 -REAL, INTENT(INOUT) :: PGASMW -REAL, INTENT(IN) :: PDT -END SUBROUTINE CH_AER_GROWTH -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_GROWTH diff --git a/src/arome/chem/module/modi_ch_aer_init.F90 b/src/arome/chem/module/modi_ch_aer_init.F90 deleted file mode 100644 index 5ad642abea6088c33b3ac072e3799ed68fcaee6c..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_init.F90 +++ /dev/null @@ -1,15 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_INIT -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_INIT(PCHEM, PAERO, PRHODREF) -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PCHEM, PAERO -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -END SUBROUTINE CH_AER_INIT -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_INIT diff --git a/src/arome/chem/module/modi_ch_aer_init_soa.F90 b/src/arome/chem/module/modi_ch_aer_init_soa.F90 deleted file mode 100644 index e34dbc812787af21fe93cb61a9e3fbd83f3d624e..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_init_soa.F90 +++ /dev/null @@ -1,14 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_INIT_SOA -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_INIT_SOA(KOUT,KVERB) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KOUT, KVERB ! stdout output, verbosity level -END SUBROUTINE CH_AER_INIT_SOA -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_INIT_SOA diff --git a/src/arome/chem/module/modi_ch_aer_intermin.F90 b/src/arome/chem/module/modi_ch_aer_intermin.F90 deleted file mode 100644 index 8ce51f904bafb0b17714a2eaadbc4f07b8af1e3e..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_intermin.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl -MODULE MODI_CH_AER_INTERMIN -!! ########################### -!! -INTERFACE -!! - SUBROUTINE CH_AER_INTERMIN(v, w, x, y, z,zout,KVECNPT) - USE MODD_CH_AEROSOL - IMPLICIT NONE - INTEGER :: KVECNPT - REAL, DIMENSION(:) :: v - DOUBLE PRECISION, DIMENSION(:) :: w, x, y, z - DOUBLE PRECISION, DIMENSION(:,:) :: zout - END SUBROUTINE CH_AER_INTERMIN -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_INTERMIN diff --git a/src/arome/chem/module/modi_ch_aer_mineral.F90 b/src/arome/chem/module/modi_ch_aer_mineral.F90 deleted file mode 100644 index 7cb204b753bc381c58a988cdc69788f64313dd95..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_mineral.F90 +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_MINERAL -!! ####################### -!! -INTERFACE -! -SUBROUTINE CH_AER_MINERAL(PCTOTG, PCTOTA, PRV, PDENAIR, PPRESSURE, PTEMP, PRC, POM,& - PCCTOT,PSIG0, PRG0, PDT) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG, POM -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0 -REAL, INTENT(IN) :: PDT -! -END SUBROUTINE CH_AER_MINERAL -! -END INTERFACE -! -END MODULE MODI_CH_AER_MINERAL diff --git a/src/arome/chem/module/modi_ch_aer_mod_init.F90 b/src/arome/chem/module/modi_ch_aer_mod_init.F90 deleted file mode 100644 index a1798728b06cd62a3a628fc8a7bffb6bf63d5fb6..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_mod_init.F90 +++ /dev/null @@ -1,10 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_MOD_INIT -!! ############################ -!! -INTERFACE -SUBROUTINE CH_AER_MOD_INIT -END SUBROUTINE CH_AER_MOD_INIT -END INTERFACE -!! -END MODULE MODI_CH_AER_MOD_INIT diff --git a/src/arome/chem/module/modi_ch_aer_mpmpo.F90 b/src/arome/chem/module/modi_ch_aer_mpmpo.F90 deleted file mode 100644 index 4e0312e5a62c7af490a31e868cb04ecba6903172..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_mpmpo.F90 +++ /dev/null @@ -1,35 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_MPMPO -!! ####################### -!! -INTERFACE -!! -SUBROUTINE CH_AER_MPMPO( & - PTOT & !I [ug/m3] aerosol phase concentration - ,PTOTG & !I/O [ug/m3] gas phase concentrations - ,PTEMP & !I [K] temperature - ,PRH & !I [0-1] relative humidty - ,PLWC & !I [ug/m3] liquid water content - ,PPROTON & !I [mole/g_{water}] - ,PTOTNEW & !O [ug/m3] new aerosol concentration - ,PTOTGNEW & !O [ug/m3] new gas phase concentration - ,PSOLORG & !IO [%] Solubility of SOA (fraction) - ) - -IMPLICIT NONE - -REAL, DIMENSION(:,:), INTENT(IN) :: PTOT ![ug/m3] aerosol conc -REAL, DIMENSION(:,:), INTENT(IN) :: PTOTG ![ug/m3] gas concentration -REAL, DIMENSION(:), INTENT(IN) :: PTEMP, PRH ![K/-] temp and RH -REAL, DIMENSION(:), INTENT(IN) :: PLWC ![ug/m3] liquid water -REAL, DIMENSION(:), INTENT(IN) :: PPROTON ![mole/g_{water]] H+ -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTOTNEW ![ug/m3] new aerosol conc -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTOTGNEW ![ug/m3] new gas conc -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG ! [%] Solubility of SOA (fraction) - - -END SUBROUTINE CH_AER_MPMPO -! -END INTERFACE -! -END MODULE MODI_CH_AER_MPMPO diff --git a/src/arome/chem/module/modi_ch_aer_nucl.F90 b/src/arome/chem/module/modi_ch_aer_nucl.F90 deleted file mode 100644 index 67cb27975a31a759774cddc07f5b3d10e1b0f2a5..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_nucl.F90 +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl -MODULE MODI_CH_AER_NUCL -!! ################################ -!! -INTERFACE - !! - SUBROUTINE CH_AER_NUCL(ZRH,ZT,ZCONC,ZJ,ZAL,KVECNPT) - IMPLICIT NONE - !! -REAL, DIMENSION(:), INTENT(INOUT) :: ZJ,ZAL -REAL, DIMENSION(:), INTENT(IN) :: ZRH,ZT -REAL, DIMENSION(:), INTENT(INOUT) :: ZCONC -INTEGER, INTENT(IN) :: KVECNPT - !! - !! - END SUBROUTINE CH_AER_NUCL - !! -END INTERFACE -!! -END MODULE MODI_CH_AER_NUCL diff --git a/src/arome/chem/module/modi_ch_aer_organic.F90 b/src/arome/chem/module/modi_ch_aer_organic.F90 deleted file mode 100644 index 9815db558ef1fd9e6d6347f37c25db7f9f9665a2..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_organic.F90 +++ /dev/null @@ -1,24 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_ORGANIC -!! ####################### -!! -INTERFACE -!! -SUBROUTINE CH_AER_ORGANIC(PCTOTG, PCTOTA, PRV, PDENAIR, PPRESSURE, PTEMP, PRC, POM,& - PCCTOT,PSIG0, PRG0, PDT, PSOLORG) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG, POM -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -REAL, DIMENSION(:,:), INTENT(IN) :: PSIG0, PRG0 -REAL, INTENT(IN) :: PDT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG - - - - -END SUBROUTINE CH_AER_ORGANIC -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_ORGANIC diff --git a/src/arome/chem/module/modi_ch_aer_pun.F90 b/src/arome/chem/module/modi_ch_aer_pun.F90 deleted file mode 100644 index 62bae98ccf7d5e0d8758ec26302ca74393c2c059..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_pun.F90 +++ /dev/null @@ -1,33 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_PUN -!! ####################### -!! -INTERFACE -!! -SUBROUTINE CH_AER_PUN( & - PTOT & !I [ug/m3] aerosol phase concentrations - ,PTOTG & !I [ug/m3] gas phase concentrations - ,PTEMP & !I [K] Temperature - ,PRH & !I [0-1] relative humidity - ,PLWC & !I [ug/m3] liquid water content - ,PPROTON & !I [mole/g_{water}] H+ concentration - ,PTOTNEW & !O [ug/m3] new aerosol concentration - ,PTOTGNEW & !O [ug/m3] new aerosol concentration - ) - -IMPLICIT NONE - -REAL, DIMENSION(:,:), INTENT(IN) :: PTOT !I [ug/m3] aerosol phase concentrations -REAL, DIMENSION(:,:), INTENT(IN) :: PTOTG !I [ug/m3] gas phase concentrations -REAL, DIMENSION(:), INTENT(IN) :: PTEMP !I [K] temperature -REAL, DIMENSION(:), INTENT(IN) :: PRH !I [0-1] relative humidity -REAL, DIMENSION(:), INTENT(INOUT) :: PLWC !I [ug/m3] liquid water content -REAL, DIMENSION(:), INTENT(INOUT) :: PPROTON !I [mole/g_{water}] H+ concentrations -REAL, DIMENSION(:,:), INTENT(OUT) :: PTOTNEW !O [ug/m3] aerosol phase concentrations -REAL, DIMENSION(:,:), INTENT(OUT) :: PTOTGNEW !O [ug/m3] gas phase concentrations - -END SUBROUTINE CH_AER_PUN -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_PUN diff --git a/src/arome/chem/module/modi_ch_aer_reallfi_n.F90 b/src/arome/chem/module/modi_ch_aer_reallfi_n.F90 deleted file mode 100644 index 0d6feb713f682928ff71256f0e2cdb051cd0fe3f..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_reallfi_n.F90 +++ /dev/null @@ -1,16 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_REALLFI_n -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_REALLFI_n(PSV, PCO, PRHODREF) -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCO -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -END SUBROUTINE CH_AER_REALLFI_n -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_REALLFI_n diff --git a/src/arome/chem/module/modi_ch_aer_sedim_n.F90 b/src/arome/chem/module/modi_ch_aer_sedim_n.F90 deleted file mode 100644 index 9f2875bb4c77a6c251abaa7a3fa45eb7cb19b6f9..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_sedim_n.F90 +++ /dev/null @@ -1,24 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_SEDIM_n -!! ############################## -!! -INTERFACE -! -SUBROUTINE CH_AER_SEDIM_n(PDTMONITOR,PSVT,PTHT,& - PRHODREF,PPABST, PVDEPAERO, PZZ, PSEDA) - -IMPLICIT NONE - -REAL, INTENT(IN) :: PDTMONITOR -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSVT -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT,PRHODREF, PZZ -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PVDEPAERO -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSEDA - - -END SUBROUTINE CH_AER_SEDIM_n -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_SEDIM_n diff --git a/src/arome/chem/module/modi_ch_aer_solv.F90 b/src/arome/chem/module/modi_ch_aer_solv.F90 deleted file mode 100644 index b7934b95467ec3811c4ba044e1ff43fbd5fb4e5b..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_solv.F90 +++ /dev/null @@ -1,29 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_SOLV -!! ####################### -!! -INTERFACE -!! -SUBROUTINE CH_AER_SOLV(PM, PSIG0, PRG0, PN0,PCTOTG, PCTOTA, PCCTOT, & - PDMINTRA,PDMINTER,PDMCOND, PSEDA,PDT,& - POM, PRV, PDENAIR, PPRESSURE, PTEMP, PRC, PTIME,PSOLORG) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: POM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTRA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMINTER -REAL, DIMENSION(:,:), INTENT(INOUT) :: PDMCOND -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG -REAL, INTENT(IN) :: PDT, PTIME -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC - - -END SUBROUTINE CH_AER_SOLV -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_SOLV diff --git a/src/arome/chem/module/modi_ch_aer_surf.F90 b/src/arome/chem/module/modi_ch_aer_surf.F90 deleted file mode 100644 index 14157d948cca84292d996a50195ab43f27189e34..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_surf.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_SURF -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_SURF(PM, PRG, PSIG, PSURF) - -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(IN) :: PM ! moments -REAL, DIMENSION(:,:), INTENT(IN) :: PRG ! radius -REAL, DIMENSION(:,:), INTENT(IN) :: PSIG ! dispersion -REAL, DIMENSION(:,:), INTENT(OUT) :: PSURF ! aerosol surface -END SUBROUTINE CH_AER_SURF -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_SURF diff --git a/src/arome/chem/module/modi_ch_aer_thermo.F90 b/src/arome/chem/module/modi_ch_aer_thermo.F90 deleted file mode 100644 index 0860de632ffeb4fac92244ac38a1590516dff0bf..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_thermo.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl -MODULE MODI_CH_AER_THERMO -!! ################### -!! -INTERFACE -!! -SUBROUTINE CH_AER_THERMO(PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) -! -! -IMPLICIT NONE -! -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC -! -END SUBROUTINE CH_AER_THERMO -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_THERMO diff --git a/src/arome/chem/module/modi_ch_aer_trans.F90 b/src/arome/chem/module/modi_ch_aer_trans.F90 deleted file mode 100644 index df08626fd4dc04246eadaae5a3bfcd56e74b4d55..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_trans.F90 +++ /dev/null @@ -1,28 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_TRANS -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_TRANS(KDIR, PM, PSIG0, PRG0, PN0, PRHOP0, PAERO,& - PCONC, PCTOTG, PCTOTA, PCCTOT,PFRAC,PMI,PMASK,GSCHEME) - - -IMPLICIT NONE -INTEGER, INTENT(IN) :: KDIR ! KDIR = 0 gas -> aero - ! KDIR = 1 aero -> gas -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM ! moments -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0, PRHOP0, PCTOTG -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCONC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAERO -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMI -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMASK -CHARACTER(LEN=10), INTENT(IN) :: GSCHEME - -END SUBROUTINE CH_AER_TRANS -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_TRANS diff --git a/src/arome/chem/module/modi_ch_aer_velgrav_n.F90 b/src/arome/chem/module/modi_ch_aer_velgrav_n.F90 deleted file mode 100644 index 4c60fa064f6ed74b7d96883770a768fecca910ea..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aer_velgrav_n.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_CH_AER_VELGRAV_n -!! ############################## -!! -INTERFACE -!! -SUBROUTINE CH_AER_VELGRAV_n(PSIG, PRG, PTHT, PABST,PRHODREF, PRHOP, PMU, PVGK,PDPK, PVGG) -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGK,PDPK -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PMU -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGG -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRHOP -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG, PRG -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST, PRHODREF -END SUBROUTINE CH_AER_VELGRAV_n -!! -END INTERFACE -!! -END MODULE MODI_CH_AER_VELGRAV_n diff --git a/src/arome/chem/module/modi_ch_allocate_taccs.F90 b/src/arome/chem/module/modi_ch_allocate_taccs.F90 deleted file mode 100644 index 0fe91b4314accc9f3116b0dd12e8000c1c6158b6..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_allocate_taccs.F90 +++ /dev/null @@ -1,14 +0,0 @@ -! ######spl - MODULE MODI_CH_ALLOCATE_TACCS -! ########################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_ALLOCATE_TACCS(KMI,KVECNPT) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KMI ! model index -INTEGER, INTENT(IN) :: KVECNPT -END SUBROUTINE CH_ALLOCATE_TACCS -END INTERFACE -END MODULE MODI_CH_ALLOCATE_TACCS diff --git a/src/arome/chem/module/modi_ch_aqua.F90 b/src/arome/chem/module/modi_ch_aqua.F90 deleted file mode 100644 index b88ccdf6e1d8b2a50ae0c448bd3876ab3e8512f4..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_aqua.F90 +++ /dev/null @@ -1,27 +0,0 @@ -! ######spl - MODULE MODI_CH_AQUA -!! ################### -!! -INTERFACE -!! -!! ########################################################### - SUBROUTINE CH_AQUA (TEMP, P, LWC, & - H2O2, O3, SO2, CO2, HNO3, H2SO4, NH3, & - PFRAC, PPH, POX ) -!! ########################################################### -IMPLICIT NONE -REAL, INTENT(IN) :: TEMP ! air temperature -REAL, INTENT(IN) :: P ! pressure (in atm) -REAL, INTENT(IN) :: LWC ! cloud liquid water mixing ratio (kg/kg) -REAL, INTENT(IN) :: H2O2, O3, SO2, CO2, HNO3, H2SO4, NH3 - ! total concentration of these chemical species -REAL, INTENT(INOUT) :: PPH ! pH of the droplets -REAL, INTENT(OUT), DIMENSION(3,4) :: PFRAC ! fraction of each dissolved - ! species in the four states -REAL, INTENT(OUT), DIMENSION(2) :: POX ! SO2 oxidation by O3 - ! and H2O2 -END SUBROUTINE CH_AQUA -!! -END INTERFACE -!! -END MODULE MODI_CH_AQUA diff --git a/src/arome/chem/module/modi_ch_ares.F90 b/src/arome/chem/module/modi_ch_ares.F90 deleted file mode 100644 index c279e847dfd869e4221937400ec7635e8e20e7fb..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_ares.F90 +++ /dev/null @@ -1,16 +0,0 @@ -! ######spl - MODULE MODI_CH_ARES -!! ##################### -!! -INTERFACE -!! -SUBROUTINE CH_ARES (PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC - -END SUBROUTINE CH_ARES -!! -END INTERFACE -!! -END MODULE MODI_CH_ARES diff --git a/src/arome/chem/module/modi_ch_boundaries.F90 b/src/arome/chem/module/modi_ch_boundaries.F90 deleted file mode 100644 index 8e366d66ec3ea113e4be235cc06806c021e82d1d..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_boundaries.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl -MODULE MODI_CH_BOUNDARIES -!######################## -! -INTERFACE -! - SUBROUTINE CH_BOUNDARIES (HLBCX,HLBCY, & - PSVBM,PUT,PVT,PSVBT ) -! -CHARACTER(LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX,HLBCY -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PSVBT,PSVBM -REAL, DIMENSION(:,:,:), INTENT(IN) :: PUT,PVT -! -END SUBROUTINE CH_BOUNDARIES -! -END INTERFACE -! -END MODULE MODI_CH_BOUNDARIES diff --git a/src/arome/chem/module/modi_ch_convect_linox.F90 b/src/arome/chem/module/modi_ch_convect_linox.F90 deleted file mode 100644 index e7314cda55eceb43f26663617a53db29281add16..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_convect_linox.F90 +++ /dev/null @@ -1,52 +0,0 @@ -! ######spl - MODULE MODI_CH_CONVECT_LINOX -! ############################ -! -INTERFACE -! - SUBROUTINE CH_CONVECT_LINOX( KLON, KLEV, PCH1, PCH1C, & - KDPL, KPBL, KLCL, KCTL, KLFS, KDBL, & - PUMF, PUER, PUDR, PDMF, PDER, PDDR, & - PTIMEC, PDXDY, PMIXF, PLMASS, PWSUB,& - KFTSTEPS, PUTT, PRHODREF, & - OUSECHEM, PZZ, PIC_RATE, PCG_RATE ) -! -INTEGER, INTENT(IN) :: KLON ! horizontal dimension -INTEGER, INTENT(IN) :: KLEV ! vertical dimension -! -REAL,DIMENSION(KLON,KLEV),INTENT(IN) :: PCH1 ! grid scale tracer concentr. -REAL,DIMENSION(KLON,KLEV),INTENT(OUT) :: PCH1C! conv adjusted tracer concntr. -! -INTEGER, DIMENSION(KLON), INTENT(IN) :: KDPL ! index for departure level -INTEGER, DIMENSION(KLON), INTENT(IN) :: KPBL ! index for top of source layer -INTEGER, DIMENSION(KLON), INTENT(IN) :: KLCL ! index lifting condens. level -INTEGER, DIMENSION(KLON), INTENT(IN) :: KCTL ! index for cloud top level -INTEGER, DIMENSION(KLON), INTENT(IN) :: KLFS ! index for level of free sink -INTEGER, DIMENSION(KLON), INTENT(IN) :: KDBL ! index for downdraft base level -! -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUMF ! updraft mass flux (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUER ! updraft entrainment (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUDR ! updraft detrainment (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PDMF ! downdraft mass flux (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PDER ! downdraft entrainment (kg/s) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PDDR ! downdraft detrainment (kg/s) -! -REAL, DIMENSION(KLON), INTENT(IN) :: PTIMEC! convection time step -REAL, DIMENSION(KLON), INTENT(IN) :: PDXDY ! grid area (m^2) -REAL, DIMENSION(KLON), INTENT(IN) :: PMIXF ! mixed fraction at LFS -REAL, DIMENSION(KLON,KLEV),INTENT(IN) :: PLMASS! mass of model layer (kg) -REAL, DIMENSION(KLON,KLEV),INTENT(IN) :: PWSUB ! envir. compensating subsidence(Pa/s) -INTEGER, INTENT(IN) :: KFTSTEPS ! maximum fractional time steps -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PUTT ! updraft temperature (K) -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PRHODREF -! -LOGICAL, INTENT(IN) :: OUSECHEM ! to indicate if chemistry is used -REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PZZ ! height of model layer (m) -REAL, DIMENSION(KLON), INTENT(INOUT) :: PIC_RATE ! IC lightning frequency -REAL, DIMENSION(KLON), INTENT(INOUT) :: PCG_RATE ! CG lightning frequency -! -END SUBROUTINE CH_CONVECT_LINOX -! -END INTERFACE -! -END MODULE MODI_CH_CONVECT_LINOX diff --git a/src/arome/chem/module/modi_ch_cranck.F90 b/src/arome/chem/module/modi_ch_cranck.F90 deleted file mode 100644 index 3b3658a4c4030652fec471090323871553eb718a..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_cranck.F90 +++ /dev/null @@ -1,23 +0,0 @@ -! ######spl - MODULE MODI_CH_CRANCK -!! ##################### -!! -! -INTERFACE -!! -SUBROUTINE CH_CRANCK(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PALPHA) -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number -REAL, INTENT(IN) :: PALPHA -END SUBROUTINE CH_CRANCK -!! -END INTERFACE -!! -END MODULE MODI_CH_CRANCK diff --git a/src/arome/chem/module/modi_ch_deallocate_taccs.F90 b/src/arome/chem/module/modi_ch_deallocate_taccs.F90 deleted file mode 100644 index 2fb25d20ad271dfa11ed3d4e0d4028946cebfcc8..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_deallocate_taccs.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_CH_DEALLOCATE_TACCS -! ########################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_DEALLOCATE_TACCS(KMI) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KMI ! model index -END SUBROUTINE CH_DEALLOCATE_TACCS -END INTERFACE -END MODULE MODI_CH_DEALLOCATE_TACCS diff --git a/src/arome/chem/module/modi_ch_diagnostics.F90 b/src/arome/chem/module/modi_ch_diagnostics.F90 deleted file mode 100644 index fb7caae71d30f6ac3edd3a87c370f50e6a6442e6..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_diagnostics.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_CH_DIAGNOSTICS -!! ########################## -! -INTERFACE -SUBROUTINE CH_DIAGNOSTICS(PCONC, KMI, KVECNPT) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KVECNPT -REAL, DIMENSION(:,:), INTENT(IN) :: PCONC ! the chem species -INTEGER, INTENT(IN) :: KMI -END SUBROUTINE CH_DIAGNOSTICS -END INTERFACE -END MODULE MODI_CH_DIAGNOSTICS diff --git a/src/arome/chem/module/modi_ch_emission_flux0d.F90 b/src/arome/chem/module/modi_ch_emission_flux0d.F90 deleted file mode 100644 index a7d8a87a2496e7d36dd1e91d9c5c86d7b95dc54f..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_emission_flux0d.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl - MODULE MODI_CH_EMISSION_FLUX0D -!! ############################ -!! -INTERFACE -SUBROUTINE CH_EMISSION_FLUX0D(PTIME, PFLUX, HINPUTFILE, KLUOUT, KVERB) -USE MODD_CH_M9, ONLY: NEQ -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME ! time of simulation in sec UTC - ! (counting from midnight) -REAL, DIMENSION(NEQ), INTENT(OUT) :: PFLUX ! emission flux in ppp*m/s -CHARACTER*(*), INTENT(IN) :: HINPUTFILE ! name of the input file -INTEGER, INTENT(IN) :: KLUOUT ! output listing channel -INTEGER, INTENT(IN) :: KVERB ! verbosity level -END SUBROUTINE CH_EMISSION_FLUX0D -END INTERFACE -!! -END MODULE MODI_CH_EMISSION_FLUX0D diff --git a/src/arome/chem/module/modi_ch_exqssa.F90 b/src/arome/chem/module/modi_ch_exqssa.F90 deleted file mode 100644 index e868fa9b40cbb68811cd6b3ad7593001aa747bc4..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_exqssa.F90 +++ /dev/null @@ -1,26 +0,0 @@ -! ######spl - MODULE MODI_CH_EXQSSA -!! ##################### -!! -! -INTERFACE -!! -SUBROUTINE CH_EXQSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PSLOW, PFAST, PDTMAX) -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC - ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC - ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number - ! reac. rates, auxiliary variables -REAL, INTENT(IN) :: PSLOW, PFAST, PDTMAX -END SUBROUTINE CH_EXQSSA -!! -END INTERFACE -!! -END MODULE MODI_CH_EXQSSA diff --git a/src/arome/chem/module/modi_ch_fcn.F90 b/src/arome/chem/module/modi_ch_fcn.F90 deleted file mode 100644 index 94b62fa785bc112fd5b687336a8fff662416a728..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_fcn.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_CH_FCN -!! ################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_FCN(PTIME,PCONC,PDCDT,KMI,KVECNPT,KEQ) -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PDCDT -INTEGER, INTENT(IN) :: KMI -!! -END SUBROUTINE CH_FCN -END INTERFACE -END MODULE MODI_CH_FCN diff --git a/src/arome/chem/module/modi_ch_field_value_n.F90 b/src/arome/chem/module/modi_ch_field_value_n.F90 deleted file mode 100644 index 725ba6980925388d8627f57d4a9abb76721c90e6..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_field_value_n.F90 +++ /dev/null @@ -1,22 +0,0 @@ -! ######spl - MODULE MODI_CH_FIELD_VALUE_n -!! ############################ -!! -INTERFACE -!! -FUNCTION CH_FIELD_VALUE_n(PZ, HGRIDTYPE, HNAME, & - HUNIT, KLUOUT, KVERB) -IMPLICIT NONE -REAL :: CH_FIELD_VALUE_n! the function name -REAL, INTENT(IN) :: PZ ! x-y-z coo. to initialize -CHARACTER(LEN=*), INTENT(IN) :: HGRIDTYPE ! grid type passed as x-y-z coo. -CHARACTER(LEN=*), INTENT(IN) :: HNAME ! name of species to initialize -CHARACTER(LEN=*), INTENT(OUT):: HUNIT ! unit ("CON" or "MIX") -INTEGER, INTENT(IN) :: KLUOUT ! output listing channel -INTEGER, INTENT(IN) :: KVERB ! verbosity level -!! -END FUNCTION CH_FIELD_VALUE_n -!! -END INTERFACE -!! -END MODULE MODI_CH_FIELD_VALUE_n diff --git a/src/arome/chem/module/modi_ch_gauss.F90 b/src/arome/chem/module/modi_ch_gauss.F90 deleted file mode 100644 index 86a1e899479b4f3abf1d0aedcda528edb3f4dbbb..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_gauss.F90 +++ /dev/null @@ -1,17 +0,0 @@ -! ######spl - MODULE MODI_CH_GAUSS -!! ############################# - -INTERFACE - -SUBROUTINE CH_GAUSS(PIN,POUT,KDIM,KFAIL) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KDIM ! dimension of the matrix -INTEGER, INTENT(INOUT) :: KFAIL ! error flag -REAL, DIMENSION(KDIM,KDIM), INTENT(IN) :: PIN ! matrix to be inverted -REAL, DIMENSION(KDIM,KDIM), INTENT(OUT) :: POUT ! inverse matrix -END SUBROUTINE CH_GAUSS - -END INTERFACE - -END MODULE MODI_CH_GAUSS diff --git a/src/arome/chem/module/modi_ch_get_cnames.F90 b/src/arome/chem/module/modi_ch_get_cnames.F90 deleted file mode 100644 index 57434daf497a5b32ad6b0bc6b9c25ef61e33f67f..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_get_cnames.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_CH_GET_CNAMES -!! ########################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_GET_CNAMES(HNAMES) -IMPLICIT NONE -CHARACTER(LEN=32), DIMENSION(:), INTENT(OUT) :: HNAMES -END SUBROUTINE CH_GET_CNAMES -END INTERFACE -END MODULE MODI_CH_GET_CNAMES diff --git a/src/arome/chem/module/modi_ch_get_rates.F90 b/src/arome/chem/module/modi_ch_get_rates.F90 deleted file mode 100644 index 32543c35c34eac09774483bfb8812ef95b055311..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_get_rates.F90 +++ /dev/null @@ -1,16 +0,0 @@ -! ######spl - MODULE MODI_CH_GET_RATES -!! ######################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_GET_RATES(PRATE,KMI,KVECNPT,KREAC) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KREAC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KREAC) :: PRATE -INTEGER, INTENT(IN) :: KMI -END SUBROUTINE CH_GET_RATES -END INTERFACE -END MODULE MODI_CH_GET_RATES diff --git a/src/arome/chem/module/modi_ch_ini_orilam.F90 b/src/arome/chem/module/modi_ch_ini_orilam.F90 deleted file mode 100644 index b0199b611e7ca470d260734a2f9190c801e9740d..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_ini_orilam.F90 +++ /dev/null @@ -1,27 +0,0 @@ -! ######spl - MODULE MODI_CH_INI_ORILAM -!! ########################### -!! -INTERFACE - SUBROUTINE CH_INI_ORILAM(PM, PSIG0, PRG0, PN0,PCTOTG, PCTOTA, PCCTOT, & - PSEDA, POM, PRHOP0, PAERO,PCHEM,PRV, PDENAIR,& - PPRESSURE, PTEMP, PRC, PFRAC, PMI, GSCHEME) -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM, POM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRHOP0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCHEM, PAERO -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMI -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -CHARACTER(LEN=10), INTENT(IN) :: GSCHEME - - - -END SUBROUTINE CH_INI_ORILAM -END INTERFACE -!! -END MODULE MODI_CH_INI_ORILAM diff --git a/src/arome/chem/module/modi_ch_init_ccs.F90 b/src/arome/chem/module/modi_ch_init_ccs.F90 deleted file mode 100644 index f6ad91e52f19580373d98530e0ca918bd9c07651..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_init_ccs.F90 +++ /dev/null @@ -1,14 +0,0 @@ -! ######spl - MODULE MODI_CH_INIT_CCS -! ####################### -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_INIT_CCS(KEQ,KOUT,KVERB) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KEQ ! number of scalar variables -INTEGER, INTENT(IN) :: KOUT, KVERB ! stdout output, verbosity level -END SUBROUTINE CH_INIT_CCS -END INTERFACE -END MODULE MODI_CH_INIT_CCS diff --git a/src/arome/chem/module/modi_ch_init_const_n.F90 b/src/arome/chem/module/modi_ch_init_const_n.F90 deleted file mode 100644 index 83e46413a265d3d9bef9144d20bc76cf925b8f70..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_init_const_n.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_CH_INIT_CONST_n -!! ################################ -!! -INTERFACE -!! -SUBROUTINE CH_INIT_CONST_n (KLUOUT, KVERB) - -IMPLICIT NONE -!! - -INTEGER, INTENT(IN) :: KLUOUT ! output listing channel -INTEGER, INTENT(IN) :: KVERB ! verbosity level -!! -END SUBROUTINE CH_INIT_CONST_n -!! -END INTERFACE -!! -END MODULE MODI_CH_INIT_CONST_n diff --git a/src/arome/chem/module/modi_ch_init_jvalues.F90 b/src/arome/chem/module/modi_ch_init_jvalues.F90 deleted file mode 100644 index def1ade2ad305ef8108eb57e4f31b94fc89a6ab4..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_init_jvalues.F90 +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - MODULE MODI_CH_INIT_JVALUES -! ############################ -! -INTERFACE -! - SUBROUTINE CH_INIT_JVALUES(KDAY, KMONTH, KYEAR, KLUOUT) -! -INTEGER, INTENT(IN) :: KLUOUT -INTEGER, INTENT(IN) :: KYEAR ! Current Year -INTEGER, INTENT(IN) :: KMONTH ! Current Month -INTEGER, INTENT(IN) :: KDAY ! Current Day - -! -! -END SUBROUTINE CH_INIT_JVALUES -! -END INTERFACE -! -END MODULE MODI_CH_INIT_JVALUES diff --git a/src/arome/chem/module/modi_ch_init_meteo.F90 b/src/arome/chem/module/modi_ch_init_meteo.F90 deleted file mode 100644 index 73e751b2cc0acdb3de1fbd9ffe03636ebfe342e9..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_init_meteo.F90 +++ /dev/null @@ -1,12 +0,0 @@ -! ######spl - MODULE MODI_CH_INIT_METEO -!! ######################### -!! -! -INTERFACE -SUBROUTINE CH_INIT_METEO(TPM) -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -TYPE(METEOTRANSTYPE), INTENT(OUT) :: TPM ! the meteo variables -END SUBROUTINE CH_INIT_METEO -END INTERFACE -END MODULE MODI_CH_INIT_METEO diff --git a/src/arome/chem/module/modi_ch_init_model0d.F90 b/src/arome/chem/module/modi_ch_init_model0d.F90 deleted file mode 100644 index 256ae09812d1b53ab567a57a24d24020b7cc30a0..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_init_model0d.F90 +++ /dev/null @@ -1,11 +0,0 @@ -! ######spl - MODULE MODI_CH_INIT_MODEL0D -!! ########################### -!! -INTERFACE -SUBROUTINE CH_INIT_MODEL0D(HNAMELISTFILE) -IMPLICIT NONE -CHARACTER*(*), INTENT(IN) :: HNAMELISTFILE -END SUBROUTINE CH_INIT_MODEL0D -END INTERFACE -END MODULE MODI_CH_INIT_MODEL0D diff --git a/src/arome/chem/module/modi_ch_init_output.F90 b/src/arome/chem/module/modi_ch_init_output.F90 deleted file mode 100644 index 1076c69fb4b19cc4aebcd253bc08ab9d7c04ec71..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_init_output.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_CH_INIT_OUTPUT -!! ########################## -!! -! -INTERFACE -SUBROUTINE CH_INIT_OUTPUT(TPM) -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -IMPLICIT NONE -TYPE(METEOTRANSTYPE), INTENT(IN) :: TPM -END SUBROUTINE CH_INIT_OUTPUT -END INTERFACE -END MODULE MODI_CH_INIT_OUTPUT diff --git a/src/arome/chem/module/modi_ch_init_scheme.F90 b/src/arome/chem/module/modi_ch_init_scheme.F90 deleted file mode 100644 index 595529b1acf2c845f4bf587cc1dbeb3230731969..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_init_scheme.F90 +++ /dev/null @@ -1,16 +0,0 @@ -! ######spl - MODULE MODI_CH_INIT_SCHEME -! ############################ -! -INTERFACE -! - SUBROUTINE CH_INIT_SCHEME(KLUOUT) -! -INTEGER, INTENT(IN) :: KLUOUT -! -! -END SUBROUTINE CH_INIT_SCHEME -! -END INTERFACE -! -END MODULE MODI_CH_INIT_SCHEME diff --git a/src/arome/chem/module/modi_ch_interp_jvalues.F90 b/src/arome/chem/module/modi_ch_interp_jvalues.F90 deleted file mode 100644 index b225f44be69c18577d98fc67d62970523eb3d36c..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_interp_jvalues.F90 +++ /dev/null @@ -1,25 +0,0 @@ -! ######spl - MODULE MODI_CH_INTERP_JVALUES -! ############################# -! - INTERFACE -! - SUBROUTINE CH_INTERP_JVALUES(PJVALUES,PZZ, PZS, PALBUV, PZENITH, & - KLON, KLAT, KLEV, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB, KLUOUT) -! -USE MODD_CH_INIT_JVALUES, ONLY : JPJVMAX - IMPLICIT NONE - INTEGER, INTENT(IN) :: KLUOUT - INTEGER, INTENT(IN) :: KLON ! dimension I - INTEGER, INTENT(IN) :: KLAT ! dimension J - INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels - REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALBUV, PZS - REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ - REAL, DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES - INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim - INTEGER, INTENT(IN) :: KVERB ! verbosity level - END SUBROUTINE CH_INTERP_JVALUES - END INTERFACE -! - END MODULE MODI_CH_INTERP_JVALUES diff --git a/src/arome/chem/module/modi_ch_interp_jvalues_n.F90 b/src/arome/chem/module/modi_ch_interp_jvalues_n.F90 deleted file mode 100644 index a4ea7be4a125ab5384e3f4ef915a7e62ad460970..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_interp_jvalues_n.F90 +++ /dev/null @@ -1,25 +0,0 @@ -! ######spl - MODULE MODI_CH_INTERP_JVALUES_n -! ################################ -! - INTERFACE -! - SUBROUTINE CH_INTERP_JVALUES_n(PJVALUES,PZZ, PZS, PALBUV, PZENITH,& - KLON, KLAT, KLEV, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB, KLUOUT) -! -USE MODD_CH_INIT_JVALUES, ONLY : JPJVMAX - IMPLICIT NONE - INTEGER, INTENT(IN) :: KLUOUT - INTEGER, INTENT(IN) :: KLON ! dimension I - INTEGER, INTENT(IN) :: KLAT ! dimension J - INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels - REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALBUV, PZS - REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ - REAL, DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES - INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim - INTEGER, INTENT(IN) :: KVERB ! verbosity level - END SUBROUTINE CH_INTERP_JVALUES_n - END INTERFACE -! - END MODULE MODI_CH_INTERP_JVALUES_n diff --git a/src/arome/chem/module/modi_ch_isoropia.F90 b/src/arome/chem/module/modi_ch_isoropia.F90 deleted file mode 100644 index dd120354447cf2266f3aeac79610cc1ee96ca4cb..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_isoropia.F90 +++ /dev/null @@ -1,16 +0,0 @@ -! ######spl - MODULE MODI_CH_ISOROPIA -!! ######################## -!! -INTERFACE -!! -SUBROUTINE CH_ISOROPIA (PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) -USE MODD_CH_M9 -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC -END SUBROUTINE CH_ISOROPIA -!! -END INTERFACE -!! -END MODULE MODI_CH_ISOROPIA diff --git a/src/arome/chem/module/modi_ch_jac.F90 b/src/arome/chem/module/modi_ch_jac.F90 deleted file mode 100644 index da64de2747e0e106fa445b762fe90600bc0cb00d..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_jac.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl - MODULE MODI_CH_JAC -!! ################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_JAC(PTIME,PCONC,PJAC,KMI,KVECNPT,KEQ) -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ,KEQ) :: PJAC -INTEGER, INTENT(IN) :: KMI -END SUBROUTINE CH_JAC -END INTERFACE -END MODULE MODI_CH_JAC diff --git a/src/arome/chem/module/modi_ch_jvalues_clouds.F90 b/src/arome/chem/module/modi_ch_jvalues_clouds.F90 deleted file mode 100644 index 1edd2d1851df75d6d0fc5dac5058b670f29c0d57..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_jvalues_clouds.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_CH_JVALUES_CLOUDS -! ############################# - INTERFACE - SUBROUTINE CH_JVALUES_CLOUDS(PZENITH, KPJVMAX, KJVLEVEL, PAZ, PLWC, PFCLD) - IMPLICIT NONE - INTEGER, INTENT(IN) :: KPJVMAX, KJVLEVEL - REAL, DIMENSION(:,:), INTENT(IN) :: PZENITH - REAL, DIMENSION(:,:,:), INTENT(IN) :: PLWC, PAZ - REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PFCLD - END SUBROUTINE CH_JVALUES_CLOUDS - END INTERFACE - END MODULE MODI_CH_JVALUES_CLOUDS diff --git a/src/arome/chem/module/modi_ch_jvalues_clouds_n.F90 b/src/arome/chem/module/modi_ch_jvalues_clouds_n.F90 deleted file mode 100644 index c76366a95cd159f97cfd6ed7fdd10281b47aed72..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_jvalues_clouds_n.F90 +++ /dev/null @@ -1,14 +0,0 @@ -! ######spl - MODULE MODI_CH_JVALUES_CLOUDS_n -! ############################# - INTERFACE - SUBROUTINE CH_JVALUES_CLOUDS_n(PZENITH, KPJVMAX, KJVLEVEL, PAZ, PLWC, PFCLD) - IMPLICIT NONE - INTEGER, INTENT(IN) :: KPJVMAX, KJVLEVEL - REAL, DIMENSION(:,:,:), INTENT(IN) :: PLWC, PAZ - REAL, DIMENSION(:,:), INTENT(IN) :: PZENITH - REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PFCLD - - END SUBROUTINE CH_JVALUES_CLOUDS_n - END INTERFACE - END MODULE MODI_CH_JVALUES_CLOUDS_n diff --git a/src/arome/chem/module/modi_ch_jvalues_n.F90 b/src/arome/chem/module/modi_ch_jvalues_n.F90 deleted file mode 100644 index f710767ebac5d86c25a8f41dc709349873ae38a1..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_jvalues_n.F90 +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - MODULE MODI_CH_JVALUES_n -! ############################################# -! - INTERFACE - SUBROUTINE CH_JVALUES_n(KVECNPT, KIINDEX, KJINDEX, KMODELLEVEL, KRATES, PJVALUES, PRATES) - IMPLICIT NONE - INTEGER, DIMENSION(:), INTENT(IN) :: KMODELLEVEL - INTEGER, INTENT(IN) :: KVECNPT - INTEGER, DIMENSION(:), INTENT(IN) :: KIINDEX,KJINDEX - ! current model grid point - INTEGER, INTENT(IN) :: KRATES - ! dimension of PRATES - REAL, DIMENSION(KVECNPT,KRATES), INTENT(OUT) :: PRATES - ! photolysis rates - REAL,DIMENSION(:,:,:,:), INTENT(IN) :: PJVALUES ! Tuv coefficients - - END SUBROUTINE CH_JVALUES_n - END INTERFACE - END MODULE MODI_CH_JVALUES_n diff --git a/src/arome/chem/module/modi_ch_linssa.F90 b/src/arome/chem/module/modi_ch_linssa.F90 deleted file mode 100644 index ff1134f80e2a10aee4a6809a7c081a2e518adbe4..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_linssa.F90 +++ /dev/null @@ -1,25 +0,0 @@ -! ######spl - MODULE MODI_CH_LINSSA -!! ##################### -!! -! -INTERFACE -!! -SUBROUTINE CH_LINSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - KSSA, KSSAINDEX) -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number -INTEGER, INTENT(IN) :: KSSA -INTEGER, DIMENSION(1000) :: KSSAINDEX -! -END SUBROUTINE CH_LINSSA -!! -END INTERFACE -!! -END MODULE MODI_CH_LINSSA diff --git a/src/arome/chem/module/modi_ch_meteo_trans.F90 b/src/arome/chem/module/modi_ch_meteo_trans.F90 deleted file mode 100644 index 367d0ee424da65aac0dd814f58b89840e551d4ee..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_meteo_trans.F90 +++ /dev/null @@ -1,34 +0,0 @@ -! ######spl - MODULE MODI_CH_METEO_TRANS -!! ############################# -!! -! -INTERFACE -!! -SUBROUTINE CH_METEO_TRANS(KL, PRHODREF, PRT, PTHT, PABST, & - KVECNPT, KVECMASK, TPM, KDAY,& - KMONTH, KYEAR, PLAT, PLON, PLAT0, PLON0,& - OUSERV, OUSERC, KLUOUT ) - -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -IMPLICIT NONE -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! air density -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRT ! moist variables at t -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST ! theta and pressure at t -INTEGER, DIMENSION(:,:), INTENT(IN) :: KVECMASK -TYPE(METEOTRANSTYPE), DIMENSION(:), INTENT(INOUT) :: TPM - ! meteo variable for CCS -INTEGER, INTENT(IN) :: KYEAR ! Current Year -INTEGER, INTENT(IN) :: KMONTH ! Current Month -INTEGER, INTENT(IN) :: KDAY ! Current Day -INTEGER, INTENT(IN) :: KLUOUT ! channel for output listing -INTEGER, INTENT(IN) :: KL, KVECNPT -REAL, DIMENSION(:,:), INTENT(IN) :: PLAT, PLON -REAL, INTENT(IN) :: PLAT0, PLON0 -LOGICAL, INTENT(IN) :: OUSERV, OUSERC - -END SUBROUTINE CH_METEO_TRANS -!! -END INTERFACE -!! -END MODULE MODI_CH_METEO_TRANS diff --git a/src/arome/chem/module/modi_ch_monitor_n.F90 b/src/arome/chem/module/modi_ch_monitor_n.F90 deleted file mode 100644 index b886dbf0177c3e91054765aab470be7a94b6a829..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_monitor_n.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_CH_MONITOR_n -!! ######################## -!! -! -INTERFACE -!! -SUBROUTINE CH_MONITOR_n(KTCOUNT,PTSTEP, KLUOUT, KVERB) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KTCOUNT ! iteration count -REAL, INTENT(IN) :: PTSTEP ! Double timestep except - ! for the first time step (single one) -INTEGER, INTENT(IN) :: KLUOUT ! unit for output listing count -INTEGER, INTENT(IN) :: KVERB ! verbosity level -END SUBROUTINE CH_MONITOR_n -!! -END INTERFACE -!! -END MODULE MODI_CH_MONITOR_n diff --git a/src/arome/chem/module/modi_ch_nnares.F90 b/src/arome/chem/module/modi_ch_nnares.F90 deleted file mode 100644 index b897c069d8d4b6bb1a3c3bbd5a7cee21df65ae97..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_nnares.F90 +++ /dev/null @@ -1,17 +0,0 @@ -! ######spl - MODULE MODI_CH_NNARES -!! ##################### -!! -INTERFACE -!! -SUBROUTINE CH_NNARES (PAER,PRH, PDENAIR, PPRESSURE, PTEMP, PRC) -USE MODD_CH_M9 -IMPLICIT NONE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAER -REAL, DIMENSION(:), INTENT(IN) :: PRH, PDENAIR, PPRESSURE, PTEMP, PRC - -END SUBROUTINE CH_NNARES -!! -END INTERFACE -!! -END MODULE MODI_CH_NNARES diff --git a/src/arome/chem/module/modi_ch_nonzeroterms.F90 b/src/arome/chem/module/modi_ch_nonzeroterms.F90 deleted file mode 100644 index ac9ce3729b40f0cf750d4ec548e023b7bbb33a34..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_nonzeroterms.F90 +++ /dev/null @@ -1,11 +0,0 @@ -! ######spl - MODULE MODI_CH_NONZEROTERMS -!! ########################### -INTERFACE -SUBROUTINE CH_NONZEROTERMS(KINDEX, KINDEXDIM) -IMPLICIT NONE -INTEGER, INTENT(IN) :: KINDEXDIM -INTEGER, INTENT(OUT), DIMENSION(2,KINDEXDIM) :: KINDEX -END SUBROUTINE CH_NONZEROTERMS -END INTERFACE -END MODULE MODI_CH_NONZEROTERMS diff --git a/src/arome/chem/module/modi_ch_open_input.F90 b/src/arome/chem/module/modi_ch_open_input.F90 deleted file mode 100644 index dc4242709a6f39429b22713e75d93668ebcae3e9..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_open_input.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl - MODULE MODI_CH_OPEN_INPUT -!! ######################### -!! -INTERFACE -!! -SUBROUTINE CH_OPEN_INPUT(HCHEM_INPUT_FILE,HKEYWORD,KCHANNEL,KLUOUT,KVERB) -IMPLICIT NONE -CHARACTER(LEN=*), INTENT(IN) :: HCHEM_INPUT_FILE ! general purpose input file -CHARACTER(LEN=*), INTENT(IN) :: HKEYWORD ! keyword for positioning -INTEGER , INTENT(OUT):: KCHANNEL ! I/O channel to choose -INTEGER, INTENT(IN) :: KLUOUT ! output listing channel -INTEGER, INTENT(IN) :: KVERB ! verbosity level -END SUBROUTINE CH_OPEN_INPUT -!! -END INTERFACE -!! -END MODULE MODI_CH_OPEN_INPUT diff --git a/src/arome/chem/module/modi_ch_orilam.F90 b/src/arome/chem/module/modi_ch_orilam.F90 deleted file mode 100644 index a8209958ff45599f19f6c6f7a6ee63cd502fd3d0..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_orilam.F90 +++ /dev/null @@ -1,34 +0,0 @@ -! ######spl - MODULE MODI_CH_ORILAM -!! ######################### -!! -INTERFACE -!! -SUBROUTINE CH_ORILAM(PAERO, PCHEM, PM, PSIG0, PRG0, PN0, PCTOTG, PCTOTA,& - PCCTOT, PDTACT, PSEDA,& - PMU, PLAMBDA, PRHOP0, POM, PSO4RAT, & - PRV, PDENAIR, PPRESSURE, PTEMP, PRC, PFRAC, PMI,& - PTIME, GSCHEME, PSOLORG) -IMPLICIT NONE -REAL, INTENT(IN) :: PDTACT, PTIME -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRHOP0, POM -REAL, DIMENSION(:), INTENT(INOUT) :: PLAMBDA, PMU, PSO4RAT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSIG0, PRG0, PN0 -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCTOTG -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSEDA -REAL, DIMENSION(:,:), INTENT(INOUT) :: PCHEM -REAL, DIMENSION(:,:), INTENT(INOUT) :: PAERO -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC -REAL, DIMENSION(:,:), INTENT(INOUT) :: PMI -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCTOTA, PCCTOT -REAL, DIMENSION(:,:), INTENT(INOUT) :: PSOLORG -REAL, DIMENSION(:), INTENT(IN) :: PRV, PDENAIR, PPRESSURE, PTEMP, PRC -CHARACTER(LEN=10), INTENT(IN) :: GSCHEME - - -END SUBROUTINE CH_ORILAM -!! -END INTERFACE -!! -END MODULE MODI_CH_ORILAM diff --git a/src/arome/chem/module/modi_ch_output.F90 b/src/arome/chem/module/modi_ch_output.F90 deleted file mode 100644 index 0eb25c09be3ddf0c5c30289f0875106b9b3586d1..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_output.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_CH_OUTPUT -!! ##################### -! -INTERFACE -SUBROUTINE CH_OUTPUT(PCONC, PAERO, PMI, TPM, KMI, KVECNPT) -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -IMPLICIT NONE -INTEGER, INTENT(IN) :: KVECNPT -!REAL, DIMENSION(KVECNPT,NEQ), INTENT(IN) :: PCONC ! the chem species -REAL, DIMENSION(:,:), INTENT(IN) :: PCONC ! the chem species -REAL, DIMENSION(:,:), INTENT(IN) :: PAERO ! the chem species -REAL, DIMENSION(:,:), INTENT(IN) :: PMI ! the molecular mass -TYPE(METEOTRANSTYPE), DIMENSION(KVECNPT), INTENT(IN) :: TPM ! the meteo variables -INTEGER, INTENT(IN) :: KMI -! -END SUBROUTINE CH_OUTPUT -END INTERFACE -END MODULE MODI_CH_OUTPUT diff --git a/src/arome/chem/module/modi_ch_prodloss.F90 b/src/arome/chem/module/modi_ch_prodloss.F90 deleted file mode 100644 index 3724496eaf47665b7157cbcbc15e9e3cd52f6f48..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_prodloss.F90 +++ /dev/null @@ -1,15 +0,0 @@ -! ######spl - MODULE MODI_CH_PRODLOSS -!! ####################### -INTERFACE -SUBROUTINE CH_PRODLOSS(PTIME,PCONC,PPROD,PLOSS,KMI,KVECNPT,KEQ) -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PPROD, PLOSS -INTEGER, INTENT(IN) :: KMI -END SUBROUTINE CH_PRODLOSS -END INTERFACE -END MODULE MODI_CH_PRODLOSS diff --git a/src/arome/chem/module/modi_ch_qssa.F90 b/src/arome/chem/module/modi_ch_qssa.F90 deleted file mode 100644 index 33f8801cdc8f957dae0e9757850dd1d54aef19f3..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_qssa.F90 +++ /dev/null @@ -1,24 +0,0 @@ -! ######spl - MODULE MODI_CH_QSSA -!! ################### -!! -! -INTERFACE -!! -SUBROUTINE CH_QSSA(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PSLOW, PFAST, KQSSAITER) -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER,INTENT(IN) :: KMI ! model number -REAL, INTENT(IN) :: PSLOW, PFAST -INTEGER, INTENT(IN) :: KQSSAITER -END SUBROUTINE CH_QSSA -!! -END INTERFACE -!! -END MODULE MODI_CH_QSSA diff --git a/src/arome/chem/module/modi_ch_read_chem.F90 b/src/arome/chem/module/modi_ch_read_chem.F90 deleted file mode 100644 index 4e5158970b445a2b1a00c97acdd53bf0389b645c..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_read_chem.F90 +++ /dev/null @@ -1,16 +0,0 @@ -! ######spl - MODULE MODI_CH_READ_CHEM -!! ######################## -!! -! -INTERFACE -SUBROUTINE CH_READ_CHEM(PCONC, PAERO, PRHODREF, HFILE) -IMPLICIT NONE -REAL, DIMENSION(:), INTENT(INOUT) :: PCONC ! gas concentration vector to be read -REAL, DIMENSION(:), INTENT(INOUT) :: PAERO ! aerosol concentration vector to be read -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! air density -CHARACTER(LEN=*), INTENT(IN) :: HFILE ! name of the file to be read from -END SUBROUTINE CH_READ_CHEM -END INTERFACE -!! -END MODULE MODI_CH_READ_CHEM diff --git a/src/arome/chem/module/modi_ch_read_meteo.F90 b/src/arome/chem/module/modi_ch_read_meteo.F90 deleted file mode 100644 index 946fc1dcba19de51c591f9668f8060b04c631fa1..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_read_meteo.F90 +++ /dev/null @@ -1,12 +0,0 @@ -! ######spl - MODULE MODI_CH_READ_METEO -!! ######################### -! -INTERFACE -SUBROUTINE CH_READ_METEO(TPM) -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -IMPLICIT NONE -TYPE(METEOTRANSTYPE), INTENT(INOUT) :: TPM -END SUBROUTINE CH_READ_METEO -END INTERFACE -END MODULE MODI_CH_READ_METEO diff --git a/src/arome/chem/module/modi_ch_read_vector.F90 b/src/arome/chem/module/modi_ch_read_vector.F90 deleted file mode 100644 index 1c9d9365129c00db85b7e8a5eac4aec7a400985d..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_read_vector.F90 +++ /dev/null @@ -1,28 +0,0 @@ -! ######spl - MODULE MODI_CH_READ_VECTOR -!! ########################## -!! -INTERFACE -!! -SUBROUTINE CH_READ_VECTOR(KEQ, HNAMES, PVAR, PDEFAULT, KIN, KOUT, KVERB) -IMPLICIT NONE -!! -INTEGER, INTENT(IN) :: KEQ - ! number of variables to be defined -CHARACTER*(*), DIMENSION(KEQ), INTENT(IN) :: HNAMES - ! names of the variables to be defined -REAL, DIMENSION(KEQ), INTENT(OUT):: PVAR - ! value of the variable to be read -REAL, INTENT(IN) :: PDEFAULT - ! default value -INTEGER, INTENT(IN) :: KIN - ! I/O channel for file input -INTEGER, INTENT(IN) :: KOUT - ! I/O channel for printing -INTEGER, INTENT(IN) :: KVERB - ! verbosity level -END SUBROUTINE CH_READ_VECTOR -!! -END INTERFACE -!! -END MODULE MODI_CH_READ_VECTOR diff --git a/src/arome/chem/module/modi_ch_set_photo_rates.F90 b/src/arome/chem/module/modi_ch_set_photo_rates.F90 deleted file mode 100644 index 83b6fa78594800dafe490c59e72f7a5f06378770..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_set_photo_rates.F90 +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - MODULE MODI_CH_SET_PHOTO_RATES -!! ############################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_SET_PHOTO_RATES(PTIME,PCONC,KL,TPM,KMI,KOUT,KVERB,KVECNPT,KVECMASK,KEQ,PJVALUES) -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT,KL,KEQ,KMI -INTEGER, DIMENSION(:,:), INTENT(IN) :: KVECMASK -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -TYPE(METEOTRANSTYPE), DIMENSION(KVECNPT), INTENT(IN) :: TPM -INTEGER, INTENT(IN) :: KOUT,KVERB -REAL,DIMENSION(:,:,:,:), INTENT(IN) :: PJVALUES ! Tuv coefficient -END SUBROUTINE CH_SET_PHOTO_RATES -END INTERFACE -END MODULE MODI_CH_SET_PHOTO_RATES diff --git a/src/arome/chem/module/modi_ch_set_rates.F90 b/src/arome/chem/module/modi_ch_set_rates.F90 deleted file mode 100644 index e7b1bb04c86cddd819753eb0404b1cd97399d3a9..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_set_rates.F90 +++ /dev/null @@ -1,20 +0,0 @@ -! ######spl - MODULE MODI_CH_SET_RATES -!! ######################## -!! This code has been created automatically by preprocessor m10, -!! version: 9.7, copyright 1995-1999 by Meteo France/Universite Paul Sabatier. -!! Please report all bugs to K. Suhre (Lab. d'Aerologie UPS/CNRS). -INTERFACE -SUBROUTINE CH_SET_RATES(PTIME,PCONC,TPM,KMI,KOUT,KVERB,KVECNPT,KEQ) -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -TYPE(METEOTRANSTYPE), DIMENSION(KVECNPT), INTENT(IN):: TPM -INTEGER, INTENT(IN) :: KMI -INTEGER, INTENT(IN) :: KOUT,KVERB -END SUBROUTINE CH_SET_RATES -END INTERFACE -END MODULE MODI_CH_SET_RATES diff --git a/src/arome/chem/module/modi_ch_show_chem.F90 b/src/arome/chem/module/modi_ch_show_chem.F90 deleted file mode 100644 index 877bec80c8fcccb844ed0ecd619795677c55dcee..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_show_chem.F90 +++ /dev/null @@ -1,17 +0,0 @@ -! ######spl - MODULE MODI_CH_SHOW_CHEM -!! ######################## -!! -! -INTERFACE -!! -SUBROUTINE CH_SHOW_CHEM(PCONC, HNAMES) -IMPLICIT NONE -!REAL, DIMENSION(NEQ), INTENT(IN) :: PCONC ! PCONC: concentration vector -REAL, DIMENSION(:), INTENT(IN) :: PCONC ! PCONC: concentration vector -CHARACTER(LEN=32), DIMENSION(:), INTENT(IN) :: HNAMES ! name of each species -END SUBROUTINE CH_SHOW_CHEM -!! -END INTERFACE -!! -END MODULE MODI_CH_SHOW_CHEM diff --git a/src/arome/chem/module/modi_ch_sis.F90 b/src/arome/chem/module/modi_ch_sis.F90 deleted file mode 100644 index c047720ca82f4de54278baea8a3c260e8686a5fc..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_sis.F90 +++ /dev/null @@ -1,21 +0,0 @@ -! ######spl - MODULE MODI_CH_SIS -!! ################## -!! -! -INTERFACE -!! -SUBROUTINE CH_SIS(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI) -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model number -END SUBROUTINE CH_SIS -!! -END INTERFACE -!! -END MODULE MODI_CH_SIS diff --git a/src/arome/chem/module/modi_ch_solver_n.F90 b/src/arome/chem/module/modi_ch_solver_n.F90 deleted file mode 100644 index a2485148496d3c9a3081fcb159bdf63651ba35ce..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_solver_n.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_CH_SOLVER_n -!! ##################### -!! -! -INTERFACE -SUBROUTINE CH_SOLVER_n(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI) -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KMI ! model number -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC ! solution at PTSIMUL + PDTACT -END SUBROUTINE CH_SOLVER_n -END INTERFACE -!! -END MODULE MODI_CH_SOLVER_n diff --git a/src/arome/chem/module/modi_ch_sparse.F90 b/src/arome/chem/module/modi_ch_sparse.F90 deleted file mode 100644 index 2cc38c03ababd3f112bf0ca9b69fd3ad62a8e2d5..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_sparse.F90 +++ /dev/null @@ -1,11 +0,0 @@ -! ######spl - MODULE MODI_CH_SPARSE -!! ##################### -INTERFACE -SUBROUTINE CH_SPARSE(KSPARSE, KSPARSEDIM) -IMPLICIT NONE -INTEGER, INTENT(INOUT) :: KSPARSEDIM -INTEGER, INTENT(OUT), DIMENSION(2,KSPARSEDIM) :: KSPARSE -END SUBROUTINE CH_SPARSE -END INTERFACE -END MODULE MODI_CH_SPARSE diff --git a/src/arome/chem/module/modi_ch_svode.F90 b/src/arome/chem/module/modi_ch_svode.F90 deleted file mode 100644 index 47504ec6e5503df8ddf45a380d64f17aee63a313..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_svode.F90 +++ /dev/null @@ -1,26 +0,0 @@ -! ######spl - MODULE MODI_CH_SVODE -!! ############################# - -! -INTERFACE - -SUBROUTINE CH_SVODE(PTSIMUL, PDTACT, PCONC, PNEWCONC, KEQ, KVECNPT, KMI, & - PRTOL, PATOL, KPED ) -IMPLICIT NONE -REAL, INTENT(IN) :: PTSIMUL ! time of simulation -REAL, INTENT(IN) :: PDTACT ! actual time-step -INTEGER, INTENT(IN) :: KEQ ! dimension of the problem to solve -INTEGER, INTENT(IN) :: KVECNPT -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC - ! concentration vector at PTSIMUL -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ) :: PNEWCONC - ! solution at PTSIMUL + PDTACT -INTEGER, INTENT(IN) :: KMI ! model index -REAL, INTENT(IN) :: PRTOL, PATOL -INTEGER, INTENT(IN) :: KPED -END SUBROUTINE CH_SVODE - -END INTERFACE - -END MODULE MODI_CH_SVODE diff --git a/src/arome/chem/module/modi_ch_terms.F90 b/src/arome/chem/module/modi_ch_terms.F90 deleted file mode 100644 index 5f1ef5ef399550d9e274a55edd3c00df1cc127d3..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_terms.F90 +++ /dev/null @@ -1,15 +0,0 @@ -! ######spl - MODULE MODI_CH_TERMS -!! #################### -INTERFACE -SUBROUTINE CH_TERMS(PTIME,PCONC,PTERMS,KMI,KVECNPT,KEQ,KREAC) -IMPLICIT NONE -REAL, INTENT(IN) :: PTIME -INTEGER, INTENT(IN) :: KVECNPT -INTEGER, INTENT(IN) :: KEQ, KREAC -REAL, INTENT(IN), DIMENSION(KVECNPT,KEQ) :: PCONC -REAL, INTENT(OUT), DIMENSION(KVECNPT,KEQ,KREAC):: PTERMS -INTEGER, INTENT(IN) :: KMI -END SUBROUTINE CH_TERMS -END INTERFACE -END MODULE MODI_CH_TERMS diff --git a/src/arome/chem/module/modi_ch_update_jvalues.F90 b/src/arome/chem/module/modi_ch_update_jvalues.F90 deleted file mode 100644 index 1d02b0db6eeb653caf48a91a73e8877543fcc6d7..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_update_jvalues.F90 +++ /dev/null @@ -1,45 +0,0 @@ -! ######spl - MODULE MODI_CH_UPDATE_JVALUES -!! ############################# - - INTERFACE -! - SUBROUTINE CH_UPDATE_JVALUES(KLUOUT, PZENITH, PRT, & - PALB_UV, PZS, PZZ, PLAT0, PLON0, & - KLON, KLAT, KLEV,KRR, & - KDAY, KMONTH, KYEAR, PTIME, & - OCH_TUV_ONLINE, HCH_TUV_CLOUDS, & - PALBNEW, PDOBNEW, PRHODREF, PJVALUES, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB ) -! -!! EXTERNAL -!! -------- -USE MODD_CH_INIT_JVALUES, ONLY : JPJVMAX -! -IMPLICIT NONE -INTEGER, INTENT(IN) :: KLON ! dimension I -INTEGER, INTENT(IN) :: KLAT ! dimension J -INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -REAL, INTENT(IN) :: PLAT0, PLON0 -REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALB_UV, PZS -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PRHODREF -REAL, DIMENSION(KLON,KLAT,KLEV,KRR), INTENT(IN) :: PRT -INTEGER, INTENT(IN) :: KDAY, KMONTH, KYEAR ! current date -REAL, INTENT(IN) :: PTIME ! current time (s) -INTEGER, INTENT(IN) :: KLUOUT -LOGICAL, INTENT(IN) :: OCH_TUV_ONLINE ! online/lookup table -CHARACTER*4, INTENT(IN) :: HCH_TUV_CLOUDS ! clouds and radiation -REAL, INTENT(IN) :: PALBNEW ! surface albedo -REAL, INTENT(IN) :: PDOBNEW ! ozone column dobson -REAL,DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES ! Tuv coefficients -INTEGER, INTENT(IN) :: KVERB ! verbosity level -INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim -!! -! -END SUBROUTINE CH_UPDATE_JVALUES -! -END INTERFACE -! -END MODULE MODI_CH_UPDATE_JVALUES diff --git a/src/arome/chem/module/modi_ch_update_jvalues_n.F90 b/src/arome/chem/module/modi_ch_update_jvalues_n.F90 deleted file mode 100644 index c4f1081c8716f1522cc3dc338146977ab365fb5f..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_update_jvalues_n.F90 +++ /dev/null @@ -1,45 +0,0 @@ -! ######spl - MODULE MODI_CH_UPDATE_JVALUES_n -!! ############################### - - INTERFACE -! - SUBROUTINE CH_UPDATE_JVALUES_n(KLUOUT, PZENITH, PRT, & - PALB_UV, PZS, PZZ, PLAT0, PLON0, & - KLON, KLAT, KLEV,KRR, & - KDAY, KMONTH, KYEAR, PTIME, & - OCH_TUV_ONLINE, HCH_TUV_CLOUDS, & - PALBNEW, PDOBNEW, PRHODREF, PJVALUES, & - NIB,NIE,NJB,NJE,NIU,NJU, KVERB ) -! -!! EXTERNAL -!! -------- -USE MODD_CH_INIT_JVALUES, ONLY : JPJVMAX -! -IMPLICIT NONE -INTEGER, INTENT(IN) :: KLON ! dimension I -INTEGER, INTENT(IN) :: KLAT ! dimension J -INTEGER, INTENT(IN) :: KLEV ! Number of vertical levels -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -REAL, INTENT(IN) :: PLAT0, PLON0 -REAL, DIMENSION(KLON,KLAT), INTENT(IN) :: PZENITH, PALB_UV, PZS -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PZZ -REAL, DIMENSION(KLON,KLAT,KLEV), INTENT(IN) :: PRHODREF -REAL, DIMENSION(KLON,KLAT,KLEV,KRR), INTENT(IN) :: PRT -INTEGER, INTENT(IN) :: KDAY, KMONTH, KYEAR ! current date -REAL, INTENT(IN) :: PTIME ! current time (s) -INTEGER, INTENT(IN) :: KLUOUT -LOGICAL, INTENT(IN) :: OCH_TUV_ONLINE ! online/lookup table -CHARACTER*4, INTENT(IN) :: HCH_TUV_CLOUDS ! clouds and radiation -REAL, INTENT(IN) :: PALBNEW ! surface albedo -REAL, INTENT(IN) :: PDOBNEW ! ozone column dobson -REAL,DIMENSION(KLON,KLAT,KLEV,JPJVMAX), INTENT(INOUT) :: PJVALUES ! Tuv coefficients -INTEGER, INTENT(IN) :: KVERB ! verbosity level -INTEGER, INTENT(IN) :: NIB,NIE,NJB,NJE,NIU,NJU ! domain dim -!! -! -END SUBROUTINE CH_UPDATE_JVALUES_n -! -END INTERFACE -! -END MODULE MODI_CH_UPDATE_JVALUES_n diff --git a/src/arome/chem/module/modi_ch_update_meteo.F90 b/src/arome/chem/module/modi_ch_update_meteo.F90 deleted file mode 100644 index 0698316809e0e482dc80dc03720dc9afadaea986..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_update_meteo.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_CH_UPDATE_METEO -!! ########################### -! -INTERFACE -SUBROUTINE CH_UPDATE_METEO(TPM,PTIME) -USE MODD_CH_M9, ONLY: METEOTRANSTYPE -IMPLICIT NONE -TYPE(METEOTRANSTYPE), INTENT(INOUT) :: TPM -REAL, INTENT(IN) :: PTIME ! current simulation time -END SUBROUTINE CH_UPDATE_METEO -END INTERFACE -END MODULE MODI_CH_UPDATE_METEO diff --git a/src/arome/chem/module/modi_ch_write_chem.F90 b/src/arome/chem/module/modi_ch_write_chem.F90 deleted file mode 100644 index 817c69dd3ede01881aa907e2ff11dccce23c5191..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ch_write_chem.F90 +++ /dev/null @@ -1,16 +0,0 @@ -! ######spl - MODULE MODI_CH_WRITE_CHEM -!! ######################### -!! -! -INTERFACE -SUBROUTINE CH_WRITE_CHEM(PCONC, PAERO, PRHODREF, HFILE) -IMPLICIT NONE -!REAL, DIMENSION(NEQ), INTENT(IN) :: PCONC ! PCONC: concentration vector -REAL, DIMENSION(:), INTENT(IN) :: PCONC ! PCONC: concentration vector -REAL, DIMENSION(:), INTENT(IN) :: PAERO ! PCONC: concentration vector -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF ! air density -CHARACTER(LEN=*), INTENT(IN) :: HFILE ! HFILE: name of the file for write -END SUBROUTINE CH_WRITE_CHEM -END INTERFACE -END MODULE MODI_CH_WRITE_CHEM diff --git a/src/arome/chem/module/modi_dust_filter.F90 b/src/arome/chem/module/modi_dust_filter.F90 deleted file mode 100644 index 5c2c70a90659eb52c128da04cf2249e3e6f00575..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_dust_filter.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl - MODULE MODI_DUST_FILTER -!! ############################## -!! -INTERFACE -! -SUBROUTINE DUST_FILTER(PSV, PRHODREF) - -IMPLICIT NONE - -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF - -END SUBROUTINE DUST_FILTER -!! -END INTERFACE -!! -END MODULE MODI_DUST_FILTER diff --git a/src/arome/chem/module/modi_dust_velgrav.F90 b/src/arome/chem/module/modi_dust_velgrav.F90 deleted file mode 100644 index 9e23d6c7fa1e2c1c496aaa95f352c2e6d25a9550..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_dust_velgrav.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_DUST_VELGRAV -!! ############################## -!! -INTERFACE -!! -SUBROUTINE DUST_VELGRAV(PSIG, PRG, PTHT, PABST,PRHODREF, PRHOP, PMU, PVGK,PDPK, PVGG) -IMPLICIT NONE -REAL, INTENT(IN) :: PRHOP -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG, PRG -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST, PRHODREF -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGK,PDPK -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PMU -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGG -END SUBROUTINE DUST_VELGRAV -!! -END INTERFACE -!! -END MODULE MODI_DUST_VELGRAV diff --git a/src/arome/chem/module/modi_dustlfi_n.F90 b/src/arome/chem/module/modi_dustlfi_n.F90 deleted file mode 100644 index 2ce74fcea25c1340612b5f189e2a615356a24b21..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_dustlfi_n.F90 +++ /dev/null @@ -1,15 +0,0 @@ -! ######spl - MODULE MODI_DUSTLFI_n -! ######################## -! -INTERFACE -! -SUBROUTINE DUSTLFI_n(PSV, PRHODREF) -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -END SUBROUTINE DUSTLFI_n -! -END INTERFACE -! -END MODULE MODI_DUSTLFI_n diff --git a/src/arome/chem/module/modi_eqsam_v03d_sub.F90 b/src/arome/chem/module/modi_eqsam_v03d_sub.F90 deleted file mode 100644 index fe0fad0d9c4f7a7f398dbbd1b01053e5cefcfe6f..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_eqsam_v03d_sub.F90 +++ /dev/null @@ -1,17 +0,0 @@ -! ######spl - MODULE MODI_eqsam_v03d_sub -!! ######################## -!! -INTERFACE -!! -SUBROUTINE eqsam_v03d_sub(yi,yo,nca,nco,iopt,loop,imax) -IMPLICIT NONE -integer,intent(in) :: nca,nco,imax,loop -integer,intent(inout) :: iopt -real,dimension(:,:),intent(in) :: yi -real,dimension(:,:),intent(inout) :: yo -END SUBROUTINE eqsam_v03d_sub -!! -END INTERFACE -!! -END MODULE MODI_eqsam_v03d_sub diff --git a/src/arome/chem/module/modi_ini_wet_dep.F90 b/src/arome/chem/module/modi_ini_wet_dep.F90 deleted file mode 100644 index 3947f4f48af03f7ad4942fd0c58f54c020da9a5e..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_ini_wet_dep.F90 +++ /dev/null @@ -1,14 +0,0 @@ -! ######spl - MODULE MODI_INI_WET_DEP -! ######################## -! -INTERFACE - SUBROUTINE INI_WET_DEP -! -!INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints -! -END SUBROUTINE INI_WET_DEP -! -END INTERFACE -! -END MODULE MODI_INI_WET_DEP diff --git a/src/arome/chem/module/modi_init_dust.F90 b/src/arome/chem/module/modi_init_dust.F90 deleted file mode 100644 index b3521452a05bdbd574e515f84cbd1a3d7352014d..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_init_dust.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_INIT_DUST -!! ############################## -!! -INTERFACE -! -SUBROUTINE INIT_DUST(PSV, PRHODREF) - -IMPLICIT NONE - -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF - - -END SUBROUTINE INIT_DUST -!! -END INTERFACE -!! -END MODULE MODI_INIT_DUST diff --git a/src/arome/chem/module/modi_inv_levels.F90 b/src/arome/chem/module/modi_inv_levels.F90 deleted file mode 100644 index aa1e4c7cb1b0f35e9a3e6c7e5b0b7e1d2ce86ac6..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_inv_levels.F90 +++ /dev/null @@ -1,72 +0,0 @@ - MODULE MODI_INV_LEVELS -! ######################## -INTERFACE - SUBROUTINE INV_LEVELS(KIDIA,KFDIA,KLEV,KINCR,PARRAYALD, & - PARRAYMNH) - USE PARKIND1, ONLY : JPRB, JPIM - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ########################################################################## -! -!!**** * - transforms from MNH (KLEV+2) arrays to -!! Aladin (KLEV) arrays and reversely -!! -!! PURPOSE -!! ------- -!! The purpose of this routine is to reshuffle Aladin (MNH) arrays to -!! MNH (Aladin) ones -!! -!!** METHOD -!! ------ -!! To go from MNH to ALADIN (KINCR=1): -!! Suppress first and last level. levels -!! To go from ALADIN to MNH (KINCR=-1): -!! Add a vertical level at top and bottom and then reverse orders -!! -!! -!! -!! EXTERNAL -!! -------- -!! None -!! -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!! REFERENCE -!! --------- -!! -!! Documentation "New data flux for diagnostics in Arome" -!! -!! AUTHOR -!! ------ -!! O.Riviere -!! -!! MODIFICATIONS -!! ------------- -!! Original 18/06/08 - -!! -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -IMPLICIT NONE -! -!* 0.1 Declarations of dummy arguments : -! -! - -! -INTEGER(KIND=JPIM), INTENT(IN) :: KINCR ! =1 if ALD->MNH and -1 if MNH->ALD -INTEGER(KIND=JPIM), INTENT(IN) :: KIDIA,KFDIA -INTEGER(KIND=JPIM), INTENT(IN) :: KLEV !Number of vertical levels -REAL(KIND=JPRB), DIMENSION(KFDIA,KLEV), INTENT(INOUT) :: PARRAYALD ! Aladin type arry -REAL(KIND=JPRB), DIMENSION(KFDIA,1,KLEV+2), INTENT(INOUT) :: PARRAYMNH ! MNH type array - -END SUBROUTINE INV_LEVELS -END INTERFACE -END MODULE MODI_INV_LEVELS - - diff --git a/src/arome/chem/module/modi_mpdata_scalar.F90 b/src/arome/chem/module/modi_mpdata_scalar.F90 deleted file mode 100644 index 816a3f79445a145bf1426d3731734316545ae4e4..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_mpdata_scalar.F90 +++ /dev/null @@ -1,32 +0,0 @@ -! ######spl - MODULE MODI_MPDATA_SCALAR -! ######################### -INTERFACE - SUBROUTINE MPDATA_SCALAR ( KLITER, HLBCX, HLBCY, KSV, & - PTSTEP, PRHODJ, PSVM, PSVT, & - PRUCT, PRVCT, PRWCT, PRSVS ) -! -INTEGER, INTENT(IN) :: KLITER ! Number of iterations MPDATA -! -CHARACTER(LEN=4),DIMENSION(2),INTENT(IN):: HLBCX, HLBCY ! X- and Y-direc LBC -! -INTEGER, INTENT(IN) :: KSV ! Number of Scalar Variables -! -REAL, INTENT(IN) :: PTSTEP ! Time step -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSVM - ! Variables at t-dt -! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRUCT,PRVCT,PRWCT ! Contravariants - ! components of the momentum -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSVT - ! Variables at t -! -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRSVS - ! Sources terms -END SUBROUTINE MPDATA_SCALAR -! -END INTERFACE -! -END MODULE MODI_MPDATA_SCALAR diff --git a/src/arome/chem/module/modi_salt_filter.F90 b/src/arome/chem/module/modi_salt_filter.F90 deleted file mode 100644 index 9e43223d1a263d35ab5f372f8f5017e5b72b1895..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_salt_filter.F90 +++ /dev/null @@ -1,18 +0,0 @@ -! ######spl - MODULE MODI_SALT_FILTER -!! ############################## -!! -INTERFACE -! -SUBROUTINE SALT_FILTER(PSV, PRHODREF) - -IMPLICIT NONE - -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF - -END SUBROUTINE SALT_FILTER -!! -END INTERFACE -!! -END MODULE MODI_SALT_FILTER diff --git a/src/arome/chem/module/modi_salt_velgrav.F90 b/src/arome/chem/module/modi_salt_velgrav.F90 deleted file mode 100644 index cd1ac942de202c89493381a68d57bb4572a0eb96..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_salt_velgrav.F90 +++ /dev/null @@ -1,19 +0,0 @@ -! ######spl - MODULE MODI_SALT_VELGRAV -!! ############################## -!! -INTERFACE -!! -SUBROUTINE SALT_VELGRAV(PSIG, PRG, PTHT, PABST,PRHODREF, PRHOP, PMU, PVGK,PDPK, PVGG) -IMPLICIT NONE -REAL, INTENT(IN) :: PRHOP -REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PSIG, PRG -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT, PABST, PRHODREF -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGK,PDPK -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PMU -REAL, DIMENSION(:,:,:,:), INTENT(OUT) :: PVGG -END SUBROUTINE SALT_VELGRAV -!! -END INTERFACE -!! -END MODULE MODI_SALT_VELGRAV diff --git a/src/arome/chem/module/modi_saltlfi_n.F90 b/src/arome/chem/module/modi_saltlfi_n.F90 deleted file mode 100644 index 7c133a768505d07b27c39cc3c32851a73cc8bc4d..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_saltlfi_n.F90 +++ /dev/null @@ -1,15 +0,0 @@ -! ######spl - MODULE MODI_SALTLFI_n -! ######################## -! -INTERFACE -! -SUBROUTINE SALTLFI_n(PSV, PRHODREF) -IMPLICIT NONE -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF -END SUBROUTINE SALTLFI_n -! -END INTERFACE -! -END MODULE MODI_SALTLFI_n diff --git a/src/arome/chem/module/modi_sedim_dust.F90 b/src/arome/chem/module/modi_sedim_dust.F90 deleted file mode 100644 index 8b3fc50873c284d1a11197a613b4c0ad2e09e82e..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_sedim_dust.F90 +++ /dev/null @@ -1,28 +0,0 @@ -! ######spl - MODULE MODI_SEDIM_DUST -!! ############################## -!! -INTERFACE -! -SUBROUTINE SEDIM_DUST( & - PTHT & !I [K] theta - ,PDTMONITOR & !I Time step - ,PRHODREF & !I [kg/m3] air density - ,PPABST & !I [Pa] pressure - ,PZZ & !I [m] height of layers - ,PSVT & !IO [scalar variable, ppp] sea salt concentration - ) - -IMPLICIT NONE - -REAL, INTENT(IN) :: PDTMONITOR -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !scalar variable -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT,PRHODREF, PZZ -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST - - -END SUBROUTINE SEDIM_DUST -!! -END INTERFACE -!! -END MODULE MODI_SEDIM_DUST diff --git a/src/arome/chem/module/modi_sedim_salt.F90 b/src/arome/chem/module/modi_sedim_salt.F90 deleted file mode 100644 index 3b5692546f33739cbe38277c35488e412845bb88..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_sedim_salt.F90 +++ /dev/null @@ -1,28 +0,0 @@ -! ######spl - MODULE MODI_SEDIM_SALT -!! ############################## -!! -INTERFACE -! -SUBROUTINE SEDIM_SALT( & - PTHT & !I [K] theta - ,PDTMONITOR & !I Time step - ,PRHODREF & !I [kg/m3] air density - ,PPABST & !I [Pa] pressure - ,PZZ & !I [m] height of layers - ,PSVT & !IO [scalar variable, ppp] sea salt concentration - ) - -IMPLICIT NONE - -REAL, INTENT(IN) :: PDTMONITOR -REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVT !scalar variable -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHT,PRHODREF, PZZ -REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST - - -END SUBROUTINE SEDIM_SALT -!! -END INTERFACE -!! -END MODULE MODI_SEDIM_SALT diff --git a/src/arome/chem/module/modi_troe.F90 b/src/arome/chem/module/modi_troe.F90 deleted file mode 100644 index 57a44df92e23254efc9b4be4cf9d6f42b17c70cf..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_troe.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_TROE - ! ################ - INTERFACE - FUNCTION TROE(PCOEF,PKO, PNEXP, PKINF, PMEXP, PM, PT, KVECNPT) - IMPLICIT NONE - INTEGER, INTENT(IN) :: KVECNPT ! no. of points in vector mask - REAL, DIMENSION(KVECNPT) :: TROE - REAL, INTENT(IN) :: PCOEF,PKO, PNEXP, PKINF, PMEXP - REAL, DIMENSION(KVECNPT), INTENT(IN) :: PM, PT - END FUNCTION TROE - END INTERFACE - END MODULE MODI_TROE diff --git a/src/arome/chem/module/modi_troe_equil.F90 b/src/arome/chem/module/modi_troe_equil.F90 deleted file mode 100644 index bba462cafb153b5e36668cb1976c8f035e8096b1..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modi_troe_equil.F90 +++ /dev/null @@ -1,13 +0,0 @@ -! ######spl - MODULE MODI_TROE_EQUIL - ! ###################### - INTERFACE - FUNCTION TROE_EQUIL(PKO, PNEXP, PKINF, PMEXP, PAFACT, PB, PM, PT, KVECNPT) - IMPLICIT NONE - INTEGER, INTENT(IN) :: KVECNPT ! no. of points in vector mask - REAL,DIMENSION(KVECNPT) :: TROE_EQUIL - REAL, INTENT(IN) :: PKO, PNEXP, PKINF, PMEXP, PAFACT, PB - REAL, DIMENSION(KVECNPT), INTENT(IN) :: PM, PT - END FUNCTION TROE_EQUIL - END INTERFACE - END MODULE MODI_TROE_EQUIL diff --git a/src/arome/chem/module/modn_ch_orilam.F90 b/src/arome/chem/module/modn_ch_orilam.F90 deleted file mode 100644 index 29322c06898281262723a2a55a9fe3a82b690db0..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modn_ch_orilam.F90 +++ /dev/null @@ -1,44 +0,0 @@ -! ######spl - MODULE MODN_CH_ORILAM -!! ##################### -!! -!!*** *MODN_CH_ORILAM* -!! -!! PURPOSE -!! ------- -! Namelist for ORILAM aerosol scheme parameters -!! -!!** AUTHOR -!! ------ -!! P. Tulet *CNRM* -! -!! MODIFICATIONS -!! ------------- -!! Original 24/02/05 -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -USE MODD_CH_AEROSOL, ONLY: LORILAM, XN0IMIN, XN0JMIN, LSEDIMAERO, LAERINIT, & - LHETEROSO4, CNUCLEATION, XINISIGI, XINISIGJ, & - XINIRADIUSI, XINIRADIUSJ, LVARSIGI,& - LVARSIGJ, CMINERAL, CORGANIC,& - XSIGIMIN, XSIGIMAX,XSIGJMIN, XSIGJMAX, & - XCOEFRADIMAX, XCOEFRADIMIN, XCOEFRADJMAX, XCOEFRADJMIN,& - CRGUNIT, LRGFIX -!! -!----------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ----------------- -IMPLICIT NONE -SAVE -NAMELIST /NAM_CH_ORILAM/ LORILAM, XN0IMIN, XN0JMIN, LSEDIMAERO, LAERINIT, & - LHETEROSO4, CNUCLEATION, XINISIGI, XINISIGJ, & - XINIRADIUSI, XINIRADIUSJ, LVARSIGI,& - LVARSIGJ, CMINERAL, CORGANIC, & - XSIGIMIN, XSIGIMAX,XSIGJMIN, XSIGJMAX, & - XCOEFRADIMAX, XCOEFRADIMIN, XCOEFRADJMAX, XCOEFRADJMIN,& - CRGUNIT, LRGFIX - -! -END MODULE MODN_CH_ORILAM diff --git a/src/arome/chem/module/modn_dust.F90 b/src/arome/chem/module/modn_dust.F90 deleted file mode 100644 index 9836e87a386f5bb49671ccf1552d553bac29face..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modn_dust.F90 +++ /dev/null @@ -1,33 +0,0 @@ -! ######spl - MODULE MODN_DUST -!! ##################### -!! -!!*** *MODN_DUST* -!! -!! PURPOSE -!! ------- -! Namelist for desertic dust scheme parameters -!! -!!** AUTHOR -!! ------ -!! P. Tulet *CNRM* -! -!! MODIFICATIONS -!! ------------- -!! Original 24/02/05 -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!----------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ----------------- -USE MODD_DUST -IMPLICIT NONE -! -NAMELIST /NAM_DUST/ LDUST, CRGUNITD, LVARSIG, LSEDIMDUST, XN0MIN, XINIRADIUS, & - XINISIG, XSIGMIN, XSIGMAX, XCOEFRADMAX, XCOEFRADMIN, & - NMODE_DST, LRGFIX_DST, LDEPOS_DST -! -END MODULE MODN_DUST diff --git a/src/arome/chem/module/modn_salt.F90 b/src/arome/chem/module/modn_salt.F90 deleted file mode 100644 index fc546213150dd714612024380454f675e25cfde1..0000000000000000000000000000000000000000 --- a/src/arome/chem/module/modn_salt.F90 +++ /dev/null @@ -1,33 +0,0 @@ -! ######spl - MODULE MODN_SALT -!! ##################### -!! -!!*** *MODN_SALT* -!! -!! PURPOSE -!! ------- -! Namelist for marine sea salt scheme parameters -!! -!!** AUTHOR -!! ------ -!! P. Tulet *CNRM* -! -!! MODIFICATIONS -!! ------------- -!! Original 24/02/05 -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!----------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ----------------- -USE MODD_SALT -IMPLICIT NONE -! -NAMELIST /NAM_SALT/ LSALT, CRGUNITS, LVARSIG_SLT,LSEDIMSALT,XN0MIN_SLT, XINIRADIUS_SLT, & - XINISIG_SLT, XSIGMIN_SLT, XSIGMAX_SLT, XCOEFRADMAX_SLT, XCOEFRADMIN_SLT, & - NMODE_SLT, LRGFIX_SLT -! -END MODULE MODN_SALT diff --git a/src/arome/dead_code/modd_dynn.F90 b/src/arome/dead_code/modd_dynn.F90 deleted file mode 100644 index f74faf12893795d671d44a546aacf3d3f5a47681..0000000000000000000000000000000000000000 --- a/src/arome/dead_code/modd_dynn.F90 +++ /dev/null @@ -1,4 +0,0 @@ -MODULE MODD_DYN_n -IMPLICIT NONE -LOGICAL, PARAMETER :: LOCEAN=.FALSE. -ENDMODULE MODD_DYN_n diff --git a/src/arome/dead_code/mode_fmbidon.F90 b/src/arome/dead_code/mode_fmbidon.F90 deleted file mode 100644 index eec30b4a1d772938f25bf8d173fd11b34db8929b..0000000000000000000000000000000000000000 --- a/src/arome/dead_code/mode_fmbidon.F90 +++ /dev/null @@ -1,31 +0,0 @@ -! ######spl - MODULE MODE_FM -! ################# -! -!!**** *MODE_FM* - -!! -!! PURPOSE -!! ------- -! -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!! REFERENCE -!! --------- -!! -!! -!! AUTHOR -!! ------ -!! -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/03/05 -! -! -IMPLICIT NONE -! -END MODULE MODE_FM diff --git a/src/arome/dead_code/mode_fmwritbidon.F90 b/src/arome/dead_code/mode_fmwritbidon.F90 deleted file mode 100644 index c7d50da93759d06bbb0f07d0e2206ac621e26d32..0000000000000000000000000000000000000000 --- a/src/arome/dead_code/mode_fmwritbidon.F90 +++ /dev/null @@ -1,31 +0,0 @@ -! ######spl - MODULE MODE_FMWRIT -! ################# -! -!!**** *MODE_FM* - -!! -!! PURPOSE -!! ------- -! -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!! REFERENCE -!! --------- -!! -!! -!! AUTHOR -!! ------ -!! -!! -!! MODIFICATIONS -!! ------------- -!! Original 02/03/05 -! -! -IMPLICIT NONE -! -END MODULE MODE_FMWRIT diff --git a/src/arome/dead_code/modn_turb.F90 b/src/arome/dead_code/modn_turb.F90 deleted file mode 100644 index 8456d253ac28471f67fcae3b9f90a13c34f0c19c..0000000000000000000000000000000000000000 --- a/src/arome/dead_code/modn_turb.F90 +++ /dev/null @@ -1,37 +0,0 @@ -! ######spl - MODULE MODN_TURB -! ################### -! -!!**** *MODN_TURB* - declaration of namelist NAM_TURB -!! -!! PURPOSE -!! ------- -! The purpose of this module is to specify the namelist NAM_TURB -! which concern the parameters of the turbulence scheme for all models -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! V. Masson * Meteo-France * -!! -!! MODIFICATIONS -!! ------------- -!! Original November 2005 -!------------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CTURB -! -IMPLICIT NONE -! -NAMELIST/NAM_TURB/XPHI_LIM, XSBL_O_BL, XFTOP_O_FSURF -! -END MODULE MODN_TURB diff --git a/src/arome/ext/apl_arome.F90 b/src/arome/ext/apl_arome.F90 index a1c496c1f17091abdf59c284391be7f607c1083a..fcd250c34d3a61c4fb6c7a28e659a35b79f34ac6 100644 --- a/src/arome/ext/apl_arome.F90 +++ b/src/arome/ext/apl_arome.F90 @@ -2911,11 +2911,12 @@ IF (LMFSHAL) THEN ZARG_FLXZTHVMF_ => ZFLXZTHVMF_(:,1:KLEV) ENDIF - CALL ARO_SHALLOW_MF (KKL=IKL, KLON=KFDIA,KLEV=KLEV,KRR=NRR,KRRL=NRRL,& + CALL ARO_SHALLOW_MF (KKL=IKL, KLON=KFDIA, KLEV=KLEV, KFDIA=KFDIA, KRR=NRR, KRRL=NRRL,& & KRRI=NRRI,KSV=NGFL_EXT,HMF_UPDRAFT=CMF_UPDRAFT, HMF_CLOUD=CMF_CLOUD,& & HFRAC_ICE=CFRAC_ICE_SHALLOW_MF,& & OMIXUV=LMIXUV, ONOMIXLG=.FALSE.,KSV_LGBEG=0,KSV_LGEND=0,& & KTCOUNT=KSTEP+1, PTSTEP=ZDT,& + & PDX=YDGEOMETRY%YREGEO%EDELX, PDY=YDGEOMETRY%YREGEO%EDELY,& & PZZ=ZZZ_,PZZF=ZZZ_F_,& & PDZZF=ZDZZ_F_,& & PRHODJ=ZRHODJM__(:,1:KLEV),& @@ -3067,8 +3068,7 @@ IF (LTURB) THEN &LDHARATU=LHARATU,CMICRO=CMICRO,PTSTEP=ZDT,& & PZZ=ZZZ_,PZZF=ZZZ_F_,& & PZZTOP=ZZTOP_,PRHODJ=ZRHODJM__,PTHVREF=ZTHVREFM__,& - & PRHODREF=ZRHODREFM__,HINST_SFU='M',& - & HMF_UPDRAFT=CMF_UPDRAFT,& + & HINST_SFU='M',& & PSFTH=ZSFTH_,PSFRV=ZSFRV_,& & PSFSV=ZSFSVLIMA_,PSFU=ZSFU_,& & PSFV=ZSFV_,PPABSM=ZPABSM__,& diff --git a/src/arome/ext/aro_adjust_lima.F90 b/src/arome/ext/aro_adjust_lima.F90 index 91c9a5fc7c0793e4052e5096b2ac4b05f7ebae22..169373f4974ae90ae14ebd0df4f5f19508cf2737 100644 --- a/src/arome/ext/aro_adjust_lima.F90 +++ b/src/arome/ext/aro_adjust_lima.F90 @@ -87,7 +87,7 @@ USE MODD_PARAM_LIMA USE MODD_NSV ! USE MODI_LIMA_ADJUST -!USE MODI_BUDGET_DDH +!USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE DDH_MIX, ONLY : TYP_DDH USE YOMLDDH, ONLY : TLDDH diff --git a/src/arome/ext/aro_convbu.F90 b/src/arome/ext/aro_convbu.F90 index d6e320a50f83cb2b48fe5cb5567c1da76faf0c68..6cb03579814bc14aebf704684fc84775b686ace3 100644 --- a/src/arome/ext/aro_convbu.F90 +++ b/src/arome/ext/aro_convbu.F90 @@ -3,7 +3,7 @@ USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK USE MODD_BUDGET,ONLY: LBU_ENABLE, LBUDGET_TH, LBUDGET_RV, LBUDGET_RC, LBUDGET_RI -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE DDH_MIX, ONLY : TYP_DDH USE YOMLDDH, ONLY : TLDDH USE YOMMDDH, ONLY : TMDDH diff --git a/src/arome/ext/aro_lima.F90 b/src/arome/ext/aro_lima.F90 index 2bcc226d32dac8816e267357c208a42bd61cd58f..4b10ba776c133c4c6a7c2b292f4e14bcad303be8 100644 --- a/src/arome/ext/aro_lima.F90 +++ b/src/arome/ext/aro_lima.F90 @@ -48,7 +48,7 @@ USE MODD_PARAM_LIMA USE MODD_NSV ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE MODI_LIMA ! diff --git a/src/arome/ext/aro_rain_ice.F90 b/src/arome/ext/aro_rain_ice.F90 index 73443ca917f1654fa502da1020addb717417956f..86e1bca4835346bca3dd168019eaf528bfe6914c 100644 --- a/src/arome/ext/aro_rain_ice.F90 +++ b/src/arome/ext/aro_rain_ice.F90 @@ -94,7 +94,7 @@ USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t USE MODD_SPP_TYPE ! USE MODD_BUDGET, ONLY: TBUDGETDATA, NBUDGET_RH, TBUCONF -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODE_FILL_DIMPHYEX, ONLY: FILL_DIMPHYEX ! USE MODI_RAIN_ICE diff --git a/src/arome/ext/aro_shallow_mf.F90 b/src/arome/ext/aro_shallow_mf.F90 index 4a59175ab8c1a3ebdb725629820e8a1f87b6e109..14d8e784c06a0be708a22225d4aaed7384eb8f14 100644 --- a/src/arome/ext/aro_shallow_mf.F90 +++ b/src/arome/ext/aro_shallow_mf.F90 @@ -1,8 +1,8 @@ ! ######spl - SUBROUTINE ARO_SHALLOW_MF(KKL, KLON,KLEV, KRR, KRRL, KRRI,KSV, & + SUBROUTINE ARO_SHALLOW_MF(KKL, KLON, KLEV, KFDIA, KRR, KRRL, KRRI,KSV, & HMF_UPDRAFT, HMF_CLOUD, HFRAC_ICE, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & - KTCOUNT, PTSTEP, & + KTCOUNT, PTSTEP, PDX, PDY, & PZZ, PZZF, PDZZF, & PRHODJ, PRHODREF, & PPABSM, PEXNM, & @@ -63,9 +63,16 @@ !* 0. DECLARATIONS ! ------------ ! -USE MODD_PARAMETERS, ONLY: JPVEXT, JPHEXT +USE MODD_PARAMETERS, ONLY: JPVEXT +USE MODD_CST, ONLY: CST +USE MODD_NEB, ONLY: NEB +USE MODD_TURB_n, ONLY: TURBN +USE MODD_CTURB, ONLY: CSTURB +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALLN +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t ! USE MODI_SHALLOW_MF +USE MODE_FILL_DIMPHYEX, ONLY: FILL_DIMPHYEX ! IMPLICIT NONE ! @@ -77,6 +84,7 @@ INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground ! atmosphere top, -1 otherwise INTEGER, INTENT(IN) :: KLON !NPROMA under CPG INTEGER, INTENT(IN) :: KLEV !Number of vertical levels +INTEGER, INTENT(IN) :: KFDIA INTEGER, INTENT(IN) :: KRR ! Number of moist variables INTEGER, INTENT(IN) :: KRRL ! Number of liquide water variables INTEGER, INTENT(IN) :: KRRI ! Number of ice variables @@ -93,6 +101,8 @@ INTEGER, INTENT(IN) :: KSV_LGEND ! last index of lag. tracer INTEGER, INTENT(IN) :: KTCOUNT ! Temporal loop counter REAL, INTENT(IN) :: PTSTEP ! Time step +REAL, INTENT(IN) :: PDX ! grid size along x-axis +REAL, INTENT(IN) :: PDY ! grid size along y-axis ! REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PZZ ! Height of layer boundaries REAL, DIMENSION(KLON,KLEV), INTENT(IN) :: PZZF ! Height of level @@ -138,23 +148,12 @@ REAL, DIMENSION(KLON,KLEV), INTENT(INOUT) :: PEMF ! updraft mass flux ! !* 0.2 Declarations of local variables : ! -INTEGER :: JRR ! Loop index for the moist -INTEGER :: IIB ! Define the physical domain -INTEGER :: IIE ! -INTEGER :: IJB ! -INTEGER :: IJE ! -INTEGER :: IKB ! -INTEGER :: IKE ! -INTEGER :: IKA, IKU -INTEGER :: JI, JJ, JL, JK ! -INTEGER ::II INTEGER, DIMENSION(size(PRHODJ,1)) :: IKLCL,IKETL,IKCTL REAL,DIMENSION(size(PRHODJ,1),size(PRHODJ,2)) :: ZFLXZTHMF,ZFLXZRMF,ZFLXZUMF,ZFLXZVMF REAL,DIMENSION(size(PRHODJ,1),size(PRHODJ,2)) :: ZDETR,ZENTR -! -! - +TYPE(DIMPHYEX_t) :: YLDIMPHYEX REAL :: ZIMPL ! degree of implicitness +REAL(KIND=JPRB) :: ZHOOK_HANDLE ! ! ! @@ -163,23 +162,10 @@ REAL :: ZIMPL ! degree of implicitness !* 1. PRELIMINARY COMPUTATIONS ! ------------------------ ! -REAL(KIND=JPRB) :: ZHOOK_HANDLE IF (LHOOK) CALL DR_HOOK('ARO_SHALLOW_MF',0,ZHOOK_HANDLE) - -IIB=1+JPHEXT -IIE=SIZE(PZZ,1) - JPHEXT -IJB=1+JPHEXT -IJE=1 - JPHEXT -IF(KKL==1)THEN - IKA=1 - IKU=SIZE(PZZ,2) -ELSE - IKA=SIZE(PZZ,2) - IKU=1 -ENDIF -IKB=IKA+KKL*JPVEXT -IKE=IKU-KKL*JPVEXT +!Dimensions +CALL FILL_DIMPHYEX(YLDIMPHYEX, KLON, 1, KLEV, JPVEXT, KFDIA) ! ! !------------------------------------------------------------------------------ @@ -219,11 +205,12 @@ ZIMPL=1. ! ! --------------------------------- ! - CALL SHALLOW_MF(KKA=IKA,KKU=IKU,KKL=KKL,KRR=KRR,KRRL=KRRL,KRRI=KRRI, & + CALL SHALLOW_MF(YLDIMPHYEX, CST, NEB, PARAM_MFSHALLN, TURBN, CSTURB, & + &KRR=KRR, KRRL=KRRL, KRRI=KRRI, KSV=KSV, & &HMF_UPDRAFT=HMF_UPDRAFT, HMF_CLOUD=HMF_CLOUD,HFRAC_ICE=HFRAC_ICE,OMIXUV=OMIXUV, & &ONOMIXLG=ONOMIXLG,KSV_LGBEG=KSV_LGBEG,KSV_LGEND=KSV_LGEND, & &PIMPL_MF=ZIMPL, PTSTEP=PTSTEP, & - &PDZZ=PDZZF,PZZ=PZZ, & + &PDZZ=PDZZF,PZZ=PZZ, & &PRHODJ=PRHODJ,PRHODREF=PRHODREF, & &PPABSM=PPABSM,PEXNM=PEXNM, & &PSFTH=PSFTH,PSFRV=PSFRV, & @@ -235,7 +222,7 @@ ZIMPL=1. &PTHL_UP=PTHL_UP,PRT_UP=PRT_UP,PRV_UP=PRV_UP,PRC_UP=PRC_UP,PRI_UP=PRI_UP, & &PU_UP=PU_UP, PV_UP=PV_UP, PTHV_UP=PTHV_UP, PW_UP=PW_UP, & &PFRAC_UP=PFRAC_UP,PEMF=PEMF,PDETR=ZDETR,PENTR=ZENTR, & - &KKLCL=IKLCL,KKETL=IKETL,KKCTL=IKCTL,PDX=0.,PDY=0. ) + &KKLCL=IKLCL,KKETL=IKETL,KKCTL=IKCTL,PDX=PDX,PDY=PDY ) ! ! !------------------------------------------------------------------------------ diff --git a/src/arome/ext/aro_shallow_mf.h b/src/arome/ext/aro_shallow_mf.h index 07cdb7a7d38e75a76c8c45716c095ddcd22a0e1c..269e53337835554ff950c01a45d9466bd047dab4 100644 --- a/src/arome/ext/aro_shallow_mf.h +++ b/src/arome/ext/aro_shallow_mf.h @@ -1,8 +1,8 @@ INTERFACE - SUBROUTINE ARO_SHALLOW_MF(KKL, KLON,KLEV, KRR, KRRL, KRRI,KSV,& + SUBROUTINE ARO_SHALLOW_MF(KKL, KLON, KLEV, KFDIA, KRR, KRRL, KRRI,KSV,& & HMF_UPDRAFT, HMF_CLOUD, HFRAC_ICE, OMIXUV,& & ONOMIXLG,KSV_LGBEG,KSV_LGEND,& - & KTCOUNT, PTSTEP,& + & KTCOUNT, PTSTEP, PDX, PDY,& & PZZ, PZZF,PDZZF,& & PRHODJ, PRHODREF,& & PPABSM, PEXNM,& @@ -18,6 +18,7 @@ USE PARKIND1 ,ONLY : JPIM ,JPRB INTEGER(KIND=JPIM), INTENT(IN) :: KKL INTEGER(KIND=JPIM), INTENT(IN) :: KLON INTEGER(KIND=JPIM), INTENT(IN) :: KLEV +INTEGER(KIND=JPIM), INTENT(IN) :: KFDIA INTEGER(KIND=JPIM), INTENT(IN) :: KRR INTEGER(KIND=JPIM), INTENT(IN) :: KRRL INTEGER(KIND=JPIM), INTENT(IN) :: KRRI @@ -31,6 +32,8 @@ INTEGER(KIND=JPIM), INTENT(IN) :: KSV_LGBEG INTEGER(KIND=JPIM), INTENT(IN) :: KSV_LGEND INTEGER(KIND=JPIM), INTENT(IN) :: KTCOUNT REAL(KIND=JPRB), INTENT(IN) :: PTSTEP +REAL(KIND=JPRB), INTENT(IN) :: PDX +REAL(KIND=JPRB), INTENT(IN) :: PDY REAL(KIND=JPRB), DIMENSION(KLON,KLEV), INTENT(IN) :: PZZ REAL(KIND=JPRB), DIMENSION(KLON,KLEV), INTENT(IN) :: PZZF REAL(KIND=JPRB), DIMENSION(KLON,KLEV), INTENT(IN) :: PDZZF diff --git a/src/arome/ext/aro_startbu.F90 b/src/arome/ext/aro_startbu.F90 index f3dd9f9dcd4e2e4e6e34403560d24d6579be9af6..8eebeb0fca08d209f47737ac8847c262c14e73c0 100644 --- a/src/arome/ext/aro_startbu.F90 +++ b/src/arome/ext/aro_startbu.F90 @@ -44,7 +44,7 @@ USE YOMHOOK , ONLY : LHOOK, DR_HOOK ! ------------ ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE DDH_MIX , ONLY : TYP_DDH USE YOMLDDH , ONLY : TLDDH USE YOMMDDH , ONLY : TMDDH diff --git a/src/arome/ext/aro_subudget.F90 b/src/arome/ext/aro_subudget.F90 deleted file mode 100644 index e69ed7f8c38249f12568c37e104e75f1aaf65771..0000000000000000000000000000000000000000 --- a/src/arome/ext/aro_subudget.F90 +++ /dev/null @@ -1,460 +0,0 @@ -! ######spl - SUBROUTINE ARO_SUBUDGET(KLON,KLEV,PTSTEP) - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ########################################################################## - -!**** *ARO_SUBUDGET* - Initialize common meso_NH MODD_ used in BUDGET for DDH in AROME - -! Purpose. -! -------- -! Set implicit values for MODD_BUDGET in the way needed for DDH in AROME - -!** Interface. -! ---------- -! *CALL* *ARO_SUBUDGET - -! Explicit arguments : -! -------------------- -! None - -! Implicit arguments : -! -------------------- -! None - -! Method. -! ------- -! To use budgets in DDH for AROME, budget must have type CART. -! First dimension is NPROMA and second dimension is 1. Budgets -! are reset after each tipe step. Processes not used in AROME are -! assigned 3. -! -! Externals. -! ---------- - -! Reference. -! ---------- -! Documentation AROME - -! Author. -! ------- -! T. Kovacic -! -! Modifications. -! -------------- -! Original : 05-04-27 -! ------------------------------------------------------------------ -!USE MODD_PARAMETERS, ONLY : LWARM -USE MODD_BUDGET -USE MODD_DYN, ONLY : LCORIO - -IMPLICIT NONE -! ------------------------------------------------------------------ -! -!* 0.1 Declarations of dummy arguments : -! -! -INTEGER, INTENT(IN) :: KLON !NPROMA under CPG -INTEGER, INTENT(IN) :: KLEV !Number of vertical levels -REAL, INTENT(IN) :: PTSTEP ! time step - -!********************************************************************************* - - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('ARO_SUBUDGET',0,ZHOOK_HANDLE) - -CALL TBUCONF_ASSOCIATE() - -LBU_ENABLE = .TRUE. - -LCORIO = .TRUE. - -CBUTYPE = 'CART' - -NBUMOD= 1 -! -XBULEN = PTSTEP -! -NBUSTEP = 1 - -XBUWRI = -1 ! not used - -NBUWRNB = -1 ! not used, in INI_BUDGET - -NBUTSHIFT = -1 ! not used -! -NBUKL = 2 -NBUKH = KLEV + 1 -LBU_KCP = .FALSE. - -! -! Variables used by the cartesian box case ('CART') only -! -NBUIL = 1 -NBUIH = KLON -NBUJL = 1 -NBUJH = 1 -LBU_ICP = .FALSE. -LBU_JCP = .FALSE. -! -! Variables used by the mask case ('MASK') only -! -NBUMASK = -1 ! not used, in INI_BUDGET -! -NBUTIME = -1 ! not used -! - -! -!******************************************************************************* -!**** W A R N I N G ! ! ! -! Budgets are initialized with subroutine AROINI_BUDGET which calls MNH -! subroutine INI_BUDGET. In this subroutine budgets are defined so that 4th -! process must be Asselin filter and it can be activated only with 0 or 1. -! Our choice is 0. With this choise we don't have to make a budget for Asselin -! filter in ARO_STARTBU as it is obligatory in INITIAL_GUESS, it's equivalent in MNH. -!********************************************************************************* - - -! Budget array XBURU : RU budget -! MNH namelist: NAM_BURU - - LBU_RU=.TRUE. - NASSEU =0 ! time filter - NNESTU =3 ! Efffect of 2way nesting on U - NADVXU =3 ! advection along X - NADVYU =3 ! advection along Y - NADVZU =3 ! advection along Z - NFRCU =3 ! forcing - NCURVU =3 ! curvature - NCORU =3 ! Coriolis terms - NDIFU =3 ! numerical diffusion - NRELU =3 ! relaxation - NHTURBU =4 !horizontal TURBulence - NVTURBU =1 !vertical turbulence - NPRESU =3 ! pressure term - -! Budget array XBURV, - - LBU_RV=.TRUE. ! when the budget of RV is not performed -! - NASSEV =0 ! time filter - NNESTV =3 ! Efffect of 2way nesting on V - NADVXV =3 ! advection along X - NADVYV =3 ! advection along Y - NADVZV =3 ! advection along Z - NFRCV =3 ! forcing - NCURVV =3 ! curvature - NCORV =3 ! Coriolis terms - NDIFV =3 ! numerical diffusion - NRELV =3 ! relaxation - NHTURBV =4 ! horizontal turbulence - NVTURBV =1 ! vertical turbulence - NPRESV =3 ! pressure term - -! Budget array XBURW -! -! Allowed processes for the budget of RW (wind vertical component) -! -! MNH namelist: NAM_BURW -! - LBU_RW=.TRUE. ! when the budget of RW is not performed -! - NASSEW = 0 ! time filter - NNESTW = 3 ! Efffect of 2way nesting on W - NADVXW = 3 ! advection along X - NADVYW = 3 ! advection along Y - NADVZW = 3 ! advection along Z - NFRCW = 3 ! forcing - NCURVW = 3 ! curvature - NCORW = 3 ! Coriolis terms - NGRAVW = 3 ! gravity term - NDIFW = 3 ! numerical diffusion - NRELW = 3 ! relaxation - NHTURBW = 4 ! horizontal turbulence - NVTURBW = 1 ! vertical turbulence - NPRESW = 3 ! pressure term -! -! Allowed processes for the budget of RTH (potential temperature) -! -! Budget array XBURTH -! MNH namelist: NAM_BURTH -! - LBU_RTH=.TRUE. ! when the budget of RTH is not performed -! - NASSETH = 0 ! time filter - NNESTTH = 3 ! Efffect of 2way nesting on Th - NADVXTH = 3 ! advection along X - NADVYTH = 3 ! advection along Y - NADVZTH = 3 ! advection along Z - NFRCTH = 3 ! forcing - NPREFTH = 3 ! theta source term due to the reference pressure - ! (Dyn. Sources) only present if KRR>0 - NDIFTH = 3 ! numerical diffusion - NRELTH = 3 ! relaxation - NRADTH = 1 ! RADiation - NDCONVTH = 1 ! Deep CONVection - NHTURBTH = 4 ! horizontal turbulence - NVTURBTH = 1 ! vertical turbulence - NDISSHTH = 1 ! dissipative heating - NNEGATH = 1 ! negative correction induced by hydrometeors - NREVATH = 1 ! rain evaporation - NCONDTH = 3 ! evaporation/condensation - NHENUTH = 1 ! HEterogenous NUcleation ICE3 - NHONTH = 1 ! HOmogeneous Nucleation ICE3 - NSFRTH = 1 ! Spontaneous FReezing ICE3 - NDEPSTH = 1 ! DEPosition on Snow ICE3 - NDEPGTH = 1 ! DEPosition on Graupel ICE3 - NRIMTH = 1 ! RIMing of cloudwater ICE3 - NACCTH = 1 ! ACCretion of rainwater ICE3 - NCFRZTH = 1 ! Conversion FReeZing ICE3 - NWETGTH = 1 ! WET Growth of graupel ICE3 - NDRYGTH = 1 ! DRY Growth of graupel ICE3 - NGMLTTH = 1 ! Graupel MeLTing ICE3 - NIMLTTH = 1 ! Ice MeLTing ICE3 - NBERFITH = 1 ! BERgeron-FIndeisen gth. ICE3 - NCDEPITH = 1 ! Cond./DEPosition on ice ICE3 -! -! Allowed processes for the budget of RTKE (kinetic energy) -! -! Budget array XBURTKE -! MNH namelist: NAM_BURTKE -! - LBU_RTKE=.TRUE. ! when the budget of RTKE is not performed -! - NASSETKE = 0 ! time filter - NADVXTKE = 3 ! advection along X - NADVYTKE = 3 ! advection along Y - NADVZTKE = 3 ! advection along Z - NFRCTKE = 3 ! forcing - NDIFTKE = 3 ! numerical diffusion - NRELTKE = 3 ! relaxation - NDPTKE = 1 ! dynamic production of TKE - NTPTKE = 1 ! thermal production of TKE - NDISSTKE = 1 ! dissipation of TKE - NTRTKE = 1 ! turbulent transport of TKE -! -! -! Allowed processes for the budget of moist variable RRV (water vapor) -! -! Budget array XBURRV -! MNH namelist: NAM_BURRV -! - LBU_RRV=.TRUE. ! when the budget of RRV is not performed -! - NASSERV = 0 ! time filter - NNESTRV = 3 ! Efffect of 2way nesting on Rv - NADVXRV = 3 ! advection along X - NADVYRV = 3 ! advection along Y - NADVZRV = 3 ! advection along Z - NFRCRV = 3 ! forcing - NDIFRV = 3 ! numerical diffusion - NRELRV = 3 ! relaxation - NDCONVRV = 1 ! Deep CONVection - NHTURBRV = 4 ! horizontal turbulence - NVTURBRV = 1 ! vertical turbulence - NNEGARV = 1 ! negative correction - NREVARV = 1 ! rain evaporation - NCONDRV = 3 ! evaporation/condensation - NHENURV = 1 ! HEterogenous NUcleation ICE3 - NDEPSRV = 1 ! DEPosition on Snow ICE3 - NDEPGRV = 1 ! DEPosition on Graupel ICE3 - NCDEPIRV = 1 ! Cond./DEPosition on ice ICE3 -! -! Budget array XBURRC -! Allowed processes for the budget of moist variable RRC (cloud water) -! -! MNH namelist: NAM_BURRC -! - LBU_RRC=.TRUE. ! when the budget of RRC is not performed -! - NASSERC = 0 ! time filter - NNESTRC = 3 ! Efffect of 2way nesting on Rc - NADVXRC = 3 ! advection along X - NADVYRC = 3 ! advection along Y - NADVZRC = 3 ! advection along Z - NFRCRC = 3 ! forcing - NDIFRC = 3 ! numerical diffusion - NRELRC = 3 ! relaxation - NDCONVRC = 1 ! Deep CONVection - NHTURBRC = 4 ! horizontal turbulence - NVTURBRC = 1 ! vertical turbulence - NNEGARC = 1 ! negative correction - NACCRRC = 1 ! accretion - NAUTORC = 1 ! autoconversion - NCONDRC = 3 ! evaporation/condensation - NHONRC = 1 ! HOmogeneous Nucleation ICE3 - NRIMRC = 1 ! RIMing of cloudwater ICE3 - NWETGRC = 1 ! WET Growth of graupel ICE3 - NDRYGRC = 1 ! DRY Growth of graupel ICE3 - NIMLTRC = 1 ! Ice MeLTing ICE3 - NBERFIRC = 1 ! BERgeron-FIndeisen gth. ICE3 - NCDEPIRC = 1 ! Cond./DEPosition on ice ICE3 - NHENURC = 3 ! CCN Activation C2R2 - NSEDIRC = 3 ! sedimentation C2R2 -! -! Allowed processes for the budget of moist variable RRR (rain water) -! -! Budget array XBURRR -! MNH namelist: NAM_BURRR -! - LBU_RRR=.TRUE. ! when the budget of RRR is not performed -! - NASSERR = 0 ! time filter - NNESTRR = 3 ! Efffect of 2way nesting on Rr - NADVXRR = 3 ! advection along X - NADVYRR = 3 ! advection along Y - NADVZRR = 3 ! advection along Z - NFRCRR = 3 ! forcing - NDIFRR = 3 ! numerical diffusion - NRELRR = 3 ! relaxation - NNEGARR = 1 ! negative correction - NACCRRR = 1 ! accretion - NAUTORR = 1 ! autoconversion - NREVARR = 1 ! rain evaporation - NSEDIRR = 1 ! sedimentation - NSFRRR = 1 ! Spontaneous FReezing ICE3 - NACCRR = 1 ! ACCretion of rainwater ICE3 - NCFRZRR = 1 ! Conversion FReeZing ICE3 - NWETGRR = 1 ! WET Growth of graupel ICE3 - NDRYGRR = 1 ! DRY Growth of graupel ICE3 - NGMLTRR = 1 ! Graupel MeLTing ICE3 -! -! Allowed processes for the budget of moist variable RRI (ice) -! -! Budget array XBURRI -! MNH namelist: NAM_BURRI -! - LBU_RRI=.TRUE. ! when the budget of RRI is not performed -! - NASSERI = 0 ! time filter - NNESTRI = 3 ! Efffect of 2way nesting on Ri - NADVXRI = 3 ! advection along X - NADVYRI = 3 ! advection along Y - NADVZRI = 3 ! advection along Z - NFRCRI = 3 ! forcing - NDIFRI = 3 ! numerical diffusion - NRELRI = 3 ! relaxation - NDCONVRI = 1 ! Deep CONVection - NHTURBRI = 4 ! horizontal turbulence - NVTURBRI = 1 ! vertical turbulence - NNEGARI = 1 ! negative correction - NSEDIRI = 1 ! SEDImentation ICE3 - NHENURI = 1 ! HEterogenous NUcleation ICE3 - NHONRI = 1 ! HOmogeneous Nucleation ICE3 - NAGGSRI = 1 ! AGGregation of snow ICE3 - NAUTSRI = 1 ! AUToconversion of ice ICE3 - NCFRZRI = 1 ! Conversion FReeZing ICE3 - NWETGRI = 1 ! WET Growth of graupel ICE3 - NDRYGRI = 1 ! DRY Growth of graupel ICE3 - NIMLTRI = 1 ! Ice MeLTing ICE3 - NBERFIRI = 1 ! BERgeron-FIndeisen gth. ICE3 - NCDEPIRI = 1 ! Cond./DEPosition on ice ICE3 -! -! Allowed processes for the budget of moist variable RRS (snow) -! -! Budget array XBURRS -! MNH namelist: NAM_BURRS -! - LBU_RRS=.TRUE. ! when the budget of RRS is not performed -! - NASSERS = 0 ! time filter - NNESTRS = 3 ! Efffect of 2way nesting on Rs - NADVXRS = 3 ! advection along X - NADVYRS = 3 ! advection along Y - NADVZRS = 3 ! advection along Z - NFRCRS = 3 ! forcing - NDIFRS = 3 ! numerical diffusion - NRELRS = 3 ! relaxation - NNEGARS = 1 ! negative correction - NSEDIRS = 1 ! SEDImentation ICE3 - NDEPSRS = 1 ! DEPosition on Snow ICE3 - NAGGSRS = 1 ! AGGregation of snow ICE3 - NAUTSRS = 1 ! AUToconversion of ice ICE3 - NRIMRS = 1 ! RIMing of cloudwater ICE3 - NACCRS = 1 ! ACCretion of rainwater ICE3 - NCMELRS = 1 ! Conversion MeLTing ICE3 - NWETGRS = 1 ! WET Growth of graupel ICE3 - NDRYGRS = 1 ! DRY Growth of graupel ICE3 -! -! Allowed processes for the budget of moist variable RRG (graupel) -! -! Budget array XBURRG -! MNH namelist: NAM_BURRG -! - LBU_RRG=.TRUE. ! when the budget of RRG is not performed -! - NASSERG = 0 ! time filter - NNESTRG = 3 ! Efffect of 2way nesting on Rg - NADVXRG = 3 ! advection along X - NADVYRG = 3 ! advection along Y - NADVZRG = 3 ! advection along Z - NFRCRG = 3 ! forcing - NDIFRG = 3 ! numerical diffusion - NRELRG = 3 ! relaxation - NNEGARG = 1 ! negative correction - NSEDIRG = 1 ! SEDImentation ICE3 - NSFRRG = 1 ! Spontaneous FReezing ICE3 - NDEPGRG = 1 ! DEPosition on Snow ICE3 - NRIMRG = 1 ! RIMing of cloudwater ICE3 - NACCRG = 1 ! ACCretion of rainwater ICE3 - NCMELRG = 1 ! Conversion MeLTing ICE3 - NCFRZRG = 1 ! Conversion FReeZing ICE3 - NWETGRG = 1 ! WET Growth of graupel ICE3 - NDRYGRG = 1 ! DRY Growth of graupel ICE3 - NGMLTRG = 1 ! Graupel MeLTing ICE3 -! -! Allowed processes for the budget of moist variable RRH (hail) -! -! Budget array XBURRH ! -! MNH namelist: NAM_BURRH -! - LBU_RRH=.FALSE. ! when the budget of RRH is not performed -! - NASSERH = 0 ! time filter - NNESTRH = 3 ! Efffect of 2way nesting on Rh - NADVXRH = 3 ! advection along X - NADVYRH = 3 ! advection along Y - NADVZRH = 3 ! advection along Z - NFRCRH = 3 ! forcing - NDIFRH = 3 ! numerical diffusion - NRELRH = 3 ! relaxation - NNEGARH = 3 ! negative correction -! -! MNH namelist: NAM_BURSV -! - LBU_RSV=.FALSE. ! the budget of RSVx is not performed -! - NASSESV = 0 ! Asselin-Robert time filter - NNESTSV = 3 ! Efffect of 2way nesting on Sv - NADVXSV = 3 ! advection along X - NADVYSV = 3 ! advection along Y - NADVZSV = 3 ! advection along Z - NFRCSV = 3 ! forcing - NDIFSV = 3 ! numerical diffusion - NRELSV = 3 ! relaxation - NDCONVSV = 1 ! Deep CONVection - NHTURBSV = 4 ! horizontal turbulence - NVTURBSV = 1 ! vertical turbulence - NCHEMSV = 1 ! chemistry activity -! -! -! -LBUDGET_U =.TRUE. ! flag to compute budget of RhoJu and/or LES budgets with u -LBUDGET_V =.TRUE. ! flag to compute budget of RhoJv and/or LES budgets with u -LBUDGET_W =.TRUE. ! flag to compute budget of RhoJw and/or LES budgets with u -LBUDGET_TH =.TRUE. ! flag to compute budget of RhoJTh and/or LES budgets with th -LBUDGET_TKE=.TRUE. ! flag to compute budget of RhoJTke and/or LES budgets with Tke -LBUDGET_RV =.TRUE. ! flag to compute budget of RhoJrv and/or LES budgets with rv -LBUDGET_RC =.TRUE. ! flag to compute budget of RhoJrc and/or LES budgets with rc -LBUDGET_RR =.TRUE. ! flag to compute budget of RhoJrr and/or LES budgets with rr -LBUDGET_RI =.TRUE. ! flag to compute budget of RhoJri and/or LES budgets with ri -LBUDGET_RS =.TRUE. ! flag to compute budget of RhoJrs and/or LES budgets with rs -LBUDGET_RG =.TRUE. ! flag to compute budget of RhoJrg and/or LES budgets with rg -LBUDGET_RH =.TRUE. ! flag to compute budget of RhoJrh and/or LES budgets with rh -LBUDGET_SV =.FALSE. ! flag to compute budget of RhoJsv and/or LES budgets with sv -! -IF (LHOOK) CALL DR_HOOK('ARO_SUBUDGET',1,ZHOOK_HANDLE) -RETURN -END SUBROUTINE ARO_SUBUDGET - diff --git a/src/arome/ext/aro_turb_mnh.F90 b/src/arome/ext/aro_turb_mnh.F90 index fb1ba28ff42fb40b9e977fb48c7d6efe214b537c..dcf9ce49133324a2c97a21efa953804d66a96969 100644 --- a/src/arome/ext/aro_turb_mnh.F90 +++ b/src/arome/ext/aro_turb_mnh.F90 @@ -2,12 +2,12 @@ SUBROUTINE ARO_TURB_MNH( KKA,KKU,KKL,KLON,KLEV,KRR,KRRL,KRRI,KSV, & KTCOUNT, KGRADIENTS, LDHARATU, CMICRO, PTSTEP, & PZZ, PZZF, PZZTOP, & - PRHODJ, PTHVREF,PRHODREF,HINST_SFU,HMF_UPDRAFT,& + PRHODJ, PTHVREF,HINST_SFU, & PSFTH,PSFRV,PSFSV,PSFU,PSFV, & PPABSM,PUM,PVM,PWM,PTKEM,PEPSM,PSVM,PSRCM, & PTHM,PRM, & PRUS,PRVS,PRWS,PRTHS,PRRS,PRSVSIN,PRSVS,PRTKES,PRTKES_OUT,PREPSS, & - ZHGRAD,PSIGS,OSUBG_COND, & + PHGRAD,PSIGS,OSUBG_COND, & PFLXZTHVMF,PLENGTHM,PLENGTHH,MFMOIST, & PDRUS_TURB,PDRVS_TURB, & PDRTHLS_TURB,PDRRTS_TURB,PDRSVS_TURB, & @@ -106,7 +106,6 @@ INTEGER, INTENT(IN) :: KTCOUNT ! Temporal loop counter INTEGER, INTENT(IN) :: KGRADIENTS ! Number of stored horizontal gradients LOGICAL, INTENT(IN) :: LDHARATU ! HARATU scheme active CHARACTER (LEN=4), INTENT(IN) :: CMICRO ! Microphysics scheme -CHARACTER (LEN=4), INTENT(IN) :: HMF_UPDRAFT ! Type of mass flux scheme REAL, INTENT(IN) :: PTSTEP ! Time step ! ! @@ -119,8 +118,6 @@ REAL, DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: PRHODJ !Dry density * Jaco REAL, DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: MFMOIST !Moist mass flux from Dual scheme REAL, DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: PTHVREF ! Virtual Potential ! Temperature of the reference state -REAL, DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: PRHODREF ! dry density of the - ! reference state CHARACTER(LEN=1) , INTENT(IN) :: HINST_SFU ! temporal location of the ! surface friction flux ! @@ -243,12 +240,10 @@ REAL,DIMENSION(KLON,1,KLEV+2) :: ZWRC ! cloud water flux REAL,DIMENSION(KLON,1,KLEV+2,KSV) :: ZWSV,ZSVM,ZRSVS,ZDRSVS_TURB ! scalar flux REAL,DIMENSION(KLON,1,KLEV+2) :: ZZZ ! Local value of PZZ REAL,DIMENSION(KLON,1,KLEV+2,KRR) :: ZRM,ZRRS -REAL,DIMENSION(KLON,1,KLEV+2,KGRADIENTS) :: ZHGRAD ! Horizontal Gradients +REAL,DIMENSION(KLON,1,KLEV+2,KGRADIENTS) :: PHGRAD ! Horizontal Gradients ! REAL, DIMENSION(KLON,1), TARGET :: ZERO, ZONE ! -CHARACTER(LEN=4) :: CL -! TYPE(DIMPHYEX_t) :: YLDIMPHYEX ! !------------------------------------------------------------------------------ @@ -411,7 +406,6 @@ ENDDO ! CALL VERTICAL_EXTEND(PRHODJ) CALL VERTICAL_EXTEND(PTHVREF) -CALL VERTICAL_EXTEND(PRHODREF) CALL VERTICAL_EXTEND(PPABSM) CALL VERTICAL_EXTEND(PUM) CALL VERTICAL_EXTEND(PVM) @@ -456,7 +450,7 @@ CALL TURB (CST,CSTURB,TBUCONF,TURBN, YLDIMPHYEX,& & ISPLIT,IMI, KSV, KSV_LGBEG, KSV_LGEND, & & HPROGRAM, O2D, ONOMIXLG, OFLAT, LLES_CALL,OCOUPLES,OBLOWSNOW,& & OTURB_FLX,OTURB_DIAG,OSUBG_COND,OCOMPUTE_SRC, & - & ORMC01,OOCEAN,ODEEPOC,LDHARATU,.FALSE., & + & ORMC01,OOCEAN,ODEEPOC,LDHARATU, .FALSE., & & HTURBDIM,HTURBLEN,'NONE','NONE',CMICRO, & & ZIMPL, & & 2*PTSTEP,ZTFILE, & diff --git a/src/arome/ext/aro_turb_mnh.h b/src/arome/ext/aro_turb_mnh.h index a09d5ddbbb1a467dd20955ff90b1bd279bbb69c9..87d261e866fd200d4e6b43fc953da7c76ac0b63b 100644 --- a/src/arome/ext/aro_turb_mnh.h +++ b/src/arome/ext/aro_turb_mnh.h @@ -2,7 +2,7 @@ INTERFACE SUBROUTINE ARO_TURB_MNH( KKA,KKU,KKL,KLON,KLEV, KRR, KRRL, KRRI,KSV,& & KTCOUNT,KGRADIENTS, LDHARATU, CMICRO, PTSTEP,& & PZZ, PZZF, PZZTOP,& - & PRHODJ, PTHVREF,PRHODREF,HINST_SFU,HMF_UPDRAFT,& + & PRHODJ, PTHVREF,HINST_SFU,& & PSFTH,PSFRV,PSFSV,PSFU,PSFV,& & PPABSM,PUM,PVM,PWM,PTKEM,PEPSM,PSVM,PSRCM,& & PTHM,PRM,& @@ -40,7 +40,6 @@ REAL(KIND=JPRB), DIMENSION(KLON), INTENT(IN) :: PZZTOP REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: PRHODJ REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: MFMOIST REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: PTHVREF -REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV), INTENT(INOUT) :: PRHODREF CHARACTER*1 , INTENT(IN) :: HINST_SFU REAL(KIND=JPRB), DIMENSION(KLON,1), INTENT(INOUT) :: PSFTH,PSFRV REAL(KIND=JPRB), DIMENSION(KLON,1), INTENT(INOUT) :: PSFU,PSFV @@ -70,7 +69,6 @@ REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(OUT) :: PDRTHLS_TURB REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(OUT) :: PDRRTS_TURB REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV,KSV), INTENT(OUT) :: PDRSVS_TURB REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(INOUT) :: PFLXZTHVMF -CHARACTER (LEN=4), INTENT(IN) :: HMF_UPDRAFT LOGICAL , INTENT(INOUT) :: OSUBG_COND REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(OUT) :: PDP REAL(KIND=JPRB), DIMENSION(KLON,1,KLEV+2), INTENT(OUT) :: PTP diff --git a/src/arome/ext/aroini_budget.F90 b/src/arome/ext/aroini_budget.F90 index dc8aa470aa1a3ba869a75961f345a1db40d87f19..bcb320205ea8ae01daef4f8937c0b80b2e2c1b18 100644 --- a/src/arome/ext/aroini_budget.F90 +++ b/src/arome/ext/aroini_budget.F90 @@ -1,11 +1,6 @@ ! ######spl -SUBROUTINE AROINI_BUDGET(LDBU_ENABLE, HLUOUT,KULOUT, PTSTEP,KSV,KRR, & - HRAD,HDCONV,HSCONV,HTURB,HTURBDIM,HCLOUD, & - HMET_ADV_SCHEME, HSV_ADV_SCHEME) -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK +SUBROUTINE AROINI_BUDGET(LDBU_ENABLE) ! -!!!!old definition SUBROUTINE AROINI_BUDGET !**** *AROINI_BUDGET* - Initialize common meso_NH MODD_ used in BUDGET for AROME ! Purpose. @@ -45,14 +40,19 @@ USE YOMHOOK , ONLY : LHOOK, DR_HOOK ! -------------- ! Original : 03-12-12 ! T. Kovacic 05-04-27 Initialization for DDH +! S. Riette July-22 Simplification ! ------------------------------------------------------------------ ! !* 0. DECLARATIONS ! ------------ ! -USE MODD_BUDGET !!!!, ONLY : NBUMOD, LBUDGET_U, LBUDGET_V, LBUDGET_W, LBUDGET_SV& -! !!!! &, LBUDGET_RV, LBUDGET_RC, LBUDGET_RI, LBUDGET_TH -USE MODI_INI_BUDGET +USE PARKIND1, ONLY : JPRB +USE YOMHOOK , ONLY : LHOOK, DR_HOOK +! +USE MODD_BUDGET, ONLY : LBU_ENABLE, LBUDGET_U, LBUDGET_V, LBUDGET_W, LBUDGET_SV, & + & LBUDGET_TH, LBUDGET_TKE, & + & LBUDGET_RV, LBUDGET_RC, LBUDGET_RR, LBUDGET_RI, LBUDGET_RS, & + & LBUDGET_RG, LBUDGET_RH, TBUCONF_ASSOCIATE ! IMPLICIT NONE ! @@ -60,135 +60,34 @@ IMPLICIT NONE ! ! LOGICAL :: LDBU_ENABLE -CHARACTER (LEN=*), INTENT(IN) :: HLUOUT ! name of output listing -INTEGER, INTENT(IN) :: KULOUT -REAL, INTENT(IN) :: PTSTEP ! time step -INTEGER, INTENT(IN) :: KSV ! number of scalar variables -INTEGER, INTENT(IN) :: KRR ! number of moist variables -CHARACTER (LEN=*), INTENT(IN) :: HRAD ! type of the radiation scheme -CHARACTER (LEN=*), INTENT(IN) :: HDCONV ! type of the deep convection scheme -CHARACTER (LEN=*), INTENT(IN) :: HSCONV ! type of the shallow convection scheme -CHARACTER (LEN=*), INTENT(IN) :: HTURB ! type of the turbulence scheme - - -CHARACTER (LEN=*), INTENT(IN) :: HTURBDIM! dimensionnality of the turbulence - ! scheme -CHARACTER (LEN=*), INTENT(IN) :: HCLOUD ! type of microphysical scheme -CHARACTER (LEN=*), INTENT(IN) :: HMET_ADV_SCHEME ! type of advection scheme for meteorological scalar variables -CHARACTER (LEN=*), INTENT(IN) :: HSV_ADV_SCHEME ! type of advection scheme for tracer scalar variables ! !* 0.2 Declarations of local variables : ! ! -LOGICAL :: GNUMDIFU ! switch to activate momentum numerical diffusion -LOGICAL :: GNUMDIFTH ! for theta -LOGICAL :: GNUMDIFSV ! for scalars -LOGICAL :: GHORELAX_UVWTH ! switch for the horizontal relaxation for U,V,W,TH -LOGICAL :: GHORELAX_RV ! switch for the horizontal relaxation for Rv -LOGICAL :: GHORELAX_RC ! switch for the horizontal relaxation for Rc -LOGICAL :: GHORELAX_RR ! switch for the horizontal relaxation for Rr -LOGICAL :: GHORELAX_RI ! switch for the horizontal relaxation for Ri -LOGICAL :: GHORELAX_RS ! switch for the horizontal relaxation for Rs -LOGICAL :: GHORELAX_RG ! switch for the horizontal relaxation for Rg -LOGICAL :: GHORELAX_RH ! switch for the horizontal relaxation for Rh -LOGICAL :: GHORELAX_TKE ! switch for the horizontal relaxation for tke -LOGICAL,DIMENSION(:), ALLOCATABLE :: GHORELAX_SV ! switch for the - ! horizontal relaxation for scalar variables -LOGICAL :: GVE_RELAX ! switch to activate the vertical - ! relaxation -LOGICAL :: GCHTRANS ! switch to activate convective - !transport for SV -LOGICAL :: GDRAGTREE ! switch to activate vegetation drag -LOGICAL :: LLNUDGING -REAL :: ZTSTEP -! -!------------------------------------------------------------------------------- -! REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('AROINI_BUDGET',0,ZHOOK_HANDLE) -LBU_ENABLE = LDBU_ENABLE -IF (.NOT.LBU_ENABLE) THEN -! -!* 1. RUN WITHOUT BUDGETS, early versions of AROME -! -------------------------------------------- -! - NBUMOD=5 !pour qu'il ne fasse pas de budget dans rain_ice - !pour qu'il ne fasse pas de budget dans Ice_adjust - LBUDGET_U =.FALSE. - LBUDGET_V =.FALSE. - LBUDGET_W =.FALSE. - LBUDGET_TH=.FALSE. - LBUDGET_TKE=.FALSE. - LBUDGET_RV=.FALSE. - LBUDGET_RC=.FALSE. - - LBUDGET_RR =.FALSE. - LBUDGET_RI =.FALSE. - LBUDGET_RS =.FALSE. - LBUDGET_RG =.FALSE. - LBUDGET_RH =.FALSE. - LBUDGET_SV=.FALSE. - -ELSE ! !------------------------------------------------------------------------------- ! -!* 2. SETUP -! ----- -! -! -!* 2.1 SETUP FOR DDH -! -! -!-- For DDH in AROME, variables from MODD_BUDGERT are not read from namelists. -! Proper values are given in subroutine DDH_BUDTET_SETUP -! -! CALL DDH_BUDTET_SETUP -! -!* 3. INITIALIZATION FOR AROME -! -! -! -!* 3.1. Setting switches for not needed processes to FALS +IF (LHOOK) CALL DR_HOOK('AROINI_BUDGET',0,ZHOOK_HANDLE) ! +CALL TBUCONF_ASSOCIATE() ! - GNUMDIFU = .FALSE. - GNUMDIFTH = .FALSE. - GNUMDIFSV = .FALSE. - GHORELAX_UVWTH = .FALSE. - GHORELAX_RV = .FALSE. - GHORELAX_RC = .FALSE. - GHORELAX_RR = .FALSE. - GHORELAX_RI = .FALSE. - GHORELAX_RS = .FALSE. - GHORELAX_RG = .FALSE. - GHORELAX_RH = .FALSE. - GHORELAX_TKE = .FALSE. - GVE_RELAX = .FALSE. - GCHTRANS = .FALSE. - ALLOCATE(GHORELAX_SV(1)) - GHORELAX_SV(1) = .FALSE. - GDRAGTREE = .FALSE. - -! -!* 3.1. Initialization +LBU_ENABLE = LDBU_ENABLE ! +LBUDGET_U = LBU_ENABLE +LBUDGET_V = LBU_ENABLE +LBUDGET_W = LBU_ENABLE +LBUDGET_TH = LBU_ENABLE +LBUDGET_TKE= LBU_ENABLE +LBUDGET_RV = LBU_ENABLE +LBUDGET_RC = LBU_ENABLE +LBUDGET_RR = LBU_ENABLE +LBUDGET_RI = LBU_ENABLE +LBUDGET_RS = LBU_ENABLE +LBUDGET_RG = LBU_ENABLE +LBUDGET_RH = LBU_ENABLE +LBUDGET_SV = LBU_ENABLE ! -LLNUDGING=.FALSE. -ZTSTEP = PTSTEP - CALL INI_BUDGET(KULOUT, HLUOUT, ZTSTEP,KSV,KRR, & - &GNUMDIFU,GNUMDIFTH,GNUMDIFSV, & - &GHORELAX_UVWTH,GHORELAX_RV,GHORELAX_RC,GHORELAX_RR, & - &GHORELAX_RI,GHORELAX_RS, GHORELAX_RG, GHORELAX_RH,GHORELAX_TKE, & - &GHORELAX_SV,GVE_RELAX,GCHTRANS,LLNUDGING,GDRAGTREE, & - &HRAD,HSCONV,HDCONV,HTURB,HTURBDIM,HCLOUD, & - &HMET_ADV_SCHEME,HSV_ADV_SCHEME) - -! LBU_ENABLE=.FALSE. - - -ENDIF - IF (LHOOK) CALL DR_HOOK('AROINI_BUDGET',1,ZHOOK_HANDLE) -RETURN +! END SUBROUTINE AROINI_BUDGET diff --git a/src/arome/ext/aroini_budget.h b/src/arome/ext/aroini_budget.h new file mode 100644 index 0000000000000000000000000000000000000000..b77fabe735f1a460e974bb53ad1cfd7d2b71da59 --- /dev/null +++ b/src/arome/ext/aroini_budget.h @@ -0,0 +1,8 @@ +INTERFACE +SUBROUTINE AROINI_BUDGET(LDBU_ENABLE) +! ########################################################################## +USE PARKIND1 ,ONLY : JPIM ,JPRB +LOGICAL :: LDBU_ENABLE + +END SUBROUTINE AROINI_BUDGET +END INTERFACE diff --git a/src/arome/ext/aroini_turb.F90 b/src/arome/ext/aroini_turb.F90 index b6b913cbfb5cb46616ddedea95beb9ebab7daa28..d3428db59f706dcc8844de19ffaa3bfb64a8c431 100644 --- a/src/arome/ext/aroini_turb.F90 +++ b/src/arome/ext/aroini_turb.F90 @@ -43,7 +43,7 @@ USE YOMHOOK , ONLY : LHOOK, DR_HOOK USE MODD_LES, ONLY : LLES, LLES_CALL USE MODD_CTURB, ONLY : XLINI -USE MODD_TURB_n, ONLY: LHARAT, TURB_GOTO_MODEL +USE MODD_TURB_n, ONLY: LHARAT, CTURBLEN, TURB_GOTO_MODEL USE MODI_INI_CTURB IMPLICIT NONE @@ -74,6 +74,9 @@ LHARAT=OHARATU LLES=.FALSE. LLES_CALL=.FALSE. +! 3. Set implicit default values for MODD_TURB_n + +CTURBLEN = 'BL89' ! ------------------------------------------------------------------ IF (LHOOK) CALL DR_HOOK('AROINI_TURB',1,ZHOOK_HANDLE) diff --git a/src/arome/ext/arp_shallow_mf.F90 b/src/arome/ext/arp_shallow_mf.F90 index f79aee52db64c9364b9ea455f4407b35b9982604..1a5193bc91f7bb1f71a7cc7c6ea02743dd4efc03 100644 --- a/src/arome/ext/arp_shallow_mf.F90 +++ b/src/arome/ext/arp_shallow_mf.F90 @@ -45,6 +45,7 @@ !! Original 11/2010 !! S. Riette shallow_mf now outputs ice cloud !! S. Riette Jan 2012: support for both order of vertical levels +!! S. Riette April 2022: call abort, waiting for an update from an arpege developper... !! !------------------------------------------------------------------------------- ! @@ -55,7 +56,15 @@ USE YOMCST , ONLY : RG, RATM, RKAPPA, RD, RCPD, RCPV !USE MODD_PARAMETERS ! +USE MODD_CST, ONLY: CST +USE MODD_NEB, ONLY: NEB +USE MODD_TURB_n, ONLY: TURBN +USE MODD_CTURB, ONLY: CSTURB +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALLN +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +! USE MODI_SHALLOW_MF +USE MODE_FILL_DIMPHYEX, ONLY: FILL_DIMPHYEX USE MODD_CST USE YOMCT3 ! @@ -181,6 +190,8 @@ REAL, DIMENSION(KIDIA:KFDIA,KLEV+2) :: ZTKE REAL, DIMENSION(KIDIA:KFDIA,KLEV+2) :: ZU REAL, DIMENSION(KIDIA:KFDIA,KLEV+2) :: ZV REAL, DIMENSION(KIDIA:KFDIA,KLEV+2) :: ZZZF +TYPE(DIMPHYEX_t) :: YLDIMPHYEX +#include "abor1.intfb.h" !------------------------------------------------------------------------------ @@ -190,6 +201,14 @@ REAL, DIMENSION(KIDIA:KFDIA,KLEV+2) :: ZZZF ! Controle : +!shallow_mf code is now ready to deal with KIDIA/KFDIA +!Array copies can be suppressed (no need to limit the horizontal domain nor to add the two extra levels) +!CALL FILL_DIMPHYEX(YLDIMPHYEX, KLON, 1, KLEV, 0, KFDIA) + +!For now, copies are done +CALL FILL_DIMPHYEX(YLDIMPHYEX, KFDIA, 1, KLEV, 1, KFDIA) + +CALL ABOR1('ARP_SHALLOW_MF: code must be checked before being activated again') ! Avec inversion des boucles IKA=1 ! <== Bottom index of array @@ -372,7 +391,8 @@ ZDRTDT_MF(:,:) = 0. ! ! --------------------------------- - CALL SHALLOW_MF(KKA=IKA,KKU=IKU,KKL=IKL,KRR=IKR,KRRL=IKRL,KRRI=IKRI, & + CALL SHALLOW_MF(YLDIMPHYEX, CST, NEB, PARAM_MFSHALLN, TURBN, CSTURB, & + KRR=IKR,KRRL=IKRL,KRRI=IKRI, KSV=1, & HMF_UPDRAFT=HMF_UPDRAFT, HMF_CLOUD=HMF_CLOUD,HFRAC_ICE='N',OMIXUV=LLOMIXUV, & ONOMIXLG=LLONOMIXLG,KSV_LGBEG=ISV_LGBEG,KSV_LGEND=ISV_LGEND, & PIMPL_MF=PIMPL, PTSTEP=ZDT, & diff --git a/src/arome/dead_code/aro_icecld.F90 b/src/arome/ext/dead_code/aro_icecld.F90 similarity index 100% rename from src/arome/dead_code/aro_icecld.F90 rename to src/arome/ext/dead_code/aro_icecld.F90 diff --git a/src/arome/dead_code/aro_tiwmx.F90 b/src/arome/ext/dead_code/aro_tiwmx.F90 similarity index 100% rename from src/arome/dead_code/aro_tiwmx.F90 rename to src/arome/ext/dead_code/aro_tiwmx.F90 diff --git a/src/arome/dead_code/modi_aro_icecld.F90 b/src/arome/ext/dead_code/modi_aro_icecld.F90 similarity index 100% rename from src/arome/dead_code/modi_aro_icecld.F90 rename to src/arome/ext/dead_code/modi_aro_icecld.F90 diff --git a/src/arome/dead_code/modi_aro_tiwmx.F90 b/src/arome/ext/dead_code/modi_aro_tiwmx.F90 similarity index 100% rename from src/arome/dead_code/modi_aro_tiwmx.F90 rename to src/arome/ext/dead_code/modi_aro_tiwmx.F90 diff --git a/src/arome/ext/suphmpa.F90 b/src/arome/ext/suphmpa.F90 index daf5547b6fb37826f7425725a6a4e4d3f211ea44..4134fdcd8806f6e8c65cd46dfc0d1f7fd120c94c 100644 --- a/src/arome/ext/suphmpa.F90 +++ b/src/arome/ext/suphmpa.F90 @@ -72,34 +72,16 @@ INTEGER(KIND=JPIM),INTENT(IN) :: KULOUT ! ------------------------------------------------------------------ -INTEGER(KIND=JPIM) :: ILON -INTEGER(KIND=JPIM) :: ILEV -INTEGER(KIND=JPIM) :: ISV -INTEGER(KIND=JPIM) :: IRR REAL(KIND=JPRB) :: ZTSTEP REAL(KIND=JPRB) :: ZHOOK_HANDLE -!-- Next five strings are kept in modules in MNH, not in AROME !!! -! ( here they are hardcoded for use in AROINI_BUDGET ) - -CHARACTER (LEN=4) :: CLUOUT ! name of output listing -CHARACTER (LEN=4) :: CLTURB ! Kind of turbulence parameterization -CHARACTER (LEN=4) :: CLTURBDIM ! dimensionality of the turbulence scheme -CHARACTER (LEN=4) :: CLRAD ! Kind of radiation scheme -CHARACTER (LEN=4) :: CLDCONV ! Kind of deep convection scheme -CHARACTER (LEN=4) :: CLSCONV ! Kind of shallow convection scheme -CHARACTER (LEN=4) :: CLCLOUD ! Kind of microphysical scheme -CHARACTER (LEN=4) :: CLMET_ADV_SCHEME ! type of advection scheme for meteorological scalar variables -CHARACTER (LEN=4) :: CLSV_ADV_SCHEME ! type of advection scheme for tracer scalar variables - LOGICAL :: LLNOTMAP ! ------------------------------------------------------------------ #include "sucvmnh.intfb.h" #include "aroini_cstmnh.h" #include "aroini_micro.h" -#include "aro_subudget.h" #include "aroini_budget.h" #include "aroini_turb.h" #include "abor1.intfb.h" @@ -126,7 +108,7 @@ ASSOCIATE(XDETR_LUP=>YDPARAR%XDETR_LUP, XCMF=>YDPARAR%XCMF, & & XPRES_UV=>YDPARAR%XPRES_UV, NRR=>YDPARAR%NRR, XCRAD_MF=>YDPARAR%XCRAD_MF, & & CMF_UPDRAFT=>YDPARAR%CMF_UPDRAFT, LHARATU=>YDPARAR%LHARATU, & & LMPA=>YDARPHY%LMPA, LKFBCONV=>YDARPHY%LKFBCONV, LMFSHAL=>YDARPHY%LMFSHAL, & - & LMICRO=>YDARPHY%LMICRO, LTURB=>YDARPHY%LTURB, LGRADHPHY=>YDARPHY%LGRADHPHY, & + & LGRADHPHY=>YDARPHY%LGRADHPHY, & & NPROMA=>YDDIM%NPROMA, & & LEDKF=>YDPHY%LEDKF, LCVPPKF=>YDPHY%LCVPPKF, & & NFLEVG=>YDDIMV%NFLEVG, & @@ -174,55 +156,8 @@ CALL AROINI_MICRO (KULOUT,ZTSTEP,LOWARM,CMICRO,NSPLITR,CSEDIM,LCRIAUTI,& ! 3. Initialisation of Budget -ILON = NPROMA -ILEV = NFLEVG -ISV = NSV -IRR = NRR - -CALL TBUCONF_ASSOCIATE() -IF (LMPA.AND.LSDDH) THEN -LAROBU_ENABLE=.TRUE. -CALL ARO_SUBUDGET(ILON,ILEV,ZTSTEP) -ENDIF - -!! WARNING: -!! Values of CLRAD,CLDCONV,CLTURB,CLTURBDIM, CLCLOUD -!! are hard coded here. In MNH they are saved -!! in modules. - -CLUOUT = 'AIBUO' -CLRAD = 'NONE' -CLSCONV = CMF_UPDRAFT -CLMET_ADV_SCHEME='XXXX' -CLSV_ADV_SCHEME='XXXX' - -IF(LKFBCONV.OR.LCVPPKF) THEN - CLDCONV = 'KAFR' -ELSE - CLDCONV = 'NONE' -ENDIF - -IF(LTURB) THEN - CLTURB = 'XXXX' - CLTURBDIM = '1DIM' -ELSE - CLTURB = 'NONE' - CLTURBDIM = 'NONE' -ENDIF - -IF(LMICRO) THEN - CLCLOUD = CMICRO -ELSE - CLCLOUD = 'NONE' -ENDIF - -IF (LMPA.AND.LSDDH) THEN -CALL AROINI_BUDGET(LAROBU_ENABLE,CLUOUT,KULOUT,ZTSTEP,ISV,IRR,& - & CLRAD,CLDCONV,CLSCONV,CLTURB,CLTURBDIM,& - & CLCLOUD,CLMET_ADV_SCHEME, CLSV_ADV_SCHEME) - - -ENDIF +LAROBU_ENABLE=LMPA.AND.LSDDH +CALL AROINI_BUDGET(LAROBU_ENABLE) ! 4. Initialisation of Turbulence scheme diff --git a/src/arome/gmkpack_ignored_files b/src/arome/gmkpack_ignored_files index 453d9746c1d2bd85f47eb1860727d81e5eeb4ca7..241c60e347f7160b3d2c9d1d0feba0b5d98630a9 100644 --- a/src/arome/gmkpack_ignored_files +++ b/src/arome/gmkpack_ignored_files @@ -192,9 +192,14 @@ phyex/micro/modd_nsv.F90 phyex/micro/modd_refaro.F90 phyex/micro/mode_fmbidon.F90 phyex/micro/mode_fmwritbidon.F90 -phyex/turb/modd_dynn.F90 phyex/turb/mode_thermo_mono.F90 phyex/turb/modn_turb.F90 mse/dummy/second_mnh.F90 mse/dummy/les_mean_subgrid_surf.F90 mse/dummy/les_mean_subgrid_3d.F90 +mpa/micro/externals/aro_buprocn.F90 +mpa/micro/interface/aro_buprocn.h +mpa/micro/externals/aro_subudget.F90 +mpa/micro/interface/aro_subudget.h +mpa/micro/interface/aroend_budget.h +mpa/micro/externals/invert_vlev.F90 diff --git a/src/arome/micro/lima.F90 b/src/arome/micro/lima.F90 index e6a9ef41186419563223a1ba422a9af6c8bf16f6..a96c98099c5846f08e8e395d74c36031ad50bdcb 100644 --- a/src/arome/micro/lima.F90 +++ b/src/arome/micro/lima.F90 @@ -109,7 +109,7 @@ USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NR, NSV_LIMA_CCN_FREE, NSV NSV_LIMA_IFN_NUCL, NSV_LIMA_IMM_NUCL, NSV_LIMA_HOM_HAZE USE MODD_CST, ONLY : XCI, XCL, XCPD, XCPV, XLSTT, XLVTT, XTT ! -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV USE MODI_LIMA_WARM_SEDIMENTATION USE MODI_LIMA_COLD_SEDIMENTATION diff --git a/src/arome/micro/lima_adjust.F90 b/src/arome/micro/lima_adjust.F90 index 5a890472e708a910d6d0f2d8c8653b4ad4929cbc..fd7e8f5cd090d0f6936cc2fc43cca5ec3803d1a8 100644 --- a/src/arome/micro/lima_adjust.F90 +++ b/src/arome/micro/lima_adjust.F90 @@ -157,7 +157,7 @@ USE DDH_MIX, ONLY : TYP_DDH USE YOMLDDH, ONLY : TLDDH USE YOMMDDH, ONLY : TMDDH ! -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODI_LIMA_FUNCTIONS ! ! diff --git a/src/arome/micro/lima_ccn_hom_freezing.F90 b/src/arome/micro/lima_ccn_hom_freezing.F90 index 2b1c25c4459de6bcbed03d519bc6a3b0988117cf..a7da41311666b48be8c8eca8f0b36c7660f91853 100644 --- a/src/arome/micro/lima_ccn_hom_freezing.F90 +++ b/src/arome/micro/lima_ccn_hom_freezing.F90 @@ -83,7 +83,7 @@ USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV ! USE MODD_NSV USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! IMPLICIT NONE ! diff --git a/src/arome/micro/lima_cold.F90 b/src/arome/micro/lima_cold.F90 index ff4827fda1741b219c3b234979259c54f7e86013..2c6030595882735561eaa737fb363c8f161bab51 100644 --- a/src/arome/micro/lima_cold.F90 +++ b/src/arome/micro/lima_cold.F90 @@ -124,7 +124,7 @@ USE MODD_NSV USE MODD_PARAM_LIMA ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE MODI_LIMA_COLD_SEDIMENTATION USE MODI_LIMA_MEYERS diff --git a/src/arome/micro/lima_cold_hom_nucl.F90 b/src/arome/micro/lima_cold_hom_nucl.F90 index 74d950fa1c55dbfb07cf2b3155b00b600fcade1f..f30a0feb314e23c19f6c63ef96af144bcd158b60 100644 --- a/src/arome/micro/lima_cold_hom_nucl.F90 +++ b/src/arome/micro/lima_cold_hom_nucl.F90 @@ -126,7 +126,7 @@ USE YOMMDDH, ONLY : TMDDH ! USE MODD_NSV USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! IMPLICIT NONE ! diff --git a/src/arome/micro/lima_cold_slow_processes.F90 b/src/arome/micro/lima_cold_slow_processes.F90 index dda09872cbf3ef68cd4e09fac8e9bf801c845346..a342f7d220a33f5a136080653c7c8c55fa104a13 100644 --- a/src/arome/micro/lima_cold_slow_processes.F90 +++ b/src/arome/micro/lima_cold_slow_processes.F90 @@ -112,7 +112,7 @@ USE MODD_PARAM_LIMA_COLD, ONLY : XLBI, XLBEXI, XLBS, XLBEXS, XBI, XCXS, XCCS, & USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV USE MODD_BUDGET USE MODD_NSV, ONLY : NSV_LIMA_NI -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE DDH_MIX, ONLY : TYP_DDH USE YOMLDDH, ONLY : TLDDH diff --git a/src/arome/micro/lima_meyers.F90 b/src/arome/micro/lima_meyers.F90 index 06ac11de3917f156d4506e0c2d7ff776b080c799..a10953731a448a6cfd393e63f7e94bff6eb4629a 100644 --- a/src/arome/micro/lima_meyers.F90 +++ b/src/arome/micro/lima_meyers.F90 @@ -126,7 +126,7 @@ USE MODD_CST USE MODD_PARAM_LIMA USE MODD_PARAM_LIMA_COLD USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NI ! USE DDH_MIX, ONLY : TYP_DDH diff --git a/src/arome/micro/lima_meyers_nucleation.F90 b/src/arome/micro/lima_meyers_nucleation.F90 index f27af7a6b0bf2db32269a824c12e45c2bd382d1e..2b90ca08c6b59dc50f8de755ce8a782755b420f6 100644 --- a/src/arome/micro/lima_meyers_nucleation.F90 +++ b/src/arome/micro/lima_meyers_nucleation.F90 @@ -108,7 +108,7 @@ USE MODD_CST USE MODD_PARAM_LIMA USE MODD_PARAM_LIMA_COLD USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NI ! USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV diff --git a/src/arome/micro/lima_mixed.F90 b/src/arome/micro/lima_mixed.F90 index 1e073298670d6a1748283c507a900ed5d968af18..000b503761054740e5f1279e7f1f093d8c4c13c1 100644 --- a/src/arome/micro/lima_mixed.F90 +++ b/src/arome/micro/lima_mixed.F90 @@ -123,7 +123,7 @@ USE MODD_PARAM_LIMA_MIXED, ONLY : XLBG, XLBEXG, XLBH, XLBEXH USE MODD_NSV ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV USE MODI_LIMA_MIXED_SLOW_PROCESSES diff --git a/src/arome/micro/lima_mixed_fast_processes.F90 b/src/arome/micro/lima_mixed_fast_processes.F90 index d50dbd2d47e782471eca6b3766119cbc3f7f6089..9bcfa9bb67e4266f3bfc89f07fe31e47027889c8 100644 --- a/src/arome/micro/lima_mixed_fast_processes.F90 +++ b/src/arome/micro/lima_mixed_fast_processes.F90 @@ -160,7 +160,7 @@ USE MODD_PARAM_LIMA_MIXED ! USE MODD_NSV USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE DDH_MIX, ONLY : TYP_DDH USE YOMLDDH, ONLY : TLDDH diff --git a/src/arome/micro/lima_mixed_slow_processes.F90 b/src/arome/micro/lima_mixed_slow_processes.F90 index 566145a72bbdfb947487ce4850d2d1e07d73604c..ff8f782ce2387307ec721362792d2b6bd29273cf 100644 --- a/src/arome/micro/lima_mixed_slow_processes.F90 +++ b/src/arome/micro/lima_mixed_slow_processes.F90 @@ -130,7 +130,7 @@ USE MODD_PARAM_LIMA_MIXED, ONLY : XLBG, XLBEXG, XLBDAG_MAX, & ! USE MODD_NSV USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE DDH_MIX, ONLY : TYP_DDH USE YOMLDDH, ONLY : TLDDH diff --git a/src/arome/micro/lima_nucleation_procs.F90 b/src/arome/micro/lima_nucleation_procs.F90 index a00ee56f72bf754c0e0129edb85e35f3a0218933..9b23d62f2eecc0767c22e64df6a43f57820fce37 100644 --- a/src/arome/micro/lima_nucleation_procs.F90 +++ b/src/arome/micro/lima_nucleation_procs.F90 @@ -68,7 +68,7 @@ USE MODD_BUDGET, ONLY : LBU_ENABLE, LBUDGET_TH, LBUDGET_RV, LBUDGET_RC, LBUD USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NR, NSV_LIMA_CCN_FREE, & NSV_LIMA_NI, NSV_LIMA_IFN_FREE ! -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODI_LIMA_CCN_ACTIVATION USE MODI_LIMA_PHILLIPS_IFN_NUCLEATION USE MODI_LIMA_MEYERS_NUCLEATION diff --git a/src/arome/micro/lima_phillips.F90 b/src/arome/micro/lima_phillips.F90 index 9726b5c920f9e345fbdc020034e58ffe2ad348d1..6791798d429ba2196f73325c46c47259d27773a5 100644 --- a/src/arome/micro/lima_phillips.F90 +++ b/src/arome/micro/lima_phillips.F90 @@ -145,7 +145,7 @@ USE MODI_LIMA_PHILLIPS_REF_SPECTRUM USE MODI_LIMA_PHILLIPS_INTEG ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NI, NSV_LIMA_IFN_FREE ! USE DDH_MIX, ONLY : TYP_DDH diff --git a/src/arome/micro/lima_phillips_ifn_nucleation.F90 b/src/arome/micro/lima_phillips_ifn_nucleation.F90 index a86129119290962d62c07450ddb28a0101db6b02..068d15cfc3be0c89f61b485641cf7720f87848b6 100644 --- a/src/arome/micro/lima_phillips_ifn_nucleation.F90 +++ b/src/arome/micro/lima_phillips_ifn_nucleation.F90 @@ -120,7 +120,7 @@ USE MODI_LIMA_PHILLIPS_REF_SPECTRUM USE MODI_LIMA_PHILLIPS_INTEG ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NI, NSV_LIMA_IFN_FREE ! ! diff --git a/src/arome/micro/lima_precip_scavenging.F90 b/src/arome/micro/lima_precip_scavenging.F90 index cafea718c39f7270556d40f32b3898b5b7e37bed..ad63b968348186447f7a3c7aaa39900ad8345810 100644 --- a/src/arome/micro/lima_precip_scavenging.F90 +++ b/src/arome/micro/lima_precip_scavenging.F90 @@ -127,7 +127,7 @@ USE MODD_PARAM_LIMA, ONLY : NMOD_IFN, NSPECIE, XFRAC, USE MODD_PARAM_LIMA_WARM, ONLY : XCR, XDR ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! IMPLICIT NONE ! diff --git a/src/arome/micro/lima_warm.F90 b/src/arome/micro/lima_warm.F90 index 7778d173fce30e3def032344b8a7099fa2b3886b..bcec122552a41bac0f997294e159a62349e92f1a 100644 --- a/src/arome/micro/lima_warm.F90 +++ b/src/arome/micro/lima_warm.F90 @@ -146,7 +146,7 @@ USE MODD_NSV ! ! USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE MODI_LIMA_WARM_SEDIMENTATION USE MODI_LIMA_WARM_NUCL diff --git a/src/arome/micro/lima_warm_coal.F90 b/src/arome/micro/lima_warm_coal.F90 index b71c5476cb770ee3c772e1c391dc6632951cd6b2..cf7ade8f31605d5dc667bf75c58b1d6798437965 100644 --- a/src/arome/micro/lima_warm_coal.F90 +++ b/src/arome/micro/lima_warm_coal.F90 @@ -117,7 +117,7 @@ USE MODD_PARAM_LIMA_WARM ! USE MODD_NSV, ONLY : NSV_LIMA_NC, NSV_LIMA_NR USE MODD_BUDGET -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH ! USE MODI_LIMA_FUNCTIONS, ONLY : COUNTJV ! diff --git a/src/arome/micro/rain_ice_old.F90 b/src/arome/micro/rain_ice_old.F90 index b87f8ba57abea5338f6571a941736025bd85749f..c1ac467d1833cbb0ac48973016fd45e58e0e6b9f 100644 --- a/src/arome/micro/rain_ice_old.F90 +++ b/src/arome/micro/rain_ice_old.F90 @@ -169,7 +169,7 @@ USE MODD_PARAM_ICE USE MODD_BUDGET USE MODD_SPP_TYPE USE MODD_LES -USE MODI_BUDGET_DDH +USE MODE_BUDGET, ONLY: BUDGET_DDH USE MODI_GAMMA USE MODE_TIWMX USE MODE_ICECLOUD, ONLY : ICECLOUD diff --git a/src/arome/programs/ch_make_lookup.F90 b/src/arome/programs/ch_make_lookup.F90 deleted file mode 100644 index 0b67c3135fc3e579998f117dc039d55efcf9e7ef..0000000000000000000000000000000000000000 --- a/src/arome/programs/ch_make_lookup.F90 +++ /dev/null @@ -1,188 +0,0 @@ -! ######spl - PROGRAM CH_MAKE_LOOKUP - USE PARKIND1, ONLY : JPRB - USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! ###################### -!! -!!*** *CH_MAKE_LOOKUP* -!! -!! PURPOSE -!! ------- -! create a lookup table for J-Values used by MesoNH-chemistry -!! -!!** METHOD -!! ------ -!! The radiative transfer model TUV is called for a dicrete number -!! of times. The lookup table is fixed for one latitude, longitude, date, -!! surface albedo and ozone column dobson. TUV itself requires -!! a number of input files that will reside in directories -!! DATAX, DATA0 and DATA4 (to be created at runtime by tar xvf TUVDATA.tar). -!! The program may be piloted via a namelistfile LOOKUP1.nam. -!! The format of the lookup table is as follows: -!! -!!============================================================================== -!! COMMENT LINE -!! NPHOTO (NUMBER OF REACTIONS) -!! NLEVEL, DZ (NUMBER OF VERTICAL POINTS, HEIGHT INCREMENT IN M) -!! NTIME, DT (NUMBER OF TEMPORAL POINTS, TIME INCREMENT IN H) -!! REACTION 1 -!! ... -!! REACTION NPHOTO -!! FORTRAN FORMAT FOR THE FOLLOWING DATA -!! HEIGHT1 TIME1 J1 ... JN -!! HEIGHT1 TIME2 J1 ... JN -!! ... -!! HEIGHT1 TIMEN J1 ... JN -!! HEIGHT2 TIME1 J1 ... JN -!! ... -!! HEIGHTM TIMEN J1 ... JN -!!============================================================================== -!! -!! REFERENCES -!! ---------- -!! MesoNH-chemistry book 3 -!! -!! AUTHOR -!! ------ -!! K. Suhre -!! -!! MODIFICATIONS -!! ------------- -!! Original 01/03/99 -!! -!! EXTERNAL -!! -------- -!! TUV39.f (Fortran 77 code from S. Madronich) -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! None -!! -!------------------------------------------------------------------------------ -! -!* 0. DECLARATIONS -! ----------------- -! -IMPLICIT NONE -! -REAL :: ALAT, ALONG ! LATITUDE AND LONGITUDE -REAL :: ALBNEW, DOBNEW ! SURFACE ALBEDO AND O3 COLUMN DOBSON -INTEGER :: IDATE ! DATE IN FORMAT YYMMDD -! -INTEGER, PARAMETER :: NTIME = 96 + 1 ! TEMPORAL DISCRETIZATION -INTEGER, PARAMETER :: NLEVEL = 30 + 1 ! VERTICAL DISCRETIZATION -REAL, DIMENSION(NLEVEL) :: AZ, LWC -REAL, DIMENSION(NTIME) :: ATIME -REAL :: DZ, DT -REAL :: ZMAX = 30E3 ! MAXIMUM HEIGHT FOR WHICH J-VALUES WILL BE COMPUTED -! -! J VALUE STORAGE -INTEGER, PARAMETER :: NJOUT = 21 -REAL, DIMENSION(NLEVEL,NJOUT) :: JOUT -REAL, DIMENSION(NLEVEL, NJOUT, NTIME) :: JDATA -CHARACTER*40, DIMENSION(NJOUT) :: JLABELOUT -! -CHARACTER*120 :: HEADDER -REAL :: UT -INTEGER :: I, J, K, NJIO -CHARACTER*40 :: YFMT = '(2F11.2,5E11.4/99(7E11.4/))' -! -! NAMELIST for options -NAMELIST /NAM_TUV/ ALAT, ALONG, IDATE, ALBNEW, DOBNEW -! -! -!* 1. INITIALISATION -! ------------------- -! -! initialize az and atime -REAL(KIND=JPRB) :: ZHOOK_HANDLE -IF (LHOOK) CALL DR_HOOK('CH_MAKE_LOOKUP',0,ZHOOK_HANDLE) -DZ = ZMAX / FLOAT(NLEVEL - 1) -DO J = 1, NLEVEL - AZ(J) = FLOAT(J-1) * DZ - LWC(J)= 0.0 -ENDDO -DT = 24.00 / FLOAT(NTIME - 1) -DO I = 1, NTIME - ATIME(I) = FLOAT(I-1) * DT -ENDDO -! -! initialize default values -ALAT = 45. -ALONG = 0. -IDATE = 970621 -ALBNEW = -1. -DOBNEW = -1. -! -! read the namelist -WRITE(*,*) "TRYING TO OPEN FILE LOOKUP1.nam ..." -OPEN(UNIT=42,FILE="LOOKUP1.nam",STATUS="OLD",FORM="FORMATTED", ERR=100) -READ(42,NAM_TUV) -WRITE(*,*) "NAMELIST NAM_TUV INITIALIZED TO:" -WRITE(*,NAM_TUV) -CLOSE(42) -GOTO 200 -! -100 CONTINUE -! read from input if no namelist file exists -WRITE(*,*) "NO FILE LOOKUP1.NAM FOUND, TRYING INTERACTIVE ..." -PRINT *, "ENTER LATITUDE (+N, -S)" -READ(*,*) ALAT -PRINT *, "ENTER LONGITUDE (+E, -W)" -READ(*,*) ALONG -PRINT *, "ENTER DATE (YYMMDD)" -READ(*,*) IDATE -PRINT *, "ENTER SURFACE ALBEDO (IF <0 -->DATAX/ALBEDO.DAT)" -READ(*,*) ALBNEW -PRINT *, "ENTER TOTAL COLUMN DOBSON (IF <0 NO SCALING)" -READ(*,*) DOBNEW -! -200 CONTINUE -! -WRITE(HEADDER,'(A,F6.1,A,F6.1,A,I6,A,F6.3,A,F8.2)') & - "TUV39,LAT=", ALAT, ",LON=", ALONG, & - ",IDATE(YYMMDD)=", IDATE, & - ",ALB=", ALBNEW, & - ",DOB=", DOBNEW -PRINT *, HEADDER -! -!* 2. CALL TUV 3.5 -! ----------------- -! -DO I = 1, NTIME - UT = ATIME(I) - PRINT *, I, " FROM ", NTIME, " DONE ... UT = ", UT - NJIO = NJOUT - CALL TUVMAIN(ALAT, ALONG, IDATE, UT, ALBNEW, DOBNEW, NLEVEL, AZ, LWC, & - NJIO, JOUT, JLABELOUT) - DO J = 1, NLEVEL - DO K = 1, NJIO - JDATA(J, K, I) = JOUT(J,K) - ENDDO - ENDDO -ENDDO -! -!* 3. WRITE LOOKUP TABLE FILE -! ----------------- -! -OPEN(66,FILE="PHOTO.TUV39",STATUS="UNKNOWN",FORM="FORMATTED") -WRITE(66,'(A)') HEADDER -WRITE(66,'(I6,A)') NJIO, " NUMBER OF PHOTOLYSIS REACTIONS" -WRITE(66,'(I6, F10.0, A)') NLEVEL, DZ, & - " NUMBER OF LEVELS, VERTICAL INCREMENT (M)" -WRITE(66,'(I6, F10.4, A)') NTIME, DT, & - " NUMBER OF TEMPORAL RECS, TEMPORAL INCREMENT (H)" -WRITE(66,'(A)') (JLABELOUT(K), K=1, NJIO) -WRITE(66,'(A)') YFMT -DO J = 1, NLEVEL - DO I = 1, NTIME - WRITE(66,YFMT) AZ(J), ATIME(I), (JDATA(J,K,I), K=1, NJIO) - ENDDO -ENDDO -CLOSE(66) -! -PRINT *, 'Lookup table file PHOTO.TUV39 has been generated.' -PRINT *, 'CH_MAKE_LOOKUP ended correctly.' -! -IF (LHOOK) CALL DR_HOOK('CH_MAKE_LOOKUP',1,ZHOOK_HANDLE) -END PROGRAM CH_MAKE_LOOKUP diff --git a/src/common/aux/modd_budget.F90 b/src/common/aux/modd_budget.F90 index 0abc3bc40e7a7c44154890338d98956e9a1a0344..65781c77fb798c28639b3c67de763529d605bf0b 100644 --- a/src/common/aux/modd_budget.F90 +++ b/src/common/aux/modd_budget.F90 @@ -33,11 +33,11 @@ !! V. Masson 27/11/02 add 2way nesting effect !! P. Jabouille 07/07/04 add budget terms for microphysics !! C. Barthe 19/11/09 add budget terms for electricity +!! S. Riette July 2022 simplification for PHYEX !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS ! ------------ -USE MODD_PARAMETERS, ONLY :JPBUMAX, JPBUPROMAX ! IMPLICIT NONE @@ -84,592 +84,7 @@ TYPE(TBUDGETCONF_t), TARGET :: TBUCONF ! General variables LOGICAL :: LBU_ENABLE=.FALSE. ! -INTEGER, DIMENSION(JPBUMAX,JPBUPROMAX) & ! number of processes to be - :: NBUINC=0 ! avoided for every budget - ! between one active - ! source to the next one -INTEGER, DIMENSION(JPBUMAX) & ! counter for all the processes - :: NBUCTR_ACTV=0 ! activated or not -! -CHARACTER (LEN=4) :: CBUTYPE ! type of desired budget 'CART' - ! (cartesian box) or 'MASK' (budget - ! zone defined by a mask) or 'NONE' - ! (no budget) -INTEGER :: NBUMOD=0 ! model in which budget is - ! calculated -INTEGER, DIMENSION(:), & ! number of processes for each - ALLOCATABLE :: NBUPROCNBR ! budget -! -INTEGER, DIMENSION(:), & ! process counter linked to each - ALLOCATABLE :: NBUPROCCTR ! budget -! -CHARACTER(LEN=2), DIMENSION(:,:), & ! resulting string character of the - ALLOCATABLE :: CBUACTION ! transcription of the budget actions - ! (integer) read in namelists or - ! set by default -CHARACTER (LEN=16), DIMENSION(:,:),& ! names of records on the FM file - ALLOCATABLE :: CBURECORD ! for the budgets -! -CHARACTER (LEN=99), DIMENSION(:,:),& ! name of a process for a budget. It - ALLOCATABLE :: CBUCOMMENT ! will appear in the comment part of - ! the previous record -! -LOGICAL :: LBU_BEG=.FALSE. ! switch for budget beginning -! -REAL :: XBULEN=0. ! length in seconds of the budget - ! temporal average -! -INTEGER :: NBUSTEP=0 ! number of model timesteps required - ! for the budget time average -REAL :: XBUWRI=0. ! period in seconds of - ! budget writing on FM-files -INTEGER :: NBUWRNB=0 ! number of budget periods when storage - ! arrays are written on FM-files -INTEGER :: NBUTSHIFT=0 ! temporal shift for budgets writing -! -INTEGER :: NBUKH=0 ! lowest and highest K indice values -INTEGER :: NBUKL=0 ! lowest and highest K indice values - ! of the budget box -LOGICAL :: LBU_KCP=.FALSE. ! switch for compression in K - ! direction -! -! Variables used by the cartesian box case ('CART') only -! -INTEGER :: NBUIL=0 ! lowest and highest I indice values -INTEGER :: NBUIH=0 ! lowest and highest I indice values - ! of the cartesian box -INTEGER :: NBUJL=0 ! lowest and highest J indice values -INTEGER :: NBUJH=0 ! lowest and highest J indice values - ! of the cartesian box -LOGICAL :: LBU_ICP=.FALSE. ! switch for compression in I - ! direction -LOGICAL :: LBU_JCP=.FALSE. ! switch for comppression in J - ! direction -! -! Variables used by the mask case ('MASK') only -! -INTEGER :: NBUMASK=0 ! number of MASK zones for which - ! budgets are performed -LOGICAL, DIMENSION(:,:,:), & ! define the zone where the MASK - ALLOCATABLE :: LBU_MASK ! is True -! -REAL, DIMENSION(:,:,:,:), & ! surface for each mask at each - ALLOCATABLE :: XBUSURF ! budget step -! -INTEGER :: NBUTIME=0 ! number of budget time periods -! -! Variables for budget storage -! -! General variables -INTEGER :: NBUSIL=0 ! lowest and highest I indices of the intersection -INTEGER :: NBUSIH=0 ! lowest and highest I indices of the intersection - ! of the cartesian box with the sub-domain -INTEGER :: NBUSJL=0 ! lowest and highest J indices of the intersection -INTEGER :: NBUSJH=0 ! lowest and highest J indices of the intersection - ! of the global cartesian box -INTEGER :: NBUIMAX_ll=0 ! second dimension of the budget -INTEGER :: NBUJMAX_ll=0 ! second dimension of the budget - ! array in the global domain (in CART case) -! -INTEGER :: NBUIMAX=0 ! first dimension of the budget - ! tabular -INTEGER :: NBUJMAX=0 ! second dimension of the budget - ! tabular -INTEGER :: NBUKMAX=0 ! dimension along K of the budget - ! tabular -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RU, RV and - ALLOCATABLE :: XBURU, XBURV, XBURW ! RW (wind components) respectively -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RTH (potential - ALLOCATABLE :: XBURTH, XBURTKE ! temperature) and RTKE (kinetic - ! energy) -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RRV (water vapor) - ALLOCATABLE :: XBURRV, XBURRC ! and RRC (cloud water) -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RRR (rain water) - ALLOCATABLE :: XBURRR, XBURRI ! and RRI (ice) -REAL, DIMENSION(:,:,:,:), & ! budget arrays for RRS (snow) - ALLOCATABLE :: XBURRS, XBURRG ! and RRG (graupel) -REAL, DIMENSION(:,:,:,:), & ! budget array for RRH (hail) - ALLOCATABLE :: XBURRH ! -REAL, DIMENSION(:,:,:,:,:), & - ALLOCATABLE :: XBURSV ! Budget of the SVx -REAL, DIMENSION(:,:,:), & ! budget arrays for RHODJ at - ALLOCATABLE :: XBURHODJ , & ! scalar localization - XBURHODJU, & ! U localization - XBURHODJV, & ! V localization - XBURHODJW ! and W localization -! -! Allowed processes for the budget of the x scalar variables -! (transport part only) -! -! For each budget, the switches values (from 0 to JPBUPROMAX) for budgets -! activation may be set by the user in a namelist. Their default value is 0. -! In the following declaration, the corresponding process names are given -! beside as comments. -! -! Allowed processes for the budget of RU (wind component along x) -! -! Courant namelist: NAM_BURU -! -LOGICAL :: LBU_RU=.FALSE. ! True when the budget of RU is performed -! -INTEGER :: NASSEU=0 ! time filter -INTEGER :: NNESTU=0 ! Efffect of 2way nesting on U -INTEGER :: NADVXU=0 ! advection along X -INTEGER :: NADVYU=0 ! advection along Y -INTEGER :: NADVZU=0 ! advection along Z -INTEGER :: NFRCU=0 ! forcing -INTEGER :: NNUDU=0 ! nudging -INTEGER :: NCURVU=0 ! curvature -INTEGER :: NCORU=0 ! Coriolis terms -INTEGER :: NDIFU=0 ! numerical diffusion -INTEGER :: NRELU=0 ! relaxation -INTEGER :: NHTURBU=0 ! horizontal TURBulence -INTEGER :: NVTURBU=0 ! vertical turbulence -INTEGER :: NDRAGU=0 ! vegetation drag -INTEGER :: NMAFLU=0 ! mass flux -INTEGER :: NPRESU=0 ! pressure term -! -! Allowed processes for the budget of RV (wind component along y) -! -! Courant namelist: NAM_BURV -! -LOGICAL :: LBU_RV=.FALSE. ! True when the budget of RV is performed -! -INTEGER :: NASSEV=0 ! time filter -INTEGER :: NNESTV=0 ! Efffect of 2way nesting on V -INTEGER :: NADVXV=0 ! advection along X -INTEGER :: NADVYV=0 ! advection along Y -INTEGER :: NADVZV=0 ! advection along Z -INTEGER :: NFRCV=0 ! forcing -INTEGER :: NNUDV=0 ! nudging -INTEGER :: NCURVV=0 ! curvature -INTEGER :: NCORV=0 ! Coriolis terms -INTEGER :: NDIFV=0 ! numerical diffusion -INTEGER :: NRELV=0 ! relaxation -INTEGER :: NHTURBV=0 ! horizontal turbulence -INTEGER :: NVTURBV=0 ! vertical turbulence -INTEGER :: NDRAGV=0 ! vegetation drag -INTEGER :: NMAFLV=0 ! mass flux -INTEGER :: NPRESV=0 ! pressure term -! -! Allowed processes for the budget of RW (wind vertical component) -! -! Courant namelist: NAM_BURW -! -LOGICAL :: LBU_RW=.FALSE. ! True when the budget of RW is performed -! -INTEGER :: NASSEW=0 ! time filter -INTEGER :: NNESTW=0 ! Efffect of 2way nesting on W -INTEGER :: NADVXW=0 ! advection along X -INTEGER :: NADVYW=0 ! advection along Y -INTEGER :: NADVZW=0 ! advection along Z -INTEGER :: NFRCW=0 ! forcing -INTEGER :: NNUDW=0 ! nudging -INTEGER :: NCURVW=0 ! curvature -INTEGER :: NCORW=0 ! Coriolis terms -INTEGER :: NGRAVW=0 ! gravity term -INTEGER :: NDIFW=0 ! numerical diffusion -INTEGER :: NRELW=0 ! relaxation -INTEGER :: NHTURBW=0 ! horizontal turbulence -INTEGER :: NVTURBW=0 ! vertical turbulence -INTEGER :: NPRESW=0 ! pressure term -! -! Allowed processes for the budget of RTH (potential temperature) -! -! Courant namelist: NAM_BURTH -! -LOGICAL :: LBU_RTH=.FALSE. ! True when the budget of RTH is performed -! -INTEGER :: NASSETH=0 ! time filter -INTEGER :: NNESTTH=0 ! Efffect of 2way nesting on Th -INTEGER :: NADVTH=0 ! Total advection for PPM -INTEGER :: NADVXTH=0 ! advection along X (all except PPM) -INTEGER :: NADVYTH=0 ! advection along Y (all except PPM) -INTEGER :: NADVZTH=0 ! advection along Z (all except PPM) -INTEGER :: NFRCTH=0 ! forcing -INTEGER :: N2DADVTH=0 ! 2d advecting forcing -INTEGER :: N2DRELTH=0 ! 2d relaxation forcing -INTEGER :: NNUDTH=0 ! nudging -INTEGER :: NPREFTH=0 ! theta source term due to the reference pressure - ! (Dyn. Sources) only present if KRR>0 -INTEGER :: NDIFTH=0 ! numerical diffusion -INTEGER :: NRELTH=0 ! relaxation -INTEGER :: NRADTH=0 ! RADiation -INTEGER :: NDCONVTH=0 ! KAFR CONVection -INTEGER :: NMAFLTH=0 ! Mass flux -INTEGER :: NHTURBTH=0 ! horizontal turbulence -INTEGER :: NVTURBTH=0 ! vertical turbulence -INTEGER :: NDISSHTH=0 ! dissipative heating -INTEGER :: NNEGATH=0 ! negative correction induced by hydrometeors -INTEGER :: NREVATH=0 ! rain evaporation -INTEGER :: NCONDTH=0 ! evaporation/condensation -INTEGER :: NHENUTH=0 ! HEterogenous NUcleation ICE3 -INTEGER :: NHONTH=0 ! HOmogeneous Nucleation ICE3 -INTEGER :: NSFRTH=0 ! Spontaneous FReezing ICE3 -INTEGER :: NDEPSTH=0 ! DEPosition on Snow ICE3 -INTEGER :: NDEPGTH=0 ! DEPosition on Graupel ICE3 -INTEGER :: NRIMTH=0 ! RIMing of cloudwater ICE3 -INTEGER :: NACCTH=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCFRZTH=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGTH=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGTH=0 ! DRY Growth of graupel ICE3 -INTEGER :: NGMLTTH=0 ! Graupel MeLTing ICE3 -INTEGER :: NIMLTTH=0 ! Ice MeLTing ICE3 -INTEGER :: NBERFITH=0 ! BERgeron-FIndeisen gth. ICE3 -INTEGER :: NCDEPITH=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NWETHTH=0 ! wet growth of hail ICE4 -INTEGER :: NHMLTTH=0 ! melting of hail ICE4 -INTEGER :: NHINDTH=0 ! Heterogeneous Nucleation by Deposition C3R5 -INTEGER :: NHINCTH=0 ! Heterogeneous Nucleation by Contact C3R5 -INTEGER :: NHONHTH=0 ! Haze Homogeneous Nucleation C3R5 -INTEGER :: NHONCTH=0 ! droplet homogeneous nucleation C3R5 -INTEGER :: NHONRTH=0 ! drop homogeneous nucleation C3R5 -INTEGER :: NCEDSTH=0 ! adjustment C3R5 -! -! Allowed processes for the budget of RTKE (kinetic energy) -! -! Courant namelist: NAM_BURTKE -! -LOGICAL :: LBU_RTKE=.FALSE. ! True when the budget of RTKE is performed -! -INTEGER :: NASSETKE=0 ! time filter -INTEGER :: NADVTKE=0 ! Total advection for PPM -INTEGER :: NADVXTKE=0 ! advection along X (all except PPM) -INTEGER :: NADVYTKE=0 ! advection along Y (all except PPM) -INTEGER :: NADVZTKE=0 ! advection along Z (all except PPM) -INTEGER :: NFRCTKE=0 ! forcing -INTEGER :: NDIFTKE=0 ! numerical diffusion -INTEGER :: NRELTKE=0 ! relaxation -INTEGER :: NDPTKE=0 ! dynamic production of TKE -INTEGER :: NTPTKE=0 ! thermal production of TKE -INTEGER :: NDRAGTKE=0 ! vegetation drag -INTEGER :: NDISSTKE=0 ! dissipation of TKE -INTEGER :: NTRTKE=0 ! turbulent transport of TKE -! -! -! Allowed processes for the budget of moist variable RRV (water vapor) -! -! Courant namelist: NAM_BURRV -! -LOGICAL :: LBU_RRV=.FALSE. ! true when the budget of RRV is performed -! -INTEGER :: NASSERV=0 ! time filter -INTEGER :: NNESTRV=0 ! Effect of 2way nesting on Rv -INTEGER :: NADVRV=0 ! Total advection for PPM -INTEGER :: NADVXRV=0 ! advection along X (all except PPM) -INTEGER :: NADVYRV=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRV=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRV=0 ! forcing -INTEGER :: N2DADVRV=0 ! 2d advecting forcing -INTEGER :: N2DRELRV=0 ! 2d relaxation forcing -INTEGER :: NNUDRV=0 ! nudging -INTEGER :: NDIFRV=0 ! numerical diffusion -INTEGER :: NRELRV=0 ! relaxation -INTEGER :: NDCONVRV=0 ! KAFR CONVection -INTEGER :: NMAFLRV=0 ! Mass flux -INTEGER :: NHTURBRV=0 ! horizontal turbulence -INTEGER :: NVTURBRV=0 ! vertical turbulence -INTEGER :: NNEGARV=0 ! negative correction -INTEGER :: NREVARV=0 ! rain evaporation -INTEGER :: NCONDRV=0 ! evaporation/condensation -INTEGER :: NHENURV=0 ! HEterogenous NUcleation ICE3 -INTEGER :: NDEPSRV=0 ! DEPosition on Snow ICE3 -INTEGER :: NDEPGRV=0 ! DEPosition on Graupel ICE3 -INTEGER :: NCDEPIRV=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NHINDRV=0 ! Heterogeneous Nucleation by Deposition C3R5 -INTEGER :: NHONHRV=0 ! Haze Homogeneous Nucleation C3R5 -INTEGER :: NCEDSRV=0 ! adjustement C3R5 -! -! Allowed processes for the budget of moist variable RRC (cloud water) -! -! Courant namelist: NAM_BURRC -! -LOGICAL :: LBU_RRC=.FALSE. ! True when the budget of RRC is performed -! -INTEGER :: NASSERC=0 ! time filter -INTEGER :: NNESTRC=0 ! Efffect of 2way nesting on Rc -INTEGER :: NADVRC=0 ! Total advection for PPM -INTEGER :: NADVXRC=0 ! advection along X (all except PPM) -INTEGER :: NADVYRC=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRC=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRC=0 ! forcing -INTEGER :: NDIFRC=0 ! numerical diffusion -INTEGER :: NRELRC=0 ! relaxation -INTEGER :: NDCONVRC=0 ! Deep CONVection -INTEGER :: NHTURBRC=0 ! horizontal turbulence -INTEGER :: NVTURBRC=0 ! vertical turbulence -INTEGER :: NNEGARC=0 ! negative correction -INTEGER :: NACCRRC=0 ! accretion -INTEGER :: NAUTORC=0 ! autoconversion -INTEGER :: NCONDRC=0 ! evaporation/condensation -INTEGER :: NHONRC=0 ! HOmogeneous Nucleation ICE3 -INTEGER :: NRIMRC=0 ! RIMing of cloudwater ICE3 -INTEGER :: NWETGRC=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRC=0 ! DRY Growth of graupel ICE3 -INTEGER :: NIMLTRC=0 ! Ice MeLTing ICE3 -INTEGER :: NBERFIRC=0 ! BERgeron-FIndeisen gth. ICE3 -INTEGER :: NCDEPIRC=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NHENURC=0 ! CCN Activation C2R2 -INTEGER :: NSEDIRC=0 ! sedimentation C2R2 -INTEGER :: NWETHRC=0 ! wet growth of hail -INTEGER :: NHINCRC=0 ! Heterogeneous Nucleation by Contact C3R5 -INTEGER :: NHONCRC=0 ! droplet homogeneous nucleation C3R5 -INTEGER :: NCEDSRC=0 ! adjustment C3R5 -INTEGER :: NREVARC=0 ! evaporation of rain drops -INTEGER :: NDEPORC=0 ! ground deposition -INTEGER :: NDEPOTRRC=0 ! deposition on tree -! -! Allowed processes for the budget of moist variable RRR (rain water) -! -! Courant namelist: NAM_BURRR -! -LOGICAL :: LBU_RRR=.FALSE. ! True when the budget of RRR is performed -! -INTEGER :: NASSERR=0 ! time filter -INTEGER :: NNESTRR=0 ! Efffect of 2way nesting on Rr -INTEGER :: NADVRR=0 ! Total advection for PPM -INTEGER :: NADVXRR=0 ! advection along X (all except PPM) -INTEGER :: NADVYRR=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRR=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRR=0 ! forcing -INTEGER :: NDIFRR=0 ! numerical diffusion -INTEGER :: NRELRR=0 ! relaxation -INTEGER :: NNEGARR=0 ! negative correction -INTEGER :: NACCRRR=0 ! accretion -INTEGER :: NAUTORR=0 ! autoconversion -INTEGER :: NREVARR=0 ! rain evaporation -INTEGER :: NSEDIRR=0 ! sedimentation -INTEGER :: NSFRRR=0 ! Spontaneous FReezing ICE3 -INTEGER :: NACCRR=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCFRZRR=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGRR=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRR=0 ! DRY Growth of graupel ICE3 -INTEGER :: NGMLTRR=0 ! Graupel MeLTing ICE3 -INTEGER :: NWETHRR=0 ! wet growth of hail ICE4 -INTEGER :: NHMLTRR=0 ! melting of hail ICE4 -INTEGER :: NHONRRR=0 ! drop homogeneous nucleation C3R5 -! -! Allowed processes for the budget of moist variable RRI (ice) -! -! Courant namelist: NAM_BURRI -! -LOGICAL :: LBU_RRI=.FALSE. ! True when the budget of RRI is performed -! -INTEGER :: NASSERI=0 ! time filter -INTEGER :: NNESTRI=0 ! Efffect of 2way nesting on Ri -INTEGER :: NADVRI=0 ! Total advection for PPM -INTEGER :: NADVXRI=0 ! advection along X (all except PPM) -INTEGER :: NADVYRI=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRI=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRI=0 ! forcing -INTEGER :: NDIFRI=0 ! numerical diffusion -INTEGER :: NRELRI=0 ! relaxation -INTEGER :: NDCONVRI=0 ! Deep CONVection -INTEGER :: NHTURBRI=0 ! horizontal turbulence -INTEGER :: NVTURBRI=0 ! vertical turbulence -INTEGER :: NNEGARI=0 ! negative correction -INTEGER :: NSEDIRI=0 ! SEDImentation ICE3 -INTEGER :: NHENURI=0 ! HEterogenous NUcleation ICE3 -INTEGER :: NHONRI=0 ! HOmogeneous Nucleation ICE3 -INTEGER :: NAGGSRI=0 ! AGGregation of snow ICE3 -INTEGER :: NAUTSRI=0 ! AUToconversion of ice ICE3 -INTEGER :: NCFRZRI=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGRI=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRI=0 ! DRY Growth of graupel ICE3 -INTEGER :: NIMLTRI=0 ! Ice MeLTing ICE3 -INTEGER :: NBERFIRI=0 ! BERgeron-FIndeisen gth. ICE3 -INTEGER :: NCDEPIRI=0 ! Cond./DEPosition on ice ICE3 -INTEGER :: NWETHRI=0 ! wet growth of hail ICE4 -INTEGER :: NHINDRI=0 ! heterogeneous nucleation by deposition C3R5 -INTEGER :: NHINCRI=0 ! heterogeneous nucleation by contact C3R5 -INTEGER :: NHONHRI=0 ! haze homogeneous nucleation source C3R5 -INTEGER :: NHONCRI=0 ! droplet homogeneous nucleation C3R5 -INTEGER :: NCNVIRI=0 ! Conversion of snow to r_i C3R5 -INTEGER :: NCNVSRI=0 ! Conversion of pristine ice to r_s C3R5 -INTEGER :: NHMSRI=0 ! Hallett-Mossop ice multiplication process due to snow riming C3R5 -INTEGER :: NHMGRI=0 ! Hallett-Mossop ice multiplication process due to graupel riming C3R5 -INTEGER :: NCEDSRI=0 ! adjustement C3R5 -! -! Allowed processes for the budget of moist variable RRS (snow) -! -! Courant namelist: NAM_BURRS -! -LOGICAL :: LBU_RRS=.FALSE. ! True when the budget of RRS is performed -! -INTEGER :: NASSERS=0 ! time filter -INTEGER :: NNESTRS=0 ! Efffect of 2way nesting on Rs -INTEGER :: NADVRS=0 ! Total advection for PPM -INTEGER :: NADVXRS=0 ! advection along X (all except PPM) -INTEGER :: NADVYRS=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRS=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRS=0 ! forcing -INTEGER :: NDIFRS=0 ! numerical diffusion -INTEGER :: NRELRS=0 ! relaxation -INTEGER :: NNEGARS=0 ! negative correction -INTEGER :: NSEDIRS=0 ! SEDImentation ICE3 -INTEGER :: NDEPSRS=0 ! DEPosition on Snow ICE3 -INTEGER :: NAGGSRS=0 ! AGGregation of snow ICE3 -INTEGER :: NAUTSRS=0 ! AUToconversion of ice ICE3 -INTEGER :: NRIMRS=0 ! RIMing of cloudwater ICE3 -INTEGER :: NACCRS=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCMELRS=0 ! Conversion MeLTing ICE3 -INTEGER :: NWETGRS=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRS=0 ! DRY Growth of graupel ICE3 -INTEGER :: NWETHRS=0 ! wet growth of hail ICE4 -INTEGER :: NCNVIRS=0 ! Conversion of snow to r_i C3R5 -INTEGER :: NCNVSRS=0 ! Conversion of pristine ice to r_s C3R5 -INTEGER :: NHMSRS=0 ! Hallett-Mossop ice multiplication process due to snow riming C3R5 -! -! Allowed processes for the budget of moist variable RRG (graupel) -! -! Courant namelist: NAM_BURRG -! -LOGICAL :: LBU_RRG=.FALSE. ! True when the budget of RRG is performed -! -INTEGER :: NASSERG=0 ! time filter -INTEGER :: NNESTRG=0 ! Efffect of 2way nesting on Rg -INTEGER :: NADVRG=0 ! Total advection for PPM -INTEGER :: NADVXRG=0 ! advection along X (all except PPM) -INTEGER :: NADVYRG=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRG=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRG=0 ! forcing -INTEGER :: NDIFRG=0 ! numerical diffusion -INTEGER :: NRELRG=0 ! relaxation -INTEGER :: NNEGARG=0 ! negative correction -INTEGER :: NSEDIRG=0 ! SEDImentation ICE3 -INTEGER :: NSFRRG=0 ! Spontaneous FReezing ICE3 -INTEGER :: NDEPGRG=0 ! DEPosition on Snow ICE3 -INTEGER :: NRIMRG=0 ! RIMing of cloudwater ICE3 -INTEGER :: NACCRG=0 ! ACCretion of rainwater ICE3 -INTEGER :: NCMELRG=0 ! Conversion MeLTing ICE3 -INTEGER :: NCFRZRG=0 ! Conversion FReeZing ICE3 -INTEGER :: NWETGRG=0 ! WET Growth of graupel ICE3 -INTEGER :: NDRYGRG=0 ! DRY Growth of graupel ICE3 -INTEGER :: NGMLTRG=0 ! Graupel MeLTing ICE3 -INTEGER :: NWETHRG=0 ! wet growth of hail ICE4 -INTEGER :: NHONRRG=0 ! drop homogeneous nucleation C3R5 -INTEGER :: NHMGRG=0 ! Hallett-Mossop ice multiplication process due to graupel riming -INTEGER :: NCOHGRG=0 ! conversion of hail to graupel -! -! Allowed processes for the budget of moist variable RRH (hail) -! -! Courant namelist: NAM_BURRH -! -LOGICAL :: LBU_RRH=.FALSE. ! True when the budget of RRH is performed -! -INTEGER :: NASSERH=0 ! time filter -INTEGER :: NNESTRH=0 ! Efffect of 2way nesting on Rh -INTEGER :: NADVRH=0 ! Total advection for PPM -INTEGER :: NADVXRH=0 ! advection along X (all except PPM) -INTEGER :: NADVYRH=0 ! advection along Y (all except PPM) -INTEGER :: NADVZRH=0 ! advection along Z (all except PPM) -INTEGER :: NFRCRH=0 ! forcing -INTEGER :: NDIFRH=0 ! numerical diffusion -INTEGER :: NRELRH=0 ! relaxation -INTEGER :: NNEGARH=0 ! negative correction -INTEGER :: NSEDIRH=0 ! sedimentation -INTEGER :: NWETGRH=0 ! wet growth of graupel -INTEGER :: NWETHRH=0 ! wet growth of hail -INTEGER :: NHMLTRH=0 ! melting -INTEGER :: NCOHGRH=0 ! conversion of hail to graupel -! -! Courant namelist: NAM_BURSV -! -LOGICAL :: LBU_RSV=.FALSE. ! True when the budget of RSVx is performed -! -INTEGER :: NASSESV=0 ! Asselin-Robert time filter -INTEGER :: NNESTSV=0 ! Efffect of 2way nesting on Sv -INTEGER :: NADVSV=0 ! Total advection for PPM -INTEGER :: NADVXSV=0 ! advection along X (all except PPM) -INTEGER :: NADVYSV=0 ! advection along Y (all except PPM) -INTEGER :: NADVZSV=0 ! advection along Z (all except PPM) -INTEGER :: NFRCSV=0 ! forcing -INTEGER :: NDIFSV=0 ! numerical diffusion -INTEGER :: NRELSV=0 ! relaxation -INTEGER :: NDCONVSV=0 ! Deep CONVection -INTEGER :: NMAFLSV=0 ! mass flux -INTEGER :: NHTURBSV=0 ! horizontal turbulence -INTEGER :: NVTURBSV=0 ! vertical turbulence -INTEGER :: NCHEMSV=0 ! chemistry activity -! -INTEGER :: NNEGASV=0 -! -! Allowed processes for the budget of electric charge carried by water vapor -INTEGER :: NDEPSQV=0 -INTEGER :: NDEPGQV=0 -INTEGER :: NREVAQV=0 -INTEGER :: NDEPIQV=0 -INTEGER :: NNEUTQV=0 -! -! Allowed processes for the budget of electric charge carried by cloud droplets -INTEGER :: NAUTOQC=0 -INTEGER :: NACCRQC=0 -INTEGER :: NRIMQC=0 -INTEGER :: NWETGQC=0 -INTEGER :: NDRYGQC=0 -INTEGER :: NIMLTQC=0 -INTEGER :: NBERFIQC=0 -INTEGER :: NDEPIQC=0 -INTEGER :: NINDQC=0 ! inductive process -INTEGER :: NSEDIQC=0 -INTEGER :: NNEUTQC=0 -! -! Allowed processes for the budget of electric charge carried by rain drops -INTEGER :: NAUTOQR=0 -INTEGER :: NACCRQR=0 -INTEGER :: NREVAQR=0 -INTEGER :: NACCQR=0 -INTEGER :: NCFRZQR=0 -INTEGER :: NWETGQR=0 -INTEGER :: NDRYGQR=0 -INTEGER :: NGMLTQR=0 -INTEGER :: NSEDIQR=0 -INTEGER :: NNEUTQR=0 -! -! Allowed processes for the budget of electric charge carried by ice crystals -INTEGER :: NAGGSQI=0 -INTEGER :: NAUTSQI=0 -INTEGER :: NCFRZQI=0 -INTEGER :: NWETGQI=0 -INTEGER :: NDRYGQI=0 -INTEGER :: NIMLTQI=0 -INTEGER :: NBERFIQI=0 -INTEGER :: NDEPIQI=0 -INTEGER :: NNIISQI=0 ! non-inductive I-S -INTEGER :: NSEDIQI=0 -INTEGER :: NNEUTQI=0 -! -! Allowed processes for the budget of electric charge carried by snow -INTEGER :: NDEPSQS=0 -INTEGER :: NAGGSQS=0 -INTEGER :: NAUTSQS=0 -INTEGER :: NRIMQS=0 -INTEGER :: NACCQS=0 -INTEGER :: NCMELQS=0 -INTEGER :: NWETGQS=0 -INTEGER :: NDRYGQS=0 -INTEGER :: NNIISQS=0 ! non-inductive I-S -INTEGER :: NSEDIQS=0 -INTEGER :: NNEUTQS=0 -! -! Allowed processes for the budget of electric charge carried by graupel -INTEGER :: NDEPGQG=0 -INTEGER :: NRIMQG=0 -INTEGER :: NACCQG=0 -INTEGER :: NCMELQG=0 -INTEGER :: NCFRZQG=0 -INTEGER :: NWETGQG=0 -INTEGER :: NDRYGQG=0 -INTEGER :: NGMLTQG=0 -INTEGER :: NINDQG=0 ! inductive process -INTEGER :: NSEDIQG=0 -INTEGER :: NNEUTQG=0 -! -! must add processes for electric charge carried by hail -! -! -REAL :: XTIME_BU=0. ! budget time in this time-step -REAL :: XTIME_BU_PROCESS=0. ! budget time per process for this time-step +INTEGER :: NBUMOD=0 ! model in which budget is calculated ! LOGICAL :: LBUDGET_U=.FALSE. ! flag to compute budget of RhoJu and/or LES budgets with u LOGICAL :: LBUDGET_V=.FALSE. ! flag to compute budget of RhoJv and/or LES budgets with u diff --git a/src/common/micro/compute_frac_ice.func.h b/src/common/micro/compute_frac_ice.func.h index f63cfe5548499d148d97b967ea89afe934f7857c..8c6d4e617d519e2277d3a7defe3b11c95513cafc 100644 --- a/src/common/micro/compute_frac_ice.func.h +++ b/src/common/micro/compute_frac_ice.func.h @@ -30,13 +30,13 @@ CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE ! scheme to use TYPE(NEB_t), INTENT(IN) :: NEB REAL, INTENT(IN) :: PT ! temperature REAL, INTENT(INOUT) :: PFRAC_ICE ! Ice fraction (1 for ice only, 0 for liquid only) -INTEGER, INTENT(OUT) :: KERR ! Error code in return +INTEGER, OPTIONAL, INTENT(OUT) :: KERR ! Error code in return ! !------------------------------------------------------------------------ ! 1. Compute FRAC_ICE ! -KERR=0 +IF (PRESENT(KERR)) KERR=0 SELECT CASE(HFRAC_ICE) CASE ('T') !using Temperature PFRAC_ICE = MAX( 0., MIN(1., (( NEB%XTMAXMIX - PT ) / ( NEB%XTMAXMIX - NEB%XTMINMIX )) ) ) ! freezing interval @@ -48,7 +48,7 @@ SELECT CASE(HFRAC_ICE) ! (almost) nothing to do PFRAC_ICE = MAX( 0., MIN(1., PFRAC_ICE ) ) CASE DEFAULT - KERR=1 + IF (PRESENT(KERR)) KERR=1 END SELECT END SUBROUTINE COMPUTE_FRAC_ICE diff --git a/src/common/micro/ini_rain_ice.F90 b/src/common/micro/ini_rain_ice.F90 new file mode 100644 index 0000000000000000000000000000000000000000..ecb3b4244c9656d7935438851b83f745d799863d --- /dev/null +++ b/src/common/micro/ini_rain_ice.F90 @@ -0,0 +1,1366 @@ +!MNH_LIC Copyright 1995-2019 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 + SUBROUTINE INI_RAIN_ICE ( KLUOUT, HCLOUD ) +! ########################################################### +! +!!**** *INI_RAIN_ICE * - initialize the constants necessary for the warm and +!! cold microphysical schemes. +!! +!! PURPOSE +!! ------- +!! The purpose of this routine is to initialize the constants used to +!! resolve the mixed phase microphysical scheme. The collection kernels of +!! the precipitating particles are recomputed if necessary if some parameters +!! defining the ice categories have been modified. The number of small +!! time steps leading to stable scheme for the rain, ice, snow and ggraupeln +!! sedimentation is also computed (time-splitting technique). +!! +!!** METHOD +!! ------ +!! The constants are initialized to their numerical values and the number +!! of small time step is computed by dividing the 2* Deltat time interval of +!! the Leap-frog scheme so that the stability criterion for the rain +!! sedimentation is fulfilled for a Raindrop maximal fall velocity equal +!! VTRMAX. The parameters defining the collection kernels are read and are +!! checked against the new ones. If any change occurs, these kernels are +!! recomputed and their numerical values are written in the output listing. +!! +!! EXTERNAL +!! -------- +!! GAMMA : gamma function +!! +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! Module MODD_CST +!! XPI ! +!! XP00 ! Reference pressure +!! XRD ! Gaz constant for dry air +!! XRHOLW ! Liquid water density +!! Module MODD_REF +!! XTHVREFZ ! Reference virtual pot.temp. without orography +!! Module MODD_PARAMETERS +!! JPVEXT ! +!! Module MODD_RAIN_ICE_DESCR +!! Module MODD_RAIN_ICE_PARAM +!! +!! REFERENCE +!! --------- +!! Book2 of documentation ( routine INI_RAIN_ICE ) +!! +!! AUTHOR +!! ------ +!! J.-P. Pinty * Laboratoire d'Aerologie* +!! +!! MODIFICATIONS +!! ------------- +!! Original 04/12/95 +!! J.-P. Pinty 05/04/96 Add automatic control and regeneration of the +!! collection kernels +!! J.-P. Pinty 10/05/96 Correction of ZRATE and computations of RIM +!! J.-P. Pinty 24/11/97 Sedimentation of ice made for Columns and bug for XAG +!! J.-P. Lafore 23/11/98 Back to Lin et al. 83 formulation for RIAUTS +!! with a Critical ice content set to .5 g/Kg +!! N. Asencio 13/08/98 parallel code: PDZMIN is computed outside in ini_modeln +!! J.-P. Lafore 12/8/98 In case of nesting microphysics constants of +!! MODD_RAIN_ICE_PARAM are computed only once. +!! Only KSPLTR is computed for each model. +!! J. Stein 20/04/99 remove 2 unused local variables +!! G Molinie 21/05/99 Bug in XEXRCFRI and XRCFRI +!! J.-P. Pinty 24/06/00 Bug in RCRIMS +!! J.-P. Pinty 24/12/00 Update hail case +!! J.-P. Chaboureau & J.-P. Pinty +!! 24/03/01 Update XCRIAUTI for cirrus cases +!! J.-P. Pinty 24/11/01 Update ICE3/ICE4 options +!! S. Riette 2016-11: new ICE3/ICE4 options +!! P. Wautelet 22/01/2019 bug correction: incorrect write +! P. Wautelet 26/04/2019: replace non-standard FLOAT function by REAL function +! +!------------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST +USE MODD_PARAMETERS +USE MODD_PARAM_ICE +USE MODD_RAIN_ICE_DESCR +USE MODD_RAIN_ICE_PARAM +USE MODD_REF +! +USE MODI_GAMMA +USE MODI_GAMMA_INC +USE MODE_RRCOLSS, ONLY: RRCOLSS +USE MODE_RZCOLX, ONLY: RZCOLX +USE MODE_RSCOLRG, ONLY: RSCOLRG +USE MODE_READ_XKER_RACCS, ONLY: READ_XKER_RACCS +USE MODE_READ_XKER_SDRYG, ONLY: READ_XKER_SDRYG +USE MODE_READ_XKER_RDRYG, ONLY: READ_XKER_RDRYG +USE MODE_READ_XKER_SWETH, ONLY: READ_XKER_SWETH +USE MODE_READ_XKER_GWETH, ONLY: READ_XKER_GWETH +USE MODE_READ_XKER_RWETH, ONLY: READ_XKER_RWETH +! +USE PARKIND1, ONLY : JPRB +USE YOMHOOK , ONLY : LHOOK, DR_HOOK +! +IMPLICIT NONE +! +!* 0.1 Declarations of dummy arguments : +! +! +INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints +! +CHARACTER (LEN=4), INTENT(IN) :: HCLOUD ! Indicator of the cloud scheme +! +! +! +!* 0.2 Declarations of local variables : +! +INTEGER :: IKB ! Coordinates of the first physical + ! points along z +INTEGER :: J1,J2 ! Internal loop indexes +REAL :: ZT ! Work variable +REAL :: ZVTRMAX ! Raindrop maximal fall velocity +REAL :: ZRHO00 ! Surface reference air density +REAL :: ZE, ZRV ! Work array for ZRHO00 computation +REAL :: ZRATE ! Geometrical growth of Lbda in the tabulated + ! functions and kernels +REAL :: ZBOUND ! XDCSLIM*Lbda_s: upper bound for the partial + ! integration of the riming rate of the aggregates +REAL :: ZEGS, ZEGR, ZEHS, & ! Bulk collection efficiencies + & ZEHG, ZEHR +! +INTEGER :: IND ! Number of interval to integrate the kernels +REAL :: ZESR ! Mean efficiency of rain-aggregate collection +REAL :: ZFDINFTY ! Factor used to define the "infinite" diameter +! +! +! +LOGICAL :: GFLAG ! Logical flag for printing the constatnts on the output + ! listing +REAL :: ZCONC_MAX ! Maximal concentration for snow +REAL :: ZGAMC,ZGAMC2 ! parameters + ! involving various moments of the generalized gamma law +REAL :: ZFACT_NUCL! Amplification factor for the minimal ice concentration +REAL :: ZXR ! Value of x_r in N_r = C_r lambda_r ** x_r +! +INTEGER :: KND +INTEGER :: KACCLBDAS,KACCLBDAR,KDRYLBDAG,KDRYLBDAS,KDRYLBDAR +INTEGER :: KWETLBDAS,KWETLBDAG,KWETLBDAR,KWETLBDAH +REAL :: PALPHAR,PALPHAS,PALPHAG,PALPHAH +REAL :: PNUR,PNUS,PNUG,PNUH +REAL :: PBR,PBS,PBG +REAL :: PCR,PCS,PCG,PCH +REAL :: PDR,PDS,PDG,PDH +REAL :: PESR,PEGS,PEGR,PEHS,PEHG,PEHR +REAL :: PFDINFTY +REAL :: PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN +REAL :: PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN +REAL :: PDRYLBDAR_MAX,PDRYLBDAR_MIN +REAL :: PWETLBDAS_MAX,PWETLBDAG_MAX,PWETLBDAS_MIN,PWETLBDAG_MIN +REAL :: PWETLBDAR_MAX,PWETLBDAH_MAX,PWETLBDAR_MIN,PWETLBDAH_MIN +! +REAL(KIND=JPRB) :: ZHOOK_HANDLE +!------------------------------------------------------------------------------- +IF (LHOOK) CALL DR_HOOK('INI_RAIN_ICE',0,ZHOOK_HANDLE) +! +IF(.NOT.ASSOCIATED(XCEXVT)) CALL RAIN_ICE_DESCR_ASSOCIATE() +IF(.NOT.ASSOCIATED(XFSEDC)) CALL RAIN_ICE_PARAM_ASSOCIATE() +! +! +!* 0. FUNCTION STATEMENTS +! ------------------- +! +! +!* 0.1 p_moment of the Generalized GAMMA function +! +! +! +! +IF (ASSOCIATED(XRTMIN)) THEN ! In case of nesting microphysics constants of + ! MODD_RAIN_ICE_PARAM are computed only once, + ! but if INI_RAIN_ICE has been called already + ! one must change the XRTMIN size. + CALL RAIN_ICE_DESCR_DEALLOCATE() +END IF +! +IF (HCLOUD == 'ICE4') THEN + CALL RAIN_ICE_DESCR_ALLOCATE(7) +ELSE IF (HCLOUD == 'ICE3') THEN + CALL RAIN_ICE_DESCR_ALLOCATE(6) +END IF +! +XRTMIN(1) = 1.0E-20 +XRTMIN(2) = 1.0E-20 +XRTMIN(3) = 1.0E-20 +XRTMIN(4) = 1.0E-20 +XRTMIN(5) = 1.0E-15 +XRTMIN(6) = 1.0E-15 +IF (HCLOUD == 'ICE4') XRTMIN(7) = 1.0E-15 +! +!------------------------------------------------------------------------------- +! +!* 2. CHARACTERISTICS OF THE SPECIES +! ------------------------------ +! +! +!* 2.1 Cloud droplet and Raindrop characteristics +! +XAC = (XPI/6.0)*XRHOLW +XBC = 3.0 +XCC = XRHOLW*XG/(18.0*1.7E-5) ! Stokes flow (Pruppacher p 322 for T=273K) +XDC = 2.0 +! +! +XAR = (XPI/6.0)*XRHOLW +XBR = 3.0 +XCR = 842. +XDR = 0.8 +! +!XCCR = 1.E7 ! N0_r = XCXR * lambda_r ** ZXR +XCCR = 8.E6 ! N0_r = XCXR * lambda_r ** ZXR +ZXR = -1. ! +! +XF0R = 1.00 +XF1R = 0.26 +! +XC1R = 1./2. +! +! +!* 2.2 Ice crystal characteristics +! +! +SELECT CASE (CPRISTINE_ICE) + CASE('PLAT') + XAI = 0.82 ! Plates + XBI = 2.5 ! Plates + XC_I = 800. ! Plates + XDI = 1.0 ! Plates + XC1I = 1./XPI ! Plates + CASE('COLU') + XAI = 2.14E-3 ! Columns + XBI = 1.7 ! Columns + XC_I = 2.1E5 ! Columns + XDI = 1.585 ! Columns + XC1I = 0.8 ! Columns + CASE('BURO') + XAI = 44.0 ! Bullet rosettes + XBI = 3.0 ! Bullet rosettes + XC_I = 4.3E5 ! Bullet rosettes + XDI = 1.663 ! Bullet rosettes + XC1I = 0.5 ! Bullet rosettes +END SELECT +! +! Note that XCCI=N_i (a locally predicted value) and XCXI=0.0, implicitly +! +XF0I = 1.00 +XF2I = 0.14 +! +! +!* 2.3 Snowflakes/aggregates characteristics +! +! +XAS = 0.02 +XBS = 1.9 +XCS = 5.1 +XDS = 0.27 +! +XCCS = 5.0 +XCXS = 1.0 +! +XF0S = 0.86 +XF1S = 0.28 +! +XC1S = 1./XPI +! +! +!* 2.4 Graupel/Frozen drop characteristics +! +! +XAG = 19.6 ! Lump graupel case +XBG = 2.8 ! Lump graupel case +XCG = 124. ! Lump graupel case +XDG = 0.66 ! Lump graupel case +! +XCCG = 5.E5 +XCXG = -0.5 +! XCCG = 4.E4 ! Test of Ziegler (1988) +! XCXG = -1.0 ! Test of Ziegler (1988) +! +XF0G = 0.86 +XF1G = 0.28 +! +XC1G = 1./2. +! +! +!* 2.5 Hailstone characteristics +! +! +XAH = 470. +XBH = 3.0 +XCH = 207. +XDH = 0.64 +! +!XCCH = 5.E-4 +!XCXH = 2.0 +!!!!!!!!!!!! + XCCH = 4.E4 ! Test of Ziegler (1988) + XCXH = -1.0 ! Test of Ziegler (1988) +!!! XCCH = 5.E5 ! Graupel_like +!!! XCXH = -0.5 ! Graupel_like +!!!!!!!!!!!! +! +XF0H = 0.86 +XF1H = 0.28 +! +XC1H = 1./2. +! +!------------------------------------------------------------------------------- +! +!* 3. DIMENSIONAL DISTRIBUTIONS OF THE SPECIES +! ---------------------------------------- +! +! +! 3.1 Cloud droplet distribution +! +! Over land +XALPHAC = 1.0 ! Gamma law of the Cloud droplet (here volume-like distribution) +XNUC = 3.0 ! Gamma law with little dispersion +! +! +! Over sea +XALPHAC2 = 3.0 ! Gamma law of the Cloud droplet (here volume-like distribution) +XNUC2 = 1.0 ! Gamma law with little dispersion +! +!* 3.2 Raindrops distribution +! +XALPHAR = 1.0 ! Exponential law +XNUR = 1.0 ! Exponential law +! +!* 3.3 Ice crystal distribution +! +XALPHAI = 3.0 ! Gamma law for the ice crystal volume +XNUI = 3.0 ! Gamma law with little dispersion +! +XALPHAS = 1.0 ! Exponential law +XNUS = 1.0 ! Exponential law +! +XALPHAG = 1.0 ! Exponential law +XNUG = 1.0 ! Exponential law +! +XALPHAH = 1.0 ! Gamma law +XNUH = 8.0 ! Gamma law with little dispersion +! +!* 3.4 Constants for shape parameter +! +ZGAMC = MOMG(XALPHAC,XNUC,3.) +ZGAMC2 = MOMG(XALPHAC2,XNUC2,3.) +XLBC(1) = XAR*ZGAMC +XLBC(2) = XAR*ZGAMC2 +XLBEXC = 1.0/XBC +! +XLBEXR = 1.0/(-1.0-XBR) +XLBR = ( XAR*XCCR*MOMG(XALPHAR,XNUR,XBR) )**(-XLBEXR) +! +XLBEXI = 1.0/(-XBI) +XLBI = ( XAI*MOMG(XALPHAI,XNUI,XBI) )**(-XLBEXI) +! +XLBEXS = 1.0/(XCXS-XBS) +XLBS = ( XAS*XCCS*MOMG(XALPHAS,XNUS,XBS) )**(-XLBEXS) +! +XLBEXG = 1.0/(XCXG-XBG) +XLBG = ( XAG*XCCG*MOMG(XALPHAG,XNUG,XBG) )**(-XLBEXG) +! +XLBEXH = 1.0/(XCXH-XBH) +XLBH = ( XAH*XCCH*MOMG(XALPHAH,XNUH,XBH) )**(-XLBEXH) +! +!* 3.5 Minimal values allowed for the mixing ratios +! +XLBDAR_MAX = 100000.0 +XLBDAS_MAX = 100000.0 +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) +! +XCONC_SEA=1E8 ! 100/cm3 +XCONC_LAND=3E8 ! 300/cm3 +XCONC_URBAN=5E8 ! 500/cm3 +! +!------------------------------------------------------------------------------- +! +!* 4. CONSTANTS FOR THE SEDIMENTATION +! ------------------------------- +! +! +!* 4.1 Exponent of the fall-speed air density correction +! +XCEXVT = 0.4 +! +IKB = 1 + JPVEXT +!ZRHO00 = XP00/(XRD*XTHVREFZ(IKB)) +!According to Foote and Du Toit (1969) and List (1958), ZRHO00 must be computed for Hu=50%, P=101325Pa and T=293.15K +ZE = (50./100.) * EXP(XALPW-XBETAW/293.15-XGAMW*LOG(293.15)) +ZRV = (XRD/XRV) * ZE / (101325.-ZE) +ZRHO00 = 101325.*(1.+ZRV)/(XRD+ZRV*XRV)/293.15 +! +!* 4.2 Constants for sedimentation +! +XFSEDC(1) = GAMMA(XNUC+(XDC+3.)/XALPHAC)/GAMMA(XNUC+3./XALPHAC)* & + (ZRHO00)**XCEXVT +XFSEDC(2) = GAMMA(XNUC2+(XDC+3.)/XALPHAC2)/GAMMA(XNUC2+3./XALPHAC2)* & + (ZRHO00)**XCEXVT +! +XEXSEDR = (XBR+XDR+1.0)/(XBR+1.0) +XFSEDR = XCR*XAR*XCCR*MOMG(XALPHAR,XNUR,XBR+XDR)* & + (XAR*XCCR*MOMG(XALPHAR,XNUR,XBR))**(-XEXSEDR)*(ZRHO00)**XCEXVT +! +XEXRSEDI = (XBI+XDI)/XBI +XEXCSEDI = 1.0-XEXRSEDI +XFSEDI = (4.*XPI*900.)**(-XEXCSEDI) * & + XC_I*XAI*MOMG(XALPHAI,XNUI,XBI+XDI) * & + ((XAI*MOMG(XALPHAI,XNUI,XBI)))**(-XEXRSEDI) * & + (ZRHO00)**XCEXVT +!When we do not use computations for columns, I think we must uncomment line just below +!XEXCSEDI = XEXCSEDI * 3. to be checked +! +! Computations made for Columns +! +XEXRSEDI = 1.9324 +XEXCSEDI =-0.9324 +XFSEDI = 3.89745E11*MOMG(XALPHAI,XNUI,3.285)* & + MOMG(XALPHAI,XNUI,1.7)**(-XEXRSEDI)*(ZRHO00)**XCEXVT +XEXCSEDI =-0.9324*3.0 +WRITE (KLUOUT,FMT=*)' PRISTINE ICE SEDIMENTATION for columns XFSEDI =',XFSEDI +! +! +XEXSEDS = (XBS+XDS-XCXS)/(XBS-XCXS) +XFSEDS = XCS*XAS*XCCS*MOMG(XALPHAS,XNUS,XBS+XDS)* & + (XAS*XCCS*MOMG(XALPHAS,XNUS,XBS))**(-XEXSEDS)*(ZRHO00)**XCEXVT +! +XEXSEDG = (XBG+XDG-XCXG)/(XBG-XCXG) +XFSEDG = XCG*XAG*XCCG*MOMG(XALPHAG,XNUG,XBG+XDG)* & + (XAG*XCCG*MOMG(XALPHAG,XNUG,XBG))**(-XEXSEDG)*(ZRHO00)**XCEXVT +! +XEXSEDH = (XBH+XDH-XCXH)/(XBH-XCXH) +XFSEDH = XCH*XAH*XCCH*MOMG(XALPHAH,XNUH,XBH+XDH)* & + (XAH*XCCH*MOMG(XALPHAH,XNUH,XBH))**(-XEXSEDH)*(ZRHO00)**XCEXVT +! +! +!------------------------------------------------------------------------------- +! +!* 5. CONSTANTS FOR THE SLOW COLD PROCESSES +! ------------------------------------- +! +! +!* 5.1 Constants for ice nucleation +! +SELECT CASE (CPRISTINE_ICE) + CASE('PLAT') + ZFACT_NUCL = 1.0 ! Plates + CASE('COLU') + ZFACT_NUCL = 25.0 ! Columns + CASE('BURO') + ZFACT_NUCL = 17.0 ! Bullet rosettes +END SELECT +! +XNU10 = 50.*ZFACT_NUCL +XALPHA1 = 4.5 +XBETA1 = 0.6 +! +XNU20 = 1000.*ZFACT_NUCL +XALPHA2 = 12.96 +XBETA2 = 0.639 +! +XMNU0 = 6.88E-13 +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" Heterogeneous nucleation")') + WRITE(UNIT=KLUOUT,FMT='(" NU10=",E13.6," ALPHA1=",E13.6," BETA1=",E13.6)') & + XNU10,XALPHA1,XBETA1 + WRITE(UNIT=KLUOUT,FMT='(" NU20=",E13.6," ALPHA2=",E13.6," BETA2=",E13.6)') & + XNU20,XALPHA2,XBETA2 + WRITE(UNIT=KLUOUT,FMT='(" mass of embryo XMNU0=",E13.6)') XMNU0 +END IF +! +XALPHA3 = -3.075 +XBETA3 = 81.00356 +XHON = (XPI/6.)*((2.0*3.0*4.0*5.0*6.0)/(2.0*3.0))*(1.1E5)**(-3.0) ! + ! Pi/6 * (G_c(6)/G_c(3)) * (1/Lbda_c**3) + ! avec Lbda_c=1.1E5 m^-1 + ! the formula is equivalent to + ! rho_dref * r_c G(6) + ! Pi/6 * -------------- * --------- + ! rho_lw * N_c G(3)*G(3) +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" Homogeneous nucleation")') + WRITE(UNIT=KLUOUT,FMT='(" ALPHA3=",E13.6," BETA3=",E13.6)') XALPHA3,XBETA3 + WRITE(UNIT=KLUOUT,FMT='(" constant XHON=",E13.6)') XHON +END IF +! +! +!* 5.2 Constants for vapor deposition on ice +! +XSCFAC = (0.63**(1./3.))*SQRT((ZRHO00)**XCEXVT) ! One assumes Sc=0.63 +! +X0DEPI = (4.0*XPI)*XC1I*XF0I*MOMG(XALPHAI,XNUI,1.) +X2DEPI = (4.0*XPI)*XC1I*XF2I*XC_I*MOMG(XALPHAI,XNUI,XDI+2.0) +! +X0DEPS = (4.0*XPI)*XCCS*XC1S*XF0S*MOMG(XALPHAS,XNUS,1.) +X1DEPS = (4.0*XPI)*XCCS*XC1S*XF1S*SQRT(XCS)*MOMG(XALPHAS,XNUS,0.5*XDS+1.5) +XEX0DEPS = XCXS-1.0 +XEX1DEPS = XCXS-0.5*(XDS+3.0) +! +X0DEPG = (4.0*XPI)*XCCG*XC1G*XF0G*MOMG(XALPHAG,XNUG,1.) +X1DEPG = (4.0*XPI)*XCCG*XC1G*XF1G*SQRT(XCG)*MOMG(XALPHAG,XNUG,0.5*XDG+1.5) +XEX0DEPG = XCXG-1.0 +XEX1DEPG = XCXG-0.5*(XDG+3.0) +! +X0DEPH = (4.0*XPI)*XCCH*XC1H*XF0H*MOMG(XALPHAH,XNUH,1.) +X1DEPH = (4.0*XPI)*XCCH*XC1H*XF1H*SQRT(XCH)*MOMG(XALPHAH,XNUH,0.5*XDH+1.5) +XEX0DEPH = XCXH-1.0 +XEX1DEPH = XCXH-0.5*(XDH+3.0) +! +!* 5.3 Constants for pristine ice autoconversion +! +XTIMAUTI = 1.E-3 ! Time constant at T=T_t +XTEXAUTI = 0.015 ! Temperature factor of the I+I collection efficiency +!!XCRIAUTI = 0.25E-3 ! Critical ice content for the autoconversion to occur +XCRIAUTI = 0.2E-4 ! Critical ice content for the autoconversion to occur + ! Revised value by Chaboureau et al. (2001) +XACRIAUTI=0.06 +XBCRIAUTI=-3.5 +XT0CRIAUTI=(LOG10(XCRIAUTI)-XBCRIAUTI)/0.06 + +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" pristine ice autoconversion")') + WRITE(UNIT=KLUOUT,FMT='(" Time constant XTIMAUTI=",E13.6)') XTIMAUTI + WRITE(UNIT=KLUOUT,FMT='(" Temp. factor XTEXAUTI=",E13.6)') XTEXAUTI + WRITE(UNIT=KLUOUT,FMT='(" Crit. ice cont. XCRIAUTI=",E13.6)') XCRIAUTI + WRITE(UNIT=KLUOUT,FMT='(" A Coef. for cirrus law XACRIAUTI=",E13.6)')XACRIAUTI + WRITE(UNIT=KLUOUT,FMT='(" B Coef. for cirrus law XBCRIAUTI=",E13.6)')XBCRIAUTI + WRITE(UNIT=KLUOUT,FMT='(" Temp degC at which cirrus law starts to be used=",E13.6)') XT0CRIAUTI +END IF +! +! +!* 5.4 Constants for snow aggregation +! +XCOLIS = 0.25 ! Collection efficiency of I+S +XCOLEXIS = 0.05 ! Temperature factor of the I+S collection efficiency +XFIAGGS = (XPI/4.0)*XCOLIS*XCCS*XCS*(ZRHO00**XCEXVT)*MOMG(XALPHAS,XNUS,XDS+2.0) +XEXIAGGS = XCXS-XDS-2.0 +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" snow aggregation")') + WRITE(UNIT=KLUOUT,FMT='(" Coll. efficiency XCOLIS=",E13.6)') XCOLIS + WRITE(UNIT=KLUOUT,FMT='(" Temp. factor XCOLEXIS=",E13.6)') XCOLEXIS +END IF +! +! +!------------------------------------------------------------------------------- +! +!* 6. CONSTANTS FOR THE SLOW WARM PROCESSES +! ------------------------------------- +! +! +!* 6.1 Constants for the cloud droplets autoconversion +! +XTIMAUTC = 1.E-3 +XCRIAUTC = 0.5E-3 +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" cloud droplets autoconversion")') + WRITE(UNIT=KLUOUT,FMT='(" Time constant XTIMAUTC=",E13.6)') XTIMAUTC + WRITE(UNIT=KLUOUT,FMT='(" Crit. ice cont. XCRIAUTC=",E13.6)') XCRIAUTC +END IF +! +!* 6.2 Constants for the accretion of cloud droplets by raindrops +! +XFCACCR = (XPI/4.0)*XCCR*XCR*(ZRHO00**XCEXVT)*MOMG(XALPHAR,XNUR,XDR+2.0) +XEXCACCR = -XDR-3.0 +! +!* 6.3 Constants for the evaporation of the raindrops +! +X0EVAR = (4.0*XPI)*XCCR*XC1R*XF0R*MOMG(XALPHAR,XNUR,1.) +X1EVAR = (4.0*XPI)*XCCR*XC1R*XF1R*SQRT(XCR)*MOMG(XALPHAR,XNUR,0.5*XDR+1.5) +XEX0EVAR = -2.0 +XEX1EVAR = -1.0-0.5*(XDR+3.0) +! +! +!------------------------------------------------------------------------------- +! +!* 7. CONSTANTS FOR THE FAST COLD PROCESSES FOR THE AGGREGATES +! -------------------------------------------------------- +! +! +!* 7.1 Constants for the riming of the aggregates +! +XDCSLIM = 0.007 ! D_cs^lim = 7 mm as suggested by Farley et al. (1989) +XCOLCS = 1.0 +XEXCRIMSS= XCXS-XDS-2.0 +XCRIMSS = (XPI/4.0)*XCOLCS*XCCS*XCS*(ZRHO00**XCEXVT)*MOMG(XALPHAS,XNUS,XDS+2.0) +XEXCRIMSG= XEXCRIMSS +XCRIMSG = XCRIMSS +XSRIMCG = XCCS*XAS*MOMG(XALPHAS,XNUS,XBS) +XEXSRIMCG= XCXS-XBS +XSRIMCG2 = XCCS*XAG*MOMG(XALPHAS,XNUS,XBG) +XSRIMCG3 = XFRACM90 +XEXSRIMCG2=XCXS-XBG +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" riming of the aggregates")') + WRITE(UNIT=KLUOUT,FMT='(" D_cs^lim (Farley et al.) XDCSLIM=",E13.6)') XDCSLIM + WRITE(UNIT=KLUOUT,FMT='(" Coll. efficiency XCOLCS=",E13.6)') XCOLCS +END IF +! +NGAMINC = 80 +XGAMINC_BOUND_MIN = 1.0E-1 ! Minimal value of (Lbda * D_cs^lim)**alpha +XGAMINC_BOUND_MAX = 1.0E7 ! Maximal value of (Lbda * D_cs^lim)**alpha +ZRATE = EXP(LOG(XGAMINC_BOUND_MAX/XGAMINC_BOUND_MIN)/REAL(NGAMINC-1)) +! +IF( .NOT.ASSOCIATED(XGAMINC_RIM1) ) CALL RAIN_ICE_PARAM_ALLOCATE('XGAMINC_RIM1', NGAMINC) +IF( .NOT.ASSOCIATED(XGAMINC_RIM2) ) CALL RAIN_ICE_PARAM_ALLOCATE('XGAMINC_RIM2', NGAMINC) +IF( .NOT.ASSOCIATED(XGAMINC_RIM4) ) CALL RAIN_ICE_PARAM_ALLOCATE('XGAMINC_RIM4', NGAMINC) +! +DO J1=1,NGAMINC + ZBOUND = XGAMINC_BOUND_MIN*ZRATE**(J1-1) + XGAMINC_RIM1(J1) = GAMMA_INC(XNUS+(2.0+XDS)/XALPHAS,ZBOUND) + XGAMINC_RIM2(J1) = GAMMA_INC(XNUS+XBS/XALPHAS ,ZBOUND) + XGAMINC_RIM4(J1) = GAMMA_INC(XNUS+XBG/XALPHAS ,ZBOUND) +END DO +! +XRIMINTP1 = XALPHAS / LOG(ZRATE) +XRIMINTP2 = 1.0 + XRIMINTP1*LOG( XDCSLIM/(XGAMINC_BOUND_MIN)**(1.0/XALPHAS) ) +! +!* 7.2 Constants for the accretion of raindrops onto aggregates +! +XFRACCSS = ((XPI**2)/24.0)*XCCS*XCCR*XRHOLW*(ZRHO00**XCEXVT) +! +XLBRACCS1 = MOMG(XALPHAS,XNUS,2.)*MOMG(XALPHAR,XNUR,3.) +XLBRACCS2 = 2.*MOMG(XALPHAS,XNUS,1.)*MOMG(XALPHAR,XNUR,4.) +XLBRACCS3 = MOMG(XALPHAR,XNUR,5.) +! +XFSACCRG = (XPI/4.0)*XAS*XCCS*XCCR*(ZRHO00**XCEXVT) +! +XLBSACCR1 = MOMG(XALPHAR,XNUR,2.)*MOMG(XALPHAS,XNUS,XBS) +XLBSACCR2 = 2.*MOMG(XALPHAR,XNUR,1.)*MOMG(XALPHAS,XNUS,XBS+1.) +XLBSACCR3 = MOMG(XALPHAS,XNUS,XBS+2.) +! +!* 7.2.1 Defining the ranges for the computation of the kernels +! +! Notice: One magnitude of lambda discretized over 10 points for rain +! Notice: One magnitude of lambda discretized over 10 points for snow +! +NACCLBDAS = 40 +XACCLBDAS_MIN = 5.0E1 ! Minimal value of Lbda_s to tabulate XKER_RACCS +XACCLBDAS_MAX = 5.0E5 ! Maximal value of Lbda_s to tabulate XKER_RACCS +ZRATE = LOG(XACCLBDAS_MAX/XACCLBDAS_MIN)/REAL(NACCLBDAS-1) +XACCINTP1S = 1.0 / ZRATE +XACCINTP2S = 1.0 - LOG( XACCLBDAS_MIN ) / ZRATE +NACCLBDAR = 40 +XACCLBDAR_MIN = 1.0E3 ! Minimal value of Lbda_r to tabulate XKER_RACCS +XACCLBDAR_MAX = 1.0E7 ! Maximal value of Lbda_r to tabulate XKER_RACCS +ZRATE = LOG(XACCLBDAR_MAX/XACCLBDAR_MIN)/REAL(NACCLBDAR-1) +XACCINTP1R = 1.0 / ZRATE +XACCINTP2R = 1.0 - LOG( XACCLBDAR_MIN ) / ZRATE +! +!* 7.2.2 Computations of the tabulated normalized kernels +! +IND = 50 ! Interval number, collection efficiency and infinite diameter +ZESR = 1.0 ! factor used to integrate the dimensional distributions when +ZFDINFTY = 20.0 ! computing the kernels XKER_RACCSS, XKER_RACCS and XKER_SACCRG +! +IF( .NOT.ASSOCIATED(XKER_RACCSS) ) CALL RAIN_ICE_PARAM_ALLOCATE('XKER_RACCSS', NACCLBDAS,NACCLBDAR) +IF( .NOT.ASSOCIATED(XKER_RACCS ) ) CALL RAIN_ICE_PARAM_ALLOCATE('XKER_RACCS', NACCLBDAS,NACCLBDAR) +IF( .NOT.ASSOCIATED(XKER_SACCRG) ) CALL RAIN_ICE_PARAM_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 ) +IF( (KACCLBDAS/=NACCLBDAS) .OR. (KACCLBDAR/=NACCLBDAR) .OR. (KND/=IND) .OR. & + (PALPHAS/=XALPHAS) .OR. (PNUS/=XNUS) .OR. & + (PALPHAR/=XALPHAR) .OR. (PNUR/=XNUR) .OR. & + (PESR/=ZESR) .OR. (PBS/=XBS) .OR. (PBR/=XBR) .OR. & + (PCS/=XCS) .OR. (PDS/=XDS) .OR. (PCR/=XCR) .OR. (PDR/=XDR) .OR. & + (PACCLBDAS_MAX/=XACCLBDAS_MAX) .OR. (PACCLBDAR_MAX/=XACCLBDAR_MAX) .OR. & + (PACCLBDAS_MIN/=XACCLBDAS_MIN) .OR. (PACCLBDAR_MIN/=XACCLBDAR_MIN) .OR. & + (PFDINFTY/=ZFDINFTY) ) THEN + CALL RRCOLSS ( IND, XALPHAS, XNUS, XALPHAR, XNUR, & + ZESR, XBR, XCS, XDS, XCR, XDR, & + XACCLBDAS_MAX, XACCLBDAR_MAX, XACCLBDAS_MIN, XACCLBDAR_MIN, & + ZFDINFTY, XKER_RACCSS, XAG, XBS, XAS ) + CALL RZCOLX ( IND, XALPHAS, XNUS, XALPHAR, XNUR, & + ZESR, XBR, XCS, XDS, XCR, XDR, & + XACCLBDAS_MAX, XACCLBDAR_MAX, XACCLBDAS_MIN, XACCLBDAR_MIN, & + ZFDINFTY, XKER_RACCS ) + CALL RSCOLRG ( IND, XALPHAS, XNUS, XALPHAR, XNUR, & + ZESR, XBS, XCS, XDS, XCR, XDR, & + XACCLBDAS_MAX, XACCLBDAR_MAX, XACCLBDAS_MIN, XACCLBDAR_MIN, & + ZFDINFTY, XKER_SACCRG, XAG, XBS, XAS ) + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF RACSS KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF RACS KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF SACRG KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("KND=",I3)') IND + WRITE(UNIT=KLUOUT,FMT='("KACCLBDAS=",I3)') NACCLBDAS + WRITE(UNIT=KLUOUT,FMT='("KACCLBDAR=",I3)') NACCLBDAR + WRITE(UNIT=KLUOUT,FMT='("PALPHAS=",E13.6)') XALPHAS + WRITE(UNIT=KLUOUT,FMT='("PNUS=",E13.6)') XNUS + WRITE(UNIT=KLUOUT,FMT='("PALPHAR=",E13.6)') XALPHAR + WRITE(UNIT=KLUOUT,FMT='("PNUR=",E13.6)') XNUR + WRITE(UNIT=KLUOUT,FMT='("PESR=",E13.6)') ZESR + WRITE(UNIT=KLUOUT,FMT='("PBS=",E13.6)') XBS + WRITE(UNIT=KLUOUT,FMT='("PBR=",E13.6)') XBR + WRITE(UNIT=KLUOUT,FMT='("PCS=",E13.6)') XCS + WRITE(UNIT=KLUOUT,FMT='("PDS=",E13.6)') XDS + WRITE(UNIT=KLUOUT,FMT='("PCR=",E13.6)') XCR + WRITE(UNIT=KLUOUT,FMT='("PDR=",E13.6)') XDR + WRITE(UNIT=KLUOUT,FMT='("PACCLBDAS_MAX=",E13.6)') & + XACCLBDAS_MAX + WRITE(UNIT=KLUOUT,FMT='("PACCLBDAR_MAX=",E13.6)') & + XACCLBDAR_MAX + WRITE(UNIT=KLUOUT,FMT='("PACCLBDAS_MIN=",E13.6)') & + XACCLBDAS_MIN + WRITE(UNIT=KLUOUT,FMT='("PACCLBDAR_MIN=",E13.6)') & + XACCLBDAR_MIN + WRITE(UNIT=KLUOUT,FMT='("PFDINFTY=",E13.6)') ZFDINFTY + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_RACCSS) ) THEN")') + DO J1 = 1 , NACCLBDAS + DO J2 = 1 , NACCLBDAR + WRITE(UNIT=KLUOUT,FMT='(" PKER_RACCSS(",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_RACCSS(J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,FMT='("END IF")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_RACCS ) ) THEN")') + DO J1 = 1 , NACCLBDAS + DO J2 = 1 , NACCLBDAR + WRITE(UNIT=KLUOUT,FMT='(" PKER_RACCS (",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_RACCS (J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,FMT='("END IF")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_SACCRG) ) THEN")') + DO J1 = 1 , NACCLBDAR + DO J2 = 1 , NACCLBDAS + WRITE(UNIT=KLUOUT,FMT='(" PKER_SACCRG(",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_SACCRG(J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,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 ) + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_RACCSS")') + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_RACCS ")') + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_SACCRG")') +END IF +! +!* 7.3 Constant for the conversion-melting rate +! +XFSCVMG = 2.0 +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" conversion-melting of the aggregates")') + WRITE(UNIT=KLUOUT,FMT='(" Conv. factor XFSCVMG=",E13.6)') XFSCVMG +END IF +! +! +!------------------------------------------------------------------------------- +! +!* 8. CONSTANTS FOR THE FAST COLD PROCESSES FOR THE GRAUPELN +! ------------------------------------------------------ +! +! +!* 8.1 Constants for the rain contact freezing +! +XCOLIR = 1.0 +! +XEXRCFRI = -XDR-5.0+ZXR +XRCFRI = ((XPI**2)/24.0)*XCCR*XRHOLW*XCOLIR*XCR*(ZRHO00**XCEXVT) & + *MOMG(XALPHAR,XNUR,XDR+5.0) +XEXICFRR = -XDR-2.0+ZXR +XICFRR = (XPI/4.0)*XCOLIR*XCR*(ZRHO00**XCEXVT) & + *XCCR*MOMG(XALPHAR,XNUR,XDR+2.0) +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" rain contact freezing")') + WRITE(UNIT=KLUOUT,FMT='(" Coll. efficiency XCOLIR=",E13.6)') XCOLIR +END IF +! +! +!* 8.2 Constants for the dry growth of the graupeln +! +!* 8.2.1 Constants for the cloud droplet collection by the graupeln +! +XFCDRYG = (XPI/4.0)*XCCG*XCG*(ZRHO00**XCEXVT)*MOMG(XALPHAG,XNUG,XDG+2.0) +! +!* 8.2.2 Constants for the cloud ice collection by the graupeln +! +XCOLIG = 0.25 ! Collection efficiency of I+G +XCOLEXIG = 0.05 ! Temperature factor of the I+G collection efficiency +XCOLIG = 0.01 ! Collection efficiency of I+G +XCOLEXIG = 0.1 ! Temperature factor of the I+G collection efficiency +WRITE (KLUOUT, FMT=*) ' NEW Constants for the cloud ice collection by the graupeln' +WRITE (KLUOUT, FMT=*) ' XCOLIG, XCOLEXIG = ',XCOLIG,XCOLEXIG +XFIDRYG = (XPI/4.0)*XCOLIG*XCCG*XCG*(ZRHO00**XCEXVT)*MOMG(XALPHAG,XNUG,XDG+2.0) +XEXFIDRYG=(XCXG-XDG-2.)/(XCXG-XBG) +XFIDRYG2=XFIDRYG/XCOLIG*(XAG*XCCG*MOMG(XALPHAG,XNUG,XBG))**(-XEXFIDRYG) +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" cloud ice collection by the graupeln")') + WRITE(UNIT=KLUOUT,FMT='(" Coll. efficiency XCOLIG=",E13.6)') XCOLIG + WRITE(UNIT=KLUOUT,FMT='(" Temp. factor XCOLEXIG=",E13.6)') XCOLEXIG +END IF +! +!* 8.2.3 Constants for the aggregate collection by the graupeln +! +XCOLSG = 0.25 ! Collection efficiency of S+G +XCOLEXSG = 0.05 ! Temperature factor of the S+G collection efficiency +XCOLSG = 0.01 ! Collection efficiency of S+G +XCOLEXSG = 0.1 ! Temperature factor of the S+G collection efficiency +WRITE (KLUOUT, FMT=*) ' NEW Constants for the aggregate collection by the graupeln' +WRITE (KLUOUT, FMT=*) ' XCOLSG, XCOLEXSG = ',XCOLSG,XCOLEXSG +XFSDRYG = (XPI/4.0)*XCOLSG*XCCG*XCCS*XAS*(ZRHO00**XCEXVT) +! +XLBSDRYG1 = MOMG(XALPHAG,XNUG,2.)*MOMG(XALPHAS,XNUS,XBS) +XLBSDRYG2 = 2.*MOMG(XALPHAG,XNUG,1.)*MOMG(XALPHAS,XNUS,XBS+1.) +XLBSDRYG3 = MOMG(XALPHAS,XNUS,XBS+2.) +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" aggregate collection by the graupeln")') + WRITE(UNIT=KLUOUT,FMT='(" Coll. efficiency XCOLSG=",E13.6)') XCOLSG + WRITE(UNIT=KLUOUT,FMT='(" Temp. factor XCOLEXSG=",E13.6)') XCOLEXSG +END IF +! +!* 8.2.4 Constants for the raindrop collection by the graupeln +! +XFRDRYG = ((XPI**2)/24.0)*XCCG*XCCR*XRHOLW*(ZRHO00**XCEXVT) +! +XLBRDRYG1 = MOMG(XALPHAG,XNUG,2.)*MOMG(XALPHAR,XNUR,3.) +XLBRDRYG2 = 2.*MOMG(XALPHAG,XNUG,1.)*MOMG(XALPHAR,XNUR,4.) +XLBRDRYG3 = MOMG(XALPHAR,XNUR,5.) +! +! Notice: One magnitude of lambda discretized over 10 points +! +NDRYLBDAR = 40 +XDRYLBDAR_MIN = 1.0E3 ! Minimal value of Lbda_r to tabulate XKER_RDRYG +XDRYLBDAR_MAX = 1.0E7 ! Maximal value of Lbda_r to tabulate XKER_RDRYG +ZRATE = LOG(XDRYLBDAR_MAX/XDRYLBDAR_MIN)/REAL(NDRYLBDAR-1) +XDRYINTP1R = 1.0 / ZRATE +XDRYINTP2R = 1.0 - LOG( XDRYLBDAR_MIN ) / ZRATE +NDRYLBDAS = 80 +XDRYLBDAS_MIN = 2.5E1 ! Minimal value of Lbda_s to tabulate XKER_SDRYG +XDRYLBDAS_MAX = 2.5E9 ! Maximal value of Lbda_s to tabulate XKER_SDRYG +ZRATE = LOG(XDRYLBDAS_MAX/XDRYLBDAS_MIN)/REAL(NDRYLBDAS-1) +XDRYINTP1S = 1.0 / ZRATE +XDRYINTP2S = 1.0 - LOG( XDRYLBDAS_MIN ) / ZRATE +NDRYLBDAG = 40 +XDRYLBDAG_MIN = 1.0E3 ! Min value of Lbda_g to tabulate XKER_SDRYG,XKER_RDRYG +XDRYLBDAG_MAX = 1.0E7 ! Max value of Lbda_g to tabulate XKER_SDRYG,XKER_RDRYG +ZRATE = LOG(XDRYLBDAG_MAX/XDRYLBDAG_MIN)/REAL(NDRYLBDAG-1) +XDRYINTP1G = 1.0 / ZRATE +XDRYINTP2G = 1.0 - LOG( XDRYLBDAG_MIN ) / ZRATE +! +!* 8.2.5 Computations of the tabulated normalized kernels +! +IND = 50 ! Interval number, collection efficiency and infinite diameter +ZEGS = 1.0 ! factor used to integrate the dimensional distributions when +ZFDINFTY = 20.0 ! computing the kernels XKER_SDRYG +! +IF( .NOT.ASSOCIATED(XKER_SDRYG) ) CALL RAIN_ICE_PARAM_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 ) +IF( (KDRYLBDAG/=NDRYLBDAG) .OR. (KDRYLBDAS/=NDRYLBDAS) .OR. (KND/=IND) .OR. & + (PALPHAG/=XALPHAG) .OR. (PNUG/=XNUG) .OR. & + (PALPHAS/=XALPHAS) .OR. (PNUS/=XNUS) .OR. & + (PEGS/=ZEGS) .OR. (PBS/=XBS) .OR. & + (PCG/=XCG) .OR. (PDG/=XDG) .OR. (PCS/=XCS) .OR. (PDS/=XDS) .OR. & + (PDRYLBDAG_MAX/=XDRYLBDAG_MAX) .OR. (PDRYLBDAS_MAX/=XDRYLBDAS_MAX) .OR. & + (PDRYLBDAG_MIN/=XDRYLBDAG_MIN) .OR. (PDRYLBDAS_MIN/=XDRYLBDAS_MIN) .OR. & + (PFDINFTY/=ZFDINFTY) ) THEN + CALL RZCOLX ( IND, XALPHAG, XNUG, XALPHAS, XNUS, & + ZEGS, XBS, XCG, XDG, XCS, XDS, & + XDRYLBDAG_MAX, XDRYLBDAS_MAX, XDRYLBDAG_MIN, XDRYLBDAS_MIN, & + ZFDINFTY, XKER_SDRYG ) + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF SDRYG KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("KND=",I3)') IND + WRITE(UNIT=KLUOUT,FMT='("KDRYLBDAG=",I3)') NDRYLBDAG + WRITE(UNIT=KLUOUT,FMT='("KDRYLBDAS=",I3)') NDRYLBDAS + WRITE(UNIT=KLUOUT,FMT='("PALPHAG=",E13.6)') XALPHAG + WRITE(UNIT=KLUOUT,FMT='("PNUG=",E13.6)') XNUG + WRITE(UNIT=KLUOUT,FMT='("PALPHAS=",E13.6)') XALPHAS + WRITE(UNIT=KLUOUT,FMT='("PNUS=",E13.6)') XNUS + WRITE(UNIT=KLUOUT,FMT='("PEGS=",E13.6)') ZEGS + WRITE(UNIT=KLUOUT,FMT='("PBS=",E13.6)') XBS + WRITE(UNIT=KLUOUT,FMT='("PCG=",E13.6)') XCG + WRITE(UNIT=KLUOUT,FMT='("PDG=",E13.6)') XDG + WRITE(UNIT=KLUOUT,FMT='("PCS=",E13.6)') XCS + WRITE(UNIT=KLUOUT,FMT='("PDS=",E13.6)') XDS + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAG_MAX=",E13.6)') & + XDRYLBDAG_MAX + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAS_MAX=",E13.6)') & + XDRYLBDAS_MAX + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAG_MIN=",E13.6)') & + XDRYLBDAG_MIN + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAS_MIN=",E13.6)') & + XDRYLBDAS_MIN + WRITE(UNIT=KLUOUT,FMT='("PFDINFTY=",E13.6)') ZFDINFTY + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_SDRYG) ) THEN")') + DO J1 = 1 , NDRYLBDAG + DO J2 = 1 , NDRYLBDAS + WRITE(UNIT=KLUOUT,FMT='("PKER_SDRYG(",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_SDRYG(J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,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 ) + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_SDRYG")') +END IF +! +! +IND = 50 ! Number of interval used to integrate the dimensional +ZEGR = 1.0 ! distributions when computing the kernel XKER_RDRYG +ZFDINFTY = 20.0 +! +IF( .NOT.ASSOCIATED(XKER_RDRYG) ) CALL RAIN_ICE_PARAM_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 ) +IF( (KDRYLBDAG/=NDRYLBDAG) .OR. (KDRYLBDAR/=NDRYLBDAR) .OR. (KND/=IND) .OR. & + (PALPHAG/=XALPHAG) .OR. (PNUG/=XNUG) .OR. & + (PALPHAR/=XALPHAR) .OR. (PNUR/=XNUR) .OR. & + (PEGR/=ZEGR) .OR. (PBR/=XBR) .OR. & + (PCG/=XCG) .OR. (PDG/=XDG) .OR. (PCR/=XCR) .OR. (PDR/=XDR) .OR. & + (PDRYLBDAG_MAX/=XDRYLBDAG_MAX) .OR. (PDRYLBDAR_MAX/=XDRYLBDAR_MAX) .OR. & + (PDRYLBDAG_MIN/=XDRYLBDAG_MIN) .OR. (PDRYLBDAR_MIN/=XDRYLBDAR_MIN) .OR. & + (PFDINFTY/=ZFDINFTY) ) THEN + CALL RZCOLX ( IND, XALPHAG, XNUG, XALPHAR, XNUR, & + ZEGR, XBR, XCG, XDG, XCR, XDR, & + XDRYLBDAG_MAX, XDRYLBDAR_MAX, XDRYLBDAG_MIN, XDRYLBDAR_MIN, & + ZFDINFTY, XKER_RDRYG ) + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF RDRYG KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("KND=",I3)') IND + WRITE(UNIT=KLUOUT,FMT='("KDRYLBDAG=",I3)') NDRYLBDAG + WRITE(UNIT=KLUOUT,FMT='("KDRYLBDAR=",I3)') NDRYLBDAR + WRITE(UNIT=KLUOUT,FMT='("PALPHAG=",E13.6)') XALPHAG + WRITE(UNIT=KLUOUT,FMT='("PNUG=",E13.6)') XNUG + WRITE(UNIT=KLUOUT,FMT='("PALPHAR=",E13.6)') XALPHAR + WRITE(UNIT=KLUOUT,FMT='("PNUR=",E13.6)') XNUR + WRITE(UNIT=KLUOUT,FMT='("PEGR=",E13.6)') ZEGR + WRITE(UNIT=KLUOUT,FMT='("PBR=",E13.6)') XBR + WRITE(UNIT=KLUOUT,FMT='("PCG=",E13.6)') XCG + WRITE(UNIT=KLUOUT,FMT='("PDG=",E13.6)') XDG + WRITE(UNIT=KLUOUT,FMT='("PCR=",E13.6)') XCR + WRITE(UNIT=KLUOUT,FMT='("PDR=",E13.6)') XDR + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAG_MAX=",E13.6)') & + XDRYLBDAG_MAX + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAR_MAX=",E13.6)') & + XDRYLBDAR_MAX + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAG_MIN=",E13.6)') & + XDRYLBDAG_MIN + WRITE(UNIT=KLUOUT,FMT='("PDRYLBDAR_MIN=",E13.6)') & + XDRYLBDAR_MIN + WRITE(UNIT=KLUOUT,FMT='("PFDINFTY=",E13.6)') ZFDINFTY + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_RDRYG) ) THEN")') + DO J1 = 1 , NDRYLBDAG + DO J2 = 1 , NDRYLBDAR + WRITE(UNIT=KLUOUT,FMT='("PKER_RDRYG(",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_RDRYG(J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,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 ) + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_RDRYG")') +END IF +! +! +!------------------------------------------------------------------------------- +! +!* 9. CONSTANTS FOR THE FAST COLD PROCESSES FOR THE HAILSTONES +! -------------------------------------------------------- +! +!* 9.2 Constants for the wet growth of the hailstones +! +! +!* 9.2.1 Constant for the cloud droplet and cloud ice collection +! by the hailstones +! +XCOLIH = 0.01 ! Collection efficiency of I+H +XCOLEXIH = 0.1 ! Temperature factor of the I+H collection efficiency +XFWETH = (XPI/4.0)*XCCH*XCH*(ZRHO00**XCEXVT)*MOMG(XALPHAH,XNUH,XDH+2.0) +! +!* 9.2.2 Constants for the aggregate collection by the hailstones +! +XCOLSH = 0.01 ! Collection efficiency of S+H +XCOLEXSH = 0.1 ! Temperature factor of the S+H collection efficiency +XFSWETH = (XPI/4.0)*XCCH*XCCS*XAS*(ZRHO00**XCEXVT) +! +XLBSWETH1 = MOMG(XALPHAH,XNUH,2.)*MOMG(XALPHAS,XNUS,XBS) +XLBSWETH2 = 2.*MOMG(XALPHAH,XNUH,1.)*MOMG(XALPHAS,XNUS,XBS+1.) +XLBSWETH3 = MOMG(XALPHAS,XNUS,XBS+2.) +! +!* 9.2.3 Constants for the graupel collection by the hailstones +! +XCOLGH = 0.01 ! Collection efficiency of G+H +XCOLEXGH = 0.1 ! Temperature factor of the G+H collection efficiency +XFGWETH = (XPI/4.0)*XCCH*XCCG*XAG*(ZRHO00**XCEXVT) +! +XLBGWETH1 = MOMG(XALPHAH,XNUH,2.)*MOMG(XALPHAG,XNUG,XBG) +XLBGWETH2 = 2.*MOMG(XALPHAH,XNUH,1.)*MOMG(XALPHAG,XNUG,XBG+1.) +XLBGWETH3 = MOMG(XALPHAG,XNUG,XBG+2.) +! +!* 9.2.3 bis Constants for the rain collection by the hailstones +! +XFRWETH = (XPI/4.0)*XCCH*XCCR*XAR*(ZRHO00**XCEXVT) +! +XLBRWETH1 = MOMG(XALPHAH,XNUH,2.)*MOMG(XALPHAR,XNUR,XBR) +XLBRWETH2 = 2.*MOMG(XALPHAH,XNUH,1.)*MOMG(XALPHAR,XNUR,XBR+1.) +XLBRWETH3 = MOMG(XALPHAR,XNUR,XBR+2.) +! +! Notice: One magnitude of lambda discretized over 10 points +! +NWETLBDAS = 80 +XWETLBDAS_MIN = 2.5E1 ! Minimal value of Lbda_s to tabulate XKER_SWETH +XWETLBDAS_MAX = 2.5E9 ! Maximal value of Lbda_s to tabulate XKER_SWETH +ZRATE = LOG(XWETLBDAS_MAX/XWETLBDAS_MIN)/REAL(NWETLBDAS-1) +XWETINTP1S = 1.0 / ZRATE +XWETINTP2S = 1.0 - LOG( XWETLBDAS_MIN ) / ZRATE +NWETLBDAG = 40 +XWETLBDAG_MIN = 1.0E3 ! Min value of Lbda_g to tabulate XKER_GWETH +XWETLBDAG_MAX = 1.0E7 ! Max value of Lbda_g to tabulate XKER_GWETH +ZRATE = LOG(XWETLBDAG_MAX/XWETLBDAG_MIN)/REAL(NWETLBDAG-1) +XWETINTP1G = 1.0 / ZRATE +XWETINTP2G = 1.0 - LOG( XWETLBDAG_MIN ) / ZRATE +NWETLBDAR = 40 +XWETLBDAR_MIN = 1.0E3 ! Minimal value of Lbda_r to tabulate XKER_RWETH +XWETLBDAR_MAX = 1.0E7 ! Maximal value of Lbda_r to tabulate XKER_RWETH +ZRATE = LOG(XWETLBDAR_MAX/XWETLBDAR_MIN)/REAL(NWETLBDAR-1) +XWETINTP1R = 1.0 / ZRATE +XWETINTP2R = 1.0 - LOG( XWETLBDAR_MIN ) / ZRATE +NWETLBDAH = 40 +XWETLBDAH_MIN = 1.0E3 ! Min value of Lbda_h to tabulate XKER_SWETH,XKER_GWETH,XKER_RWETH +XWETLBDAH_MAX = 1.0E7 ! Max value of Lbda_h to tabulate XKER_SWETH,XKER_GWETH,XKER_RWETH +ZRATE = LOG(XWETLBDAH_MAX/XWETLBDAH_MIN)/REAL(NWETLBDAH-1) +XWETINTP1H = 1.0 / ZRATE +XWETINTP2H = 1.0 - LOG( XWETLBDAH_MIN ) / ZRATE +! +!* 9.2.4 Computations of the tabulated normalized kernels +! +IND = 50 ! Interval number, collection efficiency and infinite diameter +ZEHS = 1.0 ! factor used to integrate the dimensional distributions when +ZFDINFTY = 20.0 ! computing the kernels XKER_SWETH +! +IF( .NOT.ASSOCIATED(XKER_SWETH) ) CALL RAIN_ICE_PARAM_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 ) +IF( (KWETLBDAH/=NWETLBDAH) .OR. (KWETLBDAS/=NWETLBDAS) .OR. (KND/=IND) .OR. & + (PALPHAH/=XALPHAH) .OR. (PNUH/=XNUH) .OR. & + (PALPHAS/=XALPHAS) .OR. (PNUS/=XNUS) .OR. & + (PEHS/=ZEHS) .OR. (PBS/=XBS) .OR. & + (PCH/=XCH) .OR. (PDH/=XDH) .OR. (PCS/=XCS) .OR. (PDS/=XDS) .OR. & + (PWETLBDAH_MAX/=XWETLBDAH_MAX) .OR. (PWETLBDAS_MAX/=XWETLBDAS_MAX) .OR. & + (PWETLBDAH_MIN/=XWETLBDAH_MIN) .OR. (PWETLBDAS_MIN/=XWETLBDAS_MIN) .OR. & + (PFDINFTY/=ZFDINFTY) ) THEN + CALL RZCOLX ( IND, XALPHAH, XNUH, XALPHAS, XNUS, & + ZEHS, XBS, XCH, XDH, XCS, XDS, & + XWETLBDAH_MAX, XWETLBDAS_MAX, XWETLBDAH_MIN, XWETLBDAS_MIN, & + ZFDINFTY, XKER_SWETH ) + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF SWETH KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("KND=",I3)') IND + WRITE(UNIT=KLUOUT,FMT='("KWETLBDAH=",I3)') NWETLBDAH + WRITE(UNIT=KLUOUT,FMT='("KWETLBDAS=",I3)') NWETLBDAS + WRITE(UNIT=KLUOUT,FMT='("PALPHAH=",E13.6)') XALPHAH + WRITE(UNIT=KLUOUT,FMT='("PNUH=",E13.6)') XNUH + WRITE(UNIT=KLUOUT,FMT='("PALPHAS=",E13.6)') XALPHAS + WRITE(UNIT=KLUOUT,FMT='("PNUS=",E13.6)') XNUS + WRITE(UNIT=KLUOUT,FMT='("PEHS=",E13.6)') ZEHS + WRITE(UNIT=KLUOUT,FMT='("PBS=",E13.6)') XBS + WRITE(UNIT=KLUOUT,FMT='("PCH=",E13.6)') XCH + WRITE(UNIT=KLUOUT,FMT='("PDH=",E13.6)') XDH + WRITE(UNIT=KLUOUT,FMT='("PCS=",E13.6)') XCS + WRITE(UNIT=KLUOUT,FMT='("PDS=",E13.6)') XDS + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAH_MAX=",E13.6)') & + XWETLBDAH_MAX + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAS_MAX=",E13.6)') & + XWETLBDAS_MAX + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAH_MIN=",E13.6)') & + XWETLBDAH_MIN + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAS_MIN=",E13.6)') & + XWETLBDAS_MIN + WRITE(UNIT=KLUOUT,FMT='("PFDINFTY=",E13.6)') ZFDINFTY + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_SWETH) ) THEN")') + DO J1 = 1 , NWETLBDAH + DO J2 = 1 , NWETLBDAS + WRITE(UNIT=KLUOUT,FMT='("PKER_SWETH(",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_SWETH(J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,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 ) + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_SWETH")') +END IF +! +! +IND = 50 ! Number of interval used to integrate the dimensional +ZEHG = 1.0 ! distributions when computing the kernel XKER_GWETH +ZFDINFTY = 20.0 +! +IF( .NOT.ASSOCIATED(XKER_GWETH) ) CALL RAIN_ICE_PARAM_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 ) +IF( (KWETLBDAH/=NWETLBDAH) .OR. (KWETLBDAG/=NWETLBDAG) .OR. (KND/=IND) .OR. & + (PALPHAH/=XALPHAH) .OR. (PNUH/=XNUH) .OR. & + (PALPHAG/=XALPHAG) .OR. (PNUG/=XNUG) .OR. & + (PEHG/=ZEHG) .OR. (PBG/=XBG) .OR. & + (PCH/=XCH) .OR. (PDH/=XDH) .OR. (PCG/=XCG) .OR. (PDG/=XDG) .OR. & + (PWETLBDAH_MAX/=XWETLBDAH_MAX) .OR. (PWETLBDAG_MAX/=XWETLBDAG_MAX) .OR. & + (PWETLBDAH_MIN/=XWETLBDAH_MIN) .OR. (PWETLBDAG_MIN/=XWETLBDAG_MIN) .OR. & + (PFDINFTY/=ZFDINFTY) ) THEN + CALL RZCOLX ( IND, XALPHAH, XNUH, XALPHAG, XNUG, & + ZEHG, XBG, XCH, XDH, XCG, XDG, & + XWETLBDAH_MAX, XWETLBDAG_MAX, XWETLBDAH_MIN, XWETLBDAG_MIN, & + ZFDINFTY, XKER_GWETH ) + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF GWETH KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("KND=",I3)') IND + WRITE(UNIT=KLUOUT,FMT='("KWETLBDAH=",I3)') NWETLBDAH + WRITE(UNIT=KLUOUT,FMT='("KWETLBDAG=",I3)') NWETLBDAG + WRITE(UNIT=KLUOUT,FMT='("PALPHAH=",E13.6)') XALPHAH + WRITE(UNIT=KLUOUT,FMT='("PNUH=",E13.6)') XNUH + WRITE(UNIT=KLUOUT,FMT='("PALPHAG=",E13.6)') XALPHAG + WRITE(UNIT=KLUOUT,FMT='("PNUG=",E13.6)') XNUG + WRITE(UNIT=KLUOUT,FMT='("PEHG=",E13.6)') ZEHG + WRITE(UNIT=KLUOUT,FMT='("PBG=",E13.6)') XBG + WRITE(UNIT=KLUOUT,FMT='("PCH=",E13.6)') XCH + WRITE(UNIT=KLUOUT,FMT='("PDH=",E13.6)') XDH + WRITE(UNIT=KLUOUT,FMT='("PCG=",E13.6)') XCG + WRITE(UNIT=KLUOUT,FMT='("PDG=",E13.6)') XDG + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAH_MAX=",E13.6)') & + XWETLBDAH_MAX + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAG_MAX=",E13.6)') & + XWETLBDAG_MAX + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAH_MIN=",E13.6)') & + XWETLBDAH_MIN + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAG_MIN=",E13.6)') & + XWETLBDAG_MIN + WRITE(UNIT=KLUOUT,FMT='("PFDINFTY=",E13.6)') ZFDINFTY + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_GWETH) ) THEN")') + DO J1 = 1 , NWETLBDAH + DO J2 = 1 , NWETLBDAG + WRITE(UNIT=KLUOUT,FMT='("PKER_GWETH(",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_GWETH(J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,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 ) + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_GWETH")') +END IF +! +! +IND = 50 ! Number of interval used to integrate the dimensional +ZEHR = 1.0 ! distributions when computing the kernel XKER_RWETH +ZFDINFTY = 20.0 +! +IF( .NOT.ASSOCIATED(XKER_RWETH) ) CALL RAIN_ICE_PARAM_ALLOCATE('XKER_RWETH', NWETLBDAH,NWETLBDAR) +! +CALL READ_XKER_RWETH (KWETLBDAH,KWETLBDAR,KND, & + PALPHAH,PNUH,PALPHAR,PNUR,PEHR,PBR,PCH,PDH,PCR,PDR, & + PWETLBDAH_MAX,PWETLBDAR_MAX,PWETLBDAH_MIN,PWETLBDAR_MIN, & + PFDINFTY ) +IF( (KWETLBDAH/=NWETLBDAH) .OR. (KWETLBDAR/=NWETLBDAR) .OR. (KND/=IND) .OR. & + (PALPHAH/=XALPHAH) .OR. (PNUH/=XNUH) .OR. & + (PALPHAR/=XALPHAR) .OR. (PNUR/=XNUR) .OR. & + (PEHR/=ZEHR) .OR. (PBR/=XBR) .OR. & + (PCH/=XCH) .OR. (PDH/=XDH) .OR. (PCR/=XCR) .OR. (PDR/=XDR) .OR. & + (PWETLBDAH_MAX/=XWETLBDAH_MAX) .OR. (PWETLBDAR_MAX/=XWETLBDAR_MAX) .OR. & + (PWETLBDAH_MIN/=XWETLBDAH_MIN) .OR. (PWETLBDAR_MIN/=XWETLBDAR_MIN) .OR. & + (PFDINFTY/=ZFDINFTY) ) THEN + CALL RZCOLX ( IND, XALPHAH, XNUH, XALPHAR, XNUR, & + ZEHR, XBR, XCH, XDH, XCR, XDR, & + XWETLBDAH_MAX, XWETLBDAR_MAX, XWETLBDAH_MIN, XWETLBDAR_MIN, & + ZFDINFTY, XKER_RWETH ) + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("**** UPDATE NEW SET OF RWETH KERNELS ****")') + WRITE(UNIT=KLUOUT,FMT='("*****************************************")') + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("KND=",I3)') IND + WRITE(UNIT=KLUOUT,FMT='("KWETLBDAH=",I3)') NWETLBDAH + WRITE(UNIT=KLUOUT,FMT='("KWETLBDAR=",I3)') NWETLBDAR + WRITE(UNIT=KLUOUT,FMT='("PALPHAH=",E13.6)') XALPHAH + WRITE(UNIT=KLUOUT,FMT='("PNUH=",E13.6)') XNUH + WRITE(UNIT=KLUOUT,FMT='("PALPHAR=",E13.6)') XALPHAR + WRITE(UNIT=KLUOUT,FMT='("PNUR=",E13.6)') XNUR + WRITE(UNIT=KLUOUT,FMT='("PEHR=",E13.6)') ZEHR + WRITE(UNIT=KLUOUT,FMT='("PBR=",E13.6)') XBR + WRITE(UNIT=KLUOUT,FMT='("PCH=",E13.6)') XCH + WRITE(UNIT=KLUOUT,FMT='("PDH=",E13.6)') XDH + WRITE(UNIT=KLUOUT,FMT='("PCR=",E13.6)') XCR + WRITE(UNIT=KLUOUT,FMT='("PDR=",E13.6)') XDR + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAH_MAX=",E13.6)') & + XWETLBDAH_MAX + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAR_MAX=",E13.6)') & + XWETLBDAR_MAX + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAH_MIN=",E13.6)') & + XWETLBDAH_MIN + WRITE(UNIT=KLUOUT,FMT='("PWETLBDAR_MIN=",E13.6)') & + XWETLBDAR_MIN + WRITE(UNIT=KLUOUT,FMT='("PFDINFTY=",E13.6)') ZFDINFTY + WRITE(UNIT=KLUOUT,FMT='("!")') + WRITE(UNIT=KLUOUT,FMT='("IF( PRESENT(PKER_RWETH) ) THEN")') + DO J1 = 1 , NWETLBDAH + DO J2 = 1 , NWETLBDAR + WRITE(UNIT=KLUOUT,FMT='("PKER_RWETH(",I3,",",I3,") = ",E13.6)') & + J1,J2,XKER_RWETH(J1,J2) + END DO + END DO + WRITE(UNIT=KLUOUT,FMT='("END IF")') + ELSE + CALL READ_XKER_RWETH (KWETLBDAH,KWETLBDAR,KND, & + PALPHAH,PNUH,PALPHAR,PNUR,PEHR,PBR,PCH,PDH,PCR,PDR, & + PWETLBDAH_MAX,PWETLBDAR_MAX,PWETLBDAH_MIN,PWETLBDAR_MIN, & + PFDINFTY,XKER_RWETH ) + WRITE(UNIT=KLUOUT,FMT='(" Read XKER_RWETH")') +END IF +! +! +!------------------------------------------------------------------------------- +! +!* 10. SOME PRINTS FOR CONTROL +! ----------------------- +! +! +GFLAG = .TRUE. +IF (GFLAG) THEN + WRITE(UNIT=KLUOUT,FMT='(" Summary of the ice particule characteristics")') + WRITE(UNIT=KLUOUT,FMT='(" PRISTINE ICE")') + WRITE(UNIT=KLUOUT,FMT='(" masse: A=",E13.6," B=",E13.6)') & + XAI,XBI + WRITE(UNIT=KLUOUT,FMT='(" vitesse: C=",E13.6," D=",E13.6)') & + XC_I,XDI + WRITE(UNIT=KLUOUT,FMT='(" distribution:AL=",E13.6,"NU=",E13.6)') & + XALPHAI,XNUI + WRITE(UNIT=KLUOUT,FMT='(" SNOW")') + WRITE(UNIT=KLUOUT,FMT='(" masse: A=",E13.6," B=",E13.6)') & + XAS,XBS + WRITE(UNIT=KLUOUT,FMT='(" vitesse: C=",E13.6," D=",E13.6)') & + XCS,XDS + WRITE(UNIT=KLUOUT,FMT='(" concentration:CC=",E13.6," x=",E13.6)') & + XCCS,XCXS + WRITE(UNIT=KLUOUT,FMT='(" distribution:AL=",E13.6,"NU=",E13.6)') & + XALPHAS,XNUS + WRITE(UNIT=KLUOUT,FMT='(" GRAUPEL")') + WRITE(UNIT=KLUOUT,FMT='(" masse: A=",E13.6," B=",E13.6)') & + XAG,XBG + WRITE(UNIT=KLUOUT,FMT='(" vitesse: C=",E13.6," D=",E13.6)') & + XCG,XDG + WRITE(UNIT=KLUOUT,FMT='(" concentration:CC=",E13.6," x=",E13.6)') & + XCCG,XCXG + WRITE(UNIT=KLUOUT,FMT='(" distribution:AL=",E13.6,"NU=",E13.6)') & + XALPHAG,XNUG + WRITE(UNIT=KLUOUT,FMT='(" HAIL")') + WRITE(UNIT=KLUOUT,FMT='(" masse: A=",E13.6," B=",E13.6)') & + XAH,XBH + WRITE(UNIT=KLUOUT,FMT='(" vitesse: C=",E13.6," D=",E13.6)') & + XCH,XDH + WRITE(UNIT=KLUOUT,FMT='(" concentration:CC=",E13.6," x=",E13.6)') & + XCCH,XCXH + WRITE(UNIT=KLUOUT,FMT='(" distribution:AL=",E13.6,"NU=",E13.6)') & + XALPHAH,XNUH +END IF +IF (LHOOK) CALL DR_HOOK('INI_RAIN_ICE',1,ZHOOK_HANDLE) +CONTAINS +! +!------------------------------------------------------------------------------ +! + FUNCTION MOMG(PALPHA,PNU,PP) RESULT (PMOMG) +! +! auxiliary routine used to compute the Pth moment order of the generalized +! gamma law +! + USE MODI_GAMMA +! + IMPLICIT NONE +! + REAL :: PALPHA ! first shape parameter of the dimensionnal distribution + REAL :: PNU ! second shape parameter of the dimensionnal distribution + REAL :: PP ! order of the moment + REAL :: PMOMG ! result: moment of order ZP +! +!------------------------------------------------------------------------------ +! +! + PMOMG = GAMMA(PNU+PP/PALPHA)/GAMMA(PNU) +! + END FUNCTION MOMG +! +!------------------------------------------------------------------------------- +! +! +END SUBROUTINE INI_RAIN_ICE diff --git a/src/common/micro/mode_ice4_compute_pdf.F90 b/src/common/micro/mode_ice4_compute_pdf.F90 index b1d379c55a85bb75c1d6b7cae2d40e87caca3a10..7ccb88c1274867edbcff476743ebf920ea8dc2cc 100644 --- a/src/common/micro/mode_ice4_compute_pdf.F90 +++ b/src/common/micro/mode_ice4_compute_pdf.F90 @@ -152,8 +152,7 @@ ELSEIF(HSUBG_AUCV_RC=='PDF ') THEN PHLC_LCF(:)=0. PHLC_HRC(:)=PRCT(:) PHLC_LRC(:)=0. - ELSEWHERE(PRCT(:)> (ZRCRAUTC(:)-PSIGMA_RC(:)) .AND. & - & PRCT(:)<=(ZRCRAUTC(:)+PSIGMA_RC(:)) ) + ELSEWHERE(PRCT(:)> (ZRCRAUTC(:)-PSIGMA_RC(:)) .AND. PRCT(:)<=(ZRCRAUTC(:)+PSIGMA_RC(:)) ) PHLC_HCF(:)=(PRCT(:)+PSIGMA_RC(:)-ZRCRAUTC(:))/ & &(2.*PSIGMA_RC(:)) PHLC_LCF(:)=MAX(0., PCF(:)-PHLC_HCF(:)) diff --git a/src/common/micro/mode_ice4_sedimentation_split_momentum.F90 b/src/common/micro/mode_ice4_sedimentation_split_momentum.F90 index 43d3094e4790ba7eaa98dc0d445c70fd3626a867..498375058494a79d840b508deb57b099087ccab4 100644 --- a/src/common/micro/mode_ice4_sedimentation_split_momentum.F90 +++ b/src/common/micro/mode_ice4_sedimentation_split_momentum.F90 @@ -7,11 +7,11 @@ MODULE MODE_ICE4_SEDIMENTATION_SPLIT_MOMENTUM IMPLICIT NONE CONTAINS SUBROUTINE ICE4_SEDIMENTATION_SPLIT_MOMENTUM(KIB, KIE, KIT, KJB, KJE, KJT, KKB, KKE, KKTB, KKTE, KKT, KKL, & - &PTSTEP, KRR, OSEDIC, OMOMENTUM, & - &PSEA, PTOWN, PDZZ, & + &PTSTEP, KRR, OSEDIC, OMOMENTUM, PDZZ, & &PRHODREF, PPABST, PTHT, PRHODJ, & &PRCS, PRCT, PRRS, PRRT, PRIS, PRIT, PRSS, PRST, PRGS, PRGT,& &PINPRC, PINPRR, PINPRI, PINPRS, PINPRG, & + &PSEA, PTOWN, & &PINPRH, PRHT, PRHS, PFPR) !! !!** PURPOSE @@ -53,8 +53,6 @@ REAL, INTENT(IN) :: PTSTEP ! Double Time s INTEGER, INTENT(IN) :: KRR ! Number of moist variable LOGICAL, INTENT(IN) :: OSEDIC ! Switch for droplet sedim. LOGICAL, INTENT(IN) :: OMOMENTUM ! Switch to use momentum flux -REAL, DIMENSION(KIT,KJT), INTENT(IN) :: PSEA ! Sea Mask -REAL, DIMENSION(KIT,KJT), INTENT(IN) :: PTOWN ! Fraction that is town REAL, DIMENSION(KIT,KJT,KKT), INTENT(IN) :: PDZZ ! Layer thikness (m) REAL, DIMENSION(KIT,KJT,KKT), INTENT(IN) :: PRHODREF! Reference density REAL, DIMENSION(KIT,KJT,KKT), INTENT(IN) :: PPABST ! absolute pressure at t @@ -75,6 +73,8 @@ REAL, DIMENSION(KIT,KJT), INTENT(OUT) :: PINPRR ! Rain instant REAL, DIMENSION(KIT,KJT), INTENT(OUT) :: PINPRI ! Pristine ice instant precip REAL, DIMENSION(KIT,KJT), INTENT(OUT) :: PINPRS ! Snow instant precip REAL, DIMENSION(KIT,KJT), INTENT(OUT) :: PINPRG ! Graupel instant precip +REAL, DIMENSION(KIT,KJT), OPTIONAL, INTENT(IN) :: PSEA ! Sea Mask +REAL, DIMENSION(KIT,KJT), OPTIONAL, INTENT(IN) :: PTOWN ! Fraction that is town REAL, DIMENSION(KIT,KJT), OPTIONAL, INTENT(OUT) :: PINPRH ! Hail instant precip REAL, DIMENSION(KIT,KJT,KKT), OPTIONAL, INTENT(IN) :: PRHT ! Hail m.r. at t REAL, DIMENSION(KIT,KJT,KKT), OPTIONAL, INTENT(INOUT) :: PRHS ! Hail m.r. source @@ -131,16 +131,24 @@ IF (PRESENT(PFPR)) PFPR(:,:,:,:) = 0. ! IF (OSEDIC) THEN ZRAY(:,:,:) = 0. - ZCONC_TMP(:,:)=PSEA(:,:)*XCONC_SEA+(1.-PSEA(:,:))*XCONC_LAND - - DO JK=KKTB, KKTE - ZLBC(:,:,JK) = PSEA(:,:)*XLBC(2)+(1.-PSEA(:,:))*XLBC(1) - ZFSEDC(:,:,JK) = (PSEA(:,:)*XFSEDC(2)+(1.-PSEA(:,:))*XFSEDC(1)) - ZFSEDC(:,:,JK) = MAX(MIN(XFSEDC(1),XFSEDC(2)),ZFSEDC(:,:,JK)) - ZCONC3D(:,:,JK)= (1.-PTOWN(:,:))*ZCONC_TMP(:,:)+PTOWN(:,:)*XCONC_URBAN - ZRAY(:,:,JK) = 0.5*((1.-PSEA(:,:))*GAMMA(XNUC+1.0/XALPHAC)/(GAMMA(XNUC)) + & - PSEA(:,:)*GAMMA(XNUC2+1.0/XALPHAC2)/(GAMMA(XNUC2))) - END DO + ZLBC(:,:,:) = XLBC(1) + ZFSEDC(:,:,:) = XFSEDC(1) + ZCONC3D(:,:,:)= XCONC_LAND + ZCONC_TMP(:,:)= XCONC_LAND + IF (PRESENT(PSEA)) THEN + ZCONC_TMP(:,:)=PSEA(:,:)*XCONC_SEA+(1.-PSEA(:,:))*XCONC_LAND + DO JK=KKTB, KKTE + ZLBC(:,:,JK) = PSEA(:,:)*XLBC(2)+(1.-PSEA(:,:))*XLBC(1) + ZFSEDC(:,:,JK) = (PSEA(:,:)*XFSEDC(2)+(1.-PSEA(:,:))*XFSEDC(1)) + ZFSEDC(:,:,JK) = MAX(MIN(XFSEDC(1),XFSEDC(2)),ZFSEDC(:,:,JK)) + ZCONC3D(:,:,JK)= (1.-PTOWN(:,:))*ZCONC_TMP(:,:)+PTOWN(:,:)*XCONC_URBAN + ZRAY(:,:,JK) = 0.5*((1.-PSEA(:,:))*GAMMA(XNUC+1.0/XALPHAC)/(GAMMA(XNUC)) + & + & PSEA(:,:)*GAMMA(XNUC2+1.0/XALPHAC2)/(GAMMA(XNUC2))) + END DO + ELSE + ZCONC3D(:,:,:) = XCONC_LAND + ZRAY(:,:,:) = 0.5*(GAMMA(XNUC+1.0/XALPHAC)/(GAMMA(XNUC))) + END IF ZRAY(:,:,:) = MAX(1.,ZRAY(:,:,:)) ZLBC(:,:,:) = MAX(MIN(XLBC(1),XLBC(2)),ZLBC(:,:,:)) ENDIF @@ -152,12 +160,16 @@ ENDIF ! For optimization we consider each variable separately ! ! External tendecies -IF (OSEDIC) ZPRCS(:,:,:) = PRCS(:,:,:)-PRCT(:,:,:)*ZINVTSTEP +IF (OSEDIC) THEN + ZPRCS(:,:,:) = PRCS(:,:,:)-PRCT(:,:,:)*ZINVTSTEP +ENDIF ZPRRS(:,:,:) = PRRS(:,:,:)-PRRT(:,:,:)*ZINVTSTEP ZPRIS(:,:,:) = PRIS(:,:,:)-PRIT(:,:,:)*ZINVTSTEP ZPRSS(:,:,:) = PRSS(:,:,:)-PRST(:,:,:)*ZINVTSTEP ZPRGS(:,:,:) = PRGS(:,:,:)-PRGT(:,:,:)*ZINVTSTEP -IF ( KRR == 7 ) ZPRHS(:,:,:) = PRHS(:,:,:)-PRHT(:,:,:)*ZINVTSTEP +IF ( KRR == 7 ) THEN + ZPRHS(:,:,:) = PRHS(:,:,:)-PRHT(:,:,:)*ZINVTSTEP +END IF ! ! mr values inside the time-splitting loop ZRCT(:,:,:) = PRCT(:,:,:) @@ -165,7 +177,9 @@ ZRRT(:,:,:) = PRRT(:,:,:) ZRIT(:,:,:) = PRIT(:,:,:) ZRST(:,:,:) = PRST(:,:,:) ZRGT(:,:,:) = PRGT(:,:,:) -IF (KRR==7) ZRHT(:,:,:) = PRHT(:,:,:) +IF (KRR==7) THEN + ZRHT(:,:,:) = PRHT(:,:,:) +END IF ! DO JK = KKTB , KKTE ZW(:,:,JK) =1./(PRHODREF(:,:,JK)* PDZZ(:,:,JK)) @@ -189,7 +203,7 @@ IF (OSEDIC) THEN CALL INTERNAL_SEDIM_SPLI(KIT, KJT, KKB, KKTB, KKTE, KKT, KKL, KRR, & &OMOMENTUM, FIRST .AND. OMOMENTUM, & &ISEDIM, GSEDIM, I1, I2, I3, XSPLIT_MAXCFL, ZREMAINT, & - &PRHODREF, ZW, PDZZ, PPABST, PTHT, PSEA, PTOWN, PTSTEP, & + &PRHODREF, ZW, PDZZ, PPABST, PTHT, PTSTEP, & &2, & &ZRCT, PRCS, ZWSED, PINPRC, ZPRCS, ZMOMC, ZMOMC_EXT, & &ZRAY, ZLBC, ZFSEDC, ZCONC3D, PFPR=PFPR) @@ -213,7 +227,7 @@ DO WHILE (ANY(ZREMAINT>0.)) CALL INTERNAL_SEDIM_SPLI(KIT, KJT, KKB, KKTB, KKTE, KKT, KKL, KRR, & &OMOMENTUM, FIRST .AND. OMOMENTUM, & &ISEDIM, GSEDIM, I1, I2, I3, XSPLIT_MAXCFL, ZREMAINT, & - &PRHODREF, ZW, PDZZ, PPABST, PTHT, PSEA, PTOWN, PTSTEP, & + &PRHODREF, ZW, PDZZ, PPABST, PTHT, PTSTEP, & &3, & &ZRRT, PRRS, ZWSED, PINPRR, ZPRRS, ZMOMR, ZMOMR_EXT, & &PFPR=PFPR) @@ -236,7 +250,7 @@ DO WHILE (ANY(ZREMAINT>0.)) CALL INTERNAL_SEDIM_SPLI(KIT, KJT, KKB, KKTB, KKTE, KKT, KKL, KRR, & &OMOMENTUM, FIRST .AND. OMOMENTUM, & &ISEDIM, GSEDIM, I1, I2, I3, XSPLIT_MAXCFL, ZREMAINT, & - &PRHODREF, ZW, PDZZ, PPABST, PTHT, PSEA, PTOWN, PTSTEP, & + &PRHODREF, ZW, PDZZ, PPABST, PTHT, PTSTEP, & &4, & &ZRIT, PRIS, ZWSED, PINPRI, ZPRIS, ZMOMI, ZMOMI_EXT, PFPR=PFPR) FIRST = .FALSE. @@ -258,7 +272,7 @@ DO WHILE (ANY(ZREMAINT>0.)) CALL INTERNAL_SEDIM_SPLI(KIT, KJT, KKB, KKTB, KKTE, KKT, KKL, KRR, & &OMOMENTUM, FIRST .AND. OMOMENTUM, & &ISEDIM, GSEDIM, I1, I2, I3, XSPLIT_MAXCFL, ZREMAINT, & - &PRHODREF, ZW, PDZZ, PPABST, PTHT, PSEA, PTOWN, PTSTEP, & + &PRHODREF, ZW, PDZZ, PPABST, PTHT, PTSTEP, & &5, & &ZRST, PRSS, ZWSED, PINPRS, ZPRSS, ZMOMS, ZMOMS_EXT, PFPR=PFPR) FIRST = .FALSE. @@ -280,7 +294,7 @@ DO WHILE (ANY(ZREMAINT>0.)) CALL INTERNAL_SEDIM_SPLI(KIT, KJT, KKB, KKTB, KKTE, KKT, KKL, KRR, & &OMOMENTUM, FIRST .AND. OMOMENTUM, & &ISEDIM, GSEDIM, I1, I2, I3, XSPLIT_MAXCFL, ZREMAINT, & - &PRHODREF, ZW, PDZZ, PPABST, PTHT, PSEA, PTOWN, PTSTEP, & + &PRHODREF, ZW, PDZZ, PPABST, PTHT, PTSTEP, & &6, & &ZRGT, PRGS, ZWSED, PINPRG, ZPRGS, ZMOMG, ZMOMG_EXT, PFPR=PFPR) FIRST = .FALSE. @@ -303,7 +317,7 @@ IF (KRR==7) THEN CALL INTERNAL_SEDIM_SPLI(KIT, KJT, KKB, KKTB, KKTE, KKT, KKL, KRR, & &OMOMENTUM, FIRST .AND. OMOMENTUM, & &ISEDIM, GSEDIM, I1, I2, I3, XSPLIT_MAXCFL, ZREMAINT, & - &PRHODREF, ZW, PDZZ, PPABST, PTHT, PSEA, PTOWN, PTSTEP, & + &PRHODREF, ZW, PDZZ, PPABST, PTHT, PTSTEP, & &7, & &ZRHT, PRHS, ZWSED, PINPRH, ZPRHS, ZMOMH, ZMOMH_EXT, PFPR=PFPR) FIRST = .FALSE. @@ -320,7 +334,7 @@ CONTAINS SUBROUTINE INTERNAL_SEDIM_SPLI(KIT, KJT, KKB, KKTB, KKTE, KKT, KKL, KRR, & &OMOMENTUM, OCOMPUTE_MOM, & &KSEDIM, LDSEDIM, I1, I2, I3, PMAXCFL, PREMAINT, & - &PRHODREF, POORHODZ, PDZZ, PPABST, PTHT, PSEA, PTOWN, PTSTEP, & + &PRHODREF, POORHODZ, PDZZ, PPABST, PTHT, PTSTEP, & &KSPE, & &PRXT, PRXS, PWSED, PINPRX, PPRXS, PMOM, PMOM_EXT, & &PRAY, PLBC, PFSEDC, PCONC3D, PFPR) @@ -346,8 +360,6 @@ CONTAINS REAL, DIMENSION(KIT,KJT,KKT), INTENT(IN) :: POORHODZ ! One Over (Rhodref times delta Z) REAL, DIMENSION(KIT,KJT,KKT), INTENT(IN) :: PDZZ ! layer thikness (m) REAL, DIMENSION(KIT,KJT,KKT), INTENT(IN) :: PPABST - REAL, DIMENSION(KIT,KJT), INTENT(IN) :: PSEA ! Sea Mask - REAL, DIMENSION(KIT,KJT), INTENT(IN) :: PTOWN ! Fraction that is town REAL, DIMENSION(KIT,KJT,KKT), INTENT(IN) :: PTHT REAL, INTENT(IN) :: PTSTEP ! total timestep INTEGER, INTENT(IN) :: KSPE ! 1 for rc, 2 for rr... diff --git a/src/common/micro/modi_ini_rain_ice.F90 b/src/common/micro/modi_ini_rain_ice.F90 new file mode 100644 index 0000000000000000000000000000000000000000..85d302d80f2e0bcf28573eeaafc582a0487f1053 --- /dev/null +++ b/src/common/micro/modi_ini_rain_ice.F90 @@ -0,0 +1,16 @@ +! ######spl + MODULE MODI_INI_RAIN_ICE +! ######################## +! +INTERFACE + SUBROUTINE INI_RAIN_ICE ( KLUOUT, HCLOUD ) +! +INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints +! +CHARACTER (LEN=4), INTENT(IN) :: HCLOUD ! Indicator of the cloud scheme +! +END SUBROUTINE INI_RAIN_ICE +! +END INTERFACE +! +END MODULE MODI_INI_RAIN_ICE diff --git a/src/common/micro/rain_ice.F90 b/src/common/micro/rain_ice.F90 index 3e4f608a375fc61b3197ab391677a2822fde66e4..6ffbe59f82850016314b9cd21b713137a2c8f2a7 100644 --- a/src/common/micro/rain_ice.F90 +++ b/src/common/micro/rain_ice.F90 @@ -680,7 +680,7 @@ ENDIF ! optimization by looking for locations where ! the microphysical fields are larger than a minimal value only !!! ! -IF (KSIZE /= COUNT(ODMICRO)) THEN +IF (KSIZE /= COUNT(ODMICRO(D%NIB:D%NIE,D%NJB:D%NJE,D%NKTB:D%NKTE))) THEN CALL PRINT_MSG(NVERB_FATAL, 'GEN', 'RAIN_ICE', 'RAIN_ICE : KSIZE /= COUNT(ODMICRO)') ENDIF diff --git a/src/common/turb/modd_param_mfshalln.F90 b/src/common/turb/modd_param_mfshalln.F90 index 936d408ae32e3996df7c130e438f71c0180b9d9b..72a5644bf955b2cf90266ebeed7b161564f081bc 100644 --- a/src/common/turb/modd_param_mfshalln.F90 +++ b/src/common/turb/modd_param_mfshalln.F90 @@ -94,6 +94,7 @@ REAL :: XLAMBDA_MF ! Lambda to compute ThetaS1 from ThetaL END TYPE PARAM_MFSHALL_t TYPE(PARAM_MFSHALL_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: PARAM_MFSHALL_MODEL +TYPE(PARAM_MFSHALL_t), POINTER, SAVE :: PARAM_MFSHALLN => NULL() REAL , POINTER :: XIMPL_MF=>NULL() CHARACTER (LEN=4), POINTER :: CMF_UPDRAFT=>NULL() @@ -131,6 +132,8 @@ CONTAINS SUBROUTINE PARAM_MFSHALL_GOTO_MODEL(KFROM, KTO) INTEGER, INTENT(IN) :: KFROM, KTO ! +PARAM_MFSHALLN => PARAM_MFSHALL_MODEL(KTO) +! ! Save current state for allocated arrays ! ! Current model is set to model KTO diff --git a/src/common/turb/mode_compute_bl89_ml.F90 b/src/common/turb/mode_compute_bl89_ml.F90 index 92e576ecb88c25e956df59916a7483e367944cbd..16a202a3cc38802683b26801910346a705bff8a0 100644 --- a/src/common/turb/mode_compute_bl89_ml.F90 +++ b/src/common/turb/mode_compute_bl89_ml.F90 @@ -2,7 +2,7 @@ MODULE MODE_COMPUTE_BL89_ML IMPLICIT NONE CONTAINS ! ######spl - SUBROUTINE COMPUTE_BL89_ML(KKA,KKB,KKE,KKU,KKL,PDZZ2D, & + SUBROUTINE COMPUTE_BL89_ML(D, CST, CSTURB,PDZZ2D, & PTKEM_DEP,PG_O_THVREF,PVPT,KK,OUPORDN,OFLUX,PSHEAR,PLWORK) USE PARKIND1, ONLY : JPRB @@ -23,6 +23,7 @@ CONTAINS !! R.Honnert Oct 2016 : Update with AROME !! Q.Rodier 01/2019 : support RM17 mixing length as in bl89.f90 ! P. Wautelet 10/04/2019: replace ABORT and STOP calls by Print_msg +! P. Wautelet 17/12/2021: bugfix: KK instead of JKK !! !------------------------------------------------------------------------------- ! @@ -40,8 +41,9 @@ CONTAINS !but algorithm must remain the same. !!!!!!!!!!!! ! -USE MODD_CTURB -USE MODD_PARAMETERS, ONLY: JPVEXT +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_CTURB, ONLY: CSTURB_t ! USE MODE_MSG ! @@ -51,34 +53,31 @@ IMPLICIT NONE ! ! 0.1 arguments ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ2D ! height difference between two mass levels -REAL, DIMENSION(:), INTENT(IN) :: PTKEM_DEP ! TKE to consume -REAL, DIMENSION(:), INTENT(IN) :: PG_O_THVREF ! g/ThetaVRef at the departure point -REAL, DIMENSION(:,:), INTENT(IN) :: PVPT ! ThetaV on mass levels +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(CSTURB_t), INTENT(IN) :: CSTURB +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ2D ! height difference between two mass levels +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PTKEM_DEP ! TKE to consume +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PG_O_THVREF ! g/ThetaVRef at the departure point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PVPT ! ThetaV on mass levels INTEGER, INTENT(IN) :: KK ! index of departure level LOGICAL, INTENT(IN) :: OUPORDN ! switch to compute upward (true) or ! downward (false) mixing length LOGICAL, INTENT(IN) :: OFLUX ! Computation must be done from flux level -REAL, DIMENSION(:), INTENT(OUT) :: PLWORK ! Resulting mixing length -REAL, DIMENSION(:,:), INTENT(IN) :: PSHEAR ! vertical wind shear for RM17 mixing length +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PLWORK ! Resulting mixing length +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PSHEAR ! vertical wind shear for RM17 mixing length ! 0.2 Local variable ! -REAL, DIMENSION(SIZE(PVPT,1)) :: ZLWORK1,ZLWORK2 ! Temporary mixing length -REAL, DIMENSION(SIZE(PVPT,1)) :: ZINTE,ZPOTE ! TKE and potential energy +REAL, DIMENSION(D%NIJT) :: ZLWORK1,ZLWORK2 ! Temporary mixing length +REAL, DIMENSION(D%NIJT) :: ZINTE,ZPOTE ! TKE and potential energy ! between 2 levels -REAL, DIMENSION(SIZE(PVPT,1)) :: ZVPT_DEP ! Thetav on departure point +REAL, DIMENSION(D%NIJT) :: ZVPT_DEP ! Thetav on departure point ! -REAL, DIMENSION(SIZE(PVPT,1),SIZE(PVPT,2)) :: ZDELTVPT,ZHLVPT +REAL, DIMENSION(D%NIJT,D%NKT) :: ZDELTVPT,ZHLVPT !Virtual Potential Temp at Half level and DeltaThv between !2 mass levels -INTEGER :: IIJU !Internal Domain INTEGER :: J1D !horizontal loop counter INTEGER :: JKK !loop counters REAL :: ZTEST,ZTEST0,ZTESTM !test for vectorization @@ -88,20 +87,19 @@ REAL :: ZTEST,ZTEST0,ZTESTM !test for vectorization ! -------------- REAL(KIND=JPRB) :: ZHOOK_HANDLE IF (LHOOK) CALL DR_HOOK('COMPUTE_BL89_ML',0,ZHOOK_HANDLE) -IIJU=SIZE(PVPT,1) ! -ZDELTVPT(:,:)=DZM_MF(PVPT(:,:), KKA, KKU, KKL) -ZDELTVPT(:,KKA)=0. -WHERE (ABS(ZDELTVPT(:,:))<XLINF) - ZDELTVPT(:,:)=XLINF +CALL DZM_MF(D, PVPT(:,:), ZDELTVPT(:,:)) +ZDELTVPT(:,D%NKA)=0. +WHERE (ABS(ZDELTVPT(:,:))<CSTURB%XLINF) + ZDELTVPT(:,:)=CSTURB%XLINF END WHERE ! -ZHLVPT(:,:)=MZM_MF(PVPT(:,:), KKA, KKU, KKL) +CALL MZM_MF(D, PVPT(:,:), ZHLVPT(:,:)) ! !We consider that gradient between mass levels KKB and KKB+KKL is the same as !the gradient between flux level KKB and mass level KKB -ZDELTVPT(:,KKB)=PDZZ2D(:,KKB)*ZDELTVPT(:,KKB+KKL)/PDZZ2D(:,KKB+KKL) -ZHLVPT(:,KKB)=PVPT(:,KKB)-ZDELTVPT(:,KKB)*0.5 +ZDELTVPT(:,D%NKB)=PDZZ2D(:,D%NKB)*ZDELTVPT(:,D%NKB+D%NKL)/PDZZ2D(:,D%NKB+D%NKL) +ZHLVPT(:,D%NKB)=PVPT(:,D%NKB)-ZDELTVPT(:,D%NKB)*0.5 ! ! ! @@ -116,12 +114,12 @@ IF (OUPORDN.EQV..TRUE.) THEN IF(OFLUX)THEN ZVPT_DEP(:)=ZHLVPT(:,KK) ! departure point is on flux level !We must compute what happens between flux level KK and mass level KK - DO J1D=1,IIJU + DO J1D=D%NIJB,D%NIJE ZTEST0=0.5+SIGN(0.5,ZINTE(J1D)) ! test if there's energy to consume ! Energy consumed if parcel cross the entire layer ZPOTE(J1D) = ZTEST0*(PG_O_THVREF(J1D) * & (0.5*(ZHLVPT(J1D,KK)+ PVPT(J1D,KK)) - ZVPT_DEP(J1D)) + & - XRM17*PSHEAR(J1D,KK)*SQRT(ABS(PTKEM_DEP(J1D)))) * & + CSTURB%XRM17*PSHEAR(J1D,KK)*SQRT(ABS(PTKEM_DEP(J1D)))) * & PDZZ2D(J1D,KK)*0.5 ! Test if it rests some energy to consume ZTEST =0.5+SIGN(0.5,ZINTE(J1D)-ZPOTE(J1D)) @@ -130,9 +128,9 @@ IF (OUPORDN.EQV..TRUE.) THEN ! Lenght travelled by parcel to nullify energy ZLWORK2(J1D)= ( - PG_O_THVREF(J1D) * & ( ZHLVPT(J1D,KK) - ZVPT_DEP(J1D) ) & - - XRM17*PSHEAR(J1D,KK)*SQRT(ABS(PTKEM_DEP(J1D))) & + - CSTURB%XRM17*PSHEAR(J1D,KK)*SQRT(ABS(PTKEM_DEP(J1D))) & + SQRT (ABS( & - (XRM17*PSHEAR(J1D,KK)*SQRT(ABS(PTKEM_DEP(J1D))) + & + (CSTURB%XRM17*PSHEAR(J1D,KK)*SQRT(ABS(PTKEM_DEP(J1D))) + & PG_O_THVREF(J1D) * (ZHLVPT(J1D,KK) - ZVPT_DEP(J1D)) )**2 & + 2. * ZINTE(J1D) * PG_O_THVREF(J1D) & * ZDELTVPT(J1D,KK) / PDZZ2D(J1D,KK) )) ) / & @@ -147,24 +145,24 @@ IF (OUPORDN.EQV..TRUE.) THEN ZVPT_DEP(:)=PVPT(:,KK) ! departure point is on mass level ENDIF - DO JKK=KK+KKL,KKE,KKL + DO JKK=KK+D%NKL,D%NKE,D%NKL IF(ZTESTM > 0.) THEN ZTESTM=0 - DO J1D=1,IIJU + DO J1D=D%NIJB,D%NIJE ZTEST0=0.5+SIGN(0.5,ZINTE(J1D)) ZPOTE(J1D) = ZTEST0*(PG_O_THVREF(J1D) * & (ZHLVPT(J1D,JKK) - ZVPT_DEP(J1D)) & - + XRM17*PSHEAR(J1D,JKK)*SQRT(ABS(PTKEM_DEP(J1D))))* PDZZ2D(J1D,JKK) + + CSTURB%XRM17*PSHEAR(J1D,JKK)*SQRT(ABS(PTKEM_DEP(J1D))))* PDZZ2D(J1D,JKK) ZTEST =0.5+SIGN(0.5,ZINTE(J1D)-ZPOTE(J1D)) ZTESTM=ZTESTM+ZTEST0 ZLWORK1(J1D)=PDZZ2D(J1D,JKK) !ZLWORK2 jump of the last reached level ZLWORK2(J1D)= ( - PG_O_THVREF(J1D) * & - ( PVPT(J1D,JKK-KKL) - ZVPT_DEP(J1D) ) & - - XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) & + ( PVPT(J1D,JKK-D%NKL) - ZVPT_DEP(J1D) ) & + - CSTURB%XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) & + SQRT (ABS( & - (XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) + & - PG_O_THVREF(J1D) * (PVPT(J1D,JKK-KKL) - ZVPT_DEP(J1D)) )**2 & + (CSTURB%XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) + & + PG_O_THVREF(J1D) * (PVPT(J1D,JKK-D%NKL) - ZVPT_DEP(J1D)) )**2 & + 2. * ZINTE(J1D) * PG_O_THVREF(J1D) & * ZDELTVPT(J1D,JKK) / PDZZ2D(J1D,JKK) )) ) / & ( PG_O_THVREF(J1D) * ZDELTVPT(J1D,JKK) / PDZZ2D(J1D,JKK) ) @@ -186,22 +184,22 @@ IF (OUPORDN.EQV..FALSE.) THEN ZINTE(:)=PTKEM_DEP(:) PLWORK=0. ZTESTM=1. - DO JKK=KK,KKB,-KKL + DO JKK=KK,D%NKB,-D%NKL IF(ZTESTM > 0.) THEN ZTESTM=0 - DO J1D=1,IIJU + DO J1D=D%NIJB,D%NIJE ZTEST0=0.5+SIGN(0.5,ZINTE(J1D)) ZPOTE(J1D) = ZTEST0*(-PG_O_THVREF(J1D) * & (ZHLVPT(J1D,JKK) - PVPT(J1D,KK)) & - + XRM17*PSHEAR(J1D,JKK)*SQRT(ABS(PTKEM_DEP(J1D))))* PDZZ2D(J1D,JKK) + + CSTURB%XRM17*PSHEAR(J1D,JKK)*SQRT(ABS(PTKEM_DEP(J1D))))* PDZZ2D(J1D,JKK) ZTEST =0.5+SIGN(0.5,ZINTE(J1D)-ZPOTE(J1D)) ZTESTM=ZTESTM+ZTEST0 ZLWORK1(J1D)=PDZZ2D(J1D,JKK) ZLWORK2(J1D)= ( + PG_O_THVREF(J1D) * & ( PVPT(J1D,JKK) - PVPT(J1D,KK) ) & - -XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) & + -CSTURB%XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) & + SQRT (ABS( & - (XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) - & + (CSTURB%XRM17*PSHEAR(J1D,JKK)*sqrt(abs(PTKEM_DEP(J1D))) - & PG_O_THVREF(J1D) * (PVPT(J1D,JKK) - PVPT(J1D,KK)) )**2 & + 2. * ZINTE(J1D) * PG_O_THVREF(J1D) & * ZDELTVPT(J1D,JKK) / PDZZ2D(J1D,JKK) )) ) / & diff --git a/src/common/turb/mode_compute_entr_detr.F90 b/src/common/turb/mode_compute_entr_detr.F90 deleted file mode 100644 index 7d8fae529856f3a50b886d7d64389b5b8f30f7e2..0000000000000000000000000000000000000000 --- a/src/common/turb/mode_compute_entr_detr.F90 +++ /dev/null @@ -1,443 +0,0 @@ -!MNH_LIC Copyright 2009-2021 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 MODE_COMPUTE_ENTR_DETR -! ############################## -! -IMPLICIT NONE -CONTAINS -! ######spl - SUBROUTINE COMPUTE_ENTR_DETR(KK,KKB,KKE,KKL,OTEST,OTESTLCL,& - HFRAC_ICE,PFRAC_ICE,PRHODREF,& - PPRE_MINUS_HALF,& - PPRE_PLUS_HALF,PZZ,PDZZ,& - PTHVM,PTHLM,PRTM,PW_UP2,PTH_UP,& - PTHL_UP,PRT_UP,PLUP,& - PRC_UP,PRI_UP,PTHV_UP,& - PRSAT_UP,PRC_MIX,PRI_MIX, & - PENTR,PDETR,PENTR_CLD,PDETR_CLD,& - PBUO_INTEG_DRY,PBUO_INTEG_CLD,& - PPART_DRY) -! ############################################################# - -!! -!!***COMPUTE_ENTR_DETR* - calculates caracteristics of the updraft or downdraft -!! using model of the EDMF scheme -!! -!! PURPOSE -!! ------- -!!**** The purpose of this routine is to compute entrainement and -!! detrainement at one level of the updraft -! -!!** METHOD -!! ------ -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!! REFERENCE -!! --------- -!! Book 1 of Meso-NH documentation (chapter Convection) -!! -!! -!! AUTHOR -!! ------ -!! J.Pergaud : 2009 -!! -!! MODIFICATIONS -!! ------------- -!! Y.Seity (06/2010) Bug correction -!! V.Masson (09/2010) Optimization -!! S. Riette april 2011 : ice added, protection against zero divide by Yves Bouteloup -!! protection against too big ZPART_DRY, interface modified -!! S. Riette Jan 2012: support for both order of vertical levels -!! S. Riette & J. Escobar (11/2013) : remove div by 0 on real*4 case -!! P.Marguinaud Jun 2012: fix uninitialized variable -!! P.Marguinaud Nov 2012: fix gfortran bug -!! S. Riette Apr 2013: bugs correction, rewriting (for optimisation) and -!! improvement of continuity at the condensation level -!! S. Riette Nov 2013: protection against zero divide for min value of dry PDETR -!! R.Honnert Oct 2016 : Update with AROME -! P. Wautelet 08/02/2019: bugfix: compute ZEPSI_CLOUD only once and only when it is needed -!! R. El Khatib 29-Apr-2019 portability fix : compiler may get confused by embricked WHERE statements -!! eventually breaking tests with NaN initializations at compile time. -!! Replace by IF conditions and traditional DO loops can only improve the performance. -! P. Wautelet 10/02/2021: bugfix: initialized PPART_DRY everywhere -!! -------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_CST -! -USE MODD_PARAM_MFSHALL_n -! -USE MODE_TH_R_FROM_THL_RT_1D, ONLY: TH_R_FROM_THL_RT_1D -! -USE MODE_THERMO -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - -IMPLICIT NONE -! -! -!* 1.1 Declaration of Arguments -! -! -INTEGER, INTENT(IN) :: KK -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -LOGICAL,DIMENSION(:), INTENT(IN) :: OTEST ! test to see if updraft is running -LOGICAL,DIMENSION(:), INTENT(IN) :: OTESTLCL !test of condensation -CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE ! frac_ice can be compute using - ! Temperature (T) or prescribed - ! (Y) -REAL, DIMENSION(:), INTENT(IN) :: PFRAC_ICE ! fraction of ice -! -! prognostic variables at t- deltat -! -REAL, DIMENSION(:), INTENT(IN) :: PRHODREF !rhodref -REAL, DIMENSION(:), INTENT(IN) :: PPRE_MINUS_HALF ! Pressure at flux level KK -REAL, DIMENSION(:), INTENT(IN) :: PPRE_PLUS_HALF ! Pressure at flux level KK+KKL -REAL, DIMENSION(:,:), INTENT(IN) :: PZZ ! Height at the flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! metrics coefficient -REAL, DIMENSION(:,:), INTENT(IN) :: PTHVM ! ThetaV environment - -! -! thermodynamical variables which are transformed in conservative var. -! -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM ! Thetal -REAL, DIMENSION(:,:), INTENT(IN) :: PRTM ! total mixing ratio -REAL, DIMENSION(:,:), INTENT(IN) :: PW_UP2 ! Vertical velocity^2 -REAL, DIMENSION(:), INTENT(IN) :: PTH_UP,PTHL_UP,PRT_UP ! updraft properties -REAL, DIMENSION(:), INTENT(IN) :: PLUP ! LUP compute from the ground -REAL, DIMENSION(:), INTENT(IN) :: PRC_UP,PRI_UP ! Updraft cloud content -REAL, DIMENSION(:), INTENT(IN) :: PTHV_UP ! Thetav of updraft -REAL, DIMENSION(:), INTENT(IN) :: PRSAT_UP ! Mixing ratio at saturation in updraft -REAL, DIMENSION(:), INTENT(INOUT) :: PRC_MIX, PRI_MIX ! Mixture cloud content -REAL, DIMENSION(:), INTENT(OUT) :: PENTR ! Mass flux entrainment of the updraft -REAL, DIMENSION(:), INTENT(OUT) :: PDETR ! Mass flux detrainment of the updraft -REAL, DIMENSION(:), INTENT(OUT) :: PENTR_CLD ! Mass flux entrainment of the updraft in cloudy part -REAL, DIMENSION(:), INTENT(OUT) :: PDETR_CLD ! Mass flux detrainment of the updraft in cloudy part -REAL, DIMENSION(:), INTENT(OUT) :: PBUO_INTEG_DRY, PBUO_INTEG_CLD! Integral Buoyancy -REAL, DIMENSION(:), INTENT(OUT) :: PPART_DRY ! ratio of dry part at the transition level -! -! -! 1.2 Declaration of local variables -! -! - -! Variables for cloudy part -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZKIC, ZKIC_F2 ! fraction of env. mass in the muxtures -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZEPSI,ZDELTA ! factor entrainment detrainment -REAL :: ZEPSI_CLOUD ! factor entrainment detrainment -REAL :: ZCOEFFMF_CLOUD ! factor for compputing entr. detr. -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZMIXTHL,ZMIXRT ! Thetal and rt in the mixtures -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZTHMIX ! Theta and Thetav of mixtures -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZRVMIX,ZRCMIX,ZRIMIX ! mixing ratios in mixtures -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZTHVMIX, ZTHVMIX_F2 ! Theta and Thetav of mixtures -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZTHV_UP_F2 ! thv_up at flux point kk+kkl -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZRSATW, ZRSATI ! working arrays (mixing ratio at saturation) -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZTHV ! theta V of environment at the bottom of cloudy part -REAL :: ZKIC_INIT !Initial value of ZKIC -REAL :: ZCOTHVU ! Variation of Thvup between bottom and top of cloudy part - -! Variables for dry part -REAL :: ZFOESW, ZFOESI ! saturating vapor pressure -REAL :: ZDRSATODP ! d.Rsat/dP -REAL :: ZT ! Temperature -REAL :: ZWK ! Work array - -! Variables for dry and cloudy parts -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZCOEFF_MINUS_HALF,& ! Variation of Thv between mass points kk-kkl and kk - ZCOEFF_PLUS_HALF ! Variation of Thv between mass points kk and kk+kkl -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZPRE ! pressure at the bottom of the cloudy part -REAL, DIMENSION(SIZE(PTHVM,1)) :: ZG_O_THVREF -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZFRAC_ICE ! fraction of ice -REAL :: ZRVORD ! RV/RD -REAL, DIMENSION(SIZE(PTHLM,1)) :: ZDZ_STOP,& ! Exact Height of the LCL above flux level KK - ZTHV_MINUS_HALF,& ! Thv at flux point(kk) - ZTHV_PLUS_HALF ! Thv at flux point(kk+kkl) -REAL :: ZDZ ! Delta Z used in computations -INTEGER :: JI, JLOOP -REAL(KIND=JPRB) :: ZHOOK_HANDLE -!---------------------------------------------------------------------------------- - -! 1.3 Initialisation -! ------------------ - IF (LHOOK) CALL DR_HOOK('COMPUTE_ENTR_DETR',0,ZHOOK_HANDLE) - - ZRVORD = XRV / XRD !=1.607 - ZG_O_THVREF(:)=XG/PTHVM(:,KK) - ZCOEFFMF_CLOUD=XENTR_MF * XG / XCRAD_MF - - ZFRAC_ICE(:)=PFRAC_ICE(:) ! to not modify fraction of ice - - ZPRE(:)=PPRE_MINUS_HALF(:) - -! 1.4 Estimation of PPART_DRY - DO JLOOP=1,SIZE(OTEST) - IF(OTEST(JLOOP) .AND. OTESTLCL(JLOOP)) THEN - !No dry part when condensation level is reached - PPART_DRY(JLOOP)=0. - ZDZ_STOP(JLOOP)=0. - ZPRE(JLOOP)=PPRE_MINUS_HALF(JLOOP) - ELSE IF (OTEST(JLOOP) .AND. .NOT. OTESTLCL(JLOOP)) THEN - !Temperature at flux level KK - ZT=PTH_UP(JLOOP)*(PPRE_MINUS_HALF(JLOOP)/XP00) ** (XRD/XCPD) - !Saturating vapor pressure at flux level KK - ZFOESW = MIN(EXP( XALPW - XBETAW/ZT - XGAMW*LOG(ZT) ), 0.99*PPRE_MINUS_HALF(JLOOP)) - ZFOESI = MIN(EXP( XALPI - XBETAI/ZT - XGAMI*LOG(ZT) ), 0.99*PPRE_MINUS_HALF(JLOOP)) - !Computation of d.Rsat / dP (partial derivations with respect to P and T - !and use of T=Theta*(P/P0)**(R/Cp) to transform dT into dP with theta_up - !constant at the vertical) - ZDRSATODP=(XBETAW/ZT-XGAMW)*(1-ZFRAC_ICE(JLOOP))+(XBETAI/ZT-XGAMI)*ZFRAC_ICE(JLOOP) - ZDRSATODP=((XRD/XCPD)*ZDRSATODP-1.)*PRSAT_UP(JLOOP)/ & - &(PPRE_MINUS_HALF(JLOOP)-(ZFOESW*(1-ZFRAC_ICE(JLOOP)) + ZFOESI*ZFRAC_ICE(JLOOP))) - !Use of d.Rsat / dP and pressure at flux level KK to find pressure (ZPRE) - !where Rsat is equal to PRT_UP - ZPRE(JLOOP)=PPRE_MINUS_HALF(JLOOP)+(PRT_UP(JLOOP)-PRSAT_UP(JLOOP))/ZDRSATODP - !Fraction of dry part (computed with pressure and used with heights, no - !impact found when using log function here and for pressure on flux levels - !computation) - PPART_DRY(JLOOP)=MAX(0., MIN(1., (PPRE_MINUS_HALF(JLOOP)-ZPRE(JLOOP))/(PPRE_MINUS_HALF(JLOOP)-PPRE_PLUS_HALF(JLOOP)))) - !Height above flux level KK of the cloudy part - ZDZ_STOP(JLOOP) = (PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))*PPART_DRY(JLOOP) - ELSE - PPART_DRY(JLOOP)=0. ! value does not matter, here - END IF - END DO - -! 1.5 Gradient and flux values of thetav - IF(KK/=KKB)THEN - ZCOEFF_MINUS_HALF(:)=((PTHVM(:,KK)-PTHVM(:,KK-KKL))/PDZZ(:,KK)) - ZTHV_MINUS_HALF(:) = PTHVM(:,KK) - ZCOEFF_MINUS_HALF(:)*0.5*(PZZ(:,KK+KKL)-PZZ(:,KK)) - ELSE - ZCOEFF_MINUS_HALF(:)=0. - ZTHV_MINUS_HALF(:) = PTHVM(:,KK) - ENDIF - ZCOEFF_PLUS_HALF(:) = ((PTHVM(:,KK+KKL)-PTHVM(:,KK))/PDZZ(:,KK+KKL)) - ZTHV_PLUS_HALF(:) = PTHVM(:,KK) + ZCOEFF_PLUS_HALF(:)*0.5*(PZZ(:,KK+KKL)-PZZ(:,KK)) - -! 2 Dry part computation: -! Integral buoyancy and computation of PENTR and PDETR for dry part -! -------------------------------------------------------------------- - -DO JLOOP=1,SIZE(OTEST) - IF (OTEST(JLOOP) .AND. PPART_DRY(JLOOP)>0.) THEN - !Buoyancy computation in two parts to use change of gradient of theta v of environment - !Between flux level KK and min(mass level, bottom of cloudy part) - ZDZ=MIN(ZDZ_STOP(JLOOP),(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))*0.5) - PBUO_INTEG_DRY(JLOOP) = ZG_O_THVREF(JLOOP)*ZDZ*& - (0.5 * ( - ZCOEFF_MINUS_HALF(JLOOP))*ZDZ & - - ZTHV_MINUS_HALF(JLOOP) + PTHV_UP(JLOOP) ) - - !Between mass flux KK and bottom of cloudy part (if above mass flux) - ZDZ=MAX(0., ZDZ_STOP(JLOOP)-(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))*0.5) - PBUO_INTEG_DRY(JLOOP) = PBUO_INTEG_DRY(JLOOP) + ZG_O_THVREF(JLOOP)*ZDZ*& - (0.5 * ( - ZCOEFF_PLUS_HALF(JLOOP))*ZDZ & - - PTHVM(JLOOP,KK) + PTHV_UP(JLOOP) ) - - !Entr//Detr. computation - IF (PBUO_INTEG_DRY(JLOOP)>=0.) THEN - PENTR(JLOOP) = 0.5/(XABUO-XBENTR*XENTR_DRY)*& - LOG(1.+ (2.*(XABUO-XBENTR*XENTR_DRY)/PW_UP2(JLOOP,KK))* & - PBUO_INTEG_DRY(JLOOP)) - PDETR(JLOOP) = 0. - ELSE - PENTR(JLOOP) = 0. - PDETR(JLOOP) = 0.5/(XABUO)*& - LOG(1.+ (2.*(XABUO)/PW_UP2(JLOOP,KK))* & - (-PBUO_INTEG_DRY(JLOOP))) - ENDIF - PENTR(JLOOP) = XENTR_DRY*PENTR(JLOOP)/(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK)) - PDETR(JLOOP) = XDETR_DRY*PDETR(JLOOP)/(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK)) - !Minimum value of detrainment - ZWK=PLUP(JLOOP)-0.5*(PZZ(JLOOP,KK)+PZZ(JLOOP,KK+KKL)) - ZWK=SIGN(MAX(1., ABS(ZWK)), ZWK) ! ZWK must not be zero - PDETR(JLOOP) = MAX(PPART_DRY(JLOOP)*XDETR_LUP/ZWK, PDETR(JLOOP)) - ELSE - !No dry part, condensation reached (OTESTLCL) - PBUO_INTEG_DRY(JLOOP) = 0. - PENTR(JLOOP)=0. - PDETR(JLOOP)=0. - ENDIF -ENDDO - -! 3 Wet part computation -! ----------------------- - -! 3.1 Integral buoyancy for cloudy part - - ! Compute theta_v of updraft at flux level KK+KKL - !MIX variables are used to avoid declaring new variables - !but we are dealing with updraft and not mixture - ZRCMIX(:)=PRC_UP(:) - ZRIMIX(:)=PRI_UP(:) - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,ZFRAC_ICE,& - PPRE_PLUS_HALF,PTHL_UP,PRT_UP,& - ZTHMIX,ZRVMIX,ZRCMIX,ZRIMIX,& - ZRSATW, ZRSATI,OOCEAN=.FALSE.) - ZTHV_UP_F2(:) = ZTHMIX(:)*(1.+ZRVORD*ZRVMIX(:))/(1.+PRT_UP(:)) - - ! Integral buoyancy for cloudy part - DO JLOOP=1,SIZE(OTEST) - IF(OTEST(JLOOP) .AND. PPART_DRY(JLOOP)<1.) THEN - !Gradient of Theta V updraft over the cloudy part, assuming that thetaV updraft don't change - !between flux level KK and bottom of cloudy part - ZCOTHVU=(ZTHV_UP_F2(JLOOP)-PTHV_UP(JLOOP))/((PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))*(1-PPART_DRY(JLOOP))) - - !Computation in two parts to use change of gradient of theta v of environment - !Between bottom of cloudy part (if under mass level) and mass level KK - ZDZ=MAX(0., 0.5*(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))-ZDZ_STOP(JLOOP)) - PBUO_INTEG_CLD(JLOOP) = ZG_O_THVREF(JLOOP)*ZDZ*& - (0.5*( ZCOTHVU - ZCOEFF_MINUS_HALF(JLOOP))*ZDZ & - - (PTHVM(JLOOP,KK)-ZDZ*ZCOEFF_MINUS_HALF(JLOOP)) + PTHV_UP(JLOOP) ) - - !Between max(mass level, bottom of cloudy part) and flux level KK+KKL - ZDZ=(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))-MAX(ZDZ_STOP(JLOOP),0.5*(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))) - PBUO_INTEG_CLD(JLOOP) = PBUO_INTEG_CLD(JLOOP)+ZG_O_THVREF(JLOOP)*ZDZ*& - (0.5*( ZCOTHVU - ZCOEFF_PLUS_HALF(JLOOP))*ZDZ& - - (PTHVM(JLOOP,KK)+(0.5*((PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK)))-ZDZ)*ZCOEFF_PLUS_HALF(JLOOP)) +& - PTHV_UP(JLOOP) ) - - ELSE - !No cloudy part - PBUO_INTEG_CLD(JLOOP)=0. - END IF - END DO - -! 3.2 Critical mixed fraction for KK+KKL flux level (ZKIC_F2) and -! for bottom of cloudy part (ZKIC), then a mean for the cloudy part -! (put also in ZKIC) -! -! computation by estimating unknown -! T^mix r_c^mix and r_i^mix from enthalpy^mix and r_w^mix -! We determine the zero crossing of the linear curve -! evaluating the derivative using ZMIXF=0.1 - - ZKIC_INIT=0.1 ! starting value for critical mixed fraction for CLoudy Part - - ! Compute thetaV of environment at the bottom of cloudy part - ! and cons then non cons. var. of mixture at the bottom of cloudy part - - ! JI computed to avoid KKL(KK-KKL) being < KKL*KKB -JI=KKL*MAX(KKL*(KK-KKL),KKL*KKB) -DO JLOOP=1,SIZE(OTEST) - IF(OTEST(JLOOP) .AND. PPART_DRY(JLOOP)>0.5) THEN - ZDZ=ZDZ_STOP(JLOOP)-0.5*(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK)) - ZTHV(JLOOP)= PTHVM(JLOOP,KK)+ZCOEFF_PLUS_HALF(JLOOP)*ZDZ - ZMIXTHL(JLOOP) = ZKIC_INIT * & - (PTHLM(JLOOP,KK)+ZDZ*(PTHLM(JLOOP,KK+KKL)-PTHLM(JLOOP,KK))/PDZZ(JLOOP,KK+KKL)) + & - (1. - ZKIC_INIT)*PTHL_UP(JLOOP) - ZMIXRT(JLOOP) = ZKIC_INIT * & - (PRTM(JLOOP,KK)+ZDZ*(PRTM(JLOOP,KK+KKL)-PRTM(JLOOP,KK))/PDZZ(JLOOP,KK+KKL)) + & - (1. - ZKIC_INIT)*PRT_UP(JLOOP) - ELSEIF(OTEST(JLOOP)) THEN - ZDZ=0.5*(PZZ(JLOOP,KK+KKL)-PZZ(JLOOP,KK))-ZDZ_STOP(JLOOP) - ZTHV(JLOOP)= PTHVM(JLOOP,KK)-ZCOEFF_MINUS_HALF(JLOOP)*ZDZ - ZMIXTHL(JLOOP) = ZKIC_INIT * & - (PTHLM(JLOOP,KK)-ZDZ*(PTHLM(JLOOP,KK)-PTHLM(JLOOP,JI))/PDZZ(JLOOP,KK)) + & - (1. - ZKIC_INIT)*PTHL_UP(JLOOP) - ZMIXRT(JLOOP) = ZKIC_INIT * & - (PRTM(JLOOP,KK)-ZDZ*(PRTM(JLOOP,KK)-PRTM(JLOOP,JI))/PDZZ(JLOOP,KK)) + & - (1. - ZKIC_INIT)*PRT_UP(JLOOP) - ELSE -#ifdef REPRO55 - ZMIXTHL(JLOOP) = 0.1 -#else - ZMIXTHL(JLOOP) = 300. -#endif - ZMIXRT(JLOOP) = 0.1 - ENDIF -ENDDO - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,ZFRAC_ICE,& - ZPRE,ZMIXTHL,ZMIXRT,& - ZTHMIX,ZRVMIX,PRC_MIX,PRI_MIX,& - ZRSATW, ZRSATI,OOCEAN=.FALSE.) - ZTHVMIX(:) = ZTHMIX(:)*(1.+ZRVORD*ZRVMIX(:))/(1.+ZMIXRT(:)) - - ! Compute cons then non cons. var. of mixture at the flux level KK+KKL with initial ZKIC - ZMIXTHL(:) = ZKIC_INIT * 0.5*(PTHLM(:,KK)+PTHLM(:,KK+KKL))+(1. - ZKIC_INIT)*PTHL_UP(:) - ZMIXRT(:) = ZKIC_INIT * 0.5*(PRTM(:,KK)+PRTM(:,KK+KKL))+(1. - ZKIC_INIT)*PRT_UP(:) - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,ZFRAC_ICE,& - PPRE_PLUS_HALF,ZMIXTHL,ZMIXRT,& - ZTHMIX,ZRVMIX,PRC_MIX,PRI_MIX,& - ZRSATW, ZRSATI,OOCEAN=.FALSE.) - ZTHVMIX_F2(:) = ZTHMIX(:)*(1.+ZRVORD*ZRVMIX(:))/(1.+ZMIXRT(:)) - - !Computation of mean ZKIC over the cloudy part -DO JLOOP=1,SIZE(OTEST) - IF (OTEST(JLOOP)) THEN - ! Compute ZKIC at the bottom of cloudy part - ! Thetav_up at bottom is equal to Thetav_up at flux level KK - IF (ABS(PTHV_UP(JLOOP)-ZTHVMIX(JLOOP))<1.E-10) THEN - ZKIC(JLOOP)=1. - ELSE - ZKIC(JLOOP) = MAX(0.,PTHV_UP(JLOOP)-ZTHV(JLOOP))*ZKIC_INIT / & - (PTHV_UP(JLOOP)-ZTHVMIX(JLOOP)) - END IF - ! Compute ZKIC_F2 at flux level KK+KKL - IF (ABS(ZTHV_UP_F2(JLOOP)-ZTHVMIX_F2(JLOOP))<1.E-10) THEN - ZKIC_F2(JLOOP)=1. - ELSE - ZKIC_F2(JLOOP) = MAX(0.,ZTHV_UP_F2(JLOOP)-ZTHV_PLUS_HALF(JLOOP))*ZKIC_INIT / & - (ZTHV_UP_F2(JLOOP)-ZTHVMIX_F2(JLOOP)) - END IF - !Mean ZKIC over the cloudy part - ZKIC(JLOOP)=MAX(MIN(0.5*(ZKIC(JLOOP)+ZKIC_F2(JLOOP)),1.),0.) - END IF -END DO - -! 3.3 Integration of PDF -! According to Kain and Fritsch (1990), we replace delta Mt -! in eq. (7) and (8) using eq. (5). Here we compute the ratio -! of integrals without computing delta Me - - !Constant PDF - !For this PDF, eq. (5) is delta Me=0.5*delta Mt -DO JLOOP=1,SIZE(OTEST) - IF(OTEST(JLOOP)) THEN - ZEPSI(JLOOP) = ZKIC(JLOOP)**2. !integration multiplied by 2 - ZDELTA(JLOOP) = (1.-ZKIC(JLOOP))**2. !idem - ENDIF -ENDDO - - !Triangular PDF - !Calculus must be verified before activating this part, but in this state, - !results on ARM case are almost identical - !For this PDF, eq. (5) is also delta Me=0.5*delta Mt - !WHERE(OTEST) - ! !Integration multiplied by 2 - ! WHERE(ZKIC<0.5) - ! ZEPSI(:)=8.*ZKIC(:)**3/3. - ! ZDELTA(:)=1.-4.*ZKIC(:)**2+8.*ZKIC(:)**3/3. - ! ELSEWHERE - ! ZEPSI(:)=5./3.-4*ZKIC(:)**2+8.*ZKIC(:)**3/3. - ! ZDELTA(:)=8.*(1.-ZKIC(:))**3/3. - ! ENDWHERE - !ENDWHERE - -! 3.4 Computation of PENTR and PDETR -DO JLOOP=1,SIZE(OTEST) - IF(OTEST(JLOOP)) THEN - ZEPSI_CLOUD=MIN(ZDELTA(JLOOP), ZEPSI(JLOOP)) - PENTR_CLD(JLOOP) = (1.-PPART_DRY(JLOOP))*ZCOEFFMF_CLOUD*PRHODREF(JLOOP)*ZEPSI_CLOUD - PDETR_CLD(JLOOP) = (1.-PPART_DRY(JLOOP))*ZCOEFFMF_CLOUD*PRHODREF(JLOOP)*ZDELTA(JLOOP) - PENTR(JLOOP) = PENTR(JLOOP)+PENTR_CLD(JLOOP) - PDETR(JLOOP) = PDETR(JLOOP)+PDETR_CLD(JLOOP) - ELSE - PENTR_CLD(JLOOP) = 0. - PDETR_CLD(JLOOP) = 0. - ENDIF -ENDDO - -IF (LHOOK) CALL DR_HOOK('COMPUTE_ENTR_DETR',1,ZHOOK_HANDLE) -END SUBROUTINE COMPUTE_ENTR_DETR -END MODULE MODE_COMPUTE_ENTR_DETR diff --git a/src/common/turb/mode_compute_function_thermo_mf.F90 b/src/common/turb/mode_compute_function_thermo_mf.F90 index 64cc93462a8539820657547cf78cff60ce859fb9..4538f7191f2c275db007112529df99210e72498a 100644 --- a/src/common/turb/mode_compute_function_thermo_mf.F90 +++ b/src/common/turb/mode_compute_function_thermo_mf.F90 @@ -8,7 +8,7 @@ ! IMPLICIT NONE CONTAINS - SUBROUTINE COMPUTE_FUNCTION_THERMO_MF( KRR,KRRL,KRRI, & + SUBROUTINE COMPUTE_FUNCTION_THERMO_MF(D, CST, KRR,KRRL,KRRI, & PTH, PR, PEXN, PFRAC_ICE, PPABS, & PT,PAMOIST,PATHETA ) ! ################################################################# @@ -50,7 +50,8 @@ CONTAINS !* 0. DECLARATIONS ! ------------ ! -USE MODD_CST +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK ! @@ -59,25 +60,27 @@ IMPLICIT NONE ! !* 0.1 declarations of arguments ! +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST INTEGER, INTENT(IN) :: KRR ! number of moist var. INTEGER, INTENT(IN) :: KRRL ! number of liquid water var. INTEGER, INTENT(IN) :: KRRI ! number of ice water var. -REAL, DIMENSION(:,:), INTENT(IN) :: PTH ! theta -REAL, DIMENSION(:,:,:), INTENT(IN) :: PR ! water species -REAL, DIMENSION(:,:) , INTENT(IN) :: PPABS,PEXN ! pressure, Exner funct. -REAL, DIMENSION(:,:) , INTENT(IN) :: PFRAC_ICE ! ice fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTH ! theta +REAL, DIMENSION(D%NIJT,D%NKT,KRR), INTENT(IN) :: PR ! water species +REAL, DIMENSION(D%NIJT,D%NKT) , INTENT(IN) :: PPABS,PEXN ! pressure, Exner funct. +REAL, DIMENSION(D%NIJT,D%NKT) , INTENT(IN) :: PFRAC_ICE ! ice fraction -REAL, DIMENSION(:,:), INTENT(OUT) :: PT ! temperature +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PT ! temperature -REAL, DIMENSION(:,:), INTENT(OUT) :: PAMOIST,PATHETA +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PAMOIST,PATHETA ! !------------------------------------------------------------------------------- ! !* 0.2 Declarations of local variables ! REAL :: ZEPS ! XMV / XMD -REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2)) :: & +REAL, DIMENSION(D%NIJT,D%NKT) :: & ZCP, & ! Cp ZE, & ! Saturation mixing ratio ZDEDT, & ! Saturation mixing ratio derivative @@ -87,129 +90,147 @@ REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2)) :: & ZATHETA_I, & ! ZLVOCP,ZLSOCP -INTEGER :: JRR +INTEGER :: JRR, JI, JK REAL(KIND=JPRB) :: ZHOOK_HANDLE ! !------------------------------------------------------------------------------- ! IF (LHOOK) CALL DR_HOOK('COMPUTE_FUNCTION_THERMO_MF',0,ZHOOK_HANDLE) ! - ZEPS = XMV / XMD + ZEPS = CST%XMV / CST%XMD ! !* Cph ! -ZCP=XCPD +ZCP=CST%XCPD -IF (KRR > 0) ZCP(:,:) = ZCP(:,:) + XCPV * PR(:,:,1) +IF (KRR > 0) THEN + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + CST%XCPV * PR(D%NIJB:D%NIJE,D%NKTB:D%NKTE,1) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +ENDIF DO JRR = 2,1+KRRL ! loop on the liquid components - ZCP(:,:) = ZCP(:,:) + XCL * PR(:,:,JRR) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + CST%XCL * PR(D%NIJB:D%NIJE,D%NKTB:D%NKTE,JRR) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) END DO -DO JRR = 2+KRRL,1+KRRL+KRRI ! loop on the solid components - ZCP(:,:) = ZCP(:,:) + XCI * PR(:,:,JRR) +DO JRR = 2+KRRL,1+KRRL+KRRI ! loop on the solid components + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + CST%XCI * PR(D%NIJB:D%NIJE,D%NKTB:D%NKTE,JRR) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) END DO !* Temperature ! -PT(:,:) = PTH(:,:) * PEXN(:,:) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = PTH(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * PEXN(D%NIJB:D%NIJE,D%NKTB:D%NKTE) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! ! !! Liquid water ! IF ( KRRL >= 1 ) THEN -! -!* Lv/Cph -! - ZLVOCP(:,:) = (XLVTT + (XCPV-XCL) * (PT(:,:)-XTT) ) / ZCP(:,:) -! -!* Saturation vapor pressure with respect to water -! - ZE(:,:) = EXP( XALPW - XBETAW/PT(:,:) - XGAMW*ALOG( PT(:,:) ) ) -! -!* Saturation mixing ratio with respect to water -! - ZE(:,:) = ZE(:,:) * ZEPS / ( PPABS(:,:) - ZE(:,:) ) -! -!* Compute the saturation mixing ratio derivative (rvs') -! - ZDEDT(:,:) = ( XBETAW / PT(:,:) - XGAMW ) / PT(:,:) & - * ZE(:,:) * ( 1. + ZE(:,:) / ZEPS ) -! -!* Compute Amoist -! - ZAMOIST_W(:,:)= 0.5 / ( 1.0 + ZDEDT(:,:) * ZLVOCP(:,:) ) -! -!* Compute Atheta -! - ZATHETA_W(:,:)= ZAMOIST_W(:,:) * PEXN(:,:) * & - ( ( ZE(:,:) - PR(:,:,1) ) * ZLVOCP(:,:) / & - ( 1. + ZDEDT(:,:) * ZLVOCP(:,:) ) * & + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ! + !* Lv/Cph + ! + ZLVOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = (CST%XLVTT + (CST%XCPV-CST%XCL) * (PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE)-CST%XTT) ) / & + & ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + ! + !* Saturation vapor pressure with respect to water + ! + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = EXP(CST%XALPW - CST%XBETAW/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - & + &CST%XGAMW*ALOG( PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) ) ) + ! + !* Saturation mixing ratio with respect to water + ! + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ZEPS / & + & ( PPABS(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) ) + ! + !* Compute the saturation mixing ratio derivative (rvs') + ! + ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = (CST%XBETAW/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - CST%XGAMW) / PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE)& + * ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ( 1. + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) / ZEPS ) + ! + !* Compute Amoist + ! + ZAMOIST_W(D%NIJB:D%NIJE,D%NKTB:D%NKTE)= 0.5 / ( 1.0 + ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ZLVOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) ) + ! + !* Compute Atheta + ! + ZATHETA_W(D%NIJB:D%NIJE,D%NKTB:D%NKTE)= ZAMOIST_W(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * PEXN(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * & + ( ( ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - PR(D%NIJB:D%NIJE,D%NKTB:D%NKTE,1) ) * ZLVOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) / & + ( 1. + ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ZLVOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) ) * & ( & - ZE(:,:) * (1. + ZE(:,:)/ZEPS) & - * ( -2.*XBETAW/PT(:,:) + XGAMW ) / PT(:,:)**2 & - +ZDEDT(:,:) * (1. + 2. * ZE(:,:)/ZEPS) & - * ( XBETAW/PT(:,:) - XGAMW ) / PT(:,:) & + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * (1. + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE)/ZEPS) & + * ( -2.*CST%XBETAW/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + CST%XGAMW ) / PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE)**2 & + +ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * (1. + 2. * ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE)/ZEPS) & + * ( CST%XBETAW/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - CST%XGAMW ) / PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) & ) & - - ZDEDT(:,:) & + - ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) & ) - -! -!! Solid water -! + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ! + !! Solid water + ! IF ( KRRI >= 1 ) THEN - -! -!* Ls/Cph -! - ZLSOCP(:,:) = (XLSTT + (XCPV-XCI) * (PT(:,:)-XTT) ) / ZCP(:,:) -! -!* Saturation vapor pressure with respect to ice -! - ZE(:,:) = EXP( XALPI - XBETAI/PT(:,:) - XGAMI*ALOG( PT(:,:) ) ) -! -!* Saturation mixing ratio with respect to ice -! - ZE(:,:) = ZE(:,:) * ZEPS / ( PPABS(:,:) - ZE(:,:) ) -! -!* Compute the saturation mixing ratio derivative (rvs') -! - ZDEDT(:,:) = ( XBETAI / PT(:,:) - XGAMI ) / PT(:,:) & - * ZE(:,:) * ( 1. + ZE(:,:) / ZEPS ) -! -!* Compute Amoist -! - ZAMOIST_I(:,:)= 0.5 / ( 1.0 + ZDEDT(:,:) * ZLSOCP(:,:) ) -! -!* Compute Atheta -! - ZATHETA_I(:,:)= ZAMOIST_I(:,:) * PEXN(:,:) * & - ( ( ZE(:,:) - PR(:,:,1) ) * ZLSOCP(:,:) / & - ( 1. + ZDEDT(:,:) * ZLSOCP(:,:) ) * & + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ! + !* Ls/Cph + ! + ZLSOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = (CST%XLSTT + (CST%XCPV-CST%XCI) * (PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE)-CST%XTT) ) / & + & ZCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + ! + !* Saturation vapor pressure with respect to ice + ! + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = EXP(CST%XALPI - CST%XBETAI/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - & + &CST%XGAMI*ALOG( PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) ) ) + ! + !* Saturation mixing ratio with respect to ice + ! + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ZEPS / & + & ( PPABS(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) ) + ! + !* Compute the saturation mixing ratio derivative (rvs') + ! + ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = (CST%XBETAI/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - CST%XGAMI) /PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE)& + * ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ( 1. + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) / ZEPS ) + ! + !* Compute Amoist + ! + ZAMOIST_I(D%NIJB:D%NIJE,D%NKTB:D%NKTE)= 0.5/(1.0 + ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ZLSOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE)) + ! + !* Compute Atheta + ! + ZATHETA_I(D%NIJB:D%NIJE,D%NKTB:D%NKTE)= ZAMOIST_I(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * PEXN(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * & + ( ( ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - PR(D%NIJB:D%NIJE,D%NKTB:D%NKTE,1) ) * ZLSOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) / & + ( 1. + ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * ZLSOCP(D%NIJB:D%NIJE,D%NKTB:D%NKTE) ) * & ( & - ZE(:,:) * (1. + ZE(:,:)/ZEPS) & - * ( -2.*XBETAI/PT(:,:) + XGAMI ) / PT(:,:)**2 & - +ZDEDT(:,:) * (1. + 2. * ZE(:,:)/ZEPS) & - * ( XBETAI/PT(:,:) - XGAMI ) / PT(:,:) & + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * (1. + ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE)/ZEPS) & + * ( -2.*CST%XBETAI/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + CST%XGAMI ) / PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE)**2 & + +ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) * (1. + 2. * ZE(D%NIJB:D%NIJE,D%NKTB:D%NKTE)/ZEPS) & + * ( CST%XBETAI/PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) - CST%XGAMI ) / PT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) & ) & - - ZDEDT(:,:) & + - ZDEDT(D%NIJB:D%NIJE,D%NKTB:D%NKTE) & ) - + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ELSE - ZAMOIST_I(:,:)=0. - ZATHETA_I(:,:)=0. + ZAMOIST_I(D%NIJB:D%NIJE,D%NKTB:D%NKTE)=0. + ZATHETA_I(D%NIJB:D%NIJE,D%NKTB:D%NKTE)=0. ENDIF - PAMOIST(:,:) = (1.0-PFRAC_ICE(:,:))*ZAMOIST_W(:,:) & - +PFRAC_ICE(:,:) *ZAMOIST_I(:,:) - PATHETA(:,:) = (1.0-PFRAC_ICE(:,:))*ZATHETA_W(:,:) & - +PFRAC_ICE(:,:) *ZATHETA_I(:,:) - -! + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PAMOIST(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = (1.0-PFRAC_ICE(D%NIJB:D%NIJE,D%NKTB:D%NKTE))*ZAMOIST_W(D%NIJB:D%NIJE,D%NKTB:D%NKTE) & + +PFRAC_ICE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) *ZAMOIST_I(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + PATHETA(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = (1.0-PFRAC_ICE(D%NIJB:D%NIJE,D%NKTB:D%NKTE))*ZATHETA_W(D%NIJB:D%NIJE,D%NKTB:D%NKTE) & + +PFRAC_ICE(D%NIJB:D%NIJE,D%NKTB:D%NKTE) *ZATHETA_I(D%NIJB:D%NIJE,D%NKTB:D%NKTE) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ! ELSE - PAMOIST(:,:) = 0. - PATHETA(:,:) = 0. + PAMOIST(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = 0. + PATHETA(D%NIJB:D%NIJE,D%NKTB:D%NKTE) = 0. ENDIF IF (LHOOK) CALL DR_HOOK('COMPUTE_FUNCTION_THERMO_MF',1,ZHOOK_HANDLE) END SUBROUTINE COMPUTE_FUNCTION_THERMO_MF diff --git a/src/common/turb/mode_compute_mf_cloud.F90 b/src/common/turb/mode_compute_mf_cloud.F90 index 7792adb25787829f9d597b25f55bd389ae29d32e..926d415523c54fb2bc08b1b080c8a46b1e8d4b8d 100644 --- a/src/common/turb/mode_compute_mf_cloud.F90 +++ b/src/common/turb/mode_compute_mf_cloud.F90 @@ -11,7 +11,7 @@ IMPLICIT NONE CONTAINS ! ! ######spl - SUBROUTINE COMPUTE_MF_CLOUD(KKA,KKB,KKE,KKU,KKL,KRR,KRRL,KRRI,HMF_CLOUD,& + SUBROUTINE COMPUTE_MF_CLOUD(D, CST, PARAMMF, KRR, KRRL, KRRI, HMF_CLOUD,& PFRAC_ICE, & PRC_UP,PRI_UP,PEMF, & PTHL_UP, PRT_UP, PFRAC_UP, & @@ -60,6 +60,10 @@ CONTAINS !* 0. DECLARATIONS ! ------------ ! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +! USE MODE_MSG ! USE MODE_COMPUTE_MF_CLOUD_DIRECT, ONLY: COMPUTE_MF_CLOUD_DIRECT @@ -75,33 +79,31 @@ IMPLICIT NONE ! ! ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF INTEGER, INTENT(IN) :: KRR ! number of moist var. INTEGER, INTENT(IN) :: KRRL ! number of liquid water var. INTEGER, INTENT(IN) :: KRRI ! number of ice water var. CHARACTER (LEN=4), INTENT(IN) :: HMF_CLOUD ! Type of statistical cloud scheme -REAL, DIMENSION(:,:), INTENT(IN) :: PFRAC_ICE ! liquid/ice fraction -REAL, DIMENSION(:,:), INTENT(IN) :: PRC_UP,PRI_UP,PEMF! updraft characteritics -REAL, DIMENSION(:,:), INTENT(IN) :: PTHL_UP, PRT_UP ! rc,w,Mass Flux,Thetal,rt -REAL, DIMENSION(:,:), INTENT(IN) :: PFRAC_UP ! Updraft Fraction -REAL, DIMENSION(:,:), INTENT(IN) :: PTHV_UP ! updraft thetaV -REAL, DIMENSION(:,:), INTENT(IN) :: PFRAC_ICE_UP ! liquid/solid fraction in updraft -REAL, DIMENSION(:,:), INTENT(IN) :: PRSAT_UP ! Rsat in updraft -REAL, DIMENSION(:,:), INTENT(IN) :: PEXNM ! exner function -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM, PRTM ! cons. var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM, PTHVM ! theta and thetaV -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRM ! water var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ, PZZ -INTEGER, DIMENSION(:), INTENT(IN) :: KKLCL ! index of updraft condensation level -REAL, DIMENSION(:,:), INTENT(IN) :: PPABSM, PRHODREF ! environement -REAL, DIMENSION(:,:), INTENT(OUT) :: PRC_MF, PRI_MF ! cloud content (INPUT=environment, OUTPUT=conv. cloud) -REAL, DIMENSION(:,:), INTENT(OUT) :: PCF_MF ! and cloud fraction for MF scheme -REAL, DIMENSION(:,:), INTENT(OUT) :: PSIGMF ! SQRT(variance) for statistical cloud scheme -REAL, DIMENSION(:), INTENT(IN) :: PDEPTH ! Deepness of cloud +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PFRAC_ICE ! liquid/ice fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRC_UP,PRI_UP,PEMF! updraft characteritics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHL_UP, PRT_UP ! rc,w,Mass Flux,Thetal,rt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PFRAC_UP ! Updraft Fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHV_UP ! updraft thetaV +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PFRAC_ICE_UP ! liquid/solid fraction in updraft +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRSAT_UP ! Rsat in updraft +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEXNM ! exner function +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM, PRTM ! cons. var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM, PTHVM ! theta and thetaV +REAL, DIMENSION(D%NIJT,D%NKT,KRR), INTENT(IN) :: PRM ! water var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ, PZZ +INTEGER, DIMENSION(D%NIJT), INTENT(IN) :: KKLCL ! index of updraft condensation level +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PPABSM, PRHODREF ! environement +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PRC_MF, PRI_MF ! cloud content (INPUT=environment, OUTPUT=conv. cloud) +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PCF_MF ! and cloud fraction for MF scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PSIGMF ! SQRT(variance) for statistical cloud scheme +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PDEPTH ! Deepness of cloud ! ! 1.2 Declaration of local variables @@ -122,14 +124,14 @@ PSIGMF = 0. IF (HMF_CLOUD == 'DIRE') THEN !Direct cloud scheme - CALL COMPUTE_MF_CLOUD_DIRECT(KKB, KKE, KKL, & + CALL COMPUTE_MF_CLOUD_DIRECT(D, PARAMMF, & &KKLCL(:), PFRAC_UP(:,:), PRC_UP(:,:), PRI_UP(:,:),& &PRC_MF(:,:), PRI_MF(:,:), PCF_MF(:,:)) ! ELSEIF (HMF_CLOUD == 'STAT') THEN !Statistical scheme using the PDF proposed by Bougeault (81, 82) and !Bechtold et al (95). - CALL COMPUTE_MF_CLOUD_STAT(KKA, KKB, KKE, KKU, KKL, KRR, KRRL, KRRI,& + CALL COMPUTE_MF_CLOUD_STAT(D, CST, PARAMMF, KRR, KRRL, KRRI,& &PFRAC_ICE,& &PTHLM, PRTM, PPABSM, PRM,& &PDZZ, PTHM, PEXNM,& @@ -137,7 +139,7 @@ ELSEIF (HMF_CLOUD == 'STAT') THEN &PSIGMF) ELSEIF (HMF_CLOUD == 'BIGA') THEN !Statistical scheme using the bi-gaussian PDF proposed by E. Perraud. - CALL COMPUTE_MF_CLOUD_BIGAUS(KKA, KKB, KKE, KKU, KKL,& + CALL COMPUTE_MF_CLOUD_BIGAUS(D, CST, PARAMMF,& &PEMF, PDEPTH,& &PRT_UP, PTHV_UP, PFRAC_ICE_UP, PRSAT_UP,& &PRTM, PTHM, PTHVM,& diff --git a/src/common/turb/mode_compute_mf_cloud_bigaus.F90 b/src/common/turb/mode_compute_mf_cloud_bigaus.F90 index 6fc2dfe69e294576ad93e95559820d106b0eaa72..b4153303b6e97173d96266d934d47dcacc7389b1 100644 --- a/src/common/turb/mode_compute_mf_cloud_bigaus.F90 +++ b/src/common/turb/mode_compute_mf_cloud_bigaus.F90 @@ -9,7 +9,7 @@ ! IMPLICIT NONE CONTAINS - SUBROUTINE COMPUTE_MF_CLOUD_BIGAUS(KKA, KKB, KKE, KKU, KKL,& + SUBROUTINE COMPUTE_MF_CLOUD_BIGAUS(D, CST, PARAMMF,& PEMF, PDEPTH,& PRT_UP, PTHV_UP, PFRAC_ICE_UP, PRSAT_UP,& PRTM, PTHM, PTHVM,& @@ -57,13 +57,11 @@ CONTAINS ! !* 0. DECLARATIONS ! ------------ -USE MODD_PARAM_MFSHALL_n, ONLY : XALPHA_MF, XSIGMA_MF -USE MODD_CST, ONLY : XPI, XG +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t ! USE MODI_SHUMAN_MF, ONLY: MZF_MF, GZ_M_W_MF -USE MODI_GAMMA_INC -! -USE MODE_THERMO ! USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK @@ -72,35 +70,33 @@ IMPLICIT NONE ! !* 0.1 Declaration of Arguments ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(:,:), INTENT(IN) :: PEMF ! updraft characteritics -REAL, DIMENSION(:), INTENT(IN) :: PDEPTH ! Deepness of cloud -REAL, DIMENSION(:,:), INTENT(IN) :: PTHV_UP, PRSAT_UP, PRT_UP ! updraft characteritics -REAL, DIMENSION(:,:), INTENT(IN) :: PFRAC_ICE_UP ! liquid/ice fraction in updraft -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM, PRTM, PTHVM ! env. var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ, PZZ -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODREF -REAL, DIMENSION(:,:), INTENT(OUT) :: PRC_MF, PRI_MF ! cloud content -REAL, DIMENSION(:,:), INTENT(OUT) :: PCF_MF ! and cloud fraction for MF scheme +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEMF ! updraft characteritics +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PDEPTH ! Deepness of cloud +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHV_UP, PRSAT_UP, PRT_UP ! updraft characteritics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PFRAC_ICE_UP ! liquid/ice fraction in updraft +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM, PRTM, PTHVM ! env. var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ, PZZ +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODREF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PRC_MF, PRI_MF ! cloud content +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PCF_MF ! and cloud fraction for MF scheme ! !* 0.1 Declaration of local variables ! ! -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZGRAD_Z_RT, & ! +REAL, DIMENSION(D%NIJT,D%NKT) :: ZGRAD_Z_RT, & ! & ZALPHA_UP_M, & ! Variables used to compute variance & ZSIGMF ! and sqrt(variance) -REAL, DIMENSION(SIZE(PTHM,1)) :: ZOMEGA_UP_M ! -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZW1 ! working array -INTEGER :: JK ! vertical loop control -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZEMF_M, ZTHV_UP_M, & ! +REAL, DIMENSION(D%NIJT) :: ZOMEGA_UP_M ! +REAL, DIMENSION(D%NIJT,D%NKT) :: ZW1 ! working array +INTEGER :: JI, JK ! loop control +REAL, DIMENSION(D%NIJT,D%NKT) :: ZEMF_M, ZTHV_UP_M, & ! & ZRSAT_UP_M, ZRT_UP_M,& ! Interpolation on mass points & ZFRAC_ICE_UP_M ! -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZCOND ! condensate -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZA, ZGAM ! used for integration +REAL, DIMENSION(D%NIJT,D%NKT) :: ZCOND ! condensate +REAL, DIMENSION(D%NIJT,D%NKT) :: ZA, ZGAM ! used for integration REAL(KIND=JPRB) :: ZHOOK_HANDLE IF (LHOOK) CALL DR_HOOK('COMPUTE_MF_CLOUD_BIGAUS',0,ZHOOK_HANDLE) @@ -113,70 +109,83 @@ IF (LHOOK) CALL DR_HOOK('COMPUTE_MF_CLOUD_BIGAUS',0,ZHOOK_HANDLE) ! ! !Vertical gradient of RT, result on mass points -ZW1(:,:)=GZ_M_W_MF(PRTM(:,:), PDZZ(:,:), KKA, KKU, KKL) -ZGRAD_Z_RT(:,:)=MZF_MF(ZW1(:,:), KKA, KKU, KKL) +CALL GZ_M_W_MF(D, PRTM(:,:), PDZZ(:,:), ZW1(:,:)) +CALL MZF_MF(D, ZW1(:,:), ZGRAD_Z_RT(:,:)) !Interpolation on mass points -ZTHV_UP_M(:,:) = MZF_MF(PTHV_UP(:,:), KKA, KKU, KKL) -ZRSAT_UP_M(:,:)= MZF_MF(PRSAT_UP(:,:), KKA, KKU, KKL) -ZRT_UP_M(:,:) = MZF_MF(PRT_UP(:,:), KKA, KKU, KKL) -ZEMF_M(:,:) = MZF_MF(PEMF(:,:), KKA, KKU, KKL) -ZFRAC_ICE_UP_M(:,:) = MZF_MF(PFRAC_ICE_UP(:,:), KKA, KKU, KKL) +CALL MZF_MF(D, PTHV_UP(:,:), ZTHV_UP_M(:,:)) +CALL MZF_MF(D, PRSAT_UP(:,:), ZRSAT_UP_M(:,:)) +CALL MZF_MF(D, PRT_UP(:,:), ZRT_UP_M(:,:)) +CALL MZF_MF(D, PEMF(:,:), ZEMF_M(:,:)) +CALL MZF_MF(D, PFRAC_ICE_UP(:,:), ZFRAC_ICE_UP_M(:,:)) !computation of omega star up ZOMEGA_UP_M(:)=0. -DO JK=KKB,KKE-KKL,KKL +DO JK=D%NKB,D%NKE-D%NKL,D%NKL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) !Vertical integration over the entire column but only buoyant points are used - !ZOMEGA_UP_M(:)=ZOMEGA_UP_M(:) + & - ! ZEMF_M(:,JK) * & - ! MAX(0.,(ZTHV_UP_M(:,JK)-PTHVM(:,JK))) * & - ! (PZZ(:,JK+KKL)-PZZ(:,JK)) / & - ! (PTHM(:,JK) * PRHODREF(:,JK)) + !ZOMEGA_UP_M(D%NIJB:D%NIJE)=ZOMEGA_UP_M(D%NIJB:D%NIJE) + & + ! ZEMF_M(D%NIJB:D%NIJE,JK) * & + ! MAX(0.,(ZTHV_UP_M(D%NIJB:D%NIJE,JK)-PTHVM(D%NIJB:D%NIJE,JK))) * & + ! (PZZ(D%NIJB:D%NIJE,JK+KKL)-PZZ(D%NIJB:D%NIJE,JK)) / & + ! (PTHM(D%NIJB:D%NIJE,JK) * PRHODREF(D%NIJB:D%NIJE,JK)) !Vertical integration over the entire column - ZOMEGA_UP_M(:)=ZOMEGA_UP_M(:) + & - ZEMF_M(:,JK) * & - (ZTHV_UP_M(:,JK)-PTHVM(:,JK)) * & - (PZZ(:,JK+KKL)-PZZ(:,JK)) / & - (PTHM(:,JK) * PRHODREF(:,JK)) + ZOMEGA_UP_M(D%NIJB:D%NIJE)=ZOMEGA_UP_M(D%NIJB:D%NIJE) + & + ZEMF_M(D%NIJB:D%NIJE,JK) * & + (ZTHV_UP_M(D%NIJB:D%NIJE,JK)-PTHVM(D%NIJB:D%NIJE,JK)) * & + (PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK)) / & + (PTHM(D%NIJB:D%NIJE,JK) * PRHODREF(D%NIJB:D%NIJE,JK)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ENDDO -ZOMEGA_UP_M(:)=MAX(ZOMEGA_UP_M(:), 1.E-20) -ZOMEGA_UP_M(:)=(XG*ZOMEGA_UP_M(:))**(1./3.) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZOMEGA_UP_M(D%NIJB:D%NIJE)=MAX(ZOMEGA_UP_M(D%NIJB:D%NIJE), 1.E-20) +ZOMEGA_UP_M(D%NIJB:D%NIJE)=(CST%XG*ZOMEGA_UP_M(D%NIJB:D%NIJE))**(1./3.) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) !computation of alpha up -DO JK=KKA,KKU,KKL - ZALPHA_UP_M(:,JK)=ZEMF_M(:,JK)/(XALPHA_MF*PRHODREF(:,JK)*ZOMEGA_UP_M(:)) +DO JK=D%NKA,D%NKU,D%NKL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZALPHA_UP_M(D%NIJB:D%NIJE,JK)=ZEMF_M(D%NIJB:D%NIJE,JK)/(PARAMMF%XALPHA_MF*PRHODREF(D%NIJB:D%NIJE,JK)*ZOMEGA_UP_M(D%NIJB:D%NIJE)) + ZALPHA_UP_M(D%NIJB:D%NIJE,JK)=MAX(0., MIN(ZALPHA_UP_M(D%NIJB:D%NIJE,JK), 1.)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ENDDO -ZALPHA_UP_M(:,:)=MAX(0., MIN(ZALPHA_UP_M(:,:), 1.)) !computation of sigma of the distribution -DO JK=KKA,KKU,KKL - ZSIGMF(:,JK)=ZEMF_M(:,JK) * & - (ZRT_UP_M(:,JK) - PRTM(:,JK)) * & - PDEPTH(:) * ZGRAD_Z_RT(:,JK) / & - (XSIGMA_MF * ZOMEGA_UP_M(:) * PRHODREF(:,JK)) +DO JK=D%NKA,D%NKU,D%NKL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZSIGMF(D%NIJB:D%NIJE,JK)=ZEMF_M(D%NIJB:D%NIJE,JK) * & + (ZRT_UP_M(D%NIJB:D%NIJE,JK) - PRTM(D%NIJB:D%NIJE,JK)) * & + PDEPTH(D%NIJB:D%NIJE) * ZGRAD_Z_RT(D%NIJB:D%NIJE,JK) / & + (PARAMMF%XSIGMA_MF * ZOMEGA_UP_M(D%NIJB:D%NIJE) * PRHODREF(D%NIJB:D%NIJE,JK)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ENDDO -ZSIGMF(:,:)=SQRT(MAX(ABS(ZSIGMF(:,:)), 1.E-40)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +ZSIGMF(D%NIJB:D%NIJE,:)=SQRT(MAX(ABS(ZSIGMF(D%NIJB:D%NIJE,:)), 1.E-40)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! !* 2. PDF integration ! ------------------------------------------------ ! +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) !The mean of the distribution is ZRT_UP !Computation of ZA and ZGAM (=efrc(ZA)) coefficient -ZA(:,:)=(ZRSAT_UP_M(:,:)-ZRT_UP_M(:,:))/(sqrt(2.)*ZSIGMF(:,:)) +ZA(D%NIJB:D%NIJE,:)=(ZRSAT_UP_M(D%NIJB:D%NIJE,:)-ZRT_UP_M(D%NIJB:D%NIJE,:))/(sqrt(2.)*ZSIGMF(D%NIJB:D%NIJE,:)) !Approximation of erf function -ZGAM(:,:)=1-SIGN(1., ZA(:,:))*SQRT(1-EXP(-4*ZA(:,:)**2/XPI)) +ZGAM(D%NIJB:D%NIJE,:)=1-SIGN(1., ZA(D%NIJB:D%NIJE,:))*SQRT(1-EXP(-4*ZA(D%NIJB:D%NIJE,:)**2/CST%XPI)) !computation of cloud fraction -PCF_MF(:,:)=MAX( 0., MIN(1.,0.5*ZGAM(:,:) * ZALPHA_UP_M(:,:))) +PCF_MF(D%NIJB:D%NIJE,:)=MAX( 0., MIN(1.,0.5*ZGAM(D%NIJB:D%NIJE,:) * ZALPHA_UP_M(D%NIJB:D%NIJE,:))) !computation of condensate, then PRC and PRI -ZCOND(:,:)=(EXP(-ZA(:,:)**2)-ZA(:,:)*SQRT(XPI)*ZGAM(:,:))*ZSIGMF(:,:)/SQRT(2.*XPI) * ZALPHA_UP_M(:,:) -ZCOND(:,:)=MAX(ZCOND(:,:), 0.) !due to approximation of ZGAM value, ZCOND could be slightly negative -PRC_MF(:,:)=(1.-ZFRAC_ICE_UP_M(:,:)) * ZCOND(:,:) -PRI_MF(:,:)=( ZFRAC_ICE_UP_M(:,:)) * ZCOND(:,:) - +ZCOND(D%NIJB:D%NIJE,:)=(EXP(-ZA(D%NIJB:D%NIJE,:)**2)-ZA(D%NIJB:D%NIJE,:)*SQRT(CST%XPI)*ZGAM(D%NIJB:D%NIJE,:))* & + &ZSIGMF(D%NIJB:D%NIJE,:)/SQRT(2.*CST%XPI) * ZALPHA_UP_M(D%NIJB:D%NIJE,:) +ZCOND(D%NIJB:D%NIJE,:)=MAX(ZCOND(D%NIJB:D%NIJE,:), 0.) !due to approximation of ZGAM value, ZCOND could be slightly negative +PRC_MF(D%NIJB:D%NIJE,:)=(1.-ZFRAC_ICE_UP_M(D%NIJB:D%NIJE,:)) * ZCOND(D%NIJB:D%NIJE,:) +PRI_MF(D%NIJB:D%NIJE,:)=( ZFRAC_ICE_UP_M(D%NIJB:D%NIJE,:)) * ZCOND(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +! IF (LHOOK) CALL DR_HOOK('COMPUTE_MF_CLOUD_BIGAUS',1,ZHOOK_HANDLE) END SUBROUTINE COMPUTE_MF_CLOUD_BIGAUS diff --git a/src/common/turb/mode_compute_mf_cloud_direct.F90 b/src/common/turb/mode_compute_mf_cloud_direct.F90 index 8db27676d2e1d61c5d6dfd5b859699106e6756c2..b7c86d94cdad5651d66381085baa6316ca15b1b7 100644 --- a/src/common/turb/mode_compute_mf_cloud_direct.F90 +++ b/src/common/turb/mode_compute_mf_cloud_direct.F90 @@ -8,7 +8,7 @@ ! IMPLICIT NONE CONTAINS - SUBROUTINE COMPUTE_MF_CLOUD_DIRECT(KKB, KKE, KKL, & + SUBROUTINE COMPUTE_MF_CLOUD_DIRECT(D, PARAMMF, & &KKLCL, PFRAC_UP, PRC_UP, PRI_UP,& &PRC_MF, PRI_MF, PCF_MF) ! ################################################################# @@ -53,7 +53,8 @@ CONTAINS ! !* 0. DECLARATIONS ! ------------ -USE MODD_PARAM_MFSHALL_n, ONLY : XKCF_MF +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_PARAM_MFSHALL_n, ONLY : PARAM_MFSHALL_t USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK ! @@ -61,14 +62,13 @@ IMPLICIT NONE ! !* 0.1 Declaration of Arguments ! -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -INTEGER, DIMENSION(:), INTENT(IN) :: KKLCL ! index of updraft condensation level -REAL, DIMENSION(:,:), INTENT(IN) :: PFRAC_UP ! Updraft Fraction -REAL, DIMENSION(:,:), INTENT(IN) :: PRC_UP,PRI_UP ! updraft characteritics -REAL, DIMENSION(:,:), INTENT(OUT) :: PRC_MF, PRI_MF ! cloud content -REAL, DIMENSION(:,:), INTENT(OUT) :: PCF_MF ! and cloud fraction for MF scheme +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +INTEGER, DIMENSION(D%NIJT), INTENT(IN) :: KKLCL ! index of updraft condensation level +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PFRAC_UP ! Updraft Fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRC_UP,PRI_UP ! updraft characteritics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PRC_MF, PRI_MF ! cloud content +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PCF_MF ! and cloud fraction for MF scheme ! !* 0.1 Declaration of local variables ! @@ -89,21 +89,21 @@ PRC_MF(:,:)=0. PRI_MF(:,:)=0. PCF_MF(:,:)=0. -DO JI=1,SIZE(PCF_MF,1) +DO JI=D%NIJB,D%NIJE #ifdef REPRO48 - JK0=KKLCL(JI)-KKL ! first mass level with cloud - JK0=MAX(JK0, MIN(KKB,KKE)) !protection if KKL=1 - JK0=MIN(JK0, MAX(KKB,KKE)) !protection if KKL=-1 - DO JK=JK0,KKE-KKL,KKL + JK0=KKLCL(JI)-D%NKL ! first mass level with cloud + JK0=MAX(JK0, MIN(D%NKB,D%NKE)) !protection if KKL=1 + JK0=MIN(JK0, MAX(D%NKB,D%NKE)) !protection if KKL=-1 + DO JK=JK0,D%NKE-D%NKL,D%NKL #else - DO JK=KKLCL(JI),KKE-KKL,KKL + DO JK=KKLCL(JI),D%NKE-D%NKL,D%NKL #endif - PCF_MF(JI,JK ) = MAX( 0., MIN(1.,XKCF_MF *0.5* ( & - & PFRAC_UP(JI,JK) + PFRAC_UP(JI,JK+KKL) ) )) - PRC_MF(JI,JK) = 0.5* XKCF_MF * ( PFRAC_UP(JI,JK)*PRC_UP(JI,JK) & - + PFRAC_UP(JI,JK+KKL)*PRC_UP(JI,JK+KKL) ) - PRI_MF(JI,JK) = 0.5* XKCF_MF * ( PFRAC_UP(JI,JK)*PRI_UP(JI,JK) & - + PFRAC_UP(JI,JK+KKL)*PRI_UP(JI,JK+KKL) ) + PCF_MF(JI,JK ) = MAX( 0., MIN(1.,PARAMMF%XKCF_MF *0.5* ( & + & PFRAC_UP(JI,JK) + PFRAC_UP(JI,JK+D%NKL) ) )) + PRC_MF(JI,JK) = 0.5* PARAMMF%XKCF_MF * ( PFRAC_UP(JI,JK)*PRC_UP(JI,JK) & + + PFRAC_UP(JI,JK+D%NKL)*PRC_UP(JI,JK+D%NKL) ) + PRI_MF(JI,JK) = 0.5* PARAMMF%XKCF_MF * ( PFRAC_UP(JI,JK)*PRI_UP(JI,JK) & + + PFRAC_UP(JI,JK+D%NKL)*PRI_UP(JI,JK+D%NKL) ) END DO END DO diff --git a/src/common/turb/mode_compute_mf_cloud_stat.F90 b/src/common/turb/mode_compute_mf_cloud_stat.F90 index 12fcce462fef6b0eb2c4b73fec8b6058a78ada08..64adf965de044c436946760036c6b301be9679ec 100644 --- a/src/common/turb/mode_compute_mf_cloud_stat.F90 +++ b/src/common/turb/mode_compute_mf_cloud_stat.F90 @@ -9,7 +9,7 @@ IMPLICIT NONE CONTAINS ! ######spl - SUBROUTINE COMPUTE_MF_CLOUD_STAT(KKA, KKB, KKE, KKU, KKL, KRR, KRRL, KRRI,& + SUBROUTINE COMPUTE_MF_CLOUD_STAT(D, CST, PARAMMF, KRR, KRRL, KRRI,& &PFRAC_ICE,& &PTHLM, PRTM, PPABSM, PRM,& &PDZZ, PTHM, PEXNM, & @@ -52,8 +52,9 @@ CONTAINS ! !* 0. DECLARATIONS ! ------------ -USE MODD_PARAM_MFSHALL_n, ONLY : XTAUSIGMF -USE MODD_PARAMETERS, ONLY : JPHEXT, JPVEXT +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t ! USE MODI_SHUMAN_MF, ONLY: MZF_MF, MZM_MF, GZ_M_W_MF USE MODE_COMPUTE_FUNCTION_THERMO_MF, ONLY: COMPUTE_FUNCTION_THERMO_MF @@ -65,31 +66,31 @@ IMPLICIT NONE ! !* 0.1 Declaration of Arguments ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF INTEGER, INTENT(IN) :: KRR ! number of moist var. INTEGER, INTENT(IN) :: KRRL ! number of liquid water var. INTEGER, INTENT(IN) :: KRRI ! number of ice water var. -REAL, DIMENSION(:,:), INTENT(IN) :: PFRAC_ICE ! liquid/ice fraction -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM, PRTM ! cons. var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PPABSM ! Pressure at time t-1 -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRM ! water var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM ! environement -REAL, DIMENSION(:,:), INTENT(IN) :: PEXNM -REAL, DIMENSION(:,:), INTENT(IN) :: PEMF ! updraft characteritics -REAL, DIMENSION(:,:), INTENT(IN) :: PTHL_UP, PRT_UP ! rc,w,Mass Flux,Thetal,rt -REAL, DIMENSION(:,:), INTENT(OUT) :: PSIGMF ! SQRT(variance) for statistical cloud scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PFRAC_ICE ! liquid/ice fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM, PRTM ! cons. var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PPABSM ! Pressure at time t-1 +REAL, DIMENSION(D%NIJT,D%NKT,KRR), INTENT(IN) :: PRM ! water var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM ! environement +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEXNM +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEMF ! updraft characteritics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHL_UP, PRT_UP ! rc,w,Mass Flux,Thetal,rt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PSIGMF ! SQRT(variance) for statistical cloud scheme ! !* 0.1 Declaration of local variables ! ! -REAL, DIMENSION(SIZE(PTHLM,1),SIZE(PTHLM,2)) :: ZFLXZ -REAL, DIMENSION(SIZE(PTHLM,1),SIZE(PTHLM,2)) :: ZT -REAL, DIMENSION(SIZE(PTHLM,1),SIZE(PTHLM,2)) :: ZAMOIST, ZATHETA +REAL, DIMENSION(D%NIJT,D%NKT) :: ZFLXZ +REAL, DIMENSION(D%NIJT,D%NKT) :: ZT +REAL, DIMENSION(D%NIJT,D%NKT) :: ZAMOIST, ZATHETA +REAL, DIMENSION(D%NIJT,D%NKT) :: ZWK +INTEGER :: JI, JK REAL(KIND=JPRB) :: ZHOOK_HANDLE ! !* 0.2 initialisation @@ -103,7 +104,7 @@ IF (LHOOK) CALL DR_HOOK('COMPUTE_MF_CLOUD_STAT',0,ZHOOK_HANDLE) ! ------------------------------------------------ ! ! Thermodynamics functions -CALL COMPUTE_FUNCTION_THERMO_MF( KRR,KRRL,KRRI, & +CALL COMPUTE_FUNCTION_THERMO_MF( D, CST, KRR,KRRL,KRRI, & PTHM,PRM,PEXNM,PFRAC_ICE,PPABSM, & ZT,ZAMOIST,ZATHETA ) ! @@ -113,14 +114,20 @@ IF (KRRL > 0) THEN ! ! - ZFLXZ(:,:) = -2 * XTAUSIGMF * PEMF(:,:)*(PTHL_UP(:,:)-MZM_MF(PTHLM(:,:), KKA, KKU, KKL)) * & - GZ_M_W_MF(PTHLM(:,:),PDZZ(:,:), KKA, KKU, KKL) -! -! Avoid negative values - ZFLXZ(:,:) = MAX(0.,ZFLXZ(:,:)) - + CALL MZM_MF(D, PTHLM(:,:), ZFLXZ(:,:)) + CALL GZ_M_W_MF(D, PTHLM(:,:), PDZZ(:,:), ZWK(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ZFLXZ(D%NIJB:D%NIJE,:) = -2 * PARAMMF%XTAUSIGMF * PEMF(D%NIJB:D%NIJE,:)* & + & (PTHL_UP(D%NIJB:D%NIJE,:)-ZFLXZ(D%NIJB:D%NIJE,:)) * ZWK(D%NIJB:D%NIJE,:) + ! + ! Avoid negative values + ZFLXZ(D%NIJB:D%NIJE,:) = MAX(0.,ZFLXZ(D%NIJB:D%NIJE,:)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) - PSIGMF(:,:) = MZF_MF(ZFLXZ(:,:), KKA, KKU, KKL) * ZATHETA(:,:)**2 + CALL MZF_MF(D, ZFLXZ(:,:), PSIGMF(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PSIGMF(D%NIJB:D%NIJE,:) = PSIGMF(D%NIJB:D%NIJE,:) * ZATHETA(D%NIJB:D%NIJE,:)**2 + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! ! @@ -129,18 +136,26 @@ IF (KRRL > 0) THEN ! ! ! - ZFLXZ(:,:) = -2 * XTAUSIGMF * PEMF(:,:)*(PRT_UP(:,:)-MZM_MF(PRTM(:,:), KKA, KKU, KKL)) * & - GZ_M_W_MF(PRTM(:,:),PDZZ(:,:), KKA, KKU, KKL) -! -! Avoid negative values - ZFLXZ(:,:) = MAX(0.,ZFLXZ(:,:)) -! + CALL MZM_MF(D, PRTM(:,:), ZFLXZ(:,:)) + CALL GZ_M_W_MF(D, PRTM(:,:), PDZZ(:,:), ZWK(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + ZFLXZ(D%NIJB:D%NIJE,:) = -2 * PARAMMF%XTAUSIGMF * PEMF(D%NIJB:D%NIJE,:)* & + & (PRT_UP(D%NIJB:D%NIJE,:)-ZFLXZ(D%NIJB:D%NIJE,:)) * ZWK(D%NIJB:D%NIJE,:) + ! + ! Avoid negative values + ZFLXZ(D%NIJB:D%NIJE,:) = MAX(0.,ZFLXZ(D%NIJB:D%NIJE,:)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) - PSIGMF(:,:) = PSIGMF(:,:) + ZAMOIST(:,:) **2 * MZF_MF(ZFLXZ(:,:), KKA, KKU, KKL) + CALL MZF_MF(D, ZFLXZ(:,:), ZWK(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PSIGMF(D%NIJB:D%NIJE,:) = PSIGMF(D%NIJB:D%NIJE,:) + ZAMOIST(D%NIJB:D%NIJE,:) **2 * ZWK(D%NIJB:D%NIJE,:) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! ! 1.3 Vertical part of Sigma_s ! - PSIGMF(:,:) = SQRT( MAX (PSIGMF(:,:) , 0.) ) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PSIGMF(D%NIJB:D%NIJE,:) = SQRT( MAX (PSIGMF(D%NIJB:D%NIJE,:) , 0.) ) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ELSE PSIGMF(:,:) = 0. END IF diff --git a/src/common/turb/mode_compute_updraft.F90 b/src/common/turb/mode_compute_updraft.F90 index f3b480826cbba990948d580dd7f9d1ccbda64702..8b14a7c6f9bb51b078109d746917159002da2273 100644 --- a/src/common/turb/mode_compute_updraft.F90 +++ b/src/common/turb/mode_compute_updraft.F90 @@ -9,7 +9,8 @@ ! IMPLICIT NONE CONTAINS - SUBROUTINE COMPUTE_UPDRAFT(KKA,KKB,KKE,KKU,KKL,HFRAC_ICE, & + SUBROUTINE COMPUTE_UPDRAFT(D, CST, NEB, PARAMMF, TURB, CSTURB, & + KSV, HFRAC_ICE, & OENTR_DETR,OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PZZ,PDZZ, & @@ -60,21 +61,23 @@ CONTAINS !! R.Honnert Oct 2016 : Add ZSURF and Update with AROME !! Q.Rodier 01/2019 : support RM17 mixing length !! R.Honnert 01/2019 : add LGZ (reduction of the mass-flux surface closure with the resolution) +!! S. Riette 06/2022: compute_entr_detr is inlined !! -------------------------------------------------------------------------- ! !* 0. DECLARATIONS ! ------------ ! -USE MODD_CST, ONLY: XG, XRV, XRD -USE MODD_PARAM_MFSHALL_n, ONLY: LGZ, XALP_PERT, XCMF, XPRES_UV, XFRAC_UP_MAX, & - XABUO, XBENTR, XENTR_DRY, XBDETR, XGZ -USE MODD_TURB_n, ONLY : CTURBLEN - -USE MODE_COMPUTE_ENTR_DETR, ONLY: COMPUTE_ENTR_DETR -USE MODE_TH_R_FROM_THL_RT_1D, ONLY: TH_R_FROM_THL_RT_1D +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_NEB, ONLY: NEB_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +USE MODD_TURB_n, ONLY: TURB_t +USE MODD_CTURB, ONLY: CSTURB_t +! USE MODI_SHUMAN_MF, ONLY: MZM_MF, MZF_MF, GZ_M_W_MF USE MODE_COMPUTE_BL89_ML, ONLY: COMPUTE_BL89_ML +USE MODE_MSG, ONLY: PRINT_MSG, NVERB_FATAL USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK @@ -84,60 +87,62 @@ IMPLICIT NONE ! ! ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(NEB_t), INTENT(IN) :: NEB +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +TYPE(TURB_t), INTENT(IN) :: TURB +TYPE(CSTURB_t), INTENT(IN) :: CSTURB +INTEGER, INTENT(IN) :: KSV CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE ! partition liquid/ice scheme LOGICAL, INTENT(IN) :: OENTR_DETR! flag to recompute entrainment, detrainment and mass flux LOGICAL, INTENT(IN) :: OMIXUV ! True if mixing of momentum LOGICAL, INTENT(IN) :: ONOMIXLG ! False if mixing of lagrangian tracer INTEGER, INTENT(IN) :: KSV_LGBEG ! first index of lag. tracer INTEGER, INTENT(IN) :: KSV_LGEND ! last index of lag. tracer -REAL, DIMENSION(:,:), INTENT(IN) :: PZZ ! Height at the flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Metrics coefficient +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PZZ ! Height at the flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Metrics coefficient -REAL, DIMENSION(:), INTENT(IN) :: PSFTH,PSFRV +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PSFTH,PSFRV ! normal surface fluxes of theta,rv,(u,v) parallel to the orography ! -REAL, DIMENSION(:,:), INTENT(IN) :: PPABSM ! Pressure at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODREF ! dry density of the +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PPABSM ! Pressure at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODREF ! dry density of the ! reference state -REAL, DIMENSION(:,:), INTENT(IN) :: PUM ! u mean wind -REAL, DIMENSION(:,:), INTENT(IN) :: PVM ! v mean wind -REAL, DIMENSION(:,:), INTENT(IN) :: PTKEM ! TKE at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PUM ! u mean wind +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PVM ! v mean wind +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTKEM ! TKE at t-dt ! -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM ! liquid pot. temp. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PRVM ! vapor mixing ratio at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM,PRTM ! cons. var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM ! liquid pot. temp. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRVM ! vapor mixing ratio at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM,PRTM ! cons. var. at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSVM ! scalar var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(IN) :: PSVM ! scalar var. at t-dt -REAL, DIMENSION(:,:), INTENT(OUT) :: PTHL_UP,PRT_UP ! updraft properties -REAL, DIMENSION(:,:), INTENT(OUT) :: PU_UP, PV_UP ! updraft wind components -REAL, DIMENSION(:,:), INTENT(INOUT):: PRV_UP,PRC_UP, & ! updraft rv, rc +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PTHL_UP,PRT_UP ! updraft properties +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PU_UP, PV_UP ! updraft wind components +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PRV_UP,PRC_UP, & ! updraft rv, rc PRI_UP,PTHV_UP,& ! updraft ri, THv PW_UP,PFRAC_UP,& ! updraft w, fraction PFRAC_ICE_UP,& ! liquid/solid fraction in updraft PRSAT_UP ! Rsat -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSV_UP ! updraft scalar var. +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(OUT) :: PSV_UP ! updraft scalar var. -REAL, DIMENSION(:,:), INTENT(INOUT):: PEMF,PDETR,PENTR ! Mass_flux, +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PEMF,PDETR,PENTR ! Mass_flux, ! detrainment,entrainment -REAL, DIMENSION(:,:), INTENT(INOUT) :: PBUO_INTEG ! Integrated Buoyancy -INTEGER, DIMENSION(:), INTENT(INOUT) :: KKLCL,KKETL,KKCTL! LCL, ETL, CTL -REAL, DIMENSION(:), INTENT(OUT) :: PDEPTH ! Deepness of cloud +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PBUO_INTEG ! Integrated Buoyancy +INTEGER, DIMENSION(D%NIJT), INTENT(INOUT) :: KKLCL,KKETL,KKCTL! LCL, ETL, CTL +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PDEPTH ! Deepness of cloud REAL, INTENT(IN) :: PDX, PDY ! 1.2 Declaration of local variables ! ! ! Mean environment variables at t-dt at flux point -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: & +REAL, DIMENSION(D%NIJT,D%NKT) :: & ZTHM_F,ZRVM_F ! Theta,rv of ! updraft environnement -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: & +REAL, DIMENSION(D%NIJT,D%NKT) :: & ZRTM_F, ZTHLM_F, ZTKEM_F,& ! rt, thetal,TKE,pressure, ZUM_F,ZVM_F,ZRHO_F, & ! density,momentum ZPRES_F,ZTHVM_F,ZTHVM, & ! interpolated at the flux point @@ -146,39 +151,38 @@ REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: & ZBUO_INTEG_DRY, ZBUO_INTEG_CLD,&! Integrated Buoyancy ZENTR_CLD,ZDETR_CLD ! wet entrainment and detrainment -REAL, DIMENSION(SIZE(PSVM,1),SIZE(PTHM,2),SIZE(PSVM,3)) :: & +REAL, DIMENSION(D%NIJT,D%NKT,KSV) :: & ZSVM_F ! scalar variables -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: & +REAL, DIMENSION(D%NIJT,D%NKT) :: & ZTH_UP, & ! updraft THETA ZRC_MIX, ZRI_MIX ! guess of Rc and Ri for KF mixture -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZCOEF ! diminution coefficient for too high clouds +REAL, DIMENSION(D%NIJT,D%NKT) :: ZCOEF ! diminution coefficient for too high clouds -REAL, DIMENSION(SIZE(PSFTH,1) ) :: ZWTHVSURF ! Surface w'thetav' +REAL, DIMENSION(D%NIJT) :: ZWTHVSURF ! Surface w'thetav' REAL :: ZRDORV ! RD/RV REAL :: ZRVORD ! RV/RD -REAL, DIMENSION(SIZE(PTHM,1)) :: ZMIX1,ZMIX2,ZMIX3_CLD,ZMIX2_CLD +REAL, DIMENSION(D%NIJT) :: ZMIX1,ZMIX2,ZMIX3_CLD,ZMIX2_CLD -REAL, DIMENSION(SIZE(PTHM,1)) :: ZLUP ! Upward Mixing length from the ground +REAL, DIMENSION(D%NIJT) :: ZLUP ! Upward Mixing length from the ground -INTEGER :: ISV ! Number of scalar variables INTEGER :: JK,JI,JSV ! loop counters -LOGICAL, DIMENSION(SIZE(PTHM,1)) :: GTEST,GTESTLCL,GTESTETL +LOGICAL, DIMENSION(D%NIJT) :: GTEST,GTESTLCL,GTESTETL ! Test if the ascent continue, if LCL or ETL is reached LOGICAL :: GLMIX ! To choose upward or downward mixing length -LOGICAL, DIMENSION(SIZE(PTHM,1)) :: GWORK1 -LOGICAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: GWORK2 +LOGICAL, DIMENSION(D%NIJT) :: GWORK1 +LOGICAL, DIMENSION(D%NIJT,D%NKT) :: GWORK2 -INTEGER :: ITEST, JLOOP +INTEGER :: ITEST -REAL, DIMENSION(SIZE(PTHM,1)) :: ZRC_UP, ZRI_UP, ZRV_UP,& +REAL, DIMENSION(D%NIJT) :: ZRC_UP, ZRI_UP, ZRV_UP,& ZRSATW, ZRSATI,& ZPART_DRY @@ -186,9 +190,49 @@ REAL :: ZDEPTH_MAX1, ZDEPTH_MAX2 ! control auto-extinction process REAL :: ZTMAX,ZRMAX ! control value -REAL, DIMENSION(SIZE(PTHM,1)) :: ZSURF -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZSHEAR,ZDUDZ,ZDVDZ ! vertical wind shear +REAL, DIMENSION(D%NIJT) :: ZSURF +REAL, DIMENSION(D%NIJT,D%NKT) :: ZSHEAR,ZDUDZ,ZDVDZ ! vertical wind shear +! +REAL, DIMENSION(D%NIJT,D%NKT) :: ZWK +REAL, DIMENSION(D%NIJT,16) :: ZBUF +! REAL(KIND=JPRB) :: ZHOOK_HANDLE +! +! 1.3 Declaration of additional local variables for compute_entr_detr +! +! Variables for cloudy part +REAL, DIMENSION(D%NIJT) :: ZKIC, ZKIC_F2 ! fraction of env. mass in the muxtures +REAL, DIMENSION(D%NIJT) :: ZEPSI,ZDELTA ! factor entrainment detrainment +REAL :: ZEPSI_CLOUD ! factor entrainment detrainment +REAL :: ZCOEFFMF_CLOUD ! factor for compputing entr. detr. +REAL, DIMENSION(D%NIJT) :: ZMIXTHL,ZMIXRT ! Thetal and rt in the mixtures +REAL, DIMENSION(D%NIJT) :: ZTHMIX ! Theta and Thetav of mixtures +REAL, DIMENSION(D%NIJT) :: ZRVMIX,ZRCMIX,ZRIMIX ! mixing ratios in mixtures +REAL, DIMENSION(D%NIJT) :: ZTHVMIX, ZTHVMIX_F2 ! Theta and Thetav of mixtures +REAL, DIMENSION(D%NIJT) :: ZTHV_UP_F2 ! thv_up at flux point kk+kkl +REAL, DIMENSION(D%NIJT) :: ZRSATW_ED, ZRSATI_ED ! working arrays (mixing ratio at saturation) +REAL, DIMENSION(D%NIJT) :: ZTHV ! theta V of environment at the bottom of cloudy part +REAL :: ZKIC_INIT !Initial value of ZKIC +REAL :: ZCOTHVU ! Variation of Thvup between bottom and top of cloudy part + +! Variables for dry part +REAL :: ZFOESW, ZFOESI ! saturating vapor pressure +REAL :: ZDRSATODP ! d.Rsat/dP +REAL :: ZT ! Temperature +REAL :: ZWK0D ! Work array + +! Variables for dry and cloudy parts +REAL, DIMENSION(D%NIJT) :: ZCOEFF_MINUS_HALF,& ! Variation of Thv between mass points kk-kkl and kk + ZCOEFF_PLUS_HALF ! Variation of Thv between mass points kk and kk+kkl +REAL, DIMENSION(D%NIJT) :: ZPRE ! pressure at the bottom of the cloudy part +REAL, DIMENSION(D%NIJT) :: ZG_O_THVREF_ED +REAL, DIMENSION(D%NIJT) :: ZFRAC_ICE ! fraction of ice +REAL, DIMENSION(D%NIJT) :: ZDZ_STOP,& ! Exact Height of the LCL above flux level KK + ZTHV_MINUS_HALF,& ! Thv at flux point(kk) + ZTHV_PLUS_HALF ! Thv at flux point(kk+kkl) +REAL :: ZDZ ! Delta Z used in computations +INTEGER :: JKLIM + ! IF (LHOOK) CALL DR_HOOK('COMPUTE_UPDRAFT',0,ZHOOK_HANDLE) @@ -201,21 +245,19 @@ ZRMAX=1.E-3 ! INITIALISATION ! Initialisation of the constants -ZRDORV = XRD / XRV !=0.622 -ZRVORD = (XRV / XRD) +ZRDORV = CST%XRD / CST%XRV !=0.622 +ZRVORD = (CST%XRV / CST%XRD) ZDEPTH_MAX1=3000. ! clouds with depth inferior to this value are keeped untouched ZDEPTH_MAX2=4000. ! clouds with depth superior to this value are suppressed ! Local variables, internal domain -!number of scalar variables -ISV=SIZE(PSVM,3) IF (OENTR_DETR) THEN ! Initialisation of intersesting Level :LCL,ETL,CTL - KKLCL(:)=KKE - KKETL(:)=KKE - KKCTL(:)=KKE + KKLCL(:)=D%NKE + KKETL(:)=D%NKE + KKCTL(:)=D%NKE ! ! Initialisation @@ -237,7 +279,9 @@ IF (OENTR_DETR) THEN PBUO_INTEG=0. PFRAC_ICE_UP(:,:)=0. - PRSAT_UP(:,:)=PRVM(:,:) ! should be initialised correctly but is (normaly) not used + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + PRSAT_UP(D%NIJB:D%NIJE,:)=PRVM(D%NIJB:D%NIJE,:) ! should be initialised correctly but is (normaly) not used + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) !cloud/dry air mixture cloud content ZRC_MIX = 0. @@ -247,107 +291,139 @@ END IF ! Initialisation of environment variables at t-dt ! variables at flux level -ZTHLM_F(:,:) = MZM_MF(PTHLM(:,:), KKA, KKU, KKL) -ZRTM_F (:,:) = MZM_MF(PRTM(:,:), KKA, KKU, KKL) -ZUM_F (:,:) = MZM_MF(PUM(:,:), KKA, KKU, KKL) -ZVM_F (:,:) = MZM_MF(PVM(:,:), KKA, KKU, KKL) -ZTKEM_F(:,:) = MZM_MF(PTKEM(:,:), KKA, KKU, KKL) +CALL MZM_MF(D, PTHLM(:,:), ZTHLM_F(:,:)) +CALL MZM_MF(D, PRTM(:,:), ZRTM_F (:,:)) +CALL MZM_MF(D, PUM(:,:), ZUM_F (:,:)) +CALL MZM_MF(D, PVM(:,:), ZVM_F (:,:)) +CALL MZM_MF(D, PTKEM(:,:), ZTKEM_F(:,:)) -DO JSV=1,ISV +DO JSV=1,KSV IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE - ZSVM_F(:,:,JSV) = MZM_MF(PSVM(:,:,JSV), KKA, KKU, KKL) + CALL MZM_MF(D, PSVM(:,:,JSV), ZSVM_F(:,:,JSV)) END DO ! ! Initialisation of updraft characteristics -PTHL_UP(:,:)=ZTHLM_F(:,:) -PRT_UP(:,:)=ZRTM_F(:,:) -PU_UP(:,:)=ZUM_F(:,:) -PV_UP(:,:)=ZVM_F(:,:) -PSV_UP(:,:,:)=ZSVM_F(:,:,:) - +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PTHL_UP(D%NIJB:D%NIJE,:)=ZTHLM_F(D%NIJB:D%NIJE,:) +PRT_UP(D%NIJB:D%NIJE,:)=ZRTM_F(D%NIJB:D%NIJE,:) +PU_UP(D%NIJB:D%NIJE,:)=ZUM_F(D%NIJB:D%NIJE,:) +PV_UP(D%NIJB:D%NIJE,:)=ZVM_F(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT,JSV=1:KSV) +PSV_UP(D%NIJB:D%NIJE,:,:)=ZSVM_F(D%NIJB:D%NIJE,:,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT,JSV=1:KSV) ! Computation or initialisation of updraft characteristics at the KKB level ! thetal_up,rt_up,thetaV_up, w2,Buoyancy term and mass flux (PEMF) - -PTHL_UP(:,KKB)= ZTHLM_F(:,KKB)+MAX(0.,MIN(ZTMAX,(PSFTH(:)/SQRT(ZTKEM_F(:,KKB)))*XALP_PERT)) -PRT_UP(:,KKB) = ZRTM_F(:,KKB)+MAX(0.,MIN(ZRMAX,(PSFRV(:)/SQRT(ZTKEM_F(:,KKB)))*XALP_PERT)) - +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PTHL_UP(D%NIJB:D%NIJE,D%NKB)= ZTHLM_F(D%NIJB:D%NIJE,D%NKB)+ & + & MAX(0.,MIN(ZTMAX,(PSFTH(D%NIJB:D%NIJE)/SQRT(ZTKEM_F(D%NIJB:D%NIJE,D%NKB)))* PARAMMF%XALP_PERT)) +PRT_UP(D%NIJB:D%NIJE,D%NKB) = ZRTM_F(D%NIJB:D%NIJE,D%NKB)+ & + & MAX(0.,MIN(ZRMAX,(PSFRV(D%NIJB:D%NIJE)/SQRT(ZTKEM_F(D%NIJB:D%NIJE,D%NKB)))* PARAMMF%XALP_PERT)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) IF (OENTR_DETR) THEN - ZTHM_F (:,:) = MZM_MF(PTHM (:,:), KKA, KKU, KKL) - ZPRES_F(:,:) = MZM_MF(PPABSM(:,:), KKA, KKU, KKL) - ZRHO_F (:,:) = MZM_MF(PRHODREF(:,:), KKA, KKU, KKL) - ZRVM_F (:,:) = MZM_MF(PRVM(:,:), KKA, KKU, KKL) + CALL MZM_MF(D, PTHM (:,:), ZTHM_F (:,:)) + CALL MZM_MF(D, PPABSM(:,:), ZPRES_F(:,:)) + CALL MZM_MF(D, PRHODREF(:,:), ZRHO_F (:,:)) + CALL MZM_MF(D, PRVM(:,:), ZRVM_F (:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! thetav at mass and flux levels - ZTHVM_F(:,:)=ZTHM_F(:,:)*((1.+ZRVORD*ZRVM_F(:,:))/(1.+ZRTM_F(:,:))) - ZTHVM(:,:)=PTHM(:,:)*((1.+ZRVORD*PRVM(:,:))/(1.+PRTM(:,:))) + ZTHVM_F(D%NIJB:D%NIJE,:)=ZTHM_F(D%NIJB:D%NIJE,:)* & + &((1.+ZRVORD*ZRVM_F(D%NIJB:D%NIJE,:))/(1.+ZRTM_F(D%NIJB:D%NIJE,:))) + ZTHVM(D%NIJB:D%NIJE,:)=PTHM(D%NIJB:D%NIJE,:)* & + &((1.+ZRVORD*PRVM(D%NIJB:D%NIJE,:))/(1.+PRTM(D%NIJB:D%NIJE,:))) - PTHV_UP(:,:)=ZTHVM_F(:,:) + PTHV_UP(D%NIJB:D%NIJE,:)=ZTHVM_F(D%NIJB:D%NIJE,:) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ZW_UP2(:,:)=0. - ZW_UP2(:,KKB) = MAX(0.0001,(2./3.)*ZTKEM_F(:,KKB)) - + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZW_UP2(D%NIJB:D%NIJE,D%NKB) = MAX(0.0001,(2./3.)*ZTKEM_F(D%NIJB:D%NIJE,D%NKB)) ! Computation of non conservative variable for the KKB level of the updraft ! (all or nothing ajustement) - PRC_UP(:,KKB)=0. - PRI_UP(:,KKB)=0. - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE_UP(:,KKB),ZPRES_F(:,KKB), & - PTHL_UP(:,KKB),PRT_UP(:,KKB),ZTH_UP(:,KKB), & - PRV_UP(:,KKB),PRC_UP(:,KKB),PRI_UP(:,KKB),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.) - + PRC_UP(:,D%NKB)=0. + PRI_UP(:,D%NKB)=0. + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + CALL TH_R_FROM_THL_RT(CST, NEB, D%NIJT, HFRAC_ICE,PFRAC_ICE_UP(:,D%NKB),ZPRES_F(:,D%NKB), & + PTHL_UP(:,D%NKB),PRT_UP(:,D%NKB),ZTH_UP(:,D%NKB), & + PRV_UP(:,D%NKB),PRC_UP(:,D%NKB),PRI_UP(:,D%NKB),ZRSATW(:),ZRSATI(:), OOCEAN=.FALSE., & + PBUF=ZBUF(:,:), KB=D%NIJB, KE=D%NIJE) + + !$mnh_expand_array(JI=D%NIJB:D%NIJE) ! compute updraft thevav and buoyancy term at KKB level - PTHV_UP(:,KKB) = ZTH_UP(:,KKB)*((1+ZRVORD*PRV_UP(:,KKB))/(1+PRT_UP(:,KKB))) + PTHV_UP(D%NIJB:D%NIJE,D%NKB) = ZTH_UP(D%NIJB:D%NIJE,D%NKB)*& + & ((1+ZRVORD*PRV_UP(D%NIJB:D%NIJE,D%NKB))/(1+PRT_UP(D%NIJB:D%NIJE,D%NKB))) ! compute mean rsat in updraft - PRSAT_UP(:,KKB) = ZRSATW(:)*(1-PFRAC_ICE_UP(:,KKB)) + ZRSATI(:)*PFRAC_ICE_UP(:,KKB) - + PRSAT_UP(D%NIJB:D%NIJE,D%NKB) = ZRSATW(D%NIJB:D%NIJE)*(1-PFRAC_ICE_UP(D%NIJB:D%NIJE,D%NKB)) + & + & ZRSATI(D%NIJB:D%NIJE)*PFRAC_ICE_UP(D%NIJB:D%NIJE,D%NKB) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! Closure assumption for mass flux at KKB level ! - ZG_O_THVREF(:,:)=XG/ZTHVM_F(:,:) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + ZG_O_THVREF(D%NIJB:D%NIJE,:)=CST%XG/ZTHVM_F(D%NIJB:D%NIJE,:) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! compute L_up GLMIX=.TRUE. - ZTKEM_F(:,KKB)=0. + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZTKEM_F(D%NIJB:D%NIJE,D%NKB)=0. + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! - IF(CTURBLEN=='RM17') THEN - ZDUDZ = MZF_MF(GZ_M_W_MF(PUM,PDZZ, KKA, KKU, KKL), KKA, KKU, KKL) - ZDVDZ = MZF_MF(GZ_M_W_MF(PVM,PDZZ, KKA, KKU, KKL), KKA, KKU, KKL) - ZSHEAR = SQRT(ZDUDZ*ZDUDZ + ZDVDZ*ZDVDZ) + IF(TURB%CTURBLEN=='RM17') THEN + CALL GZ_M_W_MF(D, PUM, PDZZ, ZWK) + CALL MZF_MF(D, ZWK, ZDUDZ) + CALL GZ_M_W_MF(D, PVM, PDZZ, ZWK) + CALL MZF_MF(D, ZWK, ZDVDZ) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + ZSHEAR(D%NIJB:D%NIJE,:) = SQRT(ZDUDZ(D%NIJB:D%NIJE,:)**2 + ZDVDZ(D%NIJB:D%NIJE,:)**2) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ELSE ZSHEAR = 0. !no shear in bl89 mixing length END IF ! #ifdef REPRO48 - CALL COMPUTE_BL89_ML(KKA,KKB,KKE,KKU,KKL,PDZZ,ZTKEM_F(:,KKB),ZG_O_THVREF(:,KKB),ZTHVM,KKB,GLMIX,.TRUE.,ZSHEAR,ZLUP) + CALL COMPUTE_BL89_ML(D, CST, CSTURB, PDZZ,ZTKEM_F(:,D%NKB),& + &ZG_O_THVREF(:,D%NKB),ZTHVM,D%NKB,GLMIX,.TRUE.,ZSHEAR,ZLUP) #else - CALL COMPUTE_BL89_ML(KKA,KKB,KKE,KKU,KKL,PDZZ,ZTKEM_F(:,KKB),ZG_O_THVREF(:,KKB),ZTHVM,KKB,GLMIX,.FALSE.,ZSHEAR,ZLUP) + CALL COMPUTE_BL89_ML(D, CST, CSTURB, PDZZ,ZTKEM_F(:,D%NKB),& + &ZG_O_THVREF(:,D%NKB),ZTHVM,D%NKB,GLMIX,.FALSE.,ZSHEAR,ZLUP) #endif - ZLUP(:)=MAX(ZLUP(:),1.E-10) + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + ZLUP(D%NIJB:D%NIJE)=MAX(ZLUP(D%NIJB:D%NIJE),1.E-10) ! Compute Buoyancy flux at the ground - ZWTHVSURF(:) = (ZTHVM_F(:,KKB)/ZTHM_F(:,KKB))*PSFTH(:)+ & - (0.61*ZTHM_F(:,KKB))*PSFRV(:) + ZWTHVSURF(D%NIJB:D%NIJE) = (ZTHVM_F(D%NIJB:D%NIJE,D%NKB)/ZTHM_F(D%NIJB:D%NIJE,D%NKB))*PSFTH(D%NIJB:D%NIJE)+ & + (0.61*ZTHM_F(D%NIJB:D%NIJE,D%NKB))*PSFRV(D%NIJB:D%NIJE) ! Mass flux at KKB level (updraft triggered if PSFTH>0.) - IF (LGZ) THEN - ZSURF(:)=TANH(XGZ*SQRT(PDX*PDY)/ZLUP) + IF (PARAMMF%LGZ) THEN + IF(PDX==0. .OR. PDY==0.) THEN + CALL PRINT_MSG(NVERB_FATAL, 'GEN', 'COMPUTE_UPDRAFT', 'PDX or PDY is NULL with option LGZ!') + ENDIF + ZSURF(D%NIJB:D%NIJE)=TANH(PARAMMF%XGZ*SQRT(PDX*PDY)/ZLUP(D%NIJB:D%NIJE)) ELSE - ZSURF(:)=1. + ZSURF(D%NIJB:D%NIJE)=1. END IF - WHERE (ZWTHVSURF(:)>0.) - PEMF(:,KKB) = XCMF * ZSURF(:) * ZRHO_F(:,KKB) * & - ((ZG_O_THVREF(:,KKB))*ZWTHVSURF*ZLUP)**(1./3.) - PFRAC_UP(:,KKB)=MIN(PEMF(:,KKB)/(SQRT(ZW_UP2(:,KKB))*ZRHO_F(:,KKB)),XFRAC_UP_MAX) - ZW_UP2(:,KKB)=(PEMF(:,KKB)/(PFRAC_UP(:,KKB)*ZRHO_F(:,KKB)))**2 - GTEST(:)=.TRUE. + WHERE (ZWTHVSURF(D%NIJB:D%NIJE)>0.) + PEMF(D%NIJB:D%NIJE,D%NKB) = PARAMMF%XCMF * ZSURF(D%NIJB:D%NIJE) * ZRHO_F(D%NIJB:D%NIJE,D%NKB) * & + ((ZG_O_THVREF(D%NIJB:D%NIJE,D%NKB))*ZWTHVSURF(D%NIJB:D%NIJE)*ZLUP(D%NIJB:D%NIJE))**(1./3.) + PFRAC_UP(D%NIJB:D%NIJE,D%NKB)=MIN(PEMF(D%NIJB:D%NIJE,D%NKB)/(SQRT(ZW_UP2(D%NIJB:D%NIJE,D%NKB))*ZRHO_F(D%NIJB:D%NIJE,D%NKB)), & + &PARAMMF%XFRAC_UP_MAX) + ZW_UP2(D%NIJB:D%NIJE,D%NKB)=(PEMF(D%NIJB:D%NIJE,D%NKB)/(PFRAC_UP(D%NIJB:D%NIJE,D%NKB)*ZRHO_F(D%NIJB:D%NIJE,D%NKB)))**2 + GTEST(D%NIJB:D%NIJE)=.TRUE. ELSEWHERE - PEMF(:,KKB) =0. - GTEST(:)=.FALSE. + PEMF(D%NIJB:D%NIJE,D%NKB) =0. + GTEST(D%NIJB:D%NIJE)=.FALSE. ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ELSE - GTEST(:)=PEMF(:,KKB+KKL)>0. + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + GTEST(D%NIJB:D%NIJE)=PEMF(D%NIJB:D%NIJE,D%NKB+D%NKL)>0. + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END IF !-------------------------------------------------------------------------- @@ -363,31 +439,34 @@ GTESTETL(:)=.FALSE. ! Loop on vertical level -DO JK=KKB,KKE-KKL,KKL +DO JK=D%NKB,D%NKE-D%NKL,D%NKL -! IF the updraft top is reached for all column, stop the loop on levels - ITEST=COUNT(GTEST) + ! IF the updraft top is reached for all column, stop the loop on levels + ITEST=COUNT(GTEST(D%NIJB:D%NIJE)) IF (ITEST==0) CYCLE -! Computation of entrainment and detrainment with KF90 -! parameterization in clouds and LR01 in subcloud layer - + ! Computation of entrainment and detrainment with KF90 + ! parameterization in clouds and LR01 in subcloud layer -! to find the LCL (check if JK is LCL or not) - WHERE ((PRC_UP(:,JK)+PRI_UP(:,JK)>0.).AND.(.NOT.(GTESTLCL))) - KKLCL(:) = JK - GTESTLCL(:)=.TRUE. + ! to find the LCL (check if JK is LCL or not) + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE ((PRC_UP(D%NIJB:D%NIJE,JK)+PRI_UP(D%NIJB:D%NIJE,JK)>0.).AND.(.NOT.(GTESTLCL(D%NIJB:D%NIJE)))) + KKLCL(D%NIJB:D%NIJE) = JK + GTESTLCL(D%NIJB:D%NIJE)=.TRUE. ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) -! COMPUTE PENTR and PDETR at mass level JK + ! COMPUTE PENTR and PDETR at mass level JK IF (OENTR_DETR) THEN - IF(JK/=KKB) THEN - ZRC_MIX(:,JK) = ZRC_MIX(:,JK-KKL) ! guess of Rc of mixture - ZRI_MIX(:,JK) = ZRI_MIX(:,JK-KKL) ! guess of Ri of mixture + IF(JK/=D%NKB) THEN + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZRC_MIX(D%NIJB:D%NIJE,JK) = ZRC_MIX(D%NIJB:D%NIJE,JK-D%NKL) ! guess of Rc of mixture + ZRI_MIX(D%NIJB:D%NIJE,JK) = ZRI_MIX(D%NIJB:D%NIJE,JK-D%NKL) ! guess of Ri of mixture + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ENDIF - CALL COMPUTE_ENTR_DETR(JK,KKB,KKE,KKL,GTEST,GTESTLCL,HFRAC_ICE,PFRAC_ICE_UP(:,JK),& - PRHODREF(:,JK),ZPRES_F(:,JK),ZPRES_F(:,JK+KKL),& + CALL COMPUTE_ENTR_DETR(D, CST, NEB, PARAMMF, JK,D%NKB,D%NKE,D%NKL,GTEST,GTESTLCL,HFRAC_ICE,PFRAC_ICE_UP(:,JK),& + PRHODREF(:,JK),ZPRES_F(:,JK),ZPRES_F(:,JK+D%NKL),& PZZ(:,:),PDZZ(:,:),ZTHVM(:,:), & PTHLM(:,:),PRTM(:,:),ZW_UP2(:,:),ZTH_UP(:,JK), & PTHL_UP(:,JK),PRT_UP(:,JK),ZLUP(:), & @@ -396,188 +475,643 @@ DO JK=KKB,KKE-KKL,KKL PENTR(:,JK),PDETR(:,JK),ZENTR_CLD(:,JK),ZDETR_CLD(:,JK),& ZBUO_INTEG_DRY(:,JK), ZBUO_INTEG_CLD(:,JK), & ZPART_DRY(:) ) - PBUO_INTEG(:,JK)=ZBUO_INTEG_DRY(:,JK)+ZBUO_INTEG_CLD(:,JK) + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + PBUO_INTEG(D%NIJB:D%NIJE,JK)=ZBUO_INTEG_DRY(D%NIJB:D%NIJE,JK)+ZBUO_INTEG_CLD(D%NIJB:D%NIJE,JK) - IF (JK==KKB) THEN - PDETR(:,JK)=0. - ZDETR_CLD(:,JK)=0. + IF (JK==D%NKB) THEN + PDETR(D%NIJB:D%NIJE,JK)=0. + ZDETR_CLD(D%NIJB:D%NIJE,JK)=0. ENDIF -! Computation of updraft characteristics at level JK+KKL - WHERE(GTEST) - ZMIX1(:)=0.5*(PZZ(:,JK+KKL)-PZZ(:,JK))*(PENTR(:,JK)-PDETR(:,JK)) - PEMF(:,JK+KKL)=PEMF(:,JK)*EXP(2*ZMIX1(:)) + ! Computation of updraft characteristics at level JK+KKL + WHERE(GTEST(D%NIJB:D%NIJE)) + ZMIX1(D%NIJB:D%NIJE)=0.5*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + &(PENTR(D%NIJB:D%NIJE,JK)-PDETR(D%NIJB:D%NIJE,JK)) + PEMF(D%NIJB:D%NIJE,JK+D%NKL)=PEMF(D%NIJB:D%NIJE,JK)*EXP(2*ZMIX1(D%NIJB:D%NIJE)) ENDWHERE - ELSE - GTEST(:) = (PEMF(:,JK+KKL)>0.) - END IF + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) + ELSE !OENTR_DETR + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + GTEST(D%NIJB:D%NIJE) = (PEMF(D%NIJB:D%NIJE,JK+D%NKL)>0.) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + END IF !OENTR_DETR - -! stop the updraft if MF becomes negative - WHERE (GTEST.AND.(PEMF(:,JK+KKL)<=0.)) - PEMF(:,JK+KKL)=0. - KKCTL(:) = JK+KKL - GTEST(:)=.FALSE. - PFRAC_ICE_UP(:,JK+KKL)=PFRAC_ICE_UP(:,JK) - PRSAT_UP(:,JK+KKL)=PRSAT_UP(:,JK) + ! stop the updraft if MF becomes negative + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE (GTEST(D%NIJB:D%NIJE).AND.(PEMF(D%NIJB:D%NIJE,JK+D%NKL)<=0.)) + PEMF(D%NIJB:D%NIJE,JK+D%NKL)=0. + KKCTL(D%NIJB:D%NIJE) = JK+D%NKL + GTEST(D%NIJB:D%NIJE)=.FALSE. + PFRAC_ICE_UP(D%NIJB:D%NIJE,JK+D%NKL)=PFRAC_ICE_UP(D%NIJB:D%NIJE,JK) + PRSAT_UP(D%NIJB:D%NIJE,JK+D%NKL)=PRSAT_UP(D%NIJB:D%NIJE,JK) ENDWHERE - - -! If the updraft did not stop, compute cons updraft characteritics at jk+KKL - DO JLOOP=1,SIZE(GTEST) - IF(GTEST(JLOOP)) THEN - ZMIX2(JLOOP) = (PZZ(JLOOP,JK+KKL)-PZZ(JLOOP,JK))*PENTR(JLOOP,JK) !& - ZMIX3_CLD(JLOOP) = (PZZ(JLOOP,JK+KKL)-PZZ(JLOOP,JK))*(1.-ZPART_DRY(JLOOP))*ZDETR_CLD(JLOOP,JK) !& - ZMIX2_CLD(JLOOP) = (PZZ(JLOOP,JK+KKL)-PZZ(JLOOP,JK))*(1.-ZPART_DRY(JLOOP))*ZENTR_CLD(JLOOP,JK) + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) + + ! If the updraft did not stop, compute cons updraft characteritics at jk+KKL + DO JI=D%NIJB,D%NIJE + IF(GTEST(JI)) THEN + ZMIX2(JI) = (PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*PENTR(JI,JK) !& + ZMIX3_CLD(JI) = (PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*(1.-ZPART_DRY(JI))*ZDETR_CLD(JI,JK) !& + ZMIX2_CLD(JI) = (PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*(1.-ZPART_DRY(JI))*ZENTR_CLD(JI,JK) #ifdef REPRO48 - PTHL_UP(JLOOP,JK+KKL)=(PTHL_UP(JLOOP,JK)*(1.-0.5*ZMIX2(JLOOP)) + PTHLM(JLOOP,JK)*ZMIX2(JLOOP)) & - /(1.+0.5*ZMIX2(JLOOP)) - PRT_UP(JLOOP,JK+KKL) =(PRT_UP (JLOOP,JK)*(1.-0.5*ZMIX2(JLOOP)) + PRTM(JLOOP,JK)*ZMIX2(JLOOP)) & - /(1.+0.5*ZMIX2(JLOOP)) + PTHL_UP(JI,JK+D%NKL)=(PTHL_UP(JI,JK)*(1.-0.5*ZMIX2(JI)) + PTHLM(JI,JK)*ZMIX2(JI)) & + /(1.+0.5*ZMIX2(JI)) + PRT_UP(JI,JK+D%NKL) =(PRT_UP (JI,JK)*(1.-0.5*ZMIX2(JI)) + PRTM(JI,JK)*ZMIX2(JI)) & + /(1.+0.5*ZMIX2(JI)) #else - PTHL_UP(JLOOP,JK+KKL)=PTHL_UP(JLOOP,JK)*EXP(-ZMIX2(JLOOP)) + PTHLM(JLOOP,JK)*(1-EXP(-ZMIX2(JLOOP))) - PRT_UP(JLOOP,JK+KKL) =PRT_UP (JLOOP,JK)*EXP(-ZMIX2(JLOOP)) + PRTM(JLOOP,JK)*(1-EXP(-ZMIX2(JLOOP))) + PTHL_UP(JI,JK+D%NKL)=PTHL_UP(JI,JK)*EXP(-ZMIX2(JI)) + PTHLM(JI,JK)*(1-EXP(-ZMIX2(JI))) + PRT_UP(JI,JK+D%NKL) =PRT_UP (JI,JK)*EXP(-ZMIX2(JI)) + PRTM(JI,JK)*(1-EXP(-ZMIX2(JI))) #endif ENDIF ENDDO - IF(OMIXUV) THEN - IF(JK/=KKB) THEN - WHERE(GTEST) - PU_UP(:,JK+KKL) = (PU_UP (:,JK)*(1-0.5*ZMIX2(:)) + PUM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PUM(:,JK+KKL)-PUM(:,JK))/PDZZ(:,JK+KKL)+& - (PUM(:,JK)-PUM(:,JK-KKL))/PDZZ(:,JK)) ) & - /(1+0.5*ZMIX2(:)) - PV_UP(:,JK+KKL) = (PV_UP (:,JK)*(1-0.5*ZMIX2(:)) + PVM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PVM(:,JK+KKL)-PVM(:,JK))/PDZZ(:,JK+KKL)+& - (PVM(:,JK)-PVM(:,JK-KKL))/PDZZ(:,JK)) ) & - /(1+0.5*ZMIX2(:)) + IF(JK/=D%NKB) THEN + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE(GTEST(D%NIJB:D%NIJE)) + PU_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PU_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PUM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PUM(D%NIJB:D%NIJE,JK+D%NKL)-PUM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)+& + (PUM(D%NIJB:D%NIJE,JK)-PUM(D%NIJB:D%NIJE,JK-D%NKL))/PDZZ(D%NIJB:D%NIJE,JK)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) + PV_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PV_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PVM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PVM(D%NIJB:D%NIJE,JK+D%NKL)-PVM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)+& + (PVM(D%NIJB:D%NIJE,JK)-PVM(D%NIJB:D%NIJE,JK-D%NKL))/PDZZ(D%NIJB:D%NIJE,JK)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ELSE - WHERE(GTEST) - PU_UP(:,JK+KKL) = (PU_UP (:,JK)*(1-0.5*ZMIX2(:)) + PUM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PUM(:,JK+KKL)-PUM(:,JK))/PDZZ(:,JK+KKL)) ) & - /(1+0.5*ZMIX2(:)) - PV_UP(:,JK+KKL) = (PV_UP (:,JK)*(1-0.5*ZMIX2(:)) + PVM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PVM(:,JK+KKL)-PVM(:,JK))/PDZZ(:,JK+KKL)) ) & - /(1+0.5*ZMIX2(:)) + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE(GTEST(D%NIJB:D%NIJE)) + PU_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PU_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PUM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PUM(D%NIJB:D%NIJE,JK+D%NKL)-PUM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) + PV_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PV_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PVM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PVM(D%NIJB:D%NIJE,JK+D%NKL)-PVM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) ENDWHERE - + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ENDIF - ENDIF - DO JSV=1,ISV - IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE - WHERE(GTEST) - PSV_UP(:,JK+KKL,JSV) = (PSV_UP (:,JK,JSV)*(1-0.5*ZMIX2(:)) + & - PSVM(:,JK,JSV)*ZMIX2(:)) /(1+0.5*ZMIX2(:)) - ENDWHERE + ENDIF !OMIXUV + DO JSV=1,KSV + IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE(GTEST(D%NIJB:D%NIJE)) + PSV_UP(D%NIJB:D%NIJE,JK+D%NKL,JSV) = (PSV_UP(D%NIJB:D%NIJE,JK,JSV)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + PSVM(D%NIJB:D%NIJE,JK,JSV)*ZMIX2(D%NIJB:D%NIJE)) /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) + ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) END DO - IF (OENTR_DETR) THEN - -! Compute non cons. var. at level JK+KKL - ZRC_UP(:)=PRC_UP(:,JK) ! guess = level just below - ZRI_UP(:)=PRI_UP(:,JK) ! guess = level just below - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE_UP(:,JK+KKL),ZPRES_F(:,JK+KKL), & - PTHL_UP(:,JK+KKL),PRT_UP(:,JK+KKL),ZTH_UP(:,JK+KKL), & - ZRV_UP(:),ZRC_UP(:),ZRI_UP(:),ZRSATW(:),ZRSATI(:), OOCEAN=.FALSE.) - WHERE(GTEST) - PRC_UP(:,JK+KKL)=ZRC_UP(:) - PRV_UP(:,JK+KKL)=ZRV_UP(:) - PRI_UP(:,JK+KKL)=ZRI_UP(:) - PRSAT_UP(:,JK+KKL) = ZRSATW(:)*(1-PFRAC_ICE_UP(:,JK+KKL)) + ZRSATI(:)*PFRAC_ICE_UP(:,JK+KKL) - ENDWHERE - + IF (OENTR_DETR) THEN -! Compute the updraft theta_v, buoyancy and w**2 for level JK+KKL - WHERE(GTEST) - PTHV_UP(:,JK+KKL) = ZTH_UP(:,JK+KKL)*((1+ZRVORD*PRV_UP(:,JK+KKL))/(1+PRT_UP(:,JK+KKL))) - WHERE (ZBUO_INTEG_DRY(:,JK)>0.) - ZW_UP2(:,JK+KKL) = ZW_UP2(:,JK) + 2.*(XABUO-XBENTR*XENTR_DRY)* ZBUO_INTEG_DRY(:,JK) - ELSEWHERE - ZW_UP2(:,JK+KKL) = ZW_UP2(:,JK) + 2.*XABUO* ZBUO_INTEG_DRY(:,JK) + ! Compute non cons. var. at level JK+KKL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZRC_UP(D%NIJB:D%NIJE)=PRC_UP(D%NIJB:D%NIJE,JK) ! guess = level just below + ZRI_UP(D%NIJB:D%NIJE)=PRI_UP(D%NIJB:D%NIJE,JK) ! guess = level just below + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + CALL TH_R_FROM_THL_RT(CST, NEB, D%NIJT, HFRAC_ICE,PFRAC_ICE_UP(:,JK+D%NKL),ZPRES_F(:,JK+D%NKL), & + PTHL_UP(:,JK+D%NKL),PRT_UP(:,JK+D%NKL),ZTH_UP(:,JK+D%NKL), & + ZRV_UP(:),ZRC_UP(:),ZRI_UP(:),ZRSATW(:),ZRSATI(:), OOCEAN=.FALSE., & + PBUF=ZBUF(:,:), KB=D%NIJB, KE=D%NIJE) + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE(GTEST(D%NIJB:D%NIJE)) + PRC_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZRC_UP(D%NIJB:D%NIJE) + PRV_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZRV_UP(D%NIJB:D%NIJE) + PRI_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZRI_UP(D%NIJB:D%NIJE) + PRSAT_UP(D%NIJB:D%NIJE,JK+D%NKL) = ZRSATW(D%NIJB:D%NIJE)*(1-PFRAC_ICE_UP(D%NIJB:D%NIJE,JK+D%NKL)) + & + & ZRSATI(D%NIJB:D%NIJE)*PFRAC_ICE_UP(D%NIJB:D%NIJE,JK+D%NKL) ENDWHERE - ZW_UP2(:,JK+KKL) = ZW_UP2(:,JK+KKL)*(1.-(XBDETR*ZMIX3_CLD(:)+XBENTR*ZMIX2_CLD(:)))& - /(1.+(XBDETR*ZMIX3_CLD(:)+XBENTR*ZMIX2_CLD(:))) & - +2.*(XABUO)*ZBUO_INTEG_CLD(:,JK)/(1.+(XBDETR*ZMIX3_CLD(:)+XBENTR*ZMIX2_CLD(:))) - ENDWHERE + ! Compute the updraft theta_v, buoyancy and w**2 for level JK+KKL + WHERE(GTEST(D%NIJB:D%NIJE)) + PTHV_UP(D%NIJB:D%NIJE,JK+D%NKL) = ZTH_UP(D%NIJB:D%NIJE,JK+D%NKL)* & + & ((1+ZRVORD*PRV_UP(D%NIJB:D%NIJE,JK+D%NKL))/(1+PRT_UP(D%NIJB:D%NIJE,JK+D%NKL))) + WHERE (ZBUO_INTEG_DRY(D%NIJB:D%NIJE,JK)>0.) + ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL) = ZW_UP2(D%NIJB:D%NIJE,JK) + 2.*(PARAMMF%XABUO-PARAMMF%XBENTR*PARAMMF%XENTR_DRY)* & + &ZBUO_INTEG_DRY(D%NIJB:D%NIJE,JK) + ELSEWHERE + ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL) = ZW_UP2(D%NIJB:D%NIJE,JK) + 2.*PARAMMF%XABUO* ZBUO_INTEG_DRY(D%NIJB:D%NIJE,JK) + ENDWHERE + ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL) = ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL)*(1.-(PARAMMF%XBDETR*ZMIX3_CLD(D%NIJB:D%NIJE)+ & + &PARAMMF%XBENTR*ZMIX2_CLD(D%NIJB:D%NIJE)))& + /(1.+(PARAMMF%XBDETR*ZMIX3_CLD(D%NIJB:D%NIJE)+PARAMMF%XBENTR*ZMIX2_CLD(D%NIJB:D%NIJE))) & + +2.*(PARAMMF%XABUO)*ZBUO_INTEG_CLD(D%NIJB:D%NIJE,JK)/ & + &(1.+(PARAMMF%XBDETR*ZMIX3_CLD(D%NIJB:D%NIJE)+PARAMMF%XBENTR*ZMIX2_CLD(D%NIJB:D%NIJE))) + ENDWHERE - ! Test if the updraft has reach the ETL - GTESTETL(:)=.FALSE. - WHERE (GTEST.AND.(PBUO_INTEG(:,JK)<=0.)) - KKETL(:) = JK+KKL - GTESTETL(:)=.TRUE. - ENDWHERE + ! Test if the updraft has reach the ETL + WHERE (GTEST(D%NIJB:D%NIJE).AND.(PBUO_INTEG(D%NIJB:D%NIJE,JK)<=0.)) + KKETL(D%NIJB:D%NIJE) = JK+D%NKL + GTESTETL(D%NIJB:D%NIJE)=.TRUE. + ELSEWHERE + GTESTETL(D%NIJB:D%NIJE)=.FALSE. + ENDWHERE - ! Test is we have reached the top of the updraft - WHERE (GTEST.AND.((ZW_UP2(:,JK+KKL)<=0.).OR.(PEMF(:,JK+KKL)<=0.))) - ZW_UP2(:,JK+KKL)=0. - PEMF(:,JK+KKL)=0. - GTEST(:)=.FALSE. - PTHL_UP(:,JK+KKL)=ZTHLM_F(:,JK+KKL) - PRT_UP(:,JK+KKL)=ZRTM_F(:,JK+KKL) - PRC_UP(:,JK+KKL)=0. - PRI_UP(:,JK+KKL)=0. - PRV_UP(:,JK+KKL)=0. - PTHV_UP(:,JK+KKL)=ZTHVM_F(:,JK+KKL) - PFRAC_UP(:,JK+KKL)=0. - KKCTL(:)=JK+KKL - ENDWHERE + ! Test is we have reached the top of the updraft + WHERE (GTEST(D%NIJB:D%NIJE).AND.((ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL)<=0.).OR.(PEMF(D%NIJB:D%NIJE,JK+D%NKL)<=0.))) + ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL)=0. + PEMF(D%NIJB:D%NIJE,JK+D%NKL)=0. + GTEST(D%NIJB:D%NIJE)=.FALSE. + PTHL_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZTHLM_F(D%NIJB:D%NIJE,JK+D%NKL) + PRT_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZRTM_F(D%NIJB:D%NIJE,JK+D%NKL) + PRC_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + PRI_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + PRV_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + PTHV_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZTHVM_F(D%NIJB:D%NIJE,JK+D%NKL) + PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + KKCTL(D%NIJB:D%NIJE)=JK+D%NKL + ENDWHERE - ! compute frac_up at JK+KKL - WHERE (GTEST) - PFRAC_UP(:,JK+KKL)=PEMF(:,JK+KKL)/(SQRT(ZW_UP2(:,JK+KKL))*ZRHO_F(:,JK+KKL)) - ENDWHERE - - ! Updraft fraction must be smaller than XFRAC_UP_MAX - WHERE (GTEST) - PFRAC_UP(:,JK+KKL)=MIN(XFRAC_UP_MAX,PFRAC_UP(:,JK+KKL)) - ENDWHERE + ! compute frac_up at JK+KKL + WHERE (GTEST(D%NIJB:D%NIJE)) + PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)=PEMF(D%NIJB:D%NIJE,JK+D%NKL)/& + &(SQRT(ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL))*ZRHO_F(D%NIJB:D%NIJE,JK+D%NKL)) + ENDWHERE - ! When cloudy and non-buoyant, updraft fraction must decrease - WHERE ((GTEST.AND.GTESTETL).AND.GTESTLCL) - PFRAC_UP(:,JK+KKL)=MIN(PFRAC_UP(:,JK+KKL),PFRAC_UP(:,JK)) - ENDWHERE + ! Updraft fraction must be smaller than XFRAC_UP_MAX + WHERE (GTEST(D%NIJB:D%NIJE)) + PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)=MIN(PARAMMF%XFRAC_UP_MAX,PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)) + ENDWHERE - ! Mass flux is updated with the new updraft fraction - IF (OENTR_DETR) PEMF(:,JK+KKL)=PFRAC_UP(:,JK+KKL)*SQRT(ZW_UP2(:,JK+KKL))*ZRHO_F(:,JK+KKL) + ! When cloudy and non-buoyant, updraft fraction must decrease + WHERE ((GTEST(D%NIJB:D%NIJE).AND.GTESTETL(D%NIJB:D%NIJE)).AND.GTESTLCL(D%NIJB:D%NIJE)) + PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)=MIN(PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL),PFRAC_UP(D%NIJB:D%NIJE,JK)) + ENDWHERE - END IF + ! Mass flux is updated with the new updraft fraction + IF (OENTR_DETR) PEMF(D%NIJB:D%NIJE,JK+D%NKL)=PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)*SQRT(ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL))* & + &ZRHO_F(D%NIJB:D%NIJE,JK+D%NKL) + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) + END IF !OENTR_DETR ENDDO IF(OENTR_DETR) THEN - PW_UP(:,:)=SQRT(ZW_UP2(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + PW_UP(D%NIJB:D%NIJE,:)=SQRT(ZW_UP2(D%NIJB:D%NIJE,:)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) - PEMF(:,KKB) =0. + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PEMF(D%NIJB:D%NIJE,D%NKB) =0. + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) -! Limits the shallow convection scheme when cloud heigth is higher than 3000m. -! To do this, mass flux is multiplied by a coefficient decreasing linearly -! from 1 (for clouds of ZDEPTH_MAX1 m of depth) to 0 (for clouds of ZDEPTH_MAX2 m of depth). -! This way, all MF fluxes are diminished by this amount. -! Diagnosed cloud fraction is also multiplied by the same coefficient. -! - DO JI=1,SIZE(PTHM,1) + ! Limits the shallow convection scheme when cloud heigth is higher than 3000m. + ! To do this, mass flux is multiplied by a coefficient decreasing linearly + ! from 1 (for clouds of ZDEPTH_MAX1 m of depth) to 0 (for clouds of ZDEPTH_MAX2 m of depth). + ! This way, all MF fluxes are diminished by this amount. + ! Diagnosed cloud fraction is also multiplied by the same coefficient. + ! + DO JI=D%NIJB,D%NIJE PDEPTH(JI) = MAX(0., PZZ(JI,KKCTL(JI)) - PZZ(JI,KKLCL(JI)) ) END DO - GWORK1(:)= (GTESTLCL(:) .AND. (PDEPTH(:) > ZDEPTH_MAX1) ) - GWORK2(:,:) = SPREAD( GWORK1(:), DIM=2, NCOPIES=MAX(KKU,KKA) ) - ZCOEF(:,:) = SPREAD( (1.-(PDEPTH(:)-ZDEPTH_MAX1)/(ZDEPTH_MAX2-ZDEPTH_MAX1)), DIM=2, NCOPIES=SIZE(ZCOEF,2)) - ZCOEF=MIN(MAX(ZCOEF,0.),1.) - WHERE (GWORK2) - PEMF(:,:) = PEMF(:,:) * ZCOEF(:,:) - PFRAC_UP(:,:) = PFRAC_UP(:,:) * ZCOEF(:,:) + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + GWORK1(D%NIJB:D%NIJE)= (GTESTLCL(D%NIJB:D%NIJE) .AND. (PDEPTH(D%NIJB:D%NIJE) > ZDEPTH_MAX1) ) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + DO JK=1, D%NKT + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + GWORK2(D%NIJB:D%NIJE,JK) = GWORK1(D%NIJB:D%NIJE) + ZCOEF(D%NIJB:D%NIJE,JK) = (1.-(PDEPTH(D%NIJB:D%NIJE)-ZDEPTH_MAX1)/(ZDEPTH_MAX2-ZDEPTH_MAX1)) + ZCOEF(D%NIJB:D%NIJE,JK)=MIN(MAX(ZCOEF(D%NIJB:D%NIJE,JK),0.),1.) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + ENDDO + !$mnh_expand_where(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + WHERE (GWORK2(D%NIJB:D%NIJE,:)) + PEMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:) * ZCOEF(D%NIJB:D%NIJE,:) + PFRAC_UP(D%NIJB:D%NIJE,:) = PFRAC_UP(D%NIJB:D%NIJE,:) * ZCOEF(D%NIJB:D%NIJE,:) ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ENDIF IF (LHOOK) CALL DR_HOOK('COMPUTE_UPDRAFT',1,ZHOOK_HANDLE) +CONTAINS +INCLUDE "th_r_from_thl_rt.func.h" +INCLUDE "compute_frac_ice.func.h" + SUBROUTINE COMPUTE_ENTR_DETR(D, CST, NEB, PARAMMF,& + KK,KKB,KKE,KKL,OTEST,OTESTLCL,& + HFRAC_ICE,PFRAC_ICE,PRHODREF,& + PPRE_MINUS_HALF,& + PPRE_PLUS_HALF,PZZ,PDZZ,& + PTHVM,PTHLM,PRTM,PW_UP2,PTH_UP,& + PTHL_UP,PRT_UP,PLUP,& + PRC_UP,PRI_UP,PTHV_UP,& + PRSAT_UP,PRC_MIX,PRI_MIX, & + PENTR,PDETR,PENTR_CLD,PDETR_CLD,& + PBUO_INTEG_DRY,PBUO_INTEG_CLD,& + PPART_DRY) +! ############################################################# + +!! +!!***COMPUTE_ENTR_DETR* - calculates caracteristics of the updraft or downdraft +!! using model of the EDMF scheme +!! +!! PURPOSE +!! ------- +!!**** The purpose of this routine is to compute entrainement and +!! detrainement at one level of the updraft +! +!!** METHOD +!! ------ +!! +!! EXTERNAL +!! -------- +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! +!! REFERENCE +!! --------- +!! Book 1 of Meso-NH documentation (chapter Convection) +!! +!! +!! AUTHOR +!! ------ +!! J.Pergaud : 2009 +!! +!! MODIFICATIONS +!! ------------- +!! Y.Seity (06/2010) Bug correction +!! V.Masson (09/2010) Optimization +!! S. Riette april 2011 : ice added, protection against zero divide by Yves Bouteloup +!! protection against too big ZPART_DRY, interface modified +!! S. Riette Jan 2012: support for both order of vertical levels +!! S. Riette & J. Escobar (11/2013) : remove div by 0 on real*4 case +!! P.Marguinaud Jun 2012: fix uninitialized variable +!! P.Marguinaud Nov 2012: fix gfortran bug +!! S. Riette Apr 2013: bugs correction, rewriting (for optimisation) and +!! improvement of continuity at the condensation level +!! S. Riette Nov 2013: protection against zero divide for min value of dry PDETR +!! R.Honnert Oct 2016 : Update with AROME +! P. Wautelet 08/02/2019: bugfix: compute ZEPSI_CLOUD only once and only when it is needed +!! R. El Khatib 29-Apr-2019 portability fix : compiler may get confused by embricked WHERE statements +!! eventually breaking tests with NaN initializations at compile time. +!! Replace by IF conditions and traditional DO loops can only improve the performance. +! P. Wautelet 10/02/2021: bugfix: initialized PPART_DRY everywhere +!! -------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_NEB, ONLY: NEB_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +! +IMPLICIT NONE +! +! +!* 1.1 Declaration of Arguments +! +! +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(NEB_t), INTENT(IN) :: NEB +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +! +INTEGER, INTENT(IN) :: KK +INTEGER, INTENT(IN) :: KKB ! near ground physical index +INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index +INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +LOGICAL,DIMENSION(D%NIJT), INTENT(IN) :: OTEST ! test to see if updraft is running +LOGICAL,DIMENSION(D%NIJT), INTENT(IN) :: OTESTLCL !test of condensation +CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE ! frac_ice can be compute using + ! Temperature (T) or prescribed + ! (Y) +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PFRAC_ICE ! fraction of ice +! +! prognostic variables at t- deltat +! +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PRHODREF !rhodref +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PPRE_MINUS_HALF ! Pressure at flux level KK +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PPRE_PLUS_HALF ! Pressure at flux level KK+KKL +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PZZ ! Height at the flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! metrics coefficient +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHVM ! ThetaV environment + +! +! thermodynamical variables which are transformed in conservative var. +! +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM ! Thetal +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRTM ! total mixing ratio +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PW_UP2 ! Vertical velocity^2 +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PTH_UP,PTHL_UP,PRT_UP ! updraft properties +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PLUP ! LUP compute from the ground +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PRC_UP,PRI_UP ! Updraft cloud content +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PTHV_UP ! Thetav of updraft +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PRSAT_UP ! Mixing ratio at saturation in updraft +REAL, DIMENSION(D%NIJT), INTENT(INOUT) :: PRC_MIX, PRI_MIX ! Mixture cloud content +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PENTR ! Mass flux entrainment of the updraft +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PDETR ! Mass flux detrainment of the updraft +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PENTR_CLD ! Mass flux entrainment of the updraft in cloudy part +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PDETR_CLD ! Mass flux detrainment of the updraft in cloudy part +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PBUO_INTEG_DRY, PBUO_INTEG_CLD! Integral Buoyancy +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PPART_DRY ! ratio of dry part at the transition level +! +! +! 1.2 Declaration of local variables +! +! Local array declaration must be put in the compute_updraft subroutine +! For simplicity all local variables (including scalars) are moved in the compute_updraft subroutine +! + +!---------------------------------------------------------------------------------- + +! 1.3 Initialisation +! ------------------ + +ZCOEFFMF_CLOUD=PARAMMF%XENTR_MF * CST%XG / PARAMMF%XCRAD_MF +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZG_O_THVREF_ED(D%NIJB:D%NIJE)=CST%XG/PTHVM(D%NIJB:D%NIJE,KK) + +ZFRAC_ICE(D%NIJB:D%NIJE)=PFRAC_ICE(D%NIJB:D%NIJE) ! to not modify fraction of ice + +ZPRE(D%NIJB:D%NIJE)=PPRE_MINUS_HALF(D%NIJB:D%NIJE) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + +! 1.4 Estimation of PPART_DRY +DO JI=D%NIJB,D%NIJE + IF(OTEST(JI) .AND. OTESTLCL(JI)) THEN + !No dry part when condensation level is reached + PPART_DRY(JI)=0. + ZDZ_STOP(JI)=0. + ZPRE(JI)=PPRE_MINUS_HALF(JI) + ELSE IF (OTEST(JI) .AND. .NOT. OTESTLCL(JI)) THEN + !Temperature at flux level KK + ZT=PTH_UP(JI)*(PPRE_MINUS_HALF(JI)/CST%XP00) ** (CST%XRD/CST%XCPD) + !Saturating vapor pressure at flux level KK + ZFOESW = MIN(EXP( CST%XALPW - CST%XBETAW/ZT - CST%XGAMW*LOG(ZT) ), 0.99*PPRE_MINUS_HALF(JI)) + ZFOESI = MIN(EXP( CST%XALPI - CST%XBETAI/ZT - CST%XGAMI*LOG(ZT) ), 0.99*PPRE_MINUS_HALF(JI)) + !Computation of d.Rsat / dP (partial derivations with respect to P and T + !and use of T=Theta*(P/P0)**(R/Cp) to transform dT into dP with theta_up + !constant at the vertical) + ZDRSATODP=(CST%XBETAW/ZT-CST%XGAMW)*(1-ZFRAC_ICE(JI))+(CST%XBETAI/ZT-CST%XGAMI)*ZFRAC_ICE(JI) + ZDRSATODP=((CST%XRD/CST%XCPD)*ZDRSATODP-1.)*PRSAT_UP(JI)/ & + &(PPRE_MINUS_HALF(JI)-(ZFOESW*(1-ZFRAC_ICE(JI)) + ZFOESI*ZFRAC_ICE(JI))) + !Use of d.Rsat / dP and pressure at flux level KK to find pressure (ZPRE) + !where Rsat is equal to PRT_UP + ZPRE(JI)=PPRE_MINUS_HALF(JI)+(PRT_UP(JI)-PRSAT_UP(JI))/ZDRSATODP + !Fraction of dry part (computed with pressure and used with heights, no + !impact found when using log function here and for pressure on flux levels + !computation) + PPART_DRY(JI)=MAX(0., MIN(1., (PPRE_MINUS_HALF(JI)-ZPRE(JI))/(PPRE_MINUS_HALF(JI)-PPRE_PLUS_HALF(JI)))) + !Height above flux level KK of the cloudy part + ZDZ_STOP(JI) = (PZZ(JI,KK+KKL)-PZZ(JI,KK))*PPART_DRY(JI) + ELSE + PPART_DRY(JI)=0. ! value does not matter, here + END IF +END DO + +! 1.5 Gradient and flux values of thetav +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +IF(KK/=KKB)THEN + ZCOEFF_MINUS_HALF(D%NIJB:D%NIJE)=((PTHVM(D%NIJB:D%NIJE,KK)-PTHVM(D%NIJB:D%NIJE,KK-KKL))/PDZZ(D%NIJB:D%NIJE,KK)) + ZTHV_MINUS_HALF(D%NIJB:D%NIJE) = PTHVM(D%NIJB:D%NIJE,KK) - & + & ZCOEFF_MINUS_HALF(D%NIJB:D%NIJE)*0.5*(PZZ(D%NIJB:D%NIJE,KK+KKL)-PZZ(D%NIJB:D%NIJE,KK)) +ELSE + ZCOEFF_MINUS_HALF(D%NIJB:D%NIJE)=0. + ZTHV_MINUS_HALF(D%NIJB:D%NIJE) = PTHVM(D%NIJB:D%NIJE,KK) +ENDIF +ZCOEFF_PLUS_HALF(D%NIJB:D%NIJE) = ((PTHVM(D%NIJB:D%NIJE,KK+KKL)-PTHVM(D%NIJB:D%NIJE,KK))/PDZZ(D%NIJB:D%NIJE,KK+KKL)) +ZTHV_PLUS_HALF(D%NIJB:D%NIJE) = PTHVM(D%NIJB:D%NIJE,KK) + & + & ZCOEFF_PLUS_HALF(D%NIJB:D%NIJE)*0.5*(PZZ(D%NIJB:D%NIJE,KK+KKL)-PZZ(D%NIJB:D%NIJE,KK)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + +! 2 Dry part computation: +! Integral buoyancy and computation of PENTR and PDETR for dry part +! -------------------------------------------------------------------- + +DO JI=D%NIJB,D%NIJE + IF (OTEST(JI) .AND. PPART_DRY(JI)>0.) THEN + !Buoyancy computation in two parts to use change of gradient of theta v of environment + !Between flux level KK and min(mass level, bottom of cloudy part) + ZDZ=MIN(ZDZ_STOP(JI),(PZZ(JI,KK+KKL)-PZZ(JI,KK))*0.5) + PBUO_INTEG_DRY(JI) = ZG_O_THVREF_ED(JI)*ZDZ*& + (0.5 * ( - ZCOEFF_MINUS_HALF(JI))*ZDZ & + - ZTHV_MINUS_HALF(JI) + PTHV_UP(JI) ) + + !Between mass flux KK and bottom of cloudy part (if above mass flux) + ZDZ=MAX(0., ZDZ_STOP(JI)-(PZZ(JI,KK+KKL)-PZZ(JI,KK))*0.5) + PBUO_INTEG_DRY(JI) = PBUO_INTEG_DRY(JI) + ZG_O_THVREF_ED(JI)*ZDZ*& + (0.5 * ( - ZCOEFF_PLUS_HALF(JI))*ZDZ & + - PTHVM(JI,KK) + PTHV_UP(JI) ) + + !Entr//Detr. computation + IF (PBUO_INTEG_DRY(JI)>=0.) THEN + PENTR(JI) = 0.5/(PARAMMF%XABUO-PARAMMF%XBENTR*PARAMMF%XENTR_DRY)*& + LOG(1.+ (2.*(PARAMMF%XABUO-PARAMMF%XBENTR*PARAMMF%XENTR_DRY)/PW_UP2(JI,KK))* & + PBUO_INTEG_DRY(JI)) + PDETR(JI) = 0. + ELSE + PENTR(JI) = 0. + PDETR(JI) = 0.5/(PARAMMF%XABUO)*& + LOG(1.+ (2.*(PARAMMF%XABUO)/PW_UP2(JI,KK))* & + (-PBUO_INTEG_DRY(JI))) + ENDIF + PENTR(JI) = PARAMMF%XENTR_DRY*PENTR(JI)/(PZZ(JI,KK+KKL)-PZZ(JI,KK)) + PDETR(JI) = PARAMMF%XDETR_DRY*PDETR(JI)/(PZZ(JI,KK+KKL)-PZZ(JI,KK)) + !Minimum value of detrainment + ZWK0D=PLUP(JI)-0.5*(PZZ(JI,KK)+PZZ(JI,KK+KKL)) + ZWK0D=SIGN(MAX(1., ABS(ZWK0D)), ZWK0D) ! ZWK0D must not be zero + PDETR(JI) = MAX(PPART_DRY(JI)*PARAMMF%XDETR_LUP/ZWK0D, PDETR(JI)) + ELSE + !No dry part, condensation reached (OTESTLCL) + PBUO_INTEG_DRY(JI) = 0. + PENTR(JI)=0. + PDETR(JI)=0. + ENDIF +ENDDO + +! 3 Wet part computation +! ----------------------- + +! 3.1 Integral buoyancy for cloudy part + +! Compute theta_v of updraft at flux level KK+KKL +!MIX variables are used to avoid declaring new variables +!but we are dealing with updraft and not mixture +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZRCMIX(D%NIJB:D%NIJE)=PRC_UP(D%NIJB:D%NIJE) +ZRIMIX(D%NIJB:D%NIJE)=PRI_UP(D%NIJB:D%NIJE) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +CALL TH_R_FROM_THL_RT(CST,NEB,D%NIJT,HFRAC_ICE,ZFRAC_ICE,& + PPRE_PLUS_HALF,PTHL_UP,PRT_UP,& + ZTHMIX,ZRVMIX,ZRCMIX,ZRIMIX,& + ZRSATW_ED, ZRSATI_ED,OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZTHV_UP_F2(D%NIJB:D%NIJE) = ZTHMIX(D%NIJB:D%NIJE)*(1.+ZRVORD*ZRVMIX(D%NIJB:D%NIJE))/(1.+PRT_UP(D%NIJB:D%NIJE)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + +! Integral buoyancy for cloudy part +DO JI=D%NIJB,D%NIJE + IF(OTEST(JI) .AND. PPART_DRY(JI)<1.) THEN + !Gradient of Theta V updraft over the cloudy part, assuming that thetaV updraft don't change + !between flux level KK and bottom of cloudy part + ZCOTHVU=(ZTHV_UP_F2(JI)-PTHV_UP(JI))/((PZZ(JI,KK+KKL)-PZZ(JI,KK))*(1-PPART_DRY(JI))) + + !Computation in two parts to use change of gradient of theta v of environment + !Between bottom of cloudy part (if under mass level) and mass level KK + ZDZ=MAX(0., 0.5*(PZZ(JI,KK+KKL)-PZZ(JI,KK))-ZDZ_STOP(JI)) + PBUO_INTEG_CLD(JI) = ZG_O_THVREF_ED(JI)*ZDZ*& + (0.5*( ZCOTHVU - ZCOEFF_MINUS_HALF(JI))*ZDZ & + - (PTHVM(JI,KK)-ZDZ*ZCOEFF_MINUS_HALF(JI)) + PTHV_UP(JI) ) + + !Between max(mass level, bottom of cloudy part) and flux level KK+KKL + ZDZ=(PZZ(JI,KK+KKL)-PZZ(JI,KK))-MAX(ZDZ_STOP(JI),0.5*(PZZ(JI,KK+KKL)-PZZ(JI,KK))) + PBUO_INTEG_CLD(JI) = PBUO_INTEG_CLD(JI)+ZG_O_THVREF_ED(JI)*ZDZ*& + (0.5*( ZCOTHVU - ZCOEFF_PLUS_HALF(JI))*ZDZ& + - (PTHVM(JI,KK)+(0.5*((PZZ(JI,KK+KKL)-PZZ(JI,KK)))-ZDZ)*ZCOEFF_PLUS_HALF(JI)) +& + PTHV_UP(JI) ) + + ELSE + !No cloudy part + PBUO_INTEG_CLD(JI)=0. + END IF +END DO + +! 3.2 Critical mixed fraction for KK+KKL flux level (ZKIC_F2) and +! for bottom of cloudy part (ZKIC), then a mean for the cloudy part +! (put also in ZKIC) +! +! computation by estimating unknown +! T^mix r_c^mix and r_i^mix from enthalpy^mix and r_w^mix +! We determine the zero crossing of the linear curve +! evaluating the derivative using ZMIXF=0.1 + +ZKIC_INIT=0.1 ! starting value for critical mixed fraction for CLoudy Part + +! Compute thetaV of environment at the bottom of cloudy part +! and cons then non cons. var. of mixture at the bottom of cloudy part + +! JKLIM computed to avoid KKL(KK-KKL) being < KKL*KKB +JKLIM=KKL*MAX(KKL*(KK-KKL),KKL*KKB) +DO JI=D%NIJB,D%NIJE + IF(OTEST(JI) .AND. PPART_DRY(JI)>0.5) THEN + ZDZ=ZDZ_STOP(JI)-0.5*(PZZ(JI,KK+KKL)-PZZ(JI,KK)) + ZTHV(JI)= PTHVM(JI,KK)+ZCOEFF_PLUS_HALF(JI)*ZDZ + ZMIXTHL(JI) = ZKIC_INIT * & + (PTHLM(JI,KK)+ZDZ*(PTHLM(JI,KK+KKL)-PTHLM(JI,KK))/PDZZ(JI,KK+KKL)) + & + (1. - ZKIC_INIT)*PTHL_UP(JI) + ZMIXRT(JI) = ZKIC_INIT * & + (PRTM(JI,KK)+ZDZ*(PRTM(JI,KK+KKL)-PRTM(JI,KK))/PDZZ(JI,KK+KKL)) + & + (1. - ZKIC_INIT)*PRT_UP(JI) + ELSEIF(OTEST(JI)) THEN + ZDZ=0.5*(PZZ(JI,KK+KKL)-PZZ(JI,KK))-ZDZ_STOP(JI) + ZTHV(JI)= PTHVM(JI,KK)-ZCOEFF_MINUS_HALF(JI)*ZDZ + ZMIXTHL(JI) = ZKIC_INIT * & + (PTHLM(JI,KK)-ZDZ*(PTHLM(JI,KK)-PTHLM(JI,JKLIM))/PDZZ(JI,KK)) + & + (1. - ZKIC_INIT)*PTHL_UP(JI) + ZMIXRT(JI) = ZKIC_INIT * & + (PRTM(JI,KK)-ZDZ*(PRTM(JI,KK)-PRTM(JI,JKLIM))/PDZZ(JI,KK)) + & + (1. - ZKIC_INIT)*PRT_UP(JI) + ELSE +#ifdef REPRO55 + ZMIXTHL(JI) = 0.1 +#else + ZMIXTHL(JI) = 300. +#endif + ZMIXRT(JI) = 0.1 + ENDIF +ENDDO +CALL TH_R_FROM_THL_RT(CST,NEB,D%NIJT,HFRAC_ICE,ZFRAC_ICE,& + ZPRE,ZMIXTHL,ZMIXRT,& + ZTHMIX,ZRVMIX,PRC_MIX,PRI_MIX,& + ZRSATW_ED, ZRSATI_ED,OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZTHVMIX(D%NIJB:D%NIJE) = ZTHMIX(D%NIJB:D%NIJE)*(1.+ZRVORD*ZRVMIX(D%NIJB:D%NIJE))/(1.+ZMIXRT(D%NIJB:D%NIJE)) + +! Compute cons then non cons. var. of mixture at the flux level KK+KKL with initial ZKIC +ZMIXTHL(D%NIJB:D%NIJE) = ZKIC_INIT * 0.5*(PTHLM(D%NIJB:D%NIJE,KK)+PTHLM(D%NIJB:D%NIJE,KK+KKL))+& + & (1. - ZKIC_INIT)*PTHL_UP(D%NIJB:D%NIJE) +ZMIXRT(D%NIJB:D%NIJE) = ZKIC_INIT * 0.5*(PRTM(D%NIJB:D%NIJE,KK)+PRTM(D%NIJB:D%NIJE,KK+KKL))+& + & (1. - ZKIC_INIT)*PRT_UP(D%NIJB:D%NIJE) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +CALL TH_R_FROM_THL_RT(CST,NEB,D%NIJT,HFRAC_ICE,ZFRAC_ICE,& + PPRE_PLUS_HALF,ZMIXTHL,ZMIXRT,& + ZTHMIX,ZRVMIX,PRC_MIX,PRI_MIX,& + ZRSATW_ED, ZRSATI_ED,OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZTHVMIX_F2(D%NIJB:D%NIJE) = ZTHMIX(D%NIJB:D%NIJE)*(1.+ZRVORD*ZRVMIX(D%NIJB:D%NIJE))/(1.+ZMIXRT(D%NIJB:D%NIJE)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + +!Computation of mean ZKIC over the cloudy part +DO JI=D%NIJB,D%NIJE + IF (OTEST(JI)) THEN + ! Compute ZKIC at the bottom of cloudy part + ! Thetav_up at bottom is equal to Thetav_up at flux level KK + IF (ABS(PTHV_UP(JI)-ZTHVMIX(JI))<1.E-10) THEN + ZKIC(JI)=1. + ELSE + ZKIC(JI) = MAX(0.,PTHV_UP(JI)-ZTHV(JI))*ZKIC_INIT / & + (PTHV_UP(JI)-ZTHVMIX(JI)) + END IF + ! Compute ZKIC_F2 at flux level KK+KKL + IF (ABS(ZTHV_UP_F2(JI)-ZTHVMIX_F2(JI))<1.E-10) THEN + ZKIC_F2(JI)=1. + ELSE + ZKIC_F2(JI) = MAX(0.,ZTHV_UP_F2(JI)-ZTHV_PLUS_HALF(JI))*ZKIC_INIT / & + (ZTHV_UP_F2(JI)-ZTHVMIX_F2(JI)) + END IF + !Mean ZKIC over the cloudy part + ZKIC(JI)=MAX(MIN(0.5*(ZKIC(JI)+ZKIC_F2(JI)),1.),0.) + END IF +END DO + +! 3.3 Integration of PDF +! According to Kain and Fritsch (1990), we replace delta Mt +! in eq. (7) and (8) using eq. (5). Here we compute the ratio +! of integrals without computing delta Me + +!Constant PDF +!For this PDF, eq. (5) is delta Me=0.5*delta Mt +DO JI=D%NIJB,D%NIJE + IF(OTEST(JI)) THEN + ZEPSI(JI) = ZKIC(JI)**2. !integration multiplied by 2 + ZDELTA(JI) = (1.-ZKIC(JI))**2. !idem + ENDIF +ENDDO + +!Triangular PDF +!Calculus must be verified before activating this part, but in this state, +!results on ARM case are almost identical +!For this PDF, eq. (5) is also delta Me=0.5*delta Mt +!WHERE(OTEST(D%NIJB:D%NIJE)) +! !Integration multiplied by 2 +! WHERE(ZKIC<0.5) +! ZEPSI(D%NIJB:D%NIJE)=8.*ZKIC(D%NIJB:D%NIJE)**3/3. +! ZDELTA(D%NIJB:D%NIJE)=1.-4.*ZKIC(D%NIJB:D%NIJE)**2+8.*ZKIC(D%NIJB:D%NIJE)**3/3. +! ELSEWHERE +! ZEPSI(D%NIJB:D%NIJE)=5./3.-4*ZKIC(D%NIJB:D%NIJE)**2+8.*ZKIC(D%NIJB:D%NIJE)**3/3. +! ZDELTA(D%NIJB:D%NIJE)=8.*(1.-ZKIC(D%NIJB:D%NIJE))**3/3. +! ENDWHERE +!ENDWHERE + +! 3.4 Computation of PENTR and PDETR +DO JI=D%NIJB,D%NIJE + IF(OTEST(JI)) THEN + ZEPSI_CLOUD=MIN(ZDELTA(JI), ZEPSI(JI)) + PENTR_CLD(JI) = (1.-PPART_DRY(JI))*ZCOEFFMF_CLOUD*PRHODREF(JI)*ZEPSI_CLOUD + PDETR_CLD(JI) = (1.-PPART_DRY(JI))*ZCOEFFMF_CLOUD*PRHODREF(JI)*ZDELTA(JI) + PENTR(JI) = PENTR(JI)+PENTR_CLD(JI) + PDETR(JI) = PDETR(JI)+PDETR_CLD(JI) + ELSE + PENTR_CLD(JI) = 0. + PDETR_CLD(JI) = 0. + ENDIF +ENDDO + +END SUBROUTINE COMPUTE_ENTR_DETR END SUBROUTINE COMPUTE_UPDRAFT END MODULE MODE_COMPUTE_UPDRAFT + diff --git a/src/common/turb/mode_compute_updraft_raha.F90 b/src/common/turb/mode_compute_updraft_raha.F90 index 41414ea157c7fd1d5772da28eca198bb52ce4991..8a4705cb429aa690964be656eabca7ceb36ae678 100644 --- a/src/common/turb/mode_compute_updraft_raha.F90 +++ b/src/common/turb/mode_compute_updraft_raha.F90 @@ -9,8 +9,8 @@ ! IMPLICIT NONE CONTAINS - SUBROUTINE COMPUTE_UPDRAFT_RAHA(KKA,KKB,KKE,KKU,KKL,HFRAC_ICE, & - OENTR_DETR,OMIXUV, & + SUBROUTINE COMPUTE_UPDRAFT_RAHA(D, CST, NEB, PARAMMF, & + KSV, HFRAC_ICE, OENTR_DETR, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PZZ,PDZZ, & PSFTH,PSFRV, & @@ -58,11 +58,11 @@ CONTAINS ! !* 0. DECLARATIONS ! ------------ - -USE MODD_CST -USE MODD_PARAM_MFSHALL_n - -USE MODE_TH_R_FROM_THL_RT_1D, ONLY: TH_R_FROM_THL_RT_1D +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_NEB, ONLY: NEB_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +! USE MODI_SHUMAN_MF, ONLY: MZM_MF ! USE PARKIND1, ONLY : JPRB @@ -74,120 +74,119 @@ IMPLICIT NONE ! ! ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(NEB_t), INTENT(IN) :: NEB +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +INTEGER, INTENT(IN) :: KSV CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE ! partition liquid/ice scheme LOGICAL, INTENT(IN) :: OENTR_DETR! flag to recompute entrainment, detrainment and mass flux LOGICAL, INTENT(IN) :: OMIXUV ! True if mixing of momentum LOGICAL, INTENT(IN) :: ONOMIXLG ! False if mixing of lagrangian tracer INTEGER, INTENT(IN) :: KSV_LGBEG ! first index of lag. tracer INTEGER, INTENT(IN) :: KSV_LGEND ! last index of lag. tracer -REAL, DIMENSION(:,:), INTENT(IN) :: PZZ ! Height at the flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Metrics coefficient +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PZZ ! Height at the flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Metrics coefficient -REAL, DIMENSION(:), INTENT(IN) :: PSFTH,PSFRV +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PSFTH,PSFRV ! normal surface fluxes of theta,rv,(u,v) parallel to the orography ! -REAL, DIMENSION(:,:), INTENT(IN) :: PPABSM ! Pressure at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODREF ! dry density of the +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PPABSM ! Pressure at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODREF ! dry density of the ! reference state -REAL, DIMENSION(:,:), INTENT(IN) :: PUM ! u mean wind -REAL, DIMENSION(:,:), INTENT(IN) :: PVM ! v mean wind -REAL, DIMENSION(:,:), INTENT(IN) :: PTKEM ! TKE at t-dt - -REAL, DIMENSION(:,:), INTENT(IN) :: PEXNM ! Exner function at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM ! liquid pot. temp. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PRVM ! vapor mixing ratio at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM,PRTM ! cons. var. at t-dt - -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSVM ! scalar var. at t-dt - -REAL, DIMENSION(:,:), INTENT(OUT) :: PTHL_UP,PRT_UP ! updraft properties -REAL, DIMENSION(:,:), INTENT(OUT) :: PU_UP, PV_UP ! updraft wind components -REAL, DIMENSION(:,:), INTENT(INOUT):: PRV_UP,PRC_UP ! updraft rv, rc -REAL, DIMENSION(:,:), INTENT(INOUT):: PRI_UP,PTHV_UP ! updraft ri, THv -REAL, DIMENSION(:,:), INTENT(INOUT):: PW_UP,PFRAC_UP ! updraft w, fraction -REAL, DIMENSION(:,:), INTENT(INOUT):: PFRAC_ICE_UP ! liquid/solid fraction in updraft -REAL, DIMENSION(:,:), INTENT(INOUT):: PRSAT_UP ! Rsat - -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSV_UP ! updraft scalar var. +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PUM ! u mean wind +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PVM ! v mean wind +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTKEM ! TKE at t-dt + +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEXNM ! Exner function at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM ! liquid pot. temp. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRVM ! vapor mixing ratio at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM,PRTM ! cons. var. at t-dt + +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(IN) :: PSVM ! scalar var. at t-dt + +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PTHL_UP,PRT_UP ! updraft properties +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PU_UP, PV_UP ! updraft wind components +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PRV_UP,PRC_UP ! updraft rv, rc +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PRI_UP,PTHV_UP ! updraft ri, THv +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PW_UP,PFRAC_UP ! updraft w, fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PFRAC_ICE_UP ! liquid/solid fraction in updraft +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PRSAT_UP ! Rsat + +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(OUT) :: PSV_UP ! updraft scalar var. -REAL, DIMENSION(:,:), INTENT(INOUT):: PEMF,PDETR,PENTR ! Mass_flux, +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PEMF,PDETR,PENTR ! Mass_flux, ! detrainment,entrainment -REAL, DIMENSION(:,:), INTENT(INOUT) :: PBUO_INTEG ! Integrated Buoyancy -INTEGER, DIMENSION(:), INTENT(INOUT):: KKLCL,KKETL,KKCTL! LCL, ETL, CTL -REAL, DIMENSION(:), INTENT(OUT) :: PDEPTH ! Deepness of cloud +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PBUO_INTEG ! Integrated Buoyancy +INTEGER, DIMENSION(D%NIJT), INTENT(INOUT):: KKLCL,KKETL,KKCTL! LCL, ETL, CTL +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PDEPTH ! Deepness of cloud ! 1.2 Declaration of local variables ! ! ! Mean environment variables at t-dt at flux point -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZTHM_F,ZRVM_F,ZRCM_F ! Theta,rv of +REAL, DIMENSION(D%NIJT,D%NKT) :: ZTHM_F,ZRVM_F,ZRCM_F ! Theta,rv of ! updraft environnement -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZRTM_F, ZTHLM_F, ZTKEM_F ! rt, thetal,TKE,pressure, -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZUM_F,ZVM_F,ZRHO_F ! density,momentum -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZPRES_F,ZTHVM_F,ZTHVM ! interpolated at the flux point -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZG_O_THVREF ! g*ThetaV ref -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZW_UP2 ! w**2 of the updraft +REAL, DIMENSION(D%NIJT,D%NKT) :: ZRTM_F, ZTHLM_F, ZTKEM_F ! rt, thetal,TKE,pressure, +REAL, DIMENSION(D%NIJT,D%NKT) :: ZUM_F,ZVM_F,ZRHO_F ! density,momentum +REAL, DIMENSION(D%NIJT,D%NKT) :: ZPRES_F,ZTHVM_F,ZTHVM ! interpolated at the flux point +REAL, DIMENSION(D%NIJT,D%NKT) :: ZG_O_THVREF ! g*ThetaV ref +REAL, DIMENSION(D%NIJT,D%NKT) :: ZW_UP2 ! w**2 of the updraft -REAL, DIMENSION(SIZE(PSVM,1),SIZE(PTHM,2),SIZE(PSVM,3)) :: ZSVM_F ! scalar variables +REAL, DIMENSION(D%NIJT,D%NKT,KSV) :: ZSVM_F ! scalar variables -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZTH_UP ! updraft THETA -REAL, DIMENSION(SIZE(PTHM,1)) :: ZT_UP ! updraft T -REAL, DIMENSION(SIZE(PTHM,1)) :: ZLVOCPEXN ! updraft L -REAL, DIMENSION(SIZE(PTHM,1)) :: ZCP ! updraft cp -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZBUO ! Buoyancy -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZTHS_UP,ZTHSM - -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZCOEF ! diminution coefficient for too high clouds +REAL, DIMENSION(D%NIJT,D%NKT) :: ZTH_UP ! updraft THETA +REAL, DIMENSION(D%NIJT) :: ZT_UP ! updraft T +REAL, DIMENSION(D%NIJT) :: ZLVOCPEXN ! updraft L +REAL, DIMENSION(D%NIJT) :: ZCP ! updraft cp +REAL, DIMENSION(D%NIJT,D%NKT) :: ZBUO ! Buoyancy +REAL, DIMENSION(D%NIJT,D%NKT) :: ZTHS_UP,ZTHSM + +REAL, DIMENSION(D%NIJT,D%NKT) :: ZCOEF ! diminution coefficient for too high clouds -REAL, DIMENSION(SIZE(PSFTH,1) ) :: ZWTHVSURF ! Surface w'thetav' +REAL, DIMENSION(D%NIJT) :: ZWTHVSURF ! Surface w'thetav' REAL :: ZRDORV ! RD/RV REAL :: ZRVORD ! RV/RD -REAL, DIMENSION(SIZE(PTHM,1)) :: ZMIX1,ZMIX2,ZMIX3 +REAL, DIMENSION(D%NIJT) :: ZMIX1,ZMIX2,ZMIX3 -REAL, DIMENSION(SIZE(PTHM,1)) :: ZLUP ! Upward Mixing length from the ground +REAL, DIMENSION(D%NIJT) :: ZLUP ! Upward Mixing length from the ground -REAL, DIMENSION(SIZE(PTHM,1)) :: ZDEPTH ! Deepness limit for cloud +REAL, DIMENSION(D%NIJT) :: ZDEPTH ! Deepness limit for cloud -INTEGER :: ISV ! Number of scalar variables -INTEGER :: IKU,IIJU ! array size in k INTEGER :: JK,JI,JJ,JSV ! loop counters -LOGICAL, DIMENSION(SIZE(PTHM,1)) :: GTEST,GTESTLCL,GTESTETL +LOGICAL, DIMENSION(D%NIJT) :: GTEST,GTESTLCL,GTESTETL ! Test if the ascent continue, if LCL or ETL is reached LOGICAL :: GLMIX ! To choose upward or downward mixing length -LOGICAL, DIMENSION(SIZE(PTHM,1)) :: GWORK1 -LOGICAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: GWORK2 +LOGICAL, DIMENSION(D%NIJT) :: GWORK1 +LOGICAL, DIMENSION(D%NIJT,D%NKT) :: GWORK2 INTEGER :: ITEST -REAL, DIMENSION(SIZE(PTHM,1)) :: ZRC_UP, ZRI_UP, ZRV_UP, ZWP2, ZRSATW, ZRSATI +REAL, DIMENSION(D%NIJT) :: ZRC_UP, ZRI_UP, ZRV_UP, ZWP2, ZRSATW, ZRSATI -LOGICAL, DIMENSION(SIZE(PTHM,1)) :: GTEST_FER -REAL, DIMENSION(SIZE(PTHM,1)) :: ZPHI,ZALIM_STAR_TOT -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZDTHETASDZ,ZALIM_STAR,ZZDZ,ZZZ -INTEGER, DIMENSION(SIZE(PTHM,1)) :: IALIM +LOGICAL, DIMENSION(D%NIJT) :: GTEST_FER +REAL, DIMENSION(D%NIJT) :: ZPHI,ZALIM_STAR_TOT +REAL, DIMENSION(D%NIJT,D%NKT) :: ZDTHETASDZ,ZALIM_STAR,ZZDZ,ZZZ +INTEGER, DIMENSION(D%NIJT) :: IALIM -REAL, DIMENSION(SIZE(PTHM,1)) :: ZTEST,ZDZ,ZWUP_MEAN ! -REAL, DIMENSION(SIZE(PTHM,1)) :: ZCOE,ZWCOE,ZBUCOE -REAL, DIMENSION(SIZE(PTHM,1)) :: ZDETR_BUO, ZDETR_RT -REAL, DIMENSION(SIZE(PTHM,1)) :: ZW_MAX ! w**2 max of the updraft -REAL, DIMENSION(SIZE(PTHM,1)) :: ZZTOP ! Top of the updraft -REAL, DIMENSION(SIZE(PTHM,1)) :: ZA,ZB,ZQTM,ZQT_UP +REAL, DIMENSION(D%NIJT) :: ZTEST,ZDZ,ZWUP_MEAN ! +REAL, DIMENSION(D%NIJT) :: ZCOE,ZWCOE,ZBUCOE +REAL, DIMENSION(D%NIJT) :: ZDETR_BUO, ZDETR_RT +REAL, DIMENSION(D%NIJT) :: ZW_MAX ! w**2 max of the updraft +REAL, DIMENSION(D%NIJT) :: ZZTOP ! Top of the updraft +REAL, DIMENSION(D%NIJT) :: ZA,ZB,ZQTM,ZQT_UP REAL :: ZDEPTH_MAX1, ZDEPTH_MAX2 ! control auto-extinction process REAL :: ZTMAX,ZRMAX, ZEPS ! control value +REAL, DIMENSION(D%NIJT,16) :: ZBUF REAL(KIND=JPRB) :: ZHOOK_HANDLE IF (LHOOK) CALL DR_HOOK('COMPUTE_UPDRAF_RAHA',0,ZHOOK_HANDLE) @@ -202,24 +201,17 @@ ZEPS=1.E-15 ! INITIALISATION ! Initialisation of the constants -ZRDORV = XRD / XRV !=0.622 -ZRVORD = (XRV / XRD) +ZRDORV = CST%XRD / CST%XRV !=0.622 +ZRVORD = (CST%XRV / CST%XRD) ZDEPTH_MAX1=4500. ! clouds with depth infeRIOr to this value are keeped untouched ZDEPTH_MAX2=5000. ! clouds with depth superior to this value are suppressed ! Local variables, internal domain -! Internal Domain - -IKU=SIZE(PTHM,2) -IIJU =SIZE(PTHM,1) -!number of scalar variables -ISV=SIZE(PSVM,3) - ! Initialisation of intersesting Level :LCL,ETL,CTL -KKLCL(:)=KKE -KKETL(:)=KKE -KKCTL(:)=KKE +KKLCL(:)=D%NKE +KKETL(:)=D%NKE +KKCTL(:)=D%NKE ! ! Initialisation @@ -238,107 +230,130 @@ ZTH_UP(:,:)=0. PFRAC_UP(:,:)=0. PTHV_UP(:,:)=0. -PBUO_INTEG=0. -ZBUO =0. +PBUO_INTEG(:,:)=0. +ZBUO(:,:) =0. !no ice cloud coded yet PRI_UP(:,:)=0. PFRAC_ICE_UP(:,:)=0. -PRSAT_UP(:,:)=PRVM(:,:) ! should be initialised correctly but is (normaly) not used +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PRSAT_UP(D%NIJB:D%NIJE,:)=PRVM(D%NIJB:D%NIJE,:) ! should be initialised correctly but is (normaly) not used +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! Initialisation of environment variables at t-dt ! variables at flux level -ZTHLM_F(:,:) = MZM_MF(PTHLM(:,:), KKA, KKU, KKL) -ZRTM_F (:,:) = MZM_MF(PRTM(:,:), KKA, KKU, KKL) -ZUM_F (:,:) = MZM_MF(PUM(:,:), KKA, KKU, KKL) -ZVM_F (:,:) = MZM_MF(PVM(:,:), KKA, KKU, KKL) -ZTKEM_F(:,:) = MZM_MF(PTKEM(:,:), KKA, KKU, KKL) +CALL MZM_MF(D, PTHLM(:,:), ZTHLM_F(:,:)) +CALL MZM_MF(D, PRTM(:,:), ZRTM_F(:,:)) +CALL MZM_MF(D, PUM(:,:), ZUM_F(:,:)) +CALL MZM_MF(D, PVM(:,:), ZVM_F(:,:)) +CALL MZM_MF(D, PTKEM(:,:), ZTKEM_F(:,:)) !DO JSV=1,ISV ! IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE -! ZSVM_F(:,KKB:IKU,JSV) = 0.5*(PSVM(:,KKB:IKU,JSV)+PSVM(:,1:IKU-1,JSV)) -! ZSVM_F(:,1,JSV) = ZSVM_F(:,KKB,JSV) +! ZSVM_F(D%NIJB:D%NIJE,KKB:IKU,JSV) = 0.5*(PSVM(D%NIJB:D%NIJE,KKB:IKU,JSV)+PSVM(D%NIJB:D%NIJE,1:IKU-1,JSV)) +! ZSVM_F(D%NIJB:D%NIJE,1,JSV) = ZSVM_F(D%NIJB:D%NIJE,KKB,JSV) !END DO ! Initialisation of updraft characteristics -PTHL_UP(:,:)=ZTHLM_F(:,:) -PRT_UP(:,:)=ZRTM_F(:,:) -PU_UP(:,:)=ZUM_F(:,:) -PV_UP(:,:)=ZVM_F(:,:) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PTHL_UP(D%NIJB:D%NIJE,:)=ZTHLM_F(D%NIJB:D%NIJE,:) +PRT_UP(D%NIJB:D%NIJE,:)=ZRTM_F(D%NIJB:D%NIJE,:) +PU_UP(D%NIJB:D%NIJE,:)=ZUM_F(D%NIJB:D%NIJE,:) +PV_UP(D%NIJB:D%NIJE,:)=ZVM_F(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) PSV_UP(:,:,:)=0. !IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) then -! PSV_UP(:,:,:)=ZSVM_F(:,:,:) +! PSV_UP(D%NIJB:D%NIJE,:,:)=ZSVM_F(D%NIJB:D%NIJE,:,:) !ENDIF ! Computation or initialisation of updraft characteristics at the KKB level ! thetal_up,rt_up,thetaV_up, w�,Buoyancy term and mass flux (PEMF) -PTHL_UP(:,KKB)= ZTHLM_F(:,KKB)+MAX(0.,MIN(ZTMAX,(PSFTH(:)/SQRT(ZTKEM_F(:,KKB)))*XALP_PERT)) -PRT_UP(:,KKB) = ZRTM_F(:,KKB)+MAX(0.,MIN(ZRMAX,(PSFRV(:)/SQRT(ZTKEM_F(:,KKB)))*XALP_PERT)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PTHL_UP(D%NIJB:D%NIJE,D%NKB)= ZTHLM_F(D%NIJB:D%NIJE,D%NKB)+ & + & MAX(0.,MIN(ZTMAX,(PSFTH(D%NIJB:D%NIJE)/SQRT(ZTKEM_F(D%NIJB:D%NIJE,D%NKB)))*PARAMMF%XALP_PERT)) +PRT_UP(D%NIJB:D%NIJE,D%NKB) = ZRTM_F(D%NIJB:D%NIJE,D%NKB)+ & + & MAX(0.,MIN(ZRMAX,(PSFRV(D%NIJB:D%NIJE)/SQRT(ZTKEM_F(D%NIJB:D%NIJE,D%NKB)))*PARAMMF%XALP_PERT)) -ZQT_UP(:) = PRT_UP(:,KKB)/(1.+PRT_UP(:,KKB)) -ZTHS_UP(:,KKB)=PTHL_UP(:,KKB)*(1.+XLAMBDA_MF*ZQT_UP(:)) +ZQT_UP(D%NIJB:D%NIJE) = PRT_UP(D%NIJB:D%NIJE,D%NKB)/(1.+PRT_UP(D%NIJB:D%NIJE,D%NKB)) +ZTHS_UP(D%NIJB:D%NIJE,D%NKB)=PTHL_UP(D%NIJB:D%NIJE,D%NKB)*(1.+PARAMMF%XLAMBDA_MF*ZQT_UP(D%NIJB:D%NIJE)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) -ZTHM_F (:,:) = MZM_MF(PTHM (:,:), KKA, KKU, KKL) -ZPRES_F(:,:) = MZM_MF(PPABSM(:,:), KKA, KKU, KKL) -ZRHO_F (:,:) = MZM_MF(PRHODREF(:,:), KKA, KKU, KKL) -ZRVM_F (:,:) = MZM_MF(PRVM(:,:), KKA, KKU, KKL) +CALL MZM_MF(D, PTHM (:,:), ZTHM_F(:,:)) +CALL MZM_MF(D, PPABSM(:,:), ZPRES_F(:,:)) +CALL MZM_MF(D, PRHODREF(:,:), ZRHO_F(:,:)) +CALL MZM_MF(D, PRVM(:,:), ZRVM_F(:,:)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! thetav at mass and flux levels -ZTHVM_F(:,:)=ZTHM_F(:,:)*((1.+ZRVORD*ZRVM_F(:,:))/(1.+ZRTM_F(:,:))) -ZTHVM(:,:)=PTHM(:,:)*((1.+ZRVORD*PRVM(:,:))/(1.+PRTM(:,:))) +ZTHVM_F(D%NIJB:D%NIJE,:)=ZTHM_F(D%NIJB:D%NIJE,:)*((1.+ZRVORD*ZRVM_F(D%NIJB:D%NIJE,:))/(1.+ZRTM_F(D%NIJB:D%NIJE,:))) +ZTHVM(D%NIJB:D%NIJE,:)=PTHM(D%NIJB:D%NIJE,:)*((1.+ZRVORD*PRVM(D%NIJB:D%NIJE,:))/(1.+PRTM(D%NIJB:D%NIJE,:))) -PTHV_UP(:,:)= ZTHVM_F(:,:) -PRV_UP (:,:)= ZRVM_F (:,:) +PTHV_UP(D%NIJB:D%NIJE,:)= ZTHVM_F(D%NIJB:D%NIJE,:) +PRV_UP(D%NIJB:D%NIJE,:) = ZRVM_F(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ZW_UP2(:,:)=ZEPS -ZW_UP2(:,KKB) = MAX(0.0001,(1./6.)*ZTKEM_F(:,KKB)) -GTEST = (ZW_UP2(:,KKB) > ZEPS) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZW_UP2(D%NIJB:D%NIJE,D%NKB) = MAX(0.0001,(1./6.)*ZTKEM_F(D%NIJB:D%NIJE,D%NKB)) +GTEST(D%NIJB:D%NIJE) = (ZW_UP2(D%NIJB:D%NIJE,D%NKB) > ZEPS) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! Computation of non conservative variable for the KKB level of the updraft ! (all or nothing ajustement) -PRC_UP(:,KKB)=0. -PRI_UP(:,KKB)=0. +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PRC_UP(D%NIJB:D%NIJE,D%NKB)=0. +PRI_UP(D%NIJB:D%NIJE,D%NKB)=0. +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) -CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE_UP(:,KKB),ZPRES_F(:,KKB), & - PTHL_UP(:,KKB),PRT_UP(:,KKB),ZTH_UP(:,KKB), & - PRV_UP(:,KKB),PRC_UP(:,KKB),PRI_UP(:,KKB),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.) +CALL TH_R_FROM_THL_RT(CST, NEB, D%NIJT, HFRAC_ICE,PFRAC_ICE_UP(:,D%NKB),ZPRES_F(:,D%NKB), & + PTHL_UP(:,D%NKB),PRT_UP(:,D%NKB),ZTH_UP(:,D%NKB), & + PRV_UP(:,D%NKB),PRC_UP(:,D%NKB),PRI_UP(:,D%NKB),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) ! compute updraft thevav and buoyancy term at KKB level -PTHV_UP(:,KKB) = ZTH_UP(:,KKB)*((1+ZRVORD*PRV_UP(:,KKB))/(1+PRT_UP(:,KKB))) +PTHV_UP(D%NIJB:D%NIJE,D%NKB) = ZTH_UP(D%NIJB:D%NIJE,D%NKB)*((1+ZRVORD*PRV_UP(D%NIJB:D%NIJE,D%NKB))/(1+PRT_UP(D%NIJB:D%NIJE,D%NKB))) ! compute mean rsat in updraft -PRSAT_UP(:,KKB) = ZRSATW(:)*(1-PFRAC_ICE_UP(:,KKB)) + ZRSATI(:)*PFRAC_ICE_UP(:,KKB) +PRSAT_UP(D%NIJB:D%NIJE,D%NKB) = ZRSATW(D%NIJB:D%NIJE)*(1-PFRAC_ICE_UP(D%NIJB:D%NIJE,D%NKB)) + & + & ZRSATI(D%NIJB:D%NIJE)*PFRAC_ICE_UP(D%NIJB:D%NIJE,D%NKB) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) !Tout est commente pour tester dans un premier temps la s�paration en deux de la ! boucle verticale, une pour w et une pour PEMF - -ZG_O_THVREF=XG/ZTHVM_F - +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +ZG_O_THVREF(D%NIJB:D%NIJE,:)=CST%XG/ZTHVM_F(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! Definition de l'alimentation au sens de la fermeture de Hourdin et al ZALIM_STAR(:,:) = 0. ZALIM_STAR_TOT(:) = 0. ! <== Normalization of ZALIM_STAR -IALIM(:) = KKB ! <== Top level of the alimentation layer +IALIM(:) = D%NKB ! <== Top level of the alimentation layer -DO JK=KKB,KKE-KKL,KKL ! Vertical loop - ZZDZ(:,JK) = MAX(ZEPS,PZZ(:,JK+KKL)-PZZ(:,JK)) ! <== Delta Z between two flux level - ZZZ(:,JK) = MAX(0.,0.5*(PZZ(:,JK+KKL)+PZZ(:,JK)) ) ! <== Hight of mass levels - ZDTHETASDZ(:,JK) = (ZTHVM_F(:,JK)-ZTHVM_F(:,JK+KKL)) ! <== Delta theta_v +DO JK=D%NKB,D%NKE-D%NKL,D%NKL ! Vertical loop + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + ZZDZ(D%NIJB:D%NIJE,JK) = MAX(ZEPS,PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK)) ! <== Delta Z between two flux level + ZZZ(D%NIJB:D%NIJE,JK) = MAX(0.,0.5*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)+PZZ(D%NIJB:D%NIJE,JK)) ) ! <== Hight of mass levels + ZDTHETASDZ(D%NIJB:D%NIJE,JK) = (ZTHVM_F(D%NIJB:D%NIJE,JK)-ZTHVM_F(D%NIJB:D%NIJE,JK+D%NKL)) ! <== Delta theta_v - WHERE ((ZTHVM_F(:,JK+KKL)<ZTHVM_F(:,JK)) .AND. (ZTHVM_F(:,KKB)>=ZTHVM_F(:,JK))) - ZALIM_STAR(:,JK) = SQRT(ZZZ(:,JK))*ZDTHETASDZ(:,JK)/ZZDZ(:,JK) - ZALIM_STAR_TOT(:) = ZALIM_STAR_TOT(:)+ZALIM_STAR(:,JK)*ZZDZ(:,JK) - IALIM(:) = JK + WHERE ((ZTHVM_F(D%NIJB:D%NIJE,JK+D%NKL)<ZTHVM_F(D%NIJB:D%NIJE,JK)) .AND. & + &(ZTHVM_F(D%NIJB:D%NIJE,D%NKB)>=ZTHVM_F(D%NIJB:D%NIJE,JK))) + ZALIM_STAR(D%NIJB:D%NIJE,JK) = SQRT(ZZZ(D%NIJB:D%NIJE,JK))*ZDTHETASDZ(D%NIJB:D%NIJE,JK)/ZZDZ(D%NIJB:D%NIJE,JK) + ZALIM_STAR_TOT(D%NIJB:D%NIJE) = ZALIM_STAR_TOT(D%NIJB:D%NIJE)+ZALIM_STAR(D%NIJB:D%NIJE,JK)*ZZDZ(D%NIJB:D%NIJE,JK) + IALIM(D%NIJB:D%NIJE) = JK ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ENDDO ! Normalization of ZALIM_STAR -DO JK=KKB,KKE-KKL,KKL ! Vertical loop - WHERE (ZALIM_STAR_TOT > ZEPS) - ZALIM_STAR(:,JK) = ZALIM_STAR(:,JK)/ZALIM_STAR_TOT(:) +DO JK=D%NKB,D%NKE-D%NKL,D%NKL ! Vertical loop + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE (ZALIM_STAR_TOT(D%NIJB:D%NIJE) > ZEPS) + ZALIM_STAR(D%NIJB:D%NIJE,JK) = ZALIM_STAR(D%NIJB:D%NIJE,JK)/ZALIM_STAR_TOT(D%NIJB:D%NIJE) ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ENDDO ZALIM_STAR_TOT(:) = 0. @@ -364,214 +379,244 @@ ZZTOP(:) = 0. ZPHI(:) = 0. -DO JK=KKB,KKE-KKL,KKL - -! IF the updraft top is reached for all column, stop the loop on levels +DO JK=D%NKB,D%NKE-D%NKL,D%NKL + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + ! IF the updraft top is reached for all column, stop the loop on levels -! ITEST=COUNT(GTEST) -! IF (ITEST==0) CYCLE + !ITEST=COUNT(GTEST(D%NIJB:D%NIJE)) + !IF (ITEST==0) CYCLE -! Computation of entrainment and detrainment with KF90 -! parameterization in clouds and LR01 in subcloud layer + ! Computation of entrainment and detrainment with KF90 + ! parameterization in clouds and LR01 in subcloud layer - -! to find the LCL (check if JK is LCL or not) - - WHERE ((PRC_UP(:,JK)+PRI_UP(:,JK)>0.).AND.(.NOT.(GTESTLCL))) - KKLCL(:) = JK - GTESTLCL(:)=.TRUE. + ! to find the LCL (check if JK is LCL or not) + WHERE ((PRC_UP(D%NIJB:D%NIJE,JK)+PRI_UP(D%NIJB:D%NIJE,JK)>0.).AND.(.NOT.(GTESTLCL(D%NIJB:D%NIJE)))) + KKLCL(D%NIJB:D%NIJE) = JK + GTESTLCL(D%NIJB:D%NIJE)=.TRUE. ENDWHERE - -! COMPUTE PENTR and PDETR at mass level JK + ! COMPUTE PENTR and PDETR at mass level JK -! Buoyancy is computed on "flux" levels where updraft variables are known + ! Buoyancy is computed on "flux" levels where updraft variables are known ! Compute theta_v of updraft at flux level JK - ZRC_UP(:) = PRC_UP(:,JK) - ZRI_UP(:) = PRI_UP(:,JK) ! guess - ZRV_UP(:) = PRV_UP(:,JK) - ZBUO (:,JK) = ZG_O_THVREF(:,JK)*(PTHV_UP(:,JK) - ZTHVM_F(:,JK)) - PBUO_INTEG(:,JK) = ZBUO(:,JK)*(PZZ(:,JK+KKL)-PZZ(:,JK)) - - ZDZ(:) = MAX(ZEPS,PZZ(:,JK+KKL)-PZZ(:,JK)) - ZTEST(:) = XA1*ZBUO(:,JK) - XB*ZW_UP2(:,JK) + ZRC_UP(D%NIJB:D%NIJE) = PRC_UP(D%NIJB:D%NIJE,JK) + ZRI_UP(D%NIJB:D%NIJE) = PRI_UP(D%NIJB:D%NIJE,JK) ! guess + ZRV_UP(D%NIJB:D%NIJE) = PRV_UP(D%NIJB:D%NIJE,JK) + ZBUO(D%NIJB:D%NIJE,JK) = ZG_O_THVREF(D%NIJB:D%NIJE,JK)*(PTHV_UP(D%NIJB:D%NIJE,JK) - ZTHVM_F(D%NIJB:D%NIJE,JK)) + PBUO_INTEG(D%NIJB:D%NIJE,JK) = ZBUO(D%NIJB:D%NIJE,JK)*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK)) + + ZDZ(D%NIJB:D%NIJE) = MAX(ZEPS,PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK)) + ZTEST(D%NIJB:D%NIJE) = PARAMMF%XA1*ZBUO(D%NIJB:D%NIJE,JK) - PARAMMF%XB*ZW_UP2(D%NIJB:D%NIJE,JK) - ZCOE(:) = ZDZ(:) - WHERE (ZTEST(:)>0.) - ZCOE(:) = ZDZ(:)/(1.+ XBETA1) - ENDWHERE + ZCOE(D%NIJB:D%NIJE) = ZDZ(D%NIJB:D%NIJE) + WHERE (ZTEST(D%NIJB:D%NIJE)>0.) + ZCOE(D%NIJB:D%NIJE) = ZDZ(D%NIJB:D%NIJE)/(1.+ PARAMMF%XBETA1) + ENDWHERE -! Calcul de la vitesse + ! Calcul de la vitesse - ZWCOE(:) = (1.-XB*ZCOE(:))/(1.+XB*ZCOE(:)) - ZBUCOE(:) = 2.*ZCOE(:)/(1.+XB*ZCOE(:)) - - ZW_UP2(:,JK+KKL) = MAX(ZEPS,ZW_UP2(:,JK)*ZWCOE(:) + XA1*ZBUO(:,JK)*ZBUCOE(:) ) - ZW_MAX(:) = MAX(ZW_MAX(:), SQRT(ZW_UP2(:,JK+KKL))) - ZWUP_MEAN(:) = MAX(ZEPS,0.5*(ZW_UP2(:,JK+KKL)+ZW_UP2(:,JK))) - -! Entrainement et detrainement + ZWCOE(D%NIJB:D%NIJE) = (1.-PARAMMF%XB*ZCOE(D%NIJB:D%NIJE))/(1.+PARAMMF%XB*ZCOE(D%NIJB:D%NIJE)) + ZBUCOE(D%NIJB:D%NIJE) = 2.*ZCOE(D%NIJB:D%NIJE)/(1.+PARAMMF%XB*ZCOE(D%NIJB:D%NIJE)) - PENTR(:,JK) = MAX(0.,(XBETA1/(1.+XBETA1))*(XA1*ZBUO(:,JK)/ZWUP_MEAN(:)-XB)) - - ZDETR_BUO(:) = MAX(0., -(XBETA1/(1.+XBETA1))*XA1*ZBUO(:,JK)/ZWUP_MEAN(:)) - ZDETR_RT(:) = XC*SQRT(MAX(0.,(PRT_UP(:,JK) - ZRTM_F(:,JK))) / MAX(ZEPS,ZRTM_F(:,JK)) / ZWUP_MEAN(:)) - PDETR(:,JK) = ZDETR_RT(:)+ZDETR_BUO(:) + ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL) = MAX(ZEPS,ZW_UP2(D%NIJB:D%NIJE,JK)*ZWCOE(D%NIJB:D%NIJE) + & + &PARAMMF%XA1*ZBUO(D%NIJB:D%NIJE,JK)*ZBUCOE(D%NIJB:D%NIJE)) + ZW_MAX(D%NIJB:D%NIJE) = MAX(ZW_MAX(D%NIJB:D%NIJE), SQRT(ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL))) + ZWUP_MEAN(D%NIJB:D%NIJE) = MAX(ZEPS,0.5*(ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL)+ZW_UP2(D%NIJB:D%NIJE,JK))) + + ! Entrainement et detrainement + + PENTR(D%NIJB:D%NIJE,JK) = MAX(0.,(PARAMMF%XBETA1/(1.+PARAMMF%XBETA1))* & + &(PARAMMF%XA1*ZBUO(D%NIJB:D%NIJE,JK)/ZWUP_MEAN(D%NIJB:D%NIJE)-PARAMMF%XB)) + + ZDETR_BUO(D%NIJB:D%NIJE) = MAX(0., -(PARAMMF%XBETA1/(1.+PARAMMF%XBETA1))*PARAMMF%XA1*ZBUO(D%NIJB:D%NIJE,JK)/ & + &ZWUP_MEAN(D%NIJB:D%NIJE)) + ZDETR_RT(D%NIJB:D%NIJE) = PARAMMF%XC*SQRT(MAX(0.,(PRT_UP(D%NIJB:D%NIJE,JK) - ZRTM_F(D%NIJB:D%NIJE,JK))) / & + &MAX(ZEPS,ZRTM_F(D%NIJB:D%NIJE,JK)) / ZWUP_MEAN(D%NIJB:D%NIJE)) + PDETR(D%NIJB:D%NIJE,JK) = ZDETR_RT(D%NIJB:D%NIJE)+ZDETR_BUO(D%NIJB:D%NIJE) -! If the updraft did not stop, compute cons updraft characteritics at jk+1 - WHERE(GTEST) - ZZTOP(:) = MAX(ZZTOP(:),PZZ(:,JK+KKL)) - ZMIX2(:) = (PZZ(:,JK+KKL)-PZZ(:,JK))*PENTR(:,JK) !& - ZMIX3(:) = (PZZ(:,JK+KKL)-PZZ(:,JK))*PDETR(:,JK) !& + ! If the updraft did not stop, compute cons updraft characteritics at jk+1 + WHERE(GTEST(D%NIJB:D%NIJE)) + ZZTOP(D%NIJB:D%NIJE) = MAX(ZZTOP(D%NIJB:D%NIJE),PZZ(D%NIJB:D%NIJE,JK+D%NKL)) + ZMIX2(D%NIJB:D%NIJE) = (PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*PENTR(D%NIJB:D%NIJE,JK) !& + ZMIX3(D%NIJB:D%NIJE) = (PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*PDETR(D%NIJB:D%NIJE,JK) !& - ZQTM(:) = PRTM(:,JK)/(1.+PRTM(:,JK)) - ZTHSM(:,JK) = PTHLM(:,JK)*(1.+XLAMBDA_MF*ZQTM(:)) - ZTHS_UP(:,JK+KKL)=(ZTHS_UP(:,JK)*(1.-0.5*ZMIX2(:)) + ZTHSM(:,JK)*ZMIX2(:)) & - /(1.+0.5*ZMIX2(:)) - PRT_UP(:,JK+KKL)=(PRT_UP (:,JK)*(1.-0.5*ZMIX2(:)) + PRTM(:,JK)*ZMIX2(:)) & - /(1.+0.5*ZMIX2(:)) - ZQT_UP(:) = PRT_UP(:,JK+KKL)/(1.+PRT_UP(:,JK+KKL)) - PTHL_UP(:,JK+KKL)=ZTHS_UP(:,JK+KKL)/(1.+XLAMBDA_MF*ZQT_UP(:)) + ZQTM(D%NIJB:D%NIJE) = PRTM(D%NIJB:D%NIJE,JK)/(1.+PRTM(D%NIJB:D%NIJE,JK)) + ZTHSM(D%NIJB:D%NIJE,JK) = PTHLM(D%NIJB:D%NIJE,JK)*(1.+PARAMMF%XLAMBDA_MF*ZQTM(D%NIJB:D%NIJE)) + ZTHS_UP(D%NIJB:D%NIJE,JK+D%NKL)=(ZTHS_UP(D%NIJB:D%NIJE,JK)*(1.-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &ZTHSM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE))& + /(1.+0.5*ZMIX2(D%NIJB:D%NIJE)) + PRT_UP(D%NIJB:D%NIJE,JK+D%NKL)=(PRT_UP(D%NIJB:D%NIJE,JK)*(1.-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PRTM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)) & + /(1.+0.5*ZMIX2(D%NIJB:D%NIJE)) + ZQT_UP(D%NIJB:D%NIJE) = PRT_UP(D%NIJB:D%NIJE,JK+D%NKL)/(1.+PRT_UP(D%NIJB:D%NIJE,JK+D%NKL)) + PTHL_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZTHS_UP(D%NIJB:D%NIJE,JK+D%NKL)/(1.+PARAMMF%XLAMBDA_MF*ZQT_UP(D%NIJB:D%NIJE)) ENDWHERE IF(OMIXUV) THEN - IF(JK/=KKB) THEN - WHERE(GTEST) - PU_UP(:,JK+KKL) = (PU_UP (:,JK)*(1-0.5*ZMIX2(:)) + PUM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PUM(:,JK+KKL)-PUM(:,JK))/PDZZ(:,JK+KKL)+& - (PUM(:,JK)-PUM(:,JK-KKL))/PDZZ(:,JK)) ) & - /(1+0.5*ZMIX2(:)) - PV_UP(:,JK+KKL) = (PV_UP (:,JK)*(1-0.5*ZMIX2(:)) + PVM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PVM(:,JK+KKL)-PVM(:,JK))/PDZZ(:,JK+KKL)+& - (PVM(:,JK)-PVM(:,JK-KKL))/PDZZ(:,JK)) ) & - /(1+0.5*ZMIX2(:)) + IF(JK/=D%NKB) THEN + WHERE(GTEST(D%NIJB:D%NIJE)) + PU_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PU_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PUM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PUM(D%NIJB:D%NIJE,JK+D%NKL)-PUM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)+& + (PUM(D%NIJB:D%NIJE,JK)-PUM(D%NIJB:D%NIJE,JK-D%NKL))/PDZZ(D%NIJB:D%NIJE,JK)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) + PV_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PV_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PVM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PVM(D%NIJB:D%NIJE,JK+D%NKL)-PVM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)+& + (PVM(D%NIJB:D%NIJE,JK)-PVM(D%NIJB:D%NIJE,JK-D%NKL))/PDZZ(D%NIJB:D%NIJE,JK)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) ENDWHERE ELSE - WHERE(GTEST) - PU_UP(:,JK+KKL) = (PU_UP (:,JK)*(1-0.5*ZMIX2(:)) + PUM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PUM(:,JK+KKL)-PUM(:,JK))/PDZZ(:,JK+KKL)) ) & - /(1+0.5*ZMIX2(:)) - PV_UP(:,JK+KKL) = (PV_UP (:,JK)*(1-0.5*ZMIX2(:)) + PVM(:,JK)*ZMIX2(:)+ & - 0.5*XPRES_UV*(PZZ(:,JK+KKL)-PZZ(:,JK))*& - ((PVM(:,JK+KKL)-PVM(:,JK))/PDZZ(:,JK+KKL)) ) & - /(1+0.5*ZMIX2(:)) + WHERE(GTEST(D%NIJB:D%NIJE)) + PU_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PU_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PUM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PUM(D%NIJB:D%NIJE,JK+D%NKL)-PUM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) + PV_UP(D%NIJB:D%NIJE,JK+D%NKL) = (PV_UP(D%NIJB:D%NIJE,JK)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + &PVM(D%NIJB:D%NIJE,JK)*ZMIX2(D%NIJB:D%NIJE)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(D%NIJB:D%NIJE,JK+D%NKL)-PZZ(D%NIJB:D%NIJE,JK))*& + ((PVM(D%NIJB:D%NIJE,JK+D%NKL)-PVM(D%NIJB:D%NIJE,JK))/PDZZ(D%NIJB:D%NIJE,JK+D%NKL)) ) & + /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) ENDWHERE ENDIF ENDIF -! DO JSV=1,ISV -! IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE -! WHERE(GTEST) -! PSV_UP(:,JK+KKL,JSV) = (PSV_UP (:,JK,JSV)*(1-0.5*ZMIX2(:)) + & -! PSVM(:,JK,JSV)*ZMIX2(:)) /(1+0.5*ZMIX2(:)) -! ENDWHERE -! ENDDO + !DO JSV=1,ISV + ! IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE + ! WHERE(GTEST(D%NIJB:D%NIJE)) + ! PSV_UP(D%NIJB:D%NIJE,JK+KKL,JSV) = (PSV_UP(D%NIJB:D%NIJE,JK,JSV)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & + ! PSVM(D%NIJB:D%NIJE,JK,JSV)*ZMIX2(D%NIJB:D%NIJE)) /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) + ! ENDWHERE + !ENDDO -! Compute non cons. var. at level JK+KKL - ZRC_UP(:)=PRC_UP(:,JK) ! guess = level just below - ZRI_UP(:)=PRI_UP(:,JK) ! guess = level just below - ZRV_UP(:)=PRV_UP(:,JK) - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE_UP(:,JK+KKL),ZPRES_F(:,JK+KKL), & - PTHL_UP(:,JK+KKL),PRT_UP(:,JK+KKL),ZTH_UP(:,JK+KKL), & - ZRV_UP(:),ZRC_UP(:),ZRI_UP(:),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.) - WHERE(GTEST) - ZT_UP(:) = ZTH_UP(:,JK+KKL)*PEXNM(:,JK+KKL) - ZCP(:) = XCPD + XCL * ZRC_UP(:) - ZLVOCPEXN(:)=(XLVTT + (XCPV-XCL) * (ZT_UP(:)-XTT) ) / ZCP(:) / PEXNM(:,JK+KKL) - PRC_UP(:,JK+KKL)=MIN(0.5E-3,ZRC_UP(:)) ! On ne peut depasser 0.5 g/kg (autoconversion donc elimination !) - PTHL_UP(:,JK+KKL) = PTHL_UP(:,JK+KKL)+ZLVOCPEXN(:)*(ZRC_UP(:)-PRC_UP(:,JK+KKL)) - PRV_UP(:,JK+KKL)=ZRV_UP(:) - PRI_UP(:,JK+KKL)=ZRI_UP(:) - PRT_UP(:,JK+KKL) = PRC_UP(:,JK+KKL) + PRV_UP(:,JK+KKL) - PRSAT_UP(:,JK+KKL) = ZRSATW(:)*(1-PFRAC_ICE_UP(:,JK+KKL)) + ZRSATI(:)*PFRAC_ICE_UP(:,JK+KKL) + ! Compute non cons. var. at level JK+KKL + ZRC_UP(D%NIJB:D%NIJE)=PRC_UP(D%NIJB:D%NIJE,JK) ! guess = level just below + ZRI_UP(D%NIJB:D%NIJE)=PRI_UP(D%NIJB:D%NIJE,JK) ! guess = level just below + ZRV_UP(D%NIJB:D%NIJE)=PRV_UP(D%NIJB:D%NIJE,JK) + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) + CALL TH_R_FROM_THL_RT(CST,NEB, D%NIJT, HFRAC_ICE,PFRAC_ICE_UP(:,JK+D%NKL),ZPRES_F(:,JK+D%NKL), & + PTHL_UP(:,JK+D%NKL),PRT_UP(:,JK+D%NKL),ZTH_UP(:,JK+D%NKL), & + ZRV_UP(:),ZRC_UP(:),ZRI_UP(:),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE(GTEST(D%NIJB:D%NIJE)) + ZT_UP(D%NIJB:D%NIJE) = ZTH_UP(D%NIJB:D%NIJE,JK+D%NKL)*PEXNM(D%NIJB:D%NIJE,JK+D%NKL) + ZCP(D%NIJB:D%NIJE) = CST%XCPD + CST%XCL * ZRC_UP(D%NIJB:D%NIJE) + ZLVOCPEXN(D%NIJB:D%NIJE)=(CST%XLVTT + (CST%XCPV-CST%XCL) * (ZT_UP(D%NIJB:D%NIJE)-CST%XTT) ) / & + &ZCP(D%NIJB:D%NIJE) / PEXNM(D%NIJB:D%NIJE,JK+D%NKL) + PRC_UP(D%NIJB:D%NIJE,JK+D%NKL)=MIN(0.5E-3,ZRC_UP(D%NIJB:D%NIJE)) ! On ne peut depasser 0.5 g/kg (autoconversion donc elimination !) + PTHL_UP(D%NIJB:D%NIJE,JK+D%NKL) = PTHL_UP(D%NIJB:D%NIJE,JK+D%NKL)+ & + & ZLVOCPEXN(D%NIJB:D%NIJE)*(ZRC_UP(D%NIJB:D%NIJE)-PRC_UP(D%NIJB:D%NIJE,JK+D%NKL)) + PRV_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZRV_UP(D%NIJB:D%NIJE) + PRI_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZRI_UP(D%NIJB:D%NIJE) + PRT_UP(D%NIJB:D%NIJE,JK+D%NKL) = PRC_UP(D%NIJB:D%NIJE,JK+D%NKL) + PRV_UP(D%NIJB:D%NIJE,JK+D%NKL) + PRSAT_UP(D%NIJB:D%NIJE,JK+D%NKL) = ZRSATW(D%NIJB:D%NIJE)*(1-PFRAC_ICE_UP(D%NIJB:D%NIJE,JK+D%NKL)) + & + & ZRSATI(D%NIJB:D%NIJE)*PFRAC_ICE_UP(D%NIJB:D%NIJE,JK+D%NKL) ENDWHERE -! Compute the updraft theta_v, buoyancy and w**2 for level JK+1 - WHERE(GTEST) -! PTHV_UP(:,JK+KKL) = ZTH_UP(:,JK+KKL)*((1+ZRVORD*PRV_UP(:,JK+KKL))/(1+PRT_UP(:,JK+KKL))) - PTHV_UP(:,JK+KKL) = ZTH_UP(:,JK+KKL)*(1.+0.608*PRV_UP(:,JK+KKL) - PRC_UP(:,JK+KKL)) - ENDWHERE + ! Compute the updraft theta_v, buoyancy and w**2 for level JK+1 + WHERE(GTEST(D%NIJB:D%NIJE)) + !PTHV_UP(D%NIJB:D%NIJE,JK+KKL) = ZTH_UP(D%NIJB:D%NIJE,JK+KKL)*((1+ZRVORD*PRV_UP(D%NIJB:D%NIJE,JK+KKL))/(1+PRT_UP(D%NIJB:D%NIJE,JK+KKL))) + PTHV_UP(D%NIJB:D%NIJE,JK+D%NKL) = ZTH_UP(D%NIJB:D%NIJE,JK+D%NKL)* & + & (1.+0.608*PRV_UP(D%NIJB:D%NIJE,JK+D%NKL) - PRC_UP(D%NIJB:D%NIJE,JK+D%NKL)) + ENDWHERE -! Test if the updraft has reach the ETL - GTESTETL(:)=.FALSE. - WHERE (GTEST.AND.(PBUO_INTEG(:,JK)<=0.)) - KKETL(:) = JK+KKL - GTESTETL(:)=.TRUE. + ! Test if the updraft has reach the ETL + GTESTETL(D%NIJB:D%NIJE)=.FALSE. + WHERE (GTEST(D%NIJB:D%NIJE).AND.(PBUO_INTEG(D%NIJB:D%NIJE,JK)<=0.)) + KKETL(D%NIJB:D%NIJE) = JK+D%NKL + GTESTETL(D%NIJB:D%NIJE)=.TRUE. ENDWHERE -! Test is we have reached the top of the updraft - - WHERE (GTEST.AND.((ZW_UP2(:,JK+KKL)<=ZEPS))) - ZW_UP2(:,JK+KKL)=ZEPS - GTEST(:)=.FALSE. - PTHL_UP(:,JK+KKL)=ZTHLM_F(:,JK+KKL) - PRT_UP(:,JK+KKL)=ZRTM_F(:,JK+KKL) - PRC_UP(:,JK+KKL)=0. - PRI_UP(:,JK+KKL)=0. - PRV_UP(:,JK+KKL)=0. - PTHV_UP(:,JK+KKL)=ZTHVM_F(:,JK+KKL) - PFRAC_UP(:,JK+KKL)=0. - KKCTL(:)=JK+KKL + ! Test is we have reached the top of the updraft + WHERE (GTEST(D%NIJB:D%NIJE).AND.((ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL)<=ZEPS))) + ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL)=ZEPS + GTEST(D%NIJB:D%NIJE)=.FALSE. + PTHL_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZTHLM_F(D%NIJB:D%NIJE,JK+D%NKL) + PRT_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZRTM_F(D%NIJB:D%NIJE,JK+D%NKL) + PRC_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + PRI_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + PRV_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + PTHV_UP(D%NIJB:D%NIJE,JK+D%NKL)=ZTHVM_F(D%NIJB:D%NIJE,JK+D%NKL) + PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)=0. + KKCTL(D%NIJB:D%NIJE)=JK+D%NKL ENDWHERE - + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ENDDO -! Closure assumption for mass flux at KKB+1 level (Mass flux is supposed to be 0 at KKB level !) +! Closure assumption for mass flux at KKB+1 level (Mass flux is supposed to be 0 at KKB level !) ! Hourdin et al 2002 formulation -ZZTOP(:) = MAX(ZZTOP(:),ZEPS) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZZTOP(D%NIJB:D%NIJE) = MAX(ZZTOP(D%NIJB:D%NIJE),ZEPS) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) -DO JK=KKB+KKL,KKE-KKL,KKL ! Vertical loop - WHERE(JK<=IALIM) - ZALIM_STAR_TOT(:) = ZALIM_STAR_TOT(:) + ZALIM_STAR(:,JK)*ZALIM_STAR(:,JK)*ZZDZ(:,JK)/PRHODREF(:,JK) - ENDWHERE +DO JK=D%NKB+D%NKL,D%NKE-D%NKL,D%NKL ! Vertical loop + !$mnh_expand_where(JI=D%NIJB:D%NIJE) + WHERE(JK<=IALIM(D%NIJB:D%NIJE)) + ZALIM_STAR_TOT(D%NIJB:D%NIJE) = ZALIM_STAR_TOT(D%NIJB:D%NIJE) + ZALIM_STAR(D%NIJB:D%NIJE,JK)**2* & + & ZZDZ(D%NIJB:D%NIJE,JK)/PRHODREF(D%NIJB:D%NIJE,JK) + ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ENDDO -WHERE (ZALIM_STAR_TOT*ZZTOP > ZEPS) - ZPHI(:) = ZW_MAX(:)/(XR*ZZTOP(:)*ZALIM_STAR_TOT(:)) -ENDWHERE +!$mnh_expand_where(JI=D%NIJB:D%NIJE) +WHERE (ZALIM_STAR_TOT(D%NIJB:D%NIJE)*ZZTOP(D%NIJB:D%NIJE) > ZEPS) + ZPHI(D%NIJB:D%NIJE) = ZW_MAX(D%NIJB:D%NIJE)/(PARAMMF%XR*ZZTOP(D%NIJB:D%NIJE)*ZALIM_STAR_TOT(D%NIJB:D%NIJE)) +ENDWHERE -GTEST(:) = .TRUE. -PEMF(:,KKB+KKL) = ZPHI(:)*ZZDZ(:,KKB)*ZALIM_STAR(:,KKB) +GTEST(D%NIJB:D%NIJE) = .TRUE. +PEMF(D%NIJB:D%NIJE,D%NKB+D%NKL) = ZPHI(D%NIJB:D%NIJE)*ZZDZ(D%NIJB:D%NIJE,D%NKB)*ZALIM_STAR(D%NIJB:D%NIJE,D%NKB) ! Updraft fraction must be smaller than XFRAC_UP_MAX -PFRAC_UP(:,KKB+KKL)=PEMF(:,KKB+KKL)/(SQRT(ZW_UP2(:,KKB+KKL))*ZRHO_F(:,KKB+KKL)) -PFRAC_UP(:,KKB+KKL)=MIN(XFRAC_UP_MAX,PFRAC_UP(:,KKB+KKL)) -PEMF(:,KKB+KKL) = ZRHO_F(:,KKB+KKL)*PFRAC_UP(:,KKB+KKL)*SQRT(ZW_UP2(:,KKB+KKL)) - -DO JK=KKB+KKL,KKE-KKL,KKL ! Vertical loop +PFRAC_UP(D%NIJB:D%NIJE,D%NKB+D%NKL)=PEMF(D%NIJB:D%NIJE,D%NKB+D%NKL)/ & + &(SQRT(ZW_UP2(D%NIJB:D%NIJE,D%NKB+D%NKL))*ZRHO_F(D%NIJB:D%NIJE,D%NKB+D%NKL)) +PFRAC_UP(D%NIJB:D%NIJE,D%NKB+D%NKL)=MIN(PARAMMF%XFRAC_UP_MAX,PFRAC_UP(D%NIJB:D%NIJE,D%NKB+D%NKL)) +PEMF(D%NIJB:D%NIJE,D%NKB+D%NKL) = ZRHO_F(D%NIJB:D%NIJE,D%NKB+D%NKL)*PFRAC_UP(D%NIJB:D%NIJE,D%NKB+D%NKL)* & + & SQRT(ZW_UP2(D%NIJB:D%NIJE,D%NKB+D%NKL)) +!$mnh_end_expand_where(JI=D%NIJB:D%NIJE) + +DO JK=D%NKB+D%NKL,D%NKE-D%NKL,D%NKL ! Vertical loop + !$mnh_expand_where(JI=D%NIJB:D%NIJE) - GTEST = (ZW_UP2(:,JK) > ZEPS) + GTEST(D%NIJB:D%NIJE) = (ZW_UP2(D%NIJB:D%NIJE,JK) > ZEPS) - WHERE (GTEST) - WHERE(JK<IALIM) - PEMF(:,JK+KKL) = MAX(0.,PEMF(:,JK) + ZPHI(:)*ZZDZ(:,JK)*(PENTR(:,JK) - PDETR(:,JK))) + WHERE (GTEST(D%NIJB:D%NIJE)) + WHERE(JK<IALIM(D%NIJB:D%NIJE)) + PEMF(D%NIJB:D%NIJE,JK+D%NKL) = MAX(0.,PEMF(D%NIJB:D%NIJE,JK) + ZPHI(D%NIJB:D%NIJE)*ZZDZ(D%NIJB:D%NIJE,JK)* & + & (PENTR(D%NIJB:D%NIJE,JK) - PDETR(D%NIJB:D%NIJE,JK))) ELSEWHERE - ZMIX1(:)=ZZDZ(:,JK)*(PENTR(:,JK)-PDETR(:,JK)) - PEMF(:,JK+KKL)=PEMF(:,JK)*EXP(ZMIX1(:)) + ZMIX1(D%NIJB:D%NIJE)=ZZDZ(D%NIJB:D%NIJE,JK)*(PENTR(D%NIJB:D%NIJE,JK)-PDETR(D%NIJB:D%NIJE,JK)) + PEMF(D%NIJB:D%NIJE,JK+D%NKL)=PEMF(D%NIJB:D%NIJE,JK)*EXP(ZMIX1(D%NIJB:D%NIJE)) ENDWHERE ! Updraft fraction must be smaller than XFRAC_UP_MAX - PFRAC_UP(:,JK+KKL)=PEMF(:,JK+KKL)/(SQRT(ZW_UP2(:,JK+KKL))*ZRHO_F(:,JK+KKL)) - PFRAC_UP(:,JK+KKL)=MIN(XFRAC_UP_MAX,PFRAC_UP(:,JK+KKL)) - PEMF(:,JK+KKL) = ZRHO_F(:,JK+KKL)*PFRAC_UP(:,JK+KKL)*SQRT(ZW_UP2(:,JK+KKL)) + PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)=PEMF(D%NIJB:D%NIJE,JK+D%NKL)/& + &(SQRT(ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL))*ZRHO_F(D%NIJB:D%NIJE,JK+D%NKL)) + PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)=MIN(PARAMMF%XFRAC_UP_MAX,PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)) + PEMF(D%NIJB:D%NIJE,JK+D%NKL) = ZRHO_F(D%NIJB:D%NIJE,JK+D%NKL)*PFRAC_UP(D%NIJB:D%NIJE,JK+D%NKL)*& + & SQRT(ZW_UP2(D%NIJB:D%NIJE,JK+D%NKL)) ENDWHERE - + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE) ENDDO -PW_UP(:,:)=SQRT(ZW_UP2(:,:)) -PEMF(:,KKB) =0. +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PW_UP(D%NIJB:D%NIJE,:)=SQRT(ZW_UP2(D%NIJB:D%NIJE,:)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PEMF(D%NIJB:D%NIJE,D%NKB) =0. +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! Limits the shallow convection scheme when cloud heigth is higher than 3000m. ! To do this, mass flux is multiplied by a coefficient decreasing linearly @@ -579,20 +624,32 @@ PEMF(:,KKB) =0. ! This way, all MF fluxes are diminished by this amount. ! Diagnosed cloud fraction is also multiplied by the same coefficient. ! -DO JI=1,SIZE(PTHM,1) - PDEPTH(JI) = MAX(0., PZZ(JI,KKCTL(JI)) - PZZ(JI,KKLCL(JI)) ) +DO JI=D%NIJB,D%NIJE + PDEPTH(JI) = MAX(0., PZZ(JI,KKCTL(JI)) - PZZ(JI,KKLCL(JI)) ) END DO -GWORK1(:)= (GTESTLCL(:) .AND. (PDEPTH(:) > ZDEPTH_MAX1) ) -GWORK2(:,:) = SPREAD( GWORK1(:), DIM=2, NCOPIES=IKU ) -ZCOEF(:,:) = SPREAD( (1.-(PDEPTH(:)-ZDEPTH_MAX1)/(ZDEPTH_MAX2-ZDEPTH_MAX1)), DIM=2, NCOPIES=IKU) -ZCOEF=MIN(MAX(ZCOEF,0.),1.) -WHERE (GWORK2) - PEMF(:,:) = PEMF(:,:) * ZCOEF(:,:) - PFRAC_UP(:,:) = PFRAC_UP(:,:) * ZCOEF(:,:) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +GWORK1(D%NIJB:D%NIJE)= (GTESTLCL(D%NIJB:D%NIJE) .AND. (PDEPTH(D%NIJB:D%NIJE) > ZDEPTH_MAX1) ) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +DO JK=1,D%NKT + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + GWORK2(D%NIJB:D%NIJE,JK) = GWORK1(D%NIJB:D%NIJE) + ZCOEF(D%NIJB:D%NIJE,JK) = (1.-(PDEPTH(D%NIJB:D%NIJE)-ZDEPTH_MAX1)/(ZDEPTH_MAX2-ZDEPTH_MAX1)) + ZCOEF(D%NIJB:D%NIJE,JK)=MIN(MAX(ZCOEF(D%NIJB:D%NIJE,JK),0.),1.) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +ENDDO +!$mnh_expand_where(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +WHERE (GWORK2(D%NIJB:D%NIJE,:)) + PEMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:) * ZCOEF(D%NIJB:D%NIJE,:) + PFRAC_UP(D%NIJB:D%NIJE,:) = PFRAC_UP(D%NIJB:D%NIJE,:) * ZCOEF(D%NIJB:D%NIJE,:) ENDWHERE +!$mnh_end_expand_where(JI=D%NIJB:D%NIJE,JK=1:D%NKT) IF (LHOOK) CALL DR_HOOK('COMPUTE_UPDRAF_RAHA',1,ZHOOK_HANDLE) - +! +CONTAINS +INCLUDE "th_r_from_thl_rt.func.h" +INCLUDE "compute_frac_ice.func.h" +! END SUBROUTINE COMPUTE_UPDRAFT_RAHA END MODULE MODE_COMPUTE_UPDRAFT_RAHA diff --git a/src/common/turb/mode_compute_updraft_rhcj10.F90 b/src/common/turb/mode_compute_updraft_rhcj10.F90 index 0392012db244776f3720593fba148057f7a72a29..84cf4e7ebc17e54c00bb7be618b6b46bf9ed6ef1 100644 --- a/src/common/turb/mode_compute_updraft_rhcj10.F90 +++ b/src/common/turb/mode_compute_updraft_rhcj10.F90 @@ -10,7 +10,8 @@ IMPLICIT NONE CONTAINS ! -SUBROUTINE COMPUTE_UPDRAFT_RHCJ10(KKA,KKB,KKE,KKU,KKL,HFRAC_ICE, & +SUBROUTINE COMPUTE_UPDRAFT_RHCJ10(D, CST, NEB, PARAMMF, TURB, CSTURB, & + KSV, HFRAC_ICE, & OENTR_DETR,OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PZZ,PDZZ, & @@ -60,10 +61,13 @@ SUBROUTINE COMPUTE_UPDRAFT_RHCJ10(KKA,KKB,KKE,KKU,KKL,HFRAC_ICE, & !* 0. DECLARATIONS ! ------------ ! -USE MODD_CST -USE MODD_PARAM_MFSHALL_n -USE MODD_TURB_n, ONLY : CTURBLEN -USE MODE_TH_R_FROM_THL_RT_1D, ONLY: TH_R_FROM_THL_RT_1D +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_NEB, ONLY: NEB_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +USE MODD_TURB_n, ONLY: TURB_t +USE MODD_CTURB, ONLY: CSTURB_t +! USE MODI_SHUMAN_MF, ONLY: MZF_MF, MZM_MF, GZ_M_W_MF USE MODE_COMPUTE_BL89_ML, ONLY: COMPUTE_BL89_ML @@ -76,115 +80,119 @@ IMPLICIT NONE !* 1.1 Declaration of Arguments ! ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(NEB_t), INTENT(IN) :: NEB +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +TYPE(TURB_t), INTENT(IN) :: TURB +TYPE(CSTURB_t), INTENT(IN) :: CSTURB +INTEGER, INTENT(IN) :: KSV CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE ! partition liquid/ice scheme LOGICAL, INTENT(IN) :: OENTR_DETR! flag to recompute entrainment, detrainment and mass flux LOGICAL, INTENT(IN) :: OMIXUV ! True if mixing of momentum LOGICAL, INTENT(IN) :: ONOMIXLG ! False if mixing of lagrangian tracer INTEGER, INTENT(IN) :: KSV_LGBEG ! first index of lag. tracer INTEGER, INTENT(IN) :: KSV_LGEND ! last index of lag. tracer -REAL, DIMENSION(:,:), INTENT(IN) :: PZZ ! Height at the flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Metrics coefficient +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PZZ ! Height at the flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Metrics coefficient -REAL, DIMENSION(:), INTENT(IN) :: PSFTH,PSFRV +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PSFTH,PSFRV ! normal surface fluxes of theta,rv,(u,v) parallel to the orography -REAL, DIMENSION(:,:), INTENT(IN) :: PPABSM ! Pressure at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODREF ! dry density of the +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PPABSM ! Pressure at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODREF ! dry density of the ! reference state -REAL, DIMENSION(:,:), INTENT(IN) :: PUM ! u mean wind -REAL, DIMENSION(:,:), INTENT(IN) :: PVM ! v mean wind -REAL, DIMENSION(:,:), INTENT(IN) :: PTKEM ! TKE at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PUM ! u mean wind +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PVM ! v mean wind +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTKEM ! TKE at t-dt ! !REAL, DIMENSION(:,:), INTENT(IN) :: PEXNM ! Exner function at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM ! pot. temp. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PRVM ! vapor mixing ratio at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM,PRTM ! cons. var. at t-dt - -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSVM ! scalar var. at t-dt - -REAL, DIMENSION(:,:), INTENT(OUT) :: PTHL_UP,PRT_UP ! updraft properties -REAL, DIMENSION(:,:), INTENT(OUT) :: PU_UP, PV_UP ! updraft wind components -REAL, DIMENSION(:,:), INTENT(INOUT):: PRV_UP,PRC_UP ! updraft rv, rc -REAL, DIMENSION(:,:), INTENT(INOUT):: PRI_UP ! updraft ri -REAL, DIMENSION(:,:), INTENT(INOUT):: PTHV_UP ! updraft THv -REAL, DIMENSION(:,:), INTENT(INOUT):: PW_UP,PFRAC_UP ! updraft w, fraction -REAL, DIMENSION(:,:), INTENT(INOUT):: PFRAC_ICE_UP ! liquid/solid fraction in updraft -REAL, DIMENSION(:,:), INTENT(INOUT):: PRSAT_UP ! Rsat - -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSV_UP ! updraft scalar var. +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM ! pot. temp. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRVM ! vapor mixing ratio at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM,PRTM ! cons. var. at t-dt + +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(IN) :: PSVM ! scalar var. at t-dt + +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PTHL_UP,PRT_UP ! updraft properties +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PU_UP, PV_UP ! updraft wind components +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PRV_UP,PRC_UP ! updraft rv, rc +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PRI_UP ! updraft ri +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PTHV_UP ! updraft THv +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PW_UP,PFRAC_UP ! updraft w, fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PFRAC_ICE_UP ! liquid/solid fraction in updraft +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PRSAT_UP ! Rsat + +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(OUT) :: PSV_UP ! updraft scalar var. -REAL, DIMENSION(:,:), INTENT(INOUT):: PEMF,PDETR,PENTR ! Mass_flux, +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PEMF,PDETR,PENTR ! Mass_flux, ! detrainment,entrainment -REAL, DIMENSION(:,:), INTENT(INOUT) :: PBUO_INTEG ! Integrated Buoyancy -INTEGER, DIMENSION(:), INTENT(INOUT):: KKLCL,KKETL,KKCTL! LCL, ETL, CTL -REAL, DIMENSION(:), INTENT(OUT) :: PDEPTH ! Deepness of cloud +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PBUO_INTEG ! Integrated Buoyancy +INTEGER, DIMENSION(D%NIJT), INTENT(INOUT):: KKLCL,KKETL,KKCTL! LCL, ETL, CTL +REAL, DIMENSION(D%NIJT), INTENT(OUT) :: PDEPTH ! Deepness of cloud ! 1.2 Declaration of local variables ! ! Mean environment variables at t-dt at flux point -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZTHM_F,ZRVM_F ! Theta,rv of +REAL, DIMENSION(D%NIJT,D%NKT) :: ZTHM_F,ZRVM_F ! Theta,rv of ! updraft environnement -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZRTM_F, ZTHLM_F, ZTKEM_F ! rt, thetal,TKE,pressure, -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZUM_F,ZVM_F,ZRHO_F ! density,momentum -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZPRES_F,ZTHVM_F ! interpolated at the flux point -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZG_O_THVREF ! g*ThetaV ref -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZW_UP2 ! w**2 of the updraft +REAL, DIMENSION(D%NIJT,D%NKT) :: ZRTM_F, ZTHLM_F, ZTKEM_F ! rt, thetal,TKE,pressure, +REAL, DIMENSION(D%NIJT,D%NKT) :: ZUM_F,ZVM_F,ZRHO_F ! density,momentum +REAL, DIMENSION(D%NIJT,D%NKT) :: ZPRES_F,ZTHVM_F ! interpolated at the flux point +REAL, DIMENSION(D%NIJT,D%NKT) :: ZG_O_THVREF ! g*ThetaV ref +REAL, DIMENSION(D%NIJT,D%NKT) :: ZW_UP2 ! w**2 of the updraft -REAL, DIMENSION(SIZE(PSVM,1),SIZE(PTHM,2),SIZE(PSVM,3)) :: ZSVM_F ! scalar variables +REAL, DIMENSION(D%NIJT,D%NKT,KSV) :: ZSVM_F ! scalar variables -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZTH_UP ! updraft THETA +REAL, DIMENSION(D%NIJT,D%NKT) :: ZTH_UP ! updraft THETA !REAL, DIMENSION(SIZE(PTHM,1)) :: ZT_UP ! updraft T !REAL, DIMENSION(SIZE(PTHM,1)) :: ZLVOCPEXN ! updraft L !REAL, DIMENSION(SIZE(PTHM,1)) :: ZCP ! updraft cp -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZBUO ! Buoyancy +REAL, DIMENSION(D%NIJT,D%NKT) :: ZBUO ! Buoyancy !REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZTHS_UP,ZTHSM -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZCOEF ! diminution coefficient for too high clouds +REAL, DIMENSION(D%NIJT,D%NKT) :: ZCOEF ! diminution coefficient for too high clouds REAL :: ZWTHVSURF ! Surface w'thetav' REAL :: ZRVORD ! RV/RD -REAL, DIMENSION(SIZE(PTHM,1)) :: ZMIX1,ZMIX2 +REAL, DIMENSION(D%NIJT) :: ZMIX1,ZMIX2 -REAL, DIMENSION(SIZE(PTHM,1)) :: ZLUP ! Upward Mixing length from the ground +REAL, DIMENSION(D%NIJT) :: ZLUP ! Upward Mixing length from the ground -INTEGER :: ISV ! Number of scalar variables -INTEGER :: IKU,IIJU ! array size in k INTEGER :: JK,JI,JSV ! loop counters -LOGICAL, DIMENSION(SIZE(PTHM,1)) :: GTEST,GTESTLCL +LOGICAL, DIMENSION(D%NIJT) :: GTEST,GTESTLCL ! Test if the ascent continue, if LCL or ETL is reached LOGICAL :: GLMIX ! To choose upward or downward mixing length -LOGICAL, DIMENSION(SIZE(PTHM,1)) :: GWORK1 -LOGICAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: GWORK2 +LOGICAL, DIMENSION(D%NIJT) :: GWORK1 +LOGICAL, DIMENSION(D%NIJT,D%NKT) :: GWORK2 INTEGER :: ITEST -REAL, DIMENSION(SIZE(PTHM,1)) :: ZRC_UP, ZRI_UP, ZRV_UP, ZRSATW, ZRSATI +REAL, DIMENSION(D%NIJT) :: ZRC_UP, ZRI_UP, ZRV_UP, ZRSATW, ZRSATI -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZZDZ +REAL, DIMENSION(D%NIJT,D%NKT) :: ZZDZ -REAL, DIMENSION(SIZE(PTHM,1)) :: ZTEST,ZDZ,ZWUP_MEAN ! -REAL, DIMENSION(SIZE(PTHM,1)) :: ZCOE,ZWCOE,ZBUCOE -REAL, DIMENSION(SIZE(PTHM,1)) :: ZDETR_BUO, ZDETR_RT -REAL, DIMENSION(SIZE(PTHM,1)) :: ZW_MAX ! w**2 max of the updraft -REAL, DIMENSION(SIZE(PTHM,1)) :: ZZTOP ! Top of the updraft +REAL, DIMENSION(D%NIJT) :: ZTEST,ZDZ,ZWUP_MEAN ! +REAL, DIMENSION(D%NIJT) :: ZCOE,ZWCOE,ZBUCOE +REAL, DIMENSION(D%NIJT) :: ZDETR_BUO, ZDETR_RT +REAL, DIMENSION(D%NIJT) :: ZW_MAX ! w**2 max of the updraft +REAL, DIMENSION(D%NIJT) :: ZZTOP ! Top of the updraft !REAL, DIMENSION(SIZE(PTHM,1)) :: ZQTM,ZQT_UP REAL :: ZDEPTH_MAX1, ZDEPTH_MAX2 ! control auto-extinction process REAL :: ZTMAX,ZRMAX, ZEPS ! control value -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZSHEAR,ZDUDZ,ZDVDZ ! vertical wind shear +REAL, DIMENSION(D%NIJT,D%NKT) :: ZSHEAR,ZDUDZ,ZDVDZ ! vertical wind shear +! +REAL, DIMENSION(D%NIJT,D%NKT) :: ZWK +REAL, DIMENSION(D%NIJT,16) :: ZBUF +! REAL(KIND=JPRB) :: ZHOOK_HANDLE IF (LHOOK) CALL DR_HOOK('COMPUTE_UPDRAFT_RHCJ10',0,ZHOOK_HANDLE) @@ -198,7 +206,7 @@ ZEPS=1.E-15 ! INITIALISATION ! Initialisation of the constants -ZRVORD = (XRV / XRD) +ZRVORD = (CST%XRV / CST%XRD) ! depth are different in compute_updraft (3000. and 4000.) ==> impact is small ZDEPTH_MAX1=4500. ! clouds with depth infeRIOr to this value are keeped untouched @@ -206,17 +214,11 @@ ZDEPTH_MAX2=5000. ! clouds with depth superior to this value are suppressed ! Local variables, internal domain -! Internal Domain - -IKU=SIZE(PTHM,2) -IIJU =SIZE(PTHM,1) -!number of scalar variables -ISV=SIZE(PSVM,3) ! Initialisation of intersesting Level :LCL,ETL,CTL -KKLCL(:)=KKE -KKETL(:)=KKE -KKCTL(:)=KKE +KKLCL(:)=D%NKE +KKETL(:)=D%NKE +KKCTL(:)=D%NKE ! ! Initialisation @@ -240,128 +242,149 @@ ZBUO =0. !no ice cloud coded yet PRI_UP(:,:)=0. PFRAC_ICE_UP(:,:)=0. -PRSAT_UP(:,:)=PRVM(:,:) ! should be initialised correctly but is (normaly) not used +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PRSAT_UP(D%NIJB:D%NIJE,:)=PRVM(D%NIJB:D%NIJE,:) ! should be initialised correctly but is (normaly) not used +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! Initialisation of environment variables at t-dt ! variables at flux level -ZTHLM_F(:,:) = MZM_MF(PTHLM(:,:), KKA, KKU, KKL) -ZRTM_F (:,:) = MZM_MF(PRTM(:,:), KKA, KKU, KKL) -ZUM_F (:,:) = MZM_MF(PUM(:,:), KKA, KKU, KKL) -ZVM_F (:,:) = MZM_MF(PVM(:,:), KKA, KKU, KKL) -ZTKEM_F(:,:) = MZM_MF(PTKEM(:,:), KKA, KKU, KKL) +CALL MZM_MF(D, PTHLM(:,:), ZTHLM_F(:,:)) +CALL MZM_MF(D, PRTM(:,:), ZRTM_F(:,:)) +CALL MZM_MF(D, PUM(:,:), ZUM_F(:,:)) +CALL MZM_MF(D, PVM(:,:), ZVM_F(:,:)) +CALL MZM_MF(D, PTKEM(:,:), ZTKEM_F(:,:)) ! This updraft is not yet ready to use scalar variables !DO JSV=1,ISV ! IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE ! *** SR merge AROME/Meso-nh: following two lines come from the AROME version -! ZSVM_F(:,KKB:IKU,JSV) = 0.5*(PSVM(:,KKB:IKU,JSV)+PSVM(:,1:IKU-1,JSV)) -! ZSVM_F(:,1,JSV) = ZSVM_F(:,KKB,JSV) +! ZSVM_F(D%NIJB:D%NIJE,KKB:IKU,JSV) = 0.5*(PSVM(D%NIJB:D%NIJE,KKB:IKU,JSV)+PSVM(D%NIJB:D%NIJE,1:IKU-1,JSV)) +! ZSVM_F(D%NIJB:D%NIJE,1,JSV) = ZSVM_F(D%NIJB:D%NIJE,KKB,JSV) ! *** the following single line comes from the Meso-NH version -! ZSVM_F(:,:,JSV) = MZM_MF(KKA,KKU,KKL,PSVM(:,:,JSV)) +! ZSVM_F(D%NIJB:D%NIJE,:,JSV) = MZM_MF(KKA,KKU,KKL,PSVM(D%NIJB:D%NIJE,:,JSV)) !END DO ! Initialisation of updraft characteristics -PTHL_UP(:,:)=ZTHLM_F(:,:) -PRT_UP(:,:)=ZRTM_F(:,:) -PU_UP(:,:)=ZUM_F(:,:) -PV_UP(:,:)=ZVM_F(:,:) -PSV_UP(:,:,:)=0. +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PTHL_UP(D%NIJB:D%NIJE,:)=ZTHLM_F(D%NIJB:D%NIJE,:) +PRT_UP(D%NIJB:D%NIJE,:)=ZRTM_F(D%NIJB:D%NIJE,:) +PU_UP(D%NIJB:D%NIJE,:)=ZUM_F(D%NIJB:D%NIJE,:) +PV_UP(D%NIJB:D%NIJE,:)=ZVM_F(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PSV_UP(D%NIJB:D%NIJE,:,:)=0. ! This updraft is not yet ready to use scalar variables !IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) then -! PSV_UP(:,:,:)=ZSVM_F(:,:,:) +! PSV_UP(D%NIJB:D%NIJE,:,:)=ZSVM_F(D%NIJB:D%NIJE,:,:) !ENDIF ! Computation or initialisation of updraft characteristics at the KKB level ! thetal_up,rt_up,thetaV_up, w,Buoyancy term and mass flux (PEMF) -DO JI=1,IIJU +DO JI=D%NIJB,D%NIJE !PTHL_UP(JI,KKB)= ZTHLM_F(JI,KKB)+MAX(0.,MIN(ZTMAX,(PSFTH(JI)/SQRT(ZTKEM_F(JI,KKB)))*XALP_PERT)) !PRT_UP(JI,KKB) = ZRTM_F(JI,KKB)+MAX(0.,MIN(ZRMAX,(PSFRV(JI)/SQRT(ZTKEM_F(JI,KKB)))*XALP_PERT)) - PTHL_UP(JI,KKB)= ZTHLM_F(JI,KKB) - PRT_UP(JI,KKB) = ZRTM_F(JI,KKB) + PTHL_UP(JI,D%NKB)= ZTHLM_F(JI,D%NKB) + PRT_UP(JI,D%NKB) = ZRTM_F(JI,D%NKB) !ZQT_UP(JI) = PRT_UP(JI,KKB)/(1.+PRT_UP(JI,KKB)) !ZTHS_UP(JI,KKB)=PTHL_UP(JI,KKB)*(1.+XLAMBDA_MF*ZQT_UP(JI)) ENDDO -ZTHM_F (:,:) = MZM_MF(PTHM (:,:), KKA, KKU, KKL) -ZPRES_F(:,:) = MZM_MF(PPABSM(:,:), KKA, KKU, KKL) -ZRHO_F (:,:) = MZM_MF(PRHODREF(:,:), KKA, KKU, KKL) -ZRVM_F (:,:) = MZM_MF(PRVM(:,:), KKA, KKU, KKL) +CALL MZM_MF(D, PTHM (:,:), ZTHM_F(:,:)) +CALL MZM_MF(D, PPABSM(:,:), ZPRES_F(:,:)) +CALL MZM_MF(D, PRHODREF(:,:), ZRHO_F(:,:)) +CALL MZM_MF(D, PRVM(:,:), ZRVM_F(:,:)) ! thetav at mass and flux levels -DO JK=1,IKU - DO JI=1,IIJU +DO JK=1,D%NKT + DO JI=d%NIB,D%NIJE ZTHVM_F(JI,JK)=ZTHM_F(JI,JK)*((1.+ZRVORD*ZRVM_F(JI,JK))/(1.+ZRTM_F(JI,JK))) ENDDO ENDDO -PTHV_UP(:,:)= ZTHVM_F(:,:) -PRV_UP (:,:)= ZRVM_F (:,:) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PTHV_UP(D%NIJB:D%NIJE,:)= ZTHVM_F(D%NIJB:D%NIJE,:) +PRV_UP(D%NIJB:D%NIJE,:)= ZRVM_F(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ZW_UP2(:,:)=ZEPS -!ZW_UP2(:,KKB) = MAX(0.0001,(3./6.)*ZTKEM_F(:,KKB)) -ZW_UP2(:,KKB) = MAX(0.0001,(2./3.)*ZTKEM_F(:,KKB)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +!ZW_UP2(D%NIJB:D%NIJE,KKB) = MAX(0.0001,(3./6.)*ZTKEM_F(D%NIJB:D%NIJE,KKB)) +ZW_UP2(D%NIJB:D%NIJE,D%NKB) = MAX(0.0001,(2./3.)*ZTKEM_F(D%NIJB:D%NIJE,D%NKB)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! Computation of non conservative variable for the KKB level of the updraft ! (all or nothing ajustement) -PRC_UP(:,KKB)=0. -PRI_UP(:,KKB)=0. -CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE_UP(:,KKB),ZPRES_F(:,KKB), & - PTHL_UP(:,KKB),PRT_UP(:,KKB),ZTH_UP(:,KKB), & - PRV_UP(:,KKB),PRC_UP(:,KKB),PRI_UP(:,KKB),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PRC_UP(D%NIJB:D%NIJE,D%NKB)=0. +PRI_UP(D%NIJB:D%NIJE,D%NKB)=0. +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +CALL TH_R_FROM_THL_RT(CST,NEB,D%NIJT,HFRAC_ICE,PFRAC_ICE_UP(:,D%NKB),ZPRES_F(:,D%NKB), & + PTHL_UP(:,D%NKB),PRT_UP(:,D%NKB),ZTH_UP(:,D%NKB), & + PRV_UP(:,D%NKB),PRC_UP(:,D%NKB),PRI_UP(:,D%NKB),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) -DO JI=1,IIJU +DO JI=D%NIJB,D%NIJE ! compute updraft thevav and buoyancy term at KKB level - PTHV_UP(JI,KKB) = ZTH_UP(JI,KKB)*((1+ZRVORD*PRV_UP(JI,KKB))/(1+PRT_UP(JI,KKB))) + PTHV_UP(JI,D%NKB) = ZTH_UP(JI,D%NKB)*((1+ZRVORD*PRV_UP(JI,D%NKB))/(1+PRT_UP(JI,D%NKB))) ! compute mean rsat in updraft - PRSAT_UP(JI,KKB) = ZRSATW(JI)*(1-PFRAC_ICE_UP(JI,KKB)) + ZRSATI(JI)*PFRAC_ICE_UP(JI,KKB) + PRSAT_UP(JI,D%NKB) = ZRSATW(JI)*(1-PFRAC_ICE_UP(JI,D%NKB)) + ZRSATI(JI)*PFRAC_ICE_UP(JI,D%NKB) ENDDO !Tout est commente pour tester dans un premier temps la separation en deux de la ! boucle verticale, une pour w et une pour PEMF -ZG_O_THVREF=XG/ZTHVM_F +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +ZG_O_THVREF(D%NIJB:D%NIJE,:)=CST%XG/ZTHVM_F(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! Calcul de la fermeture de Julien Pergaut comme limite max de PHY -DO JK=KKB,KKE-KKL,KKL ! Vertical loop - DO JI=1,IIJU - ZZDZ(JI,JK) = MAX(ZEPS,PZZ(JI,JK+KKL)-PZZ(JI,JK)) ! <== Delta Z between two flux level +DO JK=D%NKB,D%NKE-D%NKL,D%NKL ! Vertical loop + DO JI=D%NIJB,D%NIJE + ZZDZ(JI,JK) = MAX(ZEPS,PZZ(JI,JK+D%NKL)-PZZ(JI,JK)) ! <== Delta Z between two flux level ENDDO ENDDO ! compute L_up GLMIX=.TRUE. -ZTKEM_F(:,KKB)=0. +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZTKEM_F(D%NIJB:D%NIJE,D%NKB)=0. +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! -IF(CTURBLEN=='RM17') THEN - ZDUDZ = MZF_MF(GZ_M_W_MF(PUM,PDZZ, KKA, KKU, KKL), KKA, KKU, KKL) - ZDVDZ = MZF_MF(GZ_M_W_MF(PVM,PDZZ, KKA, KKU, KKL), KKA, KKU, KKL) - ZSHEAR = SQRT(ZDUDZ*ZDUDZ + ZDVDZ*ZDVDZ) +IF(TURB%CTURBLEN=='RM17') THEN + CALL GZ_M_W_MF(D, PUM, PDZZ, ZWK) + CALL MZF_MF(D, ZWK, ZDUDZ) + CALL GZ_M_W_MF(D, PVM, PDZZ, ZWK) + CALL MZF_MF(D, ZWK, ZDVDZ) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + ZSHEAR(D%NIJB:D%NIJE,:) = SQRT(ZDUDZ(D%NIJB:D%NIJE,:)**2 + ZDVDZ(D%NIJB:D%NIJE,:)**2) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ELSE - ZSHEAR = 0. !no shear in bl89 mixing length + ZSHEAR(D%NIJB:D%NIJE,:) = 0. !no shear in bl89 mixing length END IF ! -CALL COMPUTE_BL89_ML(KKA,KKB,KKE,KKU,KKL,PDZZ,ZTKEM_F(:,KKB),ZG_O_THVREF(:,KKB), & - ZTHVM_F,KKB,GLMIX,.TRUE.,ZSHEAR,ZLUP) -ZLUP(:)=MAX(ZLUP(:),1.E-10) +CALL COMPUTE_BL89_ML(D, CST, CSTURB, PDZZ,ZTKEM_F(:,D%NKB),ZG_O_THVREF(:,D%NKB), & + ZTHVM_F,D%NKB,GLMIX,.TRUE.,ZSHEAR,ZLUP) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZLUP(D%NIJB:D%NIJE)=MAX(ZLUP(D%NIJB:D%NIJE),1.E-10) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) -DO JI=1,IIJU +DO JI=D%NIJB,D%NIJE ! Compute Buoyancy flux at the ground - ZWTHVSURF = (ZTHVM_F(JI,KKB)/ZTHM_F(JI,KKB))*PSFTH(JI)+ & - (0.61*ZTHM_F(JI,KKB))*PSFRV(JI) + ZWTHVSURF = (ZTHVM_F(JI,D%NKB)/ZTHM_F(JI,D%NKB))*PSFTH(JI)+ & + (0.61*ZTHM_F(JI,D%NKB))*PSFRV(JI) ! Mass flux at KKB level (updraft triggered if PSFTH>0.) IF (ZWTHVSURF>0.010) THEN ! <== Not 0 Important to have stratocumulus !!!!! - PEMF(JI,KKB) = XCMF * ZRHO_F(JI,KKB) * ((ZG_O_THVREF(JI,KKB))*ZWTHVSURF*ZLUP(JI))**(1./3.) - PFRAC_UP(JI,KKB)=MIN(PEMF(JI,KKB)/(SQRT(ZW_UP2(JI,KKB))*ZRHO_F(JI,KKB)),XFRAC_UP_MAX) + PEMF(JI,D%NKB) = PARAMMF%XCMF * ZRHO_F(JI,D%NKB) * ((ZG_O_THVREF(JI,D%NKB))*ZWTHVSURF*ZLUP(JI))**(1./3.) + PFRAC_UP(JI,D%NKB)=MIN(PEMF(JI,D%NKB)/(SQRT(ZW_UP2(JI,D%NKB))*ZRHO_F(JI,D%NKB)),PARAMMF%XFRAC_UP_MAX) !PEMF(JI,KKB) = ZRHO_F(JI,KKB)*PFRAC_UP(JI,KKB)*SQRT(ZW_UP2(JI,KKB)) - ZW_UP2(JI,KKB)=(PEMF(JI,KKB)/(PFRAC_UP(JI,KKB)*ZRHO_F(JI,KKB)))**2 + ZW_UP2(JI,D%NKB)=(PEMF(JI,D%NKB)/(PFRAC_UP(JI,D%NKB)*ZRHO_F(JI,D%NKB)))**2 GTEST(JI)=.TRUE. ELSE - PEMF(JI,KKB) =0. + PEMF(JI,D%NKB) =0. GTEST(JI)=.FALSE. ENDIF ENDDO @@ -383,7 +406,7 @@ GTESTLCL(:)=.FALSE. ZW_MAX(:) = 0. ZZTOP(:) = 0. -DO JK=KKB,KKE-KKL,KKL +DO JK=D%NKB,D%NKE-D%NKL,D%NKL ! IF the updraft top is reached for all column, stop the loop on levels @@ -396,7 +419,7 @@ DO JK=KKB,KKE-KKL,KKL ! to find the LCL (check if JK is LCL or not) - DO JI=1,IIJU + DO JI=D%NIJB,D%NIJE IF ((PRC_UP(JI,JK)+PRI_UP(JI,JK)>0.).AND.(.NOT.(GTESTLCL(JI)))) THEN KKLCL(JI) = JK GTESTLCL(JI)=.TRUE. @@ -411,89 +434,92 @@ DO JK=KKB,KKE-KKL,KKL ! Compute theta_v of updraft at flux level JK - ZRC_UP(:) =PRC_UP(:,JK) ! guess - ZRI_UP(:) =PRI_UP(:,JK) ! guess - ZRV_UP(:) =PRV_UP(:,JK) - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE_UP(:,JK),& + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZRC_UP(D%NIJB:D%NIJE) =PRC_UP(D%NIJB:D%NIJE,JK) ! guess + ZRI_UP(D%NIJB:D%NIJE) =PRI_UP(D%NIJB:D%NIJE,JK) ! guess + ZRV_UP(D%NIJB:D%NIJE) =PRV_UP(D%NIJB:D%NIJE,JK) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + CALL TH_R_FROM_THL_RT(CST,NEB, D%NIJT, HFRAC_ICE,PFRAC_ICE_UP(:,JK),& PPABSM(:,JK),PTHL_UP(:,JK),PRT_UP(:,JK),& - ZTH_UP(:,JK),ZRV_UP,ZRC_UP,ZRI_UP,ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.) + ZTH_UP(:,JK),ZRV_UP,ZRC_UP,ZRI_UP,ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) - DO JI=1,IIJU + DO JI=D%NIJB,D%NIJE IF (GTEST(JI)) THEN - PTHV_UP (JI,JK) = ZTH_UP(JI,JK)*(1.+ZRVORD*ZRV_UP(JI))/(1.+PRT_UP(JI,JK)) - ZBUO (JI,JK) = ZG_O_THVREF(JI,JK)*(PTHV_UP(JI,JK) - ZTHVM_F(JI,JK)) - PBUO_INTEG(JI,JK) = ZBUO(JI,JK)*(PZZ(JI,JK+KKL)-PZZ(JI,JK)) + PTHV_UP(JI,JK) = ZTH_UP(JI,JK)*(1.+ZRVORD*ZRV_UP(JI))/(1.+PRT_UP(JI,JK)) + ZBUO(JI,JK) = ZG_O_THVREF(JI,JK)*(PTHV_UP(JI,JK) - ZTHVM_F(JI,JK)) + PBUO_INTEG(JI,JK) = ZBUO(JI,JK)*(PZZ(JI,JK+D%NKL)-PZZ(JI,JK)) - ZDZ(JI) = MAX(ZEPS,PZZ(JI,JK+KKL)-PZZ(JI,JK)) - ZTEST(JI) = XA1*ZBUO(JI,JK) - XB*ZW_UP2(JI,JK) + ZDZ(JI) = MAX(ZEPS,PZZ(JI,JK+D%NKL)-PZZ(JI,JK)) + ZTEST(JI) = PARAMMF%XA1*ZBUO(JI,JK) - PARAMMF%XB*ZW_UP2(JI,JK) ! Ancien calcul de la vitesse ZCOE(JI) = ZDZ(JI) IF (ZTEST(JI)>0.) THEN - ZCOE(JI) = ZDZ(JI)/(1.+ XBETA1) + ZCOE(JI) = ZDZ(JI)/(1.+ PARAMMF%XBETA1) ENDIF ! Convective Vertical speed computation - ZWCOE(JI) = (1.-XB*ZCOE(JI))/(1.+XB*ZCOE(JI)) - ZBUCOE(JI) = 2.*ZCOE(JI)/(1.+XB*ZCOE(JI)) + ZWCOE(JI) = (1.-PARAMMF%XB*ZCOE(JI))/(1.+PARAMMF%XB*ZCOE(JI)) + ZBUCOE(JI) = 2.*ZCOE(JI)/(1.+PARAMMF%XB*ZCOE(JI)) ! Second Rachel bug correction (XA1 has been forgotten) - ZW_UP2(JI,JK+KKL) = MAX(ZEPS,ZW_UP2(JI,JK)*ZWCOE(JI) + XA1*ZBUO(JI,JK)*ZBUCOE(JI) ) - ZW_MAX(JI) = MAX(ZW_MAX(JI), SQRT(ZW_UP2(JI,JK+KKL))) - ZWUP_MEAN(JI) = MAX(ZEPS,0.5*(ZW_UP2(JI,JK+KKL)+ZW_UP2(JI,JK))) + ZW_UP2(JI,JK+D%NKL) = MAX(ZEPS,ZW_UP2(JI,JK)*ZWCOE(JI) + PARAMMF%XA1*ZBUO(JI,JK)*ZBUCOE(JI) ) + ZW_MAX(JI) = MAX(ZW_MAX(JI), SQRT(ZW_UP2(JI,JK+D%NKL))) + ZWUP_MEAN(JI) = MAX(ZEPS,0.5*(ZW_UP2(JI,JK+D%NKL)+ZW_UP2(JI,JK))) ! Entrainement and detrainement ! First Rachel bug correction (Parenthesis around 1+beta1 ==> impact is small) - PENTR(JI,JK) = MAX(0.,(XBETA1/(1.+XBETA1))*(XA1*ZBUO(JI,JK)/ZWUP_MEAN(JI)-XB)) - ZDETR_BUO(JI) = MAX(0., -(XBETA1/(1.+XBETA1))*XA1*ZBUO(JI,JK)/ZWUP_MEAN(JI)) - ZDETR_RT(JI) = XC*SQRT(MAX(0.,(PRT_UP(JI,JK) - ZRTM_F(JI,JK))) / MAX(ZEPS,ZRTM_F(JI,JK)) / ZWUP_MEAN(JI)) + PENTR(JI,JK) = MAX(0.,(PARAMMF%XBETA1/(1.+PARAMMF%XBETA1))*(PARAMMF%XA1*ZBUO(JI,JK)/ZWUP_MEAN(JI)-PARAMMF%XB)) + ZDETR_BUO(JI) = MAX(0., -(PARAMMF%XBETA1/(1.+PARAMMF%XBETA1))*PARAMMF%XA1*ZBUO(JI,JK)/ZWUP_MEAN(JI)) + ZDETR_RT(JI) = PARAMMF%XC*SQRT(MAX(0.,(PRT_UP(JI,JK) - ZRTM_F(JI,JK))) / MAX(ZEPS,ZRTM_F(JI,JK)) / ZWUP_MEAN(JI)) PDETR(JI,JK) = ZDETR_RT(JI)+ZDETR_BUO(JI) ! If the updraft did not stop, compute cons updraft characteritics at jk+1 - ZZTOP(JI) = MAX(ZZTOP(JI),PZZ(JI,JK+KKL)) - ZMIX2(JI) = (PZZ(JI,JK+KKL)-PZZ(JI,JK))*PENTR(JI,JK) !& + ZZTOP(JI) = MAX(ZZTOP(JI),PZZ(JI,JK+D%NKL)) + ZMIX2(JI) = (PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*PENTR(JI,JK) !& !ZQTM(JI) = PRTM(JI,JK)/(1.+PRTM(JI,JK)) !ZTHSM(JI,JK) = PTHLM(JI,JK)*(1.+XLAMBDA_MF*ZQTM(JI)) !ZTHS_UP(JI,JK+KKL)=(ZTHS_UP(JI,JK)*(1.-0.5*ZMIX2(JI)) + ZTHSM(JI,JK)*ZMIX2(JI)) & ! /(1.+0.5*ZMIX2(JI)) - PRT_UP(JI,JK+KKL) =(PRT_UP (JI,JK)*(1.-0.5*ZMIX2(JI)) + PRTM(JI,JK)*ZMIX2(JI)) & + PRT_UP(JI,JK+D%NKL) =(PRT_UP (JI,JK)*(1.-0.5*ZMIX2(JI)) + PRTM(JI,JK)*ZMIX2(JI)) & /(1.+0.5*ZMIX2(JI)) !ZQT_UP(JI) = PRT_UP(JI,JK+KKL)/(1.+PRT_UP(JI,JK+KKL)) !PTHL_UP(JI,JK+KKL)=ZTHS_UP(JI,JK+KKL)/(1.+XLAMBDA_MF*ZQT_UP(JI)) - PTHL_UP(JI,JK+KKL)=(PTHL_UP(JI,JK)*(1.-0.5*ZMIX2(JI)) + PTHLM(JI,JK)*ZMIX2(JI)) & + PTHL_UP(JI,JK+D%NKL)=(PTHL_UP(JI,JK)*(1.-0.5*ZMIX2(JI)) + PTHLM(JI,JK)*ZMIX2(JI)) & /(1.+0.5*ZMIX2(JI)) ENDIF ! GTEST ENDDO IF(OMIXUV) THEN - IF(JK/=KKB) THEN - DO JI=1,IIJU + IF(JK/=D%NKB) THEN + DO JI=D%NIJB,D%NIJE IF(GTEST(JI)) THEN - PU_UP(JI,JK+KKL) = (PU_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PUM(JI,JK)*ZMIX2(JI)+ & - 0.5*XPRES_UV*(PZZ(JI,JK+KKL)-PZZ(JI,JK))*& - ((PUM(JI,JK+KKL)-PUM(JI,JK))/PDZZ(JI,JK+KKL)+& - (PUM(JI,JK)-PUM(JI,JK-KKL))/PDZZ(JI,JK)) ) & + PU_UP(JI,JK+D%NKL) = (PU_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PUM(JI,JK)*ZMIX2(JI)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*& + ((PUM(JI,JK+D%NKL)-PUM(JI,JK))/PDZZ(JI,JK+D%NKL)+& + (PUM(JI,JK)-PUM(JI,JK-D%NKL))/PDZZ(JI,JK)) ) & /(1+0.5*ZMIX2(JI)) - PV_UP(JI,JK+KKL) = (PV_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PVM(JI,JK)*ZMIX2(JI)+ & - 0.5*XPRES_UV*(PZZ(JI,JK+KKL)-PZZ(JI,JK))*& - ((PVM(JI,JK+KKL)-PVM(JI,JK))/PDZZ(JI,JK+KKL)+& - (PVM(JI,JK)-PVM(JI,JK-KKL))/PDZZ(JI,JK)) ) & + PV_UP(JI,JK+D%NKL) = (PV_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PVM(JI,JK)*ZMIX2(JI)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*& + ((PVM(JI,JK+D%NKL)-PVM(JI,JK))/PDZZ(JI,JK+D%NKL)+& + (PVM(JI,JK)-PVM(JI,JK-D%NKL))/PDZZ(JI,JK)) ) & /(1+0.5*ZMIX2(JI)) ENDIF ENDDO ELSE - DO JI=1,IIJU + DO JI=D%NIJB,D%NIJE IF(GTEST(JI)) THEN - PU_UP(JI,JK+KKL) = (PU_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PUM(JI,JK)*ZMIX2(JI)+ & - 0.5*XPRES_UV*(PZZ(JI,JK+KKL)-PZZ(JI,JK))*& - ((PUM(JI,JK+KKL)-PUM(JI,JK))/PDZZ(JI,JK+KKL)) ) & + PU_UP(JI,JK+D%NKL) = (PU_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PUM(JI,JK)*ZMIX2(JI)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*& + ((PUM(JI,JK+D%NKL)-PUM(JI,JK))/PDZZ(JI,JK+D%NKL)) ) & /(1+0.5*ZMIX2(JI)) - PV_UP(JI,JK+KKL) = (PV_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PVM(JI,JK)*ZMIX2(JI)+ & - 0.5*XPRES_UV*(PZZ(JI,JK+KKL)-PZZ(JI,JK))*& - ((PVM(JI,JK+KKL)-PVM(JI,JK))/PDZZ(JI,JK+KKL)) ) & + PV_UP(JI,JK+D%NKL) = (PV_UP (JI,JK)*(1-0.5*ZMIX2(JI)) + PVM(JI,JK)*ZMIX2(JI)+ & + 0.5*PARAMMF%XPRES_UV*(PZZ(JI,JK+D%NKL)-PZZ(JI,JK))*& + ((PVM(JI,JK+D%NKL)-PVM(JI,JK))/PDZZ(JI,JK+D%NKL)) ) & /(1+0.5*ZMIX2(JI)) ENDIF ENDDO @@ -504,87 +530,94 @@ DO JK=KKB,KKE-KKL,KKL ! DO JSV=1,ISV ! IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE ! WHERE(GTEST) -! PSV_UP(:,JK+KKL,JSV) = (PSV_UP (:,JK,JSV)*(1-0.5*ZMIX2(:)) + & -! PSVM(:,JK,JSV)*ZMIX2(:)) /(1+0.5*ZMIX2(:)) +! PSV_UP(D%NIJB:D%NIJE,JK+KKL,JSV) = (PSV_UP (D%NIJB:D%NIJE,JK,JSV)*(1-0.5*ZMIX2(D%NIJB:D%NIJE)) + & +! PSVM(D%NIJB:D%NIJE,JK,JSV)*ZMIX2(D%NIJB:D%NIJE)) /(1+0.5*ZMIX2(D%NIJB:D%NIJE)) ! ENDWHERE ! ENDDO -! Compute non cons. var. at level JK+KKL - ZRC_UP(:)=PRC_UP(:,JK) ! guess = level just below - ZRI_UP(:)=PRI_UP(:,JK) ! guess = level just below - ZRV_UP(:)=PRV_UP(:,JK) - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE_UP(:,JK+KKL),ZPRES_F(:,JK+KKL), & - PTHL_UP(:,JK+KKL),PRT_UP(:,JK+KKL),ZTH_UP(:,JK+KKL), & - ZRV_UP(:),ZRC_UP(:),ZRI_UP(:),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.) - - DO JI=1,IIJU + ! Compute non cons. var. at level JK+KKL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZRC_UP(D%NIJB:D%NIJE)=PRC_UP(D%NIJB:D%NIJE,JK) ! guess = level just below + ZRI_UP(D%NIJB:D%NIJE)=PRI_UP(D%NIJB:D%NIJE,JK) ! guess = level just below + ZRV_UP(D%NIJB:D%NIJE)=PRV_UP(D%NIJB:D%NIJE,JK) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) + CALL TH_R_FROM_THL_RT(CST,NEB, D%NIJT, HFRAC_ICE,PFRAC_ICE_UP(:,JK+D%NKL),ZPRES_F(:,JK+D%NKL), & + PTHL_UP(:,JK+D%NKL),PRT_UP(:,JK+D%NKL),ZTH_UP(:,JK+D%NKL), & + ZRV_UP(:),ZRC_UP(:),ZRI_UP(:),ZRSATW(:),ZRSATI(:),OOCEAN=.FALSE.,& + PBUF=ZBUF, KB=D%NIJB, KE=D%NIJE) + + DO JI=D%NIJB,D%NIJE IF(GTEST(JI)) THEN !ZT_UP(JI) = ZTH_UP(JI,JK+KKL)*PEXNM(JI,JK+KKL) !ZCP(JI) = XCPD + XCL * ZRC_UP(JI) !ZLVOCPEXN(JI)=(XLVTT + (XCPV-XCL) * (ZT_UP(JI)-XTT) ) / ZCP(JI) / PEXNM(JI,JK+KKL) !PRC_UP(JI,JK+KKL)=MIN(0.5E-3,ZRC_UP(JI)) ! On ne peut depasser 0.5 g/kg (autoconversion donc elimination !) !PTHL_UP(JI,JK+KKL) = PTHL_UP(JI,JK+KKL)+ZLVOCPEXN(JI)*(ZRC_UP(JI)-PRC_UP(JI,JK+KKL)) - PRC_UP(JI,JK+KKL)=ZRC_UP(JI) - PRV_UP(JI,JK+KKL)=ZRV_UP(JI) - PRI_UP(JI,JK+KKL)=ZRI_UP(JI) + PRC_UP(JI,JK+D%NKL)=ZRC_UP(JI) + PRV_UP(JI,JK+D%NKL)=ZRV_UP(JI) + PRI_UP(JI,JK+D%NKL)=ZRI_UP(JI) !PRT_UP(JI,JK+KKL) = PRC_UP(JI,JK+KKL) + PRV_UP(JI,JK+KKL) - PRSAT_UP(JI,JK+KKL) = ZRSATW(JI)*(1-PFRAC_ICE_UP(JI,JK+KKL)) + ZRSATI(JI)*PFRAC_ICE_UP(JI,JK+KKL) + PRSAT_UP(JI,JK+D%NKL) = ZRSATW(JI)*(1-PFRAC_ICE_UP(JI,JK+D%NKL)) + ZRSATI(JI)*PFRAC_ICE_UP(JI,JK+D%NKL) ! Compute the updraft theta_v, buoyancy and w**2 for level JK+1 - !PTHV_UP(:,JK+KKL) = PTH_UP(:,JK+KKL)*((1+ZRVORD*PRV_UP(:,JK+KKL))/(1+PRT_UP(:,JK+KKL))) + !PTHV_UP(D%NIJB:D%NIJE,JK+KKL) = PTH_UP(D%NIJB:D%NIJE,JK+KKL)*((1+ZRVORD*PRV_UP(D%NIJB:D%NIJE,JK+KKL))/(1+PRT_UP(D%NIJB:D%NIJE,JK+KKL))) !PTHV_UP(JI,JK+KKL) = ZTH_UP(JI,JK+KKL)*(1.+0.608*PRV_UP(JI,JK+KKL) - PRC_UP(JI,JK+KKL)) !! A corriger pour utiliser q et non r !!!! !ZMIX1(JI)=ZZDZ(JI,JK)*(PENTR(JI,JK)-PDETR(JI,JK)) - PTHV_UP(JI,JK+KKL) = ZTH_UP(JI,JK+KKL)*((1+ZRVORD*PRV_UP(JI,JK+KKL))/(1+PRT_UP(JI,JK+KKL))) + PTHV_UP(JI,JK+D%NKL) = ZTH_UP(JI,JK+D%NKL)*((1+ZRVORD*PRV_UP(JI,JK+D%NKL))/(1+PRT_UP(JI,JK+D%NKL))) ZMIX1(JI)=ZZDZ(JI,JK)*(PENTR(JI,JK)-PDETR(JI,JK)) ENDIF ENDDO - DO JI=1,IIJU + DO JI=D%NIJB,D%NIJB IF(GTEST(JI)) THEN - PEMF(JI,JK+KKL)=PEMF(JI,JK)*EXP(ZMIX1(JI)) + PEMF(JI,JK+D%NKL)=PEMF(JI,JK)*EXP(ZMIX1(JI)) ENDIF ENDDO - DO JI=1,IIJU + DO JI=D%NIJB,D%NIJE IF(GTEST(JI)) THEN ! Updraft fraction must be smaller than XFRAC_UP_MAX - PFRAC_UP(JI,JK+KKL)=MIN(XFRAC_UP_MAX, & - &PEMF(JI,JK+KKL)/(SQRT(ZW_UP2(JI,JK+KKL))*ZRHO_F(JI,JK+KKL))) + PFRAC_UP(JI,JK+D%NKL)=MIN(PARAMMF%XFRAC_UP_MAX, & + &PEMF(JI,JK+D%NKL)/(SQRT(ZW_UP2(JI,JK+D%NKL))*ZRHO_F(JI,JK+D%NKL))) !PEMF(JI,JK+KKL) = ZRHO_F(JI,JK+KKL)*PFRAC_UP(JI,JK+KKL)*SQRT(ZW_UP2(JI,JK+KKL)) ENDIF ENDDO ! Test if the updraft has reach the ETL - DO JI=1,IIJU + DO JI=D%NIJB,D%NIJE IF (GTEST(JI) .AND. (PBUO_INTEG(JI,JK)<=0.)) THEN - KKETL(JI) = JK+KKL + KKETL(JI) = JK+D%NKL ENDIF ENDDO ! Test is we have reached the top of the updraft - DO JI=1,IIJU - IF (GTEST(JI) .AND. ((ZW_UP2(JI,JK+KKL)<=ZEPS).OR.(PEMF(JI,JK+KKL)<=ZEPS))) THEN - ZW_UP2 (JI,JK+KKL)=ZEPS - PEMF (JI,JK+KKL)=0. + DO JI=D%NIJB,D%NIJB + IF (GTEST(JI) .AND. ((ZW_UP2(JI,JK+D%NKL)<=ZEPS).OR.(PEMF(JI,JK+D%NKL)<=ZEPS))) THEN + ZW_UP2 (JI,JK+D%NKL)=ZEPS + PEMF (JI,JK+D%NKL)=0. GTEST (JI) =.FALSE. - PTHL_UP (JI,JK+KKL)=ZTHLM_F(JI,JK+KKL) - PRT_UP (JI,JK+KKL)=ZRTM_F(JI,JK+KKL) - PRC_UP (JI,JK+KKL)=0. - PRI_UP (JI,JK+KKL)=0. - PRV_UP (JI,JK+KKL)=ZRVM_F (JI,JK+KKL) - PTHV_UP (JI,JK+KKL)=ZTHVM_F(JI,JK+KKL) - PFRAC_UP (JI,JK+KKL)=0. - KKCTL (JI) =JK+KKL + PTHL_UP (JI,JK+D%NKL)=ZTHLM_F(JI,JK+D%NKL) + PRT_UP (JI,JK+D%NKL)=ZRTM_F(JI,JK+D%NKL) + PRC_UP (JI,JK+D%NKL)=0. + PRI_UP (JI,JK+D%NKL)=0. + PRV_UP (JI,JK+D%NKL)=ZRVM_F (JI,JK+D%NKL) + PTHV_UP (JI,JK+D%NKL)=ZTHVM_F(JI,JK+D%NKL) + PFRAC_UP (JI,JK+D%NKL)=0. + KKCTL (JI) =JK+D%NKL ENDIF ENDDO ENDDO ! Fin de la boucle verticale -PW_UP(:,:)=SQRT(ZW_UP2(:,:)) -PEMF(:,KKB) =0. +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +PW_UP(D%NIJB:D%NIJE,:)=SQRT(ZW_UP2(D%NIJB:D%NIJE,:)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PEMF(D%NIJB:D%NIJE,D%NKB) =0. +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! Limits the shallow convection scheme when cloud heigth is higher than 3000m. ! To do this, mass flux is multiplied by a coefficient decreasing linearly @@ -592,16 +625,22 @@ PEMF(:,KKB) =0. ! This way, all MF fluxes are diminished by this amount. ! Diagnosed cloud fraction is also multiplied by the same coefficient. ! -DO JI=1,IIJU +DO JI=D%NIJB,D%NIJE PDEPTH(JI) = MAX(0., PZZ(JI,KKCTL(JI)) - PZZ(JI,KKLCL(JI)) ) ENDDO -GWORK1(:)= (GTESTLCL(:) .AND. (PDEPTH(:) > ZDEPTH_MAX1) ) -GWORK2(:,:) = SPREAD( GWORK1(:), DIM=2, NCOPIES=IKU ) -ZCOEF(:,:) = SPREAD( (1.-(PDEPTH(:)-ZDEPTH_MAX1)/(ZDEPTH_MAX2-ZDEPTH_MAX1)), DIM=2, NCOPIES=IKU) -ZCOEF(:,:)=MIN(MAX(ZCOEF(:,:),0.),1.) -DO JK=1, IKU - DO JI=1,IIJU +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +GWORK1(D%NIJB:D%NIJE)= (GTESTLCL(D%NIJB:D%NIJE) .AND. (PDEPTH(D%NIJB:D%NIJE) > ZDEPTH_MAX1) ) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +DO JK=1,D%NKT + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + GWORK2(D%NIJB:D%NIJE,JK) = GWORK1(D%NIJB:D%NIJE) + ZCOEF(D%NIJB:D%NIJE,JK) = (1.-(PDEPTH(D%NIJB:D%NIJE)-ZDEPTH_MAX1)/(ZDEPTH_MAX2-ZDEPTH_MAX1)) + ZCOEF(D%NIJB:D%NIJE,JK)=MIN(MAX(ZCOEF(D%NIJB:D%NIJE,JK),0.),1.) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +ENDDO +DO JK=1, D%NKT + DO JI=D%NIJB,D%NIJE IF (GWORK2(JI,JK)) THEN PEMF(JI,JK) = PEMF(JI,JK) * ZCOEF(JI,JK) PFRAC_UP(JI,JK) = PFRAC_UP(JI,JK) * ZCOEF(JI,JK) @@ -610,6 +649,10 @@ DO JK=1, IKU ENDDO IF (LHOOK) CALL DR_HOOK('COMPUTE_UPDRAFT_RHCJ10',1,ZHOOK_HANDLE) - +! +CONTAINS +INCLUDE "th_r_from_thl_rt.func.h" +INCLUDE "compute_frac_ice.func.h" +! END SUBROUTINE COMPUTE_UPDRAFT_RHCJ10 END MODULE MODE_COMPUTE_UPDRAFT_RHCJ10 diff --git a/src/common/turb/mode_mf_turb.F90 b/src/common/turb/mode_mf_turb.F90 index 7f9e698ce2f108aa9b5fc33d8a6ccbfdaa2f0d40..3c13c549c7911116b8adfcd53727b3930d60f4a3 100644 --- a/src/common/turb/mode_mf_turb.F90 +++ b/src/common/turb/mode_mf_turb.F90 @@ -8,7 +8,7 @@ ! IMPLICIT NONE CONTAINS - SUBROUTINE MF_TURB(KKA,KKB,KKE,KKU,KKL,OMIXUV, & + SUBROUTINE MF_TURB(D, KSV, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PIMPL, PTSTEP, & PDZZ, & @@ -62,26 +62,22 @@ CONTAINS !* 0. DECLARATIONS ! ------------ ! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +! USE MODI_SHUMAN_MF, ONLY: MZM_MF USE MODE_TRIDIAG_MASSFLUX, ONLY: TRIDIAG_MASSFLUX ! USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK ! -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! IMPLICIT NONE ! ! !* 0.1 declarations of arguments ! ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +INTEGER, INTENT(IN) :: KSV LOGICAL, INTENT(IN) :: OMIXUV ! True if mixing of momentum LOGICAL, INTENT(IN) :: ONOMIXLG ! False if mixing of lagrangian tracer INTEGER, INTENT(IN) :: KSV_LGBEG ! first index of lag. tracer @@ -89,39 +85,39 @@ INTEGER, INTENT(IN) :: KSV_LGEND ! last index of lag. tracer REAL, INTENT(IN) :: PIMPL ! degree of implicitness REAL, INTENT(IN) :: PTSTEP ! Dynamical timestep ! -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! metric coefficients +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! metric coefficients -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODJ ! dry density * Grid size +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODJ ! dry density * Grid size ! Conservative var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM ! conservative pot. temp. -REAL, DIMENSION(:,:), INTENT(IN) :: PRTM ! water var. where +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM ! conservative pot. temp. +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRTM ! water var. where ! Virtual potential temperature at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHVM +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHVM ! Momentum at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PUM -REAL, DIMENSION(:,:), INTENT(IN) :: PVM +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PUM +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PVM ! scalar variables at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSVM +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(IN) :: PSVM ! ! Tendencies of conservative variables -REAL, DIMENSION(:,:), INTENT(OUT) :: PTHLDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PTHLDT -REAL, DIMENSION(:,:), INTENT(OUT) :: PRTDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PRTDT ! Tendencies of momentum -REAL, DIMENSION(:,:), INTENT(OUT) :: PUDT -REAL, DIMENSION(:,:), INTENT(OUT) :: PVDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PUDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PVDT ! Tendencies of scalar variables -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSVDT +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(OUT) :: PSVDT ! Updraft characteritics -REAL, DIMENSION(:,:), INTENT(IN) :: PEMF,PTHL_UP,PTHV_UP,PRT_UP,PU_UP,PV_UP -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSV_UP +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEMF,PTHL_UP,PTHV_UP,PRT_UP,PU_UP,PV_UP +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(IN) :: PSV_UP ! Fluxes -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZTHMF,PFLXZTHVMF,PFLXZRMF,PFLXZUMF,PFLXZVMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZTHMF,PFLXZTHVMF,PFLXZRMF,PFLXZUMF,PFLXZVMF -REAL, DIMENSION(:,:,:), INTENT(OUT):: PFLXZSVMF +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(OUT):: PFLXZSVMF ! ! ! @@ -130,8 +126,9 @@ REAL, DIMENSION(:,:,:), INTENT(OUT):: PFLXZSVMF ! 0.2 declaration of local variables ! -REAL, DIMENSION(SIZE(PTHLM,1),SIZE(PTHLM,2)) :: ZVARS -INTEGER :: ISV,JSV !number of scalar variables and Loop counter +REAL, DIMENSION(D%NIJT,D%NKT) :: ZVARS +INTEGER :: JSV !number of scalar variables and Loop counter +INTEGER :: JI, JK REAL(KIND=JPRB) :: ZHOOK_HANDLE ! !---------------------------------------------------------------------------- @@ -140,10 +137,6 @@ REAL(KIND=JPRB) :: ZHOOK_HANDLE ! ------------- ! IF (LHOOK) CALL DR_HOOK('MF_TURB',0,ZHOOK_HANDLE) -! -! number of scalar var -ISV=SIZE(PSVM,3) - ! PFLXZSVMF = 0. PSVDT = 0. @@ -158,15 +151,23 @@ PSVDT = 0. ! ( Resulting fluxes are in flux level (w-point) as PEMF and PTHL_UP ) ! -PFLXZTHMF(:,:) = PEMF(:,:)*(PTHL_UP(:,:)-MZM_MF(PTHLM(:,:), KKA, KKU, KKL)) +CALL MZM_MF(D, PTHLM(:,:), PFLXZTHMF(:,:)) +CALL MZM_MF(D, PRTM(:,:), PFLXZRMF(:,:)) +CALL MZM_MF(D, PTHVM(:,:), PFLXZTHVMF(:,:)) -PFLXZRMF(:,:) = PEMF(:,:)*(PRT_UP(:,:)-MZM_MF(PRTM(:,:), KKA, KKU, KKL)) - -PFLXZTHVMF(:,:) = PEMF(:,:)*(PTHV_UP(:,:)-MZM_MF(PTHVM(:,:), KKA, KKU, KKL)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +PFLXZTHMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PTHL_UP(D%NIJB:D%NIJE,:)-PFLXZTHMF(D%NIJB:D%NIJE,:)) +PFLXZRMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PRT_UP(D%NIJB:D%NIJE,:)-PFLXZRMF(D%NIJB:D%NIJE,:)) +PFLXZTHVMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PTHV_UP(D%NIJB:D%NIJE,:)-PFLXZTHVMF(D%NIJB:D%NIJE,:)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) IF (OMIXUV) THEN - PFLXZUMF(:,:) = PEMF(:,:)*(PU_UP(:,:)-MZM_MF(PUM(:,:), KKA, KKU, KKL)) - PFLXZVMF(:,:) = PEMF(:,:)*(PV_UP(:,:)-MZM_MF(PVM(:,:), KKA, KKU, KKL)) + CALL MZM_MF(D, PUM(:,:), PFLXZUMF(:,:)) + CALL MZM_MF(D, PVM(:,:), PFLXZVMF(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PFLXZUMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PU_UP(D%NIJB:D%NIJE,:)-PFLXZUMF(D%NIJB:D%NIJE,:)) + PFLXZVMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PV_UP(D%NIJB:D%NIJE,:)-PFLXZVMF(D%NIJB:D%NIJE,:)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ELSE PFLXZUMF(:,:) = 0. PFLXZVMF(:,:) = 0. @@ -185,25 +186,26 @@ ENDIF ! 3.1 Compute the tendency for the conservative potential temperature ! (PDZZ and flux in w-point and PRHODJ is mass point, result in mass point) ! -CALL TRIDIAG_MASSFLUX(KKA,KKB,KKE,KKU,KKL,PTHLM,PFLXZTHMF,-PEMF,PTSTEP,PIMPL, & +CALL TRIDIAG_MASSFLUX(D,PTHLM,PFLXZTHMF,-PEMF,PTSTEP,PIMPL, & PDZZ,PRHODJ,ZVARS ) -! compute new flux -PFLXZTHMF(:,:) = PEMF(:,:)*(PTHL_UP(:,:)-MZM_MF(ZVARS(:,:), KKA, KKU, KKL)) - -!!! compute THL tendency -! -PTHLDT(:,:)= (ZVARS(:,:)-PTHLM(:,:))/PTSTEP +! compute new flux and THL tendency +CALL MZM_MF(D, ZVARS(:,:), PFLXZTHMF(:,:)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +PFLXZTHMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PTHL_UP(D%NIJB:D%NIJE,:)-PFLXZTHMF(D%NIJB:D%NIJE,:)) +PTHLDT(D%NIJB:D%NIJE,:)= (ZVARS(D%NIJB:D%NIJE,:)-PTHLM(D%NIJB:D%NIJE,:))/PTSTEP +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! ! 3.2 Compute the tendency for the conservative mixing ratio ! -CALL TRIDIAG_MASSFLUX(KKA,KKB,KKE,KKU,KKL,PRTM(:,:),PFLXZRMF,-PEMF,PTSTEP,PIMPL, & +CALL TRIDIAG_MASSFLUX(D,PRTM(:,:),PFLXZRMF,-PEMF,PTSTEP,PIMPL, & PDZZ,PRHODJ,ZVARS ) -! compute new flux -PFLXZRMF(:,:) = PEMF(:,:)*(PRT_UP(:,:)-MZM_MF(ZVARS(:,:), KKA, KKU, KKL)) - -!!! compute RT tendency -PRTDT(:,:) = (ZVARS(:,:)-PRTM(:,:))/PTSTEP +! compute new flux and RT tendency +CALL MZM_MF(D, ZVARS(:,:), PFLXZRMF(:,:)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +PFLXZRMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PRT_UP(D%NIJB:D%NIJE,:)-PFLXZRMF(D%NIJB:D%NIJE,:)) +PRTDT(D%NIJB:D%NIJE,:) = (ZVARS(D%NIJB:D%NIJE,:)-PRTM(D%NIJB:D%NIJE,:))/PTSTEP +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! IF (OMIXUV) THEN @@ -212,52 +214,56 @@ IF (OMIXUV) THEN ! (PDZZ and flux in w-point and PRHODJ is mass point, result in mass point) ! - CALL TRIDIAG_MASSFLUX(KKA,KKB,KKE,KKU,KKL,PUM,PFLXZUMF,-PEMF,PTSTEP,PIMPL, & + CALL TRIDIAG_MASSFLUX(D,PUM,PFLXZUMF,-PEMF,PTSTEP,PIMPL, & PDZZ,PRHODJ,ZVARS ) - ! compute new flux - PFLXZUMF(:,:) = PEMF(:,:)*(PU_UP(:,:)-MZM_MF(ZVARS(:,:), KKA, KKU, KKL)) - - ! compute U tendency - PUDT(:,:)= (ZVARS(:,:)-PUM(:,:))/PTSTEP - + ! compute new flux and U tendency + CALL MZM_MF(D, ZVARS(:,:), PFLXZUMF(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PFLXZUMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PU_UP(D%NIJB:D%NIJE,:)-PFLXZUMF(D%NIJB:D%NIJE,:)) + PUDT(D%NIJB:D%NIJE,:)= (ZVARS(D%NIJB:D%NIJE,:)-PUM(D%NIJB:D%NIJE,:))/PTSTEP + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! ! ! 3.4 Compute the tendency for the (non conservative but treated as it for the time beiing) ! meridian momentum ! (PDZZ and flux in w-point and PRHODJ is mass point, result in mass point) ! - CALL TRIDIAG_MASSFLUX(KKA,KKB,KKE,KKU,KKL,PVM,PFLXZVMF,-PEMF,PTSTEP,PIMPL, & + CALL TRIDIAG_MASSFLUX(D,PVM,PFLXZVMF,-PEMF,PTSTEP,PIMPL, & PDZZ,PRHODJ,ZVARS ) - ! compute new flux - PFLXZVMF(:,:) = PEMF(:,:)*(PV_UP(:,:)-MZM_MF(ZVARS(:,:), KKA, KKU, KKL)) - - ! compute V tendency - PVDT(:,:)= (ZVARS(:,:)-PVM(:,:))/PTSTEP + ! compute new flux and V tendency + CALL MZM_MF(D, ZVARS(:,:), PFLXZVMF(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PFLXZVMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PV_UP(D%NIJB:D%NIJE,:)-PFLXZVMF(D%NIJB:D%NIJE,:)) + PVDT(D%NIJB:D%NIJE,:)= (ZVARS(D%NIJB:D%NIJE,:)-PVM(D%NIJB:D%NIJE,:))/PTSTEP + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ELSE PUDT(:,:)=0. PVDT(:,:)=0. ENDIF -DO JSV=1,ISV +DO JSV=1,KSV IF (ONOMIXLG .AND. JSV >= KSV_LGBEG .AND. JSV<= KSV_LGEND) CYCLE !* compute mean flux of scalar variables at time t-dt ! ( Resulting fluxes are in flux level (w-point) as PEMF and PTHL_UP ) - PFLXZSVMF(:,:,JSV) = PEMF(:,:)*(PSV_UP(:,:,JSV)-MZM_MF(PSVM(:,:,JSV), KKA, KKU, KKL)) - + CALL MZM_MF(D, PSVM(:,:,JSV), PFLXZSVMF(:,:,JSV)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PFLXZSVMF(D%NIJB:D%NIJE,:,JSV) = PEMF(D%NIJB:D%NIJE,:)*(PSV_UP(D%NIJB:D%NIJE,:,JSV)-PFLXZSVMF(D%NIJB:D%NIJE,:,JSV)) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! ! 3.5 Compute the tendency for scalar variables ! (PDZZ and flux in w-point and PRHODJ is mass point, result in mass point) ! - CALL TRIDIAG_MASSFLUX(KKA,KKB,KKE,KKU,KKL,PSVM(:,:,JSV),PFLXZSVMF(:,:,JSV),& + CALL TRIDIAG_MASSFLUX(D,PSVM(:,:,JSV),PFLXZSVMF(:,:,JSV),& -PEMF,PTSTEP,PIMPL,PDZZ,PRHODJ,ZVARS ) - ! compute new flux - PFLXZSVMF(:,:,JSV) = PEMF(:,:)*(PSV_UP(:,:,JSV)-MZM_MF(ZVARS, KKA, KKU, KKL)) - - ! compute Sv tendency - PSVDT(:,:,JSV)= (ZVARS(:,:)-PSVM(:,:,JSV))/PTSTEP + ! compute new flux and Sv tendency + CALL MZM_MF(D, ZVARS, PFLXZSVMF(:,:,JSV)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PFLXZSVMF(D%NIJB:D%NIJE,:,JSV) = PEMF(D%NIJB:D%NIJE,:)*(PSV_UP(D%NIJB:D%NIJE,:,JSV)-PFLXZSVMF(D%NIJB:D%NIJE,:,JSV)) + PSVDT(D%NIJB:D%NIJE,:,JSV)= (ZVARS(D%NIJB:D%NIJE,:)-PSVM(D%NIJB:D%NIJE,:,JSV))/PTSTEP + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ENDDO ! diff --git a/src/common/turb/mode_mf_turb_expl.F90 b/src/common/turb/mode_mf_turb_expl.F90 index 2bff78e0aa035c9bf2d1427e5c674ec844d2be80..6f275cf85580ce0b82ff02e66e224f25155690d9 100644 --- a/src/common/turb/mode_mf_turb_expl.F90 +++ b/src/common/turb/mode_mf_turb_expl.F90 @@ -7,7 +7,7 @@ ! ###################### IMPLICIT NONE CONTAINS - SUBROUTINE MF_TURB_EXPL(KKA,KKB,KKE,KKU,KKL,OMIXUV, & + SUBROUTINE MF_TURB_EXPL(D, PARAMMF, OMIXUV, & PRHODJ, & PTHLM,PTHVM,PRTM,PUM,PVM, & PTHLDT,PRTDT,PUDT,PVDT, & @@ -51,10 +51,11 @@ CONTAINS ! !* 0. DECLARATIONS ! ------------ - +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +! USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK -USE MODD_PARAM_MFSHALL_n, ONLY: XLAMBDA_MF USE MODI_SHUMAN_MF, ONLY: MZM_MF IMPLICIT NONE @@ -63,45 +64,42 @@ IMPLICIT NONE !* 0.1 declarations of arguments -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF LOGICAL, INTENT(IN) :: OMIXUV ! True if mixing of momentum -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODJ ! dry density * Grid size +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODJ ! dry density * Grid size ! Conservative var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHLM ! conservative pot. temp. -REAL, DIMENSION(:,:), INTENT(IN) :: PRTM ! water var. where +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHLM ! conservative pot. temp. +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRTM ! water var. where ! Virtual potential temperature at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTHVM +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHVM ! Momentum at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PUM -REAL, DIMENSION(:,:), INTENT(IN) :: PVM +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PUM +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PVM ! ! Tendencies of conservative variables -REAL, DIMENSION(:,:), INTENT(OUT) :: PTHLDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PTHLDT -REAL, DIMENSION(:,:), INTENT(OUT) :: PRTDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PRTDT ! Tendencies of momentum -REAL, DIMENSION(:,:), INTENT(OUT) :: PUDT -REAL, DIMENSION(:,:), INTENT(OUT) :: PVDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PUDT +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PVDT ! Updraft characteritics -REAL, DIMENSION(:,:), INTENT(IN) :: PEMF,PTHL_UP,PTHV_UP,PRT_UP,PU_UP,PV_UP +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEMF,PTHL_UP,PTHV_UP,PRT_UP,PU_UP,PV_UP ! Fluxes -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZTHLMF,PFLXZTHVMF,PFLXZRMF,PFLXZUMF,PFLXZVMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZTHLMF,PFLXZTHVMF,PFLXZRMF,PFLXZUMF,PFLXZVMF -REAL, DIMENSION(SIZE(PFLXZTHLMF,1),SIZE(PFLXZTHLMF,2)) :: ZFLXZTHSMF,ZTHS_UP,ZTHSM ! Theta S flux -REAL, DIMENSION(SIZE(PFLXZTHLMF,1),SIZE(PFLXZTHLMF,2)) :: ZQT_UP,ZQTM,ZTHSDT,ZQTDT -REAL, DIMENSION(SIZE(PFLXZTHLMF,1),SIZE(PFLXZTHLMF,2)) :: ZTHLM_F,ZRTM_F +REAL, DIMENSION(D%NIJT,D%NKT) :: ZFLXZTHSMF,ZTHS_UP,ZTHSM ! Theta S flux +REAL, DIMENSION(D%NIJT,D%NKT) :: ZQT_UP,ZQTM,ZTHSDT,ZQTDT +REAL, DIMENSION(D%NIJT,D%NKT) :: ZTHLM_F,ZRTM_F -INTEGER :: JK ! loop counter +INTEGER :: JK, JI ! loop counter REAL(KIND=JPRB) :: ZHOOK_HANDLE !---------------------------------------------------------------------------- @@ -130,22 +128,33 @@ PVDT = 0. ! ----------------------------------------------- ! ( Resulting fluxes are in flux level (w-point) as PEMF and PTHL_UP ) -ZRTM_F (:,:) = MZM_MF(PRTM (:,:), KKA, KKU, KKL) -ZTHLM_F(:,:) = MZM_MF(PTHLM(:,:), KKA, KKU, KKL) -ZQTM (:,:) = ZRTM_F (:,:)/(1.+ZRTM_F (:,:)) -ZQT_UP (:,:) = PRT_UP (:,:)/(1.+PRT_UP (:,:)) -ZTHS_UP(:,:) = PTHL_UP(:,:)*(1.+XLAMBDA_MF*ZQT_UP(:,:)) -ZTHSM (:,:) = ZTHLM_F(:,:)*(1.+XLAMBDA_MF*ZQTM(:,:)) - -PFLXZTHLMF(:,:) = PEMF(:,:)*(PTHL_UP(:,:)-MZM_MF(PTHLM(:,:), KKA, KKU, KKL)) ! ThetaL -PFLXZRMF(:,:) = PEMF(:,:)*(PRT_UP (:,:)-MZM_MF(PRTM (:,:), KKA, KKU, KKL)) ! Rt -PFLXZTHVMF(:,:) = PEMF(:,:)*(PTHV_UP(:,:)-MZM_MF(PTHVM(:,:), KKA, KKU, KKL)) ! ThetaV - -ZFLXZTHSMF(:,:) = PEMF(:,:)*(ZTHS_UP(:,:)-ZTHSM(:,:)) ! Theta S flux +CALL MZM_MF(D, PRTM (:,:), ZRTM_F(:,:)) +CALL MZM_MF(D, PTHLM(:,:), ZTHLM_F(:,:)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +ZQTM(D%NIJB:D%NIJE,:) = ZRTM_F(D%NIJB:D%NIJE,:)/(1.+ZRTM_F(D%NIJB:D%NIJE,:)) +ZQT_UP(D%NIJB:D%NIJE,:) = PRT_UP(D%NIJB:D%NIJE,:)/(1.+PRT_UP(D%NIJB:D%NIJE,:)) +ZTHS_UP(D%NIJB:D%NIJE,:)= PTHL_UP(D%NIJB:D%NIJE,:)*(1.+PARAMMF%XLAMBDA_MF*ZQT_UP(D%NIJB:D%NIJE,:)) +ZTHSM(D%NIJB:D%NIJE,:) = ZTHLM_F(D%NIJB:D%NIJE,:)*(1.+PARAMMF%XLAMBDA_MF*ZQTM(D%NIJB:D%NIJE,:)) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + +CALL MZM_MF(D, PTHLM(:,:), PFLXZTHLMF(:,:)) +CALL MZM_MF(D, PRTM(:,:), PFLXZRMF(:,:)) +CALL MZM_MF(D, PTHVM(:,:), PFLXZTHVMF(:,:)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +PFLXZTHLMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PTHL_UP(D%NIJB:D%NIJE,:)-PFLXZTHLMF(D%NIJB:D%NIJE,:)) ! ThetaL +PFLXZRMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PRT_UP(D%NIJB:D%NIJE,:)-PFLXZRMF(D%NIJB:D%NIJE,:)) ! Rt +PFLXZTHVMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PTHV_UP(D%NIJB:D%NIJE,:)-PFLXZTHVMF(D%NIJB:D%NIJE,:)) ! ThetaV + +ZFLXZTHSMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(ZTHS_UP(D%NIJB:D%NIJE,:)-ZTHSM(D%NIJB:D%NIJE,:)) ! Theta S flux +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) IF (OMIXUV) THEN - PFLXZUMF(:,:) = PEMF(:,:)*(PU_UP(:,:)-MZM_MF(PUM(:,:), KKA, KKU, KKL)) ! U - PFLXZVMF(:,:) = PEMF(:,:)*(PV_UP(:,:)-MZM_MF(PVM(:,:), KKA, KKU, KKL)) ! V + CALL MZM_MF(D, PUM(:,:), PFLXZUMF(:,:)) + CALL MZM_MF(D, PVM(:,:), PFLXZVMF(:,:)) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + PFLXZUMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PU_UP(D%NIJB:D%NIJE,:)-PFLXZUMF(D%NIJB:D%NIJE,:)) ! U + PFLXZVMF(D%NIJB:D%NIJE,:) = PEMF(D%NIJB:D%NIJE,:)*(PV_UP(D%NIJB:D%NIJE,:)-PFLXZVMF(D%NIJB:D%NIJE,:)) ! V + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ELSE PFLXZUMF(:,:) = 0. PFLXZVMF(:,:) = 0. @@ -158,18 +167,22 @@ ENDIF ! (explicit formulation) ! -------------------------------------------- -DO JK=KKB,KKE-KKL,KKL -! PTHLDT(:,JK) = (PFLXZTHLMF(:,JK ) - PFLXZTHLMF(:,JK+KKL)) / PRHODJ(:,JK) - PRTDT (:,JK) = (PFLXZRMF (:,JK ) - PFLXZRMF (:,JK+KKL)) / PRHODJ(:,JK) - ZQTDT (:,JK) = PRTDT (:,JK)/(1.+ ZRTM_F (:,JK)*ZRTM_F (:,JK)) - ZTHSDT(:,JK) = (ZFLXZTHSMF(:,JK ) - ZFLXZTHSMF(:,JK+KKL)) / PRHODJ(:,JK) - PTHLDT(:,JK) = ZTHSDT(:,JK)/(1.+XLAMBDA_MF*ZQTM(:,JK)) - ZTHLM_F(:,JK)*XLAMBDA_MF*ZQTDT(:,JK) +DO JK=D%NKB,D%NKE-D%NKL,D%NKL + DO JI=D%NIJB,D%NIJE + !PTHLDT(JI,JK) = (PFLXZTHLMF(JI,JK ) - PFLXZTHLMF(JI,JK+D%NKL)) / PRHODJ(JI,JK) + PRTDT(JI,JK) = (PFLXZRMF(JI,JK) - PFLXZRMF(JI,JK+D%NKL)) / PRHODJ(JI,JK) + ZQTDT(JI,JK) = PRTDT(JI,JK)/(1.+ ZRTM_F(JI,JK)*ZRTM_F(JI,JK)) + ZTHSDT(JI,JK)= (ZFLXZTHSMF(JI,JK) - ZFLXZTHSMF(JI,JK+D%NKL)) / PRHODJ(JI,JK) + PTHLDT(JI,JK) = ZTHSDT(JI,JK)/(1.+PARAMMF%XLAMBDA_MF*ZQTM(JI,JK)) - ZTHLM_F(JI,JK)*PARAMMF%XLAMBDA_MF*ZQTDT(JI,JK) + ENDDO END DO IF (OMIXUV) THEN - DO JK=KKB,KKE-KKL,KKL - PUDT(:,JK) = (PFLXZUMF(:,JK ) - PFLXZUMF(:,JK+KKL)) / PRHODJ(:,JK) - PVDT(:,JK) = (PFLXZVMF(:,JK ) - PFLXZVMF(:,JK+KKL)) / PRHODJ(:,JK) + DO JK=D%NKB,D%NKE-D%NKL,D%NKL + DO JI=D%NIJB,D%NIJE + PUDT(JI,JK) = (PFLXZUMF(JI,JK) - PFLXZUMF(JI,JK+D%NKL)) / PRHODJ(JI,JK) + PVDT(JI,JK) = (PFLXZVMF(JI,JK) - PFLXZVMF(JI,JK+D%NKL)) / PRHODJ(JI,JK) + ENDDO END DO ENDIF diff --git a/src/common/turb/mode_th_r_from_thl_rt_1d.F90 b/src/common/turb/mode_th_r_from_thl_rt_1d.F90 deleted file mode 100644 index 1aff6f5943ff5a99cf55a46a60c48fdb72ca3118..0000000000000000000000000000000000000000 --- a/src/common/turb/mode_th_r_from_thl_rt_1d.F90 +++ /dev/null @@ -1,210 +0,0 @@ -!MNH_LIC Copyright 2006-2022 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 MODE_TH_R_FROM_THL_RT_1D -IMPLICIT NONE -CONTAINS - SUBROUTINE TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE,PP, & - PTHL, PRT, PTH, PRV, PRL, PRI, & - PRSATW, PRSATI, PRR, PRS, PRG, PRH,OOCEAN) -! ################################################################# -! -! -!!**** *TH_R_FROM_THL_RT_1D* - computes the non-conservative variables -!! from conservative variables -!! -!! PURPOSE -!! ------- -!! -!!** METHOD -!! ------ -!! -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! Julien PERGAUD * Meteo-France * -!! -!! MODIFICATIONS -!! ------------- -!! Original 13/03/06 -!! S. Riette April 2011 : ice added, allow ZRLTEMP to be negative -!! we use dQsat/dT to help convergence -!! use of optional PRR, PRS, PRG, PRH -!! S. Riette Nov 2016: support for HFRAC_ICE='S' -!! -!! -------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -USE MODD_CST !, ONLY: XP00, XRD, XCPD, XCPV, XCL, XCI, XLVTT, XTT, XLSTT -USE MODD_NEB, ONLY: NEB -USE MODE_THERMO -! -IMPLICIT NONE -! -! -!* 0.1 declarations of arguments -! -CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE -LOGICAL, INTENT(IN) :: OOCEAN ! switch for Ocean model version -REAL, DIMENSION(:), INTENT(INOUT) :: PFRAC_ICE -REAL, DIMENSION(:), INTENT(IN) :: PP ! Pressure -REAL, DIMENSION(:), INTENT(IN) :: PTHL ! thetal to transform into th -REAL, DIMENSION(:),INTENT(IN) :: PRT ! Total mixing ratios to transform into rv,rc and ri -REAL, DIMENSION(:),OPTIONAL,INTENT(IN) :: PRR, PRS, PRG, PRH -REAL, DIMENSION(:), INTENT(OUT):: PTH ! th -REAL, DIMENSION(:), INTENT(OUT):: PRV ! vapor mixing ratio -REAL, DIMENSION(:), INTENT(INOUT):: PRL ! vapor mixing ratio -REAL, DIMENSION(:), INTENT(INOUT):: PRI ! vapor mixing ratio -REAL, DIMENSION(:), INTENT(OUT) :: PRSATW ! estimated mixing ration at saturation over water -REAL, DIMENSION(:), INTENT(OUT) :: PRSATI ! estimated mixing ration at saturation over ice -! -!------------------------------------------------------------------------------- -! -! 0.2 declaration of local variables -INTEGER :: II ! Loop control -INTEGER :: JITER ! number of iterations -INTEGER :: J -REAL, DIMENSION(SIZE(PTHL,1)) :: ZEXN -REAL, DIMENSION(SIZE(PTHL,1)) :: ZRVSAT,ZCPH,ZRLTEMP,ZCPH2 -REAL, DIMENSION(SIZE(PTHL,1)) :: ZT,ZLVOCPEXN,ZLSOCPEXN -REAL, DIMENSION(SIZE(PTHL,1)) :: ZDRSATODT,ZDRSATODTW,ZDRSATODTI -REAL, DIMENSION(SIZE(PTHL,1)) :: ZFOESW, ZFOESI -REAL, DIMENSION(SIZE(PTHL,1)) :: ZLOGT, Z99PP, Z1PRT -REAL(KIND=JPRB) :: ZVAR1, ZVAR2, ZTPOW2, ZDELT -INTEGER, DIMENSION(SIZE(PTHL,1)) :: IERR - -REAL(KIND=JPRB) :: ZHOOK_HANDLE -!---------------------------------------------------------------------------- -! -!* 1 Initialisation -! -------------- -! -! -IF (LHOOK) CALL DR_HOOK('TH_R_FROM_THL_RT_1D',0,ZHOOK_HANDLE) -! -!Number of iterations -JITER=2 -! -!Computation of ZCPH2 depending on dummy arguments received -ZCPH2(:)=0 -IF(PRESENT(PRR)) ZCPH2(:)=ZCPH2(:) + XCL*PRR(:) -IF(PRESENT(PRS)) ZCPH2(:)=ZCPH2(:) + XCI*PRS(:) -IF(PRESENT(PRG)) ZCPH2(:)=ZCPH2(:) + XCI*PRG(:) -IF(PRESENT(PRH)) ZCPH2(:)=ZCPH2(:) + XCI*PRH(:) -! -!Computation of an approximate state thanks to PRL and PRI guess -ZEXN(:)=(PP(:)/XP00) ** RDSCPD - -DO J=1,SIZE(PTHL,1) -Z99PP(J)=0.99*PP(J) -PRV(J)=PRT(J)-PRL(J)-PRI(J) -ZCPH(J)=XCPD+ XCPV * PRV(J)+ XCL * PRL(J) + XCI * PRI(J) + ZCPH2(J) -ZVAR2=ZCPH(J)*ZEXN(J) -ZDELT=(PTHL(J)*ZEXN(J))-XTT -ZLVOCPEXN(J) = (XLVTT + (XCPV-XCL) * ZDELT) /ZVAR2 -ZLSOCPEXN(J) = (XLSTT + (XCPV-XCI) * ZDELT) /ZVAR2 -PTH(J)=PTHL(J)+ZLVOCPEXN(J)*PRL(J)+ZLSOCPEXN(J)*PRI(J) -Z1PRT(J)=1+PRT(J) -ENDDO -! -! -! 2 Iteration -! --------- - -DO II=1,JITER - IF (OOCEAN) THEN - ZT=PTH - ELSE - ZT(:)=PTH(:)*ZEXN(:) - END IF - !Computation of liquid/ice fractions - PFRAC_ICE(:) = 0. - DO J=1, SIZE(PFRAC_ICE, 1) - IF(PRL(J)+PRI(J) > 1.E-20) THEN - PFRAC_ICE(J) = PRI(J) / (PRL(J)+PRI(J)) - ENDIF - ENDDO - CALL COMPUTE_FRAC_ICE(HFRAC_ICE,NEB,PFRAC_ICE(:),ZT(:), IERR(:)) - - !Computation of Rvsat and dRsat/dT - !In this version QSAT, QSATI, DQSAT and DQASATI functions are not used - !due to performance issue - - ! Log does not vectorize on all compilers: - ZLOGT(:)=LOG(ZT(:)) - - DO J=1,SIZE(PTHL,1) - - ZFOESW(J) = MIN(EXP( XALPW - XBETAW/ZT(J) - XGAMW*ZLOGT(J) ), Z99PP(J)) - ZFOESI(J) = MIN(EXP( XALPI - XBETAI/ZT(J) - XGAMI*ZLOGT(J) ), Z99PP(J)) - PRSATW(J) = XRD/XRV*ZFOESW(J)/PP(J) / (1.+(XRD/XRV-1.)*ZFOESW(J)/PP(J)) - PRSATI(J) = XRD/XRV*ZFOESI(J)/PP(J) / (1.+(XRD/XRV-1.)*ZFOESI(J)/PP(J)) - ZTPOW2=ZT(J)**2 - ZDRSATODTW(J) = PRSATW(J) / (1.+(XRD/XRV-1.)*ZFOESW(J)/PP(J) ) & - * (XBETAW/ZTPOW2 - XGAMW/ZT(J))*Z1PRT(J) - ZDRSATODTI(J) = PRSATI(J) / (1.+(XRD/XRV-1.)*ZFOESI(J)/PP(J) ) & - * (XBETAI/ZTPOW2 - XGAMI/ZT(J))*Z1PRT(J) - !PRSATW(J) = QSAT(ZT(J),PP(J)) !qsatw - !PRSATI(J) = QSATI(ZT(J),PP(J)) !qsati - !ZDRSATODTW(J) = DQSAT(ZT(J),PP(J),PRSATW(J))*Z1PRT(J) - !ZDRSATODTI(J) = DQSATI(ZT(J),PP(J),PRSATI(J))*Z1PRT(J) - PRSATW(J) = PRSATW(J)*Z1PRT(J) - PRSATI(J) = PRSATI(J)*Z1PRT(J) - ZRVSAT(J) = PRSATW(J)*(1-PFRAC_ICE(J)) + PRSATI(J)*PFRAC_ICE(J) - ZDRSATODT(J) = (ZDRSATODTW(J)*(1-PFRAC_ICE(J))+ & - & ZDRSATODTI(J)*PFRAC_ICE(J)) - - !Computation of new PRL, PRI and PRV - !Correction term applied to (PRV(J)-ZRVSAT(J)) is computed assuming that - !ZLVOCPEXN, ZLSOCPEXN and ZCPH don't vary to much with T. It takes into account - !the variation (estimated linear) of Qsat with T - ZRLTEMP(J)=(PRV(J)-ZRVSAT(J))/ & - &(1 + ZDRSATODT(J)*ZEXN(J)* & - & (ZLVOCPEXN(J)*(1-PFRAC_ICE(J))+ZLSOCPEXN(J)*PFRAC_ICE(J))) - ZRLTEMP(J)=MIN(MAX(-PRL(J)-PRI(J), ZRLTEMP(J)),PRV(J)) - PRV(J)=PRV(J)-ZRLTEMP(J) - PRL(J)=PRL(J)+PRI(J)+ZRLTEMP(J) - PRI(J)=PFRAC_ICE(J) * (PRL(J)) - PRL(J)=(1-PFRAC_ICE(J)) * (PRT(J) - PRV(J)) - - !Computation of Cph (as defined in Meso-NH doc, equation 2.2, to be used with mixing ratios) - ZCPH(J)=XCPD+ XCPV * PRV(J)+ XCL * PRL(J) + XCI * PRI(J) + ZCPH2(J) - - !Computation of L/Cph/EXN, then new PTH - ZVAR2=ZCPH(J)*ZEXN(J) - ZLVOCPEXN(J) = (XLVTT + (XCPV-XCL) * (ZT(J)-XTT)) /ZVAR2 - ZLSOCPEXN(J) = (XLSTT + (XCPV-XCI) * (ZT(J)-XTT)) /ZVAR2 - PTH(J)=PTHL(J)+ZLVOCPEXN(J)*PRL(J)+ZLSOCPEXN(J)*PRI(J) - - !Computation of estimated mixing ration at saturation - !To compute the adjustement a first order development was used - ZVAR1=PTH(J)*ZEXN(J)-ZT(J) - PRSATW(J)=PRSATW(J) + ZDRSATODTW(J)*ZVAR1 - PRSATI(J)=PRSATI(J) + ZDRSATODTI(J)*ZVAR1 - - ENDDO -ENDDO - -IF (LHOOK) CALL DR_HOOK('TH_R_FROM_THL_RT_1D',1,ZHOOK_HANDLE) - -! -CONTAINS -INCLUDE "compute_frac_ice.func.h" -! -END SUBROUTINE TH_R_FROM_THL_RT_1D -END MODULE MODE_TH_R_FROM_THL_RT_1D diff --git a/src/common/turb/mode_th_r_from_thl_rt_2d.F90 b/src/common/turb/mode_th_r_from_thl_rt_2d.F90 deleted file mode 100644 index 2ac0c85284102e0ce45d4fa88a97f9fa474e708d..0000000000000000000000000000000000000000 --- a/src/common/turb/mode_th_r_from_thl_rt_2d.F90 +++ /dev/null @@ -1,112 +0,0 @@ -!MNH_LIC Copyright 2006-2022 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 MODE_TH_R_FROM_THL_RT_2D -IMPLICIT NONE -CONTAINS - SUBROUTINE TH_R_FROM_THL_RT_2D(HFRAC_ICE,PFRAC_ICE,PP, & - PTHL, PRT, PTH, PRV, PRL, PRI, & - PRSATW, PRSATI, PRR, PRS, PRG, PRH,OOCEAN) -! ################################################################# -! -! -!!**** *TH_R_FROM_THL_RT_2D* - computes the non-conservative variables -!! from conservative variables -!! -!! PURPOSE -!! ------- -!! -!!** METHOD -!! ------ -!! -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! Julien PERGAUD * Meteo-France * -!! -!! MODIFICATIONS -!! ------------- -!! Original 13/03/06 -!! Sébastien Riette April 2011: code moved in th_r_from_thl_rt_1D -!! -!! -------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -! -USE MODE_TH_R_FROM_THL_RT_3D, ONLY: TH_R_FROM_THL_RT_3D -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK - -IMPLICIT NONE -! -! -!* 0.1 declarations of arguments -! -CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC_ICE -REAL, DIMENSION(:,:), INTENT(IN) :: PP ! Pressure -REAL, DIMENSION(:,:), INTENT(IN) :: PTHL ! Liquid pot. temp. -REAL, DIMENSION(:,:), INTENT(IN) :: PRT ! Total mixing ratios -REAL, DIMENSION(:,:),OPTIONAL,INTENT(IN) :: PRR, PRS, PRG, PRH -REAL, DIMENSION(:,:), INTENT(OUT):: PTH ! Potential temp. -REAL, DIMENSION(:,:), INTENT(OUT):: PRV ! vapor mixing ratio -REAL, DIMENSION(:,:), INTENT(INOUT):: PRL ! cloud mixing ratio -REAL, DIMENSION(:,:), INTENT(INOUT):: PRI ! ice mixing ratio -REAL, DIMENSION(:,:), INTENT(OUT) :: PRSATW ! estimated mixing ration at saturation over water -REAL, DIMENSION(:,:), INTENT(OUT) :: PRSATI ! estimated mixing ration at saturation over ice -LOGICAL, INTENT(IN) :: OOCEAN ! switch OCEAN version - -! -!------------------------------------------------------------------------------- -! -! 0.2 declaration of local variables -! -!---------------------------------------------------------------------------- -! -REAL, DIMENSION(SIZE(PP,1),SIZE(PP,2)) :: ZRR, ZRS, ZRG, ZRH -REAL(KIND=JPRB) :: ZHOOK_HANDLE -INTEGER :: JK -!---------------------------------------------------------------------------- -! -!* 1 Initialisation -! -------------- -! -IF (LHOOK) CALL DR_HOOK('TH_R_FROM_THL_RT_2D',0,ZHOOK_HANDLE) -ZRR(:,:)=0. -ZRS(:,:)=0. -ZRG(:,:)=0. -ZRH(:,:)=0. -IF(PRESENT(PRR)) ZRR(:,:)=PRR(:,:) -IF(PRESENT(PRS)) ZRS(:,:)=PRS(:,:) -IF(PRESENT(PRG)) ZRG(:,:)=PRG(:,:) -IF(PRESENT(PRH)) ZRH(:,:)=PRH(:,:) -! -! -! 2 Call of 1d version -! ------------------ -DO JK=1, SIZE(PTHL,2) - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE(:,JK),PP(:,JK), & - PTHL(:,JK), PRT(:,JK), PTH(:,JK), & - PRV(:,JK), PRL(:,JK), PRI(:,JK), & - PRSATW(:,JK), PRSATI(:,JK), & - ZRR(:,JK), ZRS(:,JK), ZRG(:,JK), ZRH(:,JK),OOCEAN) -ENDDO - -IF (LHOOK) CALL DR_HOOK('TH_R_FROM_THL_RT_2D',1,ZHOOK_HANDLE) - -END SUBROUTINE TH_R_FROM_THL_RT_2D -END MODULE MODE_TH_R_FROM_THL_RT_2D - diff --git a/src/common/turb/mode_th_r_from_thl_rt_3d.F90 b/src/common/turb/mode_th_r_from_thl_rt_3d.F90 deleted file mode 100644 index 1e179b139debd6d2c8e7c57146ba47244e7442ac..0000000000000000000000000000000000000000 --- a/src/common/turb/mode_th_r_from_thl_rt_3d.F90 +++ /dev/null @@ -1,108 +0,0 @@ -!MNH_LIC Copyright 2006-2022 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 MODE_TH_R_FROM_THL_RT_3D -IMPLICIT NONE -CONTAINS - SUBROUTINE TH_R_FROM_THL_RT_3D(HFRAC_ICE,PFRAC_ICE,PP, & - PTHL, PRT, PTH, PRV, PRL, PRI, & - PRSATW, PRSATI, PRR, PRS, PRG, PRH,OOCEAN) -! ################################################################# -! -! -!!**** *TH_R_FROM_THL_RT_3D* - computes the non-conservative variables -!! from conservative variables -!! -!! PURPOSE -!! ------- -!! -!!** METHOD -!! ------ -!! -!! -!! EXTERNAL -!! -------- -!! -!! IMPLICIT ARGUMENTS -!! ------------------ -!! -!! -!! REFERENCE -!! --------- -!! -!! AUTHOR -!! ------ -!! Julien PERGAUD * Meteo-France * -!! -!! MODIFICATIONS -!! ------------- -!! Original 15/03/2011 -!! S. Riette April 2011 : code moved in th_r_from_thl_rt_1d -!! -!! -------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODE_TH_R_FROM_THL_RT_1D, ONLY: TH_R_FROM_THL_RT_1D -USE PARKIND1, ONLY : JPRB -USE YOMHOOK , ONLY : LHOOK, DR_HOOK -! -IMPLICIT NONE -! -! -!* 0.1 declarations of arguments -! -CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PFRAC_ICE -REAL, DIMENSION(:,:,:), INTENT(IN) :: PP ! Pressure -REAL, DIMENSION(:,:,:), INTENT(IN) :: PTHL ! thetal to transform into th -REAL, DIMENSION(:,:,:),INTENT(IN) :: PRT ! Total mixing ratios to transform into rv,rc and ri -REAL, DIMENSION(:,:,:),OPTIONAL,INTENT(IN) :: PRR, PRS, PRG, PRH -REAL, DIMENSION(:,:,:), INTENT(OUT):: PTH ! th -REAL, DIMENSION(:,:,:), INTENT(OUT):: PRV ! vapor mixing ratio -REAL, DIMENSION(:,:,:), INTENT(INOUT):: PRL ! vapor mixing ratio -REAL, DIMENSION(:,:,:), INTENT(INOUT):: PRI ! vapor mixing ratio -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PRSATW ! estimated mixing ration at saturation over water -REAL, DIMENSION(:,:,:), INTENT(OUT) :: PRSATI ! estimated mixing ration at saturation over ice -LOGICAL, INTENT(IN) :: OOCEAN ! switch OCEAN version -! -!------------------------------------------------------------------------------- -! -! 0.2 declaration of local variables -REAL, DIMENSION(SIZE(PTHL,1),SIZE(PTHL,2),SIZE(PTHL,3)) :: ZRR, ZRS, ZRG, ZRH -REAL(KIND=JPRB) :: ZHOOK_HANDLE -INTEGER :: JJ, JK -!---------------------------------------------------------------------------- -! -!* 1 Initialisation -! -------------- -! -IF (LHOOK) CALL DR_HOOK('TH_R_FROM_THL_RT_3D',0,ZHOOK_HANDLE) -ZRR(:,:,:)=0. -ZRS(:,:,:)=0. -ZRG(:,:,:)=0. -ZRH(:,:,:)=0. -IF(PRESENT(PRR)) ZRR(:,:,:)=PRR(:,:,:) -IF(PRESENT(PRS)) ZRS(:,:,:)=PRS(:,:,:) -IF(PRESENT(PRG)) ZRG(:,:,:)=PRG(:,:,:) -IF(PRESENT(PRH)) ZRH(:,:,:)=PRH(:,:,:) -! -! -! 2 Call of 1d version -! ------------------ -DO JK=1, SIZE(PTHL,3) - DO JJ=1, SIZE(PTHL,2) - CALL TH_R_FROM_THL_RT_1D(HFRAC_ICE,PFRAC_ICE(:,JJ,JK),PP(:,JJ,JK), & - PTHL(:,JJ,JK), PRT(:,JJ,JK), PTH(:,JJ,JK), & - PRV(:,JJ,JK), PRL(:,JJ,JK), PRI(:,JJ,JK), & - PRSATW(:,JJ,JK), PRSATI(:,JJ,JK), & - ZRR(:,JJ,JK), ZRS(:,JJ,JK), ZRG(:,JJ,JK), ZRH(:,JJ,JK),OOCEAN) - ENDDO -ENDDO - -IF (LHOOK) CALL DR_HOOK('TH_R_FROM_THL_RT_3D',1,ZHOOK_HANDLE) - -END SUBROUTINE TH_R_FROM_THL_RT_3D -END MODULE MODE_TH_R_FROM_THL_RT_3D diff --git a/src/common/turb/mode_thl_rt_from_th_r_mf.F90 b/src/common/turb/mode_thl_rt_from_th_r_mf.F90 index bf72ab9439b62e883471b54f7abb10ecce8c4031..055c6b5ee3c78862868a27b9a63fb61fcf28ef45 100644 --- a/src/common/turb/mode_thl_rt_from_th_r_mf.F90 +++ b/src/common/turb/mode_thl_rt_from_th_r_mf.F90 @@ -5,7 +5,7 @@ MODULE MODE_THL_RT_FROM_TH_R_MF IMPLICIT NONE CONTAINS - SUBROUTINE THL_RT_FROM_TH_R_MF( KRR,KRRL,KRRI, & + SUBROUTINE THL_RT_FROM_TH_R_MF( D, CST, KRR, KRRL, KRRI, & PTH, PR, PEXN, & PTHL, PRT ) ! ################################################################# @@ -47,7 +47,8 @@ CONTAINS !* 0. DECLARATIONS ! ------------ ! -USE MODD_CST +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY : CST_t USE PARKIND1, ONLY : JPRB USE YOMHOOK , ONLY : LHOOK, DR_HOOK ! @@ -56,16 +57,18 @@ IMPLICIT NONE ! !* 0.1 declarations of arguments ! +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST INTEGER, INTENT(IN) :: KRR ! number of moist var. INTEGER, INTENT(IN) :: KRRL ! number of liquid water var. INTEGER, INTENT(IN) :: KRRI ! number of ice water var. -REAL, DIMENSION(:,:), INTENT(IN) :: PTH ! theta -REAL, DIMENSION(:,:,:), INTENT(IN) :: PR ! water species -REAL, DIMENSION(:,:), INTENT(IN) :: PEXN ! exner function +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTH ! theta +REAL, DIMENSION(D%NIJT,D%NKT,KRR), INTENT(IN) :: PR ! water species +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEXN ! exner function -REAL, DIMENSION(:,:), INTENT(OUT) :: PTHL ! th_l -REAL, DIMENSION(:,:), INTENT(OUT) :: PRT ! total non precip. water +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PTHL ! th_l +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PRT ! total non precip. water ! !------------------------------------------------------------------------------- ! @@ -73,50 +76,65 @@ REAL, DIMENSION(:,:), INTENT(OUT) :: PRT ! total non precip. water ! !---------------------------------------------------------------------------- -REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2)) :: ZCP, ZT -REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2)) :: ZLVOCPEXN, ZLSOCPEXN -INTEGER :: JRR +REAL, DIMENSION(D%NIJT,D%NKT) :: ZCP, ZT +REAL, DIMENSION(D%NIJT,D%NKT) :: ZLVOCPEXN, ZLSOCPEXN +INTEGER :: JRR, JI, JK REAL(KIND=JPRB) :: ZHOOK_HANDLE !---------------------------------------------------------------------------- ! ! IF (LHOOK) CALL DR_HOOK('THL_RT_FRM_TH_R_MF',0,ZHOOK_HANDLE) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) !temperature -ZT(:,:) = PTH(:,:) * PEXN(:,:) +ZT(D%NIJB:D%NIJE,:) = PTH(D%NIJB:D%NIJE,:) * PEXN(D%NIJB:D%NIJE,:) !Cp -ZCP=XCPD -IF (KRR > 0) ZCP(:,:) = ZCP(:,:) + XCPV * PR(:,:,1) +ZCP(D%NIJB:D%NIJE,:)=CST%XCPD +IF (KRR > 0) ZCP(D%NIJB:D%NIJE,:) = ZCP(D%NIJB:D%NIJE,:) + CST%XCPV * PR(D%NIJB:D%NIJE,:,1) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) DO JRR = 2,1+KRRL ! loop on the liquid components - ZCP(:,:) = ZCP(:,:) + XCL * PR(:,:,JRR) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + ZCP(D%NIJB:D%NIJE,:) = ZCP(D%NIJB:D%NIJE,:) + CST%XCL * PR(D%NIJB:D%NIJE,:,JRR) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) END DO DO JRR = 2+KRRL,1+KRRL+KRRI ! loop on the solid components - ZCP(:,:) = ZCP(:,:) + XCI * PR(:,:,JRR) + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) + ZCP(D%NIJB:D%NIJE,:) = ZCP(D%NIJB:D%NIJE,:) + CST%XCI * PR(D%NIJB:D%NIJE,:,JRR) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) END DO IF ( KRRL >= 1 ) THEN IF ( KRRI >= 1 ) THEN + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) !ZLVOCPEXN and ZLSOCPEXN - ZLVOCPEXN(:,:)=(XLVTT + (XCPV-XCL) * (ZT(:,:)-XTT) ) / ZCP(:,:) / PEXN(:,:) - ZLSOCPEXN(:,:)=(XLSTT + (XCPV-XCI) * (ZT(:,:)-XTT) ) / ZCP(:,:) / PEXN(:,:) + ZLVOCPEXN(D%NIJB:D%NIJE,:)=(CST%XLVTT + (CST%XCPV-CST%XCL) * (ZT(D%NIJB:D%NIJE,:)-CST%XTT) ) & + &/ ZCP(D%NIJB:D%NIJE,:) / PEXN(D%NIJB:D%NIJE,:) + ZLSOCPEXN(D%NIJB:D%NIJE,:)=(CST%XLSTT + (CST%XCPV-CST%XCI) * (ZT(D%NIJB:D%NIJE,:)-CST%XTT) ) & + &/ ZCP(D%NIJB:D%NIJE,:) / PEXN(D%NIJB:D%NIJE,:) ! Rnp - PRT(:,:) = PR(:,:,1) + PR(:,:,2) + PR(:,:,4) + PRT(D%NIJB:D%NIJE,:) = PR(D%NIJB:D%NIJE,:,1) + PR(D%NIJB:D%NIJE,:,2) + PR(D%NIJB:D%NIJE,:,4) ! Theta_l - PTHL(:,:) = PTH(:,:) - ZLVOCPEXN(:,:) * PR(:,:,2) & - - ZLSOCPEXN(:,:) * PR(:,:,4) + PTHL(D%NIJB:D%NIJE,:) = PTH(D%NIJB:D%NIJE,:) - ZLVOCPEXN(D%NIJB:D%NIJE,:) * PR(D%NIJB:D%NIJE,:,2) & + - ZLSOCPEXN(D%NIJB:D%NIJE,:) * PR(D%NIJB:D%NIJE,:,4) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ELSE + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) !ZLVOCPEXN - ZLVOCPEXN(:,:)=(XLVTT + (XCPV-XCL) * (ZT(:,:)-XTT) ) / ZCP(:,:) / PEXN(:,:) + ZLVOCPEXN(D%NIJB:D%NIJE,:)=(CST%XLVTT + (CST%XCPV-CST%XCL) * (ZT(D%NIJB:D%NIJE,:)-CST%XTT) ) & + &/ ZCP(D%NIJB:D%NIJE,:) / PEXN(D%NIJB:D%NIJE,:) ! Rnp - PRT(:,:) = PR(:,:,1) + PR(:,:,2) + PRT(D%NIJB:D%NIJE,:) = PR(D%NIJB:D%NIJE,:,1) + PR(D%NIJB:D%NIJE,:,2) ! Theta_l - PTHL(:,:) = PTH(:,:) - ZLVOCPEXN(:,:) * PR(:,:,2) + PTHL(D%NIJB:D%NIJE,:) = PTH(D%NIJB:D%NIJE,:) - ZLVOCPEXN(D%NIJB:D%NIJE,:) * PR(D%NIJB:D%NIJE,:,2) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) END IF ELSE + !$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) ! Rnp = rv - PRT(:,:) = PR(:,:,1) + PRT(D%NIJB:D%NIJE,:) = PR(D%NIJB:D%NIJE,:,1) ! Theta_l = Theta - PTHL(:,:) = PTH(:,:) + PTHL(D%NIJB:D%NIJE,:) = PTH(D%NIJB:D%NIJE,:) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=1:D%NKT) END IF IF (LHOOK) CALL DR_HOOK('THL_RT_FRM_TH_R_MF',1,ZHOOK_HANDLE) END SUBROUTINE THL_RT_FROM_TH_R_MF diff --git a/src/common/turb/mode_tke_eps_sources.F90 b/src/common/turb/mode_tke_eps_sources.F90 index d128919ddfaaf79965c97dab65f75856f5fa8e9e..6d8332a9a834bcacf1d9a998b06a1a019842adbf 100644 --- a/src/common/turb/mode_tke_eps_sources.F90 +++ b/src/common/turb/mode_tke_eps_sources.F90 @@ -182,6 +182,7 @@ CHARACTER(LEN=6), INTENT(IN) :: HPROGRAM ! CPROGRAM is the program TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file LOGICAL, INTENT(IN) :: OLES_CALL ! LOGICAL, INTENT(IN) :: OTURB_DIAG ! switch to write some +LOGICAL, INTENT(IN) :: ODIAG_IN_RUN ! switch to activate online diagnostics (mesonh) ! diagnostic fields in the syncronous FM-file LOGICAL, INTENT(IN) :: ODIAG_IN_RUN ! switch to activate online diagnostics (mesonh) REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT):: PDP ! Dyn. prod. of TKE diff --git a/src/common/turb/mode_tridiag_massflux.F90 b/src/common/turb/mode_tridiag_massflux.F90 index 915d75b936fd4131452da4cf5c7e41a9922390f5..c2145ba59cb306a42e5d5d362f85c7466ec927a2 100644 --- a/src/common/turb/mode_tridiag_massflux.F90 +++ b/src/common/turb/mode_tridiag_massflux.F90 @@ -5,7 +5,7 @@ MODULE MODE_TRIDIAG_MASSFLUX IMPLICIT NONE CONTAINS -SUBROUTINE TRIDIAG_MASSFLUX(KKA,KKB,KKE,KKU,KKL,PVARM,PF,PDFDT,PTSTEP,PIMPL, & +SUBROUTINE TRIDIAG_MASSFLUX(D,PVARM,PF,PDFDT,PTSTEP,PIMPL, & PDZZ,PRHODJ,PVARP ) USE PARKIND1, ONLY : JPRB @@ -121,40 +121,37 @@ SUBROUTINE TRIDIAG_MASSFLUX(KKA,KKB,KKE,KKU,KKL,PVARM,PF,PDFDT,PTSTEP,PIMPL, & ! !* 0. DECLARATIONS ! -USE MODD_PARAMETERS, ONLY: JPVEXT -USE MODI_SHUMAN_MF +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +! +USE MODI_SHUMAN_MF, ONLY: MZM_MF ! IMPLICIT NONE ! ! !* 0.1 declarations of arguments ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKB ! near ground physical index -INTEGER, INTENT(IN) :: KKE ! uppest atmosphere physical index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(:,:), INTENT(IN) :: PVARM ! variable at t-1 at mass point -REAL, DIMENSION(:,:), INTENT(IN) :: PF ! flux in dT/dt=-dF/dz at flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PDFDT ! dF/dT at flux point +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PVARM ! variable at t-1 at mass point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PF ! flux in dT/dt=-dF/dz at flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDFDT ! dF/dT at flux point REAL, INTENT(IN) :: PTSTEP ! Double time step REAL, INTENT(IN) :: PIMPL ! implicit weight -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Dz at flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODJ ! (dry rho)*J at mass point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Dz at flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODJ ! (dry rho)*J at mass point ! -REAL, DIMENSION(:,:), INTENT(OUT):: PVARP ! variable at t+1 at mass point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PVARP ! variable at t+1 at mass point ! ! !* 0.2 declarations of local variables ! -REAL, DIMENSION(SIZE(PVARM,1),SIZE(PVARM,2)) :: ZRHODJ_DFDT_O_DZ -REAL, DIMENSION(SIZE(PVARM,1),SIZE(PVARM,2)) :: ZMZM_RHODJ -REAL, DIMENSION(SIZE(PVARM,1),SIZE(PVARM,2)) :: ZA, ZB, ZC -REAL, DIMENSION(SIZE(PVARM,1),SIZE(PVARM,2)) :: ZY ,ZGAM +REAL, DIMENSION(D%NIJT,D%NKT) :: ZRHODJ_DFDT_O_DZ +REAL, DIMENSION(D%NIJT,D%NKT) :: ZMZM_RHODJ +REAL, DIMENSION(D%NIJT,D%NKT) :: ZA, ZB, ZC +REAL, DIMENSION(D%NIJT,D%NKT) :: ZY ,ZGAM ! RHS of the equation, 3D work array -REAL, DIMENSION(SIZE(PVARM,1)) :: ZBET +REAL, DIMENSION(D%NIJT) :: ZBET ! 2D work array -INTEGER :: JK ! loop counter +INTEGER :: JK, JI ! loop counter ! ! --------------------------------------------------------------------------- ! @@ -163,7 +160,7 @@ INTEGER :: JK ! loop counter ! REAL(KIND=JPRB) :: ZHOOK_HANDLE IF (LHOOK) CALL DR_HOOK('TRIDIAG_MASSFLUX',0,ZHOOK_HANDLE) -ZMZM_RHODJ = MZM_MF(PRHODJ, KKA, KKU, KKL) +CALL MZM_MF(D, PRHODJ, ZMZM_RHODJ) ZRHODJ_DFDT_O_DZ = ZMZM_RHODJ*PDFDT/PDZZ ! ZA=0. @@ -175,30 +172,38 @@ ZY=0. !* 2. COMPUTE THE RIGHT HAND SIDE ! --------------------------- ! -ZY(:,KKB) = PRHODJ(:,KKB)*PVARM(:,KKB)/PTSTEP & - - ZMZM_RHODJ(:,KKB+KKL) * PF(:,KKB+KKL)/PDZZ(:,KKB+KKL) & - + ZMZM_RHODJ(:,KKB ) * PF(:,KKB )/PDZZ(:,KKB ) & - + ZRHODJ_DFDT_O_DZ(:,KKB+KKL) * 0.5*PIMPL * PVARM(:,KKB+KKL) & - + ZRHODJ_DFDT_O_DZ(:,KKB+KKL) * 0.5*PIMPL * PVARM(:,KKB ) -! -DO JK=2+JPVEXT,SIZE(ZY,2)-JPVEXT-1 - ZY(:,JK) = PRHODJ(:,JK)*PVARM(:,JK)/PTSTEP & - - ZMZM_RHODJ(:,JK+KKL) * PF(:,JK+KKL)/PDZZ(:,JK+KKL) & - + ZMZM_RHODJ(:,JK ) * PF(:,JK )/PDZZ(:,JK ) & - + ZRHODJ_DFDT_O_DZ(:,JK+KKL) * 0.5*PIMPL * PVARM(:,JK+KKL) & - + ZRHODJ_DFDT_O_DZ(:,JK+KKL) * 0.5*PIMPL * PVARM(:,JK ) & - - ZRHODJ_DFDT_O_DZ(:,JK ) * 0.5*PIMPL * PVARM(:,JK ) & - - ZRHODJ_DFDT_O_DZ(:,JK ) * 0.5*PIMPL * PVARM(:,JK-KKL) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +ZY(D%NIJB:D%NIJE,D%NKB) = PRHODJ(D%NIJB:D%NIJE,D%NKB)*PVARM(D%NIJB:D%NIJE,D%NKB)/PTSTEP & + - ZMZM_RHODJ(D%NIJB:D%NIJE,D%NKB+D%NKL) * PF(D%NIJB:D%NIJE,D%NKB+D%NKL)/PDZZ(D%NIJB:D%NIJE,D%NKB+D%NKL) & + + ZMZM_RHODJ(D%NIJB:D%NIJE,D%NKB ) * PF(D%NIJB:D%NIJE,D%NKB )/PDZZ(D%NIJB:D%NIJE,D%NKB ) & + + ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKB+D%NKL) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,D%NKB+D%NKL) & + + ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKB+D%NKL) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,D%NKB ) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) +! +DO JK=1+D%NKTB,D%NKTE-1 + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZY(D%NIJB:D%NIJE,JK) = PRHODJ(D%NIJB:D%NIJE,JK)*PVARM(D%NIJB:D%NIJE,JK)/PTSTEP & + - ZMZM_RHODJ(D%NIJB:D%NIJE,JK+D%NKL) * PF(D%NIJB:D%NIJE,JK+D%NKL)/PDZZ(D%NIJB:D%NIJE,JK+D%NKL) & + + ZMZM_RHODJ(D%NIJB:D%NIJE,JK ) * PF(D%NIJB:D%NIJE,JK )/PDZZ(D%NIJB:D%NIJE,JK ) & + + ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK+D%NKL) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,JK+D%NKL) & + + ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK+D%NKL) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,JK ) & + - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK ) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,JK ) & + - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK ) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,JK-D%NKL) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO ! -IF (JPVEXT==0) THEN - ZY(:,KKE) = PRHODJ(:,KKE)*PVARM(:,KKE)/PTSTEP +IF (D%NKE==D%NKU) THEN + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZY(D%NIJB:D%NIJE,D%NKE) = PRHODJ(D%NIJB:D%NIJE,D%NKE)*PVARM(D%NIJB:D%NIJE,D%NKE)/PTSTEP + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ELSE - ZY(:,KKE) = PRHODJ(:,KKE)*PVARM(:,KKE)/PTSTEP & - - ZMZM_RHODJ(:,KKE+KKL) * PF(:,KKE+KKL)/PDZZ(:,KKE+KKL) & - + ZMZM_RHODJ(:,KKE ) * PF(:,KKE )/PDZZ(:,KKE ) & - - ZRHODJ_DFDT_O_DZ(:,KKE ) * 0.5*PIMPL * PVARM(:,KKE ) & - - ZRHODJ_DFDT_O_DZ(:,KKE ) * 0.5*PIMPL * PVARM(:,KKE-KKL) + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZY(D%NIJB:D%NIJE,D%NKE) = PRHODJ(D%NIJB:D%NIJE,D%NKE)*PVARM(D%NIJB:D%NIJE,D%NKE)/PTSTEP & + - ZMZM_RHODJ(D%NIJB:D%NIJE,D%NKE+D%NKL) * PF(D%NIJB:D%NIJE,D%NKE+D%NKL)/PDZZ(D%NIJB:D%NIJE,D%NKE+D%NKL) & + + ZMZM_RHODJ(D%NIJB:D%NIJE,D%NKE ) * PF(D%NIJB:D%NIJE,D%NKE )/PDZZ(D%NIJB:D%NIJE,D%NKE ) & + - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKE ) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,D%NKE ) & + - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKE ) * 0.5*PIMPL * PVARM(D%NIJB:D%NIJE,D%NKE-D%NKL) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ENDIF ! ! @@ -210,58 +215,74 @@ IF ( PIMPL > 1.E-10 ) THEN !* 3.1 arrays A, B, C ! -------------- ! - ZB(:,KKB) = PRHODJ(:,KKB)/PTSTEP & - + ZRHODJ_DFDT_O_DZ(:,KKB+KKL) * 0.5*PIMPL - ZC(:,KKB) = ZRHODJ_DFDT_O_DZ(:,KKB+KKL) * 0.5*PIMPL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZB(D%NIJB:D%NIJE,D%NKB) = PRHODJ(D%NIJB:D%NIJE,D%NKB)/PTSTEP & + + ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKB+D%NKL) * 0.5*PIMPL + ZC(D%NIJB:D%NIJE,D%NKB) = ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKB+D%NKL) * 0.5*PIMPL + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) - DO JK=2+JPVEXT,SIZE(ZY,2)-JPVEXT-1 - ZA(:,JK) = - ZRHODJ_DFDT_O_DZ(:,JK ) * 0.5*PIMPL - ZB(:,JK) = PRHODJ(:,JK)/PTSTEP & - + ZRHODJ_DFDT_O_DZ(:,JK+KKL) * 0.5*PIMPL & - - ZRHODJ_DFDT_O_DZ(:,JK ) * 0.5*PIMPL - ZC(:,JK) = ZRHODJ_DFDT_O_DZ(:,JK+KKL) * 0.5*PIMPL + DO JK=1+D%NKTB,D%NKTE-1 + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZA(D%NIJB:D%NIJE,JK) = - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK ) * 0.5*PIMPL + ZB(D%NIJB:D%NIJE,JK) = PRHODJ(D%NIJB:D%NIJE,JK)/PTSTEP & + + ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK+D%NKL) * 0.5*PIMPL & + - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK ) * 0.5*PIMPL + ZC(D%NIJB:D%NIJE,JK) = ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,JK+D%NKL) * 0.5*PIMPL + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO - - ZA(:,KKE) = - ZRHODJ_DFDT_O_DZ(:,KKE ) * 0.5*PIMPL - ZB(:,KKE) = PRHODJ(:,KKE)/PTSTEP & - - ZRHODJ_DFDT_O_DZ(:,KKE ) * 0.5*PIMPL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZA(D%NIJB:D%NIJE,D%NKE) = - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKE ) * 0.5*PIMPL + ZB(D%NIJB:D%NIJE,D%NKE) = PRHODJ(D%NIJB:D%NIJE,D%NKE)/PTSTEP & + - ZRHODJ_DFDT_O_DZ(D%NIJB:D%NIJE,D%NKE ) * 0.5*PIMPL + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !* 3.2 going up ! -------- ! - ZBET(:) = ZB(:,KKB) ! bet = b(KKB) - PVARP(:,KKB) = ZY(:,KKB) / ZBET(:) + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZBET(D%NIJB:D%NIJE) = ZB(D%NIJB:D%NIJE,D%NKB) ! bet = b(D%NKB) + PVARP(D%NIJB:D%NIJE,D%NKB) = ZY(D%NIJB:D%NIJE,D%NKB) / ZBET(D%NIJB:D%NIJE) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! - DO JK = KKB+KKL,KKE-KKL,KKL - ZGAM(:,JK) = ZC(:,JK-KKL) / ZBET(:) + DO JK = D%NKB+D%NKL,D%NKE-D%NKL,D%NKL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + ZGAM(D%NIJB:D%NIJE,JK) = ZC(D%NIJB:D%NIJE,JK-D%NKL) / ZBET(D%NIJB:D%NIJE) ! gam(k) = c(k-1) / bet - ZBET(:) = ZB(:,JK) - ZA(:,JK) * ZGAM(:,JK) + ZBET(D%NIJB:D%NIJE) = ZB(D%NIJB:D%NIJE,JK) - ZA(D%NIJB:D%NIJE,JK) * ZGAM(D%NIJB:D%NIJE,JK) ! bet = b(k) - a(k)* gam(k) - PVARP(:,JK)= ( ZY(:,JK) - ZA(:,JK) * PVARP(:,JK-KKL) ) / ZBET(:) + PVARP(D%NIJB:D%NIJE,JK)= ( ZY(D%NIJB:D%NIJE,JK) - ZA(D%NIJB:D%NIJE,JK) * PVARP(D%NIJB:D%NIJE,JK-D%NKL) ) / ZBET(D%NIJB:D%NIJE) ! res(k) = (y(k) -a(k)*res(k-1))/ bet + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO + !$mnh_expand_array(JI=D%NIJB:D%NIJE) ! special treatment for the last level - ZGAM(:,KKE) = ZC(:,KKE-KKL) / ZBET(:) + ZGAM(D%NIJB:D%NIJE,D%NKE) = ZC(D%NIJB:D%NIJE,D%NKE-D%NKL) / ZBET(D%NIJB:D%NIJE) ! gam(k) = c(k-1) / bet - ZBET(:) = ZB(:,KKE) - ZA(:,KKE) * ZGAM(:,KKE) + ZBET(D%NIJB:D%NIJE) = ZB(D%NIJB:D%NIJE,D%NKE) - ZA(D%NIJB:D%NIJE,D%NKE) * ZGAM(D%NIJB:D%NIJE,D%NKE) ! bet = b(k) - a(k)* gam(k) - PVARP(:,KKE)= ( ZY(:,KKE) - ZA(:,KKE) * PVARP(:,KKE-KKL) ) / ZBET(:) + PVARP(D%NIJB:D%NIJE,D%NKE)= ( ZY(D%NIJB:D%NIJE,D%NKE) - ZA(D%NIJB:D%NIJE,D%NKE) * PVARP(D%NIJB:D%NIJE,D%NKE-D%NKL) ) / & + &ZBET(D%NIJB:D%NIJE) ! res(k) = (y(k) -a(k)*res(k-1))/ bet + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !* 3.3 going down ! ---------- ! - DO JK = KKE-KKL,KKB,-KKL - PVARP(:,JK) = PVARP(:,JK) - ZGAM(:,JK+KKL) * PVARP(:,JK+KKL) + DO JK = D%NKE-D%NKL,D%NKB,-D%NKL + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PVARP(D%NIJB:D%NIJE,JK) = PVARP(D%NIJB:D%NIJE,JK) - ZGAM(D%NIJB:D%NIJE,JK+D%NKL) * PVARP(D%NIJB:D%NIJE,JK+D%NKL) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO ! ! ELSE !!! EXPLICIT FORMULATION ! - DO JK=1+JPVEXT,SIZE(PVARP,2)-JPVEXT - PVARP(:,JK) = ZY(:,JK) * PTSTEP / PRHODJ(:,JK) + DO JK=D%NKTB,D%NKTE + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PVARP(D%NIJB:D%NIJE,JK) = ZY(D%NIJB:D%NIJE,JK) * PTSTEP / PRHODJ(D%NIJB:D%NIJE,JK) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ENDDO ! END IF @@ -270,8 +291,10 @@ END IF !* 4. FILL THE UPPER AND LOWER EXTERNAL VALUES ! ---------------------------------------- ! -PVARP(:,KKA)=PVARP(:,KKB) -PVARP(:,KKU)=PVARP(:,KKE) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PVARP(D%NIJB:D%NIJE,D%NKA)=PVARP(D%NIJB:D%NIJE,D%NKB) +PVARP(D%NIJB:D%NIJE,D%NKU)=PVARP(D%NIJB:D%NIJE,D%NKE) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !------------------------------------------------------------------------------- ! diff --git a/src/common/turb/modi_shallow_mf.F90 b/src/common/turb/modi_shallow_mf.F90 index 23559eeec6a0afd8573c7c913de4933267eb154b..2fc3b6b45b3aa78a57bf60e8e9c29d86e34f6ddd 100644 --- a/src/common/turb/modi_shallow_mf.F90 +++ b/src/common/turb/modi_shallow_mf.F90 @@ -4,7 +4,8 @@ ! INTERFACE ! ################################################################# - SUBROUTINE SHALLOW_MF(KKA,KKU,KKL,KRR,KRRL,KRRI, & + SUBROUTINE SHALLOW_MF(D, CST, NEB, PARAMMF, TURB, CSTURB, & + KRR, KRRL, KRRI, KSV, & HMF_UPDRAFT, HMF_CLOUD, HFRAC_ICE, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PIMPL_MF, PTSTEP, & @@ -23,16 +24,26 @@ INTERFACE KKLCL,KKETL,KKCTL,PDX,PDY ) ! ################################################################# !! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_NEB, ONLY: NEB_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +USE MODD_TURB_n, ONLY: TURB_t +USE MODD_CTURB, ONLY: CSTURB_t ! !* 1.1 Declaration of Arguments ! ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(NEB_t), INTENT(IN) :: NEB +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +TYPE(TURB_t), INTENT(IN) :: TURB +TYPE(CSTURB_t), INTENT(IN) :: CSTURB INTEGER, INTENT(IN) :: KRR ! number of moist var. INTEGER, INTENT(IN) :: KRRL ! number of liquid water var. INTEGER, INTENT(IN) :: KRRI ! number of ice water var. +INTEGER, INTENT(IN) :: KSV CHARACTER (LEN=4), INTENT(IN) :: HMF_UPDRAFT ! Type of Mass Flux Scheme ! 'NONE' if no parameterization CHARACTER (LEN=4), INTENT(IN) :: HMF_CLOUD ! Type of statistical cloud @@ -45,49 +56,49 @@ INTEGER, INTENT(IN) :: KSV_LGEND ! last index of lag. tracer REAL, INTENT(IN) :: PIMPL_MF ! degre of implicitness REAL, INTENT(IN) :: PTSTEP ! Dynamical timestep -REAL, DIMENSION(:,:), INTENT(IN) :: PZZ ! Height of flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Metric coefficients -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODJ ! dry density * Grid size -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODREF ! dry density of the +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PZZ ! Height of flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Metric coefficients +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODJ ! dry density * Grid size +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODREF ! dry density of the ! reference state -REAL, DIMENSION(:,:), INTENT(IN) :: PPABSM ! Pressure at time t-1 -REAL, DIMENSION(:,:), INTENT(IN) :: PEXNM ! Exner function at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PPABSM ! Pressure at time t-1 +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEXNM ! Exner function at t-dt -REAL, DIMENSION(:), INTENT(IN) :: PSFTH,PSFRV ! normal surface fluxes of theta and Rv -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM ! Theta at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRM ! water var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PUM,PVM ! wind components at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTKEM ! tke at t-dt +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PSFTH,PSFRV ! normal surface fluxes of theta and Rv +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM ! Theta at t-dt +REAL, DIMENSION(D%NIJT,KRR), INTENT(IN) :: PRM ! water var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PUM,PVM ! wind components at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTKEM ! tke at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSVM ! scalar variable a t-dt +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(IN) :: PSVM ! scalar variable a t-dt -REAL, DIMENSION(:,:), INTENT(OUT):: PDUDT_MF ! tendency of U by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT):: PDVDT_MF ! tendency of V by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT):: PDTHLDT_MF ! tendency of thl by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT):: PDRTDT_MF ! tendency of rt by massflux scheme -REAL, DIMENSION(:,:,:), INTENT(OUT):: PDSVDT_MF ! tendency of Sv by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDUDT_MF ! tendency of U by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDVDT_MF ! tendency of V by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDTHLDT_MF ! tendency of thl by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDRTDT_MF ! tendency of rt by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(OUT):: PDSVDT_MF ! tendency of Sv by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT) :: PSIGMF,PRC_MF,PRI_MF,PCF_MF ! cloud info for the cloud scheme -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZTHVMF ! Thermal production for TKE scheme -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZTHMF -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZRMF -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZUMF -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZVMF -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTHL_UP ! Thl updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRT_UP ! Rt updraft characteristics -REAL, DIMENSION(:,:), INTENT(OUT) :: PRV_UP ! Vapor updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PU_UP ! U wind updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PV_UP ! V wind updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRC_UP ! cloud content updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRI_UP ! ice content updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTHV_UP ! Thv updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PW_UP ! vertical speed updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC_UP ! updraft fraction -REAL, DIMENSION(:,:), INTENT(INOUT) :: PEMF ! updraft mass flux -REAL, DIMENSION(:,:), INTENT(OUT) :: PDETR ! updraft detrainment -REAL, DIMENSION(:,:), INTENT(OUT) :: PENTR ! updraft entrainment -INTEGER,DIMENSION(:), INTENT(OUT) :: KKLCL,KKETL,KKCTL ! level of LCL,ETL and CTL -REAL, INTENT(IN) :: PDX, PDY +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PSIGMF,PRC_MF,PRI_MF,PCF_MF ! cloud info for the cloud scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZTHVMF ! Thermal production for TKE scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZTHMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZRMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZUMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZVMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PTHL_UP ! Thl updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PRT_UP ! Rt updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PRV_UP ! Vapor updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PU_UP ! U wind updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PV_UP ! V wind updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PRC_UP ! cloud content updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PRI_UP ! ice content updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PTHV_UP ! Thv updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PW_UP ! vertical speed updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PFRAC_UP ! updraft fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PEMF ! updraft mass flux +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PDETR ! updraft detrainment +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PENTR ! updraft entrainment +INTEGER,DIMENSION(D%NIJT), INTENT(OUT) :: KKLCL,KKETL,KKCTL ! level of LCL,ETL and CTL +REAL, INTENT(IN) :: PDX, PDY END SUBROUTINE SHALLOW_MF diff --git a/src/common/turb/modi_turb.F90 b/src/common/turb/modi_turb.F90 index 2b145875a2c2790c07e9ae3e9071d3fbf8ea05ec..9a0b9c7f1ce076ce606f18960c65609d44ebbdfd 100644 --- a/src/common/turb/modi_turb.F90 +++ b/src/common/turb/modi_turb.F90 @@ -10,7 +10,7 @@ INTERFACE & HPROGRAM, O2D, ONOMIXLG, OFLAT, & & OLES_CALL,OCOUPLES,OBLOWSNOW, & & OTURB_FLX,OTURB_DIAG,OSUBG_COND,OCOMPUTE_SRC, & - & ORMC01,OOCEAN,ODEEPOC,OHARAT,ODIAG_IN_RUN, & + & ORMC01,OOCEAN,ODEEPOC,OHARAT, ODIAG_IN_RUN, & & HTURBDIM,HTURBLEN,HTOM,HTURBLEN_CL,HCLOUD, & & PIMPL,PTSTEP,TPFILE, & & PDXX,PDYY,PDZZ,PDZX,PDZY,PZZ, & @@ -27,8 +27,9 @@ INTERFACE & PFLXZTHVMF,PWTH,PWRC,PWSV,PDP,PTP,PTDIFF,PTDISS, & & TBUDGETS, KBUDGETS, & & PEDR,PLEM,PRTKEMS,PTPMF, & - & PDRUS_TURB,PDRVS_TURB,PDRTHLS_TURB,PDRRTS_TURB, & - & PDRSVS_TURB,PCURRENT_TKE_DISS,PTR,PDISS ) + & PDRUS_TURB,PDRVS_TURB, & + & PDRTHLS_TURB,PDRRTS_TURB,PDRSVS_TURB,PTR,PDISS, & + & PCURRENT_TKE_DISS ) ! USE MODD_BUDGET, ONLY : TBUDGETDATA,TBUDGETCONF_t USE MODD_IO, ONLY : TFILEDATA @@ -172,7 +173,11 @@ REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PEDR ! EDR REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PLEM ! Mixing length REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PTR ! Transport prod. of TKE REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PDISS ! Dissipation of TKE +<<<<<<< HEAD REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(INOUT), OPTIONAL :: PCURRENT_TKE_DISS ! if ODIAG_IN_RUN in mesonh +======= +REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(INOUT), OPTIONAL :: PCURRENT_TKE_DISS ! if ODIAG_IN_RUN in mesonh +>>>>>>> GPU ! !------------------------------------------------------------------------------- ! diff --git a/src/common/turb/shallow_mf.F90 b/src/common/turb/shallow_mf.F90 index 814869f50f9f33b5914a93c2779b8fddbaa4aa21..988798bb662451a1ab928f630e8cbbe2a2398147 100644 --- a/src/common/turb/shallow_mf.F90 +++ b/src/common/turb/shallow_mf.F90 @@ -4,7 +4,8 @@ !MNH_LIC for details. version 1. !----------------------------------------------------------------- ! ################################################################ - SUBROUTINE SHALLOW_MF(KKA,KKU,KKL,KRR,KRRL,KRRI, & + SUBROUTINE SHALLOW_MF(D, CST, NEB, PARAMMF, TURB, CSTURB, & + KRR, KRRL, KRRI, KSV, & HMF_UPDRAFT, HMF_CLOUD, HFRAC_ICE, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PIMPL_MF, PTSTEP, & @@ -71,11 +72,13 @@ !* 0. DECLARATIONS ! ------------ ! -USE MODD_CST -USE MODD_PARAMETERS, ONLY: JPVEXT -USE MODD_NEB, ONLY: NEB -USE MODD_PARAM_MFSHALL_n - +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t +USE MODD_NEB, ONLY: NEB_t +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALL_t +USE MODD_TURB_n, ONLY: TURB_t +USE MODD_CTURB, ONLY: CSTURB_t +! USE MODE_THL_RT_FROM_TH_R_MF, ONLY: THL_RT_FROM_TH_R_MF USE MODE_COMPUTE_UPDRAFT, ONLY: COMPUTE_UPDRAFT USE MODE_COMPUTE_UPDRAFT_RHCJ10, ONLY: COMPUTE_UPDRAFT_RHCJ10 @@ -93,12 +96,16 @@ IMPLICIT NONE ! ! ! -INTEGER, INTENT(IN) :: KKA ! near ground array index -INTEGER, INTENT(IN) :: KKU ! uppest atmosphere array index -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise +TYPE(DIMPHYEX_t), INTENT(IN) :: D +TYPE(CST_t), INTENT(IN) :: CST +TYPE(NEB_t), INTENT(IN) :: NEB +TYPE(PARAM_MFSHALL_t), INTENT(IN) :: PARAMMF +TYPE(TURB_t), INTENT(IN) :: TURB +TYPE(CSTURB_t), INTENT(IN) :: CSTURB INTEGER, INTENT(IN) :: KRR ! number of moist var. INTEGER, INTENT(IN) :: KRRL ! number of liquid water var. INTEGER, INTENT(IN) :: KRRI ! number of ice water var. +INTEGER, INTENT(IN) :: KSV CHARACTER(LEN=4), INTENT(IN) :: HMF_UPDRAFT ! Type of Mass Flux Scheme ! 'NONE' if no parameterization CHARACTER(LEN=4), INTENT(IN) :: HMF_CLOUD ! Type of statistical cloud @@ -111,71 +118,71 @@ INTEGER, INTENT(IN) :: KSV_LGEND ! last index of lag. tracer REAL, INTENT(IN) :: PIMPL_MF ! degre of implicitness REAL, INTENT(IN) :: PTSTEP ! Dynamical timestep -REAL, DIMENSION(:,:), INTENT(IN) :: PZZ ! Height of flux point -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Metric coefficients -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODJ ! dry density * Grid size -REAL, DIMENSION(:,:), INTENT(IN) :: PRHODREF ! dry density of the +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PZZ ! Height of flux point +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Metric coefficients +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODJ ! dry density * Grid size +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PRHODREF ! dry density of the ! reference state -REAL, DIMENSION(:,:), INTENT(IN) :: PPABSM ! Pressure at time t-1 -REAL, DIMENSION(:,:), INTENT(IN) :: PEXNM ! Exner function at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PPABSM ! Pressure at time t-1 +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PEXNM ! Exner function at t-dt -REAL, DIMENSION(:), INTENT(IN) :: PSFTH,PSFRV ! normal surface fluxes of theta and Rv -REAL, DIMENSION(:,:), INTENT(IN) :: PTHM ! Theta at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRM ! water var. at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PUM,PVM ! wind components at t-dt -REAL, DIMENSION(:,:), INTENT(IN) :: PTKEM ! tke at t-dt +REAL, DIMENSION(D%NIJT), INTENT(IN) :: PSFTH,PSFRV ! normal surface fluxes of theta and Rv +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTHM ! Theta at t-dt +REAL, DIMENSION(D%NIJT,D%NKT,KRR), INTENT(IN) :: PRM ! water var. at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PUM,PVM ! wind components at t-dt +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PTKEM ! tke at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSVM ! scalar variable a t-dt +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(IN) :: PSVM ! scalar variable a t-dt -REAL, DIMENSION(:,:), INTENT(OUT):: PDUDT_MF ! tendency of U by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT):: PDVDT_MF ! tendency of V by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT):: PDTHLDT_MF ! tendency of thl by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT):: PDRTDT_MF ! tendency of rt by massflux scheme -REAL, DIMENSION(:,:,:), INTENT(OUT):: PDSVDT_MF ! tendency of Sv by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDUDT_MF ! tendency of U by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDVDT_MF ! tendency of V by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDTHLDT_MF ! tendency of thl by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT):: PDRTDT_MF ! tendency of rt by massflux scheme +REAL, DIMENSION(D%NIJT,D%NKT,KSV), INTENT(OUT):: PDSVDT_MF ! tendency of Sv by massflux scheme -REAL, DIMENSION(:,:), INTENT(OUT) :: PSIGMF,PRC_MF,PRI_MF,PCF_MF ! cloud info for the cloud scheme -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZTHVMF ! Thermal production for TKE scheme -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZTHMF -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZRMF -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZUMF -REAL, DIMENSION(:,:), INTENT(OUT) :: PFLXZVMF -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTHL_UP ! Thl updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRT_UP ! Rt updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRV_UP ! Vapor updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PU_UP ! U wind updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PV_UP ! V wind updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRC_UP ! cloud content updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PRI_UP ! ice content updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PTHV_UP ! Thv updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PW_UP ! vertical speed updraft characteristics -REAL, DIMENSION(:,:), INTENT(INOUT) :: PFRAC_UP ! updraft fraction -REAL, DIMENSION(:,:), INTENT(INOUT) :: PEMF ! updraft mass flux -REAL, DIMENSION(:,:), INTENT(OUT) :: PDETR ! updraft detrainment -REAL, DIMENSION(:,:), INTENT(OUT) :: PENTR ! updraft entrainment -INTEGER,DIMENSION(:), INTENT(OUT) :: KKLCL,KKETL,KKCTL ! level of LCL,ETL and CTL +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PSIGMF,PRC_MF,PRI_MF,PCF_MF ! cloud info for the cloud scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZTHVMF ! Thermal production for TKE scheme +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZTHMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZRMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZUMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PFLXZVMF +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PTHL_UP ! Thl updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PRT_UP ! Rt updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PRV_UP ! Vapor updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PU_UP ! U wind updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PV_UP ! V wind updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PRC_UP ! cloud content updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PRI_UP ! ice content updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PTHV_UP ! Thv updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PW_UP ! vertical speed updraft characteristics +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PFRAC_UP ! updraft fraction +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(INOUT) :: PEMF ! updraft mass flux +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PDETR ! updraft detrainment +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PENTR ! updraft entrainment +INTEGER,DIMENSION(D%NIJT), INTENT(OUT) :: KKLCL,KKETL,KKCTL ! level of LCL,ETL and CTL REAL, INTENT(IN) :: PDX, PDY ! ! 0.2 Declaration of local variables ! -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: & +REAL, DIMENSION(D%NIJT,D%NKT) :: & ZTHLM, & ! ZRTM, & ! ZTHVM, & ! ZEMF_O_RHODREF, & ! entrainment/detrainment ZBUO_INTEG ! integrated buoyancy -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZFRAC_ICE +REAL, DIMENSION(D%NIJT,D%NKT) :: ZFRAC_ICE +REAL, DIMENSION(D%NIJT,D%NKT) :: ZWK -REAL, DIMENSION(SIZE(PSVM,1),SIZE(PSVM,2),SIZE(PSVM,3)) :: & +REAL, DIMENSION(D%NIJT,D%NKT,KSV) :: & ZSV_UP,& ! updraft scalar var. ZFLXZSVMF ! Flux -REAL, DIMENSION(SIZE(PTHM,1)) :: ZDEPTH ! Deepness of cloud -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZFRAC_ICE_UP ! liquid/solid fraction in updraft -REAL, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: ZRSAT_UP ! Rsat in updraft +REAL, DIMENSION(D%NIJT) :: ZDEPTH ! Deepness of cloud +REAL, DIMENSION(D%NIJT,D%NKT) :: ZFRAC_ICE_UP ! liquid/solid fraction in updraft +REAL, DIMENSION(D%NIJT,D%NKT) :: ZRSAT_UP ! Rsat in updraft LOGICAL :: GENTR_DETR ! flag to recompute entrainment, detrainment and mass flux -INTEGER :: IKB ! near ground physical index -INTEGER :: IKE ! uppest atmosphere physical index -INTEGER, DIMENSION(SIZE(PTHM,1),SIZE(PTHM,2)) :: IERR +INTEGER, DIMENSION(D%NIJT,D%NKT) :: IERR +INTEGER :: JI, JK ! REAL(KIND=JPRB) :: ZHOOK_HANDLE !------------------------------------------------------------------------ @@ -183,10 +190,6 @@ REAL(KIND=JPRB) :: ZHOOK_HANDLE !!! 1. Initialisation IF (LHOOK) CALL DR_HOOK('SHALLOW_MF',0,ZHOOK_HANDLE) -! vertical boundaries -IKB=KKA+KKL*JPVEXT -IKE=KKU-KKL*JPVEXT - ! updraft governing variables IF (HMF_UPDRAFT == 'EDKF' .OR. HMF_UPDRAFT == 'RHCJ') THEN PENTR = 1.E20 @@ -197,28 +200,35 @@ ENDIF ! Thermodynamics functions ZFRAC_ICE(:,:) = 0. -IF (SIZE(PRM,3).GE.4) THEN - WHERE(PRM(:,:,2)+PRM(:,:,4) > 1.E-20) - ZFRAC_ICE(:,:) = PRM(:,:,4) / (PRM(:,:,2)+PRM(:,:,4)) +IF (KRR.GE.4) THEN + !$mnh_expand_where(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) + WHERE(PRM(D%NIJB:D%NIJE,:,2)+PRM(D%NIJB:D%NIJE,:,4) > 1.E-20) + ZFRAC_ICE(D%NIJB:D%NIJE,:) = PRM(D%NIJB:D%NIJE,:,4) / (PRM(D%NIJB:D%NIJE,:,2)+PRM(D%NIJB:D%NIJE,:,4)) ENDWHERE + !$mnh_end_expand_where(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ENDIF -CALL COMPUTE_FRAC_ICE(HFRAC_ICE,NEB,ZFRAC_ICE(:,:),PTHM(:,:)*PEXNM(:,:), IERR(:,:)) +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +ZWK(D%NIJB:D%NIJE,:)=PTHM(D%NIJB:D%NIJE,:)*PEXNM(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +CALL COMPUTE_FRAC_ICE(HFRAC_ICE,NEB,ZFRAC_ICE(:,:),ZWK(:,:), IERR(:,:)) ! Conservative variables at t-dt -CALL THL_RT_FROM_TH_R_MF(KRR,KRRL,KRRI, & +CALL THL_RT_FROM_TH_R_MF(D, CST, KRR,KRRL,KRRI, & PTHM, PRM, PEXNM, & ZTHLM, ZRTM ) ! Virtual potential temperature at t-dt -ZTHVM(:,:) = PTHM(:,:)*((1.+XRV / XRD *PRM(:,:,1))/(1.+ZRTM(:,:))) - +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +ZTHVM(D%NIJB:D%NIJE,:) = PTHM(D%NIJB:D%NIJE,:)*((1.+CST%XRV / CST%XRD *PRM(D%NIJB:D%NIJE,:,1))/(1.+ZRTM(D%NIJB:D%NIJE,:))) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) ! !!! 2. Compute updraft !!! --------------- ! IF (HMF_UPDRAFT == 'EDKF') THEN GENTR_DETR = .TRUE. - CALL COMPUTE_UPDRAFT(KKA,IKB,IKE,KKU,KKL,HFRAC_ICE,GENTR_DETR,OMIXUV,& + CALL COMPUTE_UPDRAFT(D, CST, NEB, PARAMMF, TURB, CSTURB, & + KSV, HFRAC_ICE, GENTR_DETR, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PZZ,PDZZ, & PSFTH,PSFRV,PPABSM,PRHODREF, & @@ -231,7 +241,8 @@ IF (HMF_UPDRAFT == 'EDKF') THEN PDX,PDY) ELSEIF (HMF_UPDRAFT == 'RHCJ') THEN GENTR_DETR = .TRUE. - CALL COMPUTE_UPDRAFT_RHCJ10(KKA,IKB,IKE,KKU,KKL,HFRAC_ICE,GENTR_DETR,OMIXUV,& + CALL COMPUTE_UPDRAFT_RHCJ10(D, CST, NEB, PARAMMF, TURB, CSTURB,& + KSV, HFRAC_ICE, GENTR_DETR, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PZZ,PDZZ, & PSFTH,PSFRV,PPABSM,PRHODREF, & @@ -242,8 +253,8 @@ ELSEIF (HMF_UPDRAFT == 'RHCJ') THEN PFRAC_UP,ZFRAC_ICE_UP,ZRSAT_UP,PEMF,PDETR,& PENTR,ZBUO_INTEG,KKLCL,KKETL,KKCTL,ZDEPTH ) ELSEIF (HMF_UPDRAFT == 'RAHA') THEN - CALL COMPUTE_UPDRAFT_RAHA(KKA,IKB,IKE,KKU,KKL,HFRAC_ICE, & - GENTR_DETR,OMIXUV, & + CALL COMPUTE_UPDRAFT_RAHA(D, CST, NEB, PARAMMF, & + KSV, HFRAC_ICE, GENTR_DETR, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PZZ,PDZZ, & PSFTH,PSFRV, & @@ -265,7 +276,7 @@ ENDIF !!! 5. Compute diagnostic convective cloud fraction and content !!! -------------------------------------------------------- ! -CALL COMPUTE_MF_CLOUD(KKA,IKB,IKE,KKU,KKL,KRR,KRRL,KRRI,& +CALL COMPUTE_MF_CLOUD(D, CST, PARAMMF, KRR, KRRL, KRRI, & HMF_CLOUD,ZFRAC_ICE, & PRC_UP,PRI_UP,PEMF, & PTHL_UP,PRT_UP,PFRAC_UP, & @@ -280,10 +291,12 @@ CALL COMPUTE_MF_CLOUD(KKA,IKB,IKE,KKU,KKL,KRR,KRRL,KRRI,& !!! 3. Compute fluxes of conservative variables and their divergence = tendency !!! ------------------------------------------------------------------------ ! -ZEMF_O_RHODREF=PEMF/PRHODREF +!$mnh_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) +ZEMF_O_RHODREF(D%NIJB:D%NIJE,:)=PEMF(D%NIJB:D%NIJE,:)/PRHODREF(D%NIJB:D%NIJE,:) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE,JK=D%NKTB:D%NKTE) IF ( PIMPL_MF > 1.E-10 ) THEN - CALL MF_TURB(KKA, IKB, IKE, KKU, KKL, OMIXUV, & + CALL MF_TURB(D, KSV, OMIXUV, & ONOMIXLG,KSV_LGBEG,KSV_LGEND, & PIMPL_MF, PTSTEP, & PDZZ, & @@ -294,7 +307,7 @@ IF ( PIMPL_MF > 1.E-10 ) THEN PFLXZTHMF,PFLXZTHVMF,PFLXZRMF,PFLXZUMF,PFLXZVMF, & ZFLXZSVMF ) ELSE - CALL MF_TURB_EXPL(KKA, IKB, IKE, KKU, KKL, OMIXUV, & + CALL MF_TURB_EXPL(D, PARAMMF, OMIXUV, & PRHODJ, & ZTHLM,ZTHVM,ZRTM,PUM,PVM, & PDTHLDT_MF,PDRTDT_MF,PDUDT_MF,PDVDT_MF, & diff --git a/src/common/turb/shuman_mf.F90 b/src/common/turb/shuman_mf.F90 index 8c1c1ade02fbc219bd9d6143c08cd42293a50bb9..567347cbe7dc59c80935119686968b482808db3b 100644 --- a/src/common/turb/shuman_mf.F90 +++ b/src/common/turb/shuman_mf.F90 @@ -8,51 +8,56 @@ ! INTERFACE ! -FUNCTION DZF_MF(PA, KKA, KKU, KKL) RESULT(PDZF) -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at flux side -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PDZF ! result at mass +SUBROUTINE DZF_MF(D, PA, PDZF) +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +IMPLICIT NONE +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at flux side +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PDZF ! result at mass ! localization -END FUNCTION DZF_MF +END SUBROUTINE DZF_MF ! -FUNCTION DZM_MF(PA, KKA, KKU, KKL) RESULT(PDZM) -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at mass localization -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PDZM ! result at flux +SUBROUTINE DZM_MF(D, PA, PDZM) +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +IMPLICIT NONE +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at mass localization +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PDZM ! result at flux ! side -END FUNCTION DZM_MF +END SUBROUTINE DZM_MF ! -FUNCTION MZF_MF(PA, KKA, KKU, KKL) RESULT(PMZF) -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at flux side -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PMZF ! result at mass +SUBROUTINE MZF_MF(D, PA, PMZF) +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +IMPLICIT NONE +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at flux side +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PMZF ! result at mass ! localization -END FUNCTION MZF_MF -! -FUNCTION MZM_MF(PA, KKA, KKU, KKL) RESULT(PMZM) -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at mass localization -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PMZM ! result at flux localization -END FUNCTION MZM_MF -! -FUNCTION GZ_M_W_MF(PY,PDZZ, KKA, KKU, KKL) RESULT(PGZ_M_W) -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Metric coefficient d*zz -REAL, DIMENSION(:,:), INTENT(IN) :: PY ! variable at mass localization -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PY,1),SIZE(PY,2)) :: PGZ_M_W ! result at flux side -END FUNCTION GZ_M_W_MF +END SUBROUTINE MZF_MF +! +SUBROUTINE MZM_MF(D, PA, PMZM) +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +IMPLICIT NONE +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at mass localization +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PMZM ! result at flux localization +END SUBROUTINE MZM_MF +! +SUBROUTINE GZ_M_W_MF(D, PY, PDZZ, PGZ_M_W) +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +IMPLICIT NONE +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Metric coefficient d*zz +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PY ! variable at mass localization +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PGZ_M_W ! result at flux side +END SUBROUTINE GZ_M_W_MF ! END INTERFACE ! END MODULE MODI_SHUMAN_MF ! ! ############################### - FUNCTION MZF_MF(PA, KKA, KKU, KKL) RESULT(PMZF) + SUBROUTINE MZF_MF(D, PA, PMZF) ! ############################### ! !!**** *MZF* - SHUMAN_MF operator : mean operator in z direction for a @@ -98,21 +103,21 @@ END MODULE MODI_SHUMAN_MF !* 0. DECLARATIONS ! ------------ ! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t IMPLICIT NONE ! !* 0.1 Declarations of argument and result ! ------------------------------------ ! -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at flux side -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PMZF ! result at mass +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at flux side +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PMZF ! result at mass ! localization ! !* 0.2 Declarations of local variables ! ------------------------------- ! -INTEGER :: JK ! Loop index in z direction +INTEGER :: JK, JI ! ! !------------------------------------------------------------------------------- @@ -120,17 +125,21 @@ INTEGER :: JK ! Loop index in z direction !* 1. DEFINITION OF MZF ! ------------------ ! -DO JK=2,SIZE(PA,2)-1 - PMZF(:,JK) = 0.5*( PA(:,JK)+PA(:,JK+KKL) ) +DO JK=2,D%NKT-1 + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PMZF(D%NIJB:D%NIJE,JK) = 0.5*( PA(D%NIJB:D%NIJE,JK)+PA(D%NIJB:D%NIJE,JK+D%NKL) ) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO -PMZF(:,KKA) = 0.5*( PA(:,KKA)+PA(:,KKA+KKL) ) -PMZF(:,KKU) = PA(:,KKU) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PMZF(D%NIJB:D%NIJE,D%NKA) = 0.5*( PA(D%NIJB:D%NIJE,D%NKA)+PA(D%NIJB:D%NIJE,D%NKA+D%NKL) ) +PMZF(D%NIJB:D%NIJE,D%NKU) = PA(D%NIJB:D%NIJE,D%NKU) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !------------------------------------------------------------------------------- ! -END FUNCTION MZF_MF +END SUBROUTINE MZF_MF ! ############################### - FUNCTION MZM_MF(PA, KKA, KKU, KKL) RESULT(PMZM) + SUBROUTINE MZM_MF(D, PA, PMZM) ! ############################### ! !!**** *MZM* - SHUMAN_MF operator : mean operator in z direction for a @@ -176,20 +185,20 @@ END FUNCTION MZF_MF !* 0. DECLARATIONS ! ------------ ! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t IMPLICIT NONE ! !* 0.1 Declarations of argument and result ! ------------------------------------ ! -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at mass localization -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PMZM ! result at flux localization +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at mass localization +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PMZM ! result at flux localization ! !* 0.2 Declarations of local variables ! ------------------------------- ! -INTEGER :: JK ! Loop index in z direction +INTEGER :: JK, JI ! ! !------------------------------------------------------------------------------- @@ -197,17 +206,21 @@ INTEGER :: JK ! Loop index in z direction !* 1. DEFINITION OF MZM ! ------------------ ! -DO JK=2,SIZE(PA,2)-1 - PMZM(:,JK) = 0.5*( PA(:,JK)+PA(:,JK-KKL) ) +DO JK=2,D%NKT-1 + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PMZM(D%NIJB:D%NIJE,JK) = 0.5*( PA(D%NIJB:D%NIJE,JK)+PA(D%NIJB:D%NIJE,JK-D%NKL) ) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO -PMZM(:,KKA) = PA(:,KKA) -PMZM(:,KKU) = 0.5*( PA(:,KKU)+PA(:,KKU-KKL) ) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PMZM(D%NIJB:D%NIJE,D%NKA) = PA(D%NIJB:D%NIJE,D%NKA) +PMZM(D%NIJB:D%NIJE,D%NKU) = 0.5*( PA(D%NIJB:D%NIJE,D%NKU)+PA(D%NIJB:D%NIJE,D%NKU-D%NKL) ) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !------------------------------------------------------------------------------- ! -END FUNCTION MZM_MF +END SUBROUTINE MZM_MF ! ############################### - FUNCTION DZF_MF(PA, KKA, KKU, KKL) RESULT(PDZF) + SUBROUTINE DZF_MF(D, PA, PDZF) ! ############################### ! !!**** *DZF* - SHUMAN_MF operator : finite difference operator in z direction @@ -253,38 +266,42 @@ END FUNCTION MZM_MF !* 0. DECLARATIONS ! ------------ ! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t IMPLICIT NONE ! !* 0.1 Declarations of argument and result ! ------------------------------------ ! -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at flux side -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PDZF ! result at mass +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at flux side +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PDZF ! result at mass ! localization ! !* 0.2 Declarations of local variables ! ------------------------------- ! -INTEGER :: JK ! Loop index in z direction +INTEGER :: JK, JI ! !------------------------------------------------------------------------------- ! !* 1. DEFINITION OF DZF ! ------------------ ! -DO JK=2,SIZE(PA,2)-1 - PDZF(:,JK) = PA(:,JK+KKL) - PA(:,JK) +DO JK=2,D%NKT-1 + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PDZF(D%NIJB:D%NIJE,JK) = PA(D%NIJB:D%NIJE,JK+D%NKL) - PA(D%NIJB:D%NIJE,JK) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO -PDZF(:,KKA) = PA(:,KKA+KKL) - PA(:,KKA) -PDZF(:,KKU) = 0. +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PDZF(D%NIJB:D%NIJE,D%NKA) = PA(D%NIJB:D%NIJE,D%NKA+D%NKL) - PA(D%NIJB:D%NIJE,D%NKA) +PDZF(D%NIJB:D%NIJE,D%NKU) = 0. +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !------------------------------------------------------------------------------- ! -END FUNCTION DZF_MF +END SUBROUTINE DZF_MF ! ############################### - FUNCTION DZM_MF(PA, KKA, KKU, KKL) RESULT(PDZM) + SUBROUTINE DZM_MF(D, PA, PDZM) ! ############################### ! !!**** *DZM* - SHUMAN_MF operator : finite difference operator in z direction @@ -330,39 +347,43 @@ END FUNCTION DZF_MF !* 0. DECLARATIONS ! ------------ ! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t IMPLICIT NONE ! !* 0.1 Declarations of argument and result ! ------------------------------------ ! -REAL, DIMENSION(:,:), INTENT(IN) :: PA ! variable at mass localization -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PA,1),SIZE(PA,2)) :: PDZM ! result at flux +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PA ! variable at mass localization +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PDZM ! result at flux ! side ! !* 0.2 Declarations of local variables ! ------------------------------- ! -INTEGER :: JK ! Loop index in z direction +INTEGER :: JK, JI ! !------------------------------------------------------------------------------- ! !* 1. DEFINITION OF DZM ! ------------------ ! -DO JK=2,SIZE(PA,2)-1 - PDZM(:,JK) = PA(:,JK) - PA(:,JK-KKL) +DO JK=2,D%NKT-1 + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PDZM(D%NIJB:D%NIJE,JK) = PA(D%NIJB:D%NIJE,JK) - PA(D%NIJB:D%NIJE,JK-D%NKL) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO -PDZM(:,KKA) = 0. -PDZM(:,KKU) = PA(:,KKU) - PA(:,KKU-KKL) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PDZM(D%NIJB:D%NIJE,D%NKA) = 0. +PDZM(D%NIJB:D%NIJE,D%NKU) = PA(D%NIJB:D%NIJE,D%NKU) - PA(D%NIJB:D%NIJE,D%NKU-D%NKL) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !------------------------------------------------------------------------------- ! -END FUNCTION DZM_MF +END SUBROUTINE DZM_MF ! ############################### - FUNCTION GZ_M_W_MF(PY,PDZZ, KKA, KKU, KKL) RESULT(PGZ_M_W) + SUBROUTINE GZ_M_W_MF(D, PY, PDZZ, PGZ_M_W) ! ############################### ! !!**** *GZ_M_W * - Compute the gradient along z direction for a @@ -408,32 +429,36 @@ END FUNCTION DZM_MF ! !------------------------------------------------------------------------------- ! +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t IMPLICIT NONE ! !* 0.1 Declarations of argument and result ! ------------------------------------ ! -REAL, DIMENSION(:,:), INTENT(IN) :: PDZZ ! Metric coefficient d*zz -REAL, DIMENSION(:,:), INTENT(IN) :: PY ! variable at mass localization -INTEGER, INTENT(IN) :: KKA, KKU ! near ground and uppest atmosphere array indexes -INTEGER, INTENT(IN) :: KKL ! +1 if grid goes from ground to atmosphere top, -1 otherwise -REAL, DIMENSION(SIZE(PY,1),SIZE(PY,2)) :: PGZ_M_W ! result at flux side +TYPE(DIMPHYEX_t), INTENT(IN) :: D +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PDZZ ! Metric coefficient d*zz +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(IN) :: PY ! variable at mass localization +REAL, DIMENSION(D%NIJT,D%NKT), INTENT(OUT) :: PGZ_M_W ! result at flux side ! !* 0.2 Declarations of local variables ! ------------------------------- ! -INTEGER JK +INTEGER JK, JI !------------------------------------------------------------------------------- ! !* 1. COMPUTE THE GRADIENT ALONG Z ! ----------------------------- ! -DO JK=2,SIZE(PY,2)-1 - PGZ_M_W(:,JK) = (PY(:,JK) - PY(:,JK-KKL)) / PDZZ(:,JK) +DO JK=2,D%NKT-1 + !$mnh_expand_array(JI=D%NIJB:D%NIJE) + PGZ_M_W(D%NIJB:D%NIJE,JK) = (PY(D%NIJB:D%NIJE,JK) - PY(D%NIJB:D%NIJE,JK-D%NKL)) / PDZZ(D%NIJB:D%NIJE,JK) + !$mnh_end_expand_array(JI=D%NIJB:D%NIJE) END DO -PGZ_M_W(:,KKA) = 0. -PGZ_M_W(:,KKU) = (PY(:,KKU) - PY(:,KKU-KKL)) / PDZZ(:,KKU) +!$mnh_expand_array(JI=D%NIJB:D%NIJE) +PGZ_M_W(D%NIJB:D%NIJE,D%NKA) = 0. +PGZ_M_W(D%NIJB:D%NIJE,D%NKU) = (PY(D%NIJB:D%NIJE,D%NKU) - PY(D%NIJB:D%NIJE,D%NKU-D%NKL)) / PDZZ(D%NIJB:D%NIJE,D%NKU) +!$mnh_end_expand_array(JI=D%NIJB:D%NIJE) ! !------------------------------------------------------------------------------- ! -END FUNCTION GZ_M_W_MF +END SUBROUTINE GZ_M_W_MF diff --git a/src/common/turb/th_r_from_thl_rt.func.h b/src/common/turb/th_r_from_thl_rt.func.h new file mode 100644 index 0000000000000000000000000000000000000000..5a571b688d6ca46c05818bd43cc87947491f043a --- /dev/null +++ b/src/common/turb/th_r_from_thl_rt.func.h @@ -0,0 +1,201 @@ +!MNH_LIC Copyright 2006-2022 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. + SUBROUTINE TH_R_FROM_THL_RT(CST, NEB, KT, HFRAC_ICE,PFRAC_ICE,PP, & + PTHL, PRT, PTH, PRV, PRL, PRI, & + PRSATW, PRSATI, PRR, PRS, PRG, PRH, OOCEAN,& + PBUF, KB, KE) +! ******* TO BE INCLUDED IN THE *CONTAINS* OF A SUBROUTINE, IN ORDER TO EASE AUTOMATIC INLINING ****** +! => Don't use drHook !!! +! "compute_frac_ice.func.h" must be included at the same time +! ################################################################# +! +! +!!**** *TH_R_FROM_THL_RT* - computes the non-conservative variables +!! from conservative variables +!! +!! PURPOSE +!! ------- +!! +!!** METHOD +!! ------ +!! +!! +!! EXTERNAL +!! -------- +!! +!! IMPLICIT ARGUMENTS +!! ------------------ +!! +!! +!! REFERENCE +!! --------- +!! +!! AUTHOR +!! ------ +!! Julien PERGAUD * Meteo-France * +!! +!! MODIFICATIONS +!! ------------- +!! Original 13/03/06 +!! S. Riette April 2011 : ice added, allow ZRLTEMP to be negative +!! we use dQsat/dT to help convergence +!! use of optional PRR, PRS, PRG, PRH +!! S. Riette Nov 2016: support for HFRAC_ICE='S' +!! +!! -------------------------------------------------------------------------- +! +!* 0. DECLARATIONS +! ------------ +! +USE MODD_CST, ONLY : CST_t +USE MODD_NEB, ONLY : NEB_t +! +IMPLICIT NONE +! +! +!* 0.1 declarations of arguments +! +TYPE(CST_t), INTENT(IN) :: CST +TYPE(NEB_t), INTENT(IN) :: NEB +INTEGER, INTENT(IN) :: KT +CHARACTER(LEN=1), INTENT(IN) :: HFRAC_ICE +LOGICAL, INTENT(IN) :: OOCEAN ! switch for Ocean model version +REAL, DIMENSION(KT), INTENT(INOUT) :: PFRAC_ICE +REAL, DIMENSION(KT), INTENT(IN) :: PP ! Pressure +REAL, DIMENSION(KT), INTENT(IN) :: PTHL ! thetal to transform into th +REAL, DIMENSION(KT),INTENT(IN) :: PRT ! Total mixing ratios to transform into rv,rc and ri +REAL, DIMENSION(KT),OPTIONAL,INTENT(IN) :: PRR, PRS, PRG, PRH +REAL, DIMENSION(KT), INTENT(OUT):: PTH ! th +REAL, DIMENSION(KT), INTENT(OUT):: PRV ! vapor mixing ratio +REAL, DIMENSION(KT), INTENT(INOUT):: PRL ! vapor mixing ratio +REAL, DIMENSION(KT), INTENT(INOUT):: PRI ! vapor mixing ratio +REAL, DIMENSION(KT), INTENT(OUT) :: PRSATW ! estimated mixing ration at saturation over water +REAL, DIMENSION(KT), INTENT(OUT) :: PRSATI ! estimated mixing ration at saturation over ice +REAL, DIMENSION(KT, 16), INTENT(OUT) :: PBUF ! buffer to replace automatic arrays +INTEGER, OPTIONAL :: KB !first index to deal with (default is 1) +INTEGER, OPTIONAL :: KE !last index to deal with (default if KT) +! +!------------------------------------------------------------------------------- +! +! 0.2 declaration of local variables +INTEGER :: II ! Loop control +INTEGER :: JITER ! number of iterations +INTEGER :: J, IB, IE +INTEGER, PARAMETER :: IEXN=1, IRVSAT=2, ICPH=3, IRLTEMP=4, ICPH2=5, IT=6, ILVOCPEXN=7, ILSOCPEXN=8, & + & IDRSATODT=9, IDRSATODTW=10, IDRSATODTI=11, IFOESW=12, IFOESI=13, & + & ILOGT=14, I99PP=15, I1PRT=16 +REAL :: ZVAR1, ZVAR2, ZTPOW2, ZDELT + +!---------------------------------------------------------------------------- +! +!* 1 Initialisation +! -------------- +! +! +! +IB=MERGE(KB, 1, PRESENT(KB)) +IE=MERGE(KE, KT, PRESENT(KE)) +!Number of iterations +JITER=2 +! +!Computation of PBUF(IB:IE, ICPH2) depending on dummy arguments received +PBUF(IB:IE, ICPH2)=0 +IF(PRESENT(PRR)) PBUF(IB:IE, ICPH2)=PBUF(IB:IE, ICPH2) + CST%XCL*PRR(IB:IE) +IF(PRESENT(PRS)) PBUF(IB:IE, ICPH2)=PBUF(IB:IE, ICPH2) + CST%XCI*PRS(IB:IE) +IF(PRESENT(PRG)) PBUF(IB:IE, ICPH2)=PBUF(IB:IE, ICPH2) + CST%XCI*PRG(IB:IE) +IF(PRESENT(PRH)) PBUF(IB:IE, ICPH2)=PBUF(IB:IE, ICPH2) + CST%XCI*PRH(IB:IE) +! +!Computation of an approximate state thanks to PRL and PRI guess +PBUF(IB:IE, IEXN)=(PP(IB:IE)/CST%XP00) ** CST%RDSCPD + +DO J=IB,IE + PBUF(J, I99PP)=0.99*PP(J) + PRV(J)=PRT(J)-PRL(J)-PRI(J) + PBUF(J, ICPH)=CST%XCPD+ CST%XCPV * PRV(J)+ CST%XCL * PRL(J) + CST%XCI * PRI(J) + PBUF(J, ICPH2) + ZVAR2=PBUF(J, ICPH)*PBUF(J, IEXN) + ZDELT=(PTHL(J)*PBUF(J, IEXN))-CST%XTT + PBUF(J, ILVOCPEXN) = (CST%XLVTT + (CST%XCPV-CST%XCL) * ZDELT) /ZVAR2 + PBUF(J, ILSOCPEXN) = (CST%XLSTT + (CST%XCPV-CST%XCI) * ZDELT) /ZVAR2 + PTH(J)=PTHL(J)+PBUF(J, ILVOCPEXN)*PRL(J)+PBUF(J, ILSOCPEXN)*PRI(J) + PBUF(J, I1PRT)=1+PRT(J) +ENDDO +! +! +! 2 Iteration +! --------- + +DO II=1,JITER + IF (OOCEAN) THEN + PBUF(IB:IE, IT)=PTH(IB:IE) + ELSE + PBUF(IB:IE, IT)=PTH(IB:IE)*PBUF(IB:IE, IEXN) + END IF + !Computation of liquid/ice fractions + PFRAC_ICE(IB:IE) = 0. + DO J=IB, IE + IF(PRL(J)+PRI(J) > 1.E-20) THEN + PFRAC_ICE(J) = PRI(J) / (PRL(J)+PRI(J)) + ENDIF + ENDDO + CALL COMPUTE_FRAC_ICE(HFRAC_ICE,NEB,PFRAC_ICE(IB:IE),PBUF(IB:IE, IT)) + + !Computation of Rvsat and dRsat/dT + !In this version QSAT, QSATI, DQSAT and DQASATI functions are not used + !due to performance issue + + ! Log does not vectorize on all compilers: + PBUF(IB:IE, ILOGT)=LOG(PBUF(IB:IE, IT)) + + DO J=IB, IE + PBUF(J, IFOESW) = MIN(EXP( CST%XALPW - CST%XBETAW/PBUF(J, IT) - CST%XGAMW*PBUF(J, ILOGT) ), PBUF(J, I99PP)) + PBUF(J, IFOESI) = MIN(EXP( CST%XALPI - CST%XBETAI/PBUF(J, IT) - CST%XGAMI*PBUF(J, ILOGT) ), PBUF(J, I99PP)) + PRSATW(J) = CST%XRD/CST%XRV*PBUF(J, IFOESW)/PP(J) / (1.+(CST%XRD/CST%XRV-1.)*PBUF(J, IFOESW)/PP(J)) + PRSATI(J) = CST%XRD/CST%XRV*PBUF(J, IFOESI)/PP(J) / (1.+(CST%XRD/CST%XRV-1.)*PBUF(J, IFOESI)/PP(J)) + ZTPOW2=PBUF(J, IT)**2 + PBUF(J, IDRSATODTW) = PRSATW(J) / (1.+(CST%XRD/CST%XRV-1.)*PBUF(J, IFOESW)/PP(J) ) & + * (CST%XBETAW/ZTPOW2 - CST%XGAMW/PBUF(J, IT))*PBUF(J, I1PRT) + PBUF(J, IDRSATODTI) = PRSATI(J) / (1.+(CST%XRD/CST%XRV-1.)*PBUF(J, IFOESI)/PP(J) ) & + * (CST%XBETAI/ZTPOW2 - CST%XGAMI/PBUF(J, IT))*PBUF(J, I1PRT) + !PRSATW(J) = QSAT(PBUF(J, IT),PP(J)) !qsatw + !PRSATI(J) = QSATI(PBUF(J, IT),PP(J)) !qsati + !PBUF(J, IDRSATODTW) = DQSAT(PBUF(J, IT),PP(J),PRSATW(J))*PBUF(J, I1PRT) + !PBUF(J, IDRSATODTI) = DQSATI(PBUF(J, IT),PP(J),PRSATI(J))*PBUF(J, I1PRT) + PRSATW(J) = PRSATW(J)*PBUF(J, I1PRT) + PRSATI(J) = PRSATI(J)*PBUF(J, I1PRT) + PBUF(J, IRVSAT) = PRSATW(J)*(1-PFRAC_ICE(J)) + PRSATI(J)*PFRAC_ICE(J) + PBUF(J, IDRSATODT) = (PBUF(J, IDRSATODTW)*(1-PFRAC_ICE(J))+ & + & PBUF(J, IDRSATODTI)*PFRAC_ICE(J)) + + !Computation of new PRL, PRI and PRV + !Correction term applied to (PRV(J)-PBUF(J, IRVSAT)) is computed assuming that + !PBUF(J, ILVOCPEXN), PBUF(J, ILSOCPEXN) and PBUF(J, ICPH) don't vary to much with T. It takes into account + !the variation (estimated linear) of Qsat with T + PBUF(J, IRLTEMP)=(PRV(J)-PBUF(J, IRVSAT))/ & + &(1 + PBUF(J, IDRSATODT)*PBUF(J, IEXN)* & + & (PBUF(J, ILVOCPEXN)*(1-PFRAC_ICE(J))+PBUF(J, ILSOCPEXN)*PFRAC_ICE(J))) + PBUF(J, IRLTEMP)=MIN(MAX(-PRL(J)-PRI(J), PBUF(J, IRLTEMP)),PRV(J)) + PRV(J)=PRV(J)-PBUF(J, IRLTEMP) + PRL(J)=PRL(J)+PRI(J)+PBUF(J, IRLTEMP) + PRI(J)=PFRAC_ICE(J) * (PRL(J)) + PRL(J)=(1-PFRAC_ICE(J)) * (PRT(J) - PRV(J)) + + !Computation of Cph (as defined in Meso-NH doc, equation 2.2, to be used with mixing ratios) + PBUF(J, ICPH)=CST%XCPD+ CST%XCPV * PRV(J)+ CST%XCL * PRL(J) + CST%XCI * PRI(J) + PBUF(J, ICPH2) + + !Computation of L/Cph/EXN, then new PTH + ZVAR2=PBUF(J, ICPH)*PBUF(J, IEXN) + PBUF(J, ILVOCPEXN) = (CST%XLVTT + (CST%XCPV-CST%XCL) * (PBUF(J, IT)-CST%XTT)) /ZVAR2 + PBUF(J, ILSOCPEXN) = (CST%XLSTT + (CST%XCPV-CST%XCI) * (PBUF(J, IT)-CST%XTT)) /ZVAR2 + PTH(J)=PTHL(J)+PBUF(J, ILVOCPEXN)*PRL(J)+PBUF(J, ILSOCPEXN)*PRI(J) + + !Computation of estimated mixing ration at saturation + !To compute the adjustement a first order development was used + ZVAR1=PTH(J)*PBUF(J, IEXN)-PBUF(J, IT) + PRSATW(J)=PRSATW(J) + PBUF(J, IDRSATODTW)*ZVAR1 + PRSATI(J)=PRSATI(J) + PBUF(J, IDRSATODTI)*ZVAR1 + ENDDO +ENDDO + +END SUBROUTINE TH_R_FROM_THL_RT diff --git a/src/common/turb/turb.F90 b/src/common/turb/turb.F90 index 08d75e00817fdc59091469b366e9c115c3e8363f..51cb03b5a202d0bb279453fbb4ff62f3f47919cc 100644 --- a/src/common/turb/turb.F90 +++ b/src/common/turb/turb.F90 @@ -8,7 +8,7 @@ & KSPLIT,KMODEL_CL,KSV,KSV_LGBEG,KSV_LGEND,HPROGRAM, & & O2D,ONOMIXLG,OFLAT,OLES_CALL,OCOUPLES,OBLOWSNOW, & & OTURB_FLX,OTURB_DIAG,OSUBG_COND,OCOMPUTE_SRC, & - & ORMC01,OOCEAN,ODEEPOC,OHARAT,ODIAG_IN_RUN, & + & ORMC01,OOCEAN,ODEEPOC,OHARAT, ODIAG_IN_RUN, & & HTURBDIM,HTURBLEN,HTOM,HTURBLEN_CL,HCLOUD,PIMPL, & & PTSTEP,TPFILE,PDXX,PDYY,PDZZ,PDZX,PDZY,PZZ, & & PDIRCOSXW,PDIRCOSYW,PDIRCOSZW,PCOSSLOPE,PSINSLOPE, & @@ -24,8 +24,9 @@ & PFLXZTHVMF,PWTH,PWRC,PWSV,PDP,PTP,PTDIFF,PTDISS, & & TBUDGETS, KBUDGETS, & & PEDR,PLEM,PRTKEMS,PTPMF, & - & PDRUS_TURB,PDRVS_TURB,PDRTHLS_TURB,PDRRTS_TURB, & - & PDRSVS_TURB,PCURRENT_TKE_DISS,PTR,PDISS ) + & PDRUS_TURB,PDRVS_TURB, & + & PDRTHLS_TURB,PDRRTS_TURB,PDRSVS_TURB,PTR,PDISS, & + & PCURRENT_TKE_DISS ) ! ################################################################# ! ! @@ -421,7 +422,7 @@ REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PEDR ! EDR REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PLEM ! Mixing length REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PTR ! Transport prod. of TKE REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT), OPTIONAL :: PDISS ! Dissipation of TKE -REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(INOUT), OPTIONAL :: PCURRENT_TKE_DISS ! if ODIAG_IN_RUN in mesonh +REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(INOUT), OPTIONAL :: PCURRENT_TKE_DISS ! if ODIAG_IN_RUN in mesonh ! ! !------------------------------------------------------------------------------- @@ -526,7 +527,7 @@ ZEXPL = 1.- PIMPL ZRVORD= CST%XRV / CST%XRD ! !Copy data into ZTHLM and ZRM only if needed -IF (HTURBLEN=='BL89' .OR. HTURBLEN=='RM17' .OR. ORMC01) THEN +IF (HTURBLEN=='BL89' .OR. HTURBLEN=='RM17' .OR. HTURBLEN=='ADAP' .OR. ORMC01) THEN ZTHLM(IIB:IIE,IJB:IJE,1:D%NKT) = PTHLT(IIB:IIE,IJB:IJE,1:D%NKT) ZRM(IIB:IIE,IJB:IJE,1:D%NKT,:) = PRT(IIB:IIE,IJB:IJE,1:D%NKT,:) END IF @@ -1142,14 +1143,15 @@ ELSE ZRTKEMS(:,:,:)=0. END IF ! -CALL TKE_EPS_SOURCES(D,CST,CSTURB,BUCONF,HPROGRAM, & - & KMI,PTKET,ZLM,ZLEPS,PDP,ZTRH, & - & PRHODJ,PDZZ,PDXX,PDYY,PDZX,PDZY,PZZ, & - & PTSTEP,PIMPL,ZEXPL, & - & HTURBLEN,HTURBDIM, & - & TPFILE,OTURB_DIAG,OLES_CALL, ODIAG_IN_RUN, & - & PTP,PRTKES,PRTHLS,ZCOEF_DISS,PTDIFF,PTDISS,ZRTKEMS, & - & TBUDGETS,KBUDGETS, PEDR=PEDR, PTR=PTR,PDISS=PDISS,PCURRENT_TKE_DISS=PCURRENT_TKE_DISS) +CALL TKE_EPS_SOURCES(D,CST,CSTURB,BUCONF,HPROGRAM, & + & KMI,PTKET,ZLM,ZLEPS,PDP,ZTRH, & + & PRHODJ,PDZZ,PDXX,PDYY,PDZX,PDZY,PZZ, & + & PTSTEP,PIMPL,ZEXPL, & + & HTURBLEN,HTURBDIM, & + & TPFILE,OTURB_DIAG,OLES_CALL,ODIAG_IN_RUN, & + & PTP,PRTKES,PRTHLS,ZCOEF_DISS,PTDIFF,PTDISS,ZRTKEMS,& + & TBUDGETS,KBUDGETS, PEDR=PEDR, PTR=PTR,PDISS=PDISS, & + & PCURRENT_TKE_DISS=PCURRENT_TKE_DISS ) IF (BUCONF%LBUDGET_TH) THEN IF ( KRRI >= 1 .AND. KRRL >= 1 ) THEN CALL BUDGET_STORE_END( TBUDGETS(NBUDGET_TH), 'DISSH', PRTHLS+ ZLVOCPEXNM * PRRS(:,:,:,2) & diff --git a/src/mesonh/aux/modd_dyn.f90 b/src/mesonh/aux/modd_dyn.f90 deleted file mode 100644 index 244a67f95a1145e3ffc00102a82b4285d18cba98..0000000000000000000000000000000000000000 --- a/src/mesonh/aux/modd_dyn.f90 +++ /dev/null @@ -1,86 +0,0 @@ -!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$ $Date$ -!----------------------------------------------------------------- -!----------------------------------------------------------------- -!----------------------------------------------------------------- -! ################ - MODULE MODD_DYN -! ################ -! -!!**** *MODD_DYN* - declaration of dynamic control variables -!! -!! PURPOSE -!! ------- -! The purpose of this declarative module is to declare the dynamic -! control variables for all models. -! -!! -!!** IMPLICIT ARGUMENTS -!! ------------------ -!! Module MODD_PARAMETERS : contains the maximum number of coupling files -!! -!! REFERENCE -!! --------- -!! Book2 of documentation of Meso-NH (module MODD_DYN) -!! Technical Specifications Report of the Meso-NH (chapters 2 and 3) -!! -!! AUTHOR -!! ------ -!! V. Ducrocq *Meteo France* -!! -!! MODIFICATIONS -!! ------------- -!! Original 06/05/94 -!! Modifications 17/10/94 (Stein) For LCORIO -!! Modifications 12/12/94 (Stein) remove LABSLAYER + add XALZBOT -!! and XALKBOT -!! Modifications 10/03/95 (I.Mallet) add coupling variables -!! 04/05/07 (C.Lac) Separation of num.diffusion -!! between variables -!--------------------------------------------------------------------------- -! -!* 0. DECLARATIONS -! ------------ -! -USE MODD_PARAMETERS -! -IMPLICIT NONE -! -REAL ,SAVE :: XSEGLEN ! Duration of segment (in seconds) -REAL ,SAVE :: XASSELIN ! Asselin coefficient -REAL ,SAVE :: XASSELIN_SV! Asselin coefficient for tracer variables -LOGICAL,SAVE :: LCORIO ! Coriolis flag -LOGICAL,SAVE :: LNUMDIFU ! logical switch for the NUMerical DIFFusion: - ! .TRUE. active .FALSE. unactive - ! for momentum -LOGICAL,SAVE :: LNUMDIFTH ! For theta and mixing ratio -LOGICAL,SAVE :: LNUMDIFSV ! For scalar variables -LOGICAL,SAVE :: LSTEADYLS ! logical switch to remove all Larger Scale fields - ! evolution during the segment (the LS fields are - ! STEADY).TRUE. LS steady .FALSE. LS unsteady -REAL ,SAVE :: XALKTOP ! Damping coef. at the top of the absorbing - ! layer -REAL ,SAVE :: XALZBOT ! Height of the absorbing layer base -! -REAL ,SAVE :: XALKGRD ! Damping coef. at the top of the absorbing - ! layer (bottom layer) -REAL ,SAVE :: XALZBAS ! Height of the absorbing layer base (bottom layer) -! -INTEGER,SAVE :: NCPL_NBR ! NumBeR of CouPLing files -INTEGER,SAVE :: NCPL_CUR ! Number of CURrent CouPLing file -! -LOGICAL, SAVE, DIMENSION(JPMODELMAX) :: LUSERV_G, LUSERC_G, LUSERR_G, LUSERI_G -LOGICAL, SAVE, DIMENSION(JPMODELMAX) :: LUSERS_G, LUSERH_G, LUSERG_G -LOGICAL, SAVE, DIMENSION(JPMODELMAX) :: LUSETKE -LOGICAL, SAVE, DIMENSION(JPSVMAX,JPMODELMAX) :: LUSESV -REAL, SAVE, DIMENSION(JPCPLFILEMAX,JPMODELMAX) :: NCPL_TIMES ! array of - ! the number for the coupling instants of every nested model -REAL, SAVE :: XTSTEP_MODEL1 ! time step of the - ! outermost model -END MODULE MODD_DYN diff --git a/src/mesonh/ext/ice_adjust_bis.f90 b/src/mesonh/ext/ice_adjust_bis.f90 index c6f72a0868eee72ac6bd97ad98e4d3bd692529b2..44ab0c680b6d689ab050c53ddd39ec799bf0b100 100644 --- a/src/mesonh/ext/ice_adjust_bis.f90 +++ b/src/mesonh/ext/ice_adjust_bis.f90 @@ -65,10 +65,10 @@ END MODULE MODI_ICE_ADJUST_BIS !* 0. DECLARATIONS ! ------------ ! -USE MODD_CST, ONLY : XCPD, XRD, XP00 +USE MODD_CST, ONLY : XCPD, XRD, XP00, CST +USE MODD_NEB, ONLY : NEB ! USE MODI_COMPUTE_FUNCTION_THERMO -USE MODE_TH_R_FROM_THL_RT_3D USE MODI_THLRT_FROM_THRVRCRI ! USE MODE_ll @@ -89,6 +89,7 @@ REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2),SIZE(PTH,3)) :: ZTHL, ZRW, ZRV, ZRC, & ZRI, ZWORK REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2),SIZE(PTH,3)) :: ZFRAC_ICE, ZRSATW, ZRSATI REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2),SIZE(PTH,3)) :: ZT, ZEXN, ZLVOCPEXN,ZLSOCPEXN +REAL, DIMENSION(SIZE(PTH,1),SIZE(PTH,2),SIZE(PTH,3), 16) :: ZBUF INTEGER :: IRR CHARACTER(LEN=1) :: YFRAC_ICE ! @@ -127,10 +128,11 @@ CALL COMPUTE_FUNCTION_THERMO( IRR, & CALL THLRT_FROM_THRVRCRI( IRR, PTH, PR, ZLVOCPEXN, ZLSOCPEXN,& ZTHL, ZRW ) ! -CALL TH_R_FROM_THL_RT_3D(YFRAC_ICE,ZFRAC_ICE(:,:,:),PP(:,:,:), & +CALL TH_R_FROM_THL_RT(CST, NEB, SIZE(ZFRAC_ICE), YFRAC_ICE,ZFRAC_ICE(:,:,:),PP(:,:,:), & ZTHL(:,:,:), ZRW(:,:,:), PTH(:,:,:), & ZRV(:,:,:), ZRC(:,:,:), ZRI(:,:,:), & - ZRSATW(:,:,:), ZRSATI(:,:,:),OOCEAN=.FALSE.) + ZRSATW(:,:,:), ZRSATI(:,:,:),OOCEAN=.FALSE.,& + PBUF=ZBUF) CALL ADD3DFIELD_ll( TZFIELDS_ll, PTH, 'ICE_ADJUST_BIS::PTH') IF (IRR>=1) THEN CALL ADD3DFIELD_ll( TZFIELDS_ll, ZRV, 'ICE_ADJUST_BIS::ZRV' ) @@ -152,4 +154,7 @@ PR(:,:,:,2) = ZRC(:,:,:) IF (IRR>=4) & PR(:,:,:,4) = ZRI(:,:,:) ! +CONTAINS +INCLUDE "th_r_from_thl_rt.func.h" +INCLUDE "compute_frac_ice.func.h" END SUBROUTINE ICE_ADJUST_BIS diff --git a/src/mesonh/ext/phys_paramn.f90 b/src/mesonh/ext/phys_paramn.f90 index bb5cb44670e2be26f2048b13b2bb66459ad2f18b..6d6035e5b38e28d67cc9134fc1197052647550ac 100644 --- a/src/mesonh/ext/phys_paramn.f90 +++ b/src/mesonh/ext/phys_paramn.f90 @@ -695,6 +695,7 @@ IF (.NOT. OCLOUD_ONLY .AND. KTCOUNT /= 1) THEN NDLON,NFLEV,CAER,NAER,NSTATM, & XSINDEL,XCOSDEL,XTSIDER,XCORSOL, & XSTATM,XOZON, XAER) + XAER_CLIM = XAER END IF END IF ! diff --git a/src/mesonh/ext/prep_ideal_case.f90 b/src/mesonh/ext/prep_ideal_case.f90 index a1c1ec6c6a4d7ab52ea4549f93ffc4a35a2deb5b..7a1b8787e20d1a285ca8977ac578783f49181674 100644 --- a/src/mesonh/ext/prep_ideal_case.f90 +++ b/src/mesonh/ext/prep_ideal_case.f90 @@ -416,7 +416,6 @@ USE MODD_SUB_MODEL_n USE MODE_MNH_TIMING USE MODN_CONFZ !JUAN -USE MODE_TH_R_FROM_THL_RT_3D ! USE MODI_VERSION USE MODI_INIT_PGD_SURF_ATM @@ -431,6 +430,7 @@ USE MODI_SET_RELFRC ! USE MODI_INI_CST USE MODI_INI_NEB +USE MODD_NEB, ONLY: NEB USE MODI_WRITE_HGRID USE MODD_MPIF USE MODD_VAR_ll @@ -556,6 +556,7 @@ REAL, DIMENSION(:), ALLOCATABLE :: ZXHAT_ll, ZYHAT_ll REAL, DIMENSION(:,:,:), ALLOCATABLE ::ZTHL,ZT,ZRT,ZFRAC_ICE,& ZEXN,ZLVOCPEXN,ZLSOCPEXN,ZCPH, & ZRSATW, ZRSATI +REAL, DIMENSION(:,:,:,:), ALLOCATABLE :: ZBUF ! variables for adjustement REAL :: ZDIST ! @@ -1667,6 +1668,7 @@ IF (CIDEAL == 'RSOU') THEN ALLOCATE(ZFRAC_ICE(NIU,NJU,NKU)) ALLOCATE(ZRSATW(NIU,NJU,NKU)) ALLOCATE(ZRSATI(NIU,NJU,NKU)) + ALLOCATE(ZBUF(NIU,NJU,NKU,16)) ZRT=XRT(:,:,:,1)+XRT(:,:,:,2)+XRT(:,:,:,4) IF (LOCEAN) THEN ZEXN(:,:,:)= 1. @@ -1682,8 +1684,9 @@ ELSE ZLVOCPEXN = (XLVTT + (XCPV-XCL) * (ZT-XTT))/(ZCPH*ZEXN) ZLSOCPEXN = (XLSTT + (XCPV-XCI) * (ZT-XTT))/(ZCPH*ZEXN) ZTHL=XTHT-ZLVOCPEXN*XRT(:,:,:,2)-ZLSOCPEXN*XRT(:,:,:,4) - CALL TH_R_FROM_THL_RT_3D('T',ZFRAC_ICE,XPABST,ZTHL,ZRT,XTHT,XRT(:,:,:,1), & - XRT(:,:,:,2),XRT(:,:,:,4),ZRSATW, ZRSATI,OOCEAN=.FALSE.) + CALL TH_R_FROM_THL_RT(CST, NEB, SIZE(ZFRAC_ICE), 'T',ZFRAC_ICE,XPABST,ZTHL,ZRT,XTHT,XRT(:,:,:,1), & + XRT(:,:,:,2),XRT(:,:,:,4),ZRSATW, ZRSATI,OOCEAN=.FALSE.,& + PBUF=ZBUF) END IF DEALLOCATE(ZEXN) DEALLOCATE(ZT) @@ -1692,6 +1695,7 @@ END IF DEALLOCATE(ZLSOCPEXN) DEALLOCATE(ZTHL) DEALLOCATE(ZRT) + DEALLOCATE(ZBUF) ! Coherence test IF ((.NOT. LUSERI) ) THEN IF (MAXVAL(XRT(:,:,:,4))/= 0) THEN @@ -1930,4 +1934,8 @@ WRITE(NLUOUT,FMT=*) '****************************************************' ! CALL FINALIZE_MNH() ! +! +CONTAINS +INCLUDE "th_r_from_thl_rt.func.h" +INCLUDE "compute_frac_ice.func.h" END PROGRAM PREP_IDEAL_CASE diff --git a/src/mesonh/ext/set_rsou.f90 b/src/mesonh/ext/set_rsou.f90 index 9f7cca3e1c76de20267a8a398b309e005b804022..352af8a53b1efdaca9aa28ef28c9658ef2d27ef5 100644 --- a/src/mesonh/ext/set_rsou.f90 +++ b/src/mesonh/ext/set_rsou.f90 @@ -261,6 +261,7 @@ END MODULE MODI_SET_RSOU USE MODD_CONF USE MODD_CONF_n USE MODD_CST +USE MODD_NEB, ONLY: NEB USE MODD_DYN_n, ONLY: LOCEAN USE MODD_FIELD_n USE MODD_GRID @@ -282,7 +283,6 @@ USE MODI_PRESS_HEIGHT USE MODI_SET_MASS USE MODI_SHUMAN USE MODI_THETAVPU_THETAVPM -USE MODE_TH_R_FROM_THL_RT_1D USE MODI_VERT_COORD ! USE NETCDF ! for reading the NR files @@ -374,6 +374,7 @@ REAL, DIMENSION(:), ALLOCATABLE :: ZFRAC_ICE ! ice fraction REAL, DIMENSION(:), ALLOCATABLE :: ZRSATW, ZRSATI REAL :: ZDZSDH,ZDZ1SDH,ZDZ2SDH ! interpolation ! working arrays +REAL, DIMENSION(:,:), ALLOCATABLE :: ZBUF ! INTEGER :: JK,JKLEV,JKU,JKM,JKT,JJ,JI,JO,JLOOP ! Loop indexes INTEGER :: IKU ! Upper bound in z direction @@ -1573,6 +1574,7 @@ ALLOCATE(ZFRAC_ICE(IKU)) ALLOCATE(ZRSATW(IKU)) ALLOCATE(ZRSATI(IKU)) ALLOCATE(ZMRT(IKU)) +ALLOCATE(ZBUF(IKU,16)) ZMRT=ZMRM+ZMRCM+ZMRIM ZTHVM=ZTHLM ! @@ -1592,8 +1594,9 @@ ELSE DO JLOOP=1,20 ! loop for pression CALL COMPUTE_EXNER_FROM_GROUND(ZTHVM,ZZMASS_PROFILE(:),ZEXNSURF,ZEXNFLUX,ZEXNMASS) ZPRESS(:)=XP00*(ZEXNMASS(:))**(XCPD/XRD) - CALL TH_R_FROM_THL_RT_1D('T',ZFRAC_ICE,ZPRESS,ZTHLM,ZMRT,ZTHM,ZMRM,ZMRCM,ZMRIM, & - ZRSATW, ZRSATI,OOCEAN=.FALSE.) + CALL TH_R_FROM_THL_RT(CST,NEB,SIZE(ZPRESS,1),'T',ZFRAC_ICE,ZPRESS,ZTHLM,ZMRT,ZTHM,ZMRM,ZMRCM,ZMRIM, & + ZRSATW, ZRSATI,OOCEAN=.FALSE.,& + PBUF=ZBUF) ZTHVM(:)=ZTHM(:)*(1.+XRV/XRD*ZMRM(:))/(1.+(ZMRM(:)+ZMRIM(:)+ZMRCM(:))) ENDDO ENDIF @@ -1605,6 +1608,7 @@ DEALLOCATE(ZFRAC_ICE) DEALLOCATE(ZRSATW) DEALLOCATE(ZRSATI) DEALLOCATE(ZMRT) +DEALLOCATE(ZBUF) !------------------------------------------------------------------------------- ! !* 4. COMPUTE FIELDS ON THE MODEL GRID (WITH OROGRAPHY) @@ -1629,5 +1633,8 @@ CONTAINS CALL PRINT_MSG( NVERB_ERROR, 'IO', 'SET_RSOU', 'error at ' // Trim( yloc) // ': ' // NF90_STRERROR( ISTATUS ) ) END IF END SUBROUTINE check -! + ! + INCLUDE "th_r_from_thl_rt.func.h" + INCLUDE "compute_frac_ice.func.h" + ! END SUBROUTINE SET_RSOU diff --git a/src/mesonh/ext/shallow_mf_pack.f90 b/src/mesonh/ext/shallow_mf_pack.f90 index 5001e4bad2c8926109efca0bcc1c4cf4469ba006..ab426cbaadf688b3e8d2718ee5aac39259aa2fcb 100644 --- a/src/mesonh/ext/shallow_mf_pack.f90 +++ b/src/mesonh/ext/shallow_mf_pack.f90 @@ -123,11 +123,19 @@ END MODULE MODI_SHALLOW_MF_PACK !* 0. DECLARATIONS ! ------------ ! +USE MODD_CST, ONLY: CST +USE MODD_NEB, ONLY: NEB +USE MODD_TURB_n, ONLY: TURBN +USE MODD_CTURB, ONLY: CSTURB +USE MODD_PARAM_MFSHALL_n, ONLY: PARAM_MFSHALLN +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +! +USE MODE_FILL_DIMPHYEX, ONLY: FILL_DIMPHYEX +! use modd_budget, only: lbudget_u, lbudget_v, lbudget_th, lbudget_rv, lbudget_sv, & NBUDGET_U, NBUDGET_V, NBUDGET_TH, NBUDGET_RV, NBUDGET_SV1, & tbudgets USE MODD_CONF -USE MODD_CST USE MODD_IO, ONLY: TFILEDATA use modd_field, only: tfielddata, TYPEREAL USE MODD_NSV @@ -260,9 +268,11 @@ INTEGER :: IIU, IJU, IKU, IKB, IKE, IRR, ISV INTEGER :: JK,JRR,JSV ! Loop counters TYPE(TFIELDDATA) :: TZFIELD +TYPE(DIMPHYEX_t) :: YLDIMPHYEXPACK !------------------------------------------------------------------------ !!! 1. Initialisation +CALL FILL_DIMPHYEX(YLDIMPHYEXPACK, SIZE(PZZ,1), SIZE(PZZ,2), SIZE(PZZ,3)) ! Internal Domain IIU=SIZE(PTHM,1) @@ -323,7 +333,8 @@ ZSFRV(:)=RESHAPE(PSFRV(:,:),(/ IIU*IJU /) ) !!! 3. Call of the physical parameterization of massflux vertical transport -CALL SHALLOW_MF(1,IKU,1,KRR,KRRL,KRRI, & +CALL SHALLOW_MF(YLDIMPHYEXPACK, CST, NEB, PARAM_MFSHALLN, TURBN, CSTURB,& + KRR,KRRL,KRRI,ISV, & HMF_UPDRAFT, HMF_CLOUD, CFRAC_ICE_SHALLOW_MF, OMIXUV, & LNOMIXLG,NSV_LGBEG,NSV_LGEND, & PIMPL_MF, PTSTEP, & diff --git a/src/mesonh/micro/ini_rain_ice.f90 b/src/mesonh/micro/ini_rain_ice.f90 index 1ef701dfe95d3c736b2c42f6063700e8fc5b0721..18b47a203ed33c8745e2ac8d4ef6f4d6ffbdef26 100644 --- a/src/mesonh/micro/ini_rain_ice.f90 +++ b/src/mesonh/micro/ini_rain_ice.f90 @@ -3,29 +3,6 @@ !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_INI_RAIN_ICE -! ######################## -! -INTERFACE - SUBROUTINE INI_RAIN_ICE ( KLUOUT, PTSTEP, PDZMIN, KSPLITR, HCLOUD ) -! -INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints -INTEGER, INTENT(OUT):: KSPLITR ! Number of small time step - ! integration for rain - ! sedimendation -! -REAL, INTENT(IN) :: PTSTEP ! Effective Time step -! -REAL, INTENT(IN) :: PDZMIN ! minimun vertical mesh size -! -CHARACTER (LEN=4), INTENT(IN) :: HCLOUD ! Indicator of the cloud scheme -! -END SUBROUTINE INI_RAIN_ICE -! -END INTERFACE -! -END MODULE MODI_INI_RAIN_ICE ! ######spl SUBROUTINE INI_RAIN_ICE ( KLUOUT, PTSTEP, PDZMIN, KSPLITR, HCLOUD ) ! ########################################################### @@ -201,7 +178,6 @@ IF (LHOOK) CALL DR_HOOK('INI_RAIN_ICE',0,ZHOOK_HANDLE) ! IF(.NOT.ASSOCIATED(XCEXVT)) CALL RAIN_ICE_DESCR_ASSOCIATE() IF(.NOT.ASSOCIATED(XFSEDC)) CALL RAIN_ICE_PARAM_ASSOCIATE() - ! ! !* 0. FUNCTION STATEMENTS @@ -601,8 +577,7 @@ IF (GFLAG) THEN WRITE(UNIT=KLUOUT,FMT='(" Crit. ice cont. XCRIAUTI=",E13.6)') XCRIAUTI WRITE(UNIT=KLUOUT,FMT='(" A Coef. for cirrus law XACRIAUTI=",E13.6)')XACRIAUTI WRITE(UNIT=KLUOUT,FMT='(" B Coef. for cirrus law XBCRIAUTI=",E13.6)')XBCRIAUTI - WRITE(UNIT=KLUOUT, & - & FMT='(" Temp degC at which cirrus law starts to be used=",E13.6)') XT0CRIAUTI + WRITE(UNIT=KLUOUT,FMT='(" Temp degC at which cirrus law starts to be used=",E13.6)') XT0CRIAUTI END IF ! ! diff --git a/src/mesonh/micro/lima_adjust.f90 b/src/mesonh/micro/lima_adjust.f90 index 949fabf42b62e7240d2806dc6eaada110ff037f0..31ea1fefa3f64de70ef37019f48128354ae84871 100644 --- a/src/mesonh/micro/lima_adjust.f90 +++ b/src/mesonh/micro/lima_adjust.f90 @@ -137,6 +137,7 @@ END MODULE MODI_LIMA_ADJUST ! P. Wautelet 28/05/2020: bugfix: correct array start for PSVT and PSVS ! P. Wautelet 01/02/2021: bugfix: add missing CEDS source terms for SV budgets ! B. Vie 06/2020: fix PSRCS +! P. Wautelet 23/07/2021: replace non-standard FLOAT function by REAL function !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -694,9 +695,9 @@ IF( IMICRO >= 1 ) THEN ALLOCATE(ZZW2(IMICRO)) ALLOCATE(ZVEC1(IMICRO)) ALLOCATE(IVEC1(IMICRO)) - ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NAHEN)-0.0001, XAHENINTP1 * ZZT(:) + XAHENINTP2 ) ) + ZVEC1(:) = MAX( 1.0001, MIN( REAL(NAHEN)-0.0001, XAHENINTP1 * ZZT(:) + XAHENINTP2 ) ) IVEC1(:) = INT( ZVEC1(:) ) - ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) + ZVEC1(:) = ZVEC1(:) - REAL( IVEC1(:) ) ZS(:) = ZRVS(:)*PTSTEP / ZRVSATW(:) - 1. ZZW(:) = ZCCS(:)*PTSTEP/(XLBC*ZCCS(:)/ZRCS(:))**XLBEXC ZZW2(:) = XAHENG3(IVEC1(:)+1)*ZVEC1(:)-XAHENG3(IVEC1(:))*(ZVEC1(:)-1.) diff --git a/src/mesonh/micro/lima_adjust_split.f90 b/src/mesonh/micro/lima_adjust_split.f90 index 985c6654706550f4c499bf0089205af98ddca72b..1b31b825dcb5bd6b95178e34661906f737723c1d 100644 --- a/src/mesonh/micro/lima_adjust_split.f90 +++ b/src/mesonh/micro/lima_adjust_split.f90 @@ -141,6 +141,7 @@ END MODULE MODI_LIMA_ADJUST_SPLIT !! MODIFICATIONS !! ------------- !! Original 06/2021 forked from lima_adjust.f90 +! P. Wautelet 23/07/2021: replace non-standard FLOAT function by REAL function !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -599,9 +600,9 @@ DO JITER =1,ITERMAX ALLOCATE(ZZW2(IMICRO)) ALLOCATE(ZVEC1(IMICRO)) ALLOCATE(IVEC1(IMICRO)) - ZVEC1(:) = MAX( 1.0001, MIN( FLOAT(NAHEN)-0.0001, XAHENINTP1 * ZZT(:) + XAHENINTP2 ) ) + ZVEC1(:) = MAX( 1.0001, MIN( REAL(NAHEN)-0.0001, XAHENINTP1 * ZZT(:) + XAHENINTP2 ) ) IVEC1(:) = INT( ZVEC1(:) ) - ZVEC1(:) = ZVEC1(:) - FLOAT( IVEC1(:) ) + ZVEC1(:) = ZVEC1(:) - REAL( IVEC1(:) ) ZS(:) = ZRVS(:)*PTSTEP / ZRVSATW(:) - 1. ZZW(:) = ZCCS(:)*PTSTEP/(XLBC*ZCCS(:)/ZRCS(:))**XLBEXC ZZW2(:) = XAHENG3(IVEC1(:)+1)*ZVEC1(:)-XAHENG3(IVEC1(:))*(ZVEC1(:)-1.) diff --git a/src/mesonh/micro/modi_ini_rain_ice.F90 b/src/mesonh/micro/modi_ini_rain_ice.F90 new file mode 100644 index 0000000000000000000000000000000000000000..24dd0d68de12ce2b27d5d2ef3f0a9e60f1978fa1 --- /dev/null +++ b/src/mesonh/micro/modi_ini_rain_ice.F90 @@ -0,0 +1,23 @@ +! ######spl + MODULE MODI_INI_RAIN_ICE +! ######################## +! +INTERFACE + SUBROUTINE INI_RAIN_ICE ( KLUOUT, PTSTEP, PDZMIN, KSPLITR, HCLOUD ) +! +INTEGER, INTENT(IN) :: KLUOUT ! Logical unit number for prints +INTEGER, INTENT(OUT):: KSPLITR ! Number of small time step + ! integration for rain + ! sedimendation +! +REAL, INTENT(IN) :: PTSTEP ! Effective Time step +! +REAL, INTENT(IN) :: PDZMIN ! minimun vertical mesh size +! +CHARACTER (LEN=4), INTENT(IN) :: HCLOUD ! Indicator of the cloud scheme +! +END SUBROUTINE INI_RAIN_ICE +! +END INTERFACE +! +END MODULE MODI_INI_RAIN_ICE diff --git a/src/mesonh/micro/rain_ice_elec.f90 b/src/mesonh/micro/rain_ice_elec.f90 index 69721492d16057037ea4d126ce6ce6801f23f372..b82bed489109f0474b87bf53e43671787df81599 100644 --- a/src/mesonh/micro/rain_ice_elec.f90 +++ b/src/mesonh/micro/rain_ice_elec.f90 @@ -3227,7 +3227,7 @@ IMPLICIT NONE if ( lbudget_rs ) call Budget_store_add( tbudgets(NBUDGET_RS), 'CMEL', & Unpack( -zzw(:) * zrhodj(:), mask = gmicro(:, :, :), field = 0. ) ) - if ( lbudget_rg ) call Budget_store_end( tbudgets(NBUDGET_RG), 'CMEL', & + if ( lbudget_rg ) call Budget_store_add( tbudgets(NBUDGET_RG), 'CMEL', & Unpack( zzw(:) * zrhodj(:), mask = gmicro(:, :, :), field = 0. ) ) if ( lbudget_sv ) then call Budget_store_end( tbudgets(NBUDGET_SV1 - 1 + nsv_elecbeg + 4 ), 'CMEL', & diff --git a/src/mesonh/turb/ini_cturb.f90 b/src/mesonh/turb/ini_cturb.f90 index 9fc3c4a94329738f2d1d03744d297dab6ba7fe0b..ea3f0c70d937df63992fde48dba3347e5f6b5fd4 100644 --- a/src/mesonh/turb/ini_cturb.f90 +++ b/src/mesonh/turb/ini_cturb.f90 @@ -225,7 +225,7 @@ XCPR5= XCPR2 ! 3. MINIMUM VALUES ! -------------- ! -XTKEMIN=0.01 +XTKEMIN=0.01 ! This value is replaced by XKEMIN in &NAM_TURBn ! !XLINI=10. ! BL mixing length XLINI=0.1 ! BL mixing length diff --git a/src/testprogs/ice_adjust/getdata_ice_adjust_mod.F90 b/src/testprogs/ice_adjust/getdata_ice_adjust_mod.F90 new file mode 100644 index 0000000000000000000000000000000000000000..1fb0a4a02b8fa38b5c6f656665c38fe7a8dcbe13 --- /dev/null +++ b/src/testprogs/ice_adjust/getdata_ice_adjust_mod.F90 @@ -0,0 +1,580 @@ +MODULE GETDATA_ICE_ADJUST_MOD + +USE OMP_LIB + +INTERFACE REPLICATE + MODULE PROCEDURE REPLICATE3 + MODULE PROCEDURE REPLICATE4 +END INTERFACE + +INTERFACE NPROMIZE + MODULE PROCEDURE NPROMIZE4 + MODULE PROCEDURE NPROMIZE5 +END INTERFACE + +INTERFACE INTERPOLATE + MODULE PROCEDURE INTERPOLATE4 + MODULE PROCEDURE INTERPOLATE5 +END INTERFACE + +INTERFACE SET + MODULE PROCEDURE SET3 + MODULE PROCEDURE SET4 + MODULE PROCEDURE SET5 +END INTERFACE + +CONTAINS + +SUBROUTINE GETDATA_ICE_ADJUST (NPROMA, NGPBLKS, NFLEVG, PRHODJ_B, PEXNREF_B, PRHODREF_B, PPABSM_B, PTHT_B, ZICE_CLD_WGT_B, & +& ZSIGQSAT_B, PSIGS_B, PMFCONV_B, PRC_MF_B, PRI_MF_B, PCF_MF_B, PTHS_B, PRS_B, PSRCS_B, PCLDFR_B, PHLC_HRC_B, PHLC_HCF_B, & +& PHLI_HRI_B, PHLI_HCF_B, ZRS_B, ZZZ_B, PRS_OUT_B, PSRCS_OUT_B, PCLDFR_OUT_B, PHLC_HRC_OUT_B, PHLC_HCF_OUT_B, & +& PHLI_HRI_OUT_B, PHLI_HCF_OUT_B, LDVERBOSE) + +USE IEEE_ARITHMETIC, ONLY : IEEE_SIGNALING_NAN, IEEE_VALUE + +IMPLICIT NONE + +INTEGER, PARAMETER :: IFILE = 77 + +INTEGER :: KLON +INTEGER :: KIDIA +INTEGER :: KFDIA +INTEGER :: KLEV +INTEGER :: KRR +INTEGER :: KDUM + +LOGICAL :: LDVERBOSE + +REAL, ALLOCATABLE :: PRHODJ_B (:,:,:,:) +REAL, ALLOCATABLE :: PEXNREF_B (:,:,:,:) +REAL, ALLOCATABLE :: PRHODREF_B (:,:,:,:) +REAL, ALLOCATABLE :: PPABSM_B (:,:,:,:) +REAL, ALLOCATABLE :: PTHT_B (:,:,:,:) +REAL, ALLOCATABLE :: ZICE_CLD_WGT_B (:,:,:) +REAL, ALLOCATABLE :: ZSIGQSAT_B (:,:,:) +REAL, ALLOCATABLE :: PSIGS_B (:,:,:,:) +REAL, ALLOCATABLE :: PMFCONV_B (:,:,:,:) +REAL, ALLOCATABLE :: PRC_MF_B (:,:,:,:) +REAL, ALLOCATABLE :: PRI_MF_B (:,:,:,:) +REAL, ALLOCATABLE :: PCF_MF_B (:,:,:,:) +REAL, ALLOCATABLE :: PTHS_B (:,:,:,:) +REAL, ALLOCATABLE :: PRS_B (:,:,:,:,:) +REAL, ALLOCATABLE :: PRS_OUT_B (:,:,:,:,:) +REAL, ALLOCATABLE :: PSRCS_B (:,:,:,:) +REAL, ALLOCATABLE :: PSRCS_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PCLDFR_B (:,:,:,:) +REAL, ALLOCATABLE :: PCLDFR_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HRC_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HRC_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HCF_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HCF_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HRI_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HRI_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HCF_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HCF_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: ZRS_B (:,:,:,:,:) +REAL, ALLOCATABLE :: ZZZ_B (:,:,:,:) + +REAL, ALLOCATABLE :: PRHODJ (:,:,:,:) +REAL, ALLOCATABLE :: PEXNREF (:,:,:,:) +REAL, ALLOCATABLE :: PRHODREF (:,:,:,:) +REAL, ALLOCATABLE :: PPABSM (:,:,:,:) +REAL, ALLOCATABLE :: PTHT (:,:,:,:) +REAL, ALLOCATABLE :: PSIGS (:,:,:,:) +REAL, ALLOCATABLE :: PMFCONV (:,:,:,:) +REAL, ALLOCATABLE :: PRC_MF (:,:,:,:) +REAL, ALLOCATABLE :: PRI_MF (:,:,:,:) +REAL, ALLOCATABLE :: PCF_MF (:,:,:,:) +REAL, ALLOCATABLE :: PTHS (:,:,:,:) +REAL, ALLOCATABLE :: PRS (:,:,:,:,:) +REAL, ALLOCATABLE :: PRS_OUT (:,:,:,:,:) +REAL, ALLOCATABLE :: PSRCS_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PCLDFR_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HRC_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HCF_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HRI_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HCF_OUT (:,:,:,:) +REAL, ALLOCATABLE :: ZRS (:,:,:,:,:) +REAL, ALLOCATABLE :: ZZZ (:,:,:,:) + +INTEGER :: NGPTOT, NPROMA, NGPBLKS, NFLEVG +INTEGER :: IOFF, IBL +LOGICAL :: LLEXIST +CHARACTER(LEN=32) :: CLFILE +REAL :: ZNAN + +KRR=6 +NGPTOT = NPROMA * NGPBLKS + +IBL = 1 +WRITE (CLFILE, '("data/",I8.8,".dat")') IBL +OPEN (IFILE, FILE=TRIM (CLFILE), FORM='UNFORMATTED') +READ (IFILE) KLON, KDUM, KLEV +CLOSE (IFILE) + +IF (NFLEVG < 0) NFLEVG = KLEV + +ALLOCATE (ZSIGQSAT_B (NPROMA,1,NGPBLKS)) +ALLOCATE (ZICE_CLD_WGT_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PSRCS_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PCLDFR_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLC_HRC_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLC_HCF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLI_HRI_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLI_HCF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRHODJ_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PEXNREF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRHODREF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PPABSM_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PTHT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PSIGS_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PMFCONV_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRC_MF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRI_MF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PCF_MF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PTHS_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRS_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) +ALLOCATE (PRS_OUT_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) +ALLOCATE (PSRCS_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PCLDFR_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (ZRS_B (NPROMA,1,NFLEVG,0:KRR,NGPBLKS)) +ALLOCATE (ZZZ_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLC_HRC_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLC_HCF_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLI_HRI_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLI_HCF_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) + +ZNAN = IEEE_VALUE (ZNAN, IEEE_SIGNALING_NAN) + + +CALL SET (ZSIGQSAT_B ) +CALL SET (ZICE_CLD_WGT_B) +CALL SET (PSRCS_B ) +CALL SET (PCLDFR_B ) +CALL SET (PHLC_HRC_B ) +CALL SET (PHLC_HCF_B ) +CALL SET (PHLI_HRI_B ) +CALL SET (PHLI_HCF_B ) +CALL SET (PRHODJ_B ) +CALL SET (PEXNREF_B ) +CALL SET (PRHODREF_B ) +CALL SET (PPABSM_B ) +CALL SET (PTHT_B ) +CALL SET (PSIGS_B ) +CALL SET (PMFCONV_B ) +CALL SET (PRC_MF_B ) +CALL SET (PRI_MF_B ) +CALL SET (PCF_MF_B ) +CALL SET (PTHS_B ) +CALL SET (PRS_B ) +CALL SET (PRS_OUT_B ) +CALL SET (PSRCS_OUT_B ) +CALL SET (PCLDFR_OUT_B ) +CALL SET (ZRS_B ) +CALL SET (ZZZ_B ) +CALL SET (PHLC_HRC_OUT_B) +CALL SET (PHLC_HCF_OUT_B) +CALL SET (PHLI_HRI_OUT_B) +CALL SET (PHLI_HCF_OUT_B) + + + +ZSIGQSAT_B = 2.0000000000000000E-002 +ZICE_CLD_WGT_B = 1.5 +PSRCS_B = ZNAN +PCLDFR_B = ZNAN +PHLI_HCF_B = ZNAN +PHLI_HRI_B = ZNAN +PHLC_HCF_B = ZNAN +PHLC_HRC_B = ZNAN + + +IOFF = 0 +IBL = 0 +LLEXIST = .TRUE. + +DO WHILE(LLEXIST) + IBL = IBL + 1 + WRITE (CLFILE, '("data/",I8.8,".dat")') IBL + + INQUIRE (FILE=TRIM (CLFILE), EXIST=LLEXIST) + + IF (LDVERBOSE) PRINT *, TRIM (CLFILE) + + IF (.NOT. LLEXIST) EXIT + + OPEN (IFILE, FILE=TRIM (CLFILE), FORM='UNFORMATTED') + + READ (IFILE) KLON, KDUM, KLEV + + IF (IBL == 1) THEN + ALLOCATE (PRHODJ (NGPTOT,1,KLEV,1)) + ALLOCATE (PEXNREF (NGPTOT,1,KLEV,1)) + ALLOCATE (PRHODREF (NGPTOT,1,KLEV,1)) + ALLOCATE (PPABSM (NGPTOT,1,KLEV,1)) + ALLOCATE (PTHT (NGPTOT,1,KLEV,1)) + ALLOCATE (PSIGS (NGPTOT,1,KLEV,1)) + ALLOCATE (PMFCONV (NGPTOT,1,KLEV,1)) + ALLOCATE (PRC_MF (NGPTOT,1,KLEV,1)) + ALLOCATE (PRI_MF (NGPTOT,1,KLEV,1)) + ALLOCATE (PCF_MF (NGPTOT,1,KLEV,1)) + ALLOCATE (PTHS (NGPTOT,1,KLEV,1)) + ALLOCATE (PRS (NGPTOT,1,KLEV,KRR,1)) + ALLOCATE (PRS_OUT (NGPTOT,1,KLEV,KRR,1)) + ALLOCATE (PSRCS_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (PCLDFR_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (ZRS (NGPTOT,1,KLEV,0:KRR,1)) + ALLOCATE (ZZZ (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLC_HRC_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLC_HCF_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLI_HRI_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLI_HCF_OUT (NGPTOT,1,KLEV,1)) + ENDIF + + IF (IOFF+KLON > NGPTOT) THEN + EXIT + ENDIF + + READ (IFILE) PRHODJ (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PEXNREF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRHODREF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PSIGS (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PMFCONV (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PPABSM (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) ZZZ (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PCF_MF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRC_MF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRI_MF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) ZRS (IOFF+1:IOFF+KLON,:,:,:,1) + READ (IFILE) PRS (IOFF+1:IOFF+KLON,:,:,:,1) + READ (IFILE) PTHS (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRS_OUT (IOFF+1:IOFF+KLON,:,:,:,1) + READ (IFILE) PSRCS_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PCLDFR_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLC_HRC_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLC_HCF_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLI_HRI_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLI_HCF_OUT (IOFF+1:IOFF+KLON,:,:,1) + + CLOSE (IFILE) + + IOFF = IOFF + KLON + +ENDDO + +IF (NFLEVG /= KLEV) THEN + CALL INTERPOLATE (NFLEVG, IOFF, PRHODJ ) + CALL INTERPOLATE (NFLEVG, IOFF, PEXNREF ) + CALL INTERPOLATE (NFLEVG, IOFF, PRHODREF ) + CALL INTERPOLATE (NFLEVG, IOFF, PSIGS ) + CALL INTERPOLATE (NFLEVG, IOFF, PMFCONV ) + CALL INTERPOLATE (NFLEVG, IOFF, PPABSM ) + CALL INTERPOLATE (NFLEVG, IOFF, ZZZ ) + CALL INTERPOLATE (NFLEVG, IOFF, PCF_MF ) + CALL INTERPOLATE (NFLEVG, IOFF, PRC_MF ) + CALL INTERPOLATE (NFLEVG, IOFF, PRI_MF ) + CALL INTERPOLATE (NFLEVG, IOFF, ZRS ) + CALL INTERPOLATE (NFLEVG, IOFF, PRS ) + CALL INTERPOLATE (NFLEVG, IOFF, PTHS ) + CALL INTERPOLATE (NFLEVG, IOFF, PRS_OUT ) + CALL INTERPOLATE (NFLEVG, IOFF, PSRCS_OUT ) + CALL INTERPOLATE (NFLEVG, IOFF, PCLDFR_OUT ) + CALL INTERPOLATE (NFLEVG, IOFF, PHLC_HRC_OUT) + CALL INTERPOLATE (NFLEVG, IOFF, PHLC_HCF_OUT) + CALL INTERPOLATE (NFLEVG, IOFF, PHLI_HRI_OUT) + CALL INTERPOLATE (NFLEVG, IOFF, PHLI_HCF_OUT) +ENDIF + +CALL REPLICATE (IOFF, PRHODJ (:, :, :, 1)) +CALL REPLICATE (IOFF, PEXNREF (:, :, :, 1)) +CALL REPLICATE (IOFF, PRHODREF (:, :, :, 1)) +CALL REPLICATE (IOFF, PSIGS (:, :, :, 1)) +CALL REPLICATE (IOFF, PMFCONV (:, :, :, 1)) +CALL REPLICATE (IOFF, PPABSM (:, :, :, 1)) +CALL REPLICATE (IOFF, ZZZ (:, :, :, 1)) +CALL REPLICATE (IOFF, PCF_MF (:, :, :, 1)) +CALL REPLICATE (IOFF, PRC_MF (:, :, :, 1)) +CALL REPLICATE (IOFF, PRI_MF (:, :, :, 1)) +CALL REPLICATE (IOFF, ZRS (:, :, :, :, 1)) +CALL REPLICATE (IOFF, PRS (:, :, :, :, 1)) +CALL REPLICATE (IOFF, PTHS (:, :, :, 1)) +CALL REPLICATE (IOFF, PRS_OUT (:, :, :, :, 1)) +CALL REPLICATE (IOFF, PSRCS_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PCLDFR_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLC_HRC_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLC_HCF_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLI_HRI_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLI_HCF_OUT (:, :, :, 1)) + +CALL NPROMIZE (NPROMA, PRHODJ , PRHODJ_B ) +CALL NPROMIZE (NPROMA, PEXNREF , PEXNREF_B ) +CALL NPROMIZE (NPROMA, PRHODREF , PRHODREF_B ) +CALL NPROMIZE (NPROMA, PSIGS , PSIGS_B ) +CALL NPROMIZE (NPROMA, PMFCONV , PMFCONV_B ) +CALL NPROMIZE (NPROMA, PPABSM , PPABSM_B ) +CALL NPROMIZE (NPROMA, ZZZ , ZZZ_B ) +CALL NPROMIZE (NPROMA, PCF_MF , PCF_MF_B ) +CALL NPROMIZE (NPROMA, PRC_MF , PRC_MF_B ) +CALL NPROMIZE (NPROMA, PRI_MF , PRI_MF_B ) +CALL NPROMIZE (NPROMA, ZRS , ZRS_B ) +CALL NPROMIZE (NPROMA, PRS , PRS_B ) +CALL NPROMIZE (NPROMA, PTHS , PTHS_B ) +CALL NPROMIZE (NPROMA, PRS_OUT , PRS_OUT_B ) +CALL NPROMIZE (NPROMA, PSRCS_OUT , PSRCS_OUT_B ) +CALL NPROMIZE (NPROMA, PCLDFR_OUT , PCLDFR_OUT_B ) +CALL NPROMIZE (NPROMA, PHLC_HRC_OUT, PHLC_HRC_OUT_B ) +CALL NPROMIZE (NPROMA, PHLC_HCF_OUT, PHLC_HCF_OUT_B ) +CALL NPROMIZE (NPROMA, PHLI_HRI_OUT, PHLI_HRI_OUT_B ) +CALL NPROMIZE (NPROMA, PHLI_HCF_OUT, PHLI_HCF_OUT_B ) + +END SUBROUTINE + +SUBROUTINE REPLICATE4 (KOFF, P) + +INTEGER :: KOFF +REAL :: P (:,:,:,:) + +INTEGER :: I, J + +DO I = KOFF+1, SIZE (P, 1) + J = 1 + MODULO (I - 1, KOFF) + P (I, :, :, :) = P (J, :, :, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE REPLICATE3 (KOFF, P) + +INTEGER :: KOFF +REAL :: P (:,:,:) + +INTEGER :: I, J + +DO I = KOFF+1, SIZE (P, 1) + J = 1 + MODULO (I - 1, KOFF) + P (I, :, :) = P (J, :, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE NPROMIZE4 (KPROMA, PI, PO) + +INTEGER :: KPROMA +REAL, INTENT (IN) :: PI (:,:,:,:) +REAL, INTENT (OUT) :: PO (:,:,:,:) + +INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA + +IF (SIZE (PI, 4) /= 1) STOP 1 + +IGPTOT = SIZE (PI, 1) +IGPBLK = 1 + (IGPTOT-1) / KPROMA + +DO IGP = 1, IGPTOT, KPROMA + IBL = 1 + (IGP - 1) / KPROMA + JIDIA = 1 + JFDIA = MIN (KPROMA, IGPTOT - (IBL - 1) * KPROMA) + + DO JLON = JIDIA, JFDIA + PO (JLON, :, :, IBL) = PI (IGP + (JLON - 1), :, :, 1) + ENDDO + + DO JLON = JFDIA+1, KPROMA + PO (JLON, :, :, IBL) = PO (JFDIA, :, :, IBL) + ENDDO + +ENDDO + +END SUBROUTINE + +SUBROUTINE NPROMIZE5 (KPROMA, PI, PO) + +INTEGER :: KPROMA +REAL, INTENT (IN) :: PI (:,:,:,:,:) +REAL, INTENT (OUT) :: PO (:,:,:,:,:) + +INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA + +IF (SIZE (PI, 5) /= 1) STOP 1 + +IGPTOT = SIZE (PI, 1) +IGPBLK = 1 + (IGPTOT-1) / KPROMA + +DO IGP = 1, IGPTOT, KPROMA + IBL = 1 + (IGP - 1) / KPROMA + JIDIA = 1 + JFDIA = MIN (KPROMA, IGPTOT - (IBL - 1) * KPROMA) + + DO JLON = JIDIA, JFDIA + PO (JLON, :, :, :, IBL) = PI (IGP + (JLON - 1), :, :, :, 1) + ENDDO + + DO JLON = JFDIA+1, KPROMA + PO (JLON, :, :, :, IBL) = PI (JFDIA, :, :, :, IBL) + ENDDO + +ENDDO + +END SUBROUTINE + +SUBROUTINE INTERPOLATE4 (KFLEVG, KOFF, P) + +INTEGER :: KFLEVG, KOFF +REAL, ALLOCATABLE :: P (:,:,:,:) +REAL :: Z (LBOUND (P, 1):UBOUND (P, 1), & + & LBOUND (P, 2):UBOUND (P, 2), & + & LBOUND (P, 3):UBOUND (P, 3), & + & LBOUND (P, 4):UBOUND (P, 4)) +INTEGER :: ILEV1A, ILEV1B, ILEV2, NLEV1, NLEV2 +REAL :: ZWA, ZWB, ZLEV1, ZLEV2 + +Z = P + +NLEV1 = SIZE (P, 3) +NLEV2 = KFLEVG + +DEALLOCATE (P) + +ALLOCATE (P (LBOUND (Z, 1):UBOUND (Z, 1), & + & LBOUND (Z, 2):UBOUND (Z, 2), & + & KFLEVG, & + & LBOUND (Z, 4):UBOUND (Z, 4))) + +DO ILEV2 = 1, NLEV2 + ZLEV2 = REAL (ILEV2 - 1) / REAL (NLEV2 -1) + ZLEV1 = 1. + ZLEV2 * REAL (NLEV1 - 1) + ILEV1B = MIN (CEILING (ZLEV1), NLEV1) + ILEV1A = MAX (FLOOR (ZLEV1), 1) + + IF (ILEV1A == ILEV1B) THEN + ZWA = 1. + ZWB = 0. + ELSE + ZWA = REAL (ILEV1B) - ZLEV1 + ZWB = ZLEV1 - REAL (ILEV1A) + ENDIF + +! WRITE (*, '(" ZLEV2 = ",E12.5," ZLEV1 = ",E12.5," ILEV2 = ",I4," ILEV1A = ",I4," ZWA = ",E12.5," ILEV1B = ",I4," ZWB = ",E12.5)') & +! & ZLEV2, ZLEV1, ILEV2, ILEV1A, ZWA, ILEV1B, ZWB + + P (1:KOFF, :, ILEV2, :) = ZWA * Z (1:KOFF, :, ILEV1A, :) + ZWB * Z (1:KOFF, :, ILEV1B, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE INTERPOLATE5 (KFLEVG, KOFF, P) + +INTEGER :: KFLEVG, KOFF +REAL, ALLOCATABLE :: P (:,:,:,:,:) +REAL :: Z (LBOUND (P, 1):UBOUND (P, 1), & + & LBOUND (P, 2):UBOUND (P, 2), & + & LBOUND (P, 3):UBOUND (P, 3), & + & LBOUND (P, 4):UBOUND (P, 4), & + & LBOUND (P, 5):UBOUND (P, 5)) +INTEGER :: ILEV1A, ILEV1B, ILEV2, NLEV1, NLEV2 +REAL :: ZWA, ZWB, ZLEV1, ZLEV2 + +Z = P + +NLEV1 = SIZE (P, 3) +NLEV2 = KFLEVG + +DEALLOCATE (P) + +ALLOCATE (P (LBOUND (Z, 1):UBOUND (Z, 1), & + & LBOUND (Z, 2):UBOUND (Z, 2), & + & KFLEVG, & + & LBOUND (Z, 4):UBOUND (Z, 4), & + & LBOUND (Z, 5):UBOUND (Z, 5))) + +DO ILEV2 = 1, NLEV2 + ZLEV2 = REAL (ILEV2 - 1) / REAL (NLEV2 -1) + ZLEV1 = 1. + ZLEV2 * REAL (NLEV1 - 1) + ILEV1B = MIN (CEILING (ZLEV1), NLEV1) + ILEV1A = MAX (FLOOR (ZLEV1), 1) + + IF (ILEV1A == ILEV1B) THEN + ZWA = 1. + ZWB = 0. + ELSE + ZWA = REAL (ILEV1B) - ZLEV1 + ZWB = ZLEV1 - REAL (ILEV1A) + ENDIF + +! WRITE (*, '(" ZLEV2 = ",E12.5," ZLEV1 = ",E12.5," ILEV2 = ",I4," ILEV1A = ",I4," ZWA = ",E12.5," ILEV1B = ",I4," ZWB = ",E12.5)') & +! & ZLEV2, ZLEV1, ILEV2, ILEV1A, ZWA, ILEV1B, ZWB + + P (1:KOFF, :, ILEV2, :, :) = ZWA * Z (1:KOFF, :, ILEV1A, :, :) + ZWB * Z (1:KOFF, :, ILEV1B, :, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE SET3 (P) + +REAL :: P (:,:,:) +INTEGER :: IBL, IGPBLKS +INTEGER :: NTID, ITID, JBLK1, JBLK2 + + +IGPBLKS = SIZE (P, 3) + +!$OMP PARALLEL PRIVATE (ITID, JBLK1, JBLK2, NTID) +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (IGPBLKS * (ITID+0)) / NTID +JBLK2 = (IGPBLKS * (ITID+1)) / NTID + +DO IBL = JBLK1, JBLK2 + P (:,:,IBL) = ZNAN +ENDDO + +!$OMP END PARALLEL + +END SUBROUTINE + +SUBROUTINE SET4 (P) + +REAL :: P (:,:,:,:) +INTEGER :: IBL, IGPBLKS +INTEGER :: NTID, ITID, JBLK1, JBLK2 + +IGPBLKS = SIZE (P, 4) + +!$OMP PARALLEL PRIVATE (ITID, JBLK1, JBLK2, NTID) +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (IGPBLKS * (ITID+0)) / NTID +JBLK2 = (IGPBLKS * (ITID+1)) / NTID + +DO IBL = JBLK1, JBLK2 + P (:,:,:,IBL) = ZNAN +ENDDO + +!$OMP END PARALLEL + +END SUBROUTINE + +SUBROUTINE SET5 (P) + +REAL :: P (:,:,:,:,:) +INTEGER :: IBL, IGPBLKS +INTEGER :: NTID, ITID, JBLK1, JBLK2 + +IGPBLKS = SIZE (P, 5) + +!$OMP PARALLEL PRIVATE (ITID, JBLK1, JBLK2, NTID) +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (IGPBLKS * (ITID+0)) / NTID +JBLK2 = (IGPBLKS * (ITID+1)) / NTID + +DO IBL = JBLK1, JBLK2 + P (:,:,:,:,IBL) = ZNAN +ENDDO + +!$OMP END PARALLEL + +END SUBROUTINE + + +END MODULE diff --git a/src/testprogs/ice_adjust/main_ice_adjust.F90 b/src/testprogs/ice_adjust/main_ice_adjust.F90 new file mode 100644 index 0000000000000000000000000000000000000000..02ab5c6efb1cafa34cf2642f830d35afe00bd490 --- /dev/null +++ b/src/testprogs/ice_adjust/main_ice_adjust.F90 @@ -0,0 +1,367 @@ +PROGRAM MAIN_ICE_ADJUST + +USE XRD_GETOPTIONS +USE GETDATA_ICE_ADJUST_MOD +USE MODI_ICE_ADJUST +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t, CST +USE MODD_NEB, ONLY: NEB_t, NEB +USE MODD_RAIN_ICE_PARAM, ONLY : RAIN_ICE_PARAM_t +USE MODI_INI_CST +USE MODI_INI_NEB +USE MODD_BUDGET, ONLY: TBUDGETDATA, NBUDGET_RI, TBUCONF +USE STACK_MOD +USE OMP_LIB +USE YOMHOOK, ONLY : LHOOK, DR_HOOK +USE PARKIND1, ONLY : JPRB, JPIM + + +IMPLICIT NONE + +INTEGER :: KLON +INTEGER :: KLEV +INTEGER :: KRR + +REAL, ALLOCATABLE :: PRHODJ (:,:,:,:) +REAL, ALLOCATABLE :: PEXNREF (:,:,:,:) +REAL, ALLOCATABLE :: PRHODREF (:,:,:,:) +REAL, ALLOCATABLE :: PPABSM (:,:,:,:) +REAL, ALLOCATABLE :: PTHT (:,:,:,:) +REAL, ALLOCATABLE :: PSIGS (:,:,:,:) +REAL, ALLOCATABLE :: PMFCONV (:,:,:,:) +REAL, ALLOCATABLE :: PRC_MF (:,:,:,:) +REAL, ALLOCATABLE :: PRI_MF (:,:,:,:) +REAL, ALLOCATABLE :: PCF_MF (:,:,:,:) +REAL, ALLOCATABLE :: PTHS (:,:,:,:) +REAL, ALLOCATABLE :: PRS (:,:,:,:,:) +REAL, ALLOCATABLE :: PSRCS (:,:,:,:) +REAL, ALLOCATABLE :: PCLDFR (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HRC (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HCF (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HRI (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HCF (:,:,:,:) +REAL, ALLOCATABLE :: ZRS (:,:,:,:,:) +REAL, ALLOCATABLE :: ZZZ (:,:,:,:) +REAL, ALLOCATABLE :: ZSIGQSAT (:,:,:) +REAL, ALLOCATABLE :: ZICE_CLD_WGT (:,:,:) + +REAL, ALLOCATABLE :: PRS_OUT (:,:,:,:,:) +REAL, ALLOCATABLE :: PSRCS_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PCLDFR_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HRC_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HCF_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HRI_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HCF_OUT (:,:,:,:) + +INTEGER :: NPROMA, NGPBLKS, NFLEVG +INTEGER :: IBL, JLON, JLEV + +TYPE(DIMPHYEX_t) :: D, D0 +TYPE(RAIN_ICE_PARAM_t) :: ICEP +CHARACTER(LEN=1) :: HFRAC_ICE +CHARACTER(LEN=80) :: HCONDENS +CHARACTER(LEN=4) :: HLAMBDA3 +CHARACTER(LEN=4) :: HBUNAME +LOGICAL :: OSUBG_COND +LOGICAL :: OSIGMAS +LOGICAL :: OCND2 +LOGICAL :: LMFCONV +CHARACTER(LEN=80) :: HSUBG_MF_PDF +REAL :: PTSTEP +TYPE(TBUDGETDATA), DIMENSION(NBUDGET_RI) :: YLBUDGET +LOGICAL :: LLCHECK +LOGICAL :: LLCHECKDIFF +LOGICAL :: LLDIFF +INTEGER :: IBLOCK1, IBLOCK2 +INTEGER :: ISTSZ, JBLK1, JBLK2 +INTEGER :: NTID, ITID +INTEGER :: JRR + +REAL, ALLOCATABLE :: PSTACK(:,:) +TYPE (STACK) :: YLSTACK + +REAL(KIND=8) :: TS,TE +REAL(KIND=8) :: TSC, TEC, TSD, TED, ZTC, ZTD +INTEGER :: ITIME, NTIME +INTEGER :: IRANK, ISIZE +LOGICAL :: LLVERBOSE, LLSTAT, LLBIND +REAL (KIND=JPRB) :: ZHOOK_HANDLE + +CALL INITOPTIONS () +NGPBLKS = 296 +CALL GETOPTION ("--blocks", NGPBLKS) +NPROMA = 32 +CALL GETOPTION ("--nproma", NPROMA) +NFLEVG = -1 +CALL GETOPTION ("--nflevg", NFLEVG) +CALL GETOPTION ("--check", LLCHECK) +CALL GETOPTION ("--checkdiff", LLCHECKDIFF) +IBLOCK1 = 1 +CALL GETOPTION ("--check-block-1", IBLOCK1) +IBLOCK2 = NGPBLKS +CALL GETOPTION ("--check-block-2", IBLOCK2) +CALL GETOPTION ("--stat", LLSTAT) +NTIME = 1 +CALL GETOPTION ("--times", NTIME) +CALL GETOPTION ("--verbose", LLVERBOSE) +CALL GETOPTION ("--bind", LLBIND) +CALL CHECKOPTIONS () + +LLDIFF = .FALSE. + +IRANK = 0 +ISIZE = 1 +IF (LLBIND) THEN + CALL LINUX_BIND (IRANK, ISIZE) + CALL LINUX_BIND_DUMP (IRANK, ISIZE) +ENDIF + +CALL GETDATA_ICE_ADJUST (NPROMA, NGPBLKS, NFLEVG, PRHODJ, PEXNREF, PRHODREF, PPABSM, PTHT, ZICE_CLD_WGT, & +& ZSIGQSAT, PSIGS, PMFCONV, PRC_MF, PRI_MF, PCF_MF, PTHS, PRS, PSRCS, PCLDFR, PHLC_HRC, PHLC_HCF, & +& PHLI_HRI, PHLI_HCF, ZRS, ZZZ, PRS_OUT, PSRCS_OUT, PCLDFR_OUT, PHLC_HRC_OUT, PHLC_HCF_OUT, & +& PHLI_HRI_OUT, PHLI_HCF_OUT, LLVERBOSE) + + +KLEV = SIZE (PRS, 3) +KRR = SIZE (PRS, 4) + +IF (LLVERBOSE) PRINT *, " KLEV = ", KLEV, " KRR = ", KRR + +PRINT *, " NPROMA = ", NPROMA, " KLEV = ", KLEV, " NGPBLKS = ", NGPBLKS + +CALL INI_CST +CALL INI_NEB + +! Taken from ini_rain_ice.F90; we only need these for ice_adjust.F90 +ICEP%XCRIAUTI = 0.2E-4 +ICEP%XCRIAUTC = 0.5E-3 +ICEP%XACRIAUTI = 0.06 +ICEP%XBCRIAUTI = -3.5 + +! As provided by S. Riette, AROME specific + +ICEP%XCRIAUTC = 1.0000000000000000E-003 +ICEP%XCRIAUTI = 2.0000000000000001E-004 +ICEP%XACRIAUTI = 6.2974856647312144E-002 +ICEP%XBCRIAUTI = -3.3840957210994582 + + +HFRAC_ICE = 'S' +HCONDENS = 'CB02' +HLAMBDA3 = 'CB' +HBUNAME = 'DEPI' +OSUBG_COND = .TRUE. +OSIGMAS = .TRUE. +OCND2 = .FALSE. +HSUBG_MF_PDF = 'TRIANGLE' +PTSTEP = 50.000000000000000 +LMFCONV = .TRUE. +DO JRR=1, NBUDGET_RI + YLBUDGET(JRR)%NBUDGET=JRR +ENDDO + +D0%NIT = NPROMA +D0%NIB = 1 +D0%NIE = NPROMA +D0%NJT = 1 +D0%NJB = 1 +D0%NJE = 1 +D0%NKL = -1 +D0%NKT = KLEV +D0%NKA = KLEV +D0%NKU = 1 +D0%NKB = KLEV +D0%NKE = 1 +D0%NKTB = 1 +D0%NKTE = KLEV + +ISTSZ = NPROMA * 20 * KLEV +ALLOCATE (PSTACK (ISTSZ, NGPBLKS)) + +TS = OMP_GET_WTIME () + +ZTD = 0. +ZTC = 0. + +IF (LHOOK) CALL DR_HOOK ('MAIN',0,ZHOOK_HANDLE) + +DO ITIME = 1, NTIME + + TSD = OMP_GET_WTIME () + +!$acc data & +!$acc & copyin (D0, CST, ICEP, NEB, KRR, HFRAC_ICE, HCONDENS, HLAMBDA3, HBUNAME, OSUBG_COND, OSIGMAS, OCND2, HSUBG_MF_PDF, PTSTEP, LMFCONV, & +!$acc & ZSIGQSAT, PRHODJ, PEXNREF, PRHODREF, PSIGS, PMFCONV, PPABSM, ZZZ, PCF_MF, PRC_MF, PRI_MF, ZRS, ZICE_CLD_WGT) & +!$acc & copy (PRS, PTHS), & +!$acc & copyout (PSRCS, PCLDFR, PHLC_HRC, PHLC_HCF, PHLI_HRI, PHLI_HCF) & +!$acc & create (PSTACK) + + TSC = OMP_GET_WTIME () + +#ifdef USE_OPENMP +!$OMP PARALLEL PRIVATE (D, ITID, JBLK1, JBLK2) +#endif + +#ifdef _OPENACC +JBLK1 = 1 +JBLK2 = NGPBLKS +#endif + +#ifdef USE_OPENMP +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (NGPBLKS * (ITID+0)) / NTID +JBLK2 = (NGPBLKS * (ITID+1)) / NTID + + +!PRINT *, ITID, JBLK1, JBLK2 + +#endif + +!$acc parallel loop gang vector private (YLSTACK, IBL, JLON, D) collapse (2) + + DO IBL = JBLK1, JBLK2 + + +#ifdef _OPENACC + DO JLON = 1, NPROMA + D = D0 + D%NIB = JLON + D%NIE = JLON +#endif + +#ifdef USE_OPENMP + D = D0 +#endif + +#ifdef USE_STACK + YLSTACK%L = LOC (PSTACK (1, IBL)) + YLSTACK%U = YLSTACK%L + ISTSZ * KIND (PSTACK) +#else + YLSTACK%L = 0 + YLSTACK%U = 0 +#endif + + CALL ICE_ADJUST (D, CST, ICEP, NEB, TBUCONF, KRR, HFRAC_ICE, HCONDENS, HLAMBDA3, HBUNAME, OSUBG_COND, & + & OSIGMAS, OCND2, HSUBG_MF_PDF, PTSTEP, ZSIGQSAT (:, :, IBL), PRHODJ=PRHODJ (:, :, :, IBL), PEXNREF=PEXNREF (:, :, :, IBL), & + & PRHODREF=PRHODREF (:, :, :, IBL), PSIGS=PSIGS (:, :, :, IBL), LMFCONV=LMFCONV, PMFCONV=PMFCONV (:, :, :, IBL), & + & PPABST=PPABSM (:, :, :, IBL), PZZ=ZZZ (:, :, :, IBL), PEXN=PEXNREF (:, :, :, IBL), PCF_MF=PCF_MF (:, :, :, IBL), & + & PRC_MF=PRC_MF (:, :, :, IBL), PRI_MF=PRI_MF (:, :, :, IBL), PRV=ZRS(:, :, :, 1, IBL), PRC=ZRS(:, :, :, 2, IBL), & + & PRVS=PRS(:, :, :, 1, IBL), PRCS=PRS(:, :, :, 2, IBL), PTH=ZRS(:, :, :, 0, IBL), PTHS=PTHS (:, :, :, IBL), & + & OCOMPUTE_SRC=.TRUE., & + & PSRCS=PSRCS (:, :, :, IBL), PCLDFR=PCLDFR (:, :, :, IBL), PRR=ZRS(:, :, :, 3, IBL), PRI=ZRS(:, :, :, 4, IBL), & + & PRIS=PRS(:, :, :, 4, IBL), PRS=ZRS(:, :, :, 5, IBL), PRG=ZRS(:, :, :, 6, IBL), PHLC_HRC=PHLC_HRC(:, :, :, IBL), & + & PHLC_HCF=PHLC_HCF(:, :, :, IBL), PHLI_HRI=PHLI_HRI(:, :, :, IBL), PHLI_HCF=PHLI_HCF(:, :, :, IBL), & + & TBUDGETS=YLBUDGET, KBUDGETS=NBUDGET_RI, & + & PICE_CLD_WGT=ZICE_CLD_WGT(:, :, IBL) & +#ifdef USE_STACK + & , YDSTACK=YLSTACK & +#endif + & ) + +#ifdef _OPENACC + ENDDO +#endif + + ENDDO + +#ifdef USE_OPENMP +!$OMP END PARALLEL +#endif + +!$acc end parallel loop + + TEC = OMP_GET_WTIME () + +!$acc end data + + TED = OMP_GET_WTIME () + + ZTC = ZTC + (TEC - TSC) + ZTD = ZTD + (TED - TSD) + +ENDDO + +IF (LHOOK) CALL DR_HOOK ('MAIN',1,ZHOOK_HANDLE) + +TE = OMP_GET_WTIME() + +WRITE (*,'(A,F8.2,A)') 'elapsed time : ',TE-TS,' s' +WRITE (*,'(A,F8.4,A)') ' i.e. ',1000.*(TE-TS)/(NPROMA*NGPBLKS)/NTIME,' ms/gp' + +PRINT *, " ZTD = ", ZTD, ZTD / REAL (NPROMA*NGPBLKS*NTIME) +PRINT *, " ZTC = ", ZTC, ZTC / REAL (NPROMA*NGPBLKS*NTIME) + + +IF (LLCHECK .OR. LLSTAT .OR. LLCHECKDIFF) THEN + DO IBL = IBLOCK1, IBLOCK2 + PRINT *, " IBL = ", IBL + CALL DIFF ("PSRCS", PSRCS_OUT (:,:,:,IBL), PSRCS (:,:,:,IBL)) + CALL DIFF ("PCLDFR", PCLDFR_OUT (:,:,:,IBL), PCLDFR (:,:,:,IBL)) + CALL DIFF ("PHLC_HRC", PHLC_HRC_OUT (:,:,:,IBL), PHLC_HRC (:,:,:,IBL)) + CALL DIFF ("PHLC_HCF", PHLC_HCF_OUT (:,:,:,IBL), PHLC_HCF (:,:,:,IBL)) + CALL DIFF ("PHLI_HRI", PHLI_HRI_OUT (:,:,:,IBL), PHLI_HRI (:,:,:,IBL)) + CALL DIFF ("PHLI_HCF", PHLI_HCF_OUT (:,:,:,IBL), PHLI_HCF (:,:,:,IBL)) + ENDDO +ENDIF + +IF (LLCHECKDIFF) THEN + IF (LLDIFF) THEN + PRINT*, "THERE ARE DIFF SOMEWHERE" + ELSE + PRINT*, "THERE IS NO DIFF AT ALL" + ENDIF +ENDIF + +STOP + +CONTAINS + +SUBROUTINE DIFF (CDNAME, PREF, POUT) + +CHARACTER (LEN=*) :: CDNAME +REAL :: PREF (:,:,:) +REAL :: POUT (:,:,:) + +INTEGER :: JLON, JLEV + +PRINT *, CDNAME +IF (LLSTAT) THEN + PRINT *, MINVAL (PREF), MAXVAL (PREF), SUM (PREF) / SIZE (PREF) + PRINT *, MINVAL (POUT), MAXVAL (POUT), SUM (POUT) / SIZE (POUT) +ENDIF + +IF (LLCHECK) THEN + IF (SUM (ABS (POUT) + ABS (PREF)) > 0) THEN + WRITE (*, '(A4)', ADVANCE='NO') "" + DO JLON = 1, NPROMA + WRITE (*, '("|",I12,A12)', ADVANCE='NO') JLON, "" + ENDDO + WRITE (*, '("|")') + DO JLEV = 1, KLEV + WRITE (*, '(I4)', ADVANCE='NO') JLEV + DO JLON = 1, NPROMA + IF (ABS (PREF (JLON, 1, JLEV)) + ABS (POUT (JLON, 1, JLEV)) == 0.) THEN + WRITE (*, '("|",2A12)', ADVANCE='NO') "", "" + ELSE + WRITE (*, '("|",2E12.5)', ADVANCE='NO') PREF (JLON, 1, JLEV), POUT (JLON, 1, JLEV) + ENDIF + ENDDO + WRITE (*, '("|")') + ENDDO + ENDIF +ENDIF + +IF (LLCHECKDIFF) THEN + IF (SUM(ABS(POUT-PREF)) > 0.) THEN + PRINT*, "THERE ARE DIFF" + LLDIFF = .TRUE. + ELSE + PRINT*, "THERE IS NO DIFF" + ENDIF +ENDIF + +END SUBROUTINE + + +END diff --git a/src/testprogs/rain_ice/getdata_rain_ice_mod.F90 b/src/testprogs/rain_ice/getdata_rain_ice_mod.F90 new file mode 100644 index 0000000000000000000000000000000000000000..57c28b427d7a1b776b1ffcf68894bbf84e8b9e23 --- /dev/null +++ b/src/testprogs/rain_ice/getdata_rain_ice_mod.F90 @@ -0,0 +1,801 @@ +MODULE GETDATA_RAIN_ICE_MOD + +USE OMP_LIB + +INTERFACE REPLICATE + MODULE PROCEDURE REPLICATE2 + MODULE PROCEDURE REPLICATE3 + MODULE PROCEDURE REPLICATE4 + MODULE PROCEDURE REPLICATEL +END INTERFACE + +INTERFACE NPROMIZE + MODULE PROCEDURE NPROMIZE3 + MODULE PROCEDURE NPROMIZE4 + MODULE PROCEDURE NPROMIZE5 + MODULE PROCEDURE NPROMIZEL +END INTERFACE + +INTERFACE INTERPOLATE + MODULE PROCEDURE INTERPOLATE4 + MODULE PROCEDURE INTERPOLATE5 + MODULE PROCEDURE INTERPOLATEL +END INTERFACE + +INTERFACE SET + MODULE PROCEDURE SET3 + MODULE PROCEDURE SET4 + MODULE PROCEDURE SET5 +END INTERFACE + +CONTAINS + +SUBROUTINE GETDATA_RAIN_ICE (NPROMA, NGPBLKS, NFLEVG, LLMICRO_B, PEXNREF_B, PDZZ_B, PRHODJ_B, PRHODREF_B, & + &PEXNREF2_B, PPABSM_B, PCIT_B, PCLDFR_B, PHLC_HRC_B, PHLC_HCF_B, PHLI_HRI_B, PHLI_HCF_B, PTHT_B, PRT_B, PTHS_B, & + &PRS_B, PSIGS_B, PSEA_B, PTOWN_B, PCIT_OUT_B, PRS_OUT_B, ZINPRC_B, ZINPRC_OUT_B, PINPRR_B, PINPRR_OUT_B, PEVAP_B, PEVAP_OUT_B, & + &PINPRS_B, PINPRS_OUT_B, PINPRG_B, PINPRG_OUT_B, ZINDEP_B, ZINDEP_OUT_B, ZRAINFR_B, ZRAINFR_OUT_B, PFPR_B, PFPR_OUT_B, LDVERBOSE) + +USE IEEE_ARITHMETIC, ONLY : IEEE_SIGNALING_NAN, IEEE_VALUE + +IMPLICIT NONE + +INTEGER, PARAMETER :: IFILE = 77 + +INTEGER :: KLON +INTEGER :: KIDIA +INTEGER :: KFDIA +INTEGER :: KLEV +INTEGER :: KRR +INTEGER :: KDUM + +LOGICAL :: LDVERBOSE + +LOGICAL, ALLOCATABLE:: LLMICRO_B (:,:,:,:) +REAL, ALLOCATABLE :: PEXNREF_B (:,:,:,:) +REAL, ALLOCATABLE :: PDZZ_B (:,:,:,:) +REAL, ALLOCATABLE :: PRHODJ_B (:,:,:,:) +REAL, ALLOCATABLE :: PRHODREF_B (:,:,:,:) +REAL, ALLOCATABLE :: PEXNREF2_B (:,:,:,:) +REAL, ALLOCATABLE :: PPABSM_B (:,:,:,:) +REAL, ALLOCATABLE :: PCIT_B (:,:,:,:) +REAL, ALLOCATABLE :: PCLDFR_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HRC_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HCF_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HRI_B (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HCF_B (:,:,:,:) +REAL, ALLOCATABLE :: PTHT_B (:,:,:,:) +REAL, ALLOCATABLE :: PRT_B (:,:,:,:,:) +REAL, ALLOCATABLE :: PTHS_B (:,:,:,:) +REAL, ALLOCATABLE :: PRS_B (:,:,:,:,:) +REAL, ALLOCATABLE :: PSIGS_B (:,:,:,:) +REAL, ALLOCATABLE :: PSEA_B (:,:,:) +REAL, ALLOCATABLE :: PTOWN_B (:,:,:) +REAL, ALLOCATABLE :: PCIT_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PRS_OUT_B (:,:,:,:,:) +REAL, ALLOCATABLE :: ZINPRC_B (:,:,:) +REAL, ALLOCATABLE :: ZINPRC_OUT_B (:,:,:) +REAL, ALLOCATABLE :: PINPRR_B (:,:,:) +REAL, ALLOCATABLE :: PINPRR_OUT_B (:,:,:) +REAL, ALLOCATABLE :: PEVAP_B (:,:,:,:) +REAL, ALLOCATABLE :: PEVAP_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PINPRS_B (:,:,:) +REAL, ALLOCATABLE :: PINPRS_OUT_B (:,:,:) +REAL, ALLOCATABLE :: PINPRG_B (:,:,:) +REAL, ALLOCATABLE :: PINPRG_OUT_B (:,:,:) +REAL, ALLOCATABLE :: ZINDEP_B (:,:,:) +REAL, ALLOCATABLE :: ZINDEP_OUT_B (:,:,:) +REAL, ALLOCATABLE :: ZRAINFR_B (:,:,:,:) +REAL, ALLOCATABLE :: ZRAINFR_OUT_B (:,:,:,:) +REAL, ALLOCATABLE :: PFPR_B (:,:,:,:,:) +REAL, ALLOCATABLE :: PFPR_OUT_B (:,:,:,:,:) + +LOGICAL, ALLOCATABLE :: LLMICRO (:,:,:,:) +REAL, ALLOCATABLE :: PEXNREF (:,:,:,:) +REAL, ALLOCATABLE :: PDZZ (:,:,:,:) +REAL, ALLOCATABLE :: PRHODJ (:,:,:,:) +REAL, ALLOCATABLE :: PRHODREF (:,:,:,:) +REAL, ALLOCATABLE :: PEXNREF2 (:,:,:,:) +REAL, ALLOCATABLE :: PPABSM (:,:,:,:) +REAL, ALLOCATABLE :: PCIT (:,:,:,:) +REAL, ALLOCATABLE :: PCLDFR (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HRC (:,:,:,:) +REAL, ALLOCATABLE :: PHLC_HCF (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HRI (:,:,:,:) +REAL, ALLOCATABLE :: PHLI_HCF (:,:,:,:) +REAL, ALLOCATABLE :: PTHT (:,:,:,:) +REAL, ALLOCATABLE :: PRT (:,:,:,:,:) +REAL, ALLOCATABLE :: PTHS (:,:,:,:) +REAL, ALLOCATABLE :: PRS (:,:,:,:,:) +REAL, ALLOCATABLE :: PSIGS (:,:,:,:) +REAL, ALLOCATABLE :: PSEA (:,:,:) +REAL, ALLOCATABLE :: PTOWN (:,:,:) +REAL, ALLOCATABLE :: PCIT_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PRS_OUT (:,:,:,:,:) +REAL, ALLOCATABLE :: ZINPRC_OUT (:,:,:) +REAL, ALLOCATABLE :: PINPRR_OUT (:,:,:) +REAL, ALLOCATABLE :: PEVAP_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PINPRS_OUT (:,:,:) +REAL, ALLOCATABLE :: PINPRG_OUT (:,:,:) +REAL, ALLOCATABLE :: ZINDEP_OUT (:,:,:) +REAL, ALLOCATABLE :: ZRAINFR_OUT (:,:,:,:) +REAL, ALLOCATABLE :: PFPR_OUT (:,:,:,:,:) + + +INTEGER :: IPROMA, ISIZE +INTEGER :: NGPTOT, NPROMA, NGPBLKS, NFLEVG +INTEGER :: IOFF, IBL +LOGICAL :: LLEXIST +CHARACTER(LEN=32) :: CLFILE +REAL :: ZNAN + +KRR=6 +NGPTOT = NPROMA * NGPBLKS + +IBL = 1 +WRITE (CLFILE, '("data/",I8.8,".dat")') IBL +OPEN (IFILE, FILE=TRIM (CLFILE), FORM='UNFORMATTED') +READ (IFILE) IPROMA, ISIZE +READ (IFILE) KLON, KDUM, KLEV, KRR +CLOSE (IFILE) + +IF (NFLEVG < 0) NFLEVG = KLEV + +ALLOCATE (LLMICRO_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PEXNREF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PDZZ_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRHODJ_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRHODREF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PEXNREF2_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PPABSM_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PCIT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PCLDFR_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLC_HRC_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLC_HCF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLI_HRI_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHLI_HCF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PTHT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRT_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) +ALLOCATE (PTHS_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRS_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) +ALLOCATE (PSIGS_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PSEA_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PTOWN_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PCIT_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PRS_OUT_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) +ALLOCATE (ZINPRC_B (NPROMA,1,NGPBLKS)) +ALLOCATE (ZINPRC_OUT_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PINPRR_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PINPRR_OUT_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PEVAP_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PEVAP_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PINPRS_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PINPRS_OUT_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PINPRG_B (NPROMA,1,NGPBLKS)) +ALLOCATE (PINPRG_OUT_B (NPROMA,1,NGPBLKS)) +ALLOCATE (ZINDEP_B (NPROMA,1,NGPBLKS)) +ALLOCATE (ZINDEP_OUT_B (NPROMA,1,NGPBLKS)) +ALLOCATE (ZRAINFR_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (ZRAINFR_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PFPR_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) +ALLOCATE (PFPR_OUT_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) + + +ZNAN = IEEE_VALUE (ZNAN, IEEE_SIGNALING_NAN) + + +!CALL SET (LLMICRO_B ) +CALL SET (PEXNREF_B ) +CALL SET (PDZZ_B ) +CALL SET (PRHODJ_B ) +CALL SET (PRHODREF_B ) +CALL SET (PEXNREF2_B ) +CALL SET (PPABSM_B ) +CALL SET (PCIT_B ) +CALL SET (PCLDFR_B ) +CALL SET (PHLC_HRC_B ) +CALL SET (PHLC_HCF_B ) +CALL SET (PHLI_HRI_B ) +CALL SET (PHLI_HCF_B ) +CALL SET (PTHT_B ) +CALL SET (PRT_B ) +CALL SET (PTHS_B ) +CALL SET (PRS_B ) +CALL SET (PSIGS_B ) +CALL SET (PSEA_B ) +CALL SET (PTOWN_B ) +CALL SET (PCIT_OUT_B ) +CALL SET (PRS_OUT_B ) +CALL SET (ZINPRC_OUT_B ) +CALL SET (PINPRR_OUT_B ) +CALL SET (PEVAP_OUT_B ) +CALL SET (PINPRS_OUT_B ) +CALL SET (PINPRG_OUT_B ) +CALL SET (ZINDEP_OUT_B ) +CALL SET (ZRAINFR_OUT_B ) +CALL SET (PFPR_OUT_B ) + +ZINPRC_OUT_B = ZNAN +PINPRR_OUT_B = ZNAN +PEVAP_OUT_B = ZNAN +PINPRS_OUT_B = ZNAN +PINPRG_OUT_B = ZNAN +ZINDEP_OUT_B = ZNAN +ZRAINFR_OUT_B = ZNAN +PFPR_OUT_B = ZNAN + +IOFF = 0 +IBL = 0 +LLEXIST = .TRUE. + +DO WHILE(LLEXIST) + IBL = IBL + 1 + WRITE (CLFILE, '("data/",I8.8,".dat")') IBL + + INQUIRE (FILE=TRIM (CLFILE), EXIST=LLEXIST) + + IF (LDVERBOSE) PRINT *, TRIM (CLFILE) + + IF (.NOT. LLEXIST) EXIT + + OPEN (IFILE, FILE=TRIM (CLFILE), FORM='UNFORMATTED') + + READ (IFILE) IPROMA, ISIZE + READ (IFILE) KLON, KDUM, KLEV, KRR + + IF (IBL == 1) THEN + ALLOCATE (LLMICRO (NGPTOT,1,KLEV,1)) + ALLOCATE (PEXNREF (NGPTOT,1,KLEV,1)) + ALLOCATE (PDZZ (NGPTOT,1,KLEV,1)) + ALLOCATE (PRHODJ (NGPTOT,1,KLEV,1)) + ALLOCATE (PRHODREF (NGPTOT,1,KLEV,1)) + ALLOCATE (PEXNREF2 (NGPTOT,1,KLEV,1)) + ALLOCATE (PPABSM (NGPTOT,1,KLEV,1)) + ALLOCATE (PCIT (NGPTOT,1,KLEV,1)) + ALLOCATE (PCLDFR (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLC_HRC (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLC_HCF (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLI_HRI (NGPTOT,1,KLEV,1)) + ALLOCATE (PHLI_HCF (NGPTOT,1,KLEV,1)) + ALLOCATE (PTHT (NGPTOT,1,KLEV,1)) + ALLOCATE (PRT (NGPTOT,1,KLEV,KRR,1)) + ALLOCATE (PTHS (NGPTOT,1,KLEV,1)) + ALLOCATE (PRS (NGPTOT,1,KLEV,KRR,1)) + ALLOCATE (PSIGS (NGPTOT,1,KLEV,1)) + ALLOCATE (PSEA (NGPTOT,1,1)) + ALLOCATE (PTOWN (NGPTOT,1,1)) + ALLOCATE (PCIT_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (PRS_OUT (NGPTOT,1,KLEV,KRR,1)) + ALLOCATE (ZINPRC_OUT (NGPTOT,1,1)) + ALLOCATE (PINPRR_OUT (NGPTOT,1,1)) + ALLOCATE (PEVAP_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (PINPRS_OUT (NGPTOT,1,1)) + ALLOCATE (PINPRG_OUT (NGPTOT,1,1)) + ALLOCATE (ZINDEP_OUT (NGPTOT,1,1)) + ALLOCATE (ZRAINFR_OUT (NGPTOT,1,KLEV,1)) + ALLOCATE (PFPR_OUT (NGPTOT,1,KLEV,KRR,1)) + ENDIF + + IF (IOFF+KLON > NGPTOT) THEN + EXIT + ENDIF + + READ (IFILE) LLMICRO (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PEXNREF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PDZZ (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRHODJ (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRHODREF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PEXNREF2 (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PPABSM (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PCIT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PCLDFR (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLC_HRC (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLC_HCF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLI_HRI (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PHLI_HCF (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PTHT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRT (IOFF+1:IOFF+KLON,:,:,:,1) + READ (IFILE) PTHS (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRS (IOFF+1:IOFF+KLON,:,:,:,1) + READ (IFILE) PSIGS (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PSEA (IOFF+1:IOFF+KLON,:,1) + READ (IFILE) PTOWN (IOFF+1:IOFF+KLON,:,1) + READ (IFILE) PCIT_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PRS_OUT (IOFF+1:IOFF+KLON,:,:,:,1) + READ (IFILE) ZINPRC_OUT (IOFF+1:IOFF+KLON,:,1) + READ (IFILE) PINPRR_OUT (IOFF+1:IOFF+KLON,:,1) + READ (IFILE) PEVAP_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PINPRS_OUT (IOFF+1:IOFF+KLON,:,1) + READ (IFILE) PINPRG_OUT (IOFF+1:IOFF+KLON,:,1) + READ (IFILE) ZINDEP_OUT (IOFF+1:IOFF+KLON,:,1) + READ (IFILE) ZRAINFR_OUT (IOFF+1:IOFF+KLON,:,:,1) + READ (IFILE) PFPR_OUT (IOFF+1:IOFF+KLON,:,:,:,1) + + CLOSE (IFILE) + + IOFF = IOFF + KLON + +ENDDO + +IF (NFLEVG /= KLEV) THEN + CALL INTERPOLATE (NFLEVG, IOFF, LLMICRO ) + CALL INTERPOLATE (NFLEVG, IOFF, PEXNREF ) + CALL INTERPOLATE (NFLEVG, IOFF, PDZZ ) + CALL INTERPOLATE (NFLEVG, IOFF, PRHODJ ) + CALL INTERPOLATE (NFLEVG, IOFF, PRHODREF ) + CALL INTERPOLATE (NFLEVG, IOFF, PEXNREF2 ) + CALL INTERPOLATE (NFLEVG, IOFF, PPABSM ) + CALL INTERPOLATE (NFLEVG, IOFF, PCIT ) + CALL INTERPOLATE (NFLEVG, IOFF, PCLDFR ) + CALL INTERPOLATE (NFLEVG, IOFF, PHLC_HRC ) + CALL INTERPOLATE (NFLEVG, IOFF, PHLC_HCF ) + CALL INTERPOLATE (NFLEVG, IOFF, PHLI_HRI ) + CALL INTERPOLATE (NFLEVG, IOFF, PHLI_HCF ) + CALL INTERPOLATE (NFLEVG, IOFF, PTHT ) + CALL INTERPOLATE (NFLEVG, IOFF, PRT ) + CALL INTERPOLATE (NFLEVG, IOFF, PTHS ) + CALL INTERPOLATE (NFLEVG, IOFF, PRS ) + CALL INTERPOLATE (NFLEVG, IOFF, PSIGS ) +! CALL INTERPOLATE (NFLEVG, IOFF, PSEA ) +! CALL INTERPOLATE (NFLEVG, IOFF, PTOWN ) + CALL INTERPOLATE (NFLEVG, IOFF, PCIT_OUT ) + CALL INTERPOLATE (NFLEVG, IOFF, PRS_OUT ) +! CALL INTERPOLATE (NFLEVG, IOFF, ZINPRC_OUT ) +! CALL INTERPOLATE (NFLEVG, IOFF, PINPRR_OUT ) + CALL INTERPOLATE (NFLEVG, IOFF, PEVAP_OUT ) +! CALL INTERPOLATE (NFLEVG, IOFF, PINPRS_OUT ) +! CALL INTERPOLATE (NFLEVG, IOFF, PINPRG_OUT ) +! CALL INTERPOLATE (NFLEVG, IOFF, ZINDEP_OUT ) + CALL INTERPOLATE (NFLEVG, IOFF, ZRAINFR_OUT ) + CALL INTERPOLATE (NFLEVG, IOFF, PFPR_OUT ) + +ENDIF + +CALL REPLICATE (IOFF, LLMICRO (:, :, :, 1)) +CALL REPLICATE (IOFF, PEXNREF (:, :, :, 1)) +CALL REPLICATE (IOFF, PDZZ (:, :, :, 1)) +CALL REPLICATE (IOFF, PRHODJ (:, :, :, 1)) +CALL REPLICATE (IOFF, PRHODREF (:, :, :, 1)) +CALL REPLICATE (IOFF, PEXNREF2 (:, :, :, 1)) +CALL REPLICATE (IOFF, PPABSM (:, :, :, 1)) +CALL REPLICATE (IOFF, PCIT (:, :, :, 1)) +CALL REPLICATE (IOFF, PCLDFR (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLC_HRC (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLC_HCF (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLI_HRI (:, :, :, 1)) +CALL REPLICATE (IOFF, PHLI_HCF (:, :, :, 1)) +CALL REPLICATE (IOFF, PTHT (:, :, :, 1)) +CALL REPLICATE (IOFF, PRT (:, :, :, :, 1)) +CALL REPLICATE (IOFF, PTHS (:, :, :, 1)) +CALL REPLICATE (IOFF, PRS (:, :, :, :, 1)) +CALL REPLICATE (IOFF, PSIGS (:, :, :, 1)) +CALL REPLICATE (IOFF, PSEA (:, :, 1)) +CALL REPLICATE (IOFF, PTOWN (:, :, 1)) +CALL REPLICATE (IOFF, PCIT_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PRS_OUT (:, :, :, :, 1)) +CALL REPLICATE (IOFF, ZINPRC_OUT (:, :, 1)) +CALL REPLICATE (IOFF, PINPRR_OUT (:, :, 1)) +CALL REPLICATE (IOFF, PEVAP_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PINPRS_OUT (:, :, 1)) +CALL REPLICATE (IOFF, PINPRG_OUT (:, :, 1)) +CALL REPLICATE (IOFF, ZINDEP_OUT (:, :, 1)) +CALL REPLICATE (IOFF, ZRAINFR_OUT (:, :, :, 1)) +CALL REPLICATE (IOFF, PFPR_OUT (:, :, :, :, 1)) + + +CALL NPROMIZE (NPROMA, LLMICRO , LLMICRO_B ) +CALL NPROMIZE (NPROMA, PEXNREF , PEXNREF_B ) +CALL NPROMIZE (NPROMA, PDZZ , PDZZ_B ) +CALL NPROMIZE (NPROMA, PRHODJ , PRHODJ_B ) +CALL NPROMIZE (NPROMA, PRHODREF , PRHODREF_B ) +CALL NPROMIZE (NPROMA, PEXNREF2 , PEXNREF2_B ) +CALL NPROMIZE (NPROMA, PPABSM , PPABSM_B ) +CALL NPROMIZE (NPROMA, PCIT , PCIT_B ) +CALL NPROMIZE (NPROMA, PCLDFR , PCLDFR_B ) +CALL NPROMIZE (NPROMA, PHLC_HRC , PHLC_HRC_B ) +CALL NPROMIZE (NPROMA, PHLC_HCF , PHLC_HCF_B ) +CALL NPROMIZE (NPROMA, PHLI_HRI , PHLI_HRI_B ) +CALL NPROMIZE (NPROMA, PHLI_HCF , PHLI_HCF_B ) +CALL NPROMIZE (NPROMA, PTHT , PTHT_B ) +CALL NPROMIZE (NPROMA, PRT , PRT_B ) +CALL NPROMIZE (NPROMA, PTHS , PTHS_B ) +CALL NPROMIZE (NPROMA, PRS , PRS_B ) +CALL NPROMIZE (NPROMA, PSIGS , PSIGS_B ) +CALL NPROMIZE (NPROMA, PSEA , PSEA_B ) +CALL NPROMIZE (NPROMA, PTOWN , PTOWN_B ) +CALL NPROMIZE (NPROMA, PCIT_OUT , PCIT_OUT_B ) +CALL NPROMIZE (NPROMA, PRS_OUT , PRS_OUT_B ) +CALL NPROMIZE (NPROMA, ZINPRC_OUT , ZINPRC_OUT_B ) +CALL NPROMIZE (NPROMA, PINPRR_OUT , PINPRR_OUT_B ) +CALL NPROMIZE (NPROMA, PEVAP_OUT , PEVAP_OUT_B ) +CALL NPROMIZE (NPROMA, PINPRS_OUT , PINPRS_OUT_B ) +CALL NPROMIZE (NPROMA, PINPRG_OUT , PINPRG_OUT_B ) +CALL NPROMIZE (NPROMA, ZINDEP_OUT , ZINDEP_OUT_B ) +CALL NPROMIZE (NPROMA, ZRAINFR_OUT , ZRAINFR_OUT_B ) +CALL NPROMIZE (NPROMA, PFPR_OUT , PFPR_OUT_B ) + + +END SUBROUTINE + +SUBROUTINE REPLICATE4 (KOFF, P) + +INTEGER :: KOFF +REAL :: P (:,:,:,:) + +INTEGER :: I, J + +DO I = KOFF+1, SIZE (P, 1) + J = 1 + MODULO (I - 1, KOFF) + P (I, :, :, :) = P (J, :, :, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE REPLICATE3 (KOFF, P) + +INTEGER :: KOFF +REAL :: P (:,:,:) + +INTEGER :: I, J + +DO I = KOFF+1, SIZE (P, 1) + J = 1 + MODULO (I - 1, KOFF) + P (I, :, :) = P (J, :, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE REPLICATE2 (KOFF, P) + +INTEGER :: KOFF +REAL :: P (:,:) + +INTEGER :: I, J + +DO I = KOFF+1, SIZE (P, 1) + J = 1 + MODULO (I - 1, KOFF) + P (I, :) = P (J, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE REPLICATEL (KOFF, L) + +INTEGER :: KOFF +LOGICAL :: L (:,:,:) + +INTEGER :: I, J + +DO I = KOFF+1, SIZE (L, 1) + J = 1 + MODULO (I - 1, KOFF) + L (I, :, :) = L (J, :, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE NPROMIZE3 (KPROMA, PI, PO) + +INTEGER :: KPROMA +REAL, INTENT (IN) :: PI (:,:,:) +REAL, INTENT (OUT) :: PO (:,:,:) + +INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA + +IF (SIZE (PI, 3) /= 1) STOP 1 + +IGPTOT = SIZE (PI, 1) +IGPBLK = 1 + (IGPTOT-1) / KPROMA + +DO IGP = 1, IGPTOT, KPROMA + IBL = 1 + (IGP - 1) / KPROMA + JIDIA = 1 + JFDIA = MIN (KPROMA, IGPTOT - (IBL - 1) * KPROMA) + + DO JLON = JIDIA, JFDIA + PO (JLON, :, IBL) = PI (IGP + (JLON - 1), :, 1) + ENDDO + + DO JLON = JFDIA+1, KPROMA + PO (JLON, :, IBL) = PO (JFDIA, :, IBL) + ENDDO + +ENDDO + +END SUBROUTINE + +SUBROUTINE NPROMIZE4 (KPROMA, PI, PO) + +INTEGER :: KPROMA +REAL, INTENT (IN) :: PI (:,:,:,:) +REAL, INTENT (OUT) :: PO (:,:,:,:) + +INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA + +IF (SIZE (PI, 4) /= 1) STOP 1 + +IGPTOT = SIZE (PI, 1) +IGPBLK = 1 + (IGPTOT-1) / KPROMA + +DO IGP = 1, IGPTOT, KPROMA + IBL = 1 + (IGP - 1) / KPROMA + JIDIA = 1 + JFDIA = MIN (KPROMA, IGPTOT - (IBL - 1) * KPROMA) + + DO JLON = JIDIA, JFDIA + PO (JLON, :, :, IBL) = PI (IGP + (JLON - 1), :, :, 1) + ENDDO + + DO JLON = JFDIA+1, KPROMA + PO (JLON, :, :, IBL) = PO (JFDIA, :, :, IBL) + ENDDO + +ENDDO + +END SUBROUTINE + +SUBROUTINE NPROMIZE5 (KPROMA, PI, PO) + +INTEGER :: KPROMA +REAL, INTENT (IN) :: PI (:,:,:,:,:) +REAL, INTENT (OUT) :: PO (:,:,:,:,:) + +INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA + +IF (SIZE (PI, 5) /= 1) STOP 1 + +IGPTOT = SIZE (PI, 1) +IGPBLK = 1 + (IGPTOT-1) / KPROMA + +DO IGP = 1, IGPTOT, KPROMA + IBL = 1 + (IGP - 1) / KPROMA + JIDIA = 1 + JFDIA = MIN (KPROMA, IGPTOT - (IBL - 1) * KPROMA) + + DO JLON = JIDIA, JFDIA + PO (JLON, :, :, :, IBL) = PI (IGP + (JLON - 1), :, :, :, 1) + ENDDO + + DO JLON = JFDIA+1, KPROMA + PO (JLON, :, :, :, IBL) = PI (JFDIA, :, :, :, IBL) + ENDDO + +ENDDO + +END SUBROUTINE + +SUBROUTINE NPROMIZEL (KPROMA, LI, LO) + +INTEGER :: KPROMA +LOGICAL, INTENT (IN) :: LI (:,:,:,:) +LOGICAL, INTENT (OUT) :: LO (:,:,:,:) + +INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA + +IF (SIZE (LI, 4) /= 1) STOP 1 + +IGPTOT = SIZE (LI, 1) +IGPBLK = 1 + (IGPTOT-1) / KPROMA + +DO IGP = 1, IGPTOT, KPROMA + IBL = 1 + (IGP - 1) / KPROMA + JIDIA = 1 + JFDIA = MIN (KPROMA, IGPTOT - (IBL - 1) * KPROMA) + + DO JLON = JIDIA, JFDIA + LO (JLON, :, :, IBL) = LI (IGP + (JLON - 1), :, :, 1) + ENDDO + + DO JLON = JFDIA+1, KPROMA + LO (JLON, :, :, IBL) = LI (JFDIA, :, :, IBL) + ENDDO + +ENDDO + +END SUBROUTINE + +SUBROUTINE INTERPOLATE4 (KFLEVG, KOFF, P) + +INTEGER :: KFLEVG, KOFF +REAL, ALLOCATABLE :: P (:,:,:,:) +REAL :: Z (LBOUND (P, 1):UBOUND (P, 1), & + & LBOUND (P, 2):UBOUND (P, 2), & + & LBOUND (P, 3):UBOUND (P, 3), & + & LBOUND (P, 4):UBOUND (P, 4)) +INTEGER :: ILEV1A, ILEV1B, ILEV2, NLEV1, NLEV2 +REAL :: ZWA, ZWB, ZLEV1, ZLEV2 + +Z = P + +NLEV1 = SIZE (P, 3) +NLEV2 = KFLEVG + +DEALLOCATE (P) + +ALLOCATE (P (LBOUND (Z, 1):UBOUND (Z, 1), & + & LBOUND (Z, 2):UBOUND (Z, 2), & + & KFLEVG, & + & LBOUND (Z, 4):UBOUND (Z, 4))) + +DO ILEV2 = 1, NLEV2 + ZLEV2 = REAL (ILEV2 - 1) / REAL (NLEV2 -1) + ZLEV1 = 1. + ZLEV2 * REAL (NLEV1 - 1) + ILEV1B = MIN (CEILING (ZLEV1), NLEV1) + ILEV1A = MAX (FLOOR (ZLEV1), 1) + + IF (ILEV1A == ILEV1B) THEN + ZWA = 1. + ZWB = 0. + ELSE + ZWA = REAL (ILEV1B) - ZLEV1 + ZWB = ZLEV1 - REAL (ILEV1A) + ENDIF + +! WRITE (*, '(" ZLEV2 = ",E12.5," ZLEV1 = ",E12.5," ILEV2 = ",I4," ILEV1A = ",I4," ZWA = ",E12.5," ILEV1B = ",I4," ZWB = ",E12.5)') & +! & ZLEV2, ZLEV1, ILEV2, ILEV1A, ZWA, ILEV1B, ZWB + + P (1:KOFF, :, ILEV2, :) = ZWA * Z (1:KOFF, :, ILEV1A, :) + ZWB * Z (1:KOFF, :, ILEV1B, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE INTERPOLATE5 (KFLEVG, KOFF, P) + +INTEGER :: KFLEVG, KOFF +REAL, ALLOCATABLE :: P (:,:,:,:,:) +REAL :: Z (LBOUND (P, 1):UBOUND (P, 1), & + & LBOUND (P, 2):UBOUND (P, 2), & + & LBOUND (P, 3):UBOUND (P, 3), & + & LBOUND (P, 4):UBOUND (P, 4), & + & LBOUND (P, 5):UBOUND (P, 5)) +INTEGER :: ILEV1A, ILEV1B, ILEV2, NLEV1, NLEV2 +REAL :: ZWA, ZWB, ZLEV1, ZLEV2 + +Z = P + +NLEV1 = SIZE (P, 3) +NLEV2 = KFLEVG + +DEALLOCATE (P) + +ALLOCATE (P (LBOUND (Z, 1):UBOUND (Z, 1), & + & LBOUND (Z, 2):UBOUND (Z, 2), & + & KFLEVG, & + & LBOUND (Z, 4):UBOUND (Z, 4), & + & LBOUND (Z, 5):UBOUND (Z, 5))) + +DO ILEV2 = 1, NLEV2 + ZLEV2 = REAL (ILEV2 - 1) / REAL (NLEV2 -1) + ZLEV1 = 1. + ZLEV2 * REAL (NLEV1 - 1) + ILEV1B = MIN (CEILING (ZLEV1), NLEV1) + ILEV1A = MAX (FLOOR (ZLEV1), 1) + + IF (ILEV1A == ILEV1B) THEN + ZWA = 1. + ZWB = 0. + ELSE + ZWA = REAL (ILEV1B) - ZLEV1 + ZWB = ZLEV1 - REAL (ILEV1A) + ENDIF + +! WRITE (*, '(" ZLEV2 = ",E12.5," ZLEV1 = ",E12.5," ILEV2 = ",I4," ILEV1A = ",I4," ZWA = ",E12.5," ILEV1B = ",I4," ZWB = ",E12.5)') & +! & ZLEV2, ZLEV1, ILEV2, ILEV1A, ZWA, ILEV1B, ZWB + + P (1:KOFF, :, ILEV2, :, :) = ZWA * Z (1:KOFF, :, ILEV1A, :, :) + ZWB * Z (1:KOFF, :, ILEV1B, :, :) +ENDDO + +END SUBROUTINE + +SUBROUTINE INTERPOLATEL (KFLEVG, KOFF, L) + +INTEGER :: KFLEVG, KOFF +LOGICAL, ALLOCATABLE :: L (:,:,:,:) +LOGICAL :: Z (LBOUND (L, 1):UBOUND (L, 1), & + & LBOUND (L, 2):UBOUND (L, 2), & + & LBOUND (L, 3):UBOUND (L, 3), & + & LBOUND (L, 4):UBOUND (L, 4)) +INTEGER :: ILEV1A, ILEV1B, ILEV2, NLEV1, NLEV2 +REAL :: ZWA, ZWB, ZLEV1, ZLEV2 + +Z = L + +NLEV1 = SIZE (L, 3) +NLEV2 = KFLEVG + +DEALLOCATE (L) + +ALLOCATE (L (LBOUND (Z, 1):UBOUND (Z, 1), & + & LBOUND (Z, 2):UBOUND (Z, 2), & + & KFLEVG, & + & LBOUND (Z, 4):UBOUND (Z, 4))) + +DO ILEV2 = 1, NLEV2 + ZLEV2 = REAL (ILEV2 - 1) / REAL (NLEV2 -1) + ZLEV1 = 1. + ZLEV2 * REAL (NLEV1 - 1) + ILEV1B = MIN (CEILING (ZLEV1), NLEV1) + ILEV1A = MAX (FLOOR (ZLEV1), 1) + + IF (ILEV1A == ILEV1B) THEN + ZWA = 1. + ZWB = 0. + ELSE + ZWA = REAL (ILEV1B) - ZLEV1 + ZWB = ZLEV1 - REAL (ILEV1A) + ENDIF + +! WRITE (*, '(" ZLEV2 = ",E12.5," ZLEV1 = ",E12.5," ILEV2 = ",I4," ILEV1A = ",I4," ZWA = ",E12.5," ILEV1B = ",I4," ZWB = ",E12.5)') & +! & ZLEV2, ZLEV1, ILEV2, ILEV1A, ZWA, ILEV1B, ZWB + + L (1:KOFF, :, ILEV2, :) = ZWA * MERGE(1., 0., Z (1:KOFF, :, ILEV1A, :)) + ZWB * MERGE(1., 0., Z (1:KOFF, :, ILEV1B, :)) >= 0.5 +ENDDO + +END SUBROUTINE + + +SUBROUTINE SET3 (P) + +REAL :: P (:,:,:) +INTEGER :: IBL, IGPBLKS +INTEGER :: NTID, ITID, JBLK1, JBLK2 + + +IGPBLKS = SIZE (P, 3) + +!$OMP PARALLEL PRIVATE (ITID, JBLK1, JBLK2, NTID) +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (IGPBLKS * (ITID+0)) / NTID +JBLK2 = (IGPBLKS * (ITID+1)) / NTID + +DO IBL = JBLK1, JBLK2 + P (:,:,IBL) = ZNAN +ENDDO + +!$OMP END PARALLEL + +END SUBROUTINE + +SUBROUTINE SET4 (P) + +REAL :: P (:,:,:,:) +INTEGER :: IBL, IGPBLKS +INTEGER :: NTID, ITID, JBLK1, JBLK2 + +IGPBLKS = SIZE (P, 4) + +!$OMP PARALLEL PRIVATE (ITID, JBLK1, JBLK2, NTID) +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (IGPBLKS * (ITID+0)) / NTID +JBLK2 = (IGPBLKS * (ITID+1)) / NTID + +DO IBL = JBLK1, JBLK2 + P (:,:,:,IBL) = ZNAN +ENDDO + +!$OMP END PARALLEL + +END SUBROUTINE + +SUBROUTINE SET5 (P) + +REAL :: P (:,:,:,:,:) +INTEGER :: IBL, IGPBLKS +INTEGER :: NTID, ITID, JBLK1, JBLK2 + +IGPBLKS = SIZE (P, 5) + +!$OMP PARALLEL PRIVATE (ITID, JBLK1, JBLK2, NTID) +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (IGPBLKS * (ITID+0)) / NTID +JBLK2 = (IGPBLKS * (ITID+1)) / NTID + +DO IBL = JBLK1, JBLK2 + P (:,:,:,:,IBL) = ZNAN +ENDDO + +!$OMP END PARALLEL + +END SUBROUTINE + + +END MODULE diff --git a/src/testprogs/rain_ice/main_rain_ice.F90 b/src/testprogs/rain_ice/main_rain_ice.F90 new file mode 100644 index 0000000000000000000000000000000000000000..6b167802ea347a377df6cf0bb000c57ddbc6a2d0 --- /dev/null +++ b/src/testprogs/rain_ice/main_rain_ice.F90 @@ -0,0 +1,507 @@ +PROGRAM MAIN_RAIN_ICE + +USE XRD_GETOPTIONS +USE GETDATA_RAIN_ICE_MOD +USE MODD_CONF +USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +USE MODD_CST, ONLY: CST_t, CST +USE MODD_RAIN_ICE_DESCR, ONLY : RAIN_ICE_DESCR +USE MODD_RAIN_ICE_PARAM, ONLY : RAIN_ICE_PARAM +USE MODD_PARAM_ICE, ONLY: PARAM_ICE +USE MODI_RAIN_ICE +USE MODI_INI_CST +USE MODD_BUDGET, ONLY: TBUDGETDATA, NBUDGET_RH, TBUCONF +USE STACK_MOD +USE OMP_LIB +USE YOMHOOK, ONLY : LHOOK, DR_HOOK +USE PARKIND1, ONLY : JPRB, JPIM + + +IMPLICIT NONE + +INTEGER :: KLON +INTEGER :: KLEV +INTEGER :: KRR + +REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: PRS, PRS_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: PFPR, PFPR_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:,:,:) :: PRT +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PDZZ +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PRHODJ +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PRHODREF +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PEXNREF +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PEXNREF2 +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PPABSM +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PHLC_HRC +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PHLC_HCF +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PHLI_HRI +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PHLI_HCF +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PTHT +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PSIGS +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PCLDFR +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PTHS +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PEVAP, PEVAP_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PCIT, PCIT_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:) :: PSEA +REAL, ALLOCATABLE, DIMENSION(:,:,:) :: PTOWN +REAL, ALLOCATABLE, DIMENSION(:,:,:) :: PINPRR, PINPRR_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:) :: PINPRS, PINPRS_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:) :: PINPRG, PINPRG_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:) :: ZINDEP, ZINDEP_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: ZRAINFR, ZRAINFR_OUT +REAL, ALLOCATABLE, DIMENSION(:,:,:) :: ZINPRC, ZINPRC_OUT +LOGICAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: LLMICRO + +INTEGER :: NPROMA, NGPBLKS, NFLEVG +INTEGER :: IBL, JLON, JLEV + +TYPE(DIMPHYEX_t) :: D, D0 +CHARACTER (LEN=4) :: CSUBG_AUCV_RC +CHARACTER (LEN=80) :: CSUBG_AUCV_RI +LOGICAL :: OSEDIC +CHARACTER (LEN=4) :: CSEDIM +CHARACTER (LEN=4) :: CMICRO +REAL :: PTSTEP +LOGICAL :: OWARM +LOGICAL :: OCND2 +LOGICAL :: LCRIAUTI +REAL :: ZCRIAUTI, ZT0CRIAUTI, ZCRIAUTC +TYPE(TBUDGETDATA), DIMENSION(NBUDGET_RH) :: YLBUDGET +LOGICAL :: LLCHECK +LOGICAL :: LLCHECKDIFF +LOGICAL :: LLDIFF +INTEGER :: IBLOCK1, IBLOCK2 +INTEGER :: ISTSZ, JBLK1, JBLK2 +INTEGER :: NTID, ITID +INTEGER :: JRR + + +INTEGER :: IPROMA +REAL, ALLOCATABLE :: PSTACK(:,:) +TYPE (STACK) :: YLSTACK + +REAL(KIND=8) :: TS,TE +REAL(KIND=8) :: TSC, TEC, TSD, TED, ZTC, ZTD +INTEGER :: ITIME, NTIME +INTEGER :: IRANK, ISIZE +LOGICAL :: LLVERBOSE, LLSTAT, LLBIND +REAL (KIND=JPRB) :: ZHOOK_HANDLE +CHARACTER(LEN=32) :: CLTEXT + +CALL INITOPTIONS () +NGPBLKS = 150 +CALL GETOPTION ("--blocks", NGPBLKS) +NPROMA = 32 +CALL GETOPTION ("--nproma", NPROMA) +NFLEVG = -1 +CALL GETOPTION ("--nflevg", NFLEVG) +CALL GETOPTION ("--check", LLCHECK) +CALL GETOPTION ("--checkdiff", LLCHECKDIFF) +IBLOCK1 = 1 +CALL GETOPTION ("--check-block-1", IBLOCK1) +IBLOCK2 = NGPBLKS +CALL GETOPTION ("--check-block-2", IBLOCK2) +CALL GETOPTION ("--stat", LLSTAT) +NTIME = 1 +CALL GETOPTION ("--times", NTIME) +CALL GETOPTION ("--verbose", LLVERBOSE) +CALL GETOPTION ("--bind", LLBIND) +CALL CHECKOPTIONS () + +LLDIFF = .FALSE. + +IRANK = 0 +ISIZE = 1 +IF (LLBIND) THEN + CALL LINUX_BIND (IRANK, ISIZE) + CALL LINUX_BIND_DUMP (IRANK, ISIZE) +ENDIF + +CALL GETDATA_RAIN_ICE (NPROMA, NGPBLKS, NFLEVG, LLMICRO, PEXNREF, PDZZ, PRHODJ, PRHODREF, & +&PEXNREF2, PPABSM, PCIT, PCLDFR, PHLC_HRC, PHLC_HCF, PHLI_HRI, PHLI_HCF, PTHT, PRT, PTHS, & +&PRS, PSIGS, PSEA, PTOWN, PCIT_OUT, PRS_OUT, ZINPRC, ZINPRC_OUT, PINPRR, PINPRR_OUT, PEVAP, PEVAP_OUT, & +&PINPRS, PINPRS_OUT, PINPRG, PINPRG_OUT, ZINDEP, ZINDEP_OUT, ZRAINFR, ZRAINFR_OUT, PFPR, PFPR_OUT, LLVERBOSE) + +KLEV = SIZE (PRS, 3) +KRR = SIZE (PRS, 4) + +IF (LLVERBOSE) PRINT *, " KLEV = ", KLEV, " KRR = ", KRR + +PRINT *, " NPROMA = ", NPROMA, " KLEV = ", KLEV, " NGPBLKS = ", NGPBLKS + +CMICRO='ICE3' + +PTSTEP = 25.0000000000000 +KRR = 6 +OSEDIC = .TRUE. +OCND2 = .FALSE. +CSEDIM = 'STAT' +CSUBG_AUCV_RC = 'PDF' +CSUBG_AUCV_RI = 'NONE' +OWARM = .TRUE. + +LCRIAUTI=.TRUE. +ZCRIAUTI=0.2E-3 +ZT0CRIAUTI=-5. +ZCRIAUTC=0.1E-2 + +CALL INIT_PHYEX (20, OWARM, CMICRO, CSEDIM, & + & LCRIAUTI, ZCRIAUTI, ZT0CRIAUTI, ZCRIAUTC) +DO JRR=1, NBUDGET_RH + YLBUDGET(JRR)%NBUDGET=JRR +ENDDO + +D0%NIT = NPROMA +D0%NIB = 1 +D0%NIE = NPROMA +D0%NJT = 1 +D0%NJB = 1 +D0%NJE = 1 +D0%NKL = -1 +D0%NKT = KLEV +D0%NKA = KLEV +D0%NKU = 1 +D0%NKB = KLEV +D0%NKE = 1 +D0%NKTB = 1 +D0%NKTE = KLEV + +ISTSZ = NPROMA * 20 * KLEV +ALLOCATE (PSTACK (ISTSZ, NGPBLKS)) + +TS = OMP_GET_WTIME () + +ZTD = 0. +ZTC = 0. + +IF (LHOOK) CALL DR_HOOK ('MAIN',0,ZHOOK_HANDLE) + +DO ITIME = 1, NTIME + + TSD = OMP_GET_WTIME () + +!directives pas a jour !$acc data & +!directives pas a jour !$acc & copyin (D0, CST, ICEP, NEB, KRR, HFRAC_ICE, HCONDENS, HLAMBDA3, HBUNAME, OSUBG_COND, OSIGMAS, OCND2, HSUBG_MF_PDF, PTSTEP, LMFCONV, & +!directives pas a jour !$acc & ZSIGQSAT, PRHODJ, PEXNREF, PRHODREF, PSIGS, PMFCONV, PPABSM, ZZZ, PCF_MF, PRC_MF, PRI_MF, ZRS, ZICE_CLD_WGT) & +!directives pas a jour !$acc & copy (PRS, PTHS), & +!directives pas a jour !$acc & copyout (PSRCS, PCLDFR, PHLC_HRC, PHLC_HCF, PHLI_HRI, PHLI_HCF) & +!directives pas a jour !$acc & create (PSTACK) + + TSC = OMP_GET_WTIME () + +#ifdef USE_OPENMP +!$OMP PARALLEL PRIVATE (D, ITID, JBLK1, JBLK2, IPROMA, ISIZE) +#endif + +#ifdef _OPENACC +JBLK1 = 1 +JBLK2 = NGPBLKS +#endif + +#ifdef USE_OPENMP +NTID = OMP_GET_MAX_THREADS () +ITID = OMP_GET_THREAD_NUM () +JBLK1 = 1 + (NGPBLKS * (ITID+0)) / NTID +JBLK2 = (NGPBLKS * (ITID+1)) / NTID + + +!PRINT *, ITID, JBLK1, JBLK2 + +#endif + +!$acc parallel loop gang vector private (YLSTACK, IBL, JLON, D) collapse (2) + + DO IBL = JBLK1, JBLK2 + + +#ifdef _OPENACC + DO JLON = 1, NPROMA + D = D0 + D%NIB = JLON + D%NIE = JLON +#endif + +#ifdef USE_OPENMP + D = D0 +#endif + +#ifdef USE_STACK + YLSTACK%L = LOC (PSTACK (1, IBL)) + YLSTACK%U = YLSTACK%L + ISTSZ * KIND (PSTACK) +#else + YLSTACK%L = 0 + YLSTACK%U = 0 +#endif + +IPROMA=COUNT(LLMICRO(D%NIB:D%NIE,D%NJB:D%NJE,D%NKTB:D%NKTE,IBL)) +ISIZE=IPROMA +CALL RAIN_ICE (D, CST, PARAM_ICE, RAIN_ICE_PARAM, & + & RAIN_ICE_DESCR, TBUCONF, & + & IPROMA, ISIZE, & + & OSEDIC=OSEDIC, OCND2=OCND2, HSEDIM=CSEDIM, & + & HSUBG_AUCV_RC=CSUBG_AUCV_RC, HSUBG_AUCV_RI=CSUBG_AUCV_RI,& + & OWARM=OWARM, & + & PTSTEP=2*PTSTEP, & + & KRR=KRR, ODMICRO=LLMICRO(:,:,:,IBL), PEXN=PEXNREF(:,:,:,IBL), & + & PDZZ=PDZZ(:,:,:,IBL), PRHODJ=PRHODJ(:,:,:,IBL), PRHODREF=PRHODREF(:,:,:,IBL),PEXNREF=PEXNREF2(:,:,:,IBL),& + & PPABST=PPABSM(:,:,:,IBL), PCIT=PCIT(:,:,:,IBL), PCLDFR=PCLDFR(:,:,:,IBL), & + & PHLC_HRC=PHLC_HRC(:,:,:,IBL), PHLC_HCF=PHLC_HCF(:,:,:,IBL), & + & PHLI_HRI=PHLI_HRI(:,:,:,IBL), PHLI_HCF=PHLI_HCF(:,:,:,IBL), & + & PTHT=PTHT,PRVT=PRT(:,:,:,1,IBL),PRCT=PRT(:,:,:,2,IBL), & + & PRRT=PRT(:,:,:,3,IBL), & + & PRIT=PRT(:,:,:,4,IBL), PRST=PRT(:,:,:,5,IBL), & + & PRGT=PRT(:,:,:,6,IBL), & + & PTHS=PTHS(:,:,:,IBL), PRVS=PRS(:,:,:,1,IBL),PRCS=PRS(:,:,:,2,IBL),& + & PRRS=PRS(:,:,:,3,IBL),& + & PRIS=PRS(:,:,:,4,IBL),PRSS= PRS(:,:,:,5,IBL),PRGS= PRS(:,:,:,6,IBL),& + & PINPRC=ZINPRC(:,:,IBL),PINPRR=PINPRR(:,:,IBL),PEVAP3D=PEVAP(:,:,:,IBL),& + & PINPRS=PINPRS(:,:,IBL), PINPRG=PINPRG(:,:,IBL), PINDEP=ZINDEP(:,:,IBL), PRAINFR=ZRAINFR(:,:,:,IBL), & + & PSIGS=PSIGS(:,:,:,IBL), & + & TBUDGETS=YLBUDGET, KBUDGETS=SIZE(YLBUDGET), & + & PSEA=PSEA, PTOWN=PTOWN, PFPR=PFPR(:,:,:,:,IBL)) + +#ifdef _OPENACC + ENDDO +#endif + + ENDDO + +#ifdef USE_OPENMP +!$OMP END PARALLEL +#endif + +!$acc end parallel loop + + TEC = OMP_GET_WTIME () + +!$acc end data + + TED = OMP_GET_WTIME () + + ZTC = ZTC + (TEC - TSC) + ZTD = ZTD + (TED - TSD) + +ENDDO + +IF (LHOOK) CALL DR_HOOK ('MAIN',1,ZHOOK_HANDLE) + +TE = OMP_GET_WTIME() + +WRITE (*,'(A,F8.2,A)') 'elapsed time : ',TE-TS,' s' +WRITE (*,'(A,F8.4,A)') ' i.e. ',1000.*(TE-TS)/(NPROMA*NGPBLKS)/NTIME,' ms/gp' + +PRINT *, " ZTD = ", ZTD, ZTD / REAL (NPROMA*NGPBLKS*NTIME) +PRINT *, " ZTC = ", ZTC, ZTC / REAL (NPROMA*NGPBLKS*NTIME) + + +IF (LLCHECK .OR. LLSTAT .OR. LLCHECKDIFF) THEN + DO IBL = IBLOCK1, IBLOCK2 + PRINT *, " IBL = ", IBL + DO JRR=1, KRR + WRITE (CLTEXT, '("PRS JRR=",I3.3)') JRR + CALL DIFF3 (CLTEXT, PRS_OUT (:,:,:,JRR,IBL), PRS (:,:,:,JRR,IBL)) + IF(JRR>=2) THEN + WRITE (CLTEXT, '("PFPR JRR=",I3.3)') JRR + CALL DIFF3 (CLTEXT, PFPR_OUT (:,:,:,JRR,IBL), PFPR (:,:,:,JRR,IBL)) + ENDIF + ENDDO + CALL DIFF3 ("PCIT", PCIT_OUT (:,:,:,IBL), PCIT (:,:,:,IBL)) + CALL DIFF2 ("ZINPRC", ZINPRC_OUT (:,:,IBL), ZINPRC (:,:,IBL)) + CALL DIFF2 ("PINPRRRS", PINPRR_OUT (:,:,IBL), PINPRR (:,:,IBL)) + CALL DIFF3 ("PEVAP", PEVAP_OUT (:,:,:,IBL), PEVAP (:,:,:,IBL)) + CALL DIFF2 ("PINPRS", PINPRS_OUT (:,:,IBL), PINPRS (:,:,IBL)) + CALL DIFF2 ("PINPRG", PINPRG_OUT (:,:,IBL), PINPRG (:,:,IBL)) + CALL DIFF2 ("ZINDEP", ZINDEP_OUT (:,:,IBL), ZINDEP (:,:,IBL)) + CALL DIFF3 ("ZRAINFR", ZRAINFR_OUT (:,:,:,IBL), ZRAINFR (:,:,:,IBL)) + ENDDO +ENDIF + +IF (LLCHECKDIFF) THEN + IF (LLDIFF) THEN + PRINT*, "THERE ARE DIFF SOMEWHERE" + ELSE + PRINT*, "THERE IS NO DIFF AT ALL" + ENDIF +ENDIF + +STOP + +CONTAINS + +SUBROUTINE DIFF3 (CDNAME, PREF, POUT) + +CHARACTER (LEN=*) :: CDNAME +REAL :: PREF (:,:,:) +REAL :: POUT (:,:,:) + +INTEGER :: JLON, JLEV + +PRINT *, CDNAME +IF (LLSTAT) THEN + PRINT *, MINVAL (PREF), MAXVAL (PREF), SUM (PREF) / SIZE (PREF) + PRINT *, MINVAL (POUT), MAXVAL (POUT), SUM (POUT) / SIZE (POUT) +ENDIF + +IF (LLCHECK) THEN + IF (SUM (ABS (POUT) + ABS (PREF)) > 0) THEN + WRITE (*, '(A4)', ADVANCE='NO') "" + DO JLON = 1, NPROMA + WRITE (*, '("|",I12,A12)', ADVANCE='NO') JLON, "" + ENDDO + WRITE (*, '("|")') + DO JLEV = 1, KLEV + WRITE (*, '(I4)', ADVANCE='NO') JLEV + DO JLON = 1, NPROMA + IF (ABS (PREF (JLON, 1, JLEV)) + ABS (POUT (JLON, 1, JLEV)) == 0.) THEN + WRITE (*, '("|",2A12)', ADVANCE='NO') "", "" + ELSE + WRITE (*, '("|",2E12.5)', ADVANCE='NO') PREF (JLON, 1, JLEV), POUT (JLON, 1, JLEV) + ENDIF + ENDDO + WRITE (*, '("|")') + ENDDO + ENDIF +ENDIF + +IF (LLCHECKDIFF) THEN + IF (SUM(ABS(POUT-PREF)) > 0.) THEN + PRINT*, "THERE ARE DIFF" + LLDIFF = .TRUE. + ELSE + PRINT*, "THERE IS NO DIFF" + ENDIF +ENDIF + +END SUBROUTINE + +SUBROUTINE DIFF2 (CDNAME, PREF, POUT) + +CHARACTER (LEN=*) :: CDNAME +REAL :: PREF (:,:) +REAL :: POUT (:,:) + +INTEGER :: JLON + +PRINT *, CDNAME +IF (LLSTAT) THEN + PRINT *, MINVAL (PREF), MAXVAL (PREF), SUM (PREF) / SIZE (PREF) + PRINT *, MINVAL (POUT), MAXVAL (POUT), SUM (POUT) / SIZE (POUT) +ENDIF + +IF (LLCHECK) THEN + IF (SUM (ABS (POUT) + ABS (PREF)) > 0) THEN + WRITE (*, '(A4)', ADVANCE='NO') "" + DO JLON = 1, NPROMA + WRITE (*, '("|",I12,A12)', ADVANCE='NO') JLON, "" + ENDDO + WRITE (*, '("|")') + WRITE (*, '(I4)', ADVANCE='NO') 0 + DO JLON = 1, NPROMA + IF (ABS (PREF (JLON, 1)) + ABS (POUT (JLON, 1)) == 0.) THEN + WRITE (*, '("|",2A12)', ADVANCE='NO') "", "" + ELSE + WRITE (*, '("|",2E12.5)', ADVANCE='NO') PREF (JLON, 1), POUT (JLON, 1) + ENDIF + ENDDO + WRITE (*, '("|")') + ENDIF +ENDIF + +IF (LLCHECKDIFF) THEN + IF (SUM(ABS(POUT-PREF)) > 0.) THEN + PRINT*, "THERE ARE DIFF" + LLDIFF = .TRUE. + ELSE + PRINT*, "THERE IS NO DIFF" + ENDIF +ENDIF + +END SUBROUTINE + + +SUBROUTINE INIT_PHYEX(KULOUT,LDWARM,CMICRO,CCSEDIM,LDCRIAUTI,& + PCRIAUTI,PT0CRIAUTI,PCRIAUTC) + +USE MODD_RAIN_ICE_DESCR +USE MODD_RAIN_ICE_PARAM +USE MODD_PARAM_ICE +USE MODD_TURB_N, ONLY: TURB_GOTO_MODEL, CSUBG_MF_PDF + +USE MODD_REF +USE MODI_INI_RAIN_ICE + +IMPLICIT NONE +! ----------------------------------------------------------------------- +! DUMMY INTEGER SCALARS +INTEGER, INTENT (IN) :: KULOUT +LOGICAL, INTENT (IN) :: LDWARM +CHARACTER(4), INTENT (IN) :: CMICRO +CHARACTER(4), INTENT (IN) :: CCSEDIM +LOGICAL, INTENT (IN) :: LDCRIAUTI +REAL, INTENT (IN) :: PCRIAUTI +REAL, INTENT (IN) :: PT0CRIAUTI +REAL, INTENT (IN) :: PCRIAUTC +!----------------------------------------------------------------------- +! LOCAL VARIABLES +REAL :: ZCRI0, ZTCRI0 +! ----------------------------------------------------------------------- + +CALL INI_CST +CALL TURB_GOTO_MODEL(1,1) +CALL PARAM_ICE_ASSOCIATE + +! 1. Set implicit default values for MODD_PARAM_ICE +LWARM=LDWARM +CPRISTINE_ICE='PLAT' +CSEDIM=CCSEDIM +CSUBG_AUCV_RC='PDF' +CSUBG_AUCV_RI='NONE' +CSUBG_RC_RR_ACCR='NONE' +CSUBG_RR_EVAP='NONE' +CSUBG_PR_PDF='SIGM' +CSUBG_MF_PDF='TRIANGLE' +! Snow riming +CSNOWRIMING='M90 ' +XFRACM90=0.1 ! Fraction used for the Murakami 1990 formulation +! +LFEEDBACKT=.TRUE. ! When .TRUE. feed back on temperature is taken into account +LEVLIMIT=.TRUE. ! When .TRUE. water vapour pressure is limited by saturation +LNULLWETG=.TRUE. ! When .TRUE. graupel wet growth is activated with null rate (to allow water shedding) +LWETGPOST=.TRUE. ! When .TRUE. graupel wet growth is activated with positive temperature (to allow water shedding) +LNULLWETH=.TRUE. ! Same as LNULLWETG but for hail +LWETHPOST=.TRUE. ! Same as LWETGPOST but for hail +LCONVHG=.TRUE. ! TRUE to allow the conversion from hail to graupel +LCRFLIMIT=.TRUE. !True to limit rain contact freezing to possible heat exchange +CFRAC_ICE_ADJUST='S' ! Ice/liquid partition rule to use in adjustment +CFRAC_ICE_SHALLOW_MF='S' ! Ice/liquid partition rule to use in shallow_mf +LSEDIM_AFTER=.FALSE. ! Sedimentation done after microphysics +XSPLIT_MAXCFL=0.8 +LDEPOSC=.FALSE. ! water deposition on vegetation +XVDEPOSC=0.02 ! deposition speed (2 cm.s-1) +! +! 2. Set implicit default values for MODD_RAIN_ICE_DESCR +! et MODD_RAIN_ICE_PARAM +XTHVREFZ=300. +! +CALL INI_RAIN_ICE (KULOUT, CMICRO) +!update values from namparar +IF (LDCRIAUTI) THEN + + XCRIAUTI=PCRIAUTI + XCRIAUTC=PCRIAUTC + XT0CRIAUTI=PT0CRIAUTI + !second point to determine 10**(aT+b) law + ZTCRI0=-40.0 + ZCRI0=1.25E-6 + + XBCRIAUTI=-( LOG10(XCRIAUTI) - LOG10(ZCRI0)*PT0CRIAUTI/ZTCRI0 )& + *ZTCRI0/(XT0CRIAUTI-ZTCRI0) + XACRIAUTI=(LOG10(ZCRI0)-XBCRIAUTI)/ZTCRI0 + +ENDIF +! ----------------------------------------------------------------------- + +END SUBROUTINE INIT_PHYEX + +END PROGRAM + diff --git a/src/testprogs/support/stack_mod.F90 b/src/testprogs/support/stack_mod.F90 new file mode 100644 index 0000000000000000000000000000000000000000..b02784fb84a2c467b8d521b6a56614f9e4350bda --- /dev/null +++ b/src/testprogs/support/stack_mod.F90 @@ -0,0 +1,26 @@ +MODULE STACK_MOD + +IMPLICIT NONE + +TYPE STACK + INTEGER*8 :: L, U +END TYPE + +PRIVATE + +PUBLIC :: STACK, SOF + +CONTAINS + +SUBROUTINE SOF (CDFILE, KLINE) +!$acc routine (SOF) seq + +CHARACTER (LEN=*) :: CDFILE +INTEGER :: KLINE + +PRINT *, 'AT ', CDFILE, ':', KLINE +STOP 1 + +END SUBROUTINE + +END MODULE diff --git a/src/testprogs/support/xrd_getoptions.F90 b/src/testprogs/support/xrd_getoptions.F90 new file mode 100644 index 0000000000000000000000000000000000000000..0d726c9c040f3903c84e0bc0491be2612a0c315f --- /dev/null +++ b/src/testprogs/support/xrd_getoptions.F90 @@ -0,0 +1,828 @@ +MODULE XRD_GETOPTIONS + +!**** *XRD_GETOPTIONS* - Parse command lines options in long form + +! Author. +! ------- +! Philippe Marguinaud *METEO FRANCE* +! Original : 11-09-2012 + +USE PARKIND1, ONLY: JPIM, JPRB, JPLM + +USE XRD_UNIX_ENV, ONLY: XRD_IARGC, XRD_GETARG, & + XRD_BASENAME, XRD_COUNTWORDS, XRD_GETENV, & + XRD_ISALPHA, XRD_ISDIGIT, XRD_EXIT + +IMPLICIT NONE + +INTERFACE GETOPTION + MODULE PROCEDURE GETOPTIONS, GETOPTIONSL, & + GETOPTIONI, GETOPTIONIL, & + GETOPTIONR, GETOPTIONRL, & + GETOPTIONB + +END INTERFACE + +!! @TODO : LIST WITH FIXED SIZE + +PUBLIC :: GETOPTION, INITOPTIONS, CHECKOPTIONS, ADDGROUP + +INTEGER, PARAMETER :: ARGSIZEMAX = 256 + +CHARACTER(LEN=ARGSIZEMAX), POINTER :: MYARGS(:) => NULL() +LOGICAL(KIND=JPLM), POINTER :: CHECK_ARGS(:) => NULL() +LOGICAL(KIND=JPLM) :: LHELP = .FALSE., LSHELL = .FALSE. + +CHARACTER(LEN=1056) :: MESSAGE_OPT = "" + + +TYPE XRD_OPT + CHARACTER(LEN=32) :: KEY, TYPE + CHARACTER(LEN=1024) :: USE + LOGICAL(KIND=JPLM) :: GROUP = .FALSE. +END TYPE + +INTEGER(KIND=JPIM) :: NOPT_SEEN +TYPE(XRD_OPT), POINTER :: OPT_SEEN(:) => NULL() + +PRIVATE + +CONTAINS + +SUBROUTINE ADDGROUP( USE ) +CHARACTER(LEN=*), INTENT(IN) :: USE + +CALL INIT_OPT_SEEN() +NOPT_SEEN = NOPT_SEEN + 1 +CALL GROW_OPT_SEEN() + +OPT_SEEN(NOPT_SEEN)%GROUP = .TRUE. +OPT_SEEN(NOPT_SEEN)%USE = USE + + +END SUBROUTINE + +CHARACTER(LEN=ARGSIZEMAX) FUNCTION GET_ENV_OPT( KEY ) +CHARACTER(LEN=*), INTENT(IN) :: KEY +CHARACTER(LEN=ARGSIZEMAX) :: KEY_ENV, VAL_ENV +INTEGER(KIND=JPIM) :: I, N +CHARACTER :: C + +KEY_ENV = KEY(3:) + +N = LEN(TRIM(KEY_ENV)) +DO I = 1, N + C = KEY_ENV(I:I) + IF((.NOT.XRD_ISALPHA(C)) .AND. & + (.NOT.XRD_ISDIGIT(C)) .AND. & + (C .NE. '_' )) THEN + KEY_ENV(I:I) = '_' + ENDIF +ENDDO + +VAL_ENV = "" +CALL XRD_GETENV( 'XRD_OPT_'//TRIM(KEY_ENV), VAL_ENV ) + +!PRINT *, " KEY = ", TRIM(KEY_ENV), " VAL = ", TRIM(VAL_ENV) + +GET_ENV_OPT = VAL_ENV + +END FUNCTION + +SUBROUTINE MYGETARG( I, S ) + INTEGER(KIND=JPIM), INTENT(IN) :: I + CHARACTER(LEN=*), INTENT(OUT) :: S +! + IF( I .LE. UBOUND( MYARGS, 1 ) ) THEN + S = MYARGS(I) + ELSE + S = "" + ENDIF +END SUBROUTINE + +INTEGER FUNCTION MYIARGC() + INTEGER :: N + N = UBOUND( MYARGS, 1 ) + MYIARGC = N +END FUNCTION + +SUBROUTINE ADDOPT_SHELL( KEY, TYPE, MND, USE ) + CHARACTER*(*), INTENT(IN) :: KEY, TYPE, USE + LOGICAL(KIND=JPLM), INTENT(IN) :: MND + OPTIONAL :: USE, MND +! + CHARACTER(LEN=ARGSIZEMAX) :: STR + INTEGER :: NN, N, N1, I1, I2, K + CHARACTER(LEN=ARGSIZEMAX), POINTER :: MYARGS1(:) + + MYARGS1 => NULL() + + IF( PRESENT( USE ) ) WRITE( *, '("> ",A)' ) TRIM(USE) + IF( PRESENT( MND ) ) THEN + IF( MND ) WRITE( *, * ) "[MANDATORY]" + ENDIF + WRITE( *, * ) "* OPTION: [", TYPE, "]", " ", TRIM(KEY) + READ( *, '(A)' ) STR + +! PRINT *, "STR = ",TRIM(STR) + IF( TRIM(STR) .NE. "" ) THEN + IF( TYPE .EQ. 'FLAG' ) THEN + NN = 0 + ELSE + NN = XRD_COUNTWORDS( STR ) + ENDIF + N = UBOUND( MYARGS, 1 ) + N1 = N + NN + 1 + +! +! REALLOC MYARGS +! + ALLOCATE( MYARGS1(0:N1) ) + MYARGS1(0:N) = MYARGS(0:N) + DEALLOCATE( MYARGS ) + MYARGS => MYARGS1 + MYARGS(N+1) = KEY + +! +! PARSE ARGUMENT LIST +! + IF( TYPE .NE. 'FLAG' ) THEN + K = 1 + I1 = 1 + LOOP_I1 : DO + DO + IF( I1 .GT. LEN(STR)) EXIT LOOP_I1 + IF( STR(I1:I1) .NE. ' ' ) EXIT + I1 = I1+1 + ENDDO + I2 = I1+1 + DO + IF( I2 .GT. LEN(STR)) EXIT + IF( STR(I2:I2) .EQ. ' ' ) EXIT + I2 = I2+1 + ENDDO +!PRINT *, I1, I2 + MYARGS(N+1+K) = STR(I1:I2-1) +!PRINT *, K, TRIM(MYARGS(N+1+K)) + K = K+1 + I1 = I2+1 + ENDDO LOOP_I1 + ENDIF + ENDIF + +END SUBROUTINE + +SUBROUTINE INIT_OPT_SEEN() + + IF( .NOT. ASSOCIATED( OPT_SEEN ) ) THEN + NOPT_SEEN = 0 + ALLOCATE( OPT_SEEN( 32 ) ) + ENDIF + +END SUBROUTINE + +SUBROUTINE GROW_OPT_SEEN() + INTEGER(KIND=JPIM) :: N + TYPE(XRD_OPT), POINTER :: OPT_SEEN1(:) + + N = SIZE( OPT_SEEN ) + IF( NOPT_SEEN .GE. N ) THEN ! REALLOC DATA + OPT_SEEN1 => OPT_SEEN + ALLOCATE( OPT_SEEN( 2 * N ) ) + OPT_SEEN(1:NOPT_SEEN) = OPT_SEEN1(1:NOPT_SEEN) + DEALLOCATE( OPT_SEEN1 ) + ENDIF + +END SUBROUTINE + +SUBROUTINE ADDOPT( KEY, TYPE, USE ) + CHARACTER*(*), INTENT(IN) :: KEY, TYPE, USE + OPTIONAL :: USE + + CALL INIT_OPT_SEEN() + + NOPT_SEEN = NOPT_SEEN + 1 + + CALL GROW_OPT_SEEN() + + OPT_SEEN(NOPT_SEEN)%KEY = KEY + OPT_SEEN(NOPT_SEEN)%TYPE = TYPE + + IF( PRESENT( USE ) ) THEN + OPT_SEEN(NOPT_SEEN)%USE = USE + ELSE + OPT_SEEN(NOPT_SEEN)%USE = '' + ENDIF + +END SUBROUTINE + +SUBROUTINE INITOPTIONS( CDMESSAGE, KOPTMIN, KOPTMAX, CDARGS ) + CHARACTER(LEN=*), OPTIONAL, INTENT (IN) :: CDMESSAGE + INTEGER (KIND=JPIM), OPTIONAL, INTENT (IN) :: KOPTMIN, KOPTMAX + CHARACTER (LEN=*), OPTIONAL, INTENT (IN) :: CDARGS (0:) + INTEGER(KIND=JPIM) :: N, I + INTEGER(KIND=JPIM) :: IOPTMIN, IOPTMAX + CHARACTER*32 :: STR + + IF (PRESENT (CDARGS)) THEN + N = UBOUND (CDARGS, 1) + ELSE + N = XRD_IARGC() + ENDIF + + IOPTMIN = 0 + IOPTMAX = N + IF (PRESENT (KOPTMIN)) IOPTMIN = KOPTMIN + IF (PRESENT (KOPTMAX)) IOPTMAX = KOPTMAX + + N = IOPTMAX-IOPTMIN + + ALLOCATE( MYARGS(0:N) ) + DO I = 0, N + IF (PRESENT (CDARGS)) THEN + MYARGS(I) = CDARGS (IOPTMIN+I) + ELSE + CALL XRD_GETARG( IOPTMIN+I, MYARGS(I) ) + ENDIF + ENDDO + + IF( PRESENT( CDMESSAGE ) ) THEN + MESSAGE_OPT = CDMESSAGE + ELSE + MESSAGE_OPT = "" + ENDIF + + IF( N .EQ. 1 ) THEN + CALL MYGETARG( 1_JPIM, STR ) + IF( TRIM( STR ) .EQ. '--help' ) THEN + LHELP = .TRUE. + RETURN + ELSE IF( TRIM( STR ) .EQ. '--shell' ) THEN + LSHELL = .TRUE. + RETURN + ENDIF + ENDIF + + LHELP = .FALSE. + ALLOCATE( CHECK_ARGS( N ) ) + CHECK_ARGS = .FALSE. + +END SUBROUTINE + + + +SUBROUTINE CHECKOPTIONS() + INTEGER(KIND=JPIM) :: I, N, IS, NS, KS + CHARACTER(LEN=ARGSIZEMAX) :: OPT, PROG + LOGICAL(KIND=JPLM) :: PB + CHARACTER(LEN=10) :: FMT + CHARACTER(LEN=110) :: BUF + + CALL MYGETARG( 0_JPIM, PROG ) + + IF( LHELP ) THEN + PRINT *, "PROGRAM: ", TRIM(XRD_BASENAME( PROG )) + IF( TRIM(MESSAGE_OPT) .NE. "" ) THEN + NS = LEN(MESSAGE_OPT) + DO IS = 1, NS / 96 + KS = LEN( TRIM(MESSAGE_OPT(1+(IS-1)*96:IS*96)) ) + IF( KS .GT. 0 ) THEN + IF( IS .EQ. 1 ) THEN + WRITE( *, '(" ")', ADVANCE = 'NO' ) + ELSE + WRITE( *, '(" > ")', ADVANCE = 'NO' ) + ENDIF + WRITE( FMT, '("(A",I2,")")' ) KS + WRITE( *, FMT ) TRIM(MESSAGE_OPT(1+(IS-1)*96:IS*96)) + ENDIF + ENDDO + ENDIF + DO I = 1, NOPT_SEEN + + IF(OPT_SEEN(I)%GROUP) THEN + WRITE( *, * ) + IF( TRIM(OPT_SEEN(I)%USE) .NE. "" ) & + WRITE( *, * ) '* '//TRIM(OPT_SEEN(I)%USE) + CYCLE + ENDIF + + BUF = "" + + WRITE( BUF, '(A32," = ",A15)' ) & + TRIM(OPT_SEEN(I)%KEY), & + TRIM(OPT_SEEN(I)%TYPE) + + IF( TRIM(OPT_SEEN(I)%USE) .NE. '' ) THEN + NS = LEN( OPT_SEEN(I)%USE) + DO IS = 1, NS / 48 + KS = LEN(TRIM(OPT_SEEN(I)%USE(1+(IS-1)*48:IS*48))) + IF( KS .GT. 0 ) THEN + IF( IS .EQ. 1 ) THEN + BUF = TRIM(BUF)//" : "//TRIM(OPT_SEEN(I)%USE(1+(IS-1)*48:IS*48)) + ELSE +! 000000000011111111112222222222333333333344444444445555555555 +! 012345678901234567890123456789012345678901234567890123456789 + BUF = " > "& + //TRIM(OPT_SEEN(I)%USE(1+(IS-1)*48:IS*48)) + ENDIF + WRITE( *, * ) BUF + ENDIF + ENDDO + ELSE + WRITE( *, * ) BUF + WRITE( *, * ) + ENDIF + + ENDDO + STOP + ELSE IF( ASSOCIATED( CHECK_ARGS ) ) THEN + N = SIZE( CHECK_ARGS ) + PB = .FALSE. + DO I = 1, N + IF( .NOT. CHECK_ARGS(I) ) THEN + CALL MYGETARG( I, OPT ) + IF( OPT(1:2) .EQ. '--' ) THEN + PRINT *, 'INVALID OPTION: ', TRIM(OPT) + PB = .TRUE. + CHECK_ARGS(I) = .TRUE. + ENDIF + ENDIF + ENDDO + + DO I = 1, N + IF( .NOT. CHECK_ARGS(I) ) THEN + CALL MYGETARG( I, OPT ) + PRINT *, 'GARBAGE IN OPTIONS:`', TRIM(OPT), "'" + PB = .TRUE. + EXIT + ENDIF + ENDDO + + IF( PB ) CALL XRD_EXIT(1_JPIM) + + DEALLOCATE( CHECK_ARGS ) + ELSE IF( LSHELL ) THEN + OPEN( 77, FILE = TRIM(PROG)//'.sh', FORM = 'FORMATTED' ) + WRITE( 77, '("#!/bin/sh")' ) + WRITE( 77, * ) + WRITE( 77, '(A)', ADVANCE = 'NO' ) TRIM(PROG) + N = UBOUND( MYARGS, 1 ) + DO I = 1, N + IF( MYARGS(I) .EQ. '--shell' ) CYCLE + IF( MYARGS(I)(1:2) .EQ. '--' ) THEN + WRITE( 77, '(" \")' ) + WRITE( 77, '(" ")', ADVANCE = 'NO' ) + ENDIF + WRITE( 77, '(" ",A)', ADVANCE = 'NO' ) TRIM(MYARGS(I)) + ENDDO + WRITE( 77, * ) + CLOSE(77) + ENDIF + + + + IF( ASSOCIATED( OPT_SEEN ) ) DEALLOCATE( OPT_SEEN ) + IF( ASSOCIATED( MYARGS ) ) DEALLOCATE( MYARGS ) +END SUBROUTINE + + +SUBROUTINE CHECK_MND( KEY, MND, USE ) + CHARACTER(LEN=*), INTENT(IN) :: KEY + CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: USE + LOGICAL(KIND=JPLM), OPTIONAL, INTENT(IN) :: MND +! + CHARACTER(LEN=ARGSIZEMAX) :: PROG + + IF( PRESENT( MND ) ) THEN + IF( MND ) THEN + CALL MYGETARG( 0_JPIM, PROG ) + WRITE( *, '("PROGRAM: ",(A))' ) TRIM( PROG ) + WRITE( *, '("ERROR: OPTION `",(A),"'' IS MANDATORY")' ) TRIM( KEY ) + IF( PRESENT( USE ) ) WRITE( *, '(" ",(A)," : ",(A))' ) TRIM( KEY ), TRIM( USE ) + CALL XRD_EXIT(1_JPIM) + ENDIF + ENDIF + +END SUBROUTINE + +SUBROUTINE FINDARGINDEX( KEY, I, N ) + CHARACTER(LEN=*), INTENT(IN) :: KEY + INTEGER(KIND=JPIM), INTENT(OUT) :: I, N + CHARACTER(LEN=ARGSIZEMAX) :: ARG + + N = MYIARGC() + DO I = 1, N + CALL MYGETARG( I, ARG ) + IF( TRIM( ARG ) .EQ. TRIM( KEY ) ) RETURN + ENDDO + I = -1_JPIM +END SUBROUTINE + +SUBROUTINE FINDNEXTARGINDEX( I, J ) + INTEGER(KIND=JPIM), INTENT(IN) :: I + INTEGER(KIND=JPIM), INTENT(OUT) :: J +! + CHARACTER(LEN=ARGSIZEMAX) :: ARG + INTEGER(KIND=JPIM) :: N + + N = MYIARGC() + DO J = I+1, N + CALL MYGETARG( J, ARG ) + IF( ARG(1:2) .EQ. '--' ) EXIT + ENDDO + +END SUBROUTINE + +SUBROUTINE GETOPTIONS( KEY, VAL, MND, USE ) +! + CHARACTER(LEN=*), INTENT(IN) :: KEY + CHARACTER(LEN=*), INTENT(INOUT) :: VAL + LOGICAL(KIND=JPLM), INTENT(IN), OPTIONAL :: MND + CHARACTER(LEN=*), INTENT(IN), OPTIONAL :: USE +! + INTEGER(KIND=JPIM) :: I, N + CHARACTER(LEN=ARGSIZEMAX) :: ARG + LOGICAL(KIND=JPLM) :: LSHELL1 + LOGICAL(KIND=JPLM) :: FOUND + + LSHELL1 = LSHELL + + IF( LHELP ) THEN + CALL ADDOPT( KEY, 'STRING', USE ) + RETURN + ELSE IF( LSHELL ) THEN + LSHELL = .FALSE. + CALL ADDOPT_SHELL( KEY, 'STRING', MND, USE ) + ENDIF + + CALL FINDARGINDEX( KEY, I, N ) + + FOUND = ( 0 .LT. I ) .AND. ( I .LT. N ) + + IF( FOUND ) THEN + IF( ASSOCIATED( CHECK_ARGS ) ) THEN + CHECK_ARGS(I) = .TRUE. + CHECK_ARGS(I+1) = .TRUE. + ENDIF + CALL MYGETARG( I+1_JPIM, VAL ) + ELSE + ARG = GET_ENV_OPT( KEY ) + FOUND = ARG .NE. "" + IF( FOUND ) VAL = ARG + ENDIF + + IF( .NOT. FOUND ) & + CALL CHECK_MND( KEY, MND, USE ) + + LSHELL = LSHELL1 + +END SUBROUTINE + +SUBROUTINE GETOPTIONI( KEY, VAL, MND, USE ) +! + CHARACTER(LEN=*), INTENT(IN) :: KEY + INTEGER(KIND=JPIM), INTENT(INOUT) :: VAL + LOGICAL(KIND=JPLM), OPTIONAL, INTENT(IN) :: MND + CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: USE +! + CHARACTER(LEN=ARGSIZEMAX) :: SVAL + INTEGER :: ERR + LOGICAL(KIND=JPLM) :: LSHELL1 + + LSHELL1 = LSHELL + + IF( LHELP ) THEN + CALL ADDOPT( KEY, 'INTEGER', USE ) + RETURN + ELSE IF( LSHELL ) THEN + LSHELL = .FALSE. + CALL ADDOPT_SHELL( KEY, 'INTEGER', MND, USE ) + ENDIF + + SVAL = "" + CALL GETOPTIONS( KEY, SVAL, MND, USE ) + IF( TRIM( SVAL ) .NE. "" ) THEN + READ( SVAL, *, IOSTAT = ERR ) VAL + IF( ERR .NE. 0 ) THEN + PRINT *, "ERROR WHILE PARSING OPTION "//TRIM(KEY) + CALL XRD_EXIT(1_JPIM) + ENDIF + ENDIF + + LSHELL = LSHELL1 + +END SUBROUTINE + +SUBROUTINE GETOPTIONR( KEY, VAL, MND, USE ) +! + CHARACTER(LEN=*), INTENT(IN) :: KEY + REAL(KIND=JPRB), INTENT(INOUT) :: VAL + LOGICAL(KIND=JPLM), OPTIONAL, INTENT(IN) :: MND + CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: USE +! + CHARACTER(LEN=ARGSIZEMAX) :: SVAL + INTEGER :: ERR + LOGICAL(KIND=JPLM) :: LSHELL1 + + LSHELL1 = LSHELL + + IF( LHELP ) THEN + CALL ADDOPT( KEY, 'REAL', USE ) + RETURN + ELSE IF( LSHELL ) THEN + LSHELL = .FALSE. + CALL ADDOPT_SHELL( KEY, 'REAL', MND, USE ) + ENDIF + + SVAL = "" + CALL GETOPTIONS( KEY, SVAL, MND, USE ) + IF( TRIM( SVAL ) .NE. "" ) THEN + READ( SVAL, *, IOSTAT = ERR ) VAL + IF( ERR .NE. 0 ) THEN + PRINT *, "ERROR WHILE PARSING OPTION "//TRIM(KEY) + CALL XRD_EXIT(1_JPIM) + ENDIF + ENDIF + + LSHELL = LSHELL1 + +END SUBROUTINE + +SUBROUTINE READASLFROMSTRING( VAL, SVAL ) + CHARACTER(LEN=*), INTENT(OUT) :: VAL(:) + CHARACTER(LEN=*), INTENT(IN) :: SVAL +! + INTEGER(KIND=JPIM) :: I, J, K, N + + N = LEN( SVAL ) + + I = 1 + K = 1 + DO1 : DO + DO + IF( I .GT. N ) EXIT DO1 + IF( SVAL(I:I) .NE. ' ' ) EXIT + I = I + 1 + ENDDO + J = I + DO + IF( J .GT. N ) EXIT + IF( SVAL(J:J) .EQ. ' ' ) EXIT + J = J + 1 + ENDDO + + VAL(K) = SVAL(I:J-1) + I = J + K = K + 1 + ENDDO DO1 + + +END SUBROUTINE + +SUBROUTINE READSLFROMSTRING( VAL, SVAL ) + CHARACTER(LEN=*), POINTER :: VAL(:) + CHARACTER(LEN=*), INTENT(IN) :: SVAL +! + INTEGER(KIND=JPIM) :: N + + N = XRD_COUNTWORDS( SVAL ) + ALLOCATE( VAL( N ) ) + + CALL READASLFROMSTRING( VAL, SVAL ) + +END SUBROUTINE + +SUBROUTINE READSLFROMFILE( VAL, SVAL ) + CHARACTER(LEN=*), POINTER :: VAL(:) + CHARACTER(LEN=*), INTENT(IN) :: SVAL +! + INTEGER(KIND=JPIM) :: K, N + INTEGER(KIND=JPIM) :: IOERR + CHARACTER(LEN=4096) :: BUFFER + + OPEN( 77, FILE = TRIM(SVAL), FORM = 'FORMATTED', STATUS = 'OLD', IOSTAT = IOERR ) + IF( IOERR .NE. 0 ) THEN + PRINT '( "COULD NOT OPEN ",A, " FOR READING")', TRIM(SVAL) + CALL XRD_EXIT(1_JPIM) + ENDIF + N = 0_JPIM + DO + READ( 77, '(A)', END = 500 ) BUFFER + N = N + XRD_COUNTWORDS( BUFFER ) + ENDDO + + 500 CONTINUE + + REWIND( 77 ) + + ALLOCATE( VAL( N ) ) + + K = 1 + DO + READ( 77, '(A)', END = 600 ) BUFFER + N = XRD_COUNTWORDS( BUFFER ) + CALL READASLFROMSTRING( VAL(K:K+N-1), BUFFER ) + K = K + N + ENDDO + + 600 CONTINUE + + + CLOSE( 77 ) + +END SUBROUTINE + +SUBROUTINE GETOPTIONSL( KEY, VAL, MND, USE ) +! + CHARACTER(LEN=*), INTENT(IN) :: KEY + CHARACTER(LEN=*), POINTER :: VAL(:) + LOGICAL(KIND=JPLM), OPTIONAL, INTENT(IN) :: MND + CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: USE +! + INTEGER(KIND=JPIM) :: I, J, K, N + CHARACTER(LEN=ARGSIZEMAX) :: ARG + CHARACTER(LEN=ARGSIZEMAX) :: SVAL + LOGICAL(KIND=JPLM) :: LSHELL1 + LOGICAL(KIND=JPLM) :: FOUND + + LSHELL1 = LSHELL + + IF( LHELP ) THEN + CALL ADDOPT( KEY, 'STRING-LIST', USE ) + RETURN + ELSE IF( LSHELL ) THEN + LSHELL = .FALSE. + CALL ADDOPT_SHELL( KEY, 'STRING-LIST', MND, USE ) + ENDIF + + CALL FINDARGINDEX( KEY, I, N ) + + FOUND = I >= 0 + + IF( FOUND ) THEN + + CALL FINDNEXTARGINDEX( I, J ) + + ALLOCATE( VAL( J - I - 1 ) ) + + IF( ASSOCIATED( CHECK_ARGS ) ) & + CHECK_ARGS(I) = .TRUE. + + DO K = I+1, J-1 + IF( ASSOCIATED( CHECK_ARGS ) ) & + CHECK_ARGS(K) = .TRUE. + CALL MYGETARG( K, ARG ) + IF ((I+1.EQ.J-1) .AND. (ARG(1:7).EQ.'file://')) THEN + DEALLOCATE (VAL) + ARG = ARG(8:) + CALL READSLFROMFILE( VAL, ARG ) + ELSE + VAL(K-I) = ARG + ENDIF + ENDDO + + ENDIF + + IF(.NOT. FOUND) THEN + SVAL = GET_ENV_OPT( KEY ) + FOUND = SVAL .NE. "" + IF( FOUND ) & + CALL READSLFROMSTRING( VAL, SVAL ) + ENDIF + + IF( .NOT. FOUND ) & + CALL CHECK_MND( KEY, MND, USE ) + + LSHELL = LSHELL1 + +END SUBROUTINE + +SUBROUTINE GETOPTIONIL( KEY, VAL, MND, USE ) +! + CHARACTER(LEN=*), INTENT(IN) :: KEY + INTEGER(KIND=JPIM), POINTER :: VAL(:) + LOGICAL(KIND=JPLM), OPTIONAL, INTENT(IN) :: MND + CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: USE +! + CHARACTER(LEN=ARGSIZEMAX), POINTER :: SVAL(:) + INTEGER(KIND=JPIM) :: I, N + INTEGER :: ERR + LOGICAL(KIND=JPLM) :: LSHELL1 + + NULLIFY (SVAL) + + LSHELL1 = LSHELL + + IF( LHELP ) THEN + CALL ADDOPT( KEY, 'INTEGER-LIST', USE ) + RETURN + ELSE IF( LSHELL ) THEN + LSHELL = .FALSE. + CALL ADDOPT_SHELL( KEY, 'INTEGER-LIST', MND, USE ) + ENDIF + + CALL GETOPTIONSL( KEY, SVAL, MND, USE ) + + IF( .NOT. ASSOCIATED( SVAL ) ) GOTO 999 + + N = SIZE( SVAL ) + ALLOCATE( VAL( N ) ) + DO I = 1, N + READ( SVAL( I ), *, IOSTAT = ERR ) VAL( I ) + IF( ERR .NE. 0 ) THEN + PRINT *, "ERROR WHILE PARSING OPTION "//TRIM(KEY) + CALL XRD_EXIT(1_JPIM) + ENDIF + ENDDO + + DEALLOCATE( SVAL ) + +999 CONTINUE + LSHELL = LSHELL1 + +END SUBROUTINE + +SUBROUTINE GETOPTIONRL( KEY, VAL, MND, USE ) +! + CHARACTER(LEN=*), INTENT(IN) :: KEY + REAL(KIND=JPRB), POINTER :: VAL(:) + LOGICAL(KIND=JPLM), OPTIONAL, INTENT(IN) :: MND + CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: USE +! + CHARACTER(LEN=ARGSIZEMAX), POINTER :: SVAL(:) + INTEGER(KIND=JPIM) :: I, N + INTEGER :: ERR + LOGICAL(KIND=JPLM) :: LSHELL1 + + NULLIFY (SVAL) + + LSHELL1 = LSHELL + + IF( LHELP ) THEN + CALL ADDOPT( KEY, 'REAL-LIST', USE ) + RETURN + ELSE IF( LSHELL ) THEN + LSHELL = .FALSE. + CALL ADDOPT_SHELL( KEY, 'REAL-LIST', MND, USE ) + ENDIF + + CALL GETOPTIONSL( KEY, SVAL, MND, USE ) + + IF( .NOT. ASSOCIATED( SVAL ) ) GOTO 999 + + N = SIZE( SVAL ) + ALLOCATE( VAL( N ) ) + DO I = 1, N + READ( SVAL( I ), *, IOSTAT = ERR ) VAL( I ) + IF( ERR .NE. 0 ) THEN + PRINT *, "ERROR WHILE PARSING OPTION "//TRIM(KEY) + CALL XRD_EXIT(1_JPIM) + ENDIF + ENDDO + + DEALLOCATE( SVAL ) + +999 CONTINUE + LSHELL = LSHELL1 + +END SUBROUTINE + +SUBROUTINE GETOPTIONB( KEY, VAL, USE ) +! + CHARACTER(LEN=*), INTENT(IN) :: KEY + LOGICAL(KIND=JPLM), INTENT(INOUT) :: VAL + CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: USE +! + LOGICAL(KIND=JPLM) :: LSHELL1 + LOGICAL(KIND=JPLM) :: FOUND + CHARACTER(LEN=ARGSIZEMAX) :: SVAL + INTEGER(KIND=JPIM) :: I, N + + LSHELL1 = LSHELL + + VAL = .FALSE. + + IF( LHELP ) THEN + CALL ADDOPT( KEY, 'FLAG', USE ) + RETURN + ELSE IF( LSHELL ) THEN + LSHELL = .FALSE. + CALL ADDOPT_SHELL( KEY, 'FLAG', .FALSE._JPLM, USE ) + ENDIF + + CALL FINDARGINDEX( KEY, I, N ) + FOUND = I > 0 + IF( FOUND .AND. ASSOCIATED( CHECK_ARGS ) ) THEN + CHECK_ARGS(I) = .TRUE. + VAL = .TRUE. + ELSE + SVAL = GET_ENV_OPT( KEY ) + IF( SVAL .NE. "" ) & + READ( SVAL, * ) VAL + ENDIF + + LSHELL = LSHELL1 + +END SUBROUTINE + +END MODULE diff --git a/src/testprogs/support/xrd_unix_env.F90 b/src/testprogs/support/xrd_unix_env.F90 new file mode 100644 index 0000000000000000000000000000000000000000..c689c6255ffed05f25c2f988961d679f3d186476 --- /dev/null +++ b/src/testprogs/support/xrd_unix_env.F90 @@ -0,0 +1,181 @@ +MODULE XRD_UNIX_ENV + +!**** *XRD_UNIX_ENV* - + +! Author. +! ------- +! Philippe Marguinaud *METEO FRANCE* +! Original : 11-09-2012 + +USE PARKIND1, ONLY : JPIM, JPRB, JPLM +IMPLICIT NONE + +CONTAINS + +SUBROUTINE XRD_GETENV( KEY, VAL ) + IMPLICIT NONE + CHARACTER(LEN=*), INTENT(IN) :: KEY + CHARACTER(LEN=*), INTENT(OUT) :: VAL + + CALL GET_ENVIRONMENT_VARIABLE( KEY, VAL ) +END SUBROUTINE + + +FUNCTION XRD_IARGC() + IMPLICIT NONE + INTEGER(KIND=JPIM) :: XRD_IARGC + XRD_IARGC = COMMAND_ARGUMENT_COUNT() +END FUNCTION + +SUBROUTINE XRD_GETARG( KEY, VAL ) + IMPLICIT NONE + INTEGER(KIND=JPIM), INTENT(IN) :: KEY + CHARACTER(LEN=*), INTENT(OUT) :: VAL + CALL GETARG( INT(KEY,SELECTED_INT_KIND(9)), VAL ) +END SUBROUTINE + +SUBROUTINE XRD_EXIT( STATUS ) + IMPLICIT NONE + INTEGER(KIND=JPIM), INTENT(IN) :: STATUS + CALL EXIT( INT(STATUS,SELECTED_INT_KIND(9)) ) +END SUBROUTINE + +SUBROUTINE XRD_MKDIR( PATH ) + IMPLICIT NONE + CHARACTER(LEN=*), INTENT(IN) :: PATH + CALL SYSTEM( "mkdir -p "//TRIM(PATH)) +END SUBROUTINE + +CHARACTER*256 FUNCTION XRD_DIRNAME( PATH ) + IMPLICIT NONE + CHARACTER(LEN=*), INTENT(IN) :: PATH + + INTEGER(KIND=JPIM) :: I + XRD_DIRNAME = "" + I = LEN( TRIM( PATH ) ) - 1 + DO + IF( I .LE. 0 ) RETURN + IF( PATH(I:I) .EQ. '/' ) EXIT + I = I - 1 + ENDDO + XRD_DIRNAME = PATH(1:I) +END FUNCTION + +FUNCTION XRD_BASENAME( PATH ) + IMPLICIT NONE + CHARACTER*256 :: XRD_BASENAME + CHARACTER(LEN=*), INTENT(IN) :: PATH + + INTEGER(KIND=JPIM) :: I + XRD_BASENAME = "" + I = LEN( TRIM( PATH ) ) - 1 + DO + IF( I .LE. 0 ) THEN + I = 0 + EXIT + ENDIF + IF( PATH(I:I) .EQ. '/' ) EXIT + I = I - 1 + ENDDO + XRD_BASENAME = PATH(I+1:) +END FUNCTION + +ELEMENTAL SUBROUTINE XRD_LOWER_CASE(OUS,INS) +IMPLICIT NONE +! CONVERT A WORD TO LOWER CASE +CHARACTER (LEN=*) , INTENT(OUT) :: OUS +CHARACTER (LEN=*) , INTENT(IN) :: INS +INTEGER :: I,IC,NLEN +NLEN = LEN(INS) +OUS = '' +DO I=1,NLEN + IC = ICHAR(INS(I:I)) + IF (IC >= 65 .AND. IC < 90) THEN + OUS(I:I) = CHAR(IC+32) + ELSE + OUS(I:I) = INS(I:I) + ENDIF +END DO +END SUBROUTINE XRD_LOWER_CASE + +FUNCTION XRD_ISALPHA(C) +IMPLICIT NONE +LOGICAL(KIND=JPLM) :: XRD_ISALPHA +CHARACTER, INTENT(IN) :: C + +XRD_ISALPHA = ((C.GE.'A').AND.(C.LE.'Z'))& + .OR.((C.GE.'a').AND.(C.LE.'z')) + +END FUNCTION + +FUNCTION XRD_ISDIGIT(C) +IMPLICIT NONE +LOGICAL(KIND=JPLM) :: XRD_ISDIGIT +CHARACTER, INTENT(IN) :: C + +XRD_ISDIGIT = (C.GE.'0').AND.(C.LE.'9') + +END FUNCTION + +SUBROUTINE XRD_DATE_AND_TIME( VL ) +IMPLICIT NONE +INTEGER(KIND=JPIM), INTENT(OUT) :: VL(8) +! +INTEGER :: VLX(8) + + CALL DATE_AND_TIME( VALUES = VLX ) + + VL = VLX +END SUBROUTINE + +SUBROUTINE XRD_CPU_TIME( T ) + IMPLICIT NONE + REAL,INTENT(OUT) :: T + CALL CPU_TIME( T ) +END SUBROUTINE + +SUBROUTINE XRD_COUNTLINES( NLINES, F, ERR ) +IMPLICIT NONE +INTEGER(KIND=JPIM), INTENT(OUT) :: NLINES +CHARACTER*(*), INTENT(IN) :: F +INTEGER(KIND=JPIM), INTENT(OUT) :: ERR +CHARACTER*32 :: STR + +NLINES = 0 +OPEN( 77, FILE = F, ERR = 888 ) + +DO + READ( 77, *, ERR = 888, END = 777 ) STR + NLINES = NLINES + 1 +ENDDO + +777 CONTINUE + +CLOSE( 77 ) + +RETURN +888 CONTINUE + ERR = 1 +END SUBROUTINE + +FUNCTION XRD_COUNTWORDS( S ) + IMPLICIT NONE + INTEGER(KIND=JPIM) :: XRD_COUNTWORDS + CHARACTER(LEN=*), INTENT(IN) :: S + INTEGER(KIND=JPIM) :: N, I, L + LOGICAL(KIND=JPLM) :: IN + N = 0_JPIM + IN = .FALSE. + L = LEN( TRIM( S ) ) + DO I = 1, L + IF( S(I:I) .EQ. ' ' ) THEN + IN = .FALSE. + ELSE IF( .NOT. IN ) THEN + N = N + 1 + IN = .TRUE. + ENDIF + ENDDO + XRD_COUNTWORDS = N +END FUNCTION + +END MODULE diff --git a/tools/.gitignore b/tools/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..5fd9f1761212af4a0b3aa6aaca6c7e0fa90219a7 --- /dev/null +++ b/tools/.gitignore @@ -0,0 +1,20 @@ +# Ignore the content of pack directory but not the directory itself +pack/** +!pack/.gitkeep + +# Ignore the content of mnh_expand directory but not the directory itself +mnh_expand/** +!mnh_expand/.gitkeep + +# Ignore the content of testprogs_data but not the directory itself +testprogs_data/ice_adjust/** +testprogs_data/rain_ice/** +testprogs_data/turb/** +testprogs_data/shallow_mf/** +!testprogs_data/ice_adjust/.gitkeep +!testprogs_data/rain_ice/.gitkeep +!testprogs_data/turb/.gitkeep +!testprogs_data/shallow_mf/.gitkeep + +# Ignore vim swapp files +.*.swp diff --git a/tools/History_pack b/tools/History_pack new file mode 100644 index 0000000000000000000000000000000000000000..7057a1b68bda32aa016a4d79ff7e119dbe56277d --- /dev/null +++ b/tools/History_pack @@ -0,0 +1,47 @@ +wget http://anonymous:mto@webdav.cnrm.meteo.fr/public/algo/khatib/src/48t1_main.01.tgz + +Pour chacun de ces packs, le répertoire bin créé est un lien. On déplace le répertoire pour que le binaire soit effectivement sur /cnrm +Pour tous les packs: le code provient du git, dr_hook est modifié pour ubuntu, aro_rain_ice est corrigé et l'option -ftree-vectorize est supprimée + +main.01: code du git +phyex.01: code du git avec rangement dans phyex + +################################# +#Ce qui suit est conservé au cas où mais n'est plus utile + +main.01: (-a) code du git, recompil sans rien changer +main.02: idem main.01 mais compil 1proc, listing compil sauve +phyex.01: (-a) code du git, split puis recompil +phyex.02: (-a) décrit ci-dessous +phyex.03: pour test (cf. ci-dessous) +phyex.04: idem phyex.02 mais sur ubuntu, + correction budget RH dans aro_rain_ice +phyex.05: idem phyex.04 mais en -O0 +phyex.06: basé sur 04, cp main/phyex local/phyex, -O0 dans ics_masterodb (gmkpack -r 48t1 -b phyex -v 04 -l MPIGFORTRAN920DBL -o xfftw -p masterodb -f /cnrm/phynh/data1/riette/DATA/202005_externalisation_physique/pack/ -h /cnrm/phynh/data1/riette/DATA/202005_externalisation_physique/pack/ -u phyex -n 06). Puis recompile en ajoutant les codes suivants dans local: arpifs/namelist/namparar.nam.h arpifs/phys_dmn/suparar.F90 arpifs/phys_dmn/apl_arome.F90 arpifs/module/yomparar.F90 mpa/turb/externals/aro_turb_mnh.F90 mpa/micro/externals/aro_convbu.F90 mpa/micro/externals/aro_lima.F90 mpa/micro/externals/aro_rain_ice.F90 mpa/micro/externals/aro_startbu.F90 mpa/micro/interface/aro_rain_ice.h +phyex.07: idem 02 avec correction aro_rain_ice (compilé depuis lxphynh9). Manip sur libifsaux inutile => non faite!!! +phyex.08: idem 07 mais construit sur 02 (pour modifier aro_rain_ice) plutot que recompilé entièrement +phyex.09: idem 04 mais sans -ftree-vectorize, et avec modif libifsaux +phyex.10: idem 09 mais compilé depuis pxphynh18 (ubuntu) +phyex.11: idem 10 mais LANG=C.UTF-8 +phyex.12: idem 09 (sur sxphynh en ubuntu) mais avec 'export GMKTMP=/dev/shm' +phyex.13: idem 12 mais avec 'export GMKTMP=/tmp' +phyex.14: idem 13 mais avec 'export GMKTMP=/home/riette/mon_rep_tempo', répertoire créé pour l'occasion +phyex.15: idem ?? mais un seul thread + +Manip sur les lib (2 packs sinon édition de lien trop lente): +phyex.02: (-a) code du git, split, recompil (jusqu'ici, identique à phyex.01), modif lib (ci-dessous), recompil +cd lib; mv libifsaux.local.a ..; cp /home/riette/packs/PHYEX/ori/lib/libifsaux.main.a libifsaux.local.a; cd ..; ./ics_masterodb + +Pour effectuer les tests (pour trouver qu'ifsaux est le coupable, j'ai utilisé un deuxième pack pour que l'édition de lien soit plus rapide): +phyex.03: (basé sur phyex.02): gmkpack -r 48t1 -b phyex -v 02 -l MPIGFORTRAN920DBL -o xfftw -p masterodb -f /cnrm/phynh/data1/riette/DATA/202005_externalisation_physique/pack/ -h /cnrm/phynh/data1/riette/DATA/202005_externalisation_physique/pack/ -u phyex -n 03 + +libs=$(for file in $(\ls *.a | grep -v libmpa | grep -v libphyex | cut -d. -f1); do echo $file; done) +libs="libaeolus libaladin libalgor libarpifs libbiper libblacklist libcma-odb libcountryrst-odb libcoupling libcrm libdummyaeolus libdummyaladin libdummyalgor libdummyarpifs libdummybiper libdummyblacklist libdummyetrans libdummympa libdummymse libdummyodb libdummysatrad libdummysurf libdummytrans libecfftw libetrans libgrib-utilities libifsaux libifsobs libmain-odb libmse libmtocomp-odb libobstat libodb libpearome-utilities libport-odb libpregpssol-utilities libprograms-aladin libprograms-arpifs libprograms-blacklist libprograms-etrans libprograms-ifsaux libprograms-mse libprograms-satrad libprograms-scat libprograms-trans libradiation librstbias-odb libsatrad libscat libsonderst-odb libsurfex libsurf libtrans libunsxref-verbose libutilities" + +libs="libifsaux" + +do: +for file in $libs; do rm -f ${file}.main.a; ln -s /home/riette/packs/PHYEX/ori/lib/${file}.main.a; done + +undo: +for file in $libs; do rm -f ${file}.main.a; ln -s /cnrm/phynh/data1/riette/DATA/202005_externalisation_physique/pack/48t1_phyex.02.MPIGFORTRAN920DBL.xfftw/lib/${file}.local.a ${file}.main.a; done + diff --git a/tools/INSTALL.md b/tools/INSTALL.md new file mode 100644 index 0000000000000000000000000000000000000000..d72e545e0d96de5134d589210a44fc9b514dab63 --- /dev/null +++ b/tools/INSTALL.md @@ -0,0 +1,27 @@ +# TOOLS INSTALLATION + +## ABOUT THIS DOCUMENT + +This document is intended for persons who want to install part or all of the tools provided with the PHYEX package. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +## INSTALLATIONS + +1. IAL REFERENCE PACK + The check\_commit\_ial.sh script, by default, build a pack on top of a precompiled pack. + This precompiled pack must be build beforehand. Instructions can be found in + [INSTALL\_pack\_ial](./INSTALL_pack_ial.md) + +2. MESONH REFERENCE PACK + The reference pack for Meso-NH must be installed. Instructions can be found in + [INSTALL\_pack\_mesonh](./INSTALL_pack_mesonh.md) + +3. MNH\_EXPAND + This tool is composed of two parts: the filepp software, and the MNH\_Expand\_Array package. + It is needed by the different check\_commit\_\*.sh scripts, depending on options used at execution. + Installation is described in [INSTALL\_mnh\_expand](./INSTALL_mnh_expand.md) + +4. TESTPROGS REFERENCE DATA + The script check\_commit\_testprogs.sh needs reference data. + The data generation is explained in [INSTALL\_testprogs](./INSTALL_testprogs.md) diff --git a/tools/INSTALL_mnh_expand.md b/tools/INSTALL_mnh_expand.md new file mode 100644 index 0000000000000000000000000000000000000000..406b1f53e21d7966a5b866c9d8dc04e8b12a24b8 --- /dev/null +++ b/tools/INSTALL_mnh_expand.md @@ -0,0 +1,34 @@ +# INSTALLATION NEEDED THE prep\_code.sh script + +## ABOUT THIS DOCUMENT + +This document is intended for persons who want to use the prep\_code.sh script (directly or through a check\_commit\_\*.sh script). + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + +Two packages must be installed: + + - [filepp](#filepp) + - [MNH\_Expand\_Array](#mnh\_expand\_array) + +## filepp +In the \<git repository\>/tools/mnh\_expand directory: + +``` +wget https://www-users.york.ac.uk/~dm26/filepp/filepp-1.8.0.tar.gz +tar xvf filepp-1.8.0.tar.gz +cd filepp-1.8.0 +./configure --prefix=$PWD +make install +cd .. +ln -s filepp-1.8.0 filepp +``` + +## MNH\_Expand\_Array +In the \<git repository\>/tools/mnh\_expand directory, clone the MNH\_Expand\_Array repository: + +``` +git clone https://github.com/JuanEscobarMunoz/MNH_Expand_Array.git +``` + + diff --git a/tools/INSTALL_pack_ial.md b/tools/INSTALL_pack_ial.md new file mode 100644 index 0000000000000000000000000000000000000000..60e553f070e584767b60f990390523182c4b0177 --- /dev/null +++ b/tools/INSTALL_pack_ial.md @@ -0,0 +1,158 @@ +# INSTALLATION NEEDED FOR AROME COMPILATION WITH PHYEX + +## ABOUT THIS DOCUMENT + +This document is intended for persons who want to compile the AROME model using the PHYEX package. +The installation described here is also needed in order to use the check\_commit\_ial.sh script which enable to check if a given commit reproduces a reference version. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -V geometry:landscape -s \<filename\>.md -o \<filename\>.pdf). + +This document describes how to build reference packs on sxphynh (ubuntu) and belenos. +The following instructions focuse on the 'phyex' pack in which the physics +have been put in a new gmkpack project, named phyex. + +Another pack ('main') have been produced as a super-reference without code +move. Only a recompilation has been done. + +This document ends with instruction on how to use these packs. This step +is now automatically performed with the prep\_code.sh script. + +The same installation guide applies to sxphynh and belenos except for some commands. +The directory in which the repository lies is designated by the TRUNK variable. +The $TRUNK dir can be put on a shared directory to share this installation among several users. + +## REFERENCE PACK CREATION + +### Create the pack + +``` +version=01 +compiler=MPIGFORTRAN920DBL on ubuntu, MIMPIIFC1805 on belenos +gmkfile=${compiler}.GMAP on ubuntu, ${compiler}.EPONA on belenos +option=xfftw on ubuntu, 2y on belenos +getpack 48t1_main.01.${compiler}.${option} #get source code on ubuntu, is it really necessary? +export GMKTMP=/dev/shm +(. berootpack) +gmkpack -a -r 48t1 -b phyex -n $version -l ${compiler} -o ${option} -p masterodb -h $TRUNK/tools/pack/ #create main pack +``` + +### Populate main pack with source code + +``` +cd $TRUNK/tools/pack/48t1_phyex.${version}.${compiler}.${option}/src/local +if sxphynh; then + wget http://anonymous:mto@webdav.cnrm.meteo.fr/public/algo/khatib/src/48t1_main.01.tgz #only available at MF but equivalent must exist elsewhere +else + ssh sxphynh.cnrm.meteo.fr "wget http://anonymous:mto@webdav.cnrm.meteo.fr/public/algo/khatib/src/48t1_main.01.tgz -O -" > 48t1_main.01.tgz +fi +tar xf 48t1_main.01.tgz +rm -f 48t1_main.01.tgz +for rep in turb micro conv; do + mkdir -p phyex/$rep + mv mpa/$rep/internals/* phyex/$rep/ + mv mpa/$rep/module/* phyex/$rep/ + rmdir mpa/$rep/internals mpa/$rep/module +done +tar xf /cnrm/algo/khatib/drhook.c_for_ubuntu.tar #only on ubuntu +``` + +### Apply some bug corrections + +``` +sed -i 's/IF (LBUDGET_RH)/IF (LBUDGET_RH .AND. KRR==7)/' mpa/micro/externals/aro_rain_ice.F90 +``` + +Edition of arpifs/phys\_dmn/apl\_arome.F90 to modift (line 1573): + + ``` + IF (LMFSHAL .AND. (CMF_CLOUD=='DIRE'.OR.CMF_CLOUD=='BIGA')) THEN + IOFF_MFSHAL=IOFF_MFSHAL+3 + ... + ENDIF + ``` + +into: + + ``` + IF (LMFSHAL .AND. (CMF_CLOUD=='DIRE'.OR.CMF_CLOUD=='BIGA')) THEN + IOFF_MFSHAL=IOFF_MFSHAL+3 + ... + ELSE + DO JLEV = 1, KLEV + ZRC_MF_(KIDIA:KFDIA,JLEV)=0._JPRB + ZRI_MF_(KIDIA:KFDIA,JLEV)=0._JPRB + ZCF_MF_(KIDIA:KFDIA,JLEV)=0._JPRB + ENDDO + ENDIF + ``` + +Edition of apl\_arome.F90 to modify (line 1406): + + ``` + IF ( LKFBCONV.AND.LOSUBG_COND.AND..NOT.LOSIGMAS) THEN + DO JLEV = 1, KLEV + ZMFM_(KIDIA:KFDIA,JLEV)=PSIGM(KIDIA:KFDIA,JLEV) + ENDDO + ENDIF + ``` + +into: + + ``` + IF (LOSUBG_COND.AND..NOT.LOSIGMAS) THEN + IF (LKFBCONV) THEN + DO JLEV = 1, KLEV + ZMFM_(KIDIA:KFDIA,JLEV)=PSIGM(KIDIA:KFDIA,JLEV) + ENDDO + ELSE + DO JLEV = 1, KLEV + ZMFM_(KIDIA:KFDIA,JLEV)=0._JPRB + ENDDO + ENDIF + ENDIF + ``` + +### Compilation + +``` +cd $TRUNK/tools/pack/48t1_phyex.${version}.${compiler}.${option} +#Not needed anymore: grep MPA .gmkfile/${compiler}.GMAP | sed 's/MPA/PHYEX/g' >> .gmkfile/${gmkfile} +Edition of .gmkfile/${gmkfile} to add -DREPRO48 to the MACROS_FRT variable in order to suppress bug corrections and be able to reproduce the original cy48 +#Not needed anymore: Edition of .gmkfile/${gmkfile} to suppress on ubuntu -ftree-vectorize +sed -i 's/GMK_THREADS=1/GMK_THREADS=10/' ics_masterodb +cleanpack -f +resetpack -f +./ics_masterodb +``` + +## USER\'S PACK CREATION + +``` +version=01 +compiler=MPIGFORTRAN920DBL on ubuntu, MIMPIIFC1805 on belenos +gmkfile=${compiler}.GMAP on ubuntu, ${compiler}.EPONA on belenos +option=xfftw on ubuntu, 2y on belenos +getpack 48t1_main.01.${compiler}.${option} #get source code on ubuntu, is it really necessary? + +commit=9ce8119430dd603d35308d8ae94cf18636157473 #exemple of commit to test against the reference pack + +gmkpack -r 48t1 -b phyex -v ${version} -l ${compiler} -o ${option} -p masterodb -f $TRUNK/tools/pack/ -u PHYEX/$commit + +cd $HOMEPACK/PHYEX/$commit/src/local/phyex +git clone git@github.com:QuentinRodier/PHYEX.git +cd PHYEX +git checkout $commit +#The exact manipulation to perform depends on the commit to test. For a full description, please see the check\_commit\_ial.sh script +for rep in turb micro conv; do + mv -f src/common/$rep/* ../$rep/ + mv -f src/arome/$rep/* ../$rep/ + touch ../$rep/* +done +cd .. +rm -rf PHYEX + +cd $HOMEPACK/PHYEX/$commit +sed -i 's/GMK_THREADS=1/GMK_THREADS=10/' ics_masterodb +cleanpack -f +./ics_masterodb +``` diff --git a/tools/INSTALL_pack_mesonh.md b/tools/INSTALL_pack_mesonh.md new file mode 100644 index 0000000000000000000000000000000000000000..50da84d8a177fd4f9922545cc3cb116a2e6176b7 --- /dev/null +++ b/tools/INSTALL_pack_mesonh.md @@ -0,0 +1,57 @@ +# INSTALLATION NEEDED FOR MESONH COMPILATION WITH PHYEX + +## ABOUT THIS DOCUMENT + +This document is intended for persons who want to compile the MESONH model using the PHYEX package. +The installation described here is also needed in order to use the check\_commit\_mesonh.sh script which enable to check if a given commit reproduces a reference version. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -V geometry:landscape -s \<filename\>.md -o \<filename\>.pdf). + +The directory in which the repository lies is designated by the TRUNK variable. +The $TRUNK dir can be put on a shared directory to share this installation among several users. + +## COMPILATION OF THE MASTER + +An official version of Meso-Nh is installed in the pack directory: + +``` +cd $TRUNK/tools/pack +scp sxphynh.cnrm.meteo.fr:/home/rodierq/MNH-V5-5-0.tar.gz . #For MF users, can be retrieve on the Meso-NH website +tar xvfz MNH-V5-5-0.tar.gz +cd MNH-V5-5-0/src +./configure +. ../conf/profile_mesonh-* +make -j 8 +make installmaster +``` + +## PREPROCESSING STEPS FOR THE TEST CASE + +The preprocessing steps must be done at least once on the master pack: + +``` +cd ../MY_RUN/KTEST/007_16janvier +#The official namelist can be modified to enable more options +rm -Rf 008_run2; scp -r sxphynh.cnrm.meteo.fr:/home/rodierq/MNH-V5-5-0/MY_RUN/KTEST/007_16janvier/008_run2 . + +make clean +make #the step #10 succeed only if a isplay (X11) is available + #after the error, the next steps can be executed by "make E011_ncl E012_spectre" +``` + +## GET A MODIFIED PACK SUITABLE FOR PHYEX + +The master pack cannot be used directly to compile Meso-NH using PHYEX, the Makefile must be modified +``` +cd $TRUNK/pack +scp sxphynh.cnrm.meteo.fr:/home/rodierq/MNH-V5-5-0_PHYEX.tar.gz . +``` + +## MESONH COMPILATION WITH PHYEX + +To compile MESONH using the PHYEX package, some manipulation is needed. +The easiest way is to use the check\_commit\_mesonh.sh script. + +## COMPARISON OF SOME COMMITS +Some commits doesn't reproduce the reference commit but are comparable to the b1e20 commit. +If someone is interested in compiling this commit, the argument order of the functions DZM\_MF, MZM\_MF, GZ\_M\_W\_MF must be reversed in compute\_bl89\_ml, tridiag\_massflux.f90 and shuman\_mf.f90 diff --git a/tools/INSTALL_testprogs.md b/tools/INSTALL_testprogs.md new file mode 100644 index 0000000000000000000000000000000000000000..6429882e255ff00c15ec28bbea218a81824692cf --- /dev/null +++ b/tools/INSTALL_testprogs.md @@ -0,0 +1,17 @@ +# INSTALLATION NEEDED FOR THE TEST PROGRAMS + +## ABOUT THIS DOCUMENT + +This document is intended for persons who want to use the testprogs programs. +These programs need data. This document describes how to generate the data, the the programs can be used directly or through the check\_commit\_testprogs.sh script. + +This document is written using the markdown language. With pandoc, it can be converted to HTML (pandoc -s \<filename\>.md -o \<filename\>.html) or PDF (pandoc -s \<filename\>.md -o \<filename\>.pdf). + + +## DATA GENERATION + +Please, refer to the [Offline](../docs/Offline.md) documentation. + +## DATA INSTALLATION + +Once produced, the data must be put in the corresponding directories under tools/testprogs\_data. diff --git a/tools/check_commit_ial.sh b/tools/check_commit_ial.sh new file mode 100755 index 0000000000000000000000000000000000000000..2c025352d383b8f56880d280e98345bc775345e7 --- /dev/null +++ b/tools/check_commit_ial.sh @@ -0,0 +1,433 @@ +#!/bin/bash + +#set -x +set -e + +#This script: +# - compiles the AROME model using a specific commit for the externalised physics +# - runs a small 3D case and checks if results are identical to a given version + +#small_3D_np2: on only 2 procs +#small_3D_alt1: options around time-step dependency, CFRAC_ICE_*='T', CSEDIM='SPLI', LSEDIM_AFTER=.T. +#small_3D_alt2: CCLOUD='OLD3' +#small_3D_alt3: PRFR +#small_3D_alt4: small_3D_alt1 + CSNOWRIMING='OLD' +#small_3D_alt5: CCLOUD='ICE4' +#small_3D_alt6: CMF_UPDRAFT='RAHA', CMF_CLOUD='BIGA' +#small_3D_alt7: CMF_CLOUD='STAT', LOSIGMAS=.FALSE. #Needs 2 corrections in original cycle 48 +#small_3D_alt8: CMF_UPDRAFT='RHCJ' + +#The small_3D_alt8 is not included in the list of available tests because it needs to be compared against a special commit. +#Indeed, on 3 February 2022 (commit 907e906) the mesonh version of compute_updraft_rhcj.F90 has been put in the common directory. + +specialPack="ori split recompil" +availTests="small_3D,small_3D_np2,small_3D_alt1,small_3D_alt2,small_3D_alt3,small_3D_alt4,small_3D_alt5,small_3D_alt6,small_3D_alt7" +defaultTest="small_3D" +separator='_' #- be carrefull, gmkpack (at least on belenos) has multiple allergies (':', '.', '@') + #- seprator must be in sync with prep_code.sh separator + +PHYEXTOOLSDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +dirpack=$PHYEXTOOLSDIR/pack +dirconf=$PHYEXTOOLSDIR/conf_tests +if [ $(hostname | cut -c 1-7) == 'belenos' -o $(hostname | cut -c 1-7) == 'taranis' ]; then + HPC=1 + gmkpack_l=MIMPIIFC1805 + gmkpack_o=2y + defaultMainPackVersion=01 + defaultRef=split + availTests="${availTests},big_3D" +else + HPC=0 + gmkpack_l=MPIGFORTRAN920DBL + gmkpack_o=xfftw + defaultMainPackVersion=01 + defaultRef=split +fi +mainPackVersion=${mainPackVersion:-${defaultMainPackVersion}} + +extraCompilationCheck=1 + +function usage { + echo "Usage: $0 [-h] [-c] [-r] [-C] [-s] [-f] [--noexpand] [-t test] commit reference" + echo "commit commit hash (or a directory, or among $specialPack) to test" + echo "reference commit hash (or a directory, or among $specialPack) REF to use as a reference" + echo "-s suppress compilation pack" + echo "-c performs compilation" + echo "-r runs the tests" + echo "-C checks the result against the reference" + echo "-t comma separated list of tests to execute" + echo " or ALL to execute all tests" + echo "--noexpand do not use mnh_expand (code will be in array-syntax)" + echo "-f full compilation (do not use pre-compiled pack)" + echo "" + echo "If nothing is asked (compilation, running, check) everything is done" + echo + echo "With the special reference REF commit, a suitable reference is guessed" + echo + echo "If no test is aked for, the default one ($defaultTest) is executed" + echo + echo "The directory (for commit only, not ref) can take the form server:directory" + echo + echo "If using a directory (for commit or reference) it must contain at least one '/'" +} + +compilation=0 +run=0 +check=0 +commit="" +reference="" +tests="" +suppress=0 +useexpand=1 +fullcompilation=0 + +while [ -n "$1" ]; do + case "$1" in + '-h') usage;; + '-s') suppress=1;; + '-c') compilation=1;; + '-r') run=$(($run+1));; + '-C') check=1;; + '-t') tests="$2"; shift;; + '--noexpand') useexpand=0;; + '-f') fullcompilation=1;; + #--) shift; break ;; + *) if [ -z "${commit-}" ]; then + commit=$1 + else + if [ -z "${reference-}" ]; then + reference=$1 + else + echo "Only two commit hash allowed on command line" + exit 1 + fi + fi;; + esac + shift +done + +HOMEPACK=${HOMEPACK:=$HOME/pack} + +function exescript () { + #usage: exescript <output file> <script> [arg [arg ...]] + output=$1 + shift + if [ $HPC -eq 1 ]; then + sbatch --wait -o $output $@ + cat $output + else + $@ 2>&1 | tee $output + fi +} + +if [ -z "${tests-}" ]; then + tests=$defaultTest +elif [ $tests == 'ALL' ]; then + tests=$availTests +fi + +if [ $compilation -eq 0 -a \ + $run -eq 0 -a \ + $check -eq 0 ]; then + compilation=1 + run=1 + check=1 +fi + +if [ -z "${commit-}" ]; then + echo "At least one commit hash must be provided on command line" + exit 2 +fi + +if [ $check -eq 1 -a -z "${reference-}" ]; then + echo "To perform a comparison two commit hashes are mandatory on the command line" + exit 3 +fi + +#Name is choosen such as it can be produced with a main pack: PHYEX/48t1_XXXXXXXXX.01.${gmkpack_l}.${gmkpack_o} +fromdir='' +if echo $commit | grep '/' > /dev/null; then + fromdir=$commit + packBranch=$(echo $commit | sed 's/\//'${separator}'/g' | sed 's/:/'${separator}'/g' | sed 's/\./'${separator}'/g') + name="PHYEX/48t1_${packBranch}.01.${gmkpack_l}.${gmkpack_o}" + [ $suppress -eq 1 -a -d $HOMEPACK/$name ] && rm -rf $HOMEPACK/$name +elif echo $specialPack | grep -w $commit > /dev/null; then + name="PHYEX/$commit" +else + packBranch="COMMIT$commit" + name="PHYEX/48t1_${packBranch}.01.${gmkpack_l}.${gmkpack_o}" + [ $suppress -eq 1 -a -d $HOMEPACK/$name ] && rm -rf $HOMEPACK/$name +fi +if [ ! -z "${reference-}" ]; then + [ $reference == 'REF' ] && reference=$defaultRef + reffromdir='' + if echo $reference | grep '/' > /dev/null; then + reffromdir=$reference + refname="PHYEX/48t1_$(echo $reference | sed 's/\//'${separator}'/g' | sed 's/:/'${separator}'/g' | sed 's/\./'${separator}'/g').01.${gmkpack_l}.${gmkpack_o}" + elif echo $specialPack | grep -w $reference > /dev/null; then + refname="PHYEX/$reference" + else + refname="PHYEX/48t1_COMMIT${reference}.01.${gmkpack_l}.${gmkpack_o}" + fi +fi + +if [ $compilation -eq 1 ]; then + echo "### Compilation of commit $commit" + + if echo $specialPack | grep -w $commit > /dev/null; then + echo "Special commit '$commit' cannot be compiled with this script" + exit 4 + fi + + if [ -d $HOMEPACK/$name ]; then + echo "Pack already exists ($HOMEPACK/$name), suppress it to be able to compile it again (or use the -s option to automatically suppress it)" + exit 5 + fi + + export GMKTMP=/dev/shm + + if [ $fullcompilation == 0 ]; then + basepack=48t1_main.01.${gmkpack_l}.${gmkpack_o} + [ $HPC -eq 0 -a ! -d $ROOTPACK/$basepack ] && getpack $basepack + gmkpack -r 48t1 -b phyex -v $mainPackVersion -l ${gmkpack_l} -o ${gmkpack_o} -p masterodb \ + -f $dirpack/ \ + -u $name + reftree='main' + else + #Create main pack + gmkpack -a -r 48t1 -b ${packBranch} -n 01 -l ${gmkpack_l} -o ${gmkpack_o} -p masterodb -h $HOMEPACK/PHYEX + #Populate (we keep everything from the official source code except internals and module subdirectories of mpa) + cd $HOMEPACK/$name/src/local/ + if [ $HPC -eq 1 ]; then + ssh sxphynh.cnrm.meteo.fr "wget http://anonymous:mto@webdav.cnrm.meteo.fr/public/algo/khatib/src/48t1_main.01.tgz -O -" > 48t1_main.01.tgz + else + wget http://anonymous:mto@webdav.cnrm.meteo.fr/public/algo/khatib/src/48t1_main.01.tgz + fi + tar xf 48t1_main.01.tgz + rm -f 48t1_main.01.tgz + for rep in turb micro conv; do + mkdir -p phyex/$rep + rm -rf mpa/$rep/internals mpa/$rep/module + done + if [ -f /cnrm/algo/khatib/drhook.c_for_ubuntu.tar ]; then + #If file exists it means that we are running on a CTI computer, so we are using ubuntu + tar xf /cnrm/algo/khatib/drhook.c_for_ubuntu.tar + fi + #Special modification of the compilation configuration file and script + sed -i 's/-ftree-vectorize//' $HOMEPACK/$name/.gmkfile/${gmkpack_l}.* + sed -i "/MACROS_FRT/s/$/ -DREPRO48/" $HOMEPACK/$name/.gmkfile/${gmkpack_l}.* + #sed -i "s/PHYEX\/48t1_$$.01.${gmkpack_l}.${gmkpack_o}/$(echo $name | sed 's/\//\\\//')/" $HOMEPACK/$name/ics_masterodb #this line could be used if pack was renamed before compilation but it does not work on belenos + + resetpack -f #Is it really useful? + reftree='local' + fi + cd $HOMEPACK/$name/src/local/phyex + + MNH_EXPAND_DIR=$PHYEXTOOLSDIR/mnh_expand + export PATH=$MNH_EXPAND_DIR/filepp:$MNH_EXPAND_DIR/MNH_Expand_Array:$PATH + + if [ $useexpand == 1 ]; then + expand_options="-D MNH_EXPAND -D MNH_EXPAND_LOOP" + else + expand_options="" + fi + subs="-s gmkpack_ignored_files -s turb -s micro -s aux -s ext -s conv -s externals" #externals is the old name for aux/ext + prep_code=$PHYEXTOOLSDIR/prep_code.sh + if [ "$fromdir" == '' ]; then + echo "Clone repository, and checkout commit $commit (using prep_code.sh)" + if [[ $commit == arome${separator}* ]]; then + $prep_code -c $commit PHYEX #This commit is ready for inclusion + else + $prep_code -c $commit $expand_options $subs -m arome PHYEX + fi + else + echo "Copy $fromdir" + mkdir PHYEX + scp -q -r $fromdir/src PHYEX/ + $prep_code $expand_options $subs -m arome PHYEX + fi + find PHYEX -type f -exec touch {} \; #to be sure a recompilation occurs + for rep in turb micro conv aux; do + [ -d PHYEX/$rep ] && mv PHYEX/$rep . + done + if [ -f PHYEX/gmkpack_ignored_files ]; then + #gmkpack_ignored_files contains a list of file, present in the reference pack, that is not used anymore + #and must be excluded from compilation (in case of a full comilation) or from re-compilation (in case of a non-full + #compilation). + if [ $fullcompilation == 0 ]; then + #Content is added in the ics_masterodb script + sed -i "/^end_of_ignored_files/i $(first=1; for line in $(cat PHYEX/gmkpack_ignored_files); do echo -n $(test $first -ne 1 && echo \\n)${line}; first=0; done)" $HOMEPACK/$name/ics_masterodb + else + #Files must be suppressed (non phyex files) + for file in $(cat PHYEX/gmkpack_ignored_files); do + [ -f $HOMEPACK/$name/src/local/$file ] && rm -f $HOMEPACK/$name/src/local/$file + done + fi + fi + + EXT=PHYEX/ext/ + [ ! -d $EXT ] && EXT=PHYEX/externals #old name for ext/aux + if [ -d $EXT ]; then + #Move manually files outside of mpa (a find on the whole repository would take too much a long time) + [ -f $EXT/yomparar.F90 ] && mv $EXT/yomparar.F90 ../arpifs/module/ + [ -f $EXT/namparar.nam.h ] && mv $EXT/namparar.nam.h ../arpifs/namelist + [ -f $EXT/suparar.F90 ] && mv $EXT/suparar.F90 ../arpifs/phys_dmn/ + [ -f $EXT/apl_arome.F90 ] && mv $EXT/apl_arome.F90 ../arpifs/phys_dmn/ + [ -f $EXT/suphmpa.F90 ] && mv $EXT/suphmpa.F90 ../arpifs/phys_dmn/ + #Special mpa case + [ -f $EXT/modd_spp_type.F90 ] && mv $EXT/modd_spp_type.F90 ../mpa/micro/externals/ + [ -d $EXT/dead_code ] && rm -rf $EXT/dead_code/ + if [ $EXT == "PHYEX/externals" ]; then + mv $EXT . + else + #Move automatically all codes under mpa + for file in $EXT/*; do + extname=`basename $file` + loc=`find ../../$reftree/mpa/ -name $extname | sed "s/\/$reftree\//\/local\//g"` + nb=`echo $loc | wc -w` + if [ $nb -ne 1 ]; then + echo "Don't know where $file must be moved, none or several places found!" + exit 9 + fi + mv $file $loc + done + fi + fi + rm -rf PHYEX + + cd $HOMEPACK/$name + sed -i 's/GMK_THREADS=1/GMK_THREADS=10/' ics_masterodb + cleanpack -f + + exescript Output_compilation ics_masterodb + if [ $extraCompilationCheck -eq 1 -a \ + -f bin/MASTERODB \ + -a $(grep Error Output_compilation | \ + grep -v TestErrorHandler | \ + grep -v "'Error" | \ + grep -v "'CPLNG: Error" | \ + grep -v '"Error' | \ + grep -v "'*** Error" | wc -l) -ne 0 ]; then + echo "MASTERODB was produced but errors occured during compilation:" + grep Error Output_compilation | \ + grep -v TestErrorHandler | \ + grep -v "'Error" | \ + grep -v "'CPLNG: Error" | \ + grep -v '"Error' | \ + grep -v "'*** Error" + echo "MASTERODB suppressed!" + rm -f bin/MASTERODB + fi +fi + +if [ $run -ge 1 ]; then + echo "### Running of commit $commit" + + if [ ! -f $HOMEPACK/$name/bin/MASTERODB ]; then + echo "Pack does not exist ($HOMEPACK/$name) or compilation has failed, please check" + exit 6 + fi + + #Cleaning to suppress old results that may be confusing in case of a crash during the run + for t in $(echo $tests | sed 's/,/ /g'); do + cd $HOMEPACK/$name + if [ -d conf_tests/$t ]; then + rm -rf conf_tests/$t + fi + done + + #Run the tests one after the other + for t in $(echo $tests | sed 's/,/ /g'); do + cd $HOMEPACK/$name + mkdir -p conf_tests/$t + cd conf_tests/$t + MYLIB=$name TESTDIR=$dirconf/$t exescript Output_run $dirconf/$t/aro48t1.sh + done +fi + +if [ $check -eq 1 ]; then + echo "### Check commit $commit against commit $reference" + + allt=0 + message="" + filestocheck="" + for t in $(echo $tests | sed 's/,/ /g'); do + if echo $t | grep 'small' > /dev/null; then + filestocheck="$filestocheck ${t},conf_tests/$t/ICMSHFPOS+0002:00 ${t},conf_tests/$t/DHFDLFPOS+0002" + else + filestocheck="$filestocheck ${t},conf_tests/$t/NODE.001_01" + fi + done + for tag_file in $filestocheck; do + tag=$(echo $tag_file | cut -d, -f1) + file=$(echo $tag_file | cut -d, -f2) + file1=$HOMEPACK/$name/$file + file2=$HOMEPACK/$refname/$file + + mess="" + t=0 + if [ ! -f "$file1" ]; then + mess="Result ($file1) for commit $commit does not exist, please run the simulation" + t=1 + fi + if [ ! -f "$file2" ]; then + mess2="Result ($file2) for commit $reference does not exist, please run the simulation" + t=1 + if [ "$mess" = "" ]; then + mess=$mess2 + else + mess="$mess and $mess2" + fi + fi + if [ $t -eq 0 ]; then + if [ $(basename $file) == ICMSHFPOS+0002:00 ]; then + #historic files + cmd="cmp $file1 $file2 256 256" + output='stderr' + elif [ $(basename $file) == DHFDLFPOS+0002 ]; then + #DDH files + ddh_images="$HOMEPACK/$name/ddh_diff_${tag}.png" + if [ `hostname` == 'sxphynh' ]; then + [ ! -d /d0/images/$USER ] && mkdir /d0/images/$USER + ddh_images="$ddh_images /d0/images/$USER/ddh_diff_${tag}.png" + fi + cmd="$PHYEXTOOLSDIR/comp_DDH.py" + if [ ! -x $cmd ]; then + echo "Command not found: \"$cmd\"" + exit 10 + fi + cmd="$cmd $file1 $file2 $ddh_images" + output='stdout' + elif [ $(basename $file) == NODE.001_01 ]; then + #Output listing + cmd="$PHYEXTOOLSDIR/diffNODE.001_01" + if [ ! -x $cmd ]; then + echo "Command not found: \"$cmd\"" + exit 11 + fi + cmd="$cmd $file1 $file2 --norm-max-diff=0." + output='stdout' + else + cmd="cmp $file1 $file2" + output='stderr' + fi + set +e + if [ $output == 'stderr' ]; then + mess=$($cmd 2>&1) + else + mess=$($cmd 2>/dev/null) + fi + t=$? + set -e + fi + [ $t -ne 0 ] && message="$message $file : $mess \n" + allt=$(($allt+$t)) + done + if [ $allt -eq 0 ]; then + echo "SUCCESS, files are (nearly) identical" + else + echo "*************** Files are different *******************" + echo -e "$message" + fi +fi diff --git a/tools/check_commit_mesonh.sh b/tools/check_commit_mesonh.sh new file mode 100755 index 0000000000000000000000000000000000000000..dcd9ef33f0bc9014942ac59c17e8eb4f3945c71f --- /dev/null +++ b/tools/check_commit_mesonh.sh @@ -0,0 +1,427 @@ +#!/bin/bash + +#set -x +set -e + +# Repertoire où Mesonh MNH-V5-5-0 officiel est installe +#REFDIR=$HOME +# Repertoire où MNH-V5-5-0_PHYEX.tar.gz modifie pour accueillir PHYEX se trouve +#TARGZDIR=$HOME + +availTests="007_16janvier/008_run2, 007_16janvier/008_run2_turb3D, COLD_BUBBLE/002_mesonh, ARMLES/RUN, COLD_BUBBLE_3D/002_mesonh," +defaultTest="007_16janvier/008_run2" +separator='_' #- be carrefull, gmkpack (at least on belenos) has multiple allergies (':', '.', '@') + #- seprator must be in sync with prep_code.sh separator + +PHYEXTOOLSDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +function usage { + echo "Usage: $0 [-h] [-c] [-r] [-C] [-s] [--expand] [-t test] commit reference" + echo "commit commit hash (or a directory)" + echo "reference commit hash or a directory or nothing for ref" + echo "-s suppress compilation pack" + echo "-c performs compilation" + echo "-r runs the tests" + echo "-C checks the result against the reference" + echo "-t comma separated list of tests to execute" + echo " or ALL to execute all tests" + echo "--expand use mnh_expand (code will use do loops)" + echo "" + echo "If nothing is asked (compilation, running, check) everything is done" + echo + echo "If no test is aked for, the default on ($defaultTest) is executed" + echo + echo "The directory (for commit only, not ref) can take the form server:directory" + echo + echo "If using a directory (for commit or reference) it must contain at least one '/'" +} + +compilation=0 +run=0 +check=0 +commit="" +reference="" +tests="" +suppress=0 +useexpand=0 + +while [ -n "$1" ]; do + case "$1" in + '-h') usage;; + '-s') suppress=1;; + '-c') compilation=1;; + '-r') run=$(($run+1));; + '-C') check=1;; + '-t') tests="$2"; shift;; + '--expand') useexpand=1;; + #-b) param="$2"; shift ;; + #--) shift; break ;; + *) if [ -z "${commit-}" ]; then + commit=$1 + else + if [ -z "${reference-}" ]; then + reference=$1 + else + echo "Only two commit hash allowed on command line" + exit 1 + fi + fi;; + esac + shift +done + +[ "$reference" == 'REF' ] && reference="" #Compatibility with check_commit_arome.sh + +MNHPACK=${MNHPACK:=$HOME/MesoNH/PHYEX} +REFDIR=${REFDIR:=$PHYEXTOOLSDIR/pack/} +TARGZDIR=${TARGZDIR:=$PHYEXTOOLSDIR/pack/} +if [ -z "${tests-}" ]; then + tests=$defaultTest +elif [ $tests == 'ALL' ]; then + tests=$availTests +fi + +if [ $compilation -eq 0 -a \ + $run -eq 0 -a \ + $check -eq 0 ]; then + compilation=1 + run=1 + check=1 +fi + +if [ -z "${commit-}" ]; then + echo "At least one commit hash must be provided on command line" + exit 2 +fi + +#Two possibilities are supported for the simulations +# - they can be done in the the pack we are currently checking +# - they can be done in the reference pack +#They are done in the current pack except if the reference pack +#already contains a tested simulation +run_in_ref=$(ls -d $REFDIR/MNH-V5-5-0/MY_RUN/KTEST/007_16janvier/008_run2_* 2> /dev/null | tail -1 |wc -l) + +#Name and directory for compiling and executing user pack +fromdir='' +if echo $commit | grep '/' > /dev/null; then + fromdir=$commit + tag=$(echo $commit | sed 's/\//'${separator}'/g' | sed 's/:/'${separator}'/g' | sed 's/\./'${separator}'/g') +else + tag=$commit +fi +name=MNH-V5-5-0-$tag +[ $suppress -eq 1 -a -d $MNHPACK/$name ] && rm -rf $MNHPACK/$name +if [ $run_in_ref -eq 1 ]; then + path_user_beg=$REFDIR/MNH-V5-5-0 #pack directory containing the simulation + path_user_end=_$tag #to be appended to the 'run' simulation directory +else + path_user_beg=$MNHPACK/$name #pack directory containing the simulation + path_user_end= #to be appended to the 'run' simulation directory +fi + +#Name and directory for the reference +reffromdir='' +if echo $reference | grep '/' > /dev/null; then + reffromdir=$reference + reftag=$(echo $reference | sed 's/\//'${separator}'/g' | sed 's/:/'${separator}'/g' | sed 's/\./'${separator}'/g') +else + reftag=$reference +fi +refname=MNH-V5-5-0-$reftag +if [ $run_in_ref -eq 1 ]; then + path_ref_beg=$REFDIR/MNH-V5-5-0 + if [ "$reference" == "" ]; then + path_ref_end= + else + path_ref_end=_$reftag + fi +else + path_ref_end= + if [ "$reference" == "" ]; then + path_ref_beg=$REFDIR/MNH-V5-5-0 + else + path_ref_beg=$MNHPACK/MNH-V5-5-0-$reftag + fi +fi + +if [ $compilation -eq 1 ]; then + echo "### Compilation of commit $commit" + + if [ -d $MNHPACK/$name ]; then + echo "Pack already exists ($MNHPACK/$name), suppress it to be able to compile it again (or use the -s option to automatically suppress it)" + exit 5 + fi + + # Prepare the pack + cd $MNHPACK + cp $TARGZDIR/MNH-V5-5-0_PHYEX.tar.gz . + tar xfz MNH-V5-5-0_PHYEX.tar.gz + rm MNH-V5-5-0_PHYEX.tar.gz + mv MNH-V5-5-0 $name + cd $name/src + rm -rf PHYEX + + MNH_EXPAND_DIR=$PHYEXTOOLSDIR/mnh_expand + export PATH=$MNH_EXPAND_DIR/filepp:$MNH_EXPAND_DIR/MNH_Expand_Array:$PATH + + if [ $useexpand == 1 ]; then + expand_options="-D MNH_EXPAND -D MNH_EXPAND_LOOP" + else + expand_options="" + fi + subs="-s turb -s micro -s aux -s ext -s conv" + prep_code=$PHYEXTOOLSDIR/prep_code.sh + if [ "$fromdir" == '' ]; then + echo "Clone repository, and checkout commit $commit (using prep_code.sh)" + if [[ $commit == mesonh${separator}* ]]; then + $prep_code --renameFf -c $commit PHYEX #This commit is ready for inclusion + else + $prep_code --renameFf -c $commit $expand_options $subs -m mesonh PHYEX + fi + else + echo "Copy $fromdir" + mkdir PHYEX + scp -q -r $fromdir/src PHYEX/ + $prep_code --renameFf $expand_options $subs -m mesonh PHYEX + fi + rm -rf PHYEX/.git + find PHYEX -type f -exec touch {} \; #to be sure a recompilation occurs + + # Move manually ext/ files in src/MNH + if [ -d PHYEX/ext ]; then + mv -f PHYEX/ext/* MNH/ + rmdir PHYEX/ext + fi + + cd $MNHPACK/$name/src/PHYEX/turb + # Delete files of MNH-V5-5-0/src/MNH and MNH/src/LIB/SURCOUCHE/src with same name + for rep in turb micro conv aux ; do + cd ../$rep + for f in *.f90; do + echo $f + rm -f ../../MNH/$f + rm -f ../../LIB/SURCOUCHE/src/$f + done + done + cd .. + + # Delete old files of MNH-V5-5-0/src/MNH that is now called by mode_... NO /aux NEEDED! + find turb micro conv -name 'mode_*' > remove_non_mode.sh + sed -i 's/turb\/mode_/rm -f MNH\//g' remove_non_mode.sh + sed -i 's/micro\/mode_/rm -f MNH\//g' remove_non_mode.sh + sed -i 's/conv\/mode_/rm -f MNH\//g' remove_non_mode.sh + chmod +x remove_non_mode.sh + mv remove_non_mode.sh ../. + cd ../ + ./remove_non_mode.sh + # nettoyage, routines non appellees : + rm -f MNH/mf_turb_greyzone.f90 + rm -f MNH/compute_frac_ice.f90 + rm -f MNH/rain_ice_red.f90 + # Supress some files if they are not used anymore + ! grep -i MODI_COMPUTE_ENTR_DETR $(ls MNH/*compute_updraft* PHYEX/turb/*compute_updraft* 2>/dev/null) && rm -f MNH/compute_entr_detr.f90 + ! grep -i MODI_TH_R_FROM_THL_RT_ $(ls MNH/compute_entr_detr.f90 MNH/compute_entr_detr.f90 PHYEX/turb/mode_compute_updraft*.f90 MNH/ice_adjust_bis.f90 MNH/prep_ideal_case.f90 MNH/set_rsou.f90 2>/dev/null) > /dev/null && rm -f MNH/th_r_from_thl_rt_1d.f90 MNH/th_r_from_thl_rt_2d.f90 MNH/th_r_from_thl_rt_3d.f90 + # Routine that changed names (if mode_budget.f90 is present) + set +e + mv -f PHYEX/aux/mode_budget.f90 MNH/budget.f90 + set -e + + #Configure and compilation + command -v module && modulelist=$(module -t list 2>&1 | tail -n +2) #save loaded modules + ./configure + set +e #file ends with a test that can return false + . ../conf/profile_mesonh-* #This lines modifies the list of loaded modules + set -e + make -j 8 | tee ../Output_compilation + make installmaster | tee -a ../Output_compilation + command -v module && module load $modulelist #restore loaded modules +fi + +if [ $run -ge 1 ]; then + echo "### Running of commit $commit" + + if [ ! -f $MNHPACK/$name/exe/MESONH* ]; then + echo "Pack does not exist ($MNHPACK/$name) or compilation has failed, please check" + exit 6 + fi + + for t in $(echo $tests | sed 's/,/ /g'); do + case=$(echo $t | cut -d / -f 1) + exedir=$(echo $t | cut -d / -f 2) + if [ $run_in_ref -eq 1 ]; then + cd $REFDIR/MNH-V5-5-0/MY_RUN/KTEST/$case/ + [ ! -d ${exedir}_$commit ] && cp -R ${exedir} ${exedir}_$commit + cd $REFDIR/MNH-V5-5-0/MY_RUN/KTEST/$case/${exedir}_$commit + else + cd $MNHPACK/$name/MY_RUN/KTEST/$case/ + for rep in ???_*; do + if [ $rep != ${exedir} ]; then + rm -rf $rep + ln -s $REFDIR/MNH-V5-5-0/MY_RUN/KTEST/$case/$rep . + fi + done + [ -d ${exedir} ] && rm -rf ${exedir} + cp -R $REFDIR/MNH-V5-5-0/MY_RUN/KTEST/$case/${exedir} . + cd ${exedir} + fi + + set +e #file ends with a test that can return false + [ $compilation -eq 0 ] && . $MNHPACK/$name/conf/profile_mesonh-* + set -e + ./clean_mesonh_xyz + ./run_mesonh_xyz | tee Output_run + done +fi + +if [ $check -eq 1 ]; then + echo "### Check commit $commit against commit $reference" + + allt=0 + for t in $(echo $tests | sed 's/,/ /g'); do + case=$(echo $t | cut -d / -f 1) + exedir=$(echo $t | cut -d / -f 2) + if [ $t == 007_16janvier/008_run2 ]; then + path_user=$path_user_beg/MY_RUN/KTEST/007_16janvier/008_run2$path_user_end + path_ref=$path_ref_beg/MY_RUN/KTEST/007_16janvier/008_run2$path_ref_end + elif [ $t == 007_16janvier/008_run2_turb3D ]; then + path_user=$path_user_beg/MY_RUN/KTEST/007_16janvier/008_run2_turb3D$path_user_end + path_ref=$path_ref_beg/MY_RUN/KTEST/007_16janvier/008_run2_turb3D$path_ref_end + elif [ $t == COLD_BUBBLE/002_mesonh ]; then + path_user=$path_user_beg/MY_RUN/KTEST/COLD_BUBBLE/002_mesonh$path_user_end + path_ref=$path_ref_beg/MY_RUN/KTEST/COLD_BUBBLE/002_mesonh$path_ref_end + elif [ $t == COLD_BUBBLE_3D/002_mesonh ]; then + path_user=$path_user_beg/MY_RUN/KTEST/COLD_BUBBLE_3D/002_mesonh$path_user_end + path_ref=$path_ref_beg/MY_RUN/KTEST/COLD_BUBBLE_3D/002_mesonh$path_ref_end + elif [ $t == ARMLES/RUN ]; then + path_user=$path_user_beg/MY_RUN/KTEST/ARMLES/RUN$path_user_end + path_ref=$path_ref_beg/MY_RUN/KTEST/ARMLES/RUN$path_ref_end + else + echo "cas $t non reconnu" + fi + + if [ ! -d $path_user ]; then + echo "$path_user is missing, please run the simulation" + exit 7 + fi + if [ ! -d $path_ref ]; then + echo "$path_ref is missing, please run the reference simulation" + exit 8 + fi + + if [ $case == 007_16janvier ]; then + echo "Compare with python..." + # Compare variable of both Synchronous and Diachronic files with printing difference + file1=$path_user/16JAN.1.12B18.001.nc + file2=$path_ref/16JAN.1.12B18.001.nc + file3=$path_user/16JAN.1.12B18.000.nc + file4=$path_ref/16JAN.1.12B18.000.nc + set +e + $PHYEXTOOLSDIR/compare.py --f1 $file1 --f2 $file2 --f3 $file3 --f4 $file4 + t=$? + set -e + allt=$(($allt+$t)) + + #Check bit-repro before date of creation of Synchronous file from ncdump of all values (pb with direct .nc file checks) + echo "Compare with ncdump..." + if [ -f $file1 -a -f $file2 ]; then + set +e + diff <(ncdump $file1 | head -c 62889) <(ncdump $file2 | head -c 62889) + t=$? + set -e + allt=$(($allt+$t)) + else + [ ! -f $file1 ] && echo " $file1 is missing" + [ ! -f $file2 ] && echo " $file2 is missing" + allt=$(($allt+1)) + fi + fi + + if [ $case == COLD_BUBBLE ]; then + echo "Compare with python..." + # Compare variable of both Synchronous files with printing difference + file1=$path_user/BUBBL.1.CEN4T.001.nc + file2=$path_ref/BUBBL.1.CEN4T.001.nc + set +e + $PHYEXTOOLSDIR/compare.py --f1 $file1 --f2 $file2 + t=$? + set -e + allt=$(($allt+$t)) + + #Check bit-repro before date of creation of Synchronous file from ncdump of all values (pb with direct .nc file checks) + echo "Compare with ncdump..." + if [ -f $file1 -a -f $file2 ]; then + set +e + diff <(ncdump $file1 | head -c 27300) <(ncdump $file2 | head -c 27300) + t=$? + set -e + allt=$(($allt+$t)) + else + [ ! -f $file1 ] && echo " $file1 is missing" + [ ! -f $file2 ] && echo " $file2 is missing" + allt=$(($allt+1)) + fi + fi + + if [ $case == COLD_BUBBLE_3D ]; then + echo "Compare with python..." + # Compare variable of both Synchronous and Diachronic files with printing difference + file1=$path_user/BUBBL.1.CEN4T.001.nc + file2=$path_ref/BUBBL.1.CEN4T.001.nc + file3=$path_user/BUBBL.1.CEN4T.000.nc + file4=$path_ref/BUBBL.1.CEN4T.000.nc + set +e + $PHYEXTOOLSDIR/compare.py --f1 $file1 --f2 $file2 --f3 $file3 --f4 $file4 + t=$? + set -e + allt=$(($allt+$t)) + + #Check bit-repro before date of creation of Synchronous file from ncdump of all values (pb with direct .nc file checks) + echo "Compare with ncdump..." + if [ -f $file1 -a -f $file2 ]; then + set +e + diff <(ncdump $file1 | head -c 27300) <(ncdump $file2 | head -c 27300) + t=$? + set -e + allt=$(($allt+$t)) + else + [ ! -f $file1 ] && echo " $file1 is missing" + [ ! -f $file2 ] && echo " $file2 is missing" + allt=$(($allt+1)) + fi + fi + + if [ $case == ARMLES ]; then + echo "Compare with python..." + # Compare variable of both Synchronous and Diachronic files with printing difference + file1=$path_user/ARM__.1.CEN4T.001.nc + file2=$path_ref/ARM__.1.CEN4T.001.nc + file3=$path_user/ARM__.1.CEN4T.000.nc + file4=$path_ref/ARM__.1.CEN4T.000.nc + set +e + $PHYEXTOOLSDIR/compare.py --f1 $file1 --f2 $file2 --f3 $file3 --f4 $file4 + t=$? + set -e + allt=$(($allt+$t)) + + #Check bit-repro before date of creation of Synchronous file from ncdump of all values (pb with direct .nc file checks) + echo "Compare with ncdump..." + if [ -f $file1 -a -f $file2 ]; then + set +e + diff <(ncdump $file1 | head -c 62889) <(ncdump $file2 | head -c 62889) + t=$? + set -e + allt=$(($allt+$t)) + else + [ ! -f $file1 ] && echo " $file1 is missing" + [ ! -f $file2 ] && echo " $file2 is missing" + allt=$(($allt+1)) + fi + fi + done + + if [ $allt -eq 0 ]; then + status="OK" + else + status="Files are different" + fi + echo "...comparison done: $status" +fi diff --git a/tools/check_commit_testprogs.sh b/tools/check_commit_testprogs.sh new file mode 100755 index 0000000000000000000000000000000000000000..ceb4b57e753d6914d040cdd251a1169569a705f6 --- /dev/null +++ b/tools/check_commit_testprogs.sh @@ -0,0 +1,256 @@ +#!/bin/bash + +#set -x +set -e + +#This script: +# - compiles the PHYEX package using a specific commit +# - runs the different test progs and checks if results are identical to a given version + +#ice_adjust: the ice adjust test case + +specialName="ref" +availTests="ice_adjust,rain_ice" +defaultTest='ALL' +separator='_' #- seprator must be in sync with prep_code.sh separator + +PHYEXTOOLSDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +dirdata=$PHYEXTOOLSDIR/testprogs_data +if [ $(hostname | cut -c 1-7) == 'belenos' -o $(hostname | cut -c 1-7) == 'taranis' ]; then + HPC=1 + archfile=MIMPIIFC1805.EPONA +else + HPC=0 + archfile=gnu +fi +defaultRef=ref + +function usage { + echo "Usage: $0 [-h] [-c] [-r] [-C] [-s] [-f] [--noexpand] [-t test] commit reference" + echo "commit commit hash (or a directory, or among $specialName) to test" + echo "reference commit hash (or a directory, or among $specialName) REF to use as a reference" + echo "-s suppress compilation pack" + echo "-c performs compilation" + echo "-r runs the tests" + echo "-C checks the result against the reference" + echo "-t comma separated list of tests to execute" + echo " or ALL to execute all tests" + echo "--noexpand do not use mnh_expand (code will be in array-syntax)" + echo "" + echo "If nothing is asked (compilation, running, check) everything is done" + echo + echo "With the special reference REF commit, a suitable reference is guessed" + echo + echo "If no test is aked for, the default one ($defaultTest) is executed" + echo + echo "The directory (for commit only, not ref) can take the form server:directory" + echo + echo "If using a directory (for commit or reference) it must contain at least one '/'" +} + +compilation=0 +run=0 +check=0 +commit="" +reference="" +tests="" +suppress=0 +useexpand=1 + +while [ -n "$1" ]; do + case "$1" in + '-h') usage;; + '-s') suppress=1;; + '-c') compilation=1;; + '-r') run=$(($run+1));; + '-C') check=1;; + '-t') tests="$2"; shift;; + '--noexpand') useexpand=0;; + #--) shift; break ;; + *) if [ -z "${commit-}" ]; then + commit=$1 + else + if [ -z "${reference-}" ]; then + reference=$1 + else + echo "Only two commit hash allowed on command line" + exit 1 + fi + fi;; + esac + shift +done + +TESTDIR=${TESTPROGSDIR:=$HOME/TESTPROGS} + +function exescript () { + #usage: exescript <output file> <script> [arg [arg ...]] + output=$1 + shift + if [ $HPC -eq 1 ]; then + sbatch --wait -o $output $@ + cat $output + else + $@ 2>&1 | tee $output + fi +} + +if [ -z "${tests-}" ]; then + tests=$defaultTest +fi +if [ $tests == 'ALL' ]; then + tests=$availTests +fi + +if [ $compilation -eq 0 -a \ + $run -eq 0 -a \ + $check -eq 0 ]; then + compilation=1 + run=1 + check=1 +fi + +if [ -z "${commit-}" ]; then + echo "At least one commit hash must be provided on command line" + exit 2 +fi + +if [ $check -eq 1 -a -z "${reference-}" ]; then + echo "To perform a comparison two commit hashes are mandatory on the command line" + exit 3 +fi + +#Name is choosen such as it can be produced with a main pack: PHYEX/48t1_XXXXXXXXX.01.${gmkpack_l}.${gmkpack_o} +fromdir='' +if echo $commit | grep '/' > /dev/null; then + fromdir=$commit + name=$(echo $commit | sed 's/\//'${separator}'/g' | sed 's/:/'${separator}'/g' | sed 's/\./'${separator}'/g') + [ $suppress -eq 1 -a -d $TESTDIR/$name ] && rm -rf $TESTDIR/$name +elif echo $specialName | grep -w $commit > /dev/null; then + name="$commit" +else + name="COMMIT$commit" + [ $suppress -eq 1 -a -d $TESTDIR/$name ] && rm -rf $TESTDIR/$name +fi +if [ ! -z "${reference-}" ]; then + [ $reference == 'REF' ] && reference=$defaultRef + reffromdir='' + if echo $reference | grep '/' > /dev/null; then + reffromdir=$reference + refname=$(echo $reference | sed 's/\//'${separator}'/g' | sed 's/:/'${separator}'/g' | sed 's/\./'${separator}'/g') + elif echo $specialName | grep -w $reference > /dev/null; then + refname="$reference" + else + refname="COMMIT${reference}" + fi +fi + +if [ $compilation -eq 1 ]; then + echo "### Compilation of commit $commit" + + if echo $specialName | grep -w $commit > /dev/null; then + echo "Special commit '$commit' cannot be compiled with this script" + exit 4 + fi + + if [ -d $TESTDIR/$name ]; then + echo "Pack already exists ($TESTDIR/$name), suppress it to be able to compile it again (or use the -s option to automatically suppress it)" + exit 5 + fi + mkdir $TESTDIR/$name + cd $TESTDIR/$name/ + + MNH_EXPAND_DIR=$PHYEXTOOLSDIR/mnh_expand + export PATH=$MNH_EXPAND_DIR/filepp:$MNH_EXPAND_DIR/MNH_Expand_Array:$PATH + + if [ $useexpand == 1 ]; then + expand_options="-D MNH_EXPAND -D MNH_EXPAND_LOOP" + else + expand_options="" + fi + subs="$subs -s turb -s micro -s aux -s ice_adjust" + prep_code=$PHYEXTOOLSDIR/prep_code.sh + if [ "$fromdir" == '' ]; then + echo "Clone repository, and checkout commit $commit (using prep_code.sh)" + $prep_code -c $commit $expand_options $subs src + else + echo "Copy $fromdir" + mkdir src + scp -q -r $fromdir/src src/ + scp -q -r $fromdir/build src/ + $prep_code $expand_options $subs src + fi + + cd $TESTDIR/$name/src/build/with_fcm/ + rm -rf arch_* + ./make_fcm.sh --arch $archfile 2>&1 | tee Output_compilation +fi + +if [ $run -ge 1 ]; then + echo "### Running of commit $commit" + + for t in $(echo $tests | sed 's/,/ /g'); do + if [ ! -f $TESTDIR/$name/src/build/with_fcm/arch_${archfile}/build/bin/main_${t}.exe ]; then + echo "Pack does not exist ($TESTDIR/$name) or compilation has failed, please check" + exit 6 + fi + done + + #Cleaning to suppress old results that may be confusing in case of a crash during the run + for t in $(echo $tests | sed 's/,/ /g'); do + cd $TESTDIR/$name + if [ -d tests/$t ]; then + rm -rf tests/$t + fi + done + + #Run the tests one after the other + for t in $(echo $tests | sed 's/,/ /g'); do + cd $TESTDIR/$name + mkdir -p tests/$t + cd tests/$t + ln -s $dirdata/$t data + $TESTDIR/$name/src/build/with_fcm/arch_${archfile}/build/bin/main_${t}.exe --check 2>&1 > Output_run + done +fi + +if [ $check -eq 1 ]; then + echo "### Check commit $commit against commit $reference" + + alltests=0 + message="" + for t in $(echo $tests | sed 's/,/ /g'); do + file1=$TESTDIR/$name/tests/$t/Output_run + file2=$TESTDIR/$refname/tests/$t/Output_run + mess="" + te=0 + if [ ! -f "$file1" ]; then + mess="Result ($file1) for commit $commit does not exist, please run the simulation" + te=1 + fi + if [ ! -f "$file2" ]; then + mess2="Result ($file2) for commit $reference does not exist, please run the simulation" + te=1 + if [ "$mess" = "" ]; then + mess=$mess2 + else + mess="$mess and $mess2" + fi + fi + if [ $te -eq 0 ]; then + set +e + mess=$(cmp $file1 $file2 246 246 2>&1) + te=$? + set -e + fi + [ $te -ne 0 ] && message="$message $mess \n" + alltests=$(($alltests+$te)) + done + if [ $alltests -eq 0 ]; then + echo "SUCCESS, files are identical" + else + echo "*************** Files are different *******************" + echo -e "$message" + fi +fi diff --git a/tools/comp_DDH.py b/tools/comp_DDH.py new file mode 100755 index 0000000000000000000000000000000000000000..ea0b116e8d9e8ad3e3745d68959aee99ba0074d6 --- /dev/null +++ b/tools/comp_DDH.py @@ -0,0 +1,81 @@ +#!/usr/bin/env python3 + +import matplotlib +matplotlib.use('Agg') +import os +import shutil +import epygram +import numpy +import matplotlib.pyplot as plt +epygram.init_env() + +def comp_DDH(filename1, filename2, output_fig, tol_ad=1.2E-7, tol_rd=1.E-6, verbose=False): + r1 = epygram.formats.resource(filename1, 'r') + r2 = epygram.formats.resource(filename2, 'r') + + l1 = set(r1.listfields()) + l2 = set(r2.listfields()) + pb_var = len(l1.symmetric_difference(l2)) != 0 + + def comp(fid, v1, v2): + t = numpy.all(v1 == v2) + toplt = False + if not t: + if verbose: print(fid, ':') + for i in range(len(v1)): + if v1[i] - v2[i] != 0.: + ad = v1[i] - v2[i] + rd = 200 * (v1[i] - v2[i]) / (v1[i] + v2[i]) + if verbose: print(" v1={v1}, v2={v2}, diff={ad}, rdiff={rd}".format(v1=v1[i], v2=v2[i], ad=ad, rd=rd)) + if abs(ad) > tol_ad and abs(rd) > tol_rd: toplt = True + return fid if toplt else None + toplt = [] + for fid in l1.intersection(l2): + v1 = r1.readfield(fid) + v2 = r2.readfield(fid) + if isinstance(v1, epygram.base.FieldSet): + for i in range(len(v1)): #fieldset + toplt.append(comp(fid, v1[i].getdata(), v2[i].getdata())) + else: + toplt.append(comp(fid, v1.getdata(), v2.getdata())) + toplt = [fid for fid in toplt if fid is not None] + pb_val = len(toplt) > 0 + if pb_val: + figure, ax = plt.subplots(ncols=len(toplt), figsize=(5 * len(toplt), 10), squeeze=False) + ax = ax[0, :] + figure.suptitle(filename1 + ' ' + filename2) + for ifid, fid in enumerate(toplt): + v1 = r1.readfield(fid) + v2 = r2.readfield(fid) + assert(len(v1) == len(v2)) + for i in range(len(v1)): #fieldset + ad = v1[i].getdata() - v2[i].getdata() + ax[ifid].plot(v1[i].getdata(), v1[i].geometry.vcoordinate.levels, label='v1') + ax[ifid].plot(v2[i].getdata(), v2[i].geometry.vcoordinate.levels, label='v2') + ax[ifid].legend() + ax[ifid].twiny().plot(ad, v1[i].geometry.vcoordinate.levels, label='diff', color='black', ls=':') + ad = numpy.abs(ad) + rd = (200 * numpy.abs(v1[i].getdata() - v2[i].getdata()) / numpy.abs(v1[i].getdata() + v2[i].getdata())) + rd = rd[ad != 0.].max() + ad = ad.max() + ax[ifid].set_title("{fid}:\nmax_ad={ad}\nmax_rd={rd}%".format(fid=fid, ad=ad, rd=rd)) + figure.savefig(output_fig[0]) + for filename in output_fig[1:]: + shutil.copyfile(output_fig[0], filename) + if pb_var and pb_val: + message = "Variables are different and values of common variables are also different" + elif pb_var: + message = "Variables are different but values of common variables are equal" + elif pb_val: + message = "Values are different" + else: + message = "" + if pb_val: + message += ", plot is available in the folowing file(s): " + ', '.join(output_fig) + + print(message) + return 1 if pb_var or pb_val else 0 + +if __name__ == '__main__': + import sys + sys.exit(comp_DDH(sys.argv[1], sys.argv[2], sys.argv[3:])) diff --git a/tools/compare.py b/tools/compare.py new file mode 100755 index 0000000000000000000000000000000000000000..7d335da9545d0e9ab2a11e5b061346e218683e9f --- /dev/null +++ b/tools/compare.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python3 + +import xarray as xr + +avail_groups=['Stations/sta1', +'LES_budgets/Miscellaneous/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/Miscellaneous/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/Mean/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/Mean/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/Resolved/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/Resolved/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/Subgrid/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/Subgrid/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/Surface/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/Surface/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/BU_KE/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/BU_KE/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/BU_THL2/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/BU_THL2/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/BU_WTHL/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/BU_WTHL/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/BU_RT2/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/BU_RT2/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/BU_WRT/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/BU_WRT/Cartesian/Time_averaged/Not_normalized/cart/', +'LES_budgets/BU_THLR/Cartesian/Not_time_averaged/Not_normalized/cart/', +'LES_budgets/BU_THLR/Cartesian/Time_averaged/Not_normalized/cart/'] + + + +def compareBACKUPFiles(file_user, file_ref): + status = 0 + da = xr.open_dataset(file_user) + da2 = xr.open_dataset(file_ref) + JPHEXT=1 + JPVEXT=1 + ni=len(da['ni']) + nj=len(da['nj']) + nk=len(da['level']) + variables = list(da.keys()) + for var in variables: + try: + if da[var].ndim == 4: #Variables time, level, nj, ni + ecart_min=float(da2[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].min())-float(da[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].min()) + ecart_moy=float(da2[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].mean())-float(da[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].mean()) + ecart_max=float(da2[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].max())-float(da[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].max()) + elif da[var].ndim == 3 and da['L2D'] == 0: #Variables time, nj, ni + ecart_min=float(da2[var][0,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].min())-float(da[var][0,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].min()) + ecart_moy=float(da2[var][0,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].mean())-float(da[var][0,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].mean()) + ecart_max=float(da2[var][0,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].max())-float(da[var][0,JPHEXT:nj-1-JPHEXT,JPHEXT:ni-1-JPHEXT].max()) + elif da[var].ndim == 3 and da['L2D'] == 1: #Variables time, level, nj or ni (2D simulation) + if len(da['ni']) > len(da['nj']): + nij=len(da['ni']) + else: + nij=len(da['nj']) + ecart_min=float(da2[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nij-1-JPHEXT].min())-float(da[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nij-1-JPHEXT].min()) + ecart_moy=float(da2[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nij-1-JPHEXT].mean())-float(da[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nij-1-JPHEXT].mean()) + ecart_max=float(da2[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nij-1-JPHEXT].max())-float(da[var][0,JPVEXT:nk-1-JPVEXT,JPHEXT:nij-1-JPHEXT].max()) + else: + ecart_min=float(da2[var].min())-float(da[var].min()) + ecart_moy=float(da2[var].mean())-float(da[var].mean()) + ecart_max=float(da2[var].max())-float(da[var].max()) + if (ecart_min !=0 or ecart_moy !=0 or ecart_max !=0): + status += 1 + print(var, ecart_min, ecart_moy, ecart_max) + except: + pass + return status + +def compareTSERIESFiles(file_user, file_ref): + status = 0 + da = xr.open_dataset(file_user) + da2 = xr.open_dataset(file_ref) + variables = list(da.keys()) + for var in variables: + try: + ecart_min = float(da2[var].min())-float(da[var].min()) + ecart_moy = float(da2[var].mean())-float(da[var].mean()) + ecart_max = float(da2[var].max())-float(da[var].max()) + if (ecart_min !=0 or ecart_moy !=0 or ecart_max !=0): + status += 1 + print(var, ecart_min, ecart_moy, ecart_max) + except: + pass + # Groups comparison + for grp in avail_groups: + try: + nk=len(da['level_les']) + da = xr.open_dataset(file_user, group=grp) + da2 = xr.open_dataset(file_ref, group=grp) + variables = list(da.keys()) + print(grp) + for var in variables: + try: + ecart_min = float(da2[var][:,:nk-JPVEXT].min())-float(da[var][:,:nk-JPVEXT].min()) + ecart_moy = float(da2[var][:,:nk-JPVEXT].mean())-float(da[var][:,:nk-JPVEXT].mean()) + ecart_max = float(da2[var][:,:nk-JPVEXT].max())-float(da[var][:,:nk-JPVEXT].max()) + if (ecart_min !=0 or ecart_moy !=0 or ecart_max !=0): + status += 1 + print(var, ecart_min, ecart_moy, ecart_max) + except: + pass + except: + pass + return status + +if __name__ == "__main__": + import argparse + import sys + parser = argparse.ArgumentParser(description='Compare toutes les variables si trouvées dans les fichiers backup et time series') + value = argparse.ArgumentParser() + parser.add_argument('--f1', metavar='file1', type=str, help="Backup file1 user ") + parser.add_argument('--f2', metavar='file2', type=str, help="Backup file2 reference") + parser.add_argument('--f3', metavar='file3', type=str, help=".000 file1 user ") + parser.add_argument('--f4', metavar='file4', type=str, help=".000 file2 reference") + args = parser.parse_args() + status1=compareBACKUPFiles(args.f1, args.f2) + print('status1 = ' + str(status1)) + if args.f3: + status2=compareTSERIESFiles(args.f3, args.f4) + print('status2 = ' + str(status2)) + diff --git a/tools/conf_tests/ARMCU_NOSFX/ICMSHARPEINIT b/tools/conf_tests/ARMCU_NOSFX/ICMSHARPEINIT new file mode 100644 index 0000000000000000000000000000000000000000..0ec424c9af0ad306320c88d32c24bb4c9785aa56 Binary files /dev/null and b/tools/conf_tests/ARMCU_NOSFX/ICMSHARPEINIT differ diff --git a/tools/conf_tests/ARMCU_NOSFX/ecoclimapII_eu_covers_param.bin b/tools/conf_tests/ARMCU_NOSFX/ecoclimapII_eu_covers_param.bin new file mode 100644 index 0000000000000000000000000000000000000000..5db5acaa9f89823499fa08f6ce748ccf538fbe60 Binary files /dev/null and b/tools/conf_tests/ARMCU_NOSFX/ecoclimapII_eu_covers_param.bin differ diff --git a/tools/conf_tests/ARMCU_NOSFX/ecoclimapI_covers_param.bin b/tools/conf_tests/ARMCU_NOSFX/ecoclimapI_covers_param.bin new file mode 100644 index 0000000000000000000000000000000000000000..17c75b1f58786be4e715dcbb3ff41c3ce488b8af Binary files /dev/null and b/tools/conf_tests/ARMCU_NOSFX/ecoclimapI_covers_param.bin differ diff --git a/tools/conf_tests/ARMCU_NOSFX/fort.4 b/tools/conf_tests/ARMCU_NOSFX/fort.4 new file mode 100644 index 0000000000000000000000000000000000000000..d8d2507d99ff144d3eddc7823e4da90b37e7cea1 --- /dev/null +++ b/tools/conf_tests/ARMCU_NOSFX/fort.4 @@ -0,0 +1,1146 @@ +&NACIETEO +/ +&NACOBS +/ +&NACTAN +/ +&NACTEX +/ +&NACVEG +/ +&NADOCK +/ +&NAEAEM7 +/ +&NAEAER +/ +&NAECOAPHY +/ +&NAEPHLI +/ +&NAEPHY +/ +&NAERAD + LRRTM=.FALSE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, +/ +&NAERCLI +/ +&NAETLDIAG +/ +&NAEVOL +/ +&NAIMPO +/ +&NALORI +/ +&NAMACV +/ +&NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSL%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., +/ +&NAMARG + CNMEXP='ARPE', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, +/ +&NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.FALSE., + LTURB=.TRUE., +/ +&NAMCA +/ +&NAMCAPE +/ +&NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., +/ +&NAMCHEM +/ +&NAMCHET +/ +&NAMCHK +/ +&NAMCLA +/ +&NAMCLDP +/ +&NAMCLI +/ +&NAMCLOP15 +/ +&NAMCLTC +/ +&NAMCOK +/ +&NAMCOM +/ +&NAMCOSJO +/ +&NAMCOUPLO4 +/ +&NAMCT0 + CFPNCF='ECHFP', + CNPPATH='.', + CSCRIPT_LAMRTC='./atcp.alad', + LAROME=.TRUE., + LGRIB_API=.FALSE., + LNHEE=.FALSE., + LSCREEN_OPENMP=.FALSE., + LSFORC=.TRUE., + LSFORCS=.TRUE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=0, + NFRHIS=1, + NFRPOS=1, + NFRSDI=10000, + NHISTS(0)=-49, + NHISTS(1)=0, + NHISTS(10)=-9, + NHISTS(11)=-10, + NHISTS(12)=-11, + NHISTS(13)=-12, + NHISTS(14)=-13, + NHISTS(15)=-14, + NHISTS(16)=-15, + NHISTS(17)=-16, + NHISTS(18)=-17, + NHISTS(19)=-18, + NHISTS(2)=-1, + NHISTS(20)=-19, + NHISTS(21)=-20, + NHISTS(22)=-21, + NHISTS(23)=-22, + NHISTS(24)=-23, + NHISTS(25)=-24, + NHISTS(26)=-25, + NHISTS(27)=-26, + NHISTS(28)=-27, + NHISTS(29)=-28, + NHISTS(3)=-2, + NHISTS(30)=-29, + NHISTS(31)=-30, + NHISTS(32)=-31, + NHISTS(33)=-32, + NHISTS(34)=-33, + NHISTS(35)=-34, + NHISTS(36)=-35, + NHISTS(37)=-36, + NHISTS(38)=-37, + NHISTS(39)=-38, + NHISTS(4)=-3, + NHISTS(40)=-39, + NHISTS(41)=-40, + NHISTS(42)=-41, + NHISTS(43)=-42, + NHISTS(44)=-43, + NHISTS(45)=-44, + NHISTS(46)=-45, + NHISTS(47)=-46, + NHISTS(48)=-47, + NHISTS(49)=-48, + NHISTS(5)=-4, + NHISTS(6)=-5, + NHISTS(7)=-6, + NHISTS(8)=-7, + NHISTS(9)=-8, + NPOSTS(0)=-49, + NPOSTS(1)=0, + NPOSTS(10)=-9, + NPOSTS(11)=-10, + NPOSTS(12)=-11, + NPOSTS(13)=-12, + NPOSTS(14)=-13, + NPOSTS(15)=-14, + NPOSTS(16)=-15, + NPOSTS(17)=-16, + NPOSTS(18)=-17, + NPOSTS(19)=-18, + NPOSTS(2)=-1, + NPOSTS(20)=-19, + NPOSTS(21)=-20, + NPOSTS(22)=-21, + NPOSTS(23)=-22, + NPOSTS(24)=-23, + NPOSTS(25)=-24, + NPOSTS(26)=-25, + NPOSTS(27)=-26, + NPOSTS(28)=-27, + NPOSTS(29)=-28, + NPOSTS(3)=-2, + NPOSTS(30)=-29, + NPOSTS(31)=-30, + NPOSTS(32)=-31, + NPOSTS(33)=-32, + NPOSTS(34)=-33, + NPOSTS(35)=-34, + NPOSTS(36)=-35, + NPOSTS(37)=-36, + NPOSTS(38)=-37, + NPOSTS(39)=-38, + NPOSTS(4)=-3, + NPOSTS(40)=-39, + NPOSTS(41)=-40, + NPOSTS(42)=-41, + NPOSTS(43)=-42, + NPOSTS(44)=-43, + NPOSTS(45)=-44, + NPOSTS(46)=-45, + NPOSTS(47)=-46, + NPOSTS(48)=-47, + NPOSTS(49)=-48, + NPOSTS(5)=-4, + NPOSTS(6)=-5, + NPOSTS(7)=-6, + NPOSTS(8)=-7, + NPOSTS(9)=-8, + NSFXHISTS(0)=-3, + NSFXHISTS(1)=-1, + NSFXHISTS(2)=-2, + NSFXHISTS(3)=-3, +/ +&NAMCT1 + LRFILAF=.FALSE., + N1POS=0, + N1RES=0, + N1SFXHIS=0, +/ +&NAMCUMF +/ +&NAMCUMFS +/ +&NAMCVER +/ +&NAMCVMNH +/ +&NAMDDH + LHDDOP=.FALSE., + LHDEFD=.FALSE., + LHDEFZ=.FALSE., + LHDHKS=.FALSE., + LHDZON=.FALSE., +/ +&NAMDFI +/ +&NAMDIM + NPROMA=-16, +/ +&NAMDIMO +/ +&NAMDIM_TRAJ +/ +&NAMDPHY +/ +&NAMDPRECIPS +/ +&NAMDVISI + HVISI=5., +/ +&NAMDYN + LADVF=.FALSE., + LIMPF=.FALSE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NCOMP_CVGQ=2, + NITMP=4, + NSITER=0, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, +/ +&NAMDYNA +/ +&NAMDYNCORE +/ +&NAMEMIS_CONF +/ +&NAMENKF +/ +&NAMENSCOV +/ +&NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + YFA_MXCLWC%CLNAME='CLD_WX_60M', + YFA_VISICLD%CLNAME='CLSVISIN_60', + YFA_VISIHYD%CLNAME='CLSVISIHYDN60', + YFA_XPTYPE%CLNAME='CLSPTYPE_60M', + YFA_XPTYPESEV%CLNAME='CLSPTYPESEV_60M', + YFA_XUGST%CLNAME='CLSU.RAF60M.XFU', + YFA_XVGST%CLNAME='CLSV.RAF60M.XFU', +/ +&NAMFPC +/ +&NAMFPD +/ +&NAMFPDY2 +/ +&NAMFPDYF +/ +&NAMFPDYH +/ +&NAMFPDYI +/ +&NAMFPDYP +/ +&NAMFPDYS +/ +&NAMFPDYT +/ +&NAMFPDYV +/ +&NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, +/ +&NAMFPG + NFPDISTRIB=1, +/ +&NAMFPIOS +/ +&NAMFPMOVE +/ +&NAMFPOBJ +/ +&NAMFPPHY +/ +&NAMFPSC2 + NFPROMA=50, +/ +&NAMFPSC2_DEP +/ +&NAMGEM +/ +&NAMGFL + NGFL_EZDIAG=4, + NGFL_FORC=120, + YCVGQ_NL%LCDERS=.TRUE., + YCVGQ_NL%LGP=.TRUE., + YCVGQ_NL%LSP=.FALSE., + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='EZDIAG04', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LADV=.TRUE., + YG_NL%LGP=.TRUE., + YG_NL%LGPINGP=.TRUE., + YG_NL%LPHY=.FALSE., + YG_NL%LQM=.TRUE., + YG_NL%LREQOUT=.TRUE., + YG_NL%LSLHD=.FALSE., + YG_NL%LT1=.TRUE., + YG_NL%NCOUPLING=0, + YG_NL%NREQIN=0, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LADV=.TRUE., + YI_NL%LGP=.TRUE., + YI_NL%LGPINGP=.TRUE., + YI_NL%LPHY=.FALSE., + YI_NL%LQM=.TRUE., + YI_NL%LREQOUT=.TRUE., + YI_NL%LSLHD=.FALSE., + YI_NL%LT1=.TRUE., + YI_NL%NCOUPLING=0, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LADV=.TRUE., + YL_NL%LGP=.TRUE., + YL_NL%LGPINGP=.TRUE., + YL_NL%LPHY=.FALSE., + YL_NL%LQM=.TRUE., + YL_NL%LREQOUT=.TRUE., + YL_NL%LSLHD=.FALSE., + YL_NL%LT1=.TRUE., + YL_NL%NCOUPLING=0, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.FALSE., + YQ_NL%LGP=.TRUE., + YQ_NL%LQM=.FALSE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%LSP=.FALSE., + YQ_NL%NCOUPLING=0, + YQ_NL%NREQIN=1, + YR_NL%LADV=.TRUE., + YR_NL%LGP=.TRUE., + YR_NL%LGPINGP=.TRUE., + YR_NL%LPHY=.FALSE., + YR_NL%LQM=.TRUE., + YR_NL%LREQOUT=.TRUE., + YR_NL%LSLHD=.FALSE., + YR_NL%LT1=.TRUE., + YR_NL%NCOUPLING=0, + YR_NL%NREQIN=0, + YR_NL%REFVALC=0., + YS_NL%LADV=.TRUE., + YS_NL%LGP=.TRUE., + YS_NL%LGPINGP=.TRUE., + YS_NL%LPHY=.FALSE., + YS_NL%LQM=.TRUE., + YS_NL%LREQOUT=.TRUE., + YS_NL%LSLHD=.FALSE., + YS_NL%LT1=.TRUE., + YS_NL%NCOUPLING=0, + YS_NL%NREQIN=0, + YS_NL%REFVALC=0., + YTKE_NL%LADV=.TRUE., + YTKE_NL%LGP=.TRUE., + YTKE_NL%LGPINGP=.TRUE., + YTKE_NL%LPHY=.FALSE., + YTKE_NL%LQM=.TRUE., + YTKE_NL%LREQOUT=.TRUE., + YTKE_NL%LT1=.TRUE., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, +/ +&NAMGRIB +/ +&NAMGWD +/ +&NAMGWDIAG +/ +&NAMGWWMS +/ +&NAMIAU +/ +&NAMICE +/ +&NAMINI + LDFI=.FALSE., +/ +&NAMINTFLEX +/ +&NAMIOMI +/ +&NAMIOS +/ +&NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, +/ +&NAMJBCODES +/ +&NAMJG +/ +&NAMLCZ +/ +&NAMLIMA +/ +&NAMLSFORC + LGEOST_UV_FRC=.TRUE., + LMUSCLFA=.TRUE., + LQV_ADV_FRC=.TRUE., + LQV_NUDG=.FALSE., + LSOMEGA_FRC=.FALSE., + LSW_FRC=.FALSE., + LT_ADV_FRC=.TRUE., + LT_NUDG=.FALSE., + LUV_ADV_FRC=.FALSE., + LUV_NUDG=.FALSE., + NGEOST_U_DEB=61, + NGEOST_U_NUM=30, + NGEOST_V_DEB=91, + NGEOST_V_NUM=30, + NLH_FORC_DEB=31, + NLH_FORC_NUM=30, + NL_GEOST_UV_TIME( 1 )=0, + NL_GEOST_UV_TIME( 10 )=16200, + NL_GEOST_UV_TIME( 11 )=18000, + NL_GEOST_UV_TIME( 12 )=19800, + NL_GEOST_UV_TIME( 13 )=21600, + NL_GEOST_UV_TIME( 14 )=23400, + NL_GEOST_UV_TIME( 15 )=25200, + NL_GEOST_UV_TIME( 16 )=27000, + NL_GEOST_UV_TIME( 17 )=28800, + NL_GEOST_UV_TIME( 18 )=30600, + NL_GEOST_UV_TIME( 19 )=32400, + NL_GEOST_UV_TIME( 2 )=1800, + NL_GEOST_UV_TIME( 20 )=34200, + NL_GEOST_UV_TIME( 21 )=36000, + NL_GEOST_UV_TIME( 22 )=37800, + NL_GEOST_UV_TIME( 23 )=39600, + NL_GEOST_UV_TIME( 24 )=41400, + NL_GEOST_UV_TIME( 25 )=43200, + NL_GEOST_UV_TIME( 26 )=45000, + NL_GEOST_UV_TIME( 27 )=46800, + NL_GEOST_UV_TIME( 28 )=48600, + NL_GEOST_UV_TIME( 29 )=50400, + NL_GEOST_UV_TIME( 3 )=3600, + NL_GEOST_UV_TIME( 30 )=52200, + NL_GEOST_UV_TIME( 4 )=5400, + NL_GEOST_UV_TIME( 5 )=7200, + NL_GEOST_UV_TIME( 6 )=9000, + NL_GEOST_UV_TIME( 7 )=10800, + NL_GEOST_UV_TIME( 8 )=12600, + NL_GEOST_UV_TIME( 9 )=14400, + NL_LH_ADV_TIME( 1 )=0, + NL_LH_ADV_TIME( 10 )=16200, + NL_LH_ADV_TIME( 11 )=18000, + NL_LH_ADV_TIME( 12 )=19800, + NL_LH_ADV_TIME( 13 )=21600, + NL_LH_ADV_TIME( 14 )=23400, + NL_LH_ADV_TIME( 15 )=25200, + NL_LH_ADV_TIME( 16 )=27000, + NL_LH_ADV_TIME( 17 )=28800, + NL_LH_ADV_TIME( 18 )=30600, + NL_LH_ADV_TIME( 19 )=32400, + NL_LH_ADV_TIME( 2 )=1800, + NL_LH_ADV_TIME( 20 )=34200, + NL_LH_ADV_TIME( 21 )=36000, + NL_LH_ADV_TIME( 22 )=37800, + NL_LH_ADV_TIME( 23 )=39600, + NL_LH_ADV_TIME( 24 )=41400, + NL_LH_ADV_TIME( 25 )=43200, + NL_LH_ADV_TIME( 26 )=45000, + NL_LH_ADV_TIME( 27 )=46800, + NL_LH_ADV_TIME( 28 )=48600, + NL_LH_ADV_TIME( 29 )=50400, + NL_LH_ADV_TIME( 3 )=3600, + NL_LH_ADV_TIME( 30 )=52200, + NL_LH_ADV_TIME( 4 )=5400, + NL_LH_ADV_TIME( 5 )=7200, + NL_LH_ADV_TIME( 6 )=9000, + NL_LH_ADV_TIME( 7 )=10800, + NL_LH_ADV_TIME( 8 )=12600, + NL_LH_ADV_TIME( 9 )=14400, + NL_QV_ADV_TIME( 1 )=0, + NL_QV_ADV_TIME( 10 )=16200, + NL_QV_ADV_TIME( 11 )=18000, + NL_QV_ADV_TIME( 12 )=19800, + NL_QV_ADV_TIME( 13 )=21600, + NL_QV_ADV_TIME( 14 )=23400, + NL_QV_ADV_TIME( 15 )=25200, + NL_QV_ADV_TIME( 16 )=27000, + NL_QV_ADV_TIME( 17 )=28800, + NL_QV_ADV_TIME( 18 )=30600, + NL_QV_ADV_TIME( 19 )=32400, + NL_QV_ADV_TIME( 2 )=1800, + NL_QV_ADV_TIME( 20 )=34200, + NL_QV_ADV_TIME( 21 )=36000, + NL_QV_ADV_TIME( 22 )=37800, + NL_QV_ADV_TIME( 23 )=39600, + NL_QV_ADV_TIME( 24 )=41400, + NL_QV_ADV_TIME( 25 )=43200, + NL_QV_ADV_TIME( 26 )=45000, + NL_QV_ADV_TIME( 27 )=46800, + NL_QV_ADV_TIME( 28 )=48600, + NL_QV_ADV_TIME( 29 )=50400, + NL_QV_ADV_TIME( 3 )=3600, + NL_QV_ADV_TIME( 30 )=52200, + NL_QV_ADV_TIME( 4 )=5400, + NL_QV_ADV_TIME( 5 )=7200, + NL_QV_ADV_TIME( 6 )=9000, + NL_QV_ADV_TIME( 7 )=10800, + NL_QV_ADV_TIME( 8 )=12600, + NL_QV_ADV_TIME( 9 )=14400, + NL_SH_ADV_TIME( 1 )=0, + NL_SH_ADV_TIME( 10 )=16200, + NL_SH_ADV_TIME( 11 )=18000, + NL_SH_ADV_TIME( 12 )=19800, + NL_SH_ADV_TIME( 13 )=21600, + NL_SH_ADV_TIME( 14 )=23400, + NL_SH_ADV_TIME( 15 )=25200, + NL_SH_ADV_TIME( 16 )=27000, + NL_SH_ADV_TIME( 17 )=28800, + NL_SH_ADV_TIME( 18 )=30600, + NL_SH_ADV_TIME( 19 )=32400, + NL_SH_ADV_TIME( 2 )=1800, + NL_SH_ADV_TIME( 20 )=34200, + NL_SH_ADV_TIME( 21 )=36000, + NL_SH_ADV_TIME( 22 )=37800, + NL_SH_ADV_TIME( 23 )=39600, + NL_SH_ADV_TIME( 24 )=41400, + NL_SH_ADV_TIME( 25 )=43200, + NL_SH_ADV_TIME( 26 )=45000, + NL_SH_ADV_TIME( 27 )=46800, + NL_SH_ADV_TIME( 28 )=48600, + NL_SH_ADV_TIME( 29 )=50400, + NL_SH_ADV_TIME( 3 )=3600, + NL_SH_ADV_TIME( 30 )=52200, + NL_SH_ADV_TIME( 4 )=5400, + NL_SH_ADV_TIME( 5 )=7200, + NL_SH_ADV_TIME( 6 )=9000, + NL_SH_ADV_TIME( 7 )=10800, + NL_SH_ADV_TIME( 8 )=12600, + NL_SH_ADV_TIME( 9 )=14400, + NL_T_ADV_TIME( 1 )=0, + NL_T_ADV_TIME( 10 )=16200, + NL_T_ADV_TIME( 11 )=18000, + NL_T_ADV_TIME( 12 )=19800, + NL_T_ADV_TIME( 13 )=21600, + NL_T_ADV_TIME( 14 )=23400, + NL_T_ADV_TIME( 15 )=25200, + NL_T_ADV_TIME( 16 )=27000, + NL_T_ADV_TIME( 17 )=28800, + NL_T_ADV_TIME( 18 )=30600, + NL_T_ADV_TIME( 19 )=32400, + NL_T_ADV_TIME( 2 )=1800, + NL_T_ADV_TIME( 20 )=34200, + NL_T_ADV_TIME( 21 )=36000, + NL_T_ADV_TIME( 22 )=37800, + NL_T_ADV_TIME( 23 )=39600, + NL_T_ADV_TIME( 24 )=41400, + NL_T_ADV_TIME( 25 )=43200, + NL_T_ADV_TIME( 26 )=45000, + NL_T_ADV_TIME( 27 )=46800, + NL_T_ADV_TIME( 28 )=48600, + NL_T_ADV_TIME( 29 )=50400, + NL_T_ADV_TIME( 3 )=3600, + NL_T_ADV_TIME( 30 )=52200, + NL_T_ADV_TIME( 4 )=5400, + NL_T_ADV_TIME( 5 )=7200, + NL_T_ADV_TIME( 6 )=9000, + NL_T_ADV_TIME( 7 )=10800, + NL_T_ADV_TIME( 8 )=12600, + NL_T_ADV_TIME( 9 )=14400, + NQV_ADV_DEB=31, + NQV_ADV_NUM=30, + NSH_FORC_DEB=1, + NSH_FORC_NUM=30, + NT_ADV_DEB=1, + NT_ADV_NUM=30, + RCORIO_FORC=8.57237767648e-05, + RZ0_FORC=0.035, +/ +&NAMMARS +/ +&NAMMCC +/ +&NAMMCUF +/ +&NAMMETHOX +/ +&NAMMKODB +/ +&NAMMODERR +/ +&NAMMTS +/ +&NAMMWAVE +/ +&NAMNORGWD +/ +&NAMNPROF +/ +&NAMNUD +/ +&NAMOBS +/ +&NAMONEDVAR +/ +&NAMOOPS +/ +&NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, +/ +&NAMOPTCMEM +/ +&NAMPAR0 + LMPOFF=.TRUE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPRGPEW=1, + NPRGPNS=1, + NPROC=1, + NPRTRV=1, + NPRTRW=1, +/ +&NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=1, + NSTROUT=1, +/ +&NAMPARAR + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., +/ +&NAMPHMSE + LPGDFWR=.FALSE., +/ +&NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LDPRECIPS=.TRUE., + LEDR=.FALSE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.FALSE., +/ +&NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., +/ +&NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, +/ +&NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, +/ +&NAMPHY3 +/ +&NAMPHYDS + NSFORC=60, +/ +&NAMPONG +/ +&NAMPPC +/ +&NAMPPVI +/ +&NAMPRE +/ +&NAMRAD15 +/ +&NAMRADCMEM +/ +&NAMRCF +/ +&NAMRCOEF +/ +&NAMRES +/ +&NAMRGRI +/ +&NAMRINC +/ +&NAMRIP + CSTOP='h14', + TSTEP=50, +/ +&NAMRIP0 +/ +&NAMRLX +/ +&NAMSATS + LPARTIAL_COEF_FILES=.TRUE., +/ +&NAMSCC +/ +&NAMSCEN +/ +&NAMSCM +/ +&NAMSEKF +/ +&NAMSENS +/ +&NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, +/ +&NAMSIMPHL +/ +&NAMSPNG +/ +&NAMSPP +/ +&NAMSPSDT +/ +&NAMSTA +/ +&NAMSTOPH +/ +&NAMSWE +/ +&NAMTESTVAR +/ +&NAMTHLIM +/ +&NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., +/ +&NAMTRAJP +/ +&NAMTRANS + LFFTW=.TRUE., +/ +&NAMTRANS0 +/ +&NAMVAR +/ +&NAMVARBC +/ +&NAMVARBC_AIREP +/ +&NAMVARBC_ALLSKY +/ +&NAMVARBC_GBRAD +/ +&NAMVARBC_RAD +/ +&NAMVARBC_SFCOBS +/ +&NAMVARBC_TCWV +/ +&NAMVARBC_TO3 +/ +&NAMVAREPS +/ +&NAMVDF +/ +&NAMVDOZ +/ +&NAMVOLCANO +/ +&NAMVRTL +/ +&NAMVV0 +/ +&NAMVV1 +/ +&NAMVWRK +/ +&NAMWAVELETJB +/ +&NAMXFU + LXCLP=.FALSE., + LXCLS=.FALSE., + LXFU=.FALSE., + LXNEBPA=.FALSE., + LXNEBTT=.FALSE., + LXNUVCLS=.FALSE., + LXPLS=.FALSE., + LXPLSG=.FALSE., + LXQCLS=.FALSE., + LXR=.FALSE., + LXSOIL=.FALSE., + LXTHW=.FALSE., + LXTRT=.FALSE., + LXTTCLS=.FALSE., + LXVISI=.FALSE., + LXXDIAGH=.FALSE., + LXXGST=.FALSE., + NRAZTS(0)=-49, + NRAZTS(1)=0, + NRAZTS(10)=-9, + NRAZTS(11)=-10, + NRAZTS(12)=-11, + NRAZTS(13)=-12, + NRAZTS(14)=-13, + NRAZTS(15)=-14, + NRAZTS(16)=-15, + NRAZTS(17)=-16, + NRAZTS(18)=-17, + NRAZTS(19)=-18, + NRAZTS(2)=-1, + NRAZTS(20)=-19, + NRAZTS(21)=-20, + NRAZTS(22)=-21, + NRAZTS(23)=-22, + NRAZTS(24)=-23, + NRAZTS(25)=-24, + NRAZTS(26)=-25, + NRAZTS(27)=-26, + NRAZTS(28)=-27, + NRAZTS(29)=-28, + NRAZTS(3)=-2, + NRAZTS(30)=-29, + NRAZTS(31)=-30, + NRAZTS(32)=-31, + NRAZTS(33)=-32, + NRAZTS(34)=-33, + NRAZTS(35)=-34, + NRAZTS(36)=-35, + NRAZTS(37)=-36, + NRAZTS(38)=-37, + NRAZTS(39)=-38, + NRAZTS(4)=-3, + NRAZTS(40)=-39, + NRAZTS(41)=-40, + NRAZTS(42)=-41, + NRAZTS(43)=-42, + NRAZTS(44)=-43, + NRAZTS(45)=-44, + NRAZTS(46)=-45, + NRAZTS(47)=-46, + NRAZTS(48)=-47, + NRAZTS(49)=-48, + NRAZTS(5)=-4, + NRAZTS(6)=-5, + NRAZTS(7)=-6, + NRAZTS(8)=-7, + NRAZTS(9)=-8, +/ +&NAM_CANAPE +/ +&NAM_DISTRIBUTED_VECTORS +/ +&NAPHLC +/ +&NEMCT0 +/ +&NEMDIM +/ +&NEMDYN +/ +&NEMELBC0A + LESPCPL=FALSE, + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, +/ +&NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., +/ +&NEMFPEZO +/ +&NEMGEO + RLAT_ACAD=36.0, + RLON_ACAD=-97.5, +/ +&NEMJK +/ +&NEMVAR +/ +&NEMWAVELET +/ +&NAMTRAJ +/ +&NAMSATSIM +/ +&NAMNUDGLH +/ diff --git a/tools/conf_tests/ARMCU_NOSFX/rrtm.tgz b/tools/conf_tests/ARMCU_NOSFX/rrtm.tgz new file mode 100644 index 0000000000000000000000000000000000000000..0c0809773c8b26029b14ff15ca2a849ab9270799 Binary files /dev/null and b/tools/conf_tests/ARMCU_NOSFX/rrtm.tgz differ diff --git a/tools/conf_tests/ARMCU_NOSFX/run.sh b/tools/conf_tests/ARMCU_NOSFX/run.sh new file mode 100755 index 0000000000000000000000000000000000000000..34832689e9c86339f2703b03a288cfd2bc6d33e8 --- /dev/null +++ b/tools/conf_tests/ARMCU_NOSFX/run.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +set -ex + +export OMP_NUM_THREADS=1 +export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK=0 +ulimit -s unlimited +unset LD_LIBRARY_PATH + +tar xf rrtm.tgz + +./MASTER >lola 2>&1 + diff --git a/tools/conf_tests/big_3D/README b/tools/conf_tests/big_3D/README new file mode 100644 index 0000000000000000000000000000000000000000..1d2b20eb7aefaadd4bc79c5938ee5c1af8a0bed7 --- /dev/null +++ b/tools/conf_tests/big_3D/README @@ -0,0 +1,2 @@ +Script comes from belenos:/home/gmap/mrpm/khatib/public/script/arome_e700 +Script is modified to be called from check_commit (directory containing the executable) diff --git a/tools/conf_tests/big_3D/aro48t1.sh b/tools/conf_tests/big_3D/aro48t1.sh new file mode 100644 index 0000000000000000000000000000000000000000..01031a2a10bac13549b15f4de84974a483fee4d5 --- /dev/null +++ b/tools/conf_tests/big_3D/aro48t1.sh @@ -0,0 +1,601 @@ +#!/bin/bash +#SBATCH -p normal256 +#SBATCH --export=MYLIB,HOMEPACK +#SBATCH -n 1280 +#SBATCH -c 4 +#SBATCH -N 40 +#SBATCH -t 00:40:00 +#SBATCH --mem=247000 +#SBATCH --exclusiv + +# Job management : +# -------------- +JOB_INITDIR=$SLURM_SUBMIT_DIR +export JOB_NAME=arome_e700 +export JOB_ID=$SLURM_JOB_ID + +echo JOB_INITDIR=$JOB_INITDIR +echo JOB_NAME=$JOB_NAME +echo JOB_ID=$JOB_ID + +# ============================================================================= + +# RESOURCES ALLOCATIONS +# ===================== + +# Number of nodes/mpi-tasks/omp-threads: +# ------------------------------------- +NNODES=$SLURM_JOB_NUM_NODES +# Number of MPI tasks per node: +MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) +# Number of OPEN-MP threads per MPI task: +export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK +# Total number of MPI tasks: +MPI_TASKS=$SLURM_NTASKS +# Number of tasks reserved for the I/O server : 2 (hyperthreaded) nodes +NTASKS_IO=$(($(grep processor /proc/cpuinfo | wc -l)/1/$OMP_NUM_THREADS)) + +echo NNODES=$NNODES +echo MPITASKS_PER_NODE=$MPITASKS_PER_NODE +echo +# Number of MPI tasks and OMP threads used in the application : +echo MPI_TASKS=$MPI_TASKS +echo OMP_NUM_THREADS=$OMP_NUM_THREADS + +# ============================================================================= + +# SYSTEM PREFERENCES +# ================== + +# OMP/MPI submission management : +# ----------------------------- +# LOCAL_MPI_WRAPPER : could be "mpiauto", "mpdrun", "mpiexec" ... or empty string +# LOCAL_STACK_LIMIT : could be "unlimited" or empty string + +set -x +#LOCAL_MPI_WRAPPER="/opt/softs/mpiauto/mpiauto --wrap --wrap-stdeo --wrap-stdeo-pack" +LOCAL_MPI_WRAPPER="/opt/softs/mpiauto/mpiauto" +LOCAL_STACK_LIMIT=unlimited +ulimit -l unlimited +set +x + +# Specific environment variables : +# ------------------------------ +set -x +export OMP_STACKSIZE=4G +export KMP_STACKSIZE=4G +export KMP_MONITOR_STACKSIZE=4G +export I_MPI_HARD_FINALIZE=1 +export I_MPI_SCALABLE_OPTIMIZATION=0 +export I_MPI_DAPL_UD_RNDV_EP_NUM=4 +export I_MPI_SHM_SPIN_COUNT=10 +export I_MPI_SPIN_COUNT=10 +set +x + +# File systems : +# ------------ +# Global file system: +export TMPGFS=$TMPDIR +export WORKGFS=$WORKDIR/benchmarks +#MTOOL export TMPGFS=$MTOOL_STEP_WORKSPACE +# Local file system (if preferred): +export TMPLOC=$TMPGFS +echo TMPGFS=$TMPGFS +echo TMPLOC=$TMPLOC + +# Local disks synchronization : +# --------------------------- +export ISYNC=0 +if [ "$MTOOL_IS" = "ON" ] ; then +# synchronization is needed anyway between the steps + export ISYNC=1 +elif [ $NNODES -gt 1 ] && [ "$TMPLOC" != "$TMPGFS" ] ; then +# Local disk synchronization needed: + export ISYNC=1 +fi +echo ISYNC=$ISYNC + +# Miscellaneous : +# ------------- + +# ============================================================================= + +# USER PREFERENCES +# ================ + +export NAMELDIR=/home/gmap/mrpm/khatib/pack/48t1_main.01#myref/run/cy47.forecast_arome_e700/Namelists + + +HOMEPACK=${HOMEPACK:=$HOME/pack} +export BINDIR=$HOMEPACK/$MYLIB/bin +#export BINDIR=/home/gmap/mrpm/khatib/pack/48t1_main.01#myref/bin +OUTPUTDIR=${OUTPUTDIR:-$PWD} #No cd command have been done before this line + + + +export DATADIR=/scratch/work/khatib/data/cy47.forecast_arome_e700 +export REFDIR=/home/gmap/mrpm/khatib/benchmarks/apps/modules/cy47.forecast_arome_e700/References +export TOOLSDIR=/home/gmap/mrpm/khatib/benchmarks/tools +export ROOTDIR_ODB=/home/gmap/mrpm/khatib/odbpools/36t1_bench/cy47.forecast_arome_e700 + +# Check reliability of auxilary directories : +# ----------------------------------------- +ierr=0 +for var in NAMELDIR BINDIR DATADIR REFDIR TOOLSDIR ; do + eval "dir=\$$var" + if [ ! "$dir" ] ; then + echo "$var is not set." + ierr=1 + fi + if [ $ierr -ne 0 ] ; then + exit 1 + fi +done +ierr=0 +for dir in $NAMELDIR $BINDIR $REFDIR $TOOLSDIR ; do + if [ ! -d $dir ] ; then + echo "$dir does not exists." + ierr=1 + fi + if [ $ierr -ne 0 ] ; then + exit 1 + fi +done + +echo TOOLSDIR=$TOOLSDIR +echo NAMELDIR=$NAMELDIR +echo DATADIR=$DATADIR +echo REFDIR=$REFDIR +echo BINDIR=$BINDIR +echo ROOTDIR_ODB=$ROOTDIR_ODB + +export PATH=$TOOLSDIR:$PATH +export TOOLSDIR +export DATADIR + +# Software default environment variables : +# -------------------------------------- +set -x +export DR_HOOK=0 +export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_SILENT=1 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export MPL_MBX_SIZE=2048000000 +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export EC_MEMINFO=0 +export OPENBLAS_NUM_THREADS=1 +export MKL_CBWR="AUTO,STRICT" +export MKL_NUM_THREADS=1 +export MKL_DEBUG_CPU_TYPE=5 +set +x + +# Profilers management : +# -------------------- +# FTRACE_JOB : profiler switch +# =0 : no profiler +# =1 : integrated DrHook profiler +# =2 : specific profiler +# +export FTRACE_JOB=1 +echo "FTRACE_JOB=$FTRACE_JOB" + +if [ $FTRACE_JOB -ne 0 ] ; then +# profilings main directory: + if [ -d $JOB_INITDIR ] ; then +# Use the initial job's dir + FTRACE_DIR=$JOB_INITDIR + else +# Set one : + FTRACEDIR= + if [ ! "$FTRACEDIR" ] ; then + echo "FTRACEDIR is not set." + exit 1 + fi + if [ ! -d $FTRACEDIR ] ; then + mkdir -p $FTRACEDIR + if [ $? -ne 0 ] ; then + echo "Can't make directory $FTRACEDIR" + exit 1 + fi + fi + FTRACE_DIR=$FTRACEDIR + fi + SCRATCH_FTRACE_DIR=$TMPGFS +# SCRATCH_FTRACE_DIR=$FTRACE_DIR + if [ $FTRACE_JOB -eq 1 ] ; then + set -x + export DR_HOOK=1 + export DR_HOOK_OPT=prof +# Directory of individual profiles : + export PROFDIR=$SCRATCH_FTRACE_DIR/${JOB_NAME}.d${JOB_ID} +# Merged profiles report filename : + export PROFMRG=$FTRACE_DIR/${JOB_NAME}.h${JOB_ID} + set +x + elif [ $FTRACE_JOB -ge 2 ] ; then + set -x +# Directory of individual profiles : + export PROFDIR=$SCRATCH_FTRACE_DIR/${JOB_NAME}.f${JOB_ID} +# Merged profiles report filename : + export PROFMRG=$FTRACE_DIR/${JOB_NAME}.t${JOB_ID} + set +x + fi +fi + +set +x + +# Listings : +# -------- +set -x +export ECHO_MPSH=OFF +export OUTPUT_LISTING=YES +export LOGDIR=$JOB_INITDIR/${JOB_NAME}.l${JOB_ID} +set +x + +# ODB archives : +# ------------ +# if set to 1, archived Odbs will be gzipped : +set -x +export ARCHIVE_AND_ZIP_ODB=0 +set +x + +# Directory for application output data files : +# ------------------------------------------- +echo +OUTDIR= +OUTDIR=${OUTDIR:=$TMPGFS} +if [ "$TMPGFS" != "$TMPLOC" ] ; then + if [ "$OUTDIR" = "$TMPLOC" ] ; then + echo "Output files on LOCAL file system" + elif [ "$OUTDIR" = "$TMPGFS" ] ; then + echo "Output files on GLOBAL file system" + else + echo "Output files on directory : $OUTDIR" + fi +else + echo "Output files on directory : $OUTDIR" +fi + +# NFS temporary directory for small I/Os +echo +TMPNFS=$(mktemp -d --tmpdir=/tmp/$LOGNAME) +if [ -d $TMPNFS ] ; then + echo "temporary directory on NFS for small I/Os : $TMPNFS" +else + TMPNFS="." +fi + +# ============================================================================= + +# APPLICATION TUNING +# ================== + +# ARPEGE : Forecast +# ***************** + +mkdir -p $TMPLOC +if [ $ISYNC -gt 0 ] ; then + mkdir -p $TMPGFS + cd $TMPGFS +else + cd $TMPLOC +fi + +# Driver-specific environment variables : +# ------------------------------------- +set -x +NAMELIST=namel_previ.48 +CTRLLIST=extra_namelists48.list +LINKS=links_inline48.scpt +EXECUTABLE=MASTERODB +REFLIST=$REFDIR/forecast.out +EXPLIST=./NODE.001_01 +set +x + +#MTOOL common join=step_2 + +# Namelists modifications : +# ----------------------- + +set -x + +# Number of MPI tasks for the I/O server : +NPROC_IO=$NTASKS_IO + +# Remaining number of MPI tasks : +NPROC=$((MPI_TASKS-NPROC_IO)) + +# Memory cache optimisation: +NPROMA=-16 +NFPROMA=-24 + +# Overall scalar optimisation: +LOPT_SCALAR=.TRUE. + +# Output packing distribution: +NSTROUT=${NPROC} +NSTRIN=${NPROC} + +NPRGPEW=16 +#NPRGPNS=((NPROC/NPRGPEW)) +NPRTRV=16 +#NPRTRW=((NPROC/NPRTRV)) + +set +x + +cat > namelist_mods2 <<EOF + &NAMPARAR + / + &NAMTRANS + LFFTW=.TRUE., + / + &NAMPAR0 + NPRINTLEV=1, + LOPT_SCALAR=${LOPT_SCALAR}, + MBX_SIZE=2048000000, + NPROC=${NPROC}, + NPRGPNS=-, + NPRGPEW=-, + NPRTRW=-, + NPRTRV=-, + / + &NAMDIM + NPROMA=$NPROMA, + / + &NAMFPSC2 + NFPROMA=$NFPROMA, + / + &NAMFPSC2_DEP + NFPROMA_DEP=$NFPROMA, + / + &NAMPAR1 + LSPLIT=.TRUE., + NSTRIN=${NSTRIN}, + NSTROUT=${NSTROUT}, + / + &NAMFA + CMODEL=' ', + / + &NAMIAU + LIAU=.FALSE., + / + &NAMARG + CNMEXP='0000', + / + &NAMCT0 + CSCRIPT_LAMRTC=' ', + CSCRIPT_PPSERVER=' ', + CFPNCF='ECHFP', + NSDITS(0)=0, + NFRSDI=4, + NFPOS=1, + / + &NAMCT1 + N1POS=1, + / + &NAMFPC + CFPDIR='${OUTDIR}/PF', + / + &NAMOPH + CFNHWF='${OUTDIR}/ECHIS', + CFPATH='${OUTDIR}/', + / + &NAMIO_SERV + NPROC_IO=${NPROC_IO}, + NMSG_LEVEL_SERVER=1, + NMSG_LEVEL_CLIENT=1, + NPROCESS_LEVEL=5, + / + &NAMRIP + CSTOP='h24', + TSTEP=50., + / +EOF +cat namelist_mods2 > namelist_modset +\rm -f namelist_mods2 +echo +echo Namelists adaptations : +cat namelist_modset +echo + +set +x +cp $NAMELDIR/$NAMELIST namelist +perl -w $TOOLSDIR/xpnam namelist --dfile=namelist_modset +set -x +echo +/bin/cat namelist.new +set +x +\rm -f namelist_modset namelist +\mv namelist.new fort.4 +set -x + +#MTOOL common + +# ============================================================================= + +# DRIVER +# ====== + +# ****************************** +# * fetch initial data files * +# ****************************** + +#MTOOL common join=step_1 + +set -x +$TOOLSDIR/getdata.ksh +set +x + +#MTOOL common + +#MTOOL common join=step_2 + +for file in $(cat $NAMELDIR/$CTRLLIST) ; do + set -x + cp $NAMELDIR/$file . + set +x +done +if [ -s $NAMELDIR/$LINKS ] ; then + set -x + cp $NAMELDIR/$LINKS . + chmod 755 $LINKS + . ./$LINKS + \rm $LINKS + set +x +fi + +#MTOOL common + +# *************** +# * Executable * +# *************** + +#MTOOL common join=step_1 + +echo +set -x +cp $BINDIR/$EXECUTABLE . +set +x +if [ ! -f $EXECUTABLE ] ; then + echo "executable $BINDIR/$EXECUTABLE could not be copied." + exit 1 +fi + +#MTOOL common + +# ******************************** +# * Prepare parallel executions * +# ******************************** + +#MTOOL common join=step_2 + +if [ "$LOCAL_STACK_LIMIT" ] ; then + set -x + ulimit -s $LOCAL_STACK_LIMIT + set +x +fi +# for mpsh : +export MPSH_NPES=$NNODES + +# grib_api environment variables may be determined by the executable : +. grib_api_profile $EXECUTABLE + +# Intel mpi fabric setup depending on what is found in the executable : +. intel_mpi_fabric $EXECUTABLE + +#MTOOL common + +set -x +cd $TMPLOC +set +x +. rttov_profile + +# ******************************************************* +# * Unarchive datasets and local disks Synchronisation * +# ******************************************************* + +if [ $ISYNC -eq 0 ] ; then + set -x +#MTOOL common join=step_1 + $TOOLSDIR/input_sync.ksh +#MTOOL common + set +x +else + set -x +#MTOOL common join=step_2 + $TOOLSDIR/input_sync.ksh +#MTOOL common + set +x +fi + +# *************** +# * Execution * +# *************** + +#MTOOL common join=step_2 + +mkdir -p $OUTDIR +echo +if [ $(echo $LOCAL_MPI_WRAPPER | grep -c mpiauto) -ne 0 ] ; then + set -x + time $LOCAL_MPI_WRAPPER -np $MPI_TASKS -nnp $MPITASKS_PER_NODE -- ./$EXECUTABLE </dev/null \ + errorcode=$? + 2>&1 | grep -v "FA[DC]GR[AM]: Field .* is not declared in \`faFieldName.def'" + set +x +elif [ "$LOCAL_MPI_WRAPPER" = "srun" ] ; then + set -x + time $LOCAL_MPI_WRAPPER ./$EXECUTABLE </dev/null \ + errorcode=$? + 2>&1 | grep -v "FA[DC]GR[AM]: Field .* is not declared in \`faFieldName.def'" + set +x +elif [ "$LOCAL_MPI_WRAPPER" ] ; then + set -x + time $LOCAL_MPI_WRAPPER -np $MPI_TASKS ./$EXECUTABLE </dev/null \ + errorcode=$? + 2>&1 | grep -v "FA[DC]GR[AM]: Field .* is not declared in \`faFieldName.def'" + set +x +else + set -x + time ./$EXECUTABLE \ + errorcode=$? + 2>&1 | grep -v "FA[DC]GR[AM]: Field .* is not declared in \`faFieldName.def'" + set +x +fi + +# ********************** +# * Post-processings * +# ********************** + +echo +if [ "$OUTPUT_LISTING" = "YES" ] ; then + set -x + $TOOLSDIR/outsync.ksh + set +x +fi + +if [ $FTRACE_JOB -gt 0 ] ; then + set -x + $TOOLSDIR/profsync.ksh + set +x +fi + +set -x +ls -l $OUTDIR +set +x + +set -x +#errorcode returned by executable is not reliable (always different from 0) +if grep " NSTEP = 1728 CNT0" NODE.001_01 > /dev/null; then + cp $EXPLIST $OUTPUTDIR/ +else + mkdir $OUTPUTDIR/error + cp $EXPLIST $OUTPUTDIR/error/ +fi +if [ -f $REFLIST ] && [ -f $EXPLIST ] ; then $TOOLSDIR/diffNODE.001_01 $EXPLIST $REFLIST ; fi +set +x +# **************** +# * Cleanups * +# **************** + +set -x +cd $TMPGFS +$TOOLSDIR/cleansync.ksh +set +x + +#MTOOL common + +# **************** +# * Epilogue * +# **************** + +set -x +$TOOLSDIR/epilog.ksh +set +x +if [ "$MTOOL_IS" != "ON" ] && [ "$AUTO_CLEAN" = "ON" ] ; then + cd $HOME + \rm -rf $TMPGFS +fi + +#MTOOL step id=step_1 target=FRONTEND +#MTOOL step id=step_2 target=SUPERCOMPUTER diff --git a/tools/conf_tests/small_3D/aro48t1.sh b/tools/conf_tests/small_3D/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..e4dee94ab7fedf14b4354eef27618864b8095488 --- /dev/null +++ b/tools/conf_tests/small_3D/aro48t1.sh @@ -0,0 +1,1208 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB variable must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +mv *.dat $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D/data/aro/riette/Const.Clim b/tools/conf_tests/small_3D/data/aro/riette/Const.Clim new file mode 100644 index 0000000000000000000000000000000000000000..8909e7b06e352c8dec34af53a67b68b85fda11de Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/Const.Clim differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/Const.Clim.sfx b/tools/conf_tests/small_3D/data/aro/riette/Const.Clim.sfx new file mode 100644 index 0000000000000000000000000000000000000000..e0a11a7c574ae666073b5a6a3a5d6e34d9b72ed0 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/Const.Clim.sfx differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0000_l15 b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0000_l15 new file mode 100644 index 0000000000000000000000000000000000000000..a79ad9a6d949ec154a4132efc8e3587314567671 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0000_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0001_l15 b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0001_l15 new file mode 100644 index 0000000000000000000000000000000000000000..4b93d4b94ad90e2dd5044e683084a5627c0fddef Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0001_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0002_l15 b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0002_l15 new file mode 100644 index 0000000000000000000000000000000000000000..be2ac309a2a43c76dae3429b113358db2b50d777 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0002_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0003_l15 b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0003_l15 new file mode 100644 index 0000000000000000000000000000000000000000..e3ed0a6e2b0b349399067e96026e9a8c71c3e30a Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0003_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0004_l15 b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0004_l15 new file mode 100644 index 0000000000000000000000000000000000000000..1d39bf4e4efef27bbc1a6d696a3e303c3f33ee06 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0004_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0005_l15 b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0005_l15 new file mode 100644 index 0000000000000000000000000000000000000000..760acd95f6edad453bdb63e2bc245c48c77709ac Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0005_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0006_l15 b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0006_l15 new file mode 100644 index 0000000000000000000000000000000000000000..52a77eb3cf7c3603a928e8626615bc2828861520 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ELSCFFCSTALBC0006_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ICMSHFCSTINIT.sfx b/tools/conf_tests/small_3D/data/aro/riette/ICMSHFCSTINIT.sfx new file mode 100644 index 0000000000000000000000000000000000000000..dde7c2d45e20f14b086ee1df96c80f6add43acf8 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ICMSHFCSTINIT.sfx differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/ICMSHFCSTINIT_l15 b/tools/conf_tests/small_3D/data/aro/riette/ICMSHFCSTINIT_l15 new file mode 100644 index 0000000000000000000000000000000000000000..801db7ab5a1df09ae65ff510f35c0ec58de80dfb Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/ICMSHFCSTINIT_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette/const.clim.FRANGP0025 b/tools/conf_tests/small_3D/data/aro/riette/const.clim.FRANGP0025 new file mode 100644 index 0000000000000000000000000000000000000000..6dc4d5aeaea9e923cae7e94a0fa7b0e324a6c61c Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette/const.clim.FRANGP0025 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/.transform.py.swp b/tools/conf_tests/small_3D/data/aro/riette2/.transform.py.swp new file mode 100644 index 0000000000000000000000000000000000000000..108184d18b4d84c3a5b093d83de103d02dd54e46 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/.transform.py.swp differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/Const.Clim b/tools/conf_tests/small_3D/data/aro/riette2/Const.Clim new file mode 100644 index 0000000000000000000000000000000000000000..8909e7b06e352c8dec34af53a67b68b85fda11de Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/Const.Clim differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/Const.Clim.sfx b/tools/conf_tests/small_3D/data/aro/riette2/Const.Clim.sfx new file mode 100644 index 0000000000000000000000000000000000000000..e0a11a7c574ae666073b5a6a3a5d6e34d9b72ed0 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/Const.Clim.sfx differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0000_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0000_l15 new file mode 100644 index 0000000000000000000000000000000000000000..a79ad9a6d949ec154a4132efc8e3587314567671 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0000_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0001_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0001_l15 new file mode 100644 index 0000000000000000000000000000000000000000..4b93d4b94ad90e2dd5044e683084a5627c0fddef Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0001_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0002_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0002_l15 new file mode 100644 index 0000000000000000000000000000000000000000..be2ac309a2a43c76dae3429b113358db2b50d777 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0002_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0003_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0003_l15 new file mode 100644 index 0000000000000000000000000000000000000000..e3ed0a6e2b0b349399067e96026e9a8c71c3e30a Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0003_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0004_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0004_l15 new file mode 100644 index 0000000000000000000000000000000000000000..1d39bf4e4efef27bbc1a6d696a3e303c3f33ee06 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0004_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0005_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0005_l15 new file mode 100644 index 0000000000000000000000000000000000000000..760acd95f6edad453bdb63e2bc245c48c77709ac Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0005_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0006_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0006_l15 new file mode 100644 index 0000000000000000000000000000000000000000..52a77eb3cf7c3603a928e8626615bc2828861520 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ELSCFFCSTALBC0006_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ICMSHFCSTINIT.sfx b/tools/conf_tests/small_3D/data/aro/riette2/ICMSHFCSTINIT.sfx new file mode 100644 index 0000000000000000000000000000000000000000..dde7c2d45e20f14b086ee1df96c80f6add43acf8 Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ICMSHFCSTINIT.sfx differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/ICMSHFCSTINIT_l15 b/tools/conf_tests/small_3D/data/aro/riette2/ICMSHFCSTINIT_l15 new file mode 100644 index 0000000000000000000000000000000000000000..5e65061d8cd5e1a2cd07326e999f58158d06c1ef Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/ICMSHFCSTINIT_l15 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/const.clim.FRANGP0025 b/tools/conf_tests/small_3D/data/aro/riette2/const.clim.FRANGP0025 new file mode 100644 index 0000000000000000000000000000000000000000..6dc4d5aeaea9e923cae7e94a0fa7b0e324a6c61c Binary files /dev/null and b/tools/conf_tests/small_3D/data/aro/riette2/const.clim.FRANGP0025 differ diff --git a/tools/conf_tests/small_3D/data/aro/riette2/transform.py b/tools/conf_tests/small_3D/data/aro/riette2/transform.py new file mode 100755 index 0000000000000000000000000000000000000000..7200060ac7bba92d380c985cd8679ceb03277fe3 --- /dev/null +++ b/tools/conf_tests/small_3D/data/aro/riette2/transform.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python3 + +import epygram +epygram.init_env() + +with epygram.formats.resource('ICMSHFCSTINIT_l15', 'a') as r: + for fid in [fid for fid in r.listfields() if fid.endswith('HUMI.SPECIFI')]: + f = r.readfield(fid) + f.setdata(f.getdata() * 1.5) + r.writefield(f) + diff --git a/tools/conf_tests/small_3D/data/fa/arp/cli/t30.m06 b/tools/conf_tests/small_3D/data/fa/arp/cli/t30.m06 new file mode 100644 index 0000000000000000000000000000000000000000..98076c0aab5e7f8b19bbb39d73cfca3b16ea4c25 Binary files /dev/null and b/tools/conf_tests/small_3D/data/fa/arp/cli/t30.m06 differ diff --git a/tools/conf_tests/small_3D/data/fa/arp/his/t30.20060615.h18 b/tools/conf_tests/small_3D/data/fa/arp/his/t30.20060615.h18 new file mode 100644 index 0000000000000000000000000000000000000000..ffbaa64cca7dbaa75fe03de4a1b7dc39b632b69e Binary files /dev/null and b/tools/conf_tests/small_3D/data/fa/arp/his/t30.20060615.h18 differ diff --git a/tools/conf_tests/small_3D/data/fa/lao/atour10.m06 b/tools/conf_tests/small_3D/data/fa/lao/atour10.m06 new file mode 100644 index 0000000000000000000000000000000000000000..277e0b86ce7a3d0499e775c4a2b6b2b2acb01d8f Binary files /dev/null and b/tools/conf_tests/small_3D/data/fa/lao/atour10.m06 differ diff --git a/tools/conf_tests/small_3D/data/fa/lao/glob25.m06 b/tools/conf_tests/small_3D/data/fa/lao/glob25.m06 new file mode 100644 index 0000000000000000000000000000000000000000..029ea10fb29429a9c6bc2c34984d6185541470f9 Binary files /dev/null and b/tools/conf_tests/small_3D/data/fa/lao/glob25.m06 differ diff --git a/tools/conf_tests/small_3D/data/rtm/ifsdata.41r2.tar b/tools/conf_tests/small_3D/data/rtm/ifsdata.41r2.tar new file mode 100644 index 0000000000000000000000000000000000000000..9cbaad6f318f249e5937c5a106b90c019bab5560 Binary files /dev/null and b/tools/conf_tests/small_3D/data/rtm/ifsdata.41r2.tar differ diff --git a/tools/conf_tests/small_3D/data/rtm/radiation_params.47r1_light.tgz b/tools/conf_tests/small_3D/data/rtm/radiation_params.47r1_light.tgz new file mode 100644 index 0000000000000000000000000000000000000000..49c1f3cb2a126e8e99a9977ca3cbd9391e76004d Binary files /dev/null and b/tools/conf_tests/small_3D/data/rtm/radiation_params.47r1_light.tgz differ diff --git a/tools/conf_tests/small_3D/data/rttov11/rtcoef_meteosat_10_seviri.bin b/tools/conf_tests/small_3D/data/rttov11/rtcoef_meteosat_10_seviri.bin new file mode 100644 index 0000000000000000000000000000000000000000..2ea0a81df35f3654590da9c602b43c8c205f69f3 Binary files /dev/null and b/tools/conf_tests/small_3D/data/rttov11/rtcoef_meteosat_10_seviri.bin differ diff --git a/tools/conf_tests/small_3D/data/rttov11/rtcoef_meteosat_9_seviri.bin b/tools/conf_tests/small_3D/data/rttov11/rtcoef_meteosat_9_seviri.bin new file mode 100644 index 0000000000000000000000000000000000000000..ff5394e4cafa77e2a1eb9824c25d0863dfac7657 Binary files /dev/null and b/tools/conf_tests/small_3D/data/rttov11/rtcoef_meteosat_9_seviri.bin differ diff --git a/tools/conf_tests/small_3D/data/rttov11/rtcoef_msg_2_seviri.bin b/tools/conf_tests/small_3D/data/rttov11/rtcoef_msg_2_seviri.bin new file mode 100644 index 0000000000000000000000000000000000000000..ff5394e4cafa77e2a1eb9824c25d0863dfac7657 Binary files /dev/null and b/tools/conf_tests/small_3D/data/rttov11/rtcoef_msg_2_seviri.bin differ diff --git a/tools/conf_tests/small_3D/data/rttov11/rtcoef_msg_3_seviri.bin b/tools/conf_tests/small_3D/data/rttov11/rtcoef_msg_3_seviri.bin new file mode 100644 index 0000000000000000000000000000000000000000..2ea0a81df35f3654590da9c602b43c8c205f69f3 Binary files /dev/null and b/tools/conf_tests/small_3D/data/rttov11/rtcoef_msg_3_seviri.bin differ diff --git a/tools/conf_tests/small_3D/data/rttov11/sccldcoef_meteosat_10_seviri.dat b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_meteosat_10_seviri.dat new file mode 100644 index 0000000000000000000000000000000000000000..603d1f53ce37fdc835f9e0a79856d3f3fcb1902a --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_meteosat_10_seviri.dat @@ -0,0 +1,488 @@ + ! RTTOV coefficient file msg-3 seviri-ir + ! automatic creation by subroutine Rttov_writecoef + ! ------------------------------------------------------ + ! ------------------------------------------------------ +WATERCLOUD_TYPES + ! + 8 ! number of channels for which optical parameters are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 5 ! number of water cloud types + 208 ! number of angles for phase function for water cloud types + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.00 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + stco + 1 !RH values for which parameters are available + 0.00 + 892.857000 !Conversion from LWC to particle density + stma + 1 !RH values for which parameters are available + 0.00 + 266.667000 !Conversion from LWC to particle density + cucc + 1 !RH values for which parameters are available + 0.00 + 1538.461000 !Conversion from LWC to particle density + cucp + 1 !RH values for which parameters are available + 0.00 + 4347.826000 !Conversion from LWC to particle density + cuma + 1 !RH values for which parameters are available + 0.00 + 147.710000 !Conversion from LWC to particle density + ! ------------------------------------------------------ +WATERCLOUD_PARAMETERS + ! + stco00 + 0.23202766E-01 0.11649686E+00 0.67700230E-01 0.64020365E-01 0.65288946E-01 + 0.80441639E-01 0.11286792E+00 0.13403660E+00 + 0.25703752E+00 0.19501935E+00 0.26191947E+00 0.21875679E+00 0.16081280E+00 + 0.74542023E-01 0.55941861E-01 0.74574977E-01 + 0.16351673E+00 0.11567638E+00 0.12305427E+00 0.12006054E+00 0.11973800E+00 + 0.12134679E+00 0.13386101E+00 0.15323022E+00 + stma00 + 0.71545765E-01 0.28205636E+00 0.19559193E+00 0.18824933E+00 0.19093150E+00 + 0.22097471E+00 0.27293381E+00 0.30289865E+00 + 0.51288819E+00 0.34015214E+00 0.48323649E+00 0.51288235E+00 0.45936662E+00 + 0.25709388E+00 0.17983325E+00 0.21519488E+00 + 0.13704444E+00 0.91906473E-01 0.11596603E+00 0.10503107E+00 0.96510902E-01 + 0.88814497E-01 0.97123630E-01 0.11407106E+00 + cucc00 + 0.14271228E-01 0.81859134E-01 0.43193884E-01 0.40555879E-01 0.41534077E-01 + 0.53044684E-01 0.80179699E-01 0.99102184E-01 + 0.20489246E+00 0.17059229E+00 0.19852012E+00 0.13988325E+00 0.92735581E-01 + 0.39963216E-01 0.32218274E-01 0.46361845E-01 + 0.17673728E+00 0.12229248E+00 0.12964804E+00 0.13640064E+00 0.14253764E+00 + 0.15053429E+00 0.16423547E+00 0.18367404E+00 + cucp00 + 0.50993608E-02 0.34318864E-01 0.16074806E-01 0.14982166E-01 0.15441460E-01 + 0.20695796E-01 0.34855202E-01 0.46003547E-01 + 0.14668669E+00 0.82079180E-01 0.69439009E-01 0.41165069E-01 0.25059050E-01 + 0.10385546E-01 0.93279881E-02 0.14881059E-01 + 0.14939226E+00 0.14503263E+00 0.16125387E+00 0.17908175E+00 0.19184540E+00 + 0.20675765E+00 0.22596617E+00 0.25015652E+00 + cuma00 + 0.12536427E+00 0.46162036E+00 0.33849984E+00 0.32717907E+00 0.33126587E+00 + 0.37674958E+00 0.44703662E+00 0.48465157E+00 + 0.79011190E+00 0.48968518E+00 0.67516309E+00 0.81368762E+00 0.79404169E+00 + 0.46693876E+00 0.31942701E+00 0.37094074E+00 + 0.12518208E+00 0.79016067E-01 0.11567782E+00 0.10057466E+00 0.89534186E-01 + 0.81227392E-01 0.88192001E-01 0.10344057E+00 + ! ------------------------------------------------------ +ICECLOUD_TYPES + ! + 8 ! number of channels for which regression coefficients are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 4 ! number of coefficients used in the regression for absorption optical depth + 4 ! number of coefficients used in the regression for scattering optical depth + 4 ! number of coefficients used in the regression for backscattering parameter + 30 ! number of size distributions used in the regression + 2 ! number of ice crystal shapes for which parameters are available + 208 ! number of angles for phase function for ice clouds + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.22 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + ! ------------------------------------------------------ +HEXAGONAL_PARAMETERS + ! + ! Effective diameter for each size distribution + ! + 12.2000 + 15.5200 + 21.1500 + 21.3800 + 22.8700 + 23.8000 + 23.8200 + 28.2000 + 28.4200 + 28.6400 + 29.1000 + 35.2500 + 45.0100 + 45.7100 + 47.3200 + 48.8800 + 48.9400 + 51.7400 + 59.4500 + 60.6400 + 61.2300 + 63.6300 + 68.6100 + 71.0100 + 78.4000 + 82.3000 + 88.3500 + 93.1600 + 95.8900 + 118.3000 + ! + ! Regression coefficients for ice clouds + ! + 0.64003811E+01 -0.26399596E-01 0.71622955E+03 -0.35560801E+04 + -0.76405873E+01 0.41385494E-01 0.15680033E+04 -0.53355415E+04 + -0.55579243E+01 0.30172646E-01 0.14734604E+04 -0.68064727E+04 + -0.20125468E+01 0.12171640E-01 0.12805786E+04 -0.68543853E+04 + -0.99826324E+00 0.67445808E-02 0.12337614E+04 -0.66457583E+04 + -0.63184266E+01 0.32530565E-01 0.14832975E+04 -0.42518696E+04 + -0.10982167E+02 0.57320327E-01 0.16115201E+04 -0.11375728E+04 + -0.11347686E+02 0.55123355E-01 0.17204604E+04 -0.16027778E+04 + -0.16342790E+01 0.49228774E-03 0.15089324E+04 0.12055029E+05 + 0.80843616E+00 -0.23700830E-02 0.12620042E+04 0.58941172E+04 + -0.49926319E+01 0.28845860E-01 0.15568785E+04 0.58446992E+04 + -0.14014416E+02 0.76993890E-01 0.20543347E+04 0.24678651E+03 + -0.24712929E+02 0.13495477E+00 0.26424475E+04 -0.10379197E+05 + 0.10527881E+02 -0.53249929E-01 0.86881561E+03 -0.52981494E+04 + 0.47926178E+01 -0.24675472E-01 0.12622720E+04 -0.41359590E+04 + 0.45071709E+00 0.12993838E-02 0.13965009E+04 -0.19878418E+04 + 0.11908994E+00 -0.19635644E-02 0.14502704E-04 -0.37791235E-07 + 0.62616497E-01 -0.12299709E-02 0.13325643E-04 -0.51607611E-07 + 0.72174162E-01 -0.11697554E-02 0.98224045E-05 -0.30606294E-07 + 0.68324089E-01 -0.84689260E-03 0.45355409E-05 -0.63104415E-08 + 0.56931596E-01 -0.93515049E-03 0.87689823E-05 -0.31551615E-07 + 0.51390402E-01 -0.13644001E-02 0.18834655E-04 -0.83637396E-07 + 0.70129909E-01 -0.80772216E-03 0.11069950E-04 -0.52953983E-07 + 0.10252771E+00 -0.22906575E-02 0.30656807E-04 -0.13378921E-06 + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! ------------------------------------------------------ +AGGREGATE_PARAMETERS + ! + ! + ! Effective diameter for each size distribution + ! + 5.6100 + 8.8800 + 9.0100 + 9.4500 + 14.3500 + 15.8200 + 24.3700 + 25.2400 + 26.4300 + 29.2600 + 32.5200 + 39.5500 + 45.5100 + 46.2700 + 57.9700 + 58.7900 + 63.0300 + 64.0500 + 66.2900 + 76.1600 + 76.4000 + 86.8400 + 88.4200 + 124.3700 + 128.9700 + 130.0400 + 133.0900 + 133.4700 + 139.2800 + 166.4600 + ! + ! Regression coefficients for ice clouds + ! + -0.15282670E+02 0.88552661E-01 0.16587573E+04 -0.24140962E+04 + 0.12832741E+01 0.94161602E-02 0.78553448E+03 -0.25739033E+04 + 0.91405071E-01 0.15127842E-01 0.85235510E+03 -0.27431726E+04 + -0.53135753E+01 0.42180121E-01 0.11354940E+04 -0.32193035E+04 + -0.30236924E+01 0.30210618E-01 0.10431517E+04 -0.29327981E+04 + 0.98832502E+01 -0.39236326E-01 0.50693607E+03 -0.17478582E+04 + 0.10032014E+02 -0.39787620E-01 0.47141330E+03 -0.16472234E+04 + -0.11245131E+01 0.75735883E-02 0.12518818E+04 -0.20311975E+04 + -0.11680892E+02 0.83580606E-01 0.14672323E+04 -0.49353398E+04 + -0.37234646E+02 0.21582274E+00 0.26354929E+04 -0.98802549E+04 + -0.48982624E+02 0.27931580E+00 0.31584883E+04 -0.10609112E+05 + -0.40750679E+02 0.23563761E+00 0.27874944E+04 -0.79119380E+04 + -0.37815338E+02 0.21876369E+00 0.26855503E+04 -0.68213286E+04 + -0.36672970E+02 0.19268803E+00 0.32355210E+04 -0.69164561E+04 + -0.16671980E+02 0.74671552E-01 0.25622366E+04 -0.17568376E+04 + 0.10651572E+02 -0.65036565E-01 0.11677480E+04 0.26043652E+04 + 0.10203798E+00 -0.20213935E-02 0.19825742E-04 -0.62419659E-07 + 0.68776399E-01 -0.13006316E-02 0.11828876E-04 -0.36218459E-07 + 0.75444184E-01 -0.13110972E-02 0.11547753E-04 -0.34814036E-07 + 0.67282818E-01 -0.12141682E-02 0.11035047E-04 -0.33596816E-07 + 0.59988819E-01 -0.10552132E-02 0.94420038E-05 -0.28504887E-07 + 0.14332701E+00 -0.19259106E-02 0.17920498E-04 -0.58291302E-07 + 0.14829031E+00 -0.21389253E-02 0.19855604E-04 -0.63885238E-07 + 0.67149483E-01 -0.30850706E-03 0.34548575E-05 -0.13784123E-07 + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef diff --git a/tools/conf_tests/small_3D/data/rttov11/sccldcoef_meteosat_9_seviri.dat b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_meteosat_9_seviri.dat new file mode 100644 index 0000000000000000000000000000000000000000..720386f53d1ea79da1a037dc48aa10c1eb130c45 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_meteosat_9_seviri.dat @@ -0,0 +1,488 @@ + ! RTTOV coefficient file msg-2 seviri-ir + ! automatic creation by subroutine Rttov_writecoef + ! ------------------------------------------------------ + ! ------------------------------------------------------ +WATERCLOUD_TYPES + ! + 8 ! number of channels for which optical parameters are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 5 ! number of water cloud types + 208 ! number of angles for phase function for water cloud types + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.00 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + stco + 1 !RH values for which parameters are available + 0.00 + 892.857000 !Conversion from LWC to particle density + stma + 1 !RH values for which parameters are available + 0.00 + 266.667000 !Conversion from LWC to particle density + cucc + 1 !RH values for which parameters are available + 0.00 + 1538.461000 !Conversion from LWC to particle density + cucp + 1 !RH values for which parameters are available + 0.00 + 4347.826000 !Conversion from LWC to particle density + cuma + 1 !RH values for which parameters are available + 0.00 + 147.710000 !Conversion from LWC to particle density + ! ------------------------------------------------------ +WATERCLOUD_PARAMETERS + ! + stco00 + 0.23155883E-01 0.11758497E+00 0.67694284E-01 0.64020537E-01 0.65273836E-01 + 0.79797626E-01 0.11361156E+00 0.13385099E+00 + 0.25699320E+00 0.19317754E+00 0.26190320E+00 0.21892682E+00 0.16118217E+00 + 0.75749196E-01 0.56315150E-01 0.74346691E-01 + 0.16357610E+00 0.11517564E+00 0.12304882E+00 0.12006491E+00 0.11973695E+00 + 0.12124952E+00 0.13434003E+00 0.15300749E+00 + stma00 + 0.71425669E-01 0.28345352E+00 0.19558036E+00 0.18824901E+00 0.19090137E+00 + 0.21975628E+00 0.27397069E+00 0.30260509E+00 + 0.51300937E+00 0.33800137E+00 0.48329386E+00 0.51293570E+00 0.45991150E+00 + 0.26106775E+00 0.18039997E+00 0.21474427E+00 + 0.13707726E+00 0.91116197E-01 0.11595777E+00 0.10506295E+00 0.96555658E-01 + 0.88843733E-01 0.97537518E-01 0.11387814E+00 + cucc00 + 0.14240205E-01 0.82843348E-01 0.43189552E-01 0.40555887E-01 0.41522510E-01 + 0.52545421E-01 0.80842040E-01 0.98942131E-01 + 0.20469564E+00 0.16893896E+00 0.19847424E+00 0.14004631E+00 0.92997909E-01 + 0.40596072E-01 0.32518174E-01 0.46190839E-01 + 0.17693228E+00 0.12199723E+00 0.12965183E+00 0.13638164E+00 0.14250210E+00 + 0.15037315E+00 0.16470462E+00 0.18344346E+00 + cucp00 + 0.50882003E-02 0.34867339E-01 0.16072981E-01 0.14982081E-01 0.15436105E-01 + 0.20462370E-01 0.35236623E-01 0.45913592E-01 + 0.14661138E+00 0.81703067E-01 0.69408983E-01 0.41227125E-01 0.25140174E-01 + 0.10538899E-01 0.94487881E-02 0.14815136E-01 + 0.14956141E+00 0.14476196E+00 0.16126938E+00 0.17903826E+00 0.19177549E+00 + 0.20649004E+00 0.22656387E+00 0.24987070E+00 + cuma00 + 0.12518115E+00 0.46320048E+00 0.33848238E+00 0.32717857E+00 0.33122045E+00 + 0.37494481E+00 0.44831717E+00 0.48425457E+00 + 0.79037392E+00 0.48767203E+00 0.67529553E+00 0.81349272E+00 0.79467213E+00 + 0.47415826E+00 0.32013434E+00 0.37026989E+00 + 0.12523417E+00 0.78178652E-01 0.11566994E+00 0.10061928E+00 0.89586414E-01 + 0.81268370E-01 0.88558070E-01 0.10326658E+00 + ! ------------------------------------------------------ +ICECLOUD_TYPES + ! + 8 ! number of channels for which regression coefficients are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 4 ! number of coefficients used in the regression for absorption optical depth + 4 ! number of coefficients used in the regression for scattering optical depth + 4 ! number of coefficients used in the regression for backscattering parameter + 30 ! number of size distributions used in the regression + 2 ! number of ice crystal shapes for which parameters are available + 208 ! number of angles for phase function for ice clouds + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.22 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + ! ------------------------------------------------------ +HEXAGONAL_PARAMETERS + ! + ! Effective diameter for each size distribution + ! + 12.2000 + 15.5200 + 21.1500 + 21.3800 + 22.8700 + 23.8000 + 23.8200 + 28.2000 + 28.4200 + 28.6400 + 29.1000 + 35.2500 + 45.0100 + 45.7100 + 47.3200 + 48.8800 + 48.9400 + 51.7400 + 59.4500 + 60.6400 + 61.2300 + 63.6300 + 68.6100 + 71.0100 + 78.4000 + 82.3000 + 88.3500 + 93.1600 + 95.8900 + 118.3000 + ! + ! Regression coefficients for ice clouds + ! + 0.64560390E+01 -0.26617017E-01 0.71152002E+03 -0.35377593E+04 + -0.76404724E+01 0.41392375E-01 0.15678568E+04 -0.53114175E+04 + -0.55533538E+01 0.30147716E-01 0.14732220E+04 -0.68073877E+04 + -0.20127790E+01 0.12175160E-01 0.12805328E+04 -0.68542261E+04 + -0.10132030E+01 0.68171243E-02 0.12346168E+04 -0.66496938E+04 + -0.61823244E+01 0.31891361E-01 0.14795909E+04 -0.43509292E+04 + -0.10926967E+02 0.56779373E-01 0.16122729E+04 -0.11095165E+04 + -0.11314599E+02 0.54956108E-01 0.17180900E+04 -0.15719603E+04 + -0.17395585E+01 0.10027748E-02 0.15157523E+04 0.12050372E+05 + 0.83406550E+00 -0.24967808E-02 0.12607253E+04 0.58668311E+04 + -0.50016737E+01 0.28888211E-01 0.15574163E+04 0.58421699E+04 + -0.13985133E+02 0.76816164E-01 0.20529607E+04 0.27383163E+03 + -0.24643221E+02 0.13463221E+00 0.26378799E+04 -0.10294289E+05 + 0.10605850E+02 -0.53759940E-01 0.86250732E+03 -0.53237090E+04 + 0.46065230E+01 -0.23491628E-01 0.12683414E+04 -0.40973208E+04 + 0.46827650E+00 0.12179132E-02 0.13961288E+04 -0.20215966E+04 + 0.11924911E+00 -0.19582063E-02 0.14387164E-04 -0.37228553E-07 + 0.62392671E-01 -0.12274018E-02 0.13325430E-04 -0.51682530E-07 + 0.72178148E-01 -0.11693938E-02 0.98145465E-05 -0.30566241E-07 + 0.68358772E-01 -0.84669597E-03 0.45241027E-05 -0.62409633E-08 + 0.57017595E-01 -0.93437289E-03 0.87352046E-05 -0.31352091E-07 + 0.50803129E-01 -0.13583917E-02 0.18712653E-04 -0.83006235E-07 + 0.71368709E-01 -0.87491469E-03 0.12035205E-04 -0.57094979E-07 + 0.10228228E+00 -0.22822872E-02 0.30570453E-04 -0.13347992E-06 + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! ------------------------------------------------------ +AGGREGATE_PARAMETERS + ! + ! + ! Effective diameter for each size distribution + ! + 5.6100 + 8.8800 + 9.0100 + 9.4500 + 14.3500 + 15.8200 + 24.3700 + 25.2400 + 26.4300 + 29.2600 + 32.5200 + 39.5500 + 45.5100 + 46.2700 + 57.9700 + 58.7900 + 63.0300 + 64.0500 + 66.2900 + 76.1600 + 76.4000 + 86.8400 + 88.4200 + 124.3700 + 128.9700 + 130.0400 + 133.0900 + 133.4700 + 139.2800 + 166.4600 + ! + ! Regression coefficients for ice clouds + ! + -0.15296220E+02 0.88595375E-01 0.16590845E+04 -0.24135332E+04 + 0.12863343E+01 0.94013941E-02 0.78546161E+03 -0.25733813E+04 + 0.83698899E-01 0.15163625E-01 0.85290125E+03 -0.27443792E+04 + -0.53057270E+01 0.42141303E-01 0.11350918E+04 -0.32191528E+04 + -0.31417241E+01 0.30814951E-01 0.10484624E+04 -0.29393335E+04 + 0.10049562E+02 -0.39866801E-01 0.48941522E+03 -0.16991787E+04 + 0.10163158E+02 -0.40251113E-01 0.45268637E+03 -0.15928456E+04 + -0.12070209E+01 0.82073761E-02 0.12534381E+04 -0.21103840E+04 + -0.11725669E+02 0.83815582E-01 0.14691466E+04 -0.49388359E+04 + -0.37030697E+02 0.21478081E+00 0.26255532E+04 -0.98504443E+04 + -0.48971470E+02 0.27926400E+00 0.31579312E+04 -0.10605117E+05 + -0.40806377E+02 0.23594555E+00 0.27898118E+04 -0.79238301E+04 + -0.37729065E+02 0.21832100E+00 0.26809041E+04 -0.68140024E+04 + -0.37315380E+02 0.19608220E+00 0.32693083E+04 -0.70734497E+04 + -0.16135473E+02 0.71186647E-01 0.25553252E+04 -0.16182506E+04 + 0.10791972E+02 -0.66063523E-01 0.11650667E+04 0.27078523E+04 + 0.10213593E+00 -0.20222361E-02 0.19833333E-04 -0.62440101E-07 + 0.68740249E-01 -0.13018579E-02 0.11845041E-04 -0.36272677E-07 + 0.75443707E-01 -0.13113663E-02 0.11551386E-04 -0.34826169E-07 + 0.67311712E-01 -0.12145484E-02 0.11037993E-04 -0.33606327E-07 + 0.59893634E-01 -0.10542078E-02 0.94397592E-05 -0.28507563E-07 + 0.14450663E+00 -0.19437495E-02 0.18065604E-04 -0.58720943E-07 + 0.14980169E+00 -0.21661606E-02 0.20094096E-04 -0.64607079E-07 + 0.68530411E-01 -0.35003852E-03 0.38478765E-05 -0.14999923E-07 + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef diff --git a/tools/conf_tests/small_3D/data/rttov11/sccldcoef_msg_2_seviri.dat b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_msg_2_seviri.dat new file mode 100644 index 0000000000000000000000000000000000000000..720386f53d1ea79da1a037dc48aa10c1eb130c45 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_msg_2_seviri.dat @@ -0,0 +1,488 @@ + ! RTTOV coefficient file msg-2 seviri-ir + ! automatic creation by subroutine Rttov_writecoef + ! ------------------------------------------------------ + ! ------------------------------------------------------ +WATERCLOUD_TYPES + ! + 8 ! number of channels for which optical parameters are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 5 ! number of water cloud types + 208 ! number of angles for phase function for water cloud types + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.00 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + stco + 1 !RH values for which parameters are available + 0.00 + 892.857000 !Conversion from LWC to particle density + stma + 1 !RH values for which parameters are available + 0.00 + 266.667000 !Conversion from LWC to particle density + cucc + 1 !RH values for which parameters are available + 0.00 + 1538.461000 !Conversion from LWC to particle density + cucp + 1 !RH values for which parameters are available + 0.00 + 4347.826000 !Conversion from LWC to particle density + cuma + 1 !RH values for which parameters are available + 0.00 + 147.710000 !Conversion from LWC to particle density + ! ------------------------------------------------------ +WATERCLOUD_PARAMETERS + ! + stco00 + 0.23155883E-01 0.11758497E+00 0.67694284E-01 0.64020537E-01 0.65273836E-01 + 0.79797626E-01 0.11361156E+00 0.13385099E+00 + 0.25699320E+00 0.19317754E+00 0.26190320E+00 0.21892682E+00 0.16118217E+00 + 0.75749196E-01 0.56315150E-01 0.74346691E-01 + 0.16357610E+00 0.11517564E+00 0.12304882E+00 0.12006491E+00 0.11973695E+00 + 0.12124952E+00 0.13434003E+00 0.15300749E+00 + stma00 + 0.71425669E-01 0.28345352E+00 0.19558036E+00 0.18824901E+00 0.19090137E+00 + 0.21975628E+00 0.27397069E+00 0.30260509E+00 + 0.51300937E+00 0.33800137E+00 0.48329386E+00 0.51293570E+00 0.45991150E+00 + 0.26106775E+00 0.18039997E+00 0.21474427E+00 + 0.13707726E+00 0.91116197E-01 0.11595777E+00 0.10506295E+00 0.96555658E-01 + 0.88843733E-01 0.97537518E-01 0.11387814E+00 + cucc00 + 0.14240205E-01 0.82843348E-01 0.43189552E-01 0.40555887E-01 0.41522510E-01 + 0.52545421E-01 0.80842040E-01 0.98942131E-01 + 0.20469564E+00 0.16893896E+00 0.19847424E+00 0.14004631E+00 0.92997909E-01 + 0.40596072E-01 0.32518174E-01 0.46190839E-01 + 0.17693228E+00 0.12199723E+00 0.12965183E+00 0.13638164E+00 0.14250210E+00 + 0.15037315E+00 0.16470462E+00 0.18344346E+00 + cucp00 + 0.50882003E-02 0.34867339E-01 0.16072981E-01 0.14982081E-01 0.15436105E-01 + 0.20462370E-01 0.35236623E-01 0.45913592E-01 + 0.14661138E+00 0.81703067E-01 0.69408983E-01 0.41227125E-01 0.25140174E-01 + 0.10538899E-01 0.94487881E-02 0.14815136E-01 + 0.14956141E+00 0.14476196E+00 0.16126938E+00 0.17903826E+00 0.19177549E+00 + 0.20649004E+00 0.22656387E+00 0.24987070E+00 + cuma00 + 0.12518115E+00 0.46320048E+00 0.33848238E+00 0.32717857E+00 0.33122045E+00 + 0.37494481E+00 0.44831717E+00 0.48425457E+00 + 0.79037392E+00 0.48767203E+00 0.67529553E+00 0.81349272E+00 0.79467213E+00 + 0.47415826E+00 0.32013434E+00 0.37026989E+00 + 0.12523417E+00 0.78178652E-01 0.11566994E+00 0.10061928E+00 0.89586414E-01 + 0.81268370E-01 0.88558070E-01 0.10326658E+00 + ! ------------------------------------------------------ +ICECLOUD_TYPES + ! + 8 ! number of channels for which regression coefficients are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 4 ! number of coefficients used in the regression for absorption optical depth + 4 ! number of coefficients used in the regression for scattering optical depth + 4 ! number of coefficients used in the regression for backscattering parameter + 30 ! number of size distributions used in the regression + 2 ! number of ice crystal shapes for which parameters are available + 208 ! number of angles for phase function for ice clouds + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.22 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + ! ------------------------------------------------------ +HEXAGONAL_PARAMETERS + ! + ! Effective diameter for each size distribution + ! + 12.2000 + 15.5200 + 21.1500 + 21.3800 + 22.8700 + 23.8000 + 23.8200 + 28.2000 + 28.4200 + 28.6400 + 29.1000 + 35.2500 + 45.0100 + 45.7100 + 47.3200 + 48.8800 + 48.9400 + 51.7400 + 59.4500 + 60.6400 + 61.2300 + 63.6300 + 68.6100 + 71.0100 + 78.4000 + 82.3000 + 88.3500 + 93.1600 + 95.8900 + 118.3000 + ! + ! Regression coefficients for ice clouds + ! + 0.64560390E+01 -0.26617017E-01 0.71152002E+03 -0.35377593E+04 + -0.76404724E+01 0.41392375E-01 0.15678568E+04 -0.53114175E+04 + -0.55533538E+01 0.30147716E-01 0.14732220E+04 -0.68073877E+04 + -0.20127790E+01 0.12175160E-01 0.12805328E+04 -0.68542261E+04 + -0.10132030E+01 0.68171243E-02 0.12346168E+04 -0.66496938E+04 + -0.61823244E+01 0.31891361E-01 0.14795909E+04 -0.43509292E+04 + -0.10926967E+02 0.56779373E-01 0.16122729E+04 -0.11095165E+04 + -0.11314599E+02 0.54956108E-01 0.17180900E+04 -0.15719603E+04 + -0.17395585E+01 0.10027748E-02 0.15157523E+04 0.12050372E+05 + 0.83406550E+00 -0.24967808E-02 0.12607253E+04 0.58668311E+04 + -0.50016737E+01 0.28888211E-01 0.15574163E+04 0.58421699E+04 + -0.13985133E+02 0.76816164E-01 0.20529607E+04 0.27383163E+03 + -0.24643221E+02 0.13463221E+00 0.26378799E+04 -0.10294289E+05 + 0.10605850E+02 -0.53759940E-01 0.86250732E+03 -0.53237090E+04 + 0.46065230E+01 -0.23491628E-01 0.12683414E+04 -0.40973208E+04 + 0.46827650E+00 0.12179132E-02 0.13961288E+04 -0.20215966E+04 + 0.11924911E+00 -0.19582063E-02 0.14387164E-04 -0.37228553E-07 + 0.62392671E-01 -0.12274018E-02 0.13325430E-04 -0.51682530E-07 + 0.72178148E-01 -0.11693938E-02 0.98145465E-05 -0.30566241E-07 + 0.68358772E-01 -0.84669597E-03 0.45241027E-05 -0.62409633E-08 + 0.57017595E-01 -0.93437289E-03 0.87352046E-05 -0.31352091E-07 + 0.50803129E-01 -0.13583917E-02 0.18712653E-04 -0.83006235E-07 + 0.71368709E-01 -0.87491469E-03 0.12035205E-04 -0.57094979E-07 + 0.10228228E+00 -0.22822872E-02 0.30570453E-04 -0.13347992E-06 + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! ------------------------------------------------------ +AGGREGATE_PARAMETERS + ! + ! + ! Effective diameter for each size distribution + ! + 5.6100 + 8.8800 + 9.0100 + 9.4500 + 14.3500 + 15.8200 + 24.3700 + 25.2400 + 26.4300 + 29.2600 + 32.5200 + 39.5500 + 45.5100 + 46.2700 + 57.9700 + 58.7900 + 63.0300 + 64.0500 + 66.2900 + 76.1600 + 76.4000 + 86.8400 + 88.4200 + 124.3700 + 128.9700 + 130.0400 + 133.0900 + 133.4700 + 139.2800 + 166.4600 + ! + ! Regression coefficients for ice clouds + ! + -0.15296220E+02 0.88595375E-01 0.16590845E+04 -0.24135332E+04 + 0.12863343E+01 0.94013941E-02 0.78546161E+03 -0.25733813E+04 + 0.83698899E-01 0.15163625E-01 0.85290125E+03 -0.27443792E+04 + -0.53057270E+01 0.42141303E-01 0.11350918E+04 -0.32191528E+04 + -0.31417241E+01 0.30814951E-01 0.10484624E+04 -0.29393335E+04 + 0.10049562E+02 -0.39866801E-01 0.48941522E+03 -0.16991787E+04 + 0.10163158E+02 -0.40251113E-01 0.45268637E+03 -0.15928456E+04 + -0.12070209E+01 0.82073761E-02 0.12534381E+04 -0.21103840E+04 + -0.11725669E+02 0.83815582E-01 0.14691466E+04 -0.49388359E+04 + -0.37030697E+02 0.21478081E+00 0.26255532E+04 -0.98504443E+04 + -0.48971470E+02 0.27926400E+00 0.31579312E+04 -0.10605117E+05 + -0.40806377E+02 0.23594555E+00 0.27898118E+04 -0.79238301E+04 + -0.37729065E+02 0.21832100E+00 0.26809041E+04 -0.68140024E+04 + -0.37315380E+02 0.19608220E+00 0.32693083E+04 -0.70734497E+04 + -0.16135473E+02 0.71186647E-01 0.25553252E+04 -0.16182506E+04 + 0.10791972E+02 -0.66063523E-01 0.11650667E+04 0.27078523E+04 + 0.10213593E+00 -0.20222361E-02 0.19833333E-04 -0.62440101E-07 + 0.68740249E-01 -0.13018579E-02 0.11845041E-04 -0.36272677E-07 + 0.75443707E-01 -0.13113663E-02 0.11551386E-04 -0.34826169E-07 + 0.67311712E-01 -0.12145484E-02 0.11037993E-04 -0.33606327E-07 + 0.59893634E-01 -0.10542078E-02 0.94397592E-05 -0.28507563E-07 + 0.14450663E+00 -0.19437495E-02 0.18065604E-04 -0.58720943E-07 + 0.14980169E+00 -0.21661606E-02 0.20094096E-04 -0.64607079E-07 + 0.68530411E-01 -0.35003852E-03 0.38478765E-05 -0.14999923E-07 + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef diff --git a/tools/conf_tests/small_3D/data/rttov11/sccldcoef_msg_3_seviri.dat b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_msg_3_seviri.dat new file mode 100644 index 0000000000000000000000000000000000000000..603d1f53ce37fdc835f9e0a79856d3f3fcb1902a --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov11/sccldcoef_msg_3_seviri.dat @@ -0,0 +1,488 @@ + ! RTTOV coefficient file msg-3 seviri-ir + ! automatic creation by subroutine Rttov_writecoef + ! ------------------------------------------------------ + ! ------------------------------------------------------ +WATERCLOUD_TYPES + ! + 8 ! number of channels for which optical parameters are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 5 ! number of water cloud types + 208 ! number of angles for phase function for water cloud types + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.00 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + stco + 1 !RH values for which parameters are available + 0.00 + 892.857000 !Conversion from LWC to particle density + stma + 1 !RH values for which parameters are available + 0.00 + 266.667000 !Conversion from LWC to particle density + cucc + 1 !RH values for which parameters are available + 0.00 + 1538.461000 !Conversion from LWC to particle density + cucp + 1 !RH values for which parameters are available + 0.00 + 4347.826000 !Conversion from LWC to particle density + cuma + 1 !RH values for which parameters are available + 0.00 + 147.710000 !Conversion from LWC to particle density + ! ------------------------------------------------------ +WATERCLOUD_PARAMETERS + ! + stco00 + 0.23202766E-01 0.11649686E+00 0.67700230E-01 0.64020365E-01 0.65288946E-01 + 0.80441639E-01 0.11286792E+00 0.13403660E+00 + 0.25703752E+00 0.19501935E+00 0.26191947E+00 0.21875679E+00 0.16081280E+00 + 0.74542023E-01 0.55941861E-01 0.74574977E-01 + 0.16351673E+00 0.11567638E+00 0.12305427E+00 0.12006054E+00 0.11973800E+00 + 0.12134679E+00 0.13386101E+00 0.15323022E+00 + stma00 + 0.71545765E-01 0.28205636E+00 0.19559193E+00 0.18824933E+00 0.19093150E+00 + 0.22097471E+00 0.27293381E+00 0.30289865E+00 + 0.51288819E+00 0.34015214E+00 0.48323649E+00 0.51288235E+00 0.45936662E+00 + 0.25709388E+00 0.17983325E+00 0.21519488E+00 + 0.13704444E+00 0.91906473E-01 0.11596603E+00 0.10503107E+00 0.96510902E-01 + 0.88814497E-01 0.97123630E-01 0.11407106E+00 + cucc00 + 0.14271228E-01 0.81859134E-01 0.43193884E-01 0.40555879E-01 0.41534077E-01 + 0.53044684E-01 0.80179699E-01 0.99102184E-01 + 0.20489246E+00 0.17059229E+00 0.19852012E+00 0.13988325E+00 0.92735581E-01 + 0.39963216E-01 0.32218274E-01 0.46361845E-01 + 0.17673728E+00 0.12229248E+00 0.12964804E+00 0.13640064E+00 0.14253764E+00 + 0.15053429E+00 0.16423547E+00 0.18367404E+00 + cucp00 + 0.50993608E-02 0.34318864E-01 0.16074806E-01 0.14982166E-01 0.15441460E-01 + 0.20695796E-01 0.34855202E-01 0.46003547E-01 + 0.14668669E+00 0.82079180E-01 0.69439009E-01 0.41165069E-01 0.25059050E-01 + 0.10385546E-01 0.93279881E-02 0.14881059E-01 + 0.14939226E+00 0.14503263E+00 0.16125387E+00 0.17908175E+00 0.19184540E+00 + 0.20675765E+00 0.22596617E+00 0.25015652E+00 + cuma00 + 0.12536427E+00 0.46162036E+00 0.33849984E+00 0.32717907E+00 0.33126587E+00 + 0.37674958E+00 0.44703662E+00 0.48465157E+00 + 0.79011190E+00 0.48968518E+00 0.67516309E+00 0.81368762E+00 0.79404169E+00 + 0.46693876E+00 0.31942701E+00 0.37094074E+00 + 0.12518208E+00 0.79016067E-01 0.11567782E+00 0.10057466E+00 0.89534186E-01 + 0.81227392E-01 0.88192001E-01 0.10344057E+00 + ! ------------------------------------------------------ +ICECLOUD_TYPES + ! + 8 ! number of channels for which regression coefficients are stored + 0 ! Number of channels for which phase function values are stored + 0 ! index of first channel for which phase function values are available + 4 ! number of coefficients used in the regression for absorption optical depth + 4 ! number of coefficients used in the regression for scattering optical depth + 4 ! number of coefficients used in the regression for backscattering parameter + 30 ! number of size distributions used in the regression + 2 ! number of ice crystal shapes for which parameters are available + 208 ! number of angles for phase function for ice clouds + 0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 + 1.00 1.10 1.20 1.30 1.40 1.50 1.60 1.70 1.80 1.90 + 2.00 2.10 2.20 2.30 2.40 2.50 2.60 2.70 2.80 2.90 + 3.22 4.00 5.00 6.00 7.00 8.00 9.00 10.00 11.00 12.00 + 13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 + 23.00 24.00 25.00 26.00 27.00 28.00 29.00 30.00 31.00 32.00 + 33.00 34.00 35.00 36.00 37.00 38.00 39.00 40.00 41.00 42.00 + 43.00 44.00 45.00 46.00 47.00 48.00 49.00 50.00 51.00 52.00 + 53.00 54.00 55.00 56.00 57.00 58.00 59.00 60.00 61.00 62.00 + 63.00 64.00 65.00 66.00 67.00 68.00 69.00 70.00 71.00 72.00 + 73.00 74.00 75.00 76.00 77.00 78.00 79.00 80.00 81.00 82.00 + 83.00 84.00 85.00 86.00 87.00 88.00 89.00 90.00 91.00 92.00 + 93.00 94.00 95.00 96.00 97.00 98.00 99.00 100.00 101.00 102.00 + 103.00 104.00 105.00 106.00 107.00 108.00 109.00 110.00 111.00 112.00 + 113.00 114.00 115.00 116.00 117.00 118.00 119.00 120.00 121.00 122.00 + 123.00 124.00 125.00 126.00 127.00 128.00 129.00 130.00 131.00 132.00 + 133.00 134.00 135.00 136.00 137.00 138.00 139.00 140.00 141.00 142.00 + 143.00 144.00 145.00 146.00 147.00 148.00 149.00 150.00 151.00 152.00 + 153.00 154.00 155.00 156.00 157.00 158.00 159.00 160.00 161.00 162.00 + 163.00 164.00 165.00 166.00 167.00 168.00 169.00 170.00 171.00 172.00 + 173.00 174.00 175.00 176.00 177.00 178.00 179.00 180.00 + ! ------------------------------------------------------ +HEXAGONAL_PARAMETERS + ! + ! Effective diameter for each size distribution + ! + 12.2000 + 15.5200 + 21.1500 + 21.3800 + 22.8700 + 23.8000 + 23.8200 + 28.2000 + 28.4200 + 28.6400 + 29.1000 + 35.2500 + 45.0100 + 45.7100 + 47.3200 + 48.8800 + 48.9400 + 51.7400 + 59.4500 + 60.6400 + 61.2300 + 63.6300 + 68.6100 + 71.0100 + 78.4000 + 82.3000 + 88.3500 + 93.1600 + 95.8900 + 118.3000 + ! + ! Regression coefficients for ice clouds + ! + 0.64003811E+01 -0.26399596E-01 0.71622955E+03 -0.35560801E+04 + -0.76405873E+01 0.41385494E-01 0.15680033E+04 -0.53355415E+04 + -0.55579243E+01 0.30172646E-01 0.14734604E+04 -0.68064727E+04 + -0.20125468E+01 0.12171640E-01 0.12805786E+04 -0.68543853E+04 + -0.99826324E+00 0.67445808E-02 0.12337614E+04 -0.66457583E+04 + -0.63184266E+01 0.32530565E-01 0.14832975E+04 -0.42518696E+04 + -0.10982167E+02 0.57320327E-01 0.16115201E+04 -0.11375728E+04 + -0.11347686E+02 0.55123355E-01 0.17204604E+04 -0.16027778E+04 + -0.16342790E+01 0.49228774E-03 0.15089324E+04 0.12055029E+05 + 0.80843616E+00 -0.23700830E-02 0.12620042E+04 0.58941172E+04 + -0.49926319E+01 0.28845860E-01 0.15568785E+04 0.58446992E+04 + -0.14014416E+02 0.76993890E-01 0.20543347E+04 0.24678651E+03 + -0.24712929E+02 0.13495477E+00 0.26424475E+04 -0.10379197E+05 + 0.10527881E+02 -0.53249929E-01 0.86881561E+03 -0.52981494E+04 + 0.47926178E+01 -0.24675472E-01 0.12622720E+04 -0.41359590E+04 + 0.45071709E+00 0.12993838E-02 0.13965009E+04 -0.19878418E+04 + 0.11908994E+00 -0.19635644E-02 0.14502704E-04 -0.37791235E-07 + 0.62616497E-01 -0.12299709E-02 0.13325643E-04 -0.51607611E-07 + 0.72174162E-01 -0.11697554E-02 0.98224045E-05 -0.30606294E-07 + 0.68324089E-01 -0.84689260E-03 0.45355409E-05 -0.63104415E-08 + 0.56931596E-01 -0.93515049E-03 0.87689823E-05 -0.31551615E-07 + 0.51390402E-01 -0.13644001E-02 0.18834655E-04 -0.83637396E-07 + 0.70129909E-01 -0.80772216E-03 0.11069950E-04 -0.52953983E-07 + 0.10252771E+00 -0.22906575E-02 0.30656807E-04 -0.13378921E-06 + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! + ! Phase function values + ! + Hexagonal ! default name for rttov_writecoef + ! ------------------------------------------------------ +AGGREGATE_PARAMETERS + ! + ! + ! Effective diameter for each size distribution + ! + 5.6100 + 8.8800 + 9.0100 + 9.4500 + 14.3500 + 15.8200 + 24.3700 + 25.2400 + 26.4300 + 29.2600 + 32.5200 + 39.5500 + 45.5100 + 46.2700 + 57.9700 + 58.7900 + 63.0300 + 64.0500 + 66.2900 + 76.1600 + 76.4000 + 86.8400 + 88.4200 + 124.3700 + 128.9700 + 130.0400 + 133.0900 + 133.4700 + 139.2800 + 166.4600 + ! + ! Regression coefficients for ice clouds + ! + -0.15282670E+02 0.88552661E-01 0.16587573E+04 -0.24140962E+04 + 0.12832741E+01 0.94161602E-02 0.78553448E+03 -0.25739033E+04 + 0.91405071E-01 0.15127842E-01 0.85235510E+03 -0.27431726E+04 + -0.53135753E+01 0.42180121E-01 0.11354940E+04 -0.32193035E+04 + -0.30236924E+01 0.30210618E-01 0.10431517E+04 -0.29327981E+04 + 0.98832502E+01 -0.39236326E-01 0.50693607E+03 -0.17478582E+04 + 0.10032014E+02 -0.39787620E-01 0.47141330E+03 -0.16472234E+04 + -0.11245131E+01 0.75735883E-02 0.12518818E+04 -0.20311975E+04 + -0.11680892E+02 0.83580606E-01 0.14672323E+04 -0.49353398E+04 + -0.37234646E+02 0.21582274E+00 0.26354929E+04 -0.98802549E+04 + -0.48982624E+02 0.27931580E+00 0.31584883E+04 -0.10609112E+05 + -0.40750679E+02 0.23563761E+00 0.27874944E+04 -0.79119380E+04 + -0.37815338E+02 0.21876369E+00 0.26855503E+04 -0.68213286E+04 + -0.36672970E+02 0.19268803E+00 0.32355210E+04 -0.69164561E+04 + -0.16671980E+02 0.74671552E-01 0.25622366E+04 -0.17568376E+04 + 0.10651572E+02 -0.65036565E-01 0.11677480E+04 0.26043652E+04 + 0.10203798E+00 -0.20213935E-02 0.19825742E-04 -0.62419659E-07 + 0.68776399E-01 -0.13006316E-02 0.11828876E-04 -0.36218459E-07 + 0.75444184E-01 -0.13110972E-02 0.11547753E-04 -0.34814036E-07 + 0.67282818E-01 -0.12141682E-02 0.11035047E-04 -0.33596816E-07 + 0.59988819E-01 -0.10552132E-02 0.94420038E-05 -0.28504887E-07 + 0.14332701E+00 -0.19259106E-02 0.17920498E-04 -0.58291302E-07 + 0.14829031E+00 -0.21389253E-02 0.19855604E-04 -0.63885238E-07 + 0.67149483E-01 -0.30850706E-03 0.34548575E-05 -0.13784123E-07 + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef + ! + ! Phase function values + ! + aggregate ! default name for rttov_writecoef diff --git a/tools/conf_tests/small_3D/data/rttov12/rtcoef_meteosat_10_seviri.dat b/tools/conf_tests/small_3D/data/rttov12/rtcoef_meteosat_10_seviri.dat new file mode 120000 index 0000000000000000000000000000000000000000..97e381a1d99a1e52044bbbc018333f6c92938a39 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov12/rtcoef_meteosat_10_seviri.dat @@ -0,0 +1 @@ +rtcoef_msg_3_seviri.dat \ No newline at end of file diff --git a/tools/conf_tests/small_3D/data/rttov12/rtcoef_meteosat_9_seviri.dat b/tools/conf_tests/small_3D/data/rttov12/rtcoef_meteosat_9_seviri.dat new file mode 120000 index 0000000000000000000000000000000000000000..ab13be29008ff1adec560cf2609c7fceb104ee18 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov12/rtcoef_meteosat_9_seviri.dat @@ -0,0 +1 @@ +rtcoef_msg_2_seviri.dat \ No newline at end of file diff --git a/tools/conf_tests/small_3D/data/rttov12/rtcoef_msg_2_seviri.dat b/tools/conf_tests/small_3D/data/rttov12/rtcoef_msg_2_seviri.dat new file mode 100644 index 0000000000000000000000000000000000000000..e1e7d61deaf58bbfd60685dff0f46ff0b98fab15 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov12/rtcoef_msg_2_seviri.dat @@ -0,0 +1,4780 @@ + ! RTTOV coefficient file msg-2 seviri-ir + ! Automatic creation by subroutine rttov_writecoef + ! RTTOV library version 12.1.0 + ! ------------------------------------------------------ +IDENTIFICATION + ! + 12 2 21 ! Platform sat_id instrument + msg-2 seviri-ir + ir ! Sensor type [ir,mw,hi,po] + 12 ! RTTOV coefficient file version number + Created by rttov_lbl_make_coef.exe + 2016 11 10 ! Creation date + ! ------------------------------------------------------ +LINE-BY-LINE + ! Line-by-line and other information + ! +LBLRTM_DB1/wv-ozone-co2/l54/avg/msg-2-seviri-ir +LBLRTM +Created at CMS, September 2016 +pascal.brunel@meteo.fr +Software = lblrtm_v12.2 +Continuum = contnm.f(Revision: 16421) mt_ckd_2.5.2 (Jan 2011) +LBL data = lblrtm_v12.2/aer_v_3.2 +Profiles = based on ECMWF_83P 2013 (marco.matricardi@ecmwf.int) revised for 1970-202x + PROFILES_ECMWF_83_2016_CO2FIX 2 variable gases h2o, o3 + PROFILES_ECMWF_83_2016_CO2VAR 3 variable gases h2o, co2, o3 + PROFILES_ECMWF_83_2016_CH4VAR 6 variable gases h2o, co2, o3, n2o, co, ch4 + PROFILES_ECMWF_83_2016_SO2VAR 7 variable gases h2o, co2, o3, n2o, co, ch4, so2 + Minor gases from ECMWF_83P 2013 (marco.matricardi@ecmwf.int) and US76 +Secants for LbL = 14 +LbL spectral range 175-3300cm-1 LbL interpolated/averaged at 0.001cm-1 +Spectral resolution for storage 0.25cm-1 +High resolution sounders, convolution at 0.001cm-1 +Secant angles used for coefficient generation = + 0 37 48 55 60 64 +Some channels were taken from rtcoef_msg_2_seviri-ir.H5--planck-weighted: + 1 2 3 + ! ------------------------------------------------------ +FAST_MODEL_VARIABLES + ! + ! + RTTOV8 ! Fast model name + 8 ! Fast model version compatibility level + 8 ! Number of channels described in the coef file + 5 ! Number of gases described in the coef file + 0 ! PC compatibility level + 0 ! Zeeman flag + Mixed_gases ! Gas identification + 10 10 54 ! Variables/predictors levels (pressure/absorber) + Water_vapour ! Gas identification + 12 12 54 ! Variables/predictors levels (pressure/absorber) + Ozone ! Gas identification + 11 11 54 ! Variables/predictors levels (pressure/absorber) + WV_Continuum ! Gas identification + 4 4 54 ! Variables/predictors levels (pressure/absorber) + CO2 ! Gas identification + 10 10 54 ! Variables/predictors levels (pressure/absorber) + ! ------------------------------------------------------ +README_SPECTRAL_RESPONSE_FUNCTION + ! +README file for MSG-2 SEVIRI filter functions + +Reference file: EUM-MSG-TEN-06-0010 MSG_SEVIRI_Spectral_Response_Characterisation.XLS +available on the web page +http://www.eumetsat.int/Home/Main/DataProducts/Calibration/MSGCalibration/index.htm?l=en +see link: + +LinkSpectral responses for Meteosat Second Generation (MSG) (ZIP, 226 KB). +Note: SEVIRI PFM is onboard Meteosat-8, SEVIRI FM2 is onboard Meteosat-9, SEVIRI FM3 is onboard MSG-3, + and SEVIRI FM4 is onboard MSG-4 (data not yet available). +Document Change Record +Issue Date DCN No Author Changes +1 1/19/2006 - GEO/GF First Issue + +This file was not used for creating the MSG-2 SRFs, because it was not available in 2004, the SRFs +were taken from file SRC_FM2_01.xls provided by Lothar Schueller <Schueller@eumetsat.de> +The values are absolutely the same as the 2006 reference file + +The IR channels spectral response function are taken from the 95K instrument temperature + +Excel sheets are converted to ASCII text files +Wavelenghts are converted to wavenumbers + + 3.9mu channel is truncated to 3100cm-1 + 6.2mu channel truncated in [1331,1785]cm-1 to conform to MSG-1 + ! ------------------------------------------------------ +FILTER_FUNCTIONS + ! + ! Channel number (from instrument original description) + ! Channel status + ! Central wavenumber + ! Band correction coefficients (offset, slope) + ! Gamma correction factor + 1 1 0.2557941699E+04 0.3135399839E+01 0.9931972704E+00 0.1000000000E+01 + 2 1 0.1591126324E+04 0.1581525872E+01 0.9947403586E+00 0.1000000000E+01 + 3 1 0.1358237134E+04 0.2934508218E+00 0.9988613279E+00 0.1000000000E+01 + 4 1 0.1147808176E+04 0.8538888433E-01 0.9995936330E+00 0.1000000000E+01 + 5 1 0.1035030870E+04 0.2045356574E-01 0.9998835958E+00 0.1000000000E+01 + 6 1 0.9287465621E+03 0.1473492409E+00 0.9988664791E+00 0.1000000000E+01 + 7 1 0.8345652274E+03 0.3113632927E-01 0.9994487815E+00 0.1000000000E+01 + 8 1 0.7492118493E+03 -0.5528016641E-01 0.9995511820E+00 0.1000000000E+01 + ! ------------------------------------------------------ +FUNDAMENTAL_CONSTANTS + ! + ! Units of constants for spectral radiance + ! First radiation constant (mW/(m2.sr.cm-4)) + ! Second radiation constant (cm.K) + 1.191042953E-05 1.4387774 ! Planck constants + 35800.0 ! Nominal satellite height (km) + ! ------------------------------------------------------ +PLANCK_WEIGHTED + ! + ! Channel number + ! Planck-weighted flag (1 => yes; 0 => no) + 1 1 + 2 1 + 3 1 + 4 0 + 5 0 + 6 0 + 7 0 + 8 0 + ! ------------------------------------------------------ +SSIREM + ! + ! Channel number + ! 5 coefficients for emissivity model SSIREM + 1 ! Version number + 1 0.9768317 0.0187568 0.0231753 4.0 8.0 + 2 0.9799679 0.0171259 0.0226824 4.0 8.0 + 3 0.9820291 0.0157859 0.0221257 4.0 8.0 + 4 0.9854337 0.0134884 0.0210211 4.0 8.0 + 5 0.9884478 0.0112102 0.0196682 4.0 8.0 + 6 0.9922463 0.0081346 0.0177824 4.0 8.0 + 7 0.9880661 0.0147005 0.0252100 4.0 8.0 + 8 0.9716000 0.0076400 0.0535217 3.0 6.0 + ! ------------------------------------------------------ +IR_SEA_EMIS + ! + 1 ! Version number + 11 ! Number of coefficients per channel + 75.000 301.200 ! Reference zenith angle and Tskin values + 0.97614791E+00 -0.58023234E-05 -0.27191374E-06 0.80671746E+00 0.58744838E-02 + -0.11801483E-03 0.19550754E+04 0.30982769E+02 0.15159441E+03 0.00000000E+00 + 0.00000000E+00 0.97930480E+00 -0.52816487E-05 -0.25659949E-06 0.81404328E+00 + 0.57800933E-02 -0.11645784E-03 0.19654672E+04 0.31594929E+02 0.15337692E+03 + -0.10000027E+01 0.34016507E-05 0.98150356E+00 -0.48625391E-05 -0.24089435E-06 + 0.82057513E+00 0.56779673E-02 -0.11475027E-03 0.19856129E+04 0.32202373E+02 + 0.15550358E+03 -0.99999388E+00 0.18661547E-04 0.98467385E+00 -0.42375843E-05 + -0.21742751E-06 0.83074545E+00 0.55060067E-02 -0.11180440E-03 0.20191622E+04 + 0.33234186E+02 0.15906873E+03 -0.99996659E+00 0.82638524E-04 0.98738782E+00 + -0.36596204E-05 -0.19407574E-06 0.84094876E+00 0.53142820E-02 -0.10845307E-03 + 0.20614501E+04 0.34397863E+02 0.16325950E+03 -0.99997206E+00 0.92308518E-04 + 0.99143514E+00 -0.27320394E-05 -0.15482406E-06 0.85828043E+00 0.49632874E-02 + -0.10221243E-03 0.21309459E+04 0.36442001E+02 0.17114669E+03 -0.99999013E+00 + 0.11304902E-03 0.98783250E+00 -0.41821138E-05 -0.25189766E-06 0.81568866E+00 + 0.60400299E-02 -0.12149227E-03 0.17300796E+04 0.29317460E+02 0.14497483E+03 + -0.99986624E+00 0.18458621E-03 0.97321695E+00 -0.82531693E-05 -0.45176439E-06 + 0.75832118E+00 0.69518434E-02 -0.13587276E-03 0.16436728E+04 0.26152933E+02 + 0.13251271E+03 -0.99980624E+00 0.20111099E-04 + ! ------------------------------------------------------ +REFERENCE_PROFILE + ! + ! Reference pressure (hPa), reference temperature (K) and + ! reference/background volume mixing ratios (ppmv) for each gas + ! Note that mixing ratio is "missing" for mixed gases + ! Mixed_gases + 0.0050 191.313 0.900000E+38 0.900000E+38 + 0.0131 197.579 0.900000E+38 0.900000E+38 + 0.0304 208.936 0.900000E+38 0.900000E+38 + 0.0644 224.429 0.900000E+38 0.900000E+38 + 0.1263 241.278 0.900000E+38 0.900000E+38 + 0.2324 255.512 0.900000E+38 0.900000E+38 + 0.4052 263.063 0.900000E+38 0.900000E+38 + 0.6749 263.743 0.900000E+38 0.900000E+38 + 1.0801 259.027 0.900000E+38 0.900000E+38 + 1.6691 252.271 0.900000E+38 0.900000E+38 + 2.5011 245.349 0.900000E+38 0.900000E+38 + 3.6462 238.052 0.900000E+38 0.900000E+38 + 5.1864 231.275 0.900000E+38 0.900000E+38 + 7.2150 225.435 0.900000E+38 0.900000E+38 + 9.8368 220.998 0.900000E+38 0.900000E+38 + 13.1672 218.057 0.900000E+38 0.900000E+38 + 17.3308 215.687 0.900000E+38 0.900000E+38 + 22.4601 213.682 0.900000E+38 0.900000E+38 + 28.6937 211.946 0.900000E+38 0.900000E+38 + 36.1735 210.653 0.900000E+38 0.900000E+38 + 45.0430 209.238 0.900000E+38 0.900000E+38 + 55.4433 207.879 0.900000E+38 0.900000E+38 + 67.5109 206.848 0.900000E+38 0.900000E+38 + 81.3744 205.749 0.900000E+38 0.900000E+38 + 97.1505 205.737 0.900000E+38 0.900000E+38 + 114.9415 207.457 0.900000E+38 0.900000E+38 + 134.8318 210.060 0.900000E+38 0.900000E+38 + 156.8846 212.535 0.900000E+38 0.900000E+38 + 181.1394 214.742 0.900000E+38 0.900000E+38 + 207.6092 217.193 0.900000E+38 0.900000E+38 + 236.2784 220.448 0.900000E+38 0.900000E+38 + 267.1012 224.303 0.900000E+38 0.900000E+38 + 300.0000 228.567 0.900000E+38 0.900000E+38 + 334.8648 233.110 0.900000E+38 0.900000E+38 + 371.5529 237.639 0.900000E+38 0.900000E+38 + 409.8893 242.080 0.900000E+38 0.900000E+38 + 449.6677 246.270 0.900000E+38 0.900000E+38 + 490.6516 250.193 0.900000E+38 0.900000E+38 + 532.5769 253.926 0.900000E+38 0.900000E+38 + 575.1538 257.362 0.900000E+38 0.900000E+38 + 618.0706 259.963 0.900000E+38 0.900000E+38 + 660.9965 262.401 0.900000E+38 0.900000E+38 + 703.5863 264.647 0.900000E+38 0.900000E+38 + 745.4841 266.631 0.900000E+38 0.900000E+38 + 786.3278 268.280 0.900000E+38 0.900000E+38 + 825.7546 269.621 0.900000E+38 0.900000E+38 + 863.4047 270.777 0.900000E+38 0.900000E+38 + 898.9275 271.651 0.900000E+38 0.900000E+38 + 931.9853 272.503 0.900000E+38 0.900000E+38 + 962.2587 273.447 0.900000E+38 0.900000E+38 + 989.4510 274.216 0.900000E+38 0.900000E+38 + 1013.2923 274.597 0.900000E+38 0.900000E+38 + 1033.5436 274.625 0.900000E+38 0.900000E+38 + 1050.0000 274.633 0.900000E+38 0.900000E+38 + ! Water_vapour + 0.0050 191.313 0.262772E+01 0.262772E+01 + 0.0131 197.579 0.310453E+01 0.310453E+01 + 0.0304 208.936 0.393918E+01 0.393918E+01 + 0.0644 224.429 0.486750E+01 0.486750E+01 + 0.1263 241.278 0.554010E+01 0.554010E+01 + 0.2324 255.512 0.587060E+01 0.587060E+01 + 0.4052 263.063 0.598199E+01 0.598199E+01 + 0.6749 263.743 0.598047E+01 0.598047E+01 + 1.0801 259.027 0.586610E+01 0.586610E+01 + 1.6691 252.271 0.565885E+01 0.565885E+01 + 2.5011 245.349 0.543432E+01 0.543432E+01 + 3.6462 238.052 0.522027E+01 0.522027E+01 + 5.1864 231.275 0.499416E+01 0.499416E+01 + 7.2150 225.435 0.476098E+01 0.476098E+01 + 9.8368 220.998 0.452508E+01 0.452508E+01 + 13.1672 218.057 0.426713E+01 0.426713E+01 + 17.3308 215.687 0.402139E+01 0.402139E+01 + 22.4601 213.682 0.380384E+01 0.380384E+01 + 28.6937 211.946 0.363522E+01 0.363522E+01 + 36.1735 210.653 0.350877E+01 0.350877E+01 + 45.0430 209.238 0.344182E+01 0.344182E+01 + 55.4433 207.879 0.346107E+01 0.346107E+01 + 67.5109 206.848 0.352157E+01 0.352157E+01 + 81.3744 205.749 0.375882E+01 0.375882E+01 + 97.1505 205.737 0.393261E+01 0.393261E+01 + 114.9415 207.457 0.550984E+01 0.550984E+01 + 134.8318 210.060 0.101032E+02 0.101032E+02 + 156.8846 212.535 0.215795E+02 0.215795E+02 + 181.1394 214.742 0.493968E+02 0.493968E+02 + 207.6092 217.193 0.941923E+02 0.941923E+02 + 236.2784 220.448 0.183078E+03 0.183078E+03 + 267.1012 224.303 0.335379E+03 0.335379E+03 + 300.0000 228.567 0.548621E+03 0.548621E+03 + 334.8648 233.110 0.864657E+03 0.864657E+03 + 371.5529 237.639 0.117500E+04 0.117500E+04 + 409.8893 242.080 0.152513E+04 0.152513E+04 + 449.6677 246.270 0.200679E+04 0.200679E+04 + 490.6516 250.193 0.262552E+04 0.262552E+04 + 532.5769 253.926 0.331061E+04 0.331061E+04 + 575.1538 257.362 0.393078E+04 0.393078E+04 + 618.0706 259.963 0.453822E+04 0.453822E+04 + 660.9965 262.401 0.517545E+04 0.517545E+04 + 703.5863 264.647 0.590779E+04 0.590779E+04 + 745.4841 266.631 0.678572E+04 0.678572E+04 + 786.3278 268.280 0.772527E+04 0.772527E+04 + 825.7546 269.621 0.864842E+04 0.864842E+04 + 863.4047 270.777 0.937278E+04 0.937278E+04 + 898.9275 271.651 0.990063E+04 0.990063E+04 + 931.9853 272.503 0.105103E+05 0.105103E+05 + 962.2587 273.447 0.111002E+05 0.111002E+05 + 989.4510 274.216 0.113614E+05 0.113614E+05 + 1013.2923 274.597 0.115064E+05 0.115064E+05 + 1033.5436 274.625 0.113242E+05 0.113242E+05 + 1050.0000 274.633 0.111573E+05 0.111573E+05 + ! Ozone + 0.0050 191.313 0.296166E+00 0.296166E+00 + 0.0131 197.579 0.320791E+00 0.320791E+00 + 0.0304 208.936 0.380517E+00 0.380517E+00 + 0.0644 224.429 0.526745E+00 0.526745E+00 + 0.1263 241.278 0.769079E+00 0.769079E+00 + 0.2324 255.512 0.107400E+01 0.107400E+01 + 0.4052 263.063 0.147091E+01 0.147091E+01 + 0.6749 263.743 0.199110E+01 0.199110E+01 + 1.0801 259.027 0.278683E+01 0.278683E+01 + 1.6691 252.271 0.375638E+01 0.375638E+01 + 2.5011 245.349 0.486419E+01 0.486419E+01 + 3.6462 238.052 0.595341E+01 0.595341E+01 + 5.1864 231.275 0.676255E+01 0.676255E+01 + 7.2150 225.435 0.710919E+01 0.710919E+01 + 9.8368 220.998 0.706019E+01 0.706019E+01 + 13.1672 218.057 0.657373E+01 0.657373E+01 + 17.3308 215.687 0.568748E+01 0.568748E+01 + 22.4601 213.682 0.470472E+01 0.470472E+01 + 28.6937 211.946 0.386951E+01 0.386951E+01 + 36.1735 210.653 0.311078E+01 0.311078E+01 + 45.0430 209.238 0.247791E+01 0.247791E+01 + 55.4433 207.879 0.190696E+01 0.190696E+01 + 67.5109 206.848 0.144011E+01 0.144011E+01 + 81.3744 205.749 0.102021E+01 0.102021E+01 + 97.1505 205.737 0.733271E+00 0.733271E+00 + 114.9415 207.457 0.603950E+00 0.603950E+00 + 134.8318 210.060 0.489326E+00 0.489326E+00 + 156.8846 212.535 0.387625E+00 0.387625E+00 + 181.1394 214.742 0.284290E+00 0.284290E+00 + 207.6092 217.193 0.198038E+00 0.198038E+00 + 236.2784 220.448 0.145005E+00 0.145005E+00 + 267.1012 224.303 0.109867E+00 0.109867E+00 + 300.0000 228.567 0.862935E-01 0.862935E-01 + 334.8648 233.110 0.726348E-01 0.726348E-01 + 371.5529 237.639 0.631269E-01 0.631269E-01 + 409.8893 242.080 0.574107E-01 0.574107E-01 + 449.6677 246.270 0.537303E-01 0.537303E-01 + 490.6516 250.193 0.517329E-01 0.517329E-01 + 532.5769 253.926 0.502232E-01 0.502232E-01 + 575.1538 257.362 0.495550E-01 0.495550E-01 + 618.0706 259.963 0.491254E-01 0.491254E-01 + 660.9965 262.401 0.475869E-01 0.475869E-01 + 703.5863 264.647 0.471438E-01 0.471438E-01 + 745.4841 266.631 0.461746E-01 0.461746E-01 + 786.3278 268.280 0.446271E-01 0.446271E-01 + 825.7546 269.621 0.430512E-01 0.430512E-01 + 863.4047 270.777 0.414805E-01 0.414805E-01 + 898.9275 271.651 0.399446E-01 0.399446E-01 + 931.9853 272.503 0.376030E-01 0.376030E-01 + 962.2587 273.447 0.343882E-01 0.343882E-01 + 989.4510 274.216 0.303838E-01 0.303838E-01 + 1013.2923 274.597 0.278440E-01 0.278440E-01 + 1033.5436 274.625 0.274868E-01 0.274868E-01 + 1050.0000 274.633 0.273608E-01 0.273608E-01 + ! WV_Continuum + 0.0050 191.313 0.262772E+01 0.262772E+01 + 0.0131 197.579 0.310453E+01 0.310453E+01 + 0.0304 208.936 0.393918E+01 0.393918E+01 + 0.0644 224.429 0.486750E+01 0.486750E+01 + 0.1263 241.278 0.554010E+01 0.554010E+01 + 0.2324 255.512 0.587060E+01 0.587060E+01 + 0.4052 263.063 0.598199E+01 0.598199E+01 + 0.6749 263.743 0.598047E+01 0.598047E+01 + 1.0801 259.027 0.586610E+01 0.586610E+01 + 1.6691 252.271 0.565885E+01 0.565885E+01 + 2.5011 245.349 0.543432E+01 0.543432E+01 + 3.6462 238.052 0.522027E+01 0.522027E+01 + 5.1864 231.275 0.499416E+01 0.499416E+01 + 7.2150 225.435 0.476098E+01 0.476098E+01 + 9.8368 220.998 0.452508E+01 0.452508E+01 + 13.1672 218.057 0.426713E+01 0.426713E+01 + 17.3308 215.687 0.402139E+01 0.402139E+01 + 22.4601 213.682 0.380384E+01 0.380384E+01 + 28.6937 211.946 0.363522E+01 0.363522E+01 + 36.1735 210.653 0.350877E+01 0.350877E+01 + 45.0430 209.238 0.344182E+01 0.344182E+01 + 55.4433 207.879 0.346107E+01 0.346107E+01 + 67.5109 206.848 0.352157E+01 0.352157E+01 + 81.3744 205.749 0.375882E+01 0.375882E+01 + 97.1505 205.737 0.393261E+01 0.393261E+01 + 114.9415 207.457 0.550984E+01 0.550984E+01 + 134.8318 210.060 0.101032E+02 0.101032E+02 + 156.8846 212.535 0.215795E+02 0.215795E+02 + 181.1394 214.742 0.493968E+02 0.493968E+02 + 207.6092 217.193 0.941923E+02 0.941923E+02 + 236.2784 220.448 0.183078E+03 0.183078E+03 + 267.1012 224.303 0.335379E+03 0.335379E+03 + 300.0000 228.567 0.548621E+03 0.548621E+03 + 334.8648 233.110 0.864657E+03 0.864657E+03 + 371.5529 237.639 0.117500E+04 0.117500E+04 + 409.8893 242.080 0.152513E+04 0.152513E+04 + 449.6677 246.270 0.200679E+04 0.200679E+04 + 490.6516 250.193 0.262552E+04 0.262552E+04 + 532.5769 253.926 0.331061E+04 0.331061E+04 + 575.1538 257.362 0.393078E+04 0.393078E+04 + 618.0706 259.963 0.453822E+04 0.453822E+04 + 660.9965 262.401 0.517545E+04 0.517545E+04 + 703.5863 264.647 0.590779E+04 0.590779E+04 + 745.4841 266.631 0.678572E+04 0.678572E+04 + 786.3278 268.280 0.772527E+04 0.772527E+04 + 825.7546 269.621 0.864842E+04 0.864842E+04 + 863.4047 270.777 0.937278E+04 0.937278E+04 + 898.9275 271.651 0.990063E+04 0.990063E+04 + 931.9853 272.503 0.105103E+05 0.105103E+05 + 962.2587 273.447 0.111002E+05 0.111002E+05 + 989.4510 274.216 0.113614E+05 0.113614E+05 + 1013.2923 274.597 0.115064E+05 0.115064E+05 + 1033.5436 274.625 0.113242E+05 0.113242E+05 + 1050.0000 274.633 0.111573E+05 0.111573E+05 + ! CO2 + 0.0050 191.313 0.386188E+03 0.386188E+03 + 0.0131 197.579 0.386196E+03 0.386196E+03 + 0.0304 208.936 0.386218E+03 0.386218E+03 + 0.0644 224.429 0.386258E+03 0.386258E+03 + 0.1263 241.278 0.386329E+03 0.386329E+03 + 0.2324 255.512 0.386449E+03 0.386449E+03 + 0.4052 263.063 0.386614E+03 0.386614E+03 + 0.6749 263.743 0.386756E+03 0.386756E+03 + 1.0801 259.027 0.386571E+03 0.386571E+03 + 1.6691 252.271 0.386218E+03 0.386218E+03 + 2.5011 245.349 0.386658E+03 0.386658E+03 + 3.6462 238.052 0.387474E+03 0.387474E+03 + 5.1864 231.275 0.388461E+03 0.388461E+03 + 7.2150 225.435 0.389418E+03 0.389418E+03 + 9.8368 220.998 0.390246E+03 0.390246E+03 + 13.1672 218.057 0.390595E+03 0.390595E+03 + 17.3308 215.687 0.390487E+03 0.390487E+03 + 22.4601 213.682 0.390315E+03 0.390315E+03 + 28.6937 211.946 0.390530E+03 0.390530E+03 + 36.1735 210.653 0.390929E+03 0.390929E+03 + 45.0430 209.238 0.391252E+03 0.391252E+03 + 55.4433 207.879 0.393168E+03 0.393168E+03 + 67.5109 206.848 0.394070E+03 0.394070E+03 + 81.3744 205.749 0.396270E+03 0.396270E+03 + 97.1505 205.737 0.397504E+03 0.397504E+03 + 114.9415 207.457 0.396854E+03 0.396854E+03 + 134.8318 210.060 0.395476E+03 0.395476E+03 + 156.8846 212.535 0.397056E+03 0.397056E+03 + 181.1394 214.742 0.398104E+03 0.398104E+03 + 207.6092 217.193 0.398619E+03 0.398619E+03 + 236.2784 220.448 0.398292E+03 0.398292E+03 + 267.1012 224.303 0.399162E+03 0.399162E+03 + 300.0000 228.567 0.400264E+03 0.400264E+03 + 334.8648 233.110 0.401019E+03 0.401019E+03 + 371.5529 237.639 0.401681E+03 0.401681E+03 + 409.8893 242.080 0.402304E+03 0.402304E+03 + 449.6677 246.270 0.403003E+03 0.403003E+03 + 490.6516 250.193 0.403733E+03 0.403733E+03 + 532.5769 253.926 0.404314E+03 0.404314E+03 + 575.1538 257.362 0.404704E+03 0.404704E+03 + 618.0706 259.963 0.404996E+03 0.404996E+03 + 660.9965 262.401 0.405309E+03 0.405309E+03 + 703.5863 264.647 0.405004E+03 0.405004E+03 + 745.4841 266.631 0.404763E+03 0.404763E+03 + 786.3278 268.280 0.404388E+03 0.404388E+03 + 825.7546 269.621 0.404044E+03 0.404044E+03 + 863.4047 270.777 0.403651E+03 0.403651E+03 + 898.9275 271.651 0.403319E+03 0.403319E+03 + 931.9853 272.503 0.402640E+03 0.402640E+03 + 962.2587 273.447 0.402074E+03 0.402074E+03 + 989.4510 274.216 0.401685E+03 0.401685E+03 + 1013.2923 274.597 0.401427E+03 0.401427E+03 + 1033.5436 274.625 0.401295E+03 0.401295E+03 + 1050.0000 274.633 0.401227E+03 0.401227E+03 + ! ------------------------------------------------------ +PROFILE_ENVELOPE + ! + ! Reference pressure (hPa), temperature max and min (K) and + ! volume mixing ratio max and min (ppmv) for each gas + ! Temperature + 0.0050 223.59 159.62 + 0.0131 229.21 171.32 + 0.0304 239.74 187.13 + 0.0644 254.65 200.20 + 0.1263 271.86 216.09 + 0.2324 289.67 229.12 + 0.4052 305.67 228.51 + 0.6749 310.98 219.08 + 1.0801 309.85 210.55 + 1.6691 304.25 199.19 + 2.5011 293.18 195.86 + 3.6462 284.10 194.49 + 5.1864 276.26 192.30 + 7.2150 268.62 187.09 + 9.8368 266.66 184.78 + 13.1672 260.95 181.63 + 17.3308 257.60 179.43 + 22.4601 255.39 179.41 + 28.6937 256.97 180.10 + 36.1735 254.48 180.54 + 45.0430 248.32 182.96 + 55.4433 241.75 184.66 + 67.5109 240.64 186.02 + 81.3744 238.14 177.75 + 97.1505 238.57 182.17 + 114.9415 235.97 187.32 + 134.8318 235.69 188.57 + 156.8846 236.48 188.24 + 181.1394 238.43 189.59 + 207.6092 240.41 193.45 + 236.2784 245.54 196.80 + 267.1012 252.66 202.20 + 300.0000 259.25 205.29 + 334.8648 266.98 208.54 + 371.5529 272.84 211.49 + 409.8893 275.12 216.00 + 449.6677 276.75 220.51 + 490.6516 279.27 223.92 + 532.5769 283.79 225.27 + 575.1538 286.86 224.01 + 618.0706 289.33 211.06 + 660.9965 292.46 211.06 + 703.5863 298.14 211.06 + 745.4841 303.43 211.06 + 786.3278 305.87 211.06 + 825.7546 307.76 211.06 + 863.4047 311.41 211.06 + 898.9275 314.75 211.06 + 931.9853 317.49 211.06 + 962.2587 318.11 211.06 + 989.4510 318.26 211.06 + 1013.2923 318.26 211.06 + 1033.5436 318.26 211.06 + 1050.0000 318.26 211.06 + ! Mixed_gases + 0.0050 0.9000E+38 -0.9000E+38 + 0.0131 0.9000E+38 -0.9000E+38 + 0.0304 0.9000E+38 -0.9000E+38 + 0.0644 0.9000E+38 -0.9000E+38 + 0.1263 0.9000E+38 -0.9000E+38 + 0.2324 0.9000E+38 -0.9000E+38 + 0.4052 0.9000E+38 -0.9000E+38 + 0.6749 0.9000E+38 -0.9000E+38 + 1.0801 0.9000E+38 -0.9000E+38 + 1.6691 0.9000E+38 -0.9000E+38 + 2.5011 0.9000E+38 -0.9000E+38 + 3.6462 0.9000E+38 -0.9000E+38 + 5.1864 0.9000E+38 -0.9000E+38 + 7.2150 0.9000E+38 -0.9000E+38 + 9.8368 0.9000E+38 -0.9000E+38 + 13.1672 0.9000E+38 -0.9000E+38 + 17.3308 0.9000E+38 -0.9000E+38 + 22.4601 0.9000E+38 -0.9000E+38 + 28.6937 0.9000E+38 -0.9000E+38 + 36.1735 0.9000E+38 -0.9000E+38 + 45.0430 0.9000E+38 -0.9000E+38 + 55.4433 0.9000E+38 -0.9000E+38 + 67.5109 0.9000E+38 -0.9000E+38 + 81.3744 0.9000E+38 -0.9000E+38 + 97.1505 0.9000E+38 -0.9000E+38 + 114.9415 0.9000E+38 -0.9000E+38 + 134.8318 0.9000E+38 -0.9000E+38 + 156.8846 0.9000E+38 -0.9000E+38 + 181.1394 0.9000E+38 -0.9000E+38 + 207.6092 0.9000E+38 -0.9000E+38 + 236.2784 0.9000E+38 -0.9000E+38 + 267.1012 0.9000E+38 -0.9000E+38 + 300.0000 0.9000E+38 -0.9000E+38 + 334.8648 0.9000E+38 -0.9000E+38 + 371.5529 0.9000E+38 -0.9000E+38 + 409.8893 0.9000E+38 -0.9000E+38 + 449.6677 0.9000E+38 -0.9000E+38 + 490.6516 0.9000E+38 -0.9000E+38 + 532.5769 0.9000E+38 -0.9000E+38 + 575.1538 0.9000E+38 -0.9000E+38 + 618.0706 0.9000E+38 -0.9000E+38 + 660.9965 0.9000E+38 -0.9000E+38 + 703.5863 0.9000E+38 -0.9000E+38 + 745.4841 0.9000E+38 -0.9000E+38 + 786.3278 0.9000E+38 -0.9000E+38 + 825.7546 0.9000E+38 -0.9000E+38 + 863.4047 0.9000E+38 -0.9000E+38 + 898.9275 0.9000E+38 -0.9000E+38 + 931.9853 0.9000E+38 -0.9000E+38 + 962.2587 0.9000E+38 -0.9000E+38 + 989.4510 0.9000E+38 -0.9000E+38 + 1013.2923 0.9000E+38 -0.9000E+38 + 1033.5436 0.9000E+38 -0.9000E+38 + 1050.0000 0.9000E+38 -0.9000E+38 + ! Water_vapour + 0.0050 0.4368E+01 0.1142E+01 + 0.0131 0.5026E+01 0.1352E+01 + 0.0304 0.6186E+01 0.1687E+01 + 0.0644 0.6754E+01 0.1976E+01 + 0.1263 0.7030E+01 0.2255E+01 + 0.2324 0.7159E+01 0.2488E+01 + 0.4052 0.7147E+01 0.3113E+01 + 0.6749 0.6951E+01 0.3760E+01 + 1.0801 0.6721E+01 0.4119E+01 + 1.6691 0.6577E+01 0.4006E+01 + 2.5011 0.6462E+01 0.3652E+01 + 3.6462 0.6409E+01 0.3536E+01 + 5.1864 0.6320E+01 0.3378E+01 + 7.2150 0.6271E+01 0.3180E+01 + 9.8368 0.6137E+01 0.3071E+01 + 13.1672 0.6002E+01 0.3030E+01 + 17.3308 0.5801E+01 0.2750E+01 + 22.4601 0.5626E+01 0.2134E+01 + 28.6937 0.5381E+01 0.1903E+01 + 36.1735 0.5119E+01 0.1640E+01 + 45.0430 0.4915E+01 0.1695E+01 + 55.4433 0.5174E+01 0.1620E+01 + 67.5109 0.7641E+01 0.1455E+01 + 81.3744 0.1491E+02 0.4490E+00 + 97.1505 0.1692E+02 0.1608E-01 + 114.9415 0.2797E+02 0.1608E-01 + 134.8318 0.8520E+02 0.1608E-01 + 156.8846 0.2375E+03 0.1608E-01 + 181.1394 0.5955E+03 0.1608E-01 + 207.6092 0.1220E+04 0.1608E-01 + 236.2784 0.2063E+04 0.1608E-01 + 267.1012 0.3651E+04 0.1608E-01 + 300.0000 0.5526E+04 0.1608E-01 + 334.8648 0.7875E+04 0.1614E+01 + 371.5529 0.1036E+05 0.1906E+01 + 409.8893 0.1289E+05 0.2648E+01 + 449.6677 0.1547E+05 0.2948E+01 + 490.6516 0.1807E+05 0.3639E+01 + 532.5769 0.2058E+05 0.4584E+01 + 575.1538 0.2290E+05 0.4760E+01 + 618.0706 0.2524E+05 0.8522E+01 + 660.9965 0.2733E+05 0.7585E+01 + 703.5863 0.2944E+05 0.8411E+01 + 745.4841 0.3141E+05 0.1089E+02 + 786.3278 0.3332E+05 0.1033E+02 + 825.7546 0.3516E+05 0.9835E+01 + 863.4047 0.3685E+05 0.9407E+01 + 898.9275 0.3856E+05 0.9035E+01 + 931.9853 0.3978E+05 0.8714E+01 + 962.2587 0.4272E+05 0.8440E+01 + 989.4510 0.4143E+05 0.8208E+01 + 1013.2923 0.3934E+05 0.8015E+01 + 1033.5436 0.3984E+05 0.7858E+01 + 1050.0000 0.3970E+05 0.7735E+01 + ! Ozone + 0.0050 0.1170E+01 0.1752E-01 + 0.0131 0.1175E+01 0.8642E-01 + 0.0304 0.1247E+01 0.1344E+00 + 0.0644 0.1392E+01 0.2139E+00 + 0.1263 0.1720E+01 0.2844E+00 + 0.2324 0.1971E+01 0.4443E+00 + 0.4052 0.2265E+01 0.6911E+00 + 0.6749 0.2971E+01 0.9136E+00 + 1.0801 0.4444E+01 0.8955E+00 + 1.6691 0.6095E+01 0.8036E+00 + 2.5011 0.7659E+01 0.6303E+00 + 3.6462 0.8706E+01 0.9315E+00 + 5.1864 0.1028E+02 0.1982E+01 + 7.2150 0.1078E+02 0.2349E+01 + 9.8368 0.1062E+02 0.1652E+01 + 13.1672 0.9967E+01 0.8989E+00 + 17.3308 0.9254E+01 0.5345E+00 + 22.4601 0.8163E+01 0.3479E+00 + 28.6937 0.7280E+01 0.2044E+00 + 36.1735 0.6145E+01 0.1336E+00 + 45.0430 0.5666E+01 0.6817E-01 + 55.4433 0.4758E+01 0.6027E-01 + 67.5109 0.3988E+01 0.5375E-01 + 81.3744 0.3658E+01 0.4721E-01 + 97.1505 0.3016E+01 0.1982E-01 + 114.9415 0.2481E+01 0.1963E-01 + 134.8318 0.2221E+01 0.1965E-01 + 156.8846 0.1959E+01 0.1683E-01 + 181.1394 0.1644E+01 0.1222E-01 + 207.6092 0.1234E+01 0.1675E-01 + 236.2784 0.8958E+00 0.1986E-01 + 267.1012 0.6454E+00 0.1935E-01 + 300.0000 0.5235E+00 0.1933E-01 + 334.8648 0.4580E+00 0.1987E-01 + 371.5529 0.3729E+00 0.1910E-01 + 409.8893 0.3010E+00 0.1888E-01 + 449.6677 0.2363E+00 0.1876E-01 + 490.6516 0.2058E+00 0.1866E-01 + 532.5769 0.1662E+00 0.1816E-01 + 575.1538 0.1590E+00 0.1439E-01 + 618.0706 0.1428E+00 0.1211E-01 + 660.9965 0.1063E+00 0.1126E-01 + 703.5863 0.1032E+00 0.1084E-01 + 745.4841 0.9740E-01 0.1053E-01 + 786.3278 0.9606E-01 0.1022E-01 + 825.7546 0.9429E-01 0.9850E-02 + 863.4047 0.9289E-01 0.9226E-02 + 898.9275 0.8994E-01 0.8067E-02 + 931.9853 0.8499E-01 0.7483E-02 + 962.2587 0.8288E-01 0.6966E-02 + 989.4510 0.8272E-01 0.7135E-02 + 1013.2923 0.7871E-01 0.7979E-02 + 1033.5436 0.7860E-01 0.8002E-02 + 1050.0000 0.7860E-01 0.8002E-02 + ! WV_Continuum + 0.0050 0.4368E+01 0.1142E+01 + 0.0131 0.5026E+01 0.1352E+01 + 0.0304 0.6186E+01 0.1687E+01 + 0.0644 0.6754E+01 0.1976E+01 + 0.1263 0.7030E+01 0.2255E+01 + 0.2324 0.7159E+01 0.2488E+01 + 0.4052 0.7147E+01 0.3113E+01 + 0.6749 0.6951E+01 0.3760E+01 + 1.0801 0.6721E+01 0.4119E+01 + 1.6691 0.6577E+01 0.4006E+01 + 2.5011 0.6462E+01 0.3652E+01 + 3.6462 0.6409E+01 0.3536E+01 + 5.1864 0.6320E+01 0.3378E+01 + 7.2150 0.6271E+01 0.3180E+01 + 9.8368 0.6137E+01 0.3071E+01 + 13.1672 0.6002E+01 0.3030E+01 + 17.3308 0.5801E+01 0.2750E+01 + 22.4601 0.5626E+01 0.2134E+01 + 28.6937 0.5381E+01 0.1903E+01 + 36.1735 0.5119E+01 0.1640E+01 + 45.0430 0.4915E+01 0.1695E+01 + 55.4433 0.5174E+01 0.1620E+01 + 67.5109 0.7641E+01 0.1455E+01 + 81.3744 0.1491E+02 0.4490E+00 + 97.1505 0.1692E+02 0.1608E-01 + 114.9415 0.2797E+02 0.1608E-01 + 134.8318 0.8520E+02 0.1608E-01 + 156.8846 0.2375E+03 0.1608E-01 + 181.1394 0.5955E+03 0.1608E-01 + 207.6092 0.1220E+04 0.1608E-01 + 236.2784 0.2063E+04 0.1608E-01 + 267.1012 0.3651E+04 0.1608E-01 + 300.0000 0.5526E+04 0.1608E-01 + 334.8648 0.7875E+04 0.1614E+01 + 371.5529 0.1036E+05 0.1906E+01 + 409.8893 0.1289E+05 0.2648E+01 + 449.6677 0.1547E+05 0.2948E+01 + 490.6516 0.1807E+05 0.3639E+01 + 532.5769 0.2058E+05 0.4584E+01 + 575.1538 0.2290E+05 0.4760E+01 + 618.0706 0.2524E+05 0.8522E+01 + 660.9965 0.2733E+05 0.7585E+01 + 703.5863 0.2944E+05 0.8411E+01 + 745.4841 0.3141E+05 0.1089E+02 + 786.3278 0.3332E+05 0.1033E+02 + 825.7546 0.3516E+05 0.9835E+01 + 863.4047 0.3685E+05 0.9407E+01 + 898.9275 0.3856E+05 0.9035E+01 + 931.9853 0.3978E+05 0.8714E+01 + 962.2587 0.4272E+05 0.8440E+01 + 989.4510 0.4143E+05 0.8208E+01 + 1013.2923 0.3934E+05 0.8015E+01 + 1033.5436 0.3984E+05 0.7858E+01 + 1050.0000 0.3970E+05 0.7735E+01 + ! CO2 + 0.0050 0.4419E+03 0.3421E+03 + 0.0131 0.4419E+03 0.3421E+03 + 0.0304 0.4419E+03 0.3421E+03 + 0.0644 0.4419E+03 0.3421E+03 + 0.1263 0.4419E+03 0.3421E+03 + 0.2324 0.4419E+03 0.3421E+03 + 0.4052 0.4420E+03 0.3420E+03 + 0.6749 0.4422E+03 0.3420E+03 + 1.0801 0.4424E+03 0.3421E+03 + 1.6691 0.4424E+03 0.3423E+03 + 2.5011 0.4424E+03 0.3423E+03 + 3.6462 0.4426E+03 0.3421E+03 + 5.1864 0.4428E+03 0.3419E+03 + 7.2150 0.4427E+03 0.3419E+03 + 9.8368 0.4422E+03 0.3421E+03 + 13.1672 0.4417E+03 0.3423E+03 + 17.3308 0.4421E+03 0.3423E+03 + 22.4601 0.4435E+03 0.3420E+03 + 28.6937 0.4456E+03 0.3414E+03 + 36.1735 0.4489E+03 0.3405E+03 + 45.0430 0.4531E+03 0.3393E+03 + 55.4433 0.4498E+03 0.3410E+03 + 67.5109 0.4520E+03 0.3411E+03 + 81.3744 0.4543E+03 0.3410E+03 + 97.1505 0.4557E+03 0.3415E+03 + 114.9415 0.4568E+03 0.3421E+03 + 134.8318 0.4562E+03 0.3437E+03 + 156.8846 0.4576E+03 0.3433E+03 + 181.1394 0.4584E+03 0.3433E+03 + 207.6092 0.4580E+03 0.3440E+03 + 236.2784 0.4564E+03 0.3455E+03 + 267.1012 0.4564E+03 0.3459E+03 + 300.0000 0.4571E+03 0.3457E+03 + 334.8648 0.4578E+03 0.3454E+03 + 371.5529 0.4584E+03 0.3451E+03 + 409.8893 0.4588E+03 0.3449E+03 + 449.6677 0.4592E+03 0.3447E+03 + 490.6516 0.4599E+03 0.3443E+03 + 532.5769 0.4607E+03 0.3439E+03 + 575.1538 0.4613E+03 0.3436E+03 + 618.0706 0.4616E+03 0.3434E+03 + 660.9965 0.4616E+03 0.3434E+03 + 703.5863 0.4633E+03 0.3428E+03 + 745.4841 0.4646E+03 0.3424E+03 + 786.3278 0.4669E+03 0.3417E+03 + 825.7546 0.4697E+03 0.3408E+03 + 863.4047 0.4727E+03 0.3398E+03 + 898.9275 0.4755E+03 0.3389E+03 + 931.9853 0.4792E+03 0.3377E+03 + 962.2587 0.4822E+03 0.3367E+03 + 989.4510 0.4842E+03 0.3361E+03 + 1013.2923 0.4856E+03 0.3356E+03 + 1033.5436 0.4863E+03 0.3354E+03 + 1050.0000 0.4866E+03 0.3353E+03 + ! ------------------------------------------------------ +FAST_COEFFICIENTS + ! + ! Transmission coefficients + ! Order of the gases: + ! Mixed_gases + ! Water_vapour + ! Ozone + ! WV_Continuum + ! CO2 +Mixed_gases + 0.81037487E-08 -0.19406796E-06 -0.20473489E-06 -0.54982356E-07 -0.50885635E-06 + 0.58692695E-06 0.65232857E-06 -0.60771743E-06 -0.60436806E-06 -0.24102715E-05 + -0.84275904E-05 -0.12304880E-04 -0.35126345E-04 -0.68013056E-04 -0.11874522E-03 + -0.20119348E-03 -0.32541028E-03 -0.54175063E-03 -0.78175171E-03 -0.11713913E-02 + -0.15086277E-02 -0.20885670E-02 -0.23588599E-02 -0.35089192E-02 -0.10920082E-01 + -0.53940198E-02 -0.38786639E-02 -0.10974741E-01 -0.15531075E-01 -0.20987664E-01 + -0.13298772E-02 -0.34644371E-02 -0.90397335E-03 -0.99067871E-02 -0.21221957E-01 + -0.23650658E-01 -0.18024513E-01 -0.69049356E-02 -0.11580506E-01 0.25081162E+00 + -0.11311541E-01 -0.13697053E-02 0.17205794E-02 -0.24742035E-01 -0.68382678E-01 + -0.24449222E-01 -0.41026936E-01 -0.54556051E-01 -0.41725869E-01 -0.16012415E-01 + -0.13477799E-01 0.22961188E-01 0.22778679E-01 -0.93214690E-07 0.44631441E-07 + 0.59160792E-08 -0.14277813E-06 -0.27129965E-06 -0.18743046E-06 -0.12724802E-05 + -0.23611033E-05 -0.47558847E-05 -0.10819591E-04 -0.29352251E-04 -0.24097505E-04 + -0.48581848E-04 -0.12372876E-03 -0.24754225E-03 -0.41797918E-03 -0.67670099E-03 + -0.80744830E-03 -0.90705689E-03 -0.10886571E-02 -0.15599567E-02 -0.23142105E-02 + -0.33235840E-02 -0.38004330E-02 -0.46158194E-02 -0.72613177E-02 -0.10009072E-01 + -0.11626829E-01 -0.13976232E-01 -0.18659833E-01 -0.18541530E-01 -0.21209690E-01 + -0.21825786E-01 -0.25350521E-01 -0.28328658E-01 -0.32198855E-01 -0.32868953E-01 + -0.33857455E-01 -0.33055736E-01 0.73968170E-03 -0.32219083E-01 -0.28801784E-01 + -0.26225714E-01 -0.27426251E-01 -0.29866245E-01 -0.22754711E-01 -0.24426878E-01 + -0.22981904E-01 -0.20951607E-01 -0.13883856E-01 -0.10643246E-01 -0.19217099E-02 + 0.35485669E-03 -0.11074339E-05 -0.27767008E-05 -0.54914586E-05 -0.79127514E-05 + -0.11715782E-04 -0.28410052E-04 -0.47507268E-04 -0.13137231E-04 -0.26358745E-05 + 0.36165467E-04 0.34338831E-03 -0.48450428E-04 -0.24716570E-03 -0.64051333E-03 + -0.67240048E-03 -0.33351677E-03 0.38336221E-03 0.19421364E-04 -0.59468422E-03 + -0.17565729E-02 -0.16806300E-02 -0.90594219E-03 0.25218464E-02 0.89365381E-03 + -0.15584208E-01 0.24567723E-02 0.65139442E-02 -0.39089292E-02 -0.60452539E-02 + -0.53777223E-02 0.18282998E-01 0.17488219E-01 0.18685870E-01 0.93514092E-02 + -0.23393324E-02 -0.42667624E-02 -0.11448252E-02 0.67856683E-02 0.19383279E-03 + 0.10494707E+00 -0.55946974E-02 -0.26153023E-02 -0.37704273E-02 -0.13752817E-01 + -0.30413117E-01 -0.17025157E-01 -0.20646217E-01 -0.27031016E-01 -0.20042250E-01 + -0.12577863E-01 -0.99865023E-02 -0.63767280E-03 0.51540072E-04 0.11142535E-06 + -0.18768739E-06 0.42686113E-07 0.47660467E-07 -0.33822826E-07 -0.21494809E-06 + -0.23815574E-06 -0.88382862E-06 -0.19400242E-05 -0.28845419E-05 -0.21078248E-05 + -0.26057714E-05 -0.87084816E-05 -0.95822337E-05 -0.23685683E-05 0.59309057E-05 + 0.23241463E-04 -0.10464297E-03 -0.42275322E-03 -0.31844105E-03 -0.51831741E-03 + -0.80956295E-03 -0.82712223E-03 -0.97844548E-03 -0.11942115E-02 -0.18984185E-02 + -0.22788189E-02 -0.23368416E-02 -0.20748548E-02 -0.85519834E-03 -0.16399519E-03 + 0.40580764E-03 -0.70515175E-03 -0.22948591E-02 -0.29601321E-02 -0.28013832E-02 + -0.33746224E-02 -0.42432813E-02 -0.54235219E-02 -0.90571257E-02 -0.10153627E-01 + -0.92162637E-02 -0.91370659E-02 -0.85057945E-02 -0.74597474E-02 -0.60006432E-02 + -0.46545053E-02 -0.34599363E-02 -0.25101397E-02 -0.16871086E-02 -0.11694846E-02 + -0.89643826E-03 -0.72508433E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.75733818E-11 -0.91736163E-10 -0.37906360E-10 -0.10090987E-06 + 0.79287212E-07 -0.12701170E-06 -0.10132883E-06 0.13554484E-06 0.36805105E-07 + -0.28987891E-06 -0.23129811E-06 -0.55602628E-07 0.58467343E-07 -0.36839147E-06 + -0.79271774E-06 -0.89940341E-06 -0.14906700E-05 -0.19225109E-05 -0.23687488E-05 + -0.30622475E-05 -0.31541508E-05 -0.44666814E-05 -0.47176526E-05 -0.57111089E-05 + -0.65091923E-05 -0.69493285E-05 -0.84758795E-05 -0.10965225E-04 -0.14383692E-04 + -0.18931327E-04 -0.23331250E-04 -0.28178400E-04 -0.33724910E-04 -0.40273364E-04 + -0.47384115E-04 -0.57573964E-04 -0.65555177E-04 -0.71341481E-04 -0.77942491E-04 + -0.80832703E-04 -0.79063947E-04 -0.79458241E-04 -0.76884150E-04 -0.69994375E-04 + -0.65779852E-04 -0.57742159E-04 -0.50175298E-04 -0.43150203E-04 -0.34654760E-04 + 0.27631244E-08 -0.75279913E-08 0.64728738E-08 0.14872959E-06 -0.44959856E-06 + -0.84671797E-09 0.38633661E-07 0.27642175E-06 -0.51559082E-06 -0.81806431E-06 + -0.20055518E-05 -0.53285691E-05 -0.12135332E-04 -0.22646366E-04 -0.35926975E-04 + -0.58266348E-04 -0.77955759E-04 -0.12073861E-03 -0.18084136E-03 -0.19680905E-03 + -0.22581875E-03 -0.24716570E-03 -0.22543537E-03 -0.21286675E-03 -0.23574942E-03 + -0.32935186E-03 -0.40894344E-03 -0.40110861E-03 -0.30955013E-03 -0.19320674E-03 + -0.24093703E-03 -0.80262967E-04 -0.79067795E-04 -0.17810760E-03 -0.27061921E-03 + -0.31822357E-03 -0.42286283E-03 -0.58987937E-03 -0.76751534E-03 -0.11925291E-02 + -0.13008334E-02 -0.12814919E-02 -0.13387639E-02 -0.13066657E-02 -0.12008935E-02 + -0.10576394E-02 -0.89126977E-03 -0.72606900E-03 -0.59776575E-03 -0.46354372E-03 + -0.36898247E-03 -0.30949836E-03 -0.25205395E-03 0.10302597E-08 0.12631182E-08 + -0.11727356E-06 0.17297638E-06 -0.15064457E-08 0.17403202E-08 -0.55479178E-07 + 0.18663228E-06 -0.39583948E-06 0.10964290E-08 0.15278820E-07 -0.63494834E-06 + -0.82130701E-06 -0.14415712E-05 -0.39865464E-05 -0.59398276E-05 -0.10649888E-04 + -0.13945182E-04 -0.21064280E-04 -0.24040259E-04 -0.31284501E-04 -0.32310622E-04 + -0.37512131E-04 -0.50887692E-04 -0.50623011E-04 -0.58052529E-04 -0.57092606E-04 + -0.71197829E-04 -0.11749773E-03 -0.14265698E-03 -0.13579529E-03 -0.16986050E-03 + -0.19562680E-03 -0.21180782E-03 -0.21628882E-03 -0.21712918E-03 -0.19703234E-03 + -0.16480483E-03 -0.11864792E-03 -0.10401207E-03 -0.10084949E-03 -0.86389286E-04 + -0.71852717E-04 -0.69771556E-04 -0.71882058E-04 -0.82664151E-04 -0.87308633E-04 + -0.94433484E-04 -0.10114494E-03 -0.99593414E-04 -0.93352862E-04 -0.82111724E-04 + -0.65660574E-04 -0.78840564E-08 0.17283534E-07 0.77360815E-07 -0.20363272E-06 + -0.46689472E-07 -0.11940869E-06 0.78425842E-07 -0.79911038E-07 -0.23035425E-06 + -0.29900400E-06 -0.10246777E-05 -0.23096645E-05 -0.35327762E-05 -0.55501775E-05 + -0.75668093E-05 -0.10756374E-04 -0.13388852E-04 -0.17174148E-04 -0.19065579E-04 + -0.22082708E-04 -0.22220989E-04 -0.19985335E-04 -0.16506897E-04 -0.13826209E-04 + -0.12536963E-04 -0.13980160E-04 -0.15458217E-04 -0.16631006E-04 -0.19089335E-04 + -0.21487017E-04 -0.24159485E-04 -0.25835534E-04 -0.28073898E-04 -0.29821961E-04 + -0.32098638E-04 -0.34344966E-04 -0.37463085E-04 -0.40453359E-04 -0.44329715E-04 + -0.46357781E-04 -0.51695874E-04 -0.55160911E-04 -0.57753753E-04 -0.59490131E-04 + -0.62023549E-04 -0.67480596E-04 -0.69934046E-04 -0.71778801E-04 -0.75273836E-04 + -0.72948290E-04 -0.67778670E-04 -0.61944517E-04 -0.51682956E-04 -0.54701675E-08 + 0.30257688E-08 0.20142552E-08 -0.28550403E-08 0.14903729E-07 0.35525553E-08 + -0.40792290E-07 -0.58122307E-10 -0.19059273E-07 -0.46804497E-08 -0.36622040E-08 + 0.60261506E-08 -0.47163442E-07 -0.10104351E-06 0.33202560E-07 0.59952739E-06 + 0.16920238E-05 0.35431322E-05 0.58147048E-05 0.79863582E-05 0.99806813E-05 + 0.12370567E-04 0.13307342E-04 0.16710144E-04 0.20734916E-04 0.24140079E-04 + 0.29685633E-04 0.34879084E-04 0.38465029E-04 0.50952241E-04 0.84015286E-04 + 0.10911397E-03 0.11336363E-03 0.12438979E-03 0.14894211E-03 0.18601202E-03 + 0.22866880E-03 0.26694220E-03 0.28945654E-03 0.21689023E-04 0.17965532E-03 + -0.33960501E-04 -0.16137096E-03 -0.26325501E-03 -0.30346839E-03 -0.48574505E-03 + -0.56200619E-03 -0.59472201E-03 -0.67269991E-03 -0.67385540E-03 -0.57835732E-03 + -0.45867445E-03 -0.36685813E-03 0.54770904E-08 -0.36938340E-08 -0.40009257E-08 + 0.27223321E-08 0.18060435E-08 -0.22440313E-07 0.16532154E-07 -0.19989167E-08 + 0.66610166E-08 0.11370401E-08 0.48110133E-07 0.24787198E-06 0.45337904E-06 + 0.87187072E-06 0.16699195E-05 0.23438134E-05 0.30166002E-05 0.30836822E-05 + 0.28058231E-05 0.33278348E-05 0.33233123E-05 0.28984887E-05 0.31524981E-05 + 0.19636449E-05 0.28318363E-05 0.34230290E-05 0.45497565E-05 0.64014243E-05 + 0.95499879E-05 0.14588815E-04 0.20923999E-04 0.27192523E-04 0.31903781E-04 + 0.37937494E-04 0.47508166E-04 0.62587892E-04 0.80641195E-04 0.98066891E-04 + 0.11203705E-03 0.64752954E-04 0.32921544E-04 -0.48213651E-04 -0.10823695E-03 + -0.16274782E-03 -0.20592882E-03 -0.26848744E-03 -0.30254989E-03 -0.30178504E-03 + -0.29287009E-03 -0.28329453E-03 -0.26561104E-03 -0.23781146E-03 -0.19129591E-03 + -0.72103765E-09 -0.22553480E-07 0.13247075E-08 0.16938223E-07 0.74834989E-07 + 0.26047106E-06 0.68698275E-06 0.18084010E-05 0.45940498E-05 0.12377154E-04 + 0.21366837E-04 0.16843155E-04 -0.42979082E-05 -0.24587108E-04 -0.34283958E-04 + -0.28892156E-04 -0.23966640E-04 -0.96389950E-05 -0.15435730E-05 0.20770554E-05 + 0.30213499E-05 0.11339792E-04 -0.43082819E-04 0.18511444E-04 0.34147303E-04 + -0.14704616E-04 -0.79511731E-04 -0.86693828E-04 -0.90869286E-04 -0.11298560E-03 + -0.14033478E-03 -0.21312353E-03 -0.23354283E-03 -0.23033256E-03 -0.19451485E-03 + -0.14783331E-03 -0.11242434E-03 -0.10787613E-03 -0.17112468E-03 -0.84742770E-03 + -0.24019039E-03 -0.10004764E-03 -0.11472083E-03 -0.13538050E-03 -0.10420838E-03 + -0.67785994E-04 -0.10129174E-04 -0.36014863E-05 -0.11220534E-03 -0.13337425E-03 + -0.78526934E-04 -0.15456695E-04 -0.86181814E-05 -0.86912391E-08 0.11702858E-07 + -0.34443854E-08 -0.57859148E-08 -0.13560667E-07 0.14928538E-07 -0.64545576E-08 + 0.12921197E-08 0.38213771E-08 0.61244661E-08 0.99835088E-08 0.56749494E-08 + 0.50154039E-07 0.24446467E-06 0.42519068E-06 0.60212513E-06 0.95311639E-06 + 0.14535728E-05 0.25202388E-05 0.30378694E-05 0.42792103E-05 0.59093662E-05 + 0.74905322E-05 0.96455571E-05 0.11889716E-04 0.14123451E-04 0.16388352E-04 + 0.18751208E-04 0.21467610E-04 0.22020590E-04 0.24687233E-04 0.28508371E-04 + 0.28836188E-04 0.30269111E-04 0.31726870E-04 0.32902470E-04 0.33861701E-04 + 0.34637135E-04 0.35179400E-04 0.37374591E-04 0.42997333E-04 0.43355349E-04 + 0.44142287E-04 0.43428846E-04 0.41606440E-04 0.38471898E-04 0.32421769E-04 + 0.23690220E-04 0.16848140E-04 0.13273125E-04 0.10657586E-04 0.79327124E-05 + 0.54195130E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.11793364E-11 0.12144123E-11 -0.11222839E-10 0.33984533E-08 -0.66668445E-08 + 0.28290492E-08 0.39238469E-08 -0.82541808E-08 -0.55556604E-09 0.94832850E-08 + 0.91285859E-08 -0.11791452E-07 0.66865969E-09 0.33803247E-08 -0.25206482E-08 + -0.14357073E-07 0.69502489E-08 0.46469956E-08 0.11349873E-08 -0.22048816E-08 + 0.10982256E-08 -0.21061583E-08 0.46372129E-09 0.28524018E-09 -0.24225124E-08 + 0.62006946E-08 -0.31165988E-08 -0.20581131E-08 0.40293617E-08 -0.22511611E-08 + 0.66342680E-08 0.18567564E-08 0.85594566E-08 0.14091099E-07 0.18383439E-07 + 0.34641425E-07 0.43905032E-07 0.60027618E-07 0.81572977E-07 0.78087239E-07 + 0.94069677E-07 0.97664342E-07 0.10515378E-06 0.90490502E-07 0.94304385E-07 + 0.72586737E-07 0.73384395E-07 0.61653497E-07 0.48969129E-07 -0.24765095E-09 + 0.19955092E-09 -0.18372872E-09 -0.59670923E-08 0.24735562E-07 0.70504930E-09 + -0.60565608E-08 -0.28577577E-07 0.13492718E-07 0.17304532E-08 0.28236433E-08 + -0.57886080E-08 0.33218577E-08 0.19302550E-07 0.21018879E-07 0.37491139E-07 + 0.60719887E-07 0.10600102E-06 0.19570981E-06 0.24076215E-06 0.32131908E-06 + 0.35186859E-06 0.29224993E-06 0.23174750E-06 0.22300504E-06 0.21654665E-06 + 0.26087419E-06 0.31814713E-06 0.41179067E-06 0.28481759E-06 0.59882089E-06 + 0.88057771E-06 0.85549056E-06 0.97783970E-06 0.11222012E-05 0.12811350E-05 + 0.14342900E-05 0.15755075E-05 0.17127865E-05 0.20590698E-05 0.27325204E-05 + 0.28900963E-05 0.31324069E-05 0.31854481E-05 0.31141257E-05 0.29277489E-05 + 0.23067474E-05 0.13123653E-05 0.55133939E-06 0.25936873E-06 0.11607518E-06 + -0.32524171E-07 -0.14884280E-06 -0.92342783E-10 -0.83337927E-10 0.76049232E-08 + -0.12783074E-07 0.25598152E-09 -0.23302366E-08 0.43406020E-08 -0.64831546E-08 + 0.24502843E-07 -0.10362282E-07 -0.24535037E-07 0.13527912E-07 0.54986116E-09 + -0.11342869E-08 -0.44883818E-08 0.55912427E-08 0.12941619E-07 0.49456541E-07 + 0.66245827E-07 0.98264692E-07 0.13368000E-06 0.12764097E-06 0.12720207E-06 + 0.10694709E-06 0.86722378E-07 0.10570009E-06 0.13733485E-06 0.18222100E-06 + 0.24821722E-06 0.35274899E-06 0.35201372E-06 0.38719508E-06 0.51569706E-06 + 0.62439097E-06 0.72695842E-06 0.84114406E-06 0.95157015E-06 0.10599175E-05 + 0.11830252E-05 0.12552018E-05 0.13104826E-05 0.13470697E-05 0.13993028E-05 + 0.14432282E-05 0.14755211E-05 0.14977952E-05 0.15390212E-05 0.15832398E-05 + 0.15757264E-05 0.14734494E-05 0.13341017E-05 0.11754630E-05 0.98744227E-06 + 0.36827446E-09 -0.91387532E-09 -0.58731364E-08 0.13501058E-07 0.14432963E-08 + 0.97571317E-08 -0.98930344E-08 -0.19650325E-08 0.45434237E-08 -0.12245687E-07 + -0.15821685E-08 0.15172330E-07 -0.10248755E-07 0.20254113E-08 -0.38420801E-08 + -0.38799003E-09 -0.21008990E-08 0.97706499E-08 0.29478117E-08 0.14515477E-07 + 0.16375064E-07 0.24099498E-07 0.11027506E-07 0.18982419E-07 0.67964526E-08 + 0.13264992E-07 0.14364585E-07 0.14559940E-07 0.13056709E-07 0.22275397E-07 + 0.29927982E-07 0.20262759E-07 0.33044928E-07 0.35883033E-07 0.45502736E-07 + 0.43240015E-07 0.55386434E-07 0.63204571E-07 0.73324974E-07 0.79466151E-07 + 0.86425483E-07 0.10107467E-06 0.11031462E-06 0.11927447E-06 0.13478099E-06 + 0.15836041E-06 0.17691234E-06 0.21867159E-06 0.23880403E-06 0.26615084E-06 + 0.27533210E-06 0.27370210E-06 0.24574027E-06 0.33641404E-07 0.21525775E-06 + 0.24113533E-06 0.44941540E-07 0.62026701E-06 -0.90068603E-06 -0.93434564E-06 + -0.37054758E-06 -0.12895436E-05 -0.10967811E-05 0.33744473E-05 0.55924313E-05 + 0.27875094E-04 0.62394535E-04 0.11488201E-03 0.20688355E-03 0.34678355E-03 + 0.58537637E-03 0.87184191E-03 0.13388710E-02 0.18345683E-02 0.25708340E-02 + 0.39270107E-02 0.44803307E-02 0.11183421E-01 0.86330928E-02 0.11551682E-01 + 0.17398944E-01 0.20510864E-01 0.27859586E-01 0.72489034E-02 0.13450364E-01 + 0.10829325E-01 0.23264085E-01 0.37590554E-01 0.40821333E-01 0.35106652E-01 + 0.26437808E-01 0.42209584E-01 -0.20933225E+00 0.40376236E-01 0.22797718E-01 + 0.22675620E-01 0.58996022E-01 0.11191880E+00 0.59187823E-01 0.78637410E-01 + 0.96381311E-01 0.81940747E-01 0.49696495E-01 0.41644689E-01 -0.73209679E-02 + -0.10709515E-01 0.37867191E-07 -0.44554833E-07 -0.53624254E-07 -0.25787556E-07 + 0.46642511E-07 -0.19767997E-06 0.28338549E-06 0.72298975E-06 0.36425542E-06 + -0.30993143E-05 -0.59077933E-05 -0.46355607E-04 -0.66698522E-04 -0.26127120E-04 + 0.54552498E-04 0.21291875E-03 0.45705591E-03 0.61805761E-03 0.72864052E-03 + 0.98680960E-03 0.15976516E-02 0.26347874E-02 0.32998905E-02 0.51861991E-02 + 0.64523310E-02 0.89491175E-02 0.12285112E-01 0.15146896E-01 0.17704599E-01 + 0.23603562E-01 0.23143667E-01 0.26755871E-01 0.27815585E-01 0.32515707E-01 + 0.36441470E-01 0.41614160E-01 0.42722410E-01 0.44851612E-01 0.45642814E-01 + 0.17708527E-01 0.46600225E-01 0.42679519E-01 0.41135030E-01 0.44288773E-01 + 0.48251385E-01 0.40687722E-01 0.43198536E-01 0.41927686E-01 0.39578962E-01 + 0.30495446E-01 0.25173043E-01 0.13186501E-01 0.87161220E-02 0.29443960E-06 + 0.19333233E-05 0.35604901E-05 0.31059400E-05 0.13598828E-05 0.12052296E-04 + 0.22447663E-04 -0.46839966E-04 -0.79950032E-04 -0.16843440E-03 -0.47579047E-03 + 0.57611520E-04 0.48051428E-03 0.93049771E-03 0.10232376E-02 0.54962884E-03 + -0.22451024E-03 -0.79315887E-04 0.59893460E-03 0.17116291E-02 0.16880040E-02 + 0.59544197E-03 0.16752594E-02 -0.20380056E-02 0.11631159E-01 0.44527477E-03 + 0.36149304E-02 0.83833725E-02 0.73946955E-02 0.75343860E-02 -0.17124126E-01 + -0.12997581E-01 -0.15356266E-01 -0.41783500E-02 0.91176026E-02 0.10282349E-01 + 0.62466723E-02 -0.18095028E-02 0.96432336E-02 -0.92261343E-01 0.11544699E-01 + 0.39631934E-02 0.54022725E-02 0.18425498E-01 0.37470332E-01 0.20235290E-01 + 0.24049672E-01 0.31636603E-01 0.24618109E-01 0.16021076E-01 0.12429349E-01 + 0.36685841E-03 -0.45277806E-03 -0.66271579E-07 0.11784292E-06 -0.28468397E-07 + 0.30805709E-08 0.15845214E-06 0.31256270E-06 0.57583572E-06 0.13916035E-05 + 0.24823532E-05 0.31901403E-05 0.33925633E-06 -0.27147072E-05 -0.47309405E-06 + 0.16865201E-05 -0.46160996E-05 -0.16451614E-04 -0.41866827E-04 0.82426100E-04 + 0.39381210E-03 0.34516900E-03 0.63742900E-03 0.98485183E-03 0.94651086E-03 + 0.11183866E-02 0.14780833E-02 0.22462266E-02 0.26726638E-02 0.28189530E-02 + 0.28228148E-02 0.24280773E-02 -0.22153591E-03 -0.38497508E-02 -0.31047800E-02 + -0.11151880E-02 -0.15428233E-03 0.13394583E-03 0.17187645E-02 0.37967662E-02 + 0.58401146E-02 0.96150854E-02 0.11069506E-01 0.10049523E-01 0.10038615E-01 + 0.92988644E-02 0.80341386E-02 0.62909442E-02 0.47236058E-02 0.33878412E-02 + 0.23534763E-02 0.14562514E-02 0.91698367E-03 0.66854409E-03 0.54845421E-03 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.73044195E-11 + 0.12811514E-09 0.37753450E-09 0.12522039E-06 -0.19644212E-07 0.12283900E-06 + 0.13749225E-06 -0.39158332E-07 0.34744289E-08 0.36925355E-06 0.38270863E-06 + 0.32293818E-06 0.25531382E-06 0.68455380E-06 0.11644432E-05 0.13143040E-05 + 0.17184622E-05 0.20868810E-05 0.24404599E-05 0.30829245E-05 0.32199767E-05 + 0.46371978E-05 0.48327786E-05 0.58578414E-05 0.68610934E-05 0.75164036E-05 + 0.88015314E-05 0.10801448E-04 0.13938728E-04 0.18366463E-04 0.21976447E-04 + 0.25983803E-04 0.30429658E-04 0.35963743E-04 0.41546699E-04 0.51774081E-04 + 0.56170008E-04 0.59991598E-04 0.65543289E-04 0.67580838E-04 0.64820199E-04 + 0.65711162E-04 0.63881940E-04 0.57446716E-04 0.54793117E-04 0.47929572E-04 + 0.41549307E-04 0.35876102E-04 0.28752757E-04 -0.16409594E-08 0.77084007E-08 + -0.15415028E-07 -0.11163421E-06 0.29831612E-06 -0.36626369E-07 -0.42905776E-07 + -0.20716382E-06 0.24820453E-06 -0.13919235E-06 -0.73766056E-06 -0.12799597E-05 + -0.19612867E-05 -0.31226103E-05 -0.66648060E-05 -0.67761697E-05 -0.16267336E-04 + -0.62622903E-05 0.21439610E-04 0.19648058E-04 0.50749138E-04 0.93086676E-04 + 0.91870129E-04 0.11572088E-03 0.17655391E-03 0.28001555E-03 0.36301217E-03 + 0.37588618E-03 0.34280640E-03 0.35354153E-03 0.15856740E-03 -0.42759252E-03 + -0.55696804E-03 -0.47547408E-03 -0.38088152E-03 -0.30780349E-03 -0.12386004E-03 + 0.16119087E-03 0.41949434E-03 0.86691998E-03 0.10029153E-02 0.98391659E-03 + 0.10679946E-02 0.10457080E-02 0.93346889E-03 0.78030858E-03 0.60896870E-03 + 0.44787533E-03 0.33542848E-03 0.21706027E-03 0.14720168E-03 0.11996873E-03 + 0.99448819E-04 -0.61181253E-09 -0.70642615E-09 0.69091874E-07 -0.11250027E-06 + 0.53998393E-08 -0.10754112E-07 -0.34077857E-07 -0.24113302E-06 0.79411454E-07 + -0.67858120E-06 -0.18870537E-05 -0.39278148E-05 -0.83183337E-05 -0.15197988E-04 + -0.22951536E-04 -0.34759552E-04 -0.46984284E-04 -0.65026915E-04 -0.80288613E-04 + -0.94675963E-04 -0.98049619E-04 -0.97213948E-04 -0.77422435E-04 -0.62429879E-04 + -0.62822839E-04 -0.64552460E-04 -0.81224405E-04 -0.86940709E-04 -0.73260638E-04 + -0.87938819E-04 -0.74904208E-04 -0.24837395E-04 -0.83046223E-05 -0.54445462E-06 + -0.99001899E-05 -0.28846010E-04 -0.76300314E-04 -0.13990181E-03 -0.22089804E-03 + -0.26166149E-03 -0.28938287E-03 -0.32144993E-03 -0.34122366E-03 -0.33492099E-03 + -0.31795754E-03 -0.28818335E-03 -0.25994375E-03 -0.22571652E-03 -0.18996570E-03 + -0.15946136E-03 -0.13185958E-03 -0.10931514E-03 -0.89256917E-04 0.72047990E-08 + -0.12248655E-07 -0.54337023E-07 0.13487060E-06 0.57203222E-08 0.63368002E-07 + -0.62132891E-07 0.21457351E-07 0.10154708E-06 0.58872712E-07 0.34669343E-06 + 0.80228967E-06 0.10478626E-05 0.14195145E-05 0.13713853E-05 0.20699360E-05 + 0.14938961E-05 0.16186170E-05 0.91675130E-08 0.21606753E-06 -0.44469500E-06 + -0.12348773E-05 -0.17483500E-05 -0.10718524E-05 -0.40767709E-06 0.56678859E-06 + 0.54969052E-06 -0.25995428E-06 -0.10885082E-06 -0.43802243E-07 0.40240613E-06 + 0.20400859E-06 0.20082068E-06 -0.15524961E-06 -0.19161325E-06 -0.63954883E-06 + -0.55719978E-06 -0.93525469E-06 -0.58530401E-06 -0.22716278E-05 -0.80013604E-06 + -0.12306755E-05 -0.18881730E-05 -0.27254392E-05 -0.32740894E-05 -0.38531610E-05 + -0.43031414E-05 -0.52882781E-05 -0.45447102E-05 -0.53078188E-05 -0.57403209E-05 + -0.53712754E-05 -0.47306116E-05 -0.97520823E-08 -0.85723883E-07 -0.10320304E-06 + -0.14815639E-07 -0.35101608E-06 0.88373689E-07 0.38814026E-07 -0.38084864E-06 + -0.49730908E-06 -0.12215123E-05 -0.33522632E-05 -0.75695230E-05 -0.15161270E-04 + -0.31114700E-04 -0.54002482E-04 -0.96046199E-04 -0.15495605E-03 -0.23421354E-03 + -0.34939729E-03 -0.50615504E-03 -0.74516155E-03 -0.98194272E-03 -0.21311096E-02 + -0.18041436E-02 -0.17919336E-02 -0.42820775E-02 -0.87362186E-02 -0.72811041E-02 + -0.59764466E-02 -0.85690499E-02 -0.71241801E-02 -0.11096537E-01 -0.11682586E-01 + -0.15172003E-01 -0.17638624E-01 -0.18152857E-01 -0.18581694E-01 -0.21890966E-01 + -0.30943583E-01 -0.30606936E-01 -0.23790124E-01 -0.11625096E-01 -0.11064811E-01 + -0.20136737E-01 -0.29126534E-01 -0.12173895E-01 -0.13042989E-01 -0.13122858E-01 + -0.16768116E-01 -0.11662832E-01 -0.10194412E-01 0.15027211E-02 0.25196113E-02 + -0.16928139E-07 0.16930378E-07 0.20445489E-07 -0.31913241E-08 -0.47764516E-07 + 0.52901927E-07 -0.13436900E-06 -0.33140839E-06 -0.25267390E-06 0.69822421E-06 + 0.35197103E-05 0.87014224E-05 0.18043157E-04 0.57575069E-05 0.47094255E-05 + -0.32256305E-04 -0.81885025E-04 -0.18997887E-03 -0.28457783E-03 -0.49118259E-03 + -0.77479850E-03 -0.12288514E-02 -0.10713741E-02 -0.25466313E-02 -0.32191978E-02 + -0.35339160E-02 -0.45365799E-02 -0.62373994E-02 -0.68933634E-02 -0.87273607E-02 + -0.89734914E-02 -0.10505116E-01 -0.11606015E-01 -0.13433440E-01 -0.14876104E-01 + -0.16623380E-01 -0.17607583E-01 -0.19183572E-01 -0.20857649E-01 -0.25427554E-01 + -0.21727613E-01 -0.19791771E-01 -0.19129185E-01 -0.19855775E-01 -0.19953533E-01 + -0.16813135E-01 -0.15947711E-01 -0.14191231E-01 -0.14130161E-01 -0.11841774E-01 + -0.10045272E-01 -0.65149259E-02 -0.46797642E-02 -0.54814924E-07 -0.65357099E-06 + -0.13192213E-05 -0.74918616E-06 -0.27980217E-06 -0.52851512E-05 -0.82174132E-05 + 0.89483315E-05 0.23967005E-04 0.56473302E-04 0.81740234E-04 0.56710957E-05 + -0.18064678E-03 -0.31367052E-03 -0.48007225E-03 -0.46078701E-03 -0.41364815E-03 + -0.20470288E-03 -0.18187226E-03 -0.40198250E-04 0.32649206E-04 0.49171721E-03 + -0.32971968E-02 0.14159595E-02 0.38211887E-02 -0.13105816E-02 -0.96630411E-02 + -0.37033394E-02 -0.59312641E-03 -0.15152360E-02 0.47655350E-04 -0.29491957E-02 + -0.26929621E-02 -0.51417438E-02 -0.72576231E-02 -0.71236464E-02 -0.67749480E-02 + -0.72631786E-02 -0.11462559E-01 -0.96156856E-02 -0.93672428E-02 -0.42939308E-02 + -0.44243846E-02 -0.74302998E-02 -0.11103573E-01 -0.60197837E-02 -0.59015759E-02 + -0.68650193E-02 -0.67457723E-02 -0.51293847E-02 -0.41493361E-02 -0.12342130E-02 + -0.82653889E-03 0.34794048E-07 -0.60587443E-07 0.75476758E-08 -0.11049401E-07 + -0.78959716E-07 -0.30607614E-06 -0.44021633E-06 -0.91735405E-06 -0.14041153E-05 + -0.19395112E-05 -0.15187803E-05 -0.83634512E-06 -0.16449974E-05 -0.10803147E-04 + -0.24415370E-04 -0.40861667E-04 -0.60538388E-04 -0.84730102E-04 -0.10505147E-03 + -0.21492367E-03 -0.35096836E-03 -0.45258030E-03 -0.45910205E-03 -0.55380018E-03 + -0.76700352E-03 -0.89883888E-03 -0.10117901E-02 -0.11750410E-02 -0.15125983E-02 + -0.23414057E-02 -0.56216196E-03 0.24162443E-02 0.28373529E-02 0.25313767E-02 + 0.22510974E-02 0.17598344E-02 0.69543904E-03 -0.55713914E-03 -0.14724446E-02 + -0.17350903E-02 -0.22188333E-02 -0.21335153E-02 -0.22682498E-02 -0.21955390E-02 + -0.19792335E-02 -0.16692926E-02 -0.14167540E-02 -0.12218877E-02 -0.10281267E-02 + -0.80059802E-03 -0.63430303E-03 -0.52495260E-03 -0.43253638E-03 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.34184333E-11 -0.50693333E-10 + -0.20350547E-09 -0.50930663E-07 0.22161818E-08 -0.55301035E-07 -0.79890397E-07 + -0.13145236E-07 -0.51235180E-07 -0.20369123E-06 -0.23753838E-06 -0.23431666E-06 + -0.30034247E-06 -0.52054028E-06 -0.71877016E-06 -0.78005158E-06 -0.10629132E-05 + -0.12759908E-05 -0.14868986E-05 -0.18021333E-05 -0.21314180E-05 -0.25781510E-05 + -0.29296369E-05 -0.33947660E-05 -0.41606736E-05 -0.49472425E-05 -0.54302710E-05 + -0.59877799E-05 -0.72010005E-05 -0.86892755E-05 -0.10015841E-04 -0.11584309E-04 + -0.13222032E-04 -0.15091002E-04 -0.16770312E-04 -0.20731915E-04 -0.20366305E-04 + -0.21438203E-04 -0.22700650E-04 -0.23283155E-04 -0.22570481E-04 -0.22534064E-04 + -0.21981558E-04 -0.20360714E-04 -0.19213839E-04 -0.17042437E-04 -0.14861886E-04 + -0.12841556E-04 -0.10273809E-04 0.88852534E-09 -0.32769413E-08 0.85287963E-08 + 0.52290852E-07 -0.14056710E-06 0.19085279E-07 0.26732381E-07 0.13964207E-06 + -0.59304774E-07 0.27258829E-06 0.68223939E-06 0.16628038E-05 0.29417922E-05 + 0.40763775E-05 0.58499529E-05 0.74895680E-05 0.11230739E-04 0.14188735E-04 + 0.17581682E-04 0.12076419E-04 -0.17477843E-06 -0.15230517E-04 -0.18346522E-04 + -0.40290600E-04 -0.71557250E-04 -0.86116107E-04 -0.99096288E-04 -0.13117030E-03 + -0.20052281E-03 -0.33268026E-03 -0.11714864E-03 0.28811353E-03 0.41168339E-03 + 0.42689428E-03 0.41675751E-03 0.37695528E-03 0.27934022E-03 0.14652098E-03 + 0.46366680E-04 -0.43789231E-05 -0.60193462E-04 -0.72168028E-04 -0.11166684E-03 + -0.12403023E-03 -0.11180229E-03 -0.91929598E-04 -0.75859113E-04 -0.62613936E-04 + -0.48639520E-04 -0.28286067E-04 -0.15969440E-04 -0.12687527E-04 -0.11084035E-04 + 0.33128293E-09 0.34971452E-09 -0.33462349E-07 0.55263424E-07 0.73481247E-09 + -0.34132554E-08 0.18004335E-07 0.11382711E-06 -0.40607900E-07 0.30457114E-06 + 0.77934368E-06 0.15172929E-05 0.31063602E-05 0.55914266E-05 0.88100935E-05 + 0.13228811E-04 0.18200264E-04 0.24574491E-04 0.30577554E-04 0.34423807E-04 + 0.35970951E-04 0.33271270E-04 0.20258897E-04 0.19041297E-04 0.15548201E-04 + 0.15492953E-04 0.18026376E-04 0.24803737E-04 0.42292837E-04 0.68484374E-04 + 0.36778881E-04 0.95089761E-05 0.39378003E-05 -0.26451561E-06 0.13138998E-05 + 0.81660545E-05 0.22631747E-04 0.41871511E-04 0.64971126E-04 0.84321351E-04 + 0.10367865E-03 0.11952708E-03 0.12821183E-03 0.12831876E-03 0.12431364E-03 + 0.11711467E-03 0.10850632E-03 0.98436518E-04 0.87722781E-04 0.76424033E-04 + 0.65513971E-04 0.55337432E-04 0.44921522E-04 -0.30079168E-08 0.50320628E-08 + 0.28864706E-07 -0.67476255E-07 -0.60215191E-08 -0.21154447E-07 0.33903259E-07 + 0.68869901E-09 -0.32215300E-07 0.41903308E-07 -0.43538278E-07 -0.85560048E-07 + 0.67276848E-07 0.19905292E-06 0.59802981E-06 0.96247913E-06 0.17330032E-05 + 0.23782773E-05 0.31410505E-05 0.37820751E-05 0.37900204E-05 0.30959960E-05 + 0.23679199E-05 0.79682497E-06 -0.18659432E-06 -0.32382026E-06 -0.34021205E-06 + -0.55030827E-06 -0.74479997E-06 -0.66744864E-06 -0.82603251E-06 -0.83717567E-06 + -0.92497261E-06 -0.90964501E-06 -0.95579546E-06 -0.78008527E-06 -0.63472986E-06 + -0.29868412E-06 -0.10773670E-06 0.19221862E-06 0.59539887E-06 0.11432551E-05 + 0.16197595E-05 0.20106352E-05 0.25437899E-05 0.35527140E-05 0.43032776E-05 + 0.51738607E-05 0.57772782E-05 0.61477713E-05 0.62020428E-05 0.59134747E-05 + 0.50838274E-05 0.77290351E-07 -0.73088249E-07 -0.57566538E-07 0.22422423E-07 + -0.19177296E-06 0.11127035E-06 0.38342599E-06 -0.10923612E-06 0.21219873E-06 + 0.20119681E-06 0.43973928E-06 0.10867846E-05 0.26008595E-05 0.35829623E-05 + 0.37728629E-05 0.25932284E-05 0.24270245E-05 0.80964262E-06 0.43835771E-05 + 0.11716000E-04 0.27194054E-04 0.53021277E-04 0.11826305E-03 0.13659147E-03 + 0.11398231E-03 0.51198920E-03 -0.19599394E-03 0.18995269E-04 0.30763658E-03 + 0.35012081E-03 0.22747400E-03 0.26902098E-03 0.55678541E-03 0.82946030E-03 + 0.10047405E-02 0.12411047E-02 0.15657403E-02 0.19946306E-02 0.29918505E-02 + 0.13579778E-01 0.20847989E-02 0.82870244E-02 0.11063494E-01 0.12734818E-01 + 0.11058908E-01 0.17900073E-01 0.21325910E-01 0.22265349E-01 0.20767970E-01 + 0.20181204E-01 0.19135114E-01 0.17780612E-01 0.14865497E-01 -0.83939267E-07 + 0.87095104E-07 0.54660894E-07 -0.67860843E-07 -0.31580336E-07 0.41955332E-06 + -0.30162471E-06 0.45581447E-07 -0.63296352E-07 0.23705862E-06 0.36137634E-06 + 0.79257670E-06 0.48027227E-06 0.64782443E-06 0.42486741E-06 0.11756229E-06 + -0.43993098E-06 0.13852398E-05 0.31350539E-05 0.29121558E-05 0.42276278E-05 + 0.18333017E-05 -0.15485908E-04 0.29633014E-04 0.12807726E-04 -0.44271973E-04 + 0.15598327E-04 -0.20054690E-05 -0.88316559E-05 -0.13853880E-04 -0.11773153E-04 + 0.27282975E-04 0.11538531E-03 0.23106782E-03 0.31096778E-03 0.40844046E-03 + 0.51867528E-03 0.72044505E-03 0.10364746E-02 0.31478902E-02 0.21865768E-02 + 0.42559095E-02 0.58616985E-02 0.73026979E-02 0.83091136E-02 0.10236292E-01 + 0.11697853E-01 0.12206323E-01 0.11635786E-01 0.11269215E-01 0.10725033E-01 + 0.10022267E-01 0.85115553E-02 0.13355747E-07 -0.25820340E-07 -0.51544657E-06 + -0.34568424E-06 -0.12327289E-06 -0.31608679E-06 0.16423608E-05 0.10967767E-04 + 0.41535363E-04 0.10082689E-03 0.19483023E-03 0.32043620E-03 0.44918483E-03 + 0.39122022E-03 0.33178813E-03 0.25962539E-03 0.32090343E-03 0.31457935E-03 + 0.41697533E-03 0.41760988E-03 0.36912995E-03 0.25805430E-03 0.88623276E-03 + 0.46891132E-03 0.13785053E-02 0.25214936E-02 -0.81529403E-03 -0.10868081E-02 + -0.43815238E-03 0.10357482E-03 0.22534334E-03 0.10063162E-02 0.12626319E-02 + 0.11296515E-02 0.74954549E-03 0.43301609E-03 0.58074878E-03 0.11078257E-02 + 0.20801718E-02 0.10250692E-01 -0.62811486E-03 -0.41494171E-03 -0.79937448E-04 + 0.42727578E-03 -0.13920815E-02 -0.61668907E-03 -0.48688817E-03 -0.87203641E-03 + 0.65917961E-03 0.12918891E-02 0.13992030E-02 0.97403387E-03 0.77653207E-03 + 0.13147133E-06 -0.19748373E-06 0.61728311E-07 0.14060375E-06 0.18338711E-06 + -0.27444677E-06 0.10759320E-06 -0.20305558E-07 -0.60129003E-07 -0.91661360E-07 + -0.42989239E-07 0.88327467E-07 0.16564733E-06 -0.12237898E-06 -0.86407500E-06 + -0.87405780E-06 -0.84317885E-06 -0.47074156E-06 -0.11482953E-05 0.98876046E-06 + 0.26874399E-05 0.74407739E-05 0.13876308E-04 0.15279500E-04 0.25242947E-04 + 0.32678392E-04 0.58792043E-04 0.62653992E-04 0.54704403E-04 0.69775868E-04 + 0.73737526E-04 0.66133439E-04 0.79337146E-04 0.81383094E-04 0.84662307E-04 + 0.89756203E-04 0.10119557E-03 0.12456135E-03 0.11911484E-03 -0.13556923E-04 + -0.14485707E-03 -0.15773225E-03 -0.24397663E-03 -0.30448832E-03 -0.34223994E-03 + -0.36000760E-03 -0.34427792E-03 -0.26003881E-03 -0.16907547E-03 -0.11842445E-03 + -0.92311518E-04 -0.74206930E-04 -0.57248473E-04 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.11281251E-10 -0.37564207E-10 -0.28923469E-10 + -0.64890457E-07 0.81939357E-07 -0.16635064E-07 -0.76679604E-07 0.13315971E-06 + 0.25876502E-07 -0.16721606E-06 -0.12442732E-06 0.22860958E-06 -0.15125929E-07 + -0.53402586E-07 -0.31570836E-07 0.20625603E-06 -0.94773022E-07 -0.19943428E-07 + -0.21608607E-07 -0.39779531E-07 -0.70209693E-08 0.27722423E-07 0.54034178E-07 + 0.19118797E-07 0.32747877E-07 -0.89665813E-07 0.34102251E-07 0.38291769E-07 + -0.54683580E-07 0.59104271E-07 -0.37201028E-07 0.31445845E-07 -0.10409618E-07 + 0.29503209E-08 -0.15612393E-07 -0.44289131E-07 -0.20558309E-06 -0.21249039E-06 + -0.36931784E-06 -0.17620683E-06 -0.63735051E-07 -0.38741453E-06 -0.39525244E-06 + -0.21231357E-06 -0.33888425E-06 -0.39906938E-07 -0.66007008E-07 -0.14916354E-06 + -0.29980621E-07 0.28319346E-08 -0.35366891E-08 0.15984972E-07 0.16938422E-06 + -0.47524294E-06 0.33238438E-07 0.67899492E-07 0.44971426E-06 -0.26859444E-06 + 0.25667266E-07 -0.60297670E-07 0.18727798E-07 -0.14557477E-07 -0.38765616E-07 + 0.64097868E-07 -0.14515962E-06 -0.12954482E-07 -0.35872169E-07 -0.23523018E-07 + -0.42238206E-07 -0.21962035E-06 0.72449268E-07 0.51317731E-06 0.26407280E-06 + -0.41183929E-06 -0.15298094E-05 0.12894135E-05 0.11553174E-05 -0.30547147E-06 + 0.11250273E-05 0.35505636E-07 -0.16766932E-05 -0.15454341E-05 -0.24445022E-05 + -0.35271519E-05 -0.42715688E-05 -0.37408836E-05 -0.12010942E-05 -0.22023276E-05 + -0.15320476E-04 -0.27967882E-04 -0.29059267E-04 -0.39792330E-04 -0.46978029E-04 + -0.51021403E-04 -0.55827136E-04 -0.54570714E-04 -0.43463807E-04 -0.30692392E-04 + -0.23249494E-04 -0.18840481E-04 -0.15589218E-04 -0.12251834E-04 0.10559516E-08 + 0.15407045E-08 -0.12480143E-06 0.18704669E-06 0.13277886E-07 -0.25769546E-07 + -0.27783589E-08 0.22766961E-06 -0.46078071E-06 0.16729578E-06 0.29980122E-06 + -0.16814159E-06 -0.27607319E-07 -0.91411721E-08 0.34188645E-07 0.95546735E-08 + 0.66256964E-07 -0.13452584E-06 -0.51454952E-07 -0.34896512E-07 -0.19419720E-06 + -0.24556257E-07 -0.34832491E-06 -0.42147353E-06 -0.83434749E-07 -0.23301105E-06 + -0.11342679E-06 -0.12711909E-06 -0.18303212E-06 -0.73939160E-06 -0.14296163E-06 + -0.82251507E-07 -0.61022955E-06 -0.82694582E-06 -0.78404674E-06 -0.98500050E-06 + -0.10051745E-05 -0.10704922E-05 -0.11860437E-05 0.11457769E-06 0.58345432E-06 + 0.22532475E-05 0.33539832E-05 0.40035446E-05 0.44022563E-05 0.48906377E-05 + 0.42443686E-05 0.28444365E-05 0.15243913E-05 0.86710462E-06 0.58447508E-06 + 0.43353797E-06 0.29024040E-06 -0.40669478E-08 0.19875084E-07 0.89546659E-07 + -0.20066957E-06 -0.39030451E-07 -0.91337654E-07 0.14724686E-06 0.22795359E-07 + -0.57510386E-07 0.16105762E-06 -0.10698741E-07 -0.22952969E-06 0.14502626E-06 + -0.38036122E-07 0.40209360E-07 0.60317866E-08 0.48194967E-07 -0.94830401E-07 + 0.66161964E-07 -0.97933410E-08 0.35050345E-07 -0.53712573E-07 0.88037902E-07 + -0.45456255E-07 0.69563811E-07 -0.84177884E-07 0.71529662E-08 -0.90316048E-08 + 0.60596517E-07 -0.50051768E-07 -0.92746566E-07 0.80910233E-07 -0.35202690E-07 + 0.17518427E-07 -0.65229727E-07 0.77166527E-07 -0.18886748E-07 0.34485204E-07 + 0.46960267E-08 0.71047154E-07 0.44397680E-07 0.15833450E-07 0.96041916E-07 + 0.15107497E-06 0.17302733E-06 0.18325363E-06 0.35017429E-06 0.19868516E-06 + 0.30087106E-06 0.20977392E-06 0.23909894E-06 0.21520439E-06 0.18075421E-06 + -0.35579763E-07 0.52459894E-07 0.52251624E-07 0.75757506E-08 0.10986417E-06 + -0.15637524E-07 -0.12948328E-06 0.13319411E-06 -0.15356928E-07 -0.22404860E-07 + -0.39249328E-07 -0.16836808E-06 -0.37830877E-06 -0.99216295E-07 0.14473124E-06 + 0.13514571E-05 0.22134494E-05 0.33865281E-05 0.29113470E-06 -0.30058077E-05 + -0.10728404E-04 -0.28012012E-04 -0.71234738E-04 -0.79297990E-04 -0.42733479E-04 + -0.41713045E-03 0.30445860E-03 0.11753567E-03 -0.10817182E-03 -0.12670344E-03 + -0.89695637E-04 -0.12248129E-03 -0.18772796E-03 -0.23974429E-03 -0.22175586E-03 + -0.28067790E-03 -0.40465604E-03 -0.53252029E-03 -0.10516044E-02 -0.89558950E-02 + 0.20714795E-02 -0.18282376E-02 -0.29812719E-02 -0.33019961E-02 -0.85672510E-03 + -0.59151840E-02 -0.85958984E-02 -0.93237201E-02 -0.74956060E-02 -0.73849354E-02 + -0.76792792E-02 -0.79440811E-02 -0.67903528E-02 0.37550996E-07 -0.39184651E-07 + -0.29630850E-07 0.37087666E-07 0.14788294E-07 -0.20285021E-06 0.14961471E-06 + -0.15354201E-07 0.54605327E-07 -0.69352610E-07 -0.68299521E-07 -0.53399756E-06 + 0.11880940E-05 0.21223862E-05 0.99449220E-06 0.39204166E-06 -0.44321731E-06 + 0.66349656E-07 0.13466673E-05 -0.14518039E-05 -0.26565094E-05 0.19547741E-05 + 0.16165272E-04 -0.19772142E-04 -0.58541092E-05 0.53796751E-04 -0.20774914E-05 + 0.20744886E-04 0.33250282E-04 0.41516561E-04 0.49832439E-04 0.38150363E-04 + 0.14286492E-04 -0.25705699E-04 -0.26328040E-04 -0.53428417E-04 -0.87781303E-04 + -0.17869454E-03 -0.33093193E-03 -0.18020966E-02 -0.30619815E-03 -0.14585370E-02 + -0.23042844E-02 -0.30457832E-02 -0.34734045E-02 -0.46895843E-02 -0.57495651E-02 + -0.61832989E-02 -0.56797252E-02 -0.55262880E-02 -0.53665838E-02 -0.51895281E-02 + -0.44991035E-02 -0.17217373E-08 0.20919374E-06 0.53208491E-06 0.34667127E-06 + 0.19261572E-06 0.70145160E-06 0.57464252E-06 -0.65106362E-06 -0.84826535E-05 + -0.15568369E-04 -0.26242357E-04 -0.46508685E-04 -0.11988972E-03 -0.10135252E-03 + -0.10170256E-03 -0.87548131E-04 -0.10935846E-03 -0.79028303E-04 -0.87030676E-04 + 0.41870974E-04 0.22291222E-03 0.42558998E-03 0.33022735E-03 0.42937742E-03 + -0.47670949E-03 -0.12226788E-02 0.25741320E-02 0.27848605E-02 0.19899473E-02 + 0.13368731E-02 0.11304621E-02 0.57872828E-03 0.24431038E-03 0.18163778E-03 + 0.22280950E-03 0.20096900E-03 -0.14823383E-03 -0.61159416E-03 -0.10071472E-02 + -0.41645147E-02 0.24289089E-02 0.13228955E-02 0.11841706E-02 0.89219301E-03 + 0.25212719E-02 0.15274232E-02 0.98994757E-03 0.13203126E-02 0.56585156E-03 + 0.57284588E-04 -0.48273732E-03 -0.55260057E-03 -0.46422489E-03 -0.67770916E-07 + 0.10057924E-06 -0.25771922E-07 -0.69195947E-07 -0.95331576E-07 0.13468983E-06 + -0.51065404E-07 0.16287524E-07 0.44030800E-07 0.54225360E-07 0.24286424E-07 + -0.11385154E-07 -0.27794124E-06 -0.10803436E-05 -0.95733179E-06 -0.78651709E-06 + -0.74076480E-06 -0.62538912E-06 -0.18527372E-05 -0.20127100E-06 -0.14302006E-05 + -0.61637220E-05 -0.98023426E-05 -0.98784249E-05 -0.16553257E-04 -0.19690944E-04 + -0.40861621E-04 -0.41140458E-04 -0.32162451E-04 -0.31852001E-04 -0.36807897E-04 + -0.40554724E-04 -0.40019717E-04 -0.38506404E-04 -0.39733739E-04 -0.42408596E-04 + -0.52052971E-04 -0.74281984E-04 -0.68187767E-04 0.50455156E-04 0.14043077E-03 + 0.14826031E-03 0.22329302E-03 0.28082935E-03 0.32117475E-03 0.34911140E-03 + 0.36161275E-03 0.32304533E-03 0.26242657E-03 0.21587009E-03 0.18489803E-03 + 0.16135460E-03 0.13537425E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.48718638E-11 0.23457905E-10 0.48676039E-10 0.35836076E-07 + -0.36799985E-07 0.15296849E-07 0.38852242E-07 -0.70802105E-07 -0.17694308E-07 + 0.91597358E-07 0.59595477E-07 -0.10259137E-06 -0.22295520E-07 0.30244329E-07 + 0.44878236E-07 -0.10911761E-06 0.33057133E-07 0.98607983E-08 0.10952048E-07 + 0.40513341E-07 0.28994006E-08 -0.14719324E-07 -0.41926264E-07 -0.23655023E-07 + -0.11802834E-07 0.46795997E-07 -0.13413831E-07 -0.10146776E-07 0.31956925E-07 + -0.26630664E-07 0.17177769E-07 -0.85711926E-08 0.19434149E-07 0.74680973E-08 + 0.32014945E-07 0.21153838E-07 0.20621746E-06 0.19790563E-06 0.31586804E-06 + 0.25061904E-06 0.10924266E-06 0.46672132E-06 0.45973121E-06 0.37115377E-06 + 0.44193745E-06 0.24699618E-06 0.21687739E-06 0.28912125E-06 0.15731109E-06 + -0.14978065E-08 0.11423821E-08 -0.68099452E-08 -0.80509862E-07 0.23261974E-06 + -0.15529543E-07 -0.35622776E-07 -0.22069943E-06 0.13513013E-06 -0.13792242E-07 + 0.34214201E-07 0.14885643E-07 0.64764580E-08 -0.76297575E-07 -0.12456198E-06 + 0.69244910E-07 -0.58884133E-08 0.74780306E-07 -0.35695862E-07 0.26050786E-06 + 0.32708958E-06 -0.90015675E-07 -0.41141415E-06 -0.14661464E-06 0.33565277E-06 + 0.15552809E-05 -0.12792878E-05 -0.11091752E-05 0.25586802E-06 0.38568264E-06 + -0.12555508E-06 0.24640181E-06 0.11813487E-05 0.21502777E-05 0.32167090E-05 + 0.39107755E-05 0.34422869E-05 0.10549761E-05 0.22316489E-05 0.13974324E-04 + 0.22815001E-04 0.23790834E-04 0.33435262E-04 0.40609306E-04 0.45306029E-04 + 0.51408191E-04 0.54251888E-04 0.49735861E-04 0.41666828E-04 0.35173206E-04 + 0.30370673E-04 0.26587353E-04 0.22188369E-04 -0.55849666E-09 -0.74499767E-09 + 0.60885773E-07 -0.88752211E-07 -0.71725181E-08 0.14446860E-07 -0.14157915E-08 + -0.12225860E-06 0.22448661E-06 -0.81867998E-07 -0.13931691E-06 0.75922334E-07 + 0.26370294E-07 0.31891290E-07 0.27119539E-07 0.24006236E-07 0.15270160E-07 + 0.10358324E-06 0.92430975E-07 0.10048851E-06 0.17044535E-06 0.71171714E-07 + 0.26893592E-06 0.33108362E-06 0.79721367E-07 0.18649497E-06 0.68234030E-07 + 0.73027067E-07 0.57237122E-07 0.32368529E-06 0.27211049E-06 0.52314864E-06 + 0.79597879E-06 0.94663216E-06 0.93884120E-06 0.11284894E-05 0.11853045E-05 + 0.12900597E-05 0.13318701E-05 0.30765818E-06 0.17179696E-06 -0.11263488E-05 + -0.21030605E-05 -0.27703238E-05 -0.32742064E-05 -0.39011657E-05 -0.37981174E-05 + -0.31591947E-05 -0.23682869E-05 -0.18007344E-05 -0.15236253E-05 -0.13496489E-05 + -0.11797863E-05 0.12351639E-08 -0.79873831E-08 -0.47525677E-07 0.10236477E-06 + 0.16443286E-07 0.44274786E-07 -0.68632731E-07 -0.15556765E-07 0.32792282E-07 + -0.86098166E-07 0.82738981E-08 0.11606379E-06 -0.63411098E-07 0.27336550E-07 + -0.55352699E-08 0.12492628E-07 -0.75036344E-08 0.68526401E-07 -0.73617967E-08 + 0.19118198E-07 -0.16238420E-07 0.37226623E-07 -0.36727544E-07 0.15747124E-07 + -0.24460337E-07 0.72747451E-07 -0.24609923E-07 0.56378680E-08 -0.28915534E-07 + 0.26995289E-07 0.51762826E-07 -0.30976180E-07 0.28196801E-07 0.10537411E-08 + 0.45474692E-07 -0.28334410E-07 0.26047633E-07 -0.17755639E-07 0.42160124E-08 + -0.42015351E-07 0.21421329E-07 0.27946982E-07 -0.29599860E-07 -0.55125895E-07 + -0.69418888E-07 -0.59907165E-07 -0.18404413E-06 -0.12558586E-06 -0.13212973E-06 + -0.85761648E-07 -0.12659253E-06 -0.10535663E-06 -0.86729674E-07 0.00000000E+00 + -0.34666798E-06 -0.27211045E-05 -0.36100741E-05 0.69523094E-05 0.16800892E-04 + 0.67482938E-05 0.33602269E-05 0.28181785E-05 0.18615815E-05 0.82420826E-06 + 0.12533359E-05 0.34948292E-06 0.30466727E-06 0.24342640E-06 0.24879211E-06 + 0.19899519E-06 0.10992466E-07 0.51036819E-07 -0.19243975E-07 0.11430132E-06 + 0.48878966E-07 0.53630738E-06 0.12780794E-06 -0.11408704E-05 0.24201687E-06 + 0.90727841E-06 0.78309055E-07 -0.23841474E-06 -0.24952242E-06 0.40948688E-06 + 0.37648831E-06 0.39258791E-06 0.22937261E-06 0.56899044E-07 0.21821788E-07 + 0.80638519E-07 0.18973724E-06 0.17385620E-06 0.15609162E-05 0.79745788E-07 + 0.29546880E-07 0.18055955E-07 -0.47141168E-07 -0.14465282E-06 -0.90402164E-07 + -0.13404745E-06 -0.17077013E-06 -0.10780849E-06 -0.57249881E-07 -0.46130648E-07 + 0.77598204E-09 0.35718602E-08 0.00000000E+00 0.13205039E-06 -0.13861147E-05 + 0.25948326E-05 -0.58846392E-06 0.15411088E-05 -0.11837065E-05 -0.84910000E-06 + -0.38009561E-06 0.12277805E-06 -0.14294317E-05 0.23783084E-05 0.11120984E-05 + 0.11769428E-06 -0.12105935E-05 -0.13516882E-05 -0.14372588E-05 -0.47975712E-06 + 0.54301779E-07 0.41151808E-06 0.37522549E-06 0.32372328E-06 -0.56318107E-07 + 0.37783743E-06 0.38258931E-06 0.94910663E-07 -0.69069312E-08 0.91853517E-07 + 0.48436558E-07 -0.20967778E-07 0.47809516E-07 0.46912581E-07 0.82178263E-07 + 0.63635238E-07 0.48600882E-07 0.29674712E-07 0.39211150E-07 0.45756286E-07 + 0.58998175E-07 0.26204478E-06 0.54643774E-07 0.46732652E-07 0.40569174E-07 + 0.28603182E-07 0.12559393E-07 0.11635791E-07 -0.39444066E-08 -0.12678992E-07 + -0.82814932E-08 -0.92933734E-09 0.18911260E-09 0.69613851E-08 0.62254659E-08 + 0.00000000E+00 -0.41680192E-05 -0.35793305E-04 -0.16340722E-03 0.85829788E-04 + 0.39245659E-04 -0.46903023E-04 0.71002248E-04 -0.96448248E-05 -0.27370669E-04 + 0.36157301E-04 -0.27343524E-04 -0.84709613E-05 -0.33205298E-05 0.48422649E-05 + 0.74938622E-05 0.82132810E-05 0.27652450E-05 0.26485927E-07 -0.18360100E-05 + -0.12387038E-05 -0.72140582E-06 0.21596103E-05 -0.21530343E-06 -0.38762909E-05 + 0.13097570E-06 0.17088525E-05 0.34211165E-07 -0.30360076E-06 -0.18283227E-06 + 0.56887011E-06 0.49100063E-06 0.42761092E-06 0.23541907E-06 0.62998987E-07 + 0.31473589E-07 0.53114322E-07 0.11348790E-06 0.76130933E-07 0.63190625E-06 + 0.40775786E-07 0.18000182E-07 0.11676348E-07 -0.13358243E-07 -0.44212554E-07 + -0.23133686E-07 -0.33094852E-07 -0.43305285E-07 -0.24703357E-07 -0.12352327E-07 + -0.95057822E-08 0.20104449E-08 0.22378226E-08 0.00000000E+00 -0.44120352E-06 + -0.33790678E-06 -0.31866880E-06 -0.13257973E-05 0.37482953E-05 0.70914222E-06 + 0.40087481E-07 -0.49917013E-06 -0.31566212E-06 0.19335875E-06 0.16111273E-06 + -0.97391105E-07 0.34861296E-06 0.72720892E-06 0.81629408E-06 0.81895215E-06 + 0.20575306E-06 -0.47556039E-06 0.58495621E-07 0.14126504E-07 -0.82586839E-07 + -0.38164153E-07 -0.23909195E-07 -0.78864428E-08 -0.79243222E-07 -0.83051439E-07 + -0.51233864E-07 -0.39883372E-08 0.82168020E-07 0.30836332E-07 -0.37976926E-07 + -0.62198599E-07 -0.72138563E-07 -0.62662590E-07 -0.42333005E-07 -0.29244320E-07 + -0.21009150E-07 -0.19323556E-07 -0.35094005E-07 -0.32934775E-07 -0.25428507E-07 + -0.21363807E-07 -0.16975873E-07 -0.12662577E-07 -0.83016026E-08 -0.47802906E-08 + -0.21120142E-08 -0.55466065E-09 0.35572296E-09 0.72596015E-09 0.75376916E-09 + 0.61588644E-09 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.30977440E-09 -0.11769631E-08 -0.11795513E-08 -0.13085716E-06 -0.44802103E-08 + 0.51865664E-08 -0.17262462E-08 0.30086603E-08 0.41827676E-08 -0.50763050E-09 + -0.15405822E-09 0.91803220E-09 0.63487811E-09 0.54260810E-09 0.99604591E-10 + -0.11370072E-09 0.24775070E-10 0.59326191E-11 0.20837206E-11 -0.20300218E-10 + 0.57041158E-10 -0.51485118E-10 -0.70941736E-11 -0.24920785E-10 0.57152460E-11 + 0.37608819E-10 0.16568056E-10 -0.73157093E-11 -0.14512174E-10 -0.26779579E-10 + -0.24223875E-10 -0.17283260E-10 -0.12408617E-10 -0.12087161E-10 -0.12250039E-10 + -0.99286389E-11 -0.21757566E-10 -0.16754821E-10 -0.19252290E-10 -0.15619968E-10 + -0.86634730E-11 -0.98576093E-11 -0.87373894E-11 -0.28259135E-11 -0.47445796E-11 + -0.25721604E-11 -0.16972969E-11 -0.14891438E-11 -0.11921768E-11 0.00000000E+00 + 0.52388838E-07 0.15312344E-06 -0.17016778E-05 0.22822551E-06 0.40139473E-06 + -0.36629771E-07 -0.14463218E-06 -0.10300302E-06 -0.89261053E-07 0.12654446E-07 + -0.60701525E-07 -0.47685695E-07 0.19529891E-07 0.74582696E-07 0.56180819E-07 + 0.74576195E-07 0.93855451E-08 -0.57498654E-07 -0.15219506E-07 -0.16519543E-07 + -0.21446788E-07 -0.14880059E-07 -0.66545621E-08 -0.54549396E-08 -0.14625157E-07 + -0.16957067E-07 -0.90304487E-08 0.24930307E-08 0.12507871E-07 0.13173332E-08 + -0.49299647E-08 -0.61943847E-08 -0.66495241E-08 -0.61547787E-08 -0.47281343E-08 + -0.36264202E-08 -0.30906389E-08 -0.29350630E-08 -0.44236482E-08 -0.39159117E-08 + -0.32338985E-08 -0.28547209E-08 -0.23781842E-08 -0.18698877E-08 -0.13766569E-08 + -0.90050481E-09 -0.51733805E-09 -0.31164597E-09 -0.15436508E-09 -0.79070021E-10 + -0.55704260E-10 -0.42906729E-10 0.00000000E+00 0.16471036E-08 -0.86334150E-06 + 0.13527257E-05 -0.13162939E-05 0.49236043E-06 0.14955710E-06 -0.15009679E-08 + -0.87374827E-07 -0.19569216E-07 -0.36491575E-08 -0.67754768E-09 0.37030093E-08 + -0.58195324E-11 -0.26499563E-07 -0.22890585E-07 -0.26699436E-07 -0.16352206E-07 + -0.14255498E-07 -0.42910798E-08 -0.30038466E-08 0.27052856E-08 0.70774074E-08 + 0.31306135E-08 0.45740525E-08 0.38931838E-08 0.41226788E-08 0.25496221E-08 + -0.70797737E-09 -0.20844364E-08 0.20452311E-09 0.40440478E-09 0.25570885E-09 + 0.22320695E-09 0.26340424E-09 0.26746436E-09 0.38664896E-09 0.51940009E-09 + 0.67386657E-09 0.58541169E-09 0.45386505E-09 0.39620737E-09 0.35949426E-09 + 0.29915425E-09 0.24144666E-09 0.17523259E-09 0.13054362E-09 0.85467954E-10 + 0.47078040E-10 0.27100904E-10 0.12786084E-10 0.62601093E-11 0.53028447E-11 + 0.00000000E+00 0.25205045E-07 -0.56173613E-06 0.43215483E-07 0.19516693E-05 + -0.14683470E-05 0.73071584E-07 0.15127318E-07 -0.24861893E-07 -0.25032383E-07 + 0.24679227E-08 -0.50339107E-08 -0.88530636E-08 -0.62432427E-08 -0.40853878E-08 + -0.82347353E-08 -0.49847002E-08 -0.43265670E-08 -0.63269597E-09 -0.18801128E-08 + -0.85257879E-09 0.13872563E-09 0.23777526E-09 0.44586037E-09 0.34719740E-09 + 0.62889352E-10 0.98439101E-12 0.74688316E-10 0.58318061E-10 0.22801491E-10 + 0.46198235E-11 0.28085107E-11 0.81512756E-12 0.39298077E-11 0.34590793E-11 + 0.42757154E-11 0.26947720E-11 0.22746918E-11 0.30899976E-12 0.98438472E-11 + 0.99695732E-12 0.98201905E-12 0.14111229E-11 0.23557754E-11 0.22271165E-11 + 0.15211236E-11 0.81048812E-12 0.10622273E-11 -0.66102215E-12 0.16010552E-12 + 0.48563328E-12 0.28394275E-12 0.28033889E-12 0.00000000E+00 -0.44182025E-06 + -0.33619398E-05 -0.78219446E-05 -0.11229969E-04 -0.17689382E-04 -0.59102543E-05 + -0.24755231E-05 -0.21659944E-05 -0.15216871E-05 -0.59641774E-06 -0.10904969E-05 + -0.24529125E-06 -0.19966115E-06 -0.20073708E-06 -0.24391558E-06 -0.22723720E-06 + -0.57655486E-07 -0.11538233E-06 -0.56396631E-07 -0.20399373E-06 -0.16195836E-06 + -0.66540099E-06 -0.21667830E-06 0.11515191E-05 -0.34596560E-06 -0.10232302E-05 + -0.21319995E-06 0.11690337E-06 0.16386853E-06 -0.51660351E-06 -0.47811306E-06 + -0.46834023E-06 -0.29539554E-06 -0.12418747E-06 -0.85970341E-07 -0.13297115E-06 + -0.22876164E-06 -0.22035125E-06 -0.16478054E-05 -0.13337402E-06 -0.85064915E-07 + -0.73460186E-07 0.93382981E-09 0.10562922E-06 0.38734577E-07 0.85075256E-07 + 0.11778991E-06 0.73011187E-07 0.28188134E-07 0.25012553E-07 -0.21628120E-07 + -0.20862883E-07 0.00000000E+00 0.11696878E-06 -0.14190145E-05 0.18080334E-05 + 0.76560253E-06 0.22832677E-06 0.13776791E-05 0.10101441E-05 0.60060716E-06 + 0.22199144E-06 0.19534262E-05 -0.17126833E-05 -0.36952460E-06 0.82724226E-06 + 0.19009475E-05 0.18551366E-05 0.18273763E-05 0.79652900E-06 0.18292574E-06 + -0.20847042E-06 -0.20976479E-06 -0.19442562E-06 0.14509580E-06 -0.35980225E-06 + -0.38849923E-06 -0.85325820E-07 0.97516781E-08 -0.94268046E-07 -0.61002597E-07 + 0.90820866E-08 -0.63021582E-07 -0.62547063E-07 -0.97727890E-07 -0.77690318E-07 + -0.64252258E-07 -0.47081607E-07 -0.56046675E-07 -0.62249053E-07 -0.76656682E-07 + -0.28435183E-06 -0.72387782E-07 -0.66047047E-07 -0.62111139E-07 -0.49773813E-07 + -0.33859946E-07 -0.35963186E-07 -0.20413573E-07 -0.12819463E-07 -0.13428210E-07 + -0.18375905E-07 -0.16410327E-07 -0.21752028E-07 -0.18684609E-07 0.00000000E+00 + -0.46870052E-05 -0.40105476E-04 -0.14490272E-03 -0.31530153E-03 -0.17893193E-03 + -0.60592406E-04 -0.15753381E-03 -0.62805329E-04 -0.18803228E-04 -0.57248486E-04 + 0.29141181E-04 0.19964993E-04 0.14362541E-04 0.19562798E-05 -0.43684807E-05 + -0.71894187E-05 -0.28337971E-05 -0.50064145E-06 0.13739769E-05 0.87481501E-06 + 0.42483468E-06 -0.23586416E-05 0.14323914E-06 0.39147651E-05 -0.24893789E-06 + -0.16036558E-05 0.31411739E-07 0.35654759E-06 0.23415694E-06 -0.54298538E-06 + -0.46603862E-06 -0.38932862E-06 -0.19859765E-06 -0.33307399E-07 -0.67007687E-08 + -0.31447092E-07 -0.91388297E-07 -0.58088507E-07 -0.60627636E-06 -0.15521117E-07 + -0.39594072E-08 0.67849540E-09 0.25011529E-07 0.57871152E-07 0.31078577E-07 + 0.38224350E-07 0.47411828E-07 0.30727343E-07 0.17520400E-07 0.13513983E-07 + 0.40049464E-09 -0.41301391E-09 0.00000000E+00 -0.45597489E-06 -0.32337733E-06 + 0.12403236E-05 0.45404325E-05 -0.46005743E-05 -0.52267328E-06 0.93710847E-07 + 0.59737865E-06 0.31768142E-06 -0.15611984E-06 -0.11662121E-06 0.95822415E-07 + -0.39688357E-06 -0.76260716E-06 -0.81987457E-06 -0.80779793E-06 -0.21018311E-06 + 0.44306191E-06 -0.58114199E-07 -0.18082339E-07 0.71801877E-07 0.30799592E-07 + 0.19382359E-07 0.30865406E-08 0.74916841E-07 0.78846833E-07 0.48325807E-07 + 0.14180452E-08 -0.86047919E-07 -0.31026919E-07 0.37273108E-07 0.59241392E-07 + 0.67250541E-07 0.57735213E-07 0.38266595E-07 0.26058527E-07 0.18486780E-07 + 0.17415667E-07 0.33970078E-07 0.32322518E-07 0.24888820E-07 0.21172238E-07 + 0.17036255E-07 0.12883438E-07 0.86159632E-08 0.52727466E-08 0.27795663E-08 + 0.12185874E-08 0.17397877E-09 -0.30140487E-09 -0.39610172E-09 -0.31932609E-09 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.14184186E-09 + 0.10285189E-08 0.37394592E-09 0.98699135E-07 -0.40367659E-08 0.19968584E-07 + 0.36209487E-09 -0.43425160E-08 -0.35658044E-08 0.10671909E-08 -0.19766400E-09 + -0.12938033E-09 -0.12919322E-08 -0.46531467E-09 0.43226959E-10 0.84460585E-10 + -0.42099756E-10 -0.10904442E-10 -0.58741233E-11 0.33511633E-10 -0.60279771E-10 + 0.52450947E-10 0.65811766E-11 0.22758200E-10 -0.33963674E-11 -0.38468221E-10 + -0.16674604E-10 0.78972727E-11 0.13450942E-10 0.24753006E-10 0.22001064E-10 + 0.15456465E-10 0.11131956E-10 0.10769662E-10 0.11119541E-10 0.10126677E-10 + 0.21085345E-10 0.15606476E-10 0.17980097E-10 0.15006500E-10 0.76985854E-11 + 0.92484646E-11 0.87604643E-11 0.34281526E-11 0.51419040E-11 0.28317923E-11 + 0.18119846E-11 0.17729519E-11 0.12632535E-11 0.00000000E+00 0.52528992E-07 + 0.80377295E-07 -0.16148592E-05 0.55044599E-06 -0.21230353E-06 -0.83673664E-07 + 0.13162075E-06 0.65511937E-07 0.64707335E-07 -0.30106530E-07 0.48219726E-07 + 0.36911136E-07 -0.32337447E-07 -0.84141901E-07 -0.58246230E-07 -0.75230986E-07 + -0.11361576E-07 0.51890945E-07 0.12841716E-07 0.14116299E-07 0.19007300E-07 + 0.13282168E-07 0.59213063E-08 0.50806016E-08 0.14611484E-07 0.16869930E-07 + 0.89388790E-08 -0.27080577E-08 -0.12855307E-07 -0.13066324E-08 0.49992276E-08 + 0.60180700E-08 0.62746833E-08 0.57344135E-08 0.43401410E-08 0.33052931E-08 + 0.28076365E-08 0.27168528E-08 0.42893709E-08 0.38467864E-08 0.31775555E-08 + 0.28461010E-08 0.24062112E-08 0.19174307E-08 0.14374170E-08 0.99326880E-09 + 0.63696028E-09 0.42580697E-09 0.24838407E-09 0.15477507E-09 0.11931169E-09 + 0.95119273E-10 0.00000000E+00 0.12535831E-08 -0.87760586E-06 0.10207327E-05 + 0.49157150E-06 -0.42877988E-06 0.16850107E-07 -0.42203503E-07 0.22758380E-07 + 0.26854377E-07 0.14134015E-07 0.65006692E-08 0.37495109E-08 0.75714283E-08 + 0.34064113E-07 0.26504224E-07 0.28688616E-07 0.16785474E-07 0.14716460E-07 + 0.40955967E-08 0.26084503E-08 -0.29839271E-08 -0.70890625E-08 -0.30844226E-08 + -0.46197249E-08 -0.38898838E-08 -0.41151705E-08 -0.25356224E-08 0.75428668E-09 + 0.21368292E-08 -0.21315619E-09 -0.42223870E-09 -0.25192380E-09 -0.21207154E-09 + -0.25164334E-09 -0.25541371E-09 -0.36982644E-09 -0.49642495E-09 -0.64534560E-09 + -0.57641217E-09 -0.45362794E-09 -0.40700965E-09 -0.37602811E-09 -0.31879455E-09 + -0.26194640E-09 -0.19543633E-09 -0.14952832E-09 -0.10416804E-09 -0.64729196E-10 + -0.41592408E-10 -0.25251355E-10 -0.16915109E-10 -0.14152840E-10 0.00000000E+00 + 0.32422067E-07 -0.69201714E-06 0.23138296E-06 -0.12111397E-05 0.43419311E-06 + 0.44208471E-07 0.91897251E-08 0.78939800E-08 0.92630269E-08 -0.10521556E-07 + 0.78803050E-09 0.72747683E-08 0.50444272E-08 0.33149561E-08 0.78081295E-08 + 0.44919027E-08 0.40403883E-08 0.35117344E-09 0.16689450E-08 0.67903302E-09 + -0.22356972E-09 -0.28948932E-09 -0.49373029E-09 -0.36714675E-09 -0.61554128E-10 + 0.25861182E-12 -0.72241027E-10 -0.57059952E-10 -0.22375956E-10 -0.36477085E-11 + -0.22784602E-11 -0.55306019E-12 -0.42215441E-11 -0.38335634E-11 -0.50347679E-11 + -0.32992196E-11 -0.35966902E-11 -0.13839159E-11 -0.11137168E-10 -0.17795138E-11 + -0.20446511E-11 -0.27519284E-11 -0.36187791E-11 -0.36248027E-11 -0.32795783E-11 + -0.28682885E-11 -0.34949765E-11 -0.17559897E-11 -0.25523278E-11 -0.28859319E-11 + -0.25159311E-11 -0.21738677E-11 -0.88718114E-07 0.26386465E-06 0.25544153E-06 + 0.10175721E-06 0.35223842E-06 0.96802095E-08 -0.22474521E-06 0.75943903E-06 + 0.34788419E-06 -0.82926066E-08 -0.26122969E-06 -0.21549152E-05 -0.35068962E-05 + -0.19562734E-05 -0.36789380E-05 -0.19907829E-05 0.20198297E-06 0.16619776E-05 + -0.17792467E-04 -0.17932425E-04 -0.32183551E-04 -0.11080218E-03 -0.35743805E-03 + -0.35954199E-03 -0.28668306E-04 -0.24493985E-02 0.17206370E-02 0.73826841E-03 + -0.85142347E-03 -0.17572479E-02 -0.38604267E-02 -0.61349951E-02 -0.68605822E-02 + -0.80162464E-02 -0.93952622E-02 -0.12364659E-01 -0.16171505E-01 -0.19852805E-01 + -0.26266110E-01 -0.80059528E-01 -0.29276740E-02 -0.27469559E-01 -0.33909394E-01 + -0.34766063E-01 -0.16560140E-01 -0.50812591E-01 -0.70058556E-01 -0.75045362E-01 + -0.57195684E-01 -0.55135022E-01 -0.59568992E-01 -0.64092763E-01 -0.55346890E-01 + 0.10014473E-06 -0.89686506E-07 -0.73211441E-07 0.83211698E-07 -0.25967163E-07 + -0.34008840E-06 0.29242277E-06 -0.69630428E-07 0.45536996E-07 -0.58729236E-06 + -0.15613941E-05 -0.85038807E-05 0.46469759E-05 0.11363837E-04 -0.62582837E-05 + -0.16023381E-04 -0.28249689E-04 -0.14297285E-04 0.80918147E-05 -0.22007583E-04 + -0.27757437E-04 0.16426923E-04 0.11899232E-03 -0.15430944E-03 -0.72700365E-04 + 0.27457676E-03 -0.14290298E-03 -0.13485474E-03 -0.25355316E-03 -0.56761569E-03 + -0.98714913E-03 -0.16408470E-02 -0.22804849E-02 -0.32034446E-02 -0.39281895E-02 + -0.52980281E-02 -0.68938054E-02 -0.89783141E-02 -0.11491305E-01 -0.22164633E-01 + -0.10698714E-01 -0.17860409E-01 -0.23391008E-01 -0.28234785E-01 -0.30890027E-01 + -0.39082064E-01 -0.46838237E-01 -0.50930653E-01 -0.47576804E-01 -0.46355094E-01 + -0.44927801E-01 -0.43431046E-01 -0.37864860E-01 -0.19014081E-07 0.21617535E-05 + 0.30673895E-05 0.15926507E-05 -0.62854426E-06 -0.21232106E-05 -0.15503535E-04 + -0.50874829E-04 -0.16445691E-03 -0.31783473E-03 -0.39379974E-03 -0.35167898E-04 + 0.38724908E-03 0.11254097E-02 0.11403160E-02 0.60008400E-03 -0.20876549E-03 + -0.10204833E-02 -0.18531555E-02 -0.15065840E-02 -0.78229460E-03 0.14455695E-04 + -0.13052214E-03 -0.57184323E-03 -0.49604697E-02 -0.72456269E-02 0.14469622E-01 + 0.14879248E-01 0.11558827E-01 0.73884798E-02 0.66593574E-02 0.50125682E-02 + 0.43179930E-02 0.47917562E-02 0.53406262E-02 0.41003170E-02 0.49624878E-03 + -0.27181838E-02 -0.27915534E-02 -0.60724873E-02 0.25321867E-01 0.12942281E-01 + 0.13562736E-01 0.12966601E-01 0.23683484E-01 0.14711283E-01 0.82863381E-02 + 0.11448260E-01 0.10718380E-01 0.81125582E-02 0.19354153E-02 -0.97343009E-03 + -0.10433013E-02 -0.13977564E-06 0.20482124E-06 -0.49305433E-07 -0.13154242E-06 + -0.57338449E-07 0.40597580E-07 -0.36081372E-07 0.10092859E-06 0.33841126E-06 + 0.25272601E-06 0.17830210E-06 0.39795081E-06 -0.22275579E-05 -0.13224493E-04 + -0.15615151E-04 -0.13971045E-04 -0.13827168E-04 -0.11685997E-04 -0.29031797E-04 + -0.40053996E-05 -0.11928923E-04 -0.47717731E-04 -0.66118986E-04 -0.58808949E-04 + -0.94187589E-04 -0.97932992E-04 -0.21094455E-03 -0.22651272E-03 -0.18902911E-03 + -0.32527589E-04 -0.10874063E-03 -0.33190216E-03 -0.18005755E-03 -0.13932571E-03 + -0.15210878E-03 -0.17529401E-03 -0.26242718E-03 -0.44961751E-03 -0.40019907E-03 + 0.44125679E-03 0.91633461E-03 0.94068702E-03 0.14592747E-02 0.18836347E-02 + 0.22119927E-02 0.25082831E-02 0.28065734E-02 0.28149873E-02 0.25455553E-02 + 0.22107051E-02 0.19338952E-02 0.17076439E-02 0.14467827E-02 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.23145250E-10 0.17403339E-10 + -0.42033065E-09 0.23548501E-07 -0.98560689E-07 0.24497360E-06 0.56097429E-07 + -0.18425304E-06 0.24719836E-07 0.24675585E-06 0.40155169E-07 0.10384782E-06 + -0.50029584E-06 0.67919703E-07 0.30353560E-06 -0.30590612E-06 0.44776862E-07 + 0.31006124E-07 -0.53646221E-08 0.24200775E-06 -0.29302792E-07 0.12766490E-07 + -0.16363142E-06 -0.19882082E-06 0.90767464E-07 0.10868591E-06 0.14961721E-09 + 0.19063453E-06 0.11463229E-06 -0.35767833E-08 -0.77796045E-08 -0.61786956E-07 + 0.68189564E-07 -0.89604811E-07 -0.43459039E-07 -0.62272466E-06 0.83404575E-06 + 0.30354414E-06 0.80995881E-06 0.66030151E-06 -0.85360671E-06 0.20159706E-05 + 0.17276220E-05 0.16675029E-05 0.19840733E-05 0.11362270E-05 0.91188727E-06 + 0.14511018E-05 0.64330935E-06 -0.30947834E-08 0.52680420E-08 -0.11727169E-07 + -0.20558375E-06 0.53829493E-06 0.13745809E-07 -0.11624054E-06 -0.49049043E-06 + 0.21207619E-06 0.52414401E-07 0.98789905E-07 0.22338827E-06 -0.23496902E-08 + -0.10942647E-05 -0.13435922E-05 -0.40349332E-06 -0.11765641E-05 -0.13496678E-05 + -0.37523360E-05 -0.20166216E-05 -0.30839450E-05 -0.66205939E-05 -0.78163801E-05 + -0.41175334E-05 0.31562138E-07 0.81696327E-05 -0.90071832E-05 -0.95120675E-05 + -0.13820051E-05 0.19018380E-04 -0.25041041E-05 -0.21086401E-04 -0.10539954E-05 + 0.71285450E-05 0.13189177E-04 0.13541663E-04 0.42372128E-05 -0.18994429E-04 + -0.11801456E-04 0.69366271E-04 0.11532303E-03 0.11955548E-03 0.18691006E-03 + 0.24082983E-03 0.28017800E-03 0.33712721E-03 0.38817600E-03 0.39800329E-03 + 0.36705102E-03 0.32380033E-03 0.28442685E-03 0.25180019E-03 0.21236147E-03 + -0.11539533E-08 -0.15434135E-08 0.13094988E-06 -0.16602239E-06 -0.37247439E-07 + 0.25154046E-07 0.13979248E-06 -0.26912589E-06 0.23524424E-06 -0.16974519E-06 + -0.28345035E-06 0.15766377E-06 0.16021022E-06 0.29973620E-06 0.42525018E-06 + 0.18331593E-06 0.15882497E-06 -0.26964727E-07 -0.22484531E-06 -0.48287109E-06 + -0.64138189E-06 -0.86684878E-06 0.48308364E-06 0.15969896E-05 0.41972214E-07 + 0.62200661E-06 -0.12385698E-06 -0.29818159E-06 -0.15409981E-05 -0.30736473E-05 + 0.15908330E-05 0.48615206E-05 0.21128185E-05 0.51099516E-06 -0.18963322E-05 + -0.24690688E-05 -0.39667507E-05 -0.49491928E-05 -0.71061399E-05 -0.15783919E-04 + -0.17020122E-04 -0.27030562E-04 -0.35537721E-04 -0.41980074E-04 -0.47212653E-04 + -0.53620420E-04 -0.56115223E-04 -0.55266275E-04 -0.51280144E-04 -0.45362956E-04 + -0.40519359E-04 -0.35760851E-04 -0.30580553E-04 0.57557827E-08 -0.19928216E-07 + -0.98014363E-07 0.22095006E-06 0.91579602E-07 -0.49588854E-07 -0.10800854E-06 + 0.26277198E-07 0.27824936E-07 -0.22984802E-06 -0.70271469E-08 0.30545834E-06 + -0.74275933E-07 0.12164526E-06 0.11441445E-06 0.17133043E-06 0.31971897E-07 + 0.22043618E-06 -0.79228514E-07 -0.15779170E-06 -0.44966657E-06 -0.26874831E-06 + -0.38706191E-06 -0.29167607E-06 -0.88215494E-07 0.32785972E-06 -0.27133510E-06 + -0.11314045E-06 -0.10839387E-06 -0.85956579E-07 0.77606327E-07 -0.10583080E-06 + -0.47701356E-07 -0.11177085E-06 -0.72028556E-07 -0.38018993E-06 -0.20931691E-06 + -0.69573002E-06 -0.61924470E-06 -0.10708057E-05 -0.51866203E-06 -0.83875847E-06 + -0.13888339E-05 -0.16844925E-05 -0.20355340E-05 -0.24781961E-05 -0.37133535E-05 + -0.45003003E-05 -0.47092714E-05 -0.52061582E-05 -0.57591795E-05 -0.55927401E-05 + -0.50053300E-05 0.00000000E+00 -0.21493388E-05 -0.15242506E-05 -0.74111639E-06 + -0.52730434E-06 -0.41973055E-06 -0.69766774E-06 -0.11391799E-05 -0.87591238E-06 + -0.35770504E-06 -0.48346346E-06 -0.28891677E-07 -0.10233650E-05 -0.32097400E-05 + -0.30689330E-05 -0.36982860E-05 -0.47114835E-05 -0.48652543E-05 -0.11777910E-05 + -0.37930833E-05 -0.51345440E-05 0.32139347E-05 0.29289176E-04 0.22415508E-04 + -0.23765207E-04 0.23360793E-03 -0.20711110E-03 -0.10796284E-03 0.23994570E-04 + 0.90469650E-04 0.25777059E-03 0.40308147E-03 0.39615094E-03 0.41773755E-03 + 0.45433463E-03 0.58162584E-03 0.74122447E-03 0.86935237E-03 0.11072017E-02 + 0.34167793E-02 -0.30771802E-03 0.59479619E-03 0.70324461E-03 0.59053710E-03 + -0.26444507E-03 0.98591371E-03 0.16698738E-02 0.18130145E-02 0.10605658E-02 + 0.10046064E-02 0.12682193E-02 0.15545658E-02 0.13627589E-02 0.00000000E+00 + -0.30918727E-07 0.10550822E-06 -0.97297727E-07 0.18863752E-06 -0.25923953E-06 + 0.46191889E-07 0.27720466E-08 -0.39108025E-07 0.17943217E-06 0.61162588E-06 + 0.46088853E-05 -0.43742512E-05 -0.77255846E-05 0.76434134E-06 0.42765901E-05 + 0.78595879E-05 0.22140877E-05 -0.43348484E-05 0.31170591E-05 0.36910164E-05 + -0.43479436E-05 -0.17534909E-04 0.16593174E-04 0.62843185E-05 -0.32566669E-04 + 0.10834660E-04 0.81675972E-05 0.16747295E-04 0.40465806E-04 0.68056079E-04 + 0.10649893E-03 0.13427314E-03 0.17563926E-03 0.20033399E-03 0.26120938E-03 + 0.32856566E-03 0.41228205E-03 0.50555681E-03 0.94170703E-03 0.31081310E-03 + 0.53710652E-03 0.69273226E-03 0.81634355E-03 0.85351471E-03 0.11057516E-02 + 0.13580325E-02 0.14859495E-02 0.13354177E-02 0.12857242E-02 0.12462070E-02 + 0.12189073E-02 0.10685278E-02 0.00000000E+00 -0.25112668E-04 -0.19706350E-04 + -0.70006254E-05 0.15038401E-05 0.28973831E-05 0.18478377E-04 0.37482106E-04 + 0.94531439E-04 0.90556422E-04 -0.60650495E-04 -0.51268273E-03 -0.83767955E-03 + -0.10996888E-02 -0.97555701E-03 -0.68873104E-03 -0.45310291E-03 -0.26936659E-03 + -0.16699179E-03 -0.34447808E-03 -0.55983265E-03 -0.74265881E-03 -0.89755345E-03 + -0.75302075E-03 -0.25593061E-03 -0.15626096E-03 -0.25020139E-02 -0.24165893E-02 + -0.20020105E-02 -0.15642191E-02 -0.14453780E-02 -0.13093568E-02 -0.12076718E-02 + -0.11617763E-02 -0.11030524E-02 -0.94272895E-03 -0.67639550E-03 -0.48112570E-03 + -0.51636277E-03 -0.86516495E-03 -0.18697304E-02 -0.11410394E-02 -0.11386695E-02 + -0.10847927E-02 -0.14717547E-02 -0.10305979E-02 -0.69207875E-03 -0.77379063E-03 + -0.77178474E-03 -0.64347507E-03 -0.33982705E-03 -0.16069595E-03 -0.11651918E-03 + 0.00000000E+00 0.28019122E-07 -0.11530697E-06 -0.74163939E-08 -0.44821789E-06 + 0.55285733E-06 -0.14096763E-06 -0.12940581E-06 -0.32420580E-06 -0.15816785E-06 + -0.99457776E-07 -0.34496996E-06 0.12205973E-05 0.67142511E-05 0.71064508E-05 + 0.54991101E-05 0.46820725E-05 0.32983370E-05 0.74899952E-05 0.21045031E-06 + 0.12796270E-05 0.65915720E-05 0.75728201E-05 0.54188195E-05 0.80928084E-05 + 0.66243792E-05 0.16158133E-04 0.15501180E-04 0.10788261E-04 -0.54891614E-05 + 0.62873006E-06 0.18156904E-04 0.47272252E-05 0.12468087E-05 0.15776396E-05 + 0.24449013E-05 0.68652625E-05 0.16310987E-04 0.13033104E-04 -0.27249393E-04 + -0.44564437E-04 -0.43728316E-04 -0.64343402E-04 -0.80550457E-04 -0.92469897E-04 + -0.10329121E-03 -0.11542590E-03 -0.11730769E-03 -0.10727389E-03 -0.93092615E-04 + -0.80932141E-04 -0.71046556E-04 -0.59934464E-04 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.25705122E-10 0.34372426E-10 0.62771530E-09 + 0.51765925E-07 0.49205146E-08 -0.20361154E-06 0.15856086E-07 0.30420905E-07 + -0.20437856E-07 -0.36826347E-07 0.37716414E-07 -0.11423070E-06 0.15688818E-06 + -0.55473055E-08 -0.72424926E-07 0.17335197E-07 0.14518681E-07 0.66797357E-09 + 0.37107150E-08 -0.32553015E-07 0.46664155E-08 -0.46889608E-08 0.14615088E-07 + 0.19171784E-07 -0.11887418E-07 -0.13128579E-08 -0.36790528E-08 -0.17740098E-07 + -0.45295605E-08 -0.41717099E-08 0.31738336E-08 0.54794258E-09 -0.47613788E-08 + 0.38130059E-08 0.16113155E-09 0.32860404E-07 -0.39669144E-07 -0.12665547E-07 + -0.30926355E-07 -0.35709832E-07 0.31475050E-07 -0.90100494E-07 -0.75169330E-07 + -0.79654608E-07 -0.85831976E-07 -0.60822400E-07 -0.46605850E-07 -0.65425413E-07 + -0.34120943E-07 0.00000000E+00 -0.28713252E-09 0.13252626E-07 0.15838309E-06 + -0.15657600E-06 -0.92876866E-07 0.79667595E-07 0.41551718E-09 0.63877823E-07 + -0.55939895E-07 -0.32053120E-07 -0.18011443E-06 0.12661786E-07 0.57089492E-06 + 0.54071239E-06 0.17824076E-06 0.33526121E-06 0.30667835E-06 0.83472169E-06 + 0.29536484E-06 0.48949639E-06 0.10341423E-05 0.10714334E-05 0.49625795E-06 + 0.15285380E-07 -0.89315467E-06 0.90065159E-06 0.87531730E-06 0.12864600E-06 + -0.18072328E-05 0.20434164E-06 0.17289978E-05 0.12266757E-06 -0.41776125E-06 + -0.76363471E-06 -0.74271007E-06 -0.20247303E-06 0.10200063E-05 0.59350387E-06 + -0.32636517E-05 -0.49363469E-05 -0.49591794E-05 -0.76973233E-05 -0.98090081E-05 + -0.11270627E-04 -0.13457711E-04 -0.15574175E-04 -0.16217764E-04 -0.15128438E-04 + -0.13323668E-04 -0.11631293E-04 -0.10241508E-04 -0.86069261E-05 0.00000000E+00 + -0.90613910E-09 0.50422879E-07 -0.19405104E-06 0.90189044E-07 -0.33890103E-07 + -0.19222790E-06 0.90468561E-07 0.26170154E-06 -0.10933940E-07 -0.52333662E-07 + 0.25775730E-07 -0.79031985E-07 -0.14784620E-06 -0.20512089E-06 -0.81887407E-07 + -0.91995993E-07 0.23488251E-07 0.26878496E-07 0.65823585E-07 0.11860406E-06 + 0.11851017E-06 -0.44034195E-07 -0.18069409E-06 -0.42604498E-08 -0.56714057E-07 + 0.22076016E-07 0.38498015E-07 0.15698524E-06 0.32168035E-06 -0.14235153E-06 + -0.41674464E-06 -0.17100488E-06 -0.50531384E-07 0.93560331E-07 0.12322347E-06 + 0.19607964E-06 0.23486923E-06 0.34332143E-06 0.72635274E-06 0.72524708E-06 + 0.11225629E-05 0.14545412E-05 0.16932798E-05 0.18788818E-05 0.21097338E-05 + 0.22114714E-05 0.21992820E-05 0.20510419E-05 0.18013854E-05 0.15956334E-05 + 0.13989445E-05 0.11933921E-05 0.00000000E+00 -0.31245609E-07 0.47156124E-07 + -0.33030564E-07 -0.13367597E-06 0.41009924E-06 -0.11811947E-06 -0.76353563E-07 + 0.33259287E-07 0.50788158E-07 0.50463980E-08 -0.38823979E-07 -0.49436984E-07 + -0.41982127E-07 -0.69119556E-07 -0.66595435E-07 -0.33309366E-07 -0.39940776E-07 + -0.10212625E-07 0.26326637E-07 0.69853817E-07 0.47808471E-07 0.38554508E-07 + 0.45741418E-07 -0.80406704E-09 -0.32923694E-07 0.30798515E-07 0.11083786E-07 + 0.36191858E-08 0.10767985E-07 0.10902315E-08 -0.28143221E-09 0.41449093E-08 + 0.47776503E-08 0.68224422E-08 0.15853290E-07 0.10453375E-07 0.34959722E-07 + 0.30498491E-07 0.49155489E-07 0.17734951E-07 0.33899305E-07 0.55072970E-07 + 0.63508097E-07 0.75982335E-07 0.90420222E-07 0.13430558E-06 0.17058843E-06 + 0.16738972E-06 0.18733738E-06 0.20645139E-06 0.19809039E-06 0.17589621E-06 +Water_vapour + -0.14987946E-09 0.17663038E-08 0.64026059E-09 -0.35471202E-08 -0.18173148E-10 + 0.89690136E-08 0.53913062E-08 0.70614408E-09 -0.60125553E-07 -0.38542929E-07 + -0.13864285E-07 -0.73121650E-07 0.57148781E-07 0.12988209E-06 0.54657752E-07 + -0.33781265E-07 -0.15571227E-06 -0.42484826E-07 0.28330148E-07 -0.11063590E-06 + -0.26734247E-06 -0.14079547E-06 -0.82322078E-06 -0.25916866E-06 -0.90608118E-07 + 0.21529459E-07 0.75666407E-07 0.27567577E-07 0.18926202E-06 -0.46663940E-06 + -0.86667327E-07 0.21896040E-07 0.54770463E-05 0.14461855E-04 0.22025087E-04 + 0.37272818E-04 0.46865184E-04 0.75837796E-04 0.97612967E-04 0.12872738E-03 + 0.14514244E-03 0.15877345E-03 0.19204896E-03 0.18020070E-03 0.19103016E-03 + 0.19825296E-03 0.20404850E-03 0.14017446E-03 0.74927320E-04 0.76151801E-04 + 0.10054088E-03 0.11166118E-03 0.66007673E-04 0.56652998E-06 0.38658300E-05 + 0.38739760E-05 0.26908345E-04 0.56343344E-04 0.65654450E-04 0.95039067E-04 + 0.15261094E-03 0.86252937E-04 -0.17250436E-04 -0.12530064E-03 -0.13439474E-03 + -0.18226376E-03 -0.17147948E-03 -0.10139622E-03 0.14741396E-03 -0.69578882E-04 + -0.36658343E-04 -0.31556703E-03 -0.31870403E-04 0.46819634E-03 0.26231365E-03 + 0.52358263E-04 0.73822900E-03 0.45266466E-03 0.48132664E-03 0.51569070E-03 + 0.59960148E-03 0.11743425E-02 -0.54358405E-03 0.32075986E-02 0.22224164E-02 + 0.52928111E-02 0.11457354E-01 0.97262696E-02 -0.16266126E-01 0.18446513E-01 + -0.38705126E-01 -0.14336913E+00 -0.25325343E+00 -0.38871482E+00 -0.64730984E+00 + -0.94430524E+00 -0.93231651E+00 -0.11965939E+01 -0.12685424E+01 -0.11959779E+01 + -0.16283102E+01 -0.18680728E+01 -0.17773605E+01 -0.12999758E+01 -0.10413990E+01 + -0.76389791E+00 0.32490138E-07 0.44632776E-06 0.40983144E-06 -0.20989868E-05 + -0.19988203E-06 0.93601561E-05 0.12292096E-04 0.49092039E-05 -0.56306601E-04 + -0.76372031E-04 -0.12503444E-03 -0.13447847E-03 -0.12895391E-03 -0.10878672E-03 + -0.10777166E-03 -0.13321676E-03 -0.12983216E-03 0.18185948E-04 0.86860255E-04 + 0.46726205E-04 -0.12677288E-03 -0.77773341E-04 -0.24032120E-03 -0.14172460E-03 + -0.59345640E-04 0.58824805E-04 0.98373283E-04 0.78152358E-04 0.20639994E-03 + 0.61611585E-04 0.30396023E-03 0.22997674E-03 0.25364280E-03 0.63259213E-03 + 0.33689255E-03 0.54650429E-03 0.84664712E-03 -0.57356030E-03 0.22806144E-02 + 0.13137076E-02 0.99679449E-02 0.50349261E-02 0.64946713E-02 0.16033293E-01 + 0.17805680E-01 0.19028554E-01 0.28480406E-01 0.27574779E-01 0.17417580E-01 + 0.26875970E-01 0.20194731E-01 0.15634403E-01 0.11284069E-01 -0.75649725E-09 + 0.16564202E-09 0.66248944E-08 -0.12010716E-07 0.10661593E-07 0.80973155E-07 + 0.50742780E-07 -0.19823393E-06 0.17969960E-06 0.55655521E-06 0.24658829E-06 + 0.27400465E-06 0.77299928E-07 -0.25201775E-06 -0.34246497E-06 -0.15142189E-06 + 0.73032262E-06 0.52315825E-06 0.62900343E-06 -0.33385335E-06 -0.96210851E-06 + -0.56817111E-06 -0.34216614E-06 0.17470745E-06 0.59753520E-08 -0.10812829E-07 + 0.77319816E-07 0.44151675E-09 0.18935758E-05 0.28366366E-05 0.14651756E-04 + 0.30605986E-04 0.69085411E-04 0.10343893E-03 0.11556184E-03 0.13732745E-03 + 0.10424060E-03 0.11085588E-03 0.10698013E-03 0.15419894E-04 0.42173837E-04 + -0.11748208E-05 -0.63999997E-05 -0.13020589E-03 -0.65419847E-04 -0.32231357E-04 + -0.30299176E-05 -0.13052838E-03 -0.94670810E-04 -0.59056926E-04 -0.33716383E-04 + -0.34603738E-05 -0.20192236E-04 0.00000000E+00 0.00000000E+00 -0.68006842E-08 + 0.64745746E-08 -0.16998675E-07 0.40401461E-07 -0.25368189E-08 -0.21193225E-07 + 0.41696119E-07 0.76217737E-07 0.10502514E-06 0.12716806E-07 0.10066930E-07 + 0.12231137E-07 0.11588422E-07 0.54569453E-07 0.11661906E-06 0.71958343E-07 + 0.99582306E-07 0.15404467E-07 -0.38858470E-07 -0.20080479E-07 -0.10446388E-07 + 0.10649293E-07 0.36683838E-08 0.13865965E-08 0.12309812E-07 0.21093127E-07 + 0.57455973E-07 -0.19390984E-06 -0.77329328E-07 -0.65477669E-07 0.84605378E-06 + 0.27804045E-05 0.44735996E-05 0.12569269E-04 0.24753823E-04 0.46580261E-04 + 0.85347813E-04 0.12620600E-03 0.19115830E-03 0.24740510E-03 0.32576795E-03 + 0.35852380E-03 0.41677855E-03 0.46612379E-03 0.47020764E-03 0.40989484E-03 + 0.37439902E-03 0.34131879E-03 0.31644375E-03 0.27074494E-03 0.19700165E-03 + 0.00000000E+00 -0.52989819E-08 0.60164938E-08 -0.46004056E-08 0.16189720E-07 + -0.12464705E-08 0.78919673E-08 -0.66522538E-08 0.58845678E-07 0.15411983E-06 + 0.70849915E-07 0.69419478E-07 0.38560977E-07 0.46566683E-09 0.48125421E-08 + 0.41588691E-07 0.19191383E-06 0.11908277E-06 0.13973177E-06 0.21661046E-07 + -0.51613422E-07 -0.34582241E-07 -0.26317234E-07 0.17088882E-07 0.40569962E-08 + 0.40026903E-08 0.23727963E-07 0.28959560E-07 0.69966137E-07 -0.44471024E-06 + -0.29610853E-06 0.69249744E-06 0.70210319E-05 0.18014320E-04 0.28088965E-04 + 0.43201159E-04 0.56400512E-04 0.77965890E-04 0.10911381E-03 0.12046917E-03 + 0.15924116E-03 0.18485098E-03 0.23272110E-03 0.23183077E-03 0.27611749E-03 + 0.30657555E-03 0.30368912E-03 0.24110229E-03 0.21311133E-03 0.19753053E-03 + 0.18874321E-03 0.16774901E-03 0.11854198E-03 -0.37122795E-11 -0.24292700E-08 + 0.13368598E-07 -0.86007273E-08 0.13665445E-07 0.37889119E-07 0.46077433E-07 + -0.10504912E-06 0.23028557E-06 0.61447217E-06 0.28034506E-06 0.30824786E-06 + 0.15771141E-06 0.23373511E-08 -0.46644497E-07 0.19582416E-06 0.63701439E-06 + 0.45943710E-06 0.51713229E-06 0.72005664E-07 -0.22724116E-06 -0.17475358E-06 + -0.10785679E-06 0.59571724E-07 0.13515557E-07 0.88321261E-08 0.65610103E-07 + 0.36368114E-07 0.20591051E-06 -0.10371163E-05 0.20083809E-05 0.92601306E-05 + 0.36929304E-04 0.78189298E-04 0.11292931E-03 0.15398280E-03 0.17162454E-03 + 0.21601319E-03 0.26034647E-03 0.22722666E-03 0.27581480E-03 0.28038902E-03 + 0.31609963E-03 0.24906904E-03 0.31291059E-03 0.29614770E-03 0.25659264E-03 + 0.10250092E-03 0.38136267E-04 0.25374833E-04 0.25903823E-04 0.36996431E-04 + 0.70122903E-05 0.18773002E-09 0.36079917E-08 -0.39432977E-08 -0.13268377E-08 + 0.59139737E-07 0.88513581E-07 0.19954050E-06 -0.43510136E-06 0.67148317E-06 + 0.16742631E-05 0.87028699E-06 0.60990440E-06 0.91178028E-07 -0.78784821E-06 + -0.95225588E-06 -0.39348574E-06 0.14697603E-05 0.11460928E-05 0.13285800E-05 + -0.36383527E-06 -0.16171259E-05 -0.98526417E-06 -0.51121223E-06 0.22290644E-06 + -0.55737262E-07 -0.69805227E-07 0.20666860E-07 -0.65047845E-06 -0.18138576E-06 + 0.77858808E-06 0.30192436E-04 0.75360196E-04 0.12937819E-03 0.13770397E-03 + 0.11267652E-03 0.11195407E-03 0.51148550E-04 0.69069833E-04 0.10488036E-03 + 0.75791323E-05 0.11800164E-03 0.87660048E-04 0.81546040E-04 -0.11387741E-03 + 0.96750999E-06 0.10505978E-03 0.18749152E-03 0.11105228E-04 0.13819261E-03 + 0.24017925E-03 0.27719122E-03 0.29010297E-03 0.22939355E-03 -0.50028860E-09 + -0.31294745E-09 0.13216856E-08 -0.18207655E-07 -0.52750568E-07 -0.18159887E-07 + -0.63456769E-07 -0.71751977E-07 -0.73447453E-07 -0.74167776E-07 -0.99709629E-07 + -0.16406995E-06 -0.19363852E-06 -0.27124700E-06 -0.41265215E-06 -0.75723450E-06 + -0.10113129E-05 -0.13876624E-05 -0.16559820E-05 -0.20128801E-05 -0.21559993E-05 + -0.24128475E-05 -0.51370506E-05 -0.16251902E-05 -0.73177598E-06 -0.45347938E-06 + -0.16223490E-05 0.28251254E-05 0.87966884E-05 -0.81206646E-05 0.58862765E-04 + -0.12617246E-03 -0.27530672E-04 0.38910256E-04 0.13644393E-03 -0.76900783E-04 + 0.97646446E-04 -0.13583386E-04 -0.24521483E-04 0.75906367E-04 -0.13215917E-04 + -0.14391732E-03 -0.25061228E-04 0.10114918E-03 0.36920832E-03 0.51167620E-03 + 0.31888537E-03 0.56037161E-03 0.68646130E-03 0.34633965E-03 0.16917909E-03 + -0.67165307E-04 -0.62998329E-04 -0.58723075E-05 0.60987352E-04 0.11903912E-03 + 0.25202397E-03 0.51856811E-03 0.95449869E-03 0.10937100E-02 0.11295669E-02 + 0.97716344E-03 0.91216155E-03 0.60678692E-03 0.44745947E-03 0.28703298E-03 + 0.40869759E-03 0.67185821E-03 0.12156959E-02 0.19173733E-02 0.28951963E-02 + 0.39149248E-02 0.43403275E-02 0.53467138E-02 0.57714413E-02 0.54259625E-02 + 0.56890374E-02 0.15925174E-02 -0.35150491E-03 0.60913056E-02 0.20667647E-01 + 0.44986604E-01 0.40620075E-01 0.79802441E-01 -0.63200100E-01 -0.19575743E-01 + 0.28217748E-01 0.12713135E+00 0.10347264E+00 0.63194513E-01 0.17980441E-01 + -0.98391020E-02 0.17256811E+00 0.35529618E-01 0.10104086E+00 -0.15060099E+00 + 0.43157180E-01 0.44654529E+00 0.45751126E+00 0.59394396E+00 0.59143536E+00 + 0.38355068E+00 0.43131163E+00 0.40265190E+00 0.35437340E+00 0.29435827E+00 + 0.13759247E-05 -0.13713796E-05 -0.54118838E-05 -0.25950613E-04 -0.53256724E-04 + -0.77791123E-04 -0.86736471E-04 -0.12107071E-03 -0.82752679E-04 -0.10537122E-03 + -0.11393013E-03 -0.21016902E-03 -0.35614859E-03 -0.45753872E-03 -0.48013473E-03 + -0.56722466E-03 -0.59512233E-03 -0.65792093E-03 -0.76142314E-03 -0.80812193E-03 + -0.87560597E-03 -0.10434744E-02 -0.19240456E-02 -0.89409072E-03 -0.50294697E-03 + -0.29546581E-03 -0.22817065E-03 0.11441833E-02 0.65090102E-02 0.67579252E-03 + 0.11893012E-01 -0.13254562E-01 0.59920967E-02 0.19351977E-01 0.53376398E-01 + 0.15016003E-01 0.17053857E-01 0.15807665E-01 0.24287217E-01 0.42092403E-01 + 0.31782651E-01 0.43894823E-01 0.18919499E-01 0.34042500E-01 0.44093941E-01 + 0.52131153E-01 0.38877383E-01 0.56360026E-01 0.50627610E-01 0.38516532E-01 + 0.24481964E-01 0.16005508E-01 0.11905075E-01 0.10585566E-07 -0.55816879E-08 + -0.15904675E-07 -0.17736833E-06 -0.19555114E-06 -0.48079973E-06 -0.57063065E-06 + -0.10162637E-05 -0.15315254E-05 -0.25174543E-05 -0.22475058E-05 -0.13266224E-05 + -0.10307379E-05 -0.10269962E-05 -0.10939047E-05 -0.10208219E-05 -0.41873263E-06 + -0.18349666E-05 -0.29122906E-05 -0.25572416E-05 -0.24616657E-05 -0.17754101E-05 + -0.20168071E-05 0.48530414E-06 -0.24548252E-06 -0.13961305E-05 -0.97587329E-06 + 0.28791624E-04 0.77754940E-04 0.38991883E-04 0.59516706E-03 -0.29103718E-03 + 0.50428263E-03 0.11156093E-02 0.24171637E-02 0.11616699E-02 0.17983174E-02 + 0.18995728E-02 0.29231600E-02 0.32262174E-02 0.25183599E-02 0.24421203E-02 + 0.32862246E-02 0.24063466E-02 0.26815390E-02 0.28436262E-02 0.26037972E-02 + 0.26788368E-02 0.32451655E-02 0.28565588E-02 0.25438275E-02 0.20202705E-02 + 0.17550371E-02 0.00000000E+00 0.00000000E+00 -0.35745930E-07 0.16764736E-07 + -0.67661438E-07 -0.45937732E-07 -0.93019212E-07 -0.15901121E-06 -0.21682241E-06 + -0.35011208E-06 -0.25913717E-06 -0.13416632E-06 -0.77068415E-07 -0.49913212E-07 + -0.40534775E-07 -0.24104093E-07 0.24251556E-07 -0.90064201E-07 -0.17826583E-06 + -0.13604626E-06 -0.14616827E-06 -0.99870739E-07 -0.52177156E-07 0.44296709E-07 + 0.14272016E-07 -0.46393239E-07 -0.34937304E-07 0.12683781E-05 0.39105902E-05 + -0.11054862E-05 0.49548537E-04 -0.15596949E-04 0.24807003E-04 0.77881765E-04 + 0.21221056E-03 -0.15843145E-04 0.69765183E-04 -0.87773956E-04 0.10889227E-03 + 0.93728317E-04 0.30548782E-03 0.22257707E-03 0.61160345E-03 0.70517755E-03 + 0.10232537E-02 0.13400502E-02 0.14085183E-02 0.15002820E-02 0.19779197E-02 + 0.17066905E-02 0.14698912E-02 0.12232187E-02 0.10257726E-02 0.00000000E+00 + -0.18851380E-07 0.15579094E-07 -0.37429039E-07 -0.31865014E-07 -0.10443204E-06 + -0.14355240E-06 -0.25690095E-06 -0.37930038E-06 -0.51649219E-06 -0.44045265E-06 + -0.20520435E-06 -0.11348376E-06 -0.10259625E-06 -0.57125152E-07 -0.40511715E-07 + 0.45707674E-07 -0.16423624E-06 -0.27743653E-06 -0.23437390E-06 -0.20733924E-06 + -0.17174644E-06 -0.12853882E-06 0.66312088E-07 0.10467693E-07 -0.84378346E-07 + -0.44082404E-07 0.24578406E-05 0.71330877E-05 -0.49281658E-05 0.70336037E-04 + -0.48205513E-04 0.44699587E-04 0.14601701E-03 0.33310442E-03 0.83421518E-04 + 0.26723627E-03 0.16161167E-03 0.52040545E-03 0.56239882E-03 0.60234129E-03 + 0.54084796E-03 0.96707521E-03 0.89020529E-03 0.11359955E-02 0.13791606E-02 + 0.13961252E-02 0.14710218E-02 0.19104555E-02 0.16513985E-02 0.14696088E-02 + 0.12258429E-02 0.10495775E-02 0.11674932E-07 -0.22940208E-07 0.36592860E-07 + -0.11177765E-06 -0.14670073E-06 -0.42963353E-06 -0.60057542E-06 -0.10401967E-05 + -0.15130730E-05 -0.21470982E-05 -0.17441464E-05 -0.83350736E-06 -0.52370354E-06 + -0.34938605E-06 -0.31536446E-06 -0.18407247E-06 0.77365593E-07 -0.66632191E-06 + -0.11464567E-05 -0.97492582E-06 -0.88941349E-06 -0.68073305E-06 -0.56230101E-06 + 0.22157901E-06 0.24613689E-07 -0.36786965E-06 -0.25081980E-06 0.94359291E-05 + 0.26841343E-04 -0.18139659E-04 0.23219188E-03 -0.20888115E-03 0.20561043E-03 + 0.56256821E-03 0.11810948E-02 0.53725061E-03 0.10886474E-02 0.11407050E-02 + 0.22661128E-02 0.25207939E-02 0.20977813E-02 0.22856538E-02 0.33089389E-02 + 0.29560413E-02 0.31200518E-02 0.34576347E-02 0.32881120E-02 0.31521417E-02 + 0.38698753E-02 0.31748021E-02 0.27729884E-02 0.21942145E-02 0.18137170E-02 + 0.11282342E-07 -0.30216450E-07 -0.10317384E-06 -0.27238384E-06 -0.50073216E-06 + -0.13718654E-05 -0.18512079E-05 -0.32111409E-05 -0.47700147E-05 -0.70479851E-05 + -0.58470346E-05 -0.29928783E-05 -0.20595572E-05 -0.17929710E-05 -0.17263189E-05 + -0.15153975E-05 -0.20660707E-06 -0.27536709E-05 -0.45864032E-05 -0.40658340E-05 + -0.39280382E-05 -0.30476357E-05 -0.25343880E-05 0.80265483E-06 -0.18880159E-06 + -0.17394733E-05 -0.10546466E-05 0.36508968E-04 0.10616244E-03 -0.37638023E-06 + 0.11493279E-02 -0.21474648E-03 0.11358865E-02 0.20787639E-02 0.43700468E-02 + 0.22082105E-02 0.27245791E-02 0.31027307E-02 0.46353237E-02 0.49089225E-02 + 0.44052177E-02 0.42781257E-02 0.57863539E-02 0.43993099E-02 0.45741941E-02 + 0.47953991E-02 0.44216942E-02 0.45698693E-02 0.55818642E-02 0.49172947E-02 + 0.44170562E-02 0.35797491E-02 0.30135508E-02 -0.14985438E-09 -0.14723578E-09 + -0.21112545E-08 0.17850973E-08 0.31235225E-08 -0.11190595E-07 -0.41630183E-08 + -0.58948805E-08 -0.16722043E-07 -0.20360116E-07 -0.20205285E-07 -0.14679188E-07 + -0.65049191E-08 -0.18187731E-07 0.19341738E-08 0.62564648E-07 0.98748608E-07 + 0.15909140E-06 0.21594313E-06 0.25252440E-06 0.22961440E-06 0.16605599E-06 + 0.91885179E-06 0.26776687E-06 -0.32666306E-07 -0.68260864E-07 -0.18599567E-06 + 0.73470687E-08 -0.18031883E-06 0.44540030E-06 0.67881932E-06 0.20859314E-05 + 0.25998624E-05 0.33542393E-05 0.43013863E-05 0.96668448E-05 0.52425839E-05 + 0.20843192E-05 0.47362153E-05 0.84050446E-05 0.16330805E-04 0.21075422E-04 + 0.85970224E-05 0.22004727E-04 0.16589794E-05 -0.79751605E-05 -0.15541321E-05 + -0.54379595E-05 0.27628789E-05 0.17034096E-04 -0.15506164E-04 -0.67489679E-05 + -0.71600514E-05 0.56680234E-06 -0.17747322E-05 0.81666776E-05 0.40721632E-05 + -0.12021001E-04 -0.85545056E-04 -0.12670122E-03 -0.14822809E-03 -0.14915605E-03 + -0.16487395E-03 -0.10758171E-03 -0.72285317E-04 -0.80562338E-05 0.23189889E-04 + 0.23793038E-04 -0.44877339E-04 -0.14096439E-03 -0.34781574E-03 -0.54188239E-03 + -0.59207762E-03 -0.72071343E-03 -0.68474564E-03 -0.41913071E-03 -0.65933442E-03 + -0.95915109E-03 -0.48612278E-03 -0.71479738E-03 -0.32146068E-03 -0.11744307E-02 + -0.11453113E-03 -0.28879251E-02 -0.19138258E-03 -0.16242599E-02 -0.48029410E-02 + -0.14765036E-01 -0.21593494E-01 -0.59363084E-01 -0.54769367E-01 -0.11128913E+00 + -0.10974074E+00 -0.16016762E+00 -0.16981270E+00 -0.33512649E+00 -0.45916826E+00 + -0.68618593E+00 -0.69011584E+00 -0.77206785E+00 -0.61220507E+00 -0.66216992E+00 + -0.61484962E+00 -0.82029245E+00 -0.75646214E+00 -0.66555850E+00 0.32404537E-07 + -0.47980235E-06 -0.66395713E-06 0.25638533E-05 0.29665266E-05 -0.46513745E-05 + 0.39572165E-06 0.42052232E-05 -0.94939973E-05 -0.15524345E-04 -0.15938531E-04 + -0.19567004E-05 0.29690238E-04 0.51358818E-04 0.50631494E-04 0.64096146E-04 + 0.55300120E-04 0.64305543E-04 0.87058536E-04 0.89053782E-04 0.10449751E-03 + 0.11694914E-03 0.32023796E-03 0.15029086E-03 -0.39679103E-04 -0.13126009E-04 + -0.80713760E-04 0.21503159E-04 -0.17631810E-03 -0.27904485E-04 -0.21628764E-03 + -0.29378220E-03 -0.40291591E-03 -0.62297461E-03 -0.10096320E-02 -0.33180555E-03 + -0.17133929E-02 -0.95250385E-03 -0.15738705E-02 -0.22309961E-02 -0.23175709E-02 + -0.57260378E-02 -0.21222843E-02 -0.55319942E-02 -0.66234574E-02 -0.87848000E-02 + -0.92971653E-02 -0.12880098E-01 -0.48634973E-02 0.24752476E-03 -0.12929731E-02 + -0.26734320E-02 -0.36159033E-02 -0.75673019E-09 -0.16485679E-08 -0.68159655E-08 + 0.26859676E-07 -0.29282593E-08 0.16558709E-07 0.35269098E-07 0.23068824E-07 + 0.16151298E-06 0.29334126E-06 0.29196570E-06 0.46448628E-07 -0.16223724E-06 + -0.33182019E-06 -0.44991627E-06 -0.49686844E-06 -0.63734979E-06 -0.50503515E-07 + 0.35306435E-06 0.18178295E-06 0.14501149E-06 0.64237976E-07 0.37136684E-06 + -0.13693653E-06 -0.33287548E-06 0.83060983E-07 -0.37737317E-06 0.76283648E-06 + 0.10438788E-05 0.52752656E-05 0.28031508E-05 0.62747415E-06 -0.10925602E-04 + -0.23096335E-04 -0.37984743E-04 -0.41343032E-04 -0.87530187E-04 -0.12527246E-03 + -0.17598566E-03 -0.16070859E-03 -0.19004041E-03 -0.21012955E-03 -0.19772383E-03 + -0.18299471E-03 -0.18410027E-03 -0.13663595E-03 -0.12802351E-03 -0.10678626E-03 + -0.12669543E-03 -0.11216429E-03 -0.88811576E-04 -0.68805376E-04 -0.55835986E-04 + 0.00000000E+00 0.00000000E+00 0.91848160E-08 -0.60386916E-08 0.13171786E-07 + 0.20003963E-10 0.77971132E-08 0.57700842E-08 0.20153357E-07 0.47940092E-07 + 0.35034300E-07 0.55024556E-08 -0.22309287E-07 -0.42816268E-07 -0.51686255E-07 + -0.58781389E-07 -0.65282881E-07 -0.15586816E-07 0.20606809E-07 0.48406264E-08 + 0.28025110E-08 0.22796459E-09 0.95709071E-08 -0.12029957E-07 -0.13477662E-07 + -0.62274888E-08 -0.33366334E-07 -0.19621259E-07 -0.50315623E-07 0.18966316E-06 + 0.73643472E-07 0.50922435E-06 0.68716205E-06 0.15415438E-05 0.28453680E-05 + 0.93648234E-05 0.96675150E-05 0.18148720E-04 0.23339840E-04 0.35632892E-04 + 0.29132412E-04 0.25094404E-04 0.79748558E-05 -0.57796266E-05 -0.33830865E-04 + -0.50464107E-04 -0.67296994E-04 -0.73762685E-04 -0.84034585E-04 -0.73399091E-04 + -0.63692669E-04 -0.58315431E-04 -0.49397515E-04 0.00000000E+00 0.42144684E-08 + -0.62295717E-08 0.62636356E-08 0.10919533E-08 0.66373018E-08 0.90073478E-08 + 0.82515190E-08 0.42840419E-07 0.62206032E-07 0.61851532E-07 0.49475675E-08 + -0.35669564E-07 -0.60015211E-07 -0.85064085E-07 -0.89378945E-07 -0.10411721E-06 + -0.18881539E-07 0.31258858E-07 0.10649371E-07 0.39604307E-09 0.39823633E-08 + 0.24542938E-07 -0.16707365E-07 -0.27950509E-07 -0.11537389E-07 -0.64777484E-07 + -0.25959775E-07 -0.48833419E-07 0.55801888E-06 0.90364279E-06 0.21745092E-05 + 0.19228396E-05 0.97640144E-06 -0.29601386E-06 0.39794977E-05 -0.35906797E-05 + -0.51999071E-05 -0.16370253E-04 -0.78639053E-05 -0.15768403E-04 -0.22419097E-04 + -0.36497273E-04 -0.40353021E-04 -0.56569363E-04 -0.59122013E-04 -0.65678955E-04 + -0.62667818E-04 -0.71397683E-04 -0.60285555E-04 -0.50172464E-04 -0.45356189E-04 + -0.39442947E-04 -0.32157192E-11 0.30543254E-08 -0.11295188E-07 0.15731548E-07 + 0.22755996E-08 0.34368352E-07 0.40301683E-07 0.35600083E-07 0.16444237E-06 + 0.26558297E-06 0.23852522E-06 0.22758826E-07 -0.12652747E-06 -0.25831701E-06 + -0.31853075E-06 -0.35220780E-06 -0.39350073E-06 -0.72920713E-07 0.12825004E-06 + 0.50623052E-07 0.14410460E-07 0.14259305E-07 0.10394401E-06 -0.60054373E-07 + -0.11128051E-06 -0.27094451E-07 -0.21227264E-06 0.22618744E-07 0.14677067E-06 + 0.27465692E-05 0.37221289E-05 0.66932329E-05 0.33970896E-05 -0.31068399E-05 + -0.12049916E-04 -0.11198852E-04 -0.45641131E-04 -0.74818801E-04 -0.12833241E-03 + -0.12270138E-03 -0.15656349E-03 -0.19124417E-03 -0.22339493E-03 -0.23560661E-03 + -0.24719503E-03 -0.23804613E-03 -0.23287277E-03 -0.20531493E-03 -0.22186187E-03 + -0.18369147E-03 -0.14469422E-03 -0.11427716E-03 -0.90755125E-04 0.18815280E-09 + -0.14838407E-08 0.23316476E-08 0.24928905E-07 0.13238388E-07 0.86324607E-07 + 0.12930285E-06 0.99201072E-07 0.51855605E-06 0.86747168E-06 0.79453970E-06 + 0.10575486E-06 -0.39574058E-06 -0.77431542E-06 -0.10109634E-05 -0.10932553E-05 + -0.13322556E-05 -0.19697806E-06 0.52765540E-06 0.21205073E-06 0.12249969E-06 + 0.97836530E-07 0.45127206E-06 -0.23152507E-06 -0.35034190E-06 0.20172401E-06 + -0.40479373E-06 0.12383708E-05 0.30892067E-05 0.14057541E-04 0.10258362E-04 + -0.51341597E-05 -0.34709356E-04 -0.50175478E-04 -0.70927503E-04 -0.76036229E-04 + -0.12870431E-03 -0.17249435E-03 -0.22508881E-03 -0.20708111E-03 -0.27817306E-03 + -0.30947272E-03 -0.29405113E-03 -0.31327703E-03 -0.30202387E-03 -0.21607208E-03 + -0.20542424E-03 -0.18234194E-03 -0.22649846E-03 -0.18263940E-03 -0.14616816E-03 + -0.12412805E-03 -0.10034670E-03 0.56760418E-11 -0.19196623E-10 -0.93165646E-10 + -0.10858810E-10 -0.11838420E-09 -0.62151405E-09 -0.57775665E-09 -0.66930849E-09 + -0.70331771E-09 -0.10239462E-08 -0.10161880E-08 -0.80931323E-09 -0.10509554E-08 + -0.19210523E-08 -0.16262892E-08 -0.13558716E-08 -0.11121347E-08 -0.11790143E-09 + 0.15407125E-08 0.20973756E-08 0.38146887E-09 -0.69580127E-08 0.10787448E-07 + -0.48005947E-09 -0.91659416E-08 0.11204061E-07 -0.32992088E-07 -0.31540094E-07 + -0.12069663E-06 0.33702518E-07 0.23187799E-06 -0.20027369E-06 0.71061940E-06 + -0.37131642E-06 0.12901001E-05 -0.43579933E-05 -0.18021552E-05 -0.17322816E-05 + -0.17664121E-05 0.33722001E-05 0.68149633E-05 0.28293854E-04 0.33505617E-04 + 0.49136378E-04 0.66573001E-04 0.77319331E-04 0.69089521E-04 0.71471786E-04 + 0.63703242E-04 0.54791980E-04 0.54740009E-04 0.44979124E-04 0.36341059E-04 + -0.47726943E-07 -0.16618889E-07 -0.54514500E-07 -0.65635864E-06 -0.61762235E-06 + -0.60142469E-06 -0.60209946E-06 -0.24854042E-06 -0.15948240E-06 -0.11144086E-06 + 0.97883418E-06 0.91000688E-06 0.18765546E-05 0.24529638E-05 0.28147590E-05 + 0.22578184E-05 0.11884805E-05 -0.53284765E-05 -0.11393025E-04 -0.13808908E-04 + -0.14376980E-04 -0.90994615E-05 -0.47672702E-05 -0.78599038E-05 -0.58850478E-04 + 0.73703811E-04 -0.73616923E-04 -0.23547868E-03 -0.32848359E-03 0.92491803E-03 + -0.58135629E-03 -0.13522505E-03 0.18642265E-03 0.50194426E-03 -0.31481091E-04 + 0.47382179E-02 0.24532477E-02 0.18814980E-02 0.51246646E-04 -0.40557868E-03 + -0.31208133E-02 -0.24557492E-02 -0.55703980E-02 -0.50017127E-02 -0.39473852E-02 + -0.72577882E-02 -0.93963132E-02 -0.84131368E-02 -0.59424660E-02 -0.27468641E-02 + -0.30646101E-02 -0.27413139E-02 -0.20880766E-02 -0.30440108E-07 -0.64971335E-07 + -0.13112633E-06 -0.18259810E-06 -0.44565418E-06 -0.10370977E-05 -0.92787232E-06 + -0.80975200E-06 -0.62239745E-06 -0.55436475E-06 -0.99003675E-07 0.29502632E-06 + 0.75088935E-06 0.10310611E-05 0.74150407E-06 0.55510436E-06 -0.28936271E-06 + -0.36618916E-06 0.16213104E-06 -0.12529481E-06 -0.57161388E-07 -0.85101126E-06 + 0.25213477E-05 -0.72464289E-06 -0.90790886E-05 -0.43863694E-05 -0.35425757E-04 + -0.43268779E-04 -0.71343281E-04 0.41035121E-04 -0.13919727E-04 -0.74300620E-04 + 0.73874686E-04 -0.12940936E-03 -0.37702380E-05 -0.29518413E-03 -0.44010095E-03 + -0.39835455E-03 -0.35053206E-03 -0.54370557E-04 -0.65859290E-03 -0.37468940E-03 + -0.73809614E-03 -0.82036753E-03 -0.10841000E-02 -0.58661083E-03 -0.62926572E-03 + 0.30593262E-03 -0.96591672E-03 -0.12622333E-02 -0.10067823E-02 -0.82776324E-03 + -0.53924774E-03 -0.13779631E-09 -0.21104465E-09 -0.64511412E-09 -0.40529365E-09 + -0.28952132E-08 -0.49338631E-08 -0.61005052E-08 -0.10800866E-07 -0.11877461E-07 + -0.16221123E-07 -0.17027666E-07 -0.23506857E-07 -0.32998246E-07 -0.40617208E-07 + -0.47274677E-07 -0.47397447E-07 -0.59128467E-07 -0.40108393E-07 -0.27642647E-07 + -0.39404468E-07 -0.48653451E-07 -0.54358644E-07 -0.49372187E-07 -0.69554612E-07 + -0.12186769E-06 -0.11098037E-06 -0.56967869E-06 -0.15055273E-05 -0.43321831E-05 + -0.67633165E-05 -0.91072880E-05 -0.14719018E-04 -0.18123732E-04 -0.20083673E-04 + 0.94086014E-06 -0.17067933E-04 0.89535194E-05 0.40662607E-05 0.14527100E-06 + 0.79429050E-05 0.21685361E-04 -0.46259158E-05 -0.10881858E-04 0.98912140E-05 + -0.14252952E-04 -0.21652104E-04 -0.39138434E-04 -0.28663174E-04 -0.29202888E-04 + -0.37781833E-04 -0.34528727E-04 -0.31755844E-04 -0.24825314E-04 0.00000000E+00 + 0.00000000E+00 0.23618584E-09 -0.26603245E-09 0.20509226E-09 -0.36948363E-09 + -0.58420775E-09 -0.99995588E-09 -0.10488987E-08 -0.12418134E-08 -0.14370039E-08 + -0.18201821E-08 -0.27951544E-08 -0.33604006E-08 -0.37111664E-08 -0.36094135E-08 + -0.42257487E-08 -0.24635652E-08 -0.10824930E-08 -0.18382550E-08 -0.25266985E-08 + -0.26185067E-08 -0.21809496E-08 -0.29810883E-08 -0.49740060E-08 -0.46461428E-08 + -0.26745388E-07 -0.72272187E-07 -0.17513207E-06 -0.35881193E-06 -0.54790284E-06 + -0.12755393E-05 -0.31164524E-05 -0.60206051E-05 -0.81818289E-05 -0.17937305E-04 + -0.25083636E-04 -0.39178174E-04 -0.46355111E-04 -0.53037157E-04 -0.52243344E-04 + -0.50036920E-04 -0.45676873E-04 -0.31938139E-04 -0.29879181E-04 -0.28292476E-04 + -0.21000437E-04 -0.81933152E-05 -0.46195527E-05 -0.59680029E-05 -0.51727115E-05 + -0.38254632E-05 -0.18164218E-05 0.00000000E+00 0.89437970E-10 -0.22710318E-09 + 0.63232086E-10 -0.25616585E-09 -0.65013506E-09 -0.92106361E-09 -0.16024180E-08 + -0.16218669E-08 -0.21887775E-08 -0.20564221E-08 -0.31431435E-08 -0.44050134E-08 + -0.51943296E-08 -0.60236844E-08 -0.57761749E-08 -0.68491615E-08 -0.39528355E-08 + -0.20874939E-08 -0.32328154E-08 -0.43216426E-08 -0.44493985E-08 -0.37779797E-08 + -0.52297132E-08 -0.89972834E-08 -0.79975764E-08 -0.46761358E-07 -0.12435259E-06 + -0.31988669E-06 -0.65738934E-06 -0.11169580E-05 -0.27296121E-05 -0.63594191E-05 + -0.10618007E-04 -0.11932719E-04 -0.21803025E-04 -0.25431920E-04 -0.34360201E-04 + -0.37550554E-04 -0.40684303E-04 -0.34975990E-04 -0.36730730E-04 -0.35034384E-04 + -0.22591496E-04 -0.25411618E-04 -0.26861608E-04 -0.24069482E-04 -0.14744706E-04 + -0.13239848E-04 -0.16847598E-04 -0.15926283E-04 -0.13784809E-04 -0.10212616E-04 + -0.13691357E-09 0.73343985E-10 -0.42620540E-09 -0.19125059E-09 -0.13714269E-08 + -0.23512929E-08 -0.35724953E-08 -0.65850517E-08 -0.67396082E-08 -0.86552728E-08 + -0.85106839E-08 -0.12148931E-07 -0.17297504E-07 -0.21217447E-07 -0.23558448E-07 + -0.22785603E-07 -0.26798662E-07 -0.15633573E-07 -0.82781361E-08 -0.12793334E-07 + -0.16964238E-07 -0.17986347E-07 -0.15076406E-07 -0.21050738E-07 -0.36542111E-07 + -0.32082367E-07 -0.18721773E-06 -0.50548122E-06 -0.14418313E-05 -0.29620235E-05 + -0.51540312E-05 -0.11293640E-04 -0.22471980E-04 -0.32746178E-04 -0.30543363E-04 + -0.51821208E-04 -0.45946765E-04 -0.45622288E-04 -0.38518768E-04 -0.24020882E-04 + -0.12878440E-05 -0.10981357E-05 0.13194999E-04 0.43495025E-04 0.33044366E-04 + 0.35058215E-04 0.26482010E-04 0.31686167E-04 0.28321423E-04 0.10687664E-04 + 0.58102647E-05 0.14918567E-05 0.12756141E-05 -0.16758249E-09 -0.24581815E-09 + -0.62990058E-09 -0.13872134E-08 -0.50217298E-08 -0.96620925E-08 -0.12559161E-07 + -0.23637833E-07 -0.24579505E-07 -0.31858630E-07 -0.31132944E-07 -0.43907878E-07 + -0.61640261E-07 -0.74551707E-07 -0.84959637E-07 -0.82495663E-07 -0.99848592E-07 + -0.58032095E-07 -0.29731671E-07 -0.46630651E-07 -0.61315012E-07 -0.65451559E-07 + -0.56930379E-07 -0.84430153E-07 -0.14487368E-06 -0.14260076E-06 -0.79694552E-06 + -0.22776716E-05 -0.77488433E-05 -0.15051858E-04 -0.22838495E-04 -0.34366045E-04 + -0.33532120E-04 -0.23087429E-04 0.16581941E-04 -0.69147344E-05 0.22103366E-04 + -0.10391959E-04 -0.25126122E-04 -0.14988085E-04 0.34714703E-05 -0.36003454E-04 + -0.28993848E-04 -0.63303272E-05 -0.54041916E-04 -0.62608799E-04 -0.76535495E-04 + -0.45368573E-04 -0.41867427E-04 -0.55231697E-04 -0.51993041E-04 -0.46824308E-04 + -0.34203004E-04 -0.62631307E-10 0.15057733E-07 -0.25699389E-07 0.25016370E-08 + 0.36397197E-07 -0.12350275E-06 -0.48388625E-07 -0.14889101E-06 -0.91291266E-06 + -0.73571761E-06 -0.39007613E-06 -0.68483547E-06 0.65161860E-06 0.12649712E-05 + 0.97155315E-06 0.96602313E-06 0.61255806E-06 0.35500949E-05 0.63597168E-05 + 0.73145350E-05 0.54916762E-05 0.35136432E-05 0.17150893E-04 0.51515527E-05 + -0.55325990E-06 0.88276350E-06 -0.25795610E-05 0.21817208E-05 -0.16997869E-04 + 0.14901069E-04 0.26306886E-04 -0.80309311E-05 -0.51247959E-04 -0.22137639E-03 + -0.13856566E-03 -0.57265283E-03 -0.93524969E-03 -0.15666240E-02 -0.20221287E-02 + -0.21772297E-02 -0.27835541E-02 -0.24348483E-02 -0.29520193E-02 -0.27417878E-02 + -0.21986604E-02 -0.22487425E-02 -0.24165825E-02 -0.24680727E-02 -0.28330561E-02 + -0.31825859E-02 -0.28231527E-02 -0.21098959E-02 -0.18784091E-02 -0.24618882E-04 + -0.20163036E-04 -0.47422839E-04 -0.25606097E-03 -0.57389349E-03 -0.13256803E-02 + -0.12139244E-02 -0.63764705E-03 -0.13793694E-02 -0.25050481E-02 -0.23682791E-02 + -0.22628071E-02 -0.19406107E-02 -0.18885273E-02 -0.16442032E-02 -0.38080265E-03 + -0.57770282E-02 -0.10855262E-01 -0.20067399E-01 -0.20468884E-01 -0.21674236E-01 + -0.22166435E-01 -0.17931955E-01 -0.15729059E-01 -0.12612274E-01 -0.14780473E-01 + -0.60177632E-01 -0.48916897E-01 -0.11734043E+00 -0.38605749E-01 -0.10609557E+00 + -0.12101987E+00 -0.11275899E+00 -0.25797623E+00 -0.45863013E+00 -0.37430713E+00 + -0.54095667E+00 -0.53620808E+00 -0.56855450E+00 -0.53760710E+00 -0.65528909E+00 + -0.69038265E+00 -0.51150110E+00 -0.55025010E+00 -0.69331030E+00 -0.63907250E+00 + -0.56061282E+00 -0.46343732E+00 -0.36766021E+00 -0.28103103E+00 -0.24665326E+00 + -0.19001127E+00 -0.14147720E+00 -0.14729801E-05 -0.27550599E-05 -0.18206162E-05 + 0.23633747E-04 0.23475534E-04 -0.67886525E-04 -0.34147538E-04 -0.20603297E-03 + -0.10070161E-02 -0.11468861E-02 -0.14568692E-02 -0.12758128E-02 -0.72552600E-03 + -0.14752565E-03 -0.21889115E-03 -0.36457705E-03 -0.44522291E-03 0.16845598E-02 + 0.31817978E-02 0.30213128E-02 0.15988573E-02 0.23974368E-02 0.62749057E-02 + 0.20244924E-02 -0.12477432E-02 -0.76791671E-03 -0.65060279E-02 -0.52822734E-02 + -0.26651633E-01 -0.18249028E-01 -0.29465079E-01 -0.54295624E-01 -0.47156716E-01 + -0.83404075E-01 -0.93097045E-01 -0.96425649E-01 -0.12567169E+00 -0.13409906E+00 + -0.11778250E+00 -0.16738988E+00 -0.17335575E+00 -0.20303811E+00 -0.17451755E+00 + -0.21219771E+00 -0.22707158E+00 -0.20349869E+00 -0.19552542E+00 -0.20745517E+00 + -0.17532423E+00 -0.14378205E+00 -0.12302865E+00 -0.10374690E+00 -0.81349784E-01 + -0.61578878E-08 -0.31439667E-07 -0.31911129E-07 0.34067196E-06 0.36297853E-07 + 0.99525667E-06 0.12156435E-05 -0.16727692E-05 0.42974686E-05 0.98979009E-05 + 0.73729427E-05 0.30981219E-05 -0.32249173E-05 -0.98277503E-05 -0.13771481E-04 + -0.12600906E-04 -0.76543411E-05 0.24851445E-05 0.17548658E-04 0.61718045E-05 + -0.30048602E-05 -0.83082987E-06 0.89714409E-05 -0.64151744E-06 -0.49942651E-05 + 0.23602263E-05 -0.23363995E-04 -0.74114274E-05 -0.12245957E-03 -0.12096276E-03 + -0.52000212E-03 -0.11418612E-02 -0.19972150E-02 -0.34351719E-02 -0.39515841E-02 + -0.71211800E-02 -0.81077243E-02 -0.10663498E-01 -0.12590560E-01 -0.14743531E-01 + -0.12281345E-01 -0.14454126E-01 -0.14654624E-01 -0.13289375E-01 -0.12127655E-01 + -0.11003962E-01 -0.10696043E-01 -0.10786272E-01 -0.99431640E-02 -0.97568056E-02 + -0.80984265E-02 -0.65028620E-02 -0.51912453E-02 0.00000000E+00 0.00000000E+00 + 0.94610500E-07 -0.59485260E-07 0.83352703E-07 0.40893184E-06 0.89890780E-07 + -0.14942227E-06 0.78954110E-06 0.13916289E-05 0.16111196E-05 0.13358809E-06 + -0.40807963E-06 -0.86750761E-06 -0.98124086E-06 -0.63834881E-06 -0.27031727E-06 + 0.18295869E-06 0.16501408E-05 0.59600094E-06 -0.15480456E-06 -0.61198957E-07 + 0.21628891E-06 -0.16968432E-06 -0.16269199E-06 0.45017733E-07 -0.11012745E-05 + -0.10873704E-05 -0.51253158E-05 0.32071504E-05 -0.19794545E-05 0.12066263E-04 + -0.10553414E-04 -0.44700850E-04 0.40092187E-04 -0.74317821E-05 0.28715746E-04 + -0.32714409E-03 -0.39641994E-03 -0.39890318E-03 -0.35590069E-03 -0.38527535E-03 + -0.64795275E-03 -0.67018319E-03 -0.10407530E-02 -0.14673589E-02 -0.14324336E-02 + -0.16191122E-02 -0.16875470E-02 -0.17988017E-02 -0.14867148E-02 -0.13098172E-02 + -0.11394651E-02 0.00000000E+00 0.16953643E-07 -0.51200906E-07 0.80066382E-07 + 0.18371801E-06 0.10419938E-06 0.22445286E-06 0.50269663E-07 0.12743255E-05 + 0.24465915E-05 0.16892951E-05 0.62637530E-06 -0.47402448E-06 -0.12422811E-05 + -0.17677383E-05 -0.14978888E-05 -0.35549795E-06 0.50243070E-06 0.23997394E-05 + 0.10063505E-05 -0.24240873E-06 -0.25027242E-07 0.53699173E-06 -0.20279679E-06 + -0.35337453E-06 0.86877195E-07 -0.21838792E-05 -0.18908745E-05 -0.88577058E-05 + 0.11652850E-04 0.15374374E-04 0.38907306E-04 -0.60589633E-04 -0.19880516E-03 + -0.16790224E-03 -0.51032775E-03 -0.80436715E-03 -0.14155622E-02 -0.18642589E-02 + -0.22870427E-02 -0.19975151E-02 -0.24289193E-02 -0.27690156E-02 -0.24714076E-02 + -0.24495887E-02 -0.26534579E-02 -0.24594070E-02 -0.25140739E-02 -0.24972658E-02 + -0.26319644E-02 -0.22233685E-02 -0.18967089E-02 -0.16075475E-02 -0.22783593E-07 + 0.37372939E-07 -0.62154836E-07 0.17601137E-06 0.16766453E-06 0.95014070E-06 + 0.11315024E-05 -0.45599927E-06 0.47162856E-05 0.10059088E-04 0.65450282E-05 + 0.30054178E-05 -0.15497937E-05 -0.54422938E-05 -0.74737005E-05 -0.53513064E-05 + -0.25108402E-05 0.20559475E-05 0.92682222E-05 0.40832350E-05 -0.69258274E-06 + -0.51393731E-06 0.23609912E-05 -0.72266289E-06 -0.14787856E-05 0.49238777E-06 + -0.82129771E-05 -0.56292109E-05 -0.32617601E-04 0.39916983E-04 -0.13548846E-05 + -0.40299756E-04 -0.52232073E-03 -0.11105185E-02 -0.12377133E-02 -0.30021168E-02 + -0.42804115E-02 -0.60558833E-02 -0.78469606E-02 -0.94593993E-02 -0.81525796E-02 + -0.10021556E-01 -0.10391168E-01 -0.93636687E-02 -0.86201458E-02 -0.85733169E-02 + -0.82657651E-02 -0.83989401E-02 -0.82836287E-02 -0.83777012E-02 -0.70164754E-02 + -0.55645865E-02 -0.44440099E-02 -0.97356738E-08 0.40716602E-07 0.45735438E-07 + 0.42902219E-06 0.80759075E-06 0.22930123E-05 0.40501152E-05 -0.28131038E-05 + 0.14698476E-04 0.29493793E-04 0.21693464E-04 0.63775870E-05 -0.92194805E-05 + -0.25558068E-04 -0.33174446E-04 -0.28462558E-04 -0.16121772E-04 0.44436941E-05 + 0.30798492E-04 0.10109668E-04 -0.80267217E-05 -0.20585370E-05 0.11627751E-04 + -0.13383611E-05 -0.49804437E-05 0.46215075E-05 -0.26774491E-04 0.46077569E-06 + -0.11890405E-03 0.83405322E-04 -0.67301367E-03 -0.18658850E-02 -0.38422810E-02 + -0.58202254E-02 -0.65848728E-02 -0.10604944E-01 -0.10783447E-01 -0.14820072E-01 + -0.16381782E-01 -0.18548160E-01 -0.14184824E-01 -0.17241949E-01 -0.16554826E-01 + -0.15559550E-01 -0.14645834E-01 -0.12637919E-01 -0.11994888E-01 -0.12179922E-01 + -0.10806338E-01 -0.10418716E-01 -0.86526982E-02 -0.70833926E-02 -0.55643187E-02 + 0.12996186E-08 -0.10109479E-07 0.72484895E-08 0.11372202E-07 -0.34879706E-08 + 0.80243705E-08 -0.16860579E-07 0.46744128E-07 0.48312719E-06 0.34779203E-06 + 0.19730536E-06 0.47006137E-06 -0.34605654E-06 -0.74267432E-06 -0.42607694E-06 + -0.30874537E-06 0.90789417E-07 -0.12412247E-05 -0.25831039E-05 -0.29986733E-05 + -0.20032227E-05 -0.10019423E-05 -0.58695428E-05 -0.14505107E-05 0.59668183E-06 + -0.45622400E-06 0.14987229E-05 -0.66519285E-06 0.55404621E-05 -0.70159335E-05 + -0.98326541E-05 0.10714048E-07 -0.13902429E-04 0.29142223E-04 0.65249535E-06 + 0.17315965E-03 0.21425174E-03 0.37234638E-03 0.53572506E-03 0.57782612E-03 + 0.80453907E-03 0.52972388E-03 0.57913924E-03 0.46383418E-03 0.86822122E-04 + 0.14928118E-04 0.19186982E-03 0.53172692E-04 0.21540202E-03 0.42748414E-03 + 0.30712647E-03 0.23458941E-03 0.22825025E-03 -0.70676093E-05 -0.24731903E-05 + 0.94709943E-06 0.65315318E-04 0.21303079E-03 0.51460736E-03 0.30351978E-03 + 0.51125439E-05 0.44855204E-03 0.10703625E-02 0.12099816E-02 0.11527287E-02 + 0.11438074E-02 0.10756499E-02 0.81405482E-03 -0.16419131E-03 0.23460239E-02 + 0.41935526E-02 0.84100644E-02 0.80729187E-02 0.81363951E-02 0.84484793E-02 + 0.62038810E-02 0.39063687E-02 0.19157743E-02 0.34448498E-02 0.19954875E-01 + 0.10832989E-01 0.28206226E-01 -0.54176851E-02 0.87178630E-02 0.14005671E-01 + 0.35648240E-02 0.27537625E-01 0.86230966E-01 0.64697071E-01 0.88153437E-01 + 0.87350827E-01 0.63714323E-01 0.46035368E-01 0.14972181E+00 0.97378133E-01 + 0.42179695E-01 0.44560340E-01 0.74860021E-01 0.76025136E-01 0.80095717E-01 + 0.43646090E-01 0.54893484E-01 0.49093089E-01 0.49353247E-01 0.45683681E-01 + 0.38999215E-01 -0.48754440E-06 0.17265232E-06 0.14455805E-05 0.57131565E-06 + -0.39594655E-05 -0.22260142E-05 -0.29534980E-04 0.10981380E-03 0.56813872E-03 + 0.65267180E-03 0.88593687E-03 0.87149217E-03 0.64688902E-03 0.37412784E-03 + 0.41104022E-03 0.51176423E-03 0.48439764E-03 -0.73597984E-03 -0.14607724E-02 + -0.13734574E-02 -0.54595625E-03 -0.86763667E-03 -0.24031098E-02 -0.46553145E-03 + 0.69203306E-03 0.59331397E-04 0.24926535E-02 0.18736740E-02 0.86708556E-02 + 0.41439191E-02 0.72924900E-02 0.13618249E-01 0.88532081E-02 0.17353628E-01 + 0.19841960E-01 0.18608627E-01 0.18484391E-01 0.17952001E-01 0.77039199E-02 + 0.16786324E-01 0.23373912E-01 0.17563326E-01 0.10045678E-01 0.15937982E-01 + 0.25875490E-01 0.11273572E-01 0.20519174E-01 0.12905730E-01 0.91162246E-02 + 0.12286437E-01 0.10061144E-01 0.80780650E-02 0.59677136E-02 0.60555910E-08 + 0.94062312E-08 -0.78690222E-08 -0.62182422E-07 -0.62400655E-07 -0.45987751E-06 + -0.45876987E-06 0.11265940E-05 -0.18711251E-05 -0.48181896E-05 -0.32816675E-05 + -0.17323879E-05 0.97838741E-06 0.43070097E-05 0.63418598E-05 0.62427127E-05 + 0.10940343E-05 -0.24337109E-05 -0.83437597E-05 -0.23742829E-05 0.22099396E-05 + 0.63437967E-06 -0.39378948E-05 -0.18952693E-06 0.17712270E-05 -0.11046133E-05 + 0.99925911E-05 0.61425743E-06 0.37391390E-04 0.26233064E-04 0.14955460E-03 + 0.33166569E-03 0.50155354E-03 0.98815941E-03 0.11916670E-02 0.21684184E-02 + 0.23389506E-02 0.34120816E-02 0.41607906E-02 0.45023828E-02 0.36361186E-02 + 0.42597286E-02 0.42941354E-02 0.34466823E-02 0.29076111E-02 0.23521171E-02 + 0.24402257E-02 0.22282095E-02 0.17557565E-02 0.18276071E-02 0.14172473E-02 + 0.11205927E-02 0.89271653E-03 0.00000000E+00 0.00000000E+00 -0.99622752E-08 + -0.60156088E-08 0.40854247E-07 -0.21558329E-06 -0.13032672E-07 0.12170133E-06 + -0.37762457E-06 -0.66074613E-06 -0.83830393E-06 -0.83984116E-07 0.94515124E-07 + 0.32742282E-06 0.36470869E-06 0.21769216E-06 -0.15755701E-06 -0.20344002E-06 + -0.81801903E-06 -0.25491772E-06 0.13005871E-06 0.36997305E-07 -0.10288657E-06 + 0.42264199E-07 0.40646120E-07 -0.21936920E-07 0.46170072E-06 0.27041960E-06 + 0.14034467E-05 -0.13218566E-05 -0.52891737E-06 -0.49215183E-05 -0.35887621E-05 + 0.55062188E-05 -0.25020595E-04 0.16001075E-04 -0.47597071E-04 0.61147134E-04 + 0.64850765E-04 0.48937304E-04 -0.26642453E-04 -0.15716135E-03 -0.29634467E-03 + -0.54010695E-03 -0.56280765E-03 -0.48954770E-03 -0.52613394E-03 -0.62030771E-03 + -0.59447191E-03 -0.41605260E-03 -0.36145134E-03 -0.26868231E-03 -0.17958467E-03 + 0.00000000E+00 0.94559038E-08 -0.63070041E-09 -0.97268782E-08 -0.89737661E-07 + -0.28419010E-07 -0.62540545E-07 0.33468775E-07 -0.58316662E-06 -0.12301317E-05 + -0.79095269E-06 -0.39723604E-06 0.66012510E-07 0.46163805E-06 0.70664003E-06 + 0.64043744E-06 -0.28387158E-06 -0.43060908E-06 -0.11790216E-05 -0.43686253E-06 + 0.18523234E-06 0.34110014E-07 -0.23542337E-06 0.39194436E-07 0.10813398E-06 + -0.47716790E-07 0.91095445E-06 0.47368905E-06 0.24912192E-05 -0.40183794E-05 + -0.58058621E-05 -0.14359448E-04 -0.30535613E-05 0.25744571E-04 0.51580541E-05 + 0.13917439E-03 0.15810549E-03 0.37657883E-03 0.52410484E-03 0.63530959E-03 + 0.49168877E-03 0.52858633E-03 0.45866230E-03 0.13594158E-03 0.22626106E-04 + 0.10859591E-04 -0.70714921E-04 -0.20864804E-03 -0.25446050E-03 -0.95409214E-04 + -0.10130299E-03 -0.68315524E-04 -0.25927559E-04 -0.13683757E-08 0.24200153E-08 + -0.20822103E-07 -0.28414873E-07 -0.99106558E-07 -0.36475494E-06 -0.35113743E-06 + 0.49540386E-06 -0.21394263E-05 -0.50173345E-05 -0.30761713E-05 -0.18259664E-05 + 0.13459200E-06 0.20456628E-05 0.31113781E-05 0.21960561E-05 -0.41257785E-06 + -0.17597459E-05 -0.45358034E-05 -0.17683253E-05 0.59259868E-06 0.35391675E-06 + -0.10435461E-05 0.14415563E-06 0.46393687E-06 -0.24922318E-06 0.34705220E-05 + 0.13324018E-05 0.94622334E-05 -0.14621806E-04 -0.47518988E-05 0.13917591E-05 + 0.74882718E-04 0.21459541E-03 0.23403293E-03 0.82449737E-03 0.10446003E-02 + 0.17156837E-02 0.23290115E-02 0.26496540E-02 0.21459769E-02 0.25046471E-02 + 0.23146152E-02 0.15640084E-02 0.12702525E-02 0.11177138E-02 0.11832201E-02 + 0.11328510E-02 0.10475896E-02 0.13528909E-02 0.10909539E-02 0.87163532E-03 + 0.72111942E-03 -0.19861246E-08 -0.13763661E-07 0.10409843E-07 -0.13006350E-06 + -0.44448711E-06 -0.88505050E-06 -0.13398347E-05 0.22829957E-05 -0.66469212E-05 + -0.14419573E-04 -0.10003694E-04 -0.37771509E-05 0.30010665E-05 0.11396825E-04 + 0.15292543E-04 0.13902665E-04 0.26454414E-05 -0.48035413E-05 -0.14911769E-04 + -0.39001100E-05 0.52896109E-05 0.16592256E-05 -0.50476630E-05 -0.50042633E-07 + 0.18779281E-05 -0.17876909E-05 0.11769390E-04 -0.13119202E-05 0.39754459E-04 + -0.39285715E-04 0.15995311E-03 0.53070306E-03 0.10273349E-02 0.18075919E-02 + 0.21738140E-02 0.33146036E-02 0.33899958E-02 0.50723812E-02 0.57119345E-02 + 0.57704407E-02 0.41467069E-02 0.49769582E-02 0.44969084E-02 0.34243551E-02 + 0.30861804E-02 0.22716569E-02 0.23402671E-02 0.19299450E-02 0.11689411E-02 + 0.13600865E-02 0.10511424E-02 0.88297348E-03 0.69212794E-03 -0.50029146E-09 + -0.58510940E-08 0.21320227E-07 0.18456096E-07 0.59074276E-07 0.15727735E-06 + 0.16436811E-06 0.21665922E-06 0.63399610E-06 0.55496663E-06 0.38494921E-06 + 0.59608310E-06 -0.91716902E-07 -0.20341911E-06 0.31206619E-07 0.41603571E-06 + 0.10029575E-05 -0.10030353E-06 -0.12504828E-05 -0.10530408E-05 0.20389719E-06 + 0.16811169E-05 -0.31128315E-05 -0.13696249E-05 0.69186099E-06 -0.12355952E-05 + 0.90363883E-07 -0.20504614E-04 -0.37228286E-04 -0.52212392E-04 -0.26872161E-03 + 0.17577225E-04 -0.27717399E-03 -0.47391563E-03 -0.87947556E-03 -0.66494016E-03 + -0.87172205E-03 -0.55822975E-03 -0.54009083E-03 -0.10289210E-02 -0.85883930E-03 + -0.91617731E-03 -0.10127068E-02 -0.17521971E-02 -0.24122930E-02 -0.25942712E-02 + -0.21795239E-02 -0.22714509E-02 -0.20720647E-02 -0.11365550E-02 -0.60440486E-03 + -0.47698440E-03 -0.19423930E-03 -0.58723533E-05 -0.11531681E-03 -0.25588459E-03 + -0.34831505E-03 -0.57896223E-03 -0.57618812E-03 -0.63952336E-03 -0.89807944E-03 + -0.29911028E-03 0.44327316E-03 0.62804903E-03 0.61771230E-03 0.33506106E-03 + -0.19657006E-03 -0.94025674E-03 -0.24255021E-02 -0.69740634E-03 0.75761178E-03 + 0.42027437E-02 0.36363740E-02 0.22371873E-02 0.13800082E-02 -0.15011744E-02 + -0.12966831E-02 0.58866690E-02 0.68488734E-02 0.13125143E-01 -0.20218984E-01 + -0.25781292E-01 -0.71282317E-01 -0.93209849E-01 0.17695210E+00 0.13194144E+00 + 0.15052452E+00 0.20737242E+00 0.12598908E+00 0.59203530E+00 0.73004110E+00 + 0.11350629E+01 0.71985401E+00 0.10686297E+01 0.11947410E+01 0.16905765E+01 + 0.14475309E+01 0.11310452E+01 0.87681655E+00 0.41514146E+00 0.90104043E-01 + 0.33295573E+00 -0.44026708E-01 -0.57789882E-01 -0.16043637E+00 -0.19069473E+00 + 0.13759010E-05 0.63036289E-05 0.12372599E-04 0.17365293E-04 0.65704438E-04 + 0.20719058E-03 0.17551946E-03 0.28339265E-03 0.67125558E-03 0.82758127E-03 + 0.98469547E-03 0.98230057E-03 0.81914110E-03 0.61664515E-03 0.68623303E-03 + 0.85640068E-03 0.10200569E-02 0.56139383E-04 -0.63417648E-03 -0.46429134E-03 + 0.31616763E-03 0.90600437E-04 -0.10298320E-02 -0.39887758E-03 0.11578669E-02 + 0.15138590E-03 0.20398030E-02 -0.25383483E-02 -0.24375736E-02 0.29628322E-02 + -0.13811843E-01 0.46931763E-01 0.10558131E-01 0.28605349E-03 -0.60910301E-01 + -0.12914263E-01 0.39935128E-01 0.35320381E-01 0.89285957E-02 -0.28948103E-02 + 0.17201165E-01 0.43422117E-01 0.41601976E-01 0.44021418E-01 0.35015140E-01 + 0.20239373E-01 0.20138425E-01 0.17312234E-01 -0.50652688E-02 -0.32983841E-01 + -0.82071903E-02 0.90225238E-02 0.11587491E-01 0.10585567E-07 0.37493357E-07 + 0.84867643E-07 0.11977173E-07 0.38799743E-06 0.29258716E-06 0.16322728E-06 + 0.26128844E-05 -0.19543952E-06 -0.16923978E-05 -0.86742443E-06 0.61581498E-06 + 0.42574927E-05 0.82660024E-05 0.10691222E-04 0.92771288E-05 0.66750905E-05 + 0.14469036E-05 -0.63774831E-05 -0.34892133E-06 0.43508620E-05 0.20549635E-05 + -0.45803062E-05 -0.29211747E-05 0.45111442E-06 -0.66373310E-05 -0.57658760E-05 + -0.11396831E-03 -0.21195423E-03 -0.25695248E-03 -0.13331283E-02 0.61101186E-03 + -0.57182081E-03 -0.12409399E-02 -0.37290288E-02 -0.32579921E-03 0.19642715E-03 + 0.84767454E-03 -0.14363945E-03 -0.10134157E-03 0.53910171E-03 0.17991266E-02 + 0.40300258E-06 0.10205869E-02 -0.98680246E-04 -0.12906965E-02 -0.11371887E-02 + -0.10531591E-02 -0.20127603E-02 -0.13742621E-02 -0.15898712E-02 -0.12736987E-02 + -0.12449978E-02 0.00000000E+00 0.00000000E+00 -0.30396193E-07 0.36484800E-07 + 0.68380613E-08 -0.12473201E-06 0.10333317E-06 0.37423014E-06 -0.54759207E-07 + -0.23379874E-06 -0.43312856E-06 0.20826726E-06 0.51508133E-06 0.75144892E-06 + 0.83254603E-06 0.57911486E-06 0.35980995E-06 0.92481624E-07 -0.67407155E-06 + -0.13920141E-06 0.28351875E-06 0.16831192E-06 -0.14202236E-06 -0.56717672E-07 + -0.23003521E-07 -0.17724162E-06 0.25154895E-07 -0.40218382E-05 -0.97288918E-05 + -0.10886680E-04 -0.12920319E-03 -0.30512167E-04 -0.13311485E-03 -0.28063404E-03 + -0.67993716E-03 -0.46296227E-03 -0.67457378E-03 -0.42945200E-03 -0.95041692E-03 + -0.12525496E-02 -0.18101533E-02 -0.17242306E-02 -0.23158233E-02 -0.24450186E-02 + -0.26872124E-02 -0.29489850E-02 -0.29044198E-02 -0.27343803E-02 -0.33283906E-02 + -0.27531414E-02 -0.24571588E-02 -0.19685042E-02 -0.15611243E-02 0.00000000E+00 + 0.45563329E-08 0.32203976E-07 -0.38878134E-08 -0.39374762E-07 0.12903512E-06 + 0.12100680E-06 0.45674296E-06 -0.88097730E-07 -0.49376374E-06 -0.23277644E-06 + 0.11119547E-06 0.68719740E-06 0.11513204E-05 0.14041315E-05 0.11273052E-05 + 0.49889657E-06 0.44528284E-07 -0.98007094E-06 -0.24413298E-06 0.39288537E-06 + 0.20607631E-06 -0.30909874E-06 -0.16902823E-06 -0.33075833E-08 -0.38590996E-06 + -0.25981347E-07 -0.80394320E-05 -0.18813780E-04 -0.19230979E-04 -0.20860068E-03 + -0.22528880E-04 -0.19990630E-03 -0.39469759E-03 -0.86340734E-03 -0.49375422E-03 + -0.57409621E-03 -0.23127012E-03 -0.77134415E-03 -0.95656097E-03 -0.12081584E-02 + -0.92330802E-03 -0.15557609E-02 -0.15739200E-02 -0.19796724E-02 -0.23070859E-02 + -0.23070461E-02 -0.22262200E-02 -0.27699949E-02 -0.22036326E-02 -0.20548244E-02 + -0.16566411E-02 -0.13553499E-02 0.11674783E-07 0.27341513E-08 0.27076518E-07 + 0.43738207E-07 0.21769213E-06 0.20593621E-06 0.38619980E-06 0.22089382E-05 + -0.15338607E-06 -0.20389887E-05 -0.81861102E-06 0.19170458E-06 0.26257517E-05 + 0.47874187E-05 0.58856130E-05 0.42294259E-05 0.26159787E-05 0.18467051E-06 + -0.36844158E-05 -0.96273183E-06 0.15218946E-05 0.10242529E-05 -0.12850233E-05 + -0.69400268E-06 0.15199704E-07 -0.17059731E-05 -0.64038955E-06 -0.33313789E-04 + -0.75105747E-04 -0.76167459E-04 -0.66885831E-03 0.14138289E-03 -0.52553075E-03 + -0.10744292E-02 -0.23747985E-02 -0.78318246E-03 -0.42994420E-03 0.14784384E-03 + -0.10279581E-02 -0.11079297E-02 -0.51179775E-03 0.29305284E-03 -0.11952290E-02 + -0.78024209E-03 -0.15018274E-02 -0.20888602E-02 -0.18717398E-02 -0.14082264E-02 + -0.22487081E-02 -0.10821856E-02 -0.11652992E-02 -0.91706693E-03 -0.83212991E-03 + 0.11282051E-07 0.39252749E-07 0.15699320E-06 0.18922900E-06 0.56432466E-06 + 0.11503218E-05 0.71012660E-06 0.74399169E-05 -0.53582635E-06 -0.50770602E-05 + -0.28327994E-05 0.26174053E-05 0.11178932E-04 0.20471824E-04 0.24869507E-04 + 0.20624139E-04 0.13678130E-04 0.28654620E-05 -0.11036635E-04 0.20528039E-06 + 0.99004269E-05 0.52273471E-05 -0.52985731E-05 -0.30110969E-05 0.39009050E-07 + -0.86733000E-05 -0.70689965E-05 -0.14700937E-03 -0.31051815E-03 -0.39096433E-03 + -0.25272481E-02 0.83415445E-03 -0.71724408E-03 -0.17140658E-02 -0.59974103E-02 + -0.27994485E-03 0.60300219E-03 0.10962028E-02 -0.11339437E-02 -0.91599071E-03 + -0.11107307E-02 0.69066336E-03 -0.26725441E-02 0.19065447E-03 -0.86126992E-03 + -0.30893311E-02 -0.31441444E-02 -0.31295380E-02 -0.50465424E-02 -0.44386288E-02 + -0.44951918E-02 -0.35950679E-02 -0.32373066E-02 0.33041829E-10 -0.15614270E-09 + 0.17713777E-09 0.17771383E-09 -0.49379864E-09 0.34782387E-09 -0.23747218E-10 + 0.36125596E-09 0.88127243E-08 0.69934056E-08 0.37529633E-08 0.10483810E-07 + -0.50402139E-08 -0.11528603E-07 -0.46818631E-08 -0.55198872E-09 0.11155033E-07 + -0.81053446E-08 -0.18742458E-07 0.18428799E-08 0.24023457E-07 0.32528207E-08 + 0.35300860E-07 0.86690587E-08 0.53295815E-08 0.35494615E-09 0.95568556E-09 + -0.87056247E-09 -0.82963874E-09 0.69126891E-08 -0.29694424E-08 -0.16835341E-07 + -0.13194607E-06 -0.39559577E-06 -0.59738740E-06 -0.13025106E-05 -0.16535201E-05 + -0.27879801E-05 -0.42717837E-05 -0.64093751E-05 -0.82413071E-05 -0.97837299E-05 + -0.11504218E-04 -0.13566829E-04 -0.13505388E-04 -0.14063580E-04 -0.15126254E-04 + -0.10668792E-04 -0.83701038E-05 -0.10385874E-04 -0.88226420E-05 -0.10351730E-04 + -0.64391483E-05 -0.92753198E-07 -0.21550688E-07 -0.71754220E-06 -0.28753729E-05 + -0.58653997E-05 0.12447075E-05 0.27897496E-05 -0.34085070E-05 0.20222797E-05 + 0.16176590E-04 0.24464109E-04 0.22191555E-04 0.21490846E-04 0.17271727E-04 + 0.94088682E-05 -0.12138426E-04 0.20133828E-04 0.32747926E-04 0.78470686E-04 + 0.43898119E-04 -0.17990781E-04 0.79169409E-05 0.10577257E-04 -0.27846825E-04 + 0.48614631E-05 -0.91693393E-05 -0.12195614E-05 -0.91358366E-05 -0.56347974E-05 + 0.23391106E-04 -0.11583274E-04 -0.53654515E-04 -0.15324548E-03 -0.39680179E-03 + -0.71529776E-04 0.12555204E-02 0.14842648E-02 0.29195426E-02 0.18124587E-01 + 0.31791654E-01 0.67847394E-01 0.11720193E+00 0.21315248E+00 0.16701277E+00 + 0.28422002E+00 0.37860570E+00 0.46541381E+00 0.81407800E+00 0.85502148E+00 + 0.85611771E+00 0.70166291E+00 0.60484336E+00 0.47670222E+00 -0.60614059E-08 + 0.38920106E-08 0.43316451E-07 -0.25216549E-07 -0.20439472E-06 -0.88868447E-07 + -0.79522984E-06 -0.12903397E-05 0.73653942E-05 0.10730520E-04 0.16563677E-04 + 0.15608699E-04 0.11486121E-04 0.71911235E-05 0.71298619E-05 0.85506319E-05 + 0.97041423E-05 -0.62222833E-05 -0.15229646E-04 -0.89369073E-05 0.11315067E-04 + 0.34717722E-05 0.10190869E-04 0.50262436E-05 0.46641189E-05 -0.13620823E-05 + -0.85160869E-06 -0.20480855E-05 -0.14464706E-05 0.13939822E-06 -0.30106612E-05 + 0.13202259E-05 0.36487421E-05 -0.46533988E-05 0.21022198E-04 -0.10371391E-04 + 0.43321862E-04 0.57561122E-04 -0.49747467E-04 0.17225109E-04 -0.60334060E-03 + -0.47029451E-04 -0.10313327E-02 -0.18399276E-02 -0.14678535E-02 -0.20900833E-02 + -0.27269838E-02 -0.39796881E-02 -0.25252472E-02 -0.45135638E-02 -0.31657891E-02 + -0.22034159E-02 -0.13810107E-02 0.18316961E-09 0.13289603E-09 0.14480045E-09 + -0.22847642E-08 -0.74685585E-09 -0.12784318E-07 -0.10648640E-07 0.19831408E-07 + -0.42257186E-07 -0.10260988E-06 -0.62459156E-07 -0.40921323E-07 0.23069984E-08 + 0.52552159E-07 0.64656995E-07 0.37451028E-07 -0.43376692E-07 -0.72828994E-07 + -0.10727693E-06 0.39180683E-07 0.12003229E-06 0.78030926E-07 0.21939450E-07 + -0.40646429E-08 0.12085345E-07 0.15161372E-08 0.97400265E-08 0.76224143E-09 + -0.29037757E-07 -0.94010691E-07 -0.29810898E-06 -0.55812481E-06 -0.12007115E-05 + -0.20505760E-05 -0.21134338E-05 -0.30734704E-05 -0.54015969E-06 0.10631892E-05 + 0.39492977E-05 0.70711472E-05 0.88121954E-05 0.13189750E-04 0.13757812E-04 + 0.22746996E-04 0.21880048E-04 0.14567093E-04 0.14549175E-04 0.22423135E-04 + 0.19533148E-04 0.15542291E-04 0.11713757E-04 0.79473099E-05 0.77017838E-05 + 0.00000000E+00 0.00000000E+00 -0.33765655E-09 0.12695648E-10 0.27107990E-09 + -0.50935386E-08 -0.84533195E-09 0.15778765E-08 -0.74526124E-08 -0.15399003E-07 + -0.16535406E-07 -0.27280652E-08 0.67620805E-09 0.10546855E-08 0.19120296E-08 + -0.32292849E-08 -0.94516490E-08 -0.92939548E-08 -0.14874166E-07 -0.24319843E-08 + 0.45821953E-08 0.25851411E-08 0.60428983E-09 -0.32827469E-09 0.17851220E-09 + 0.18068140E-10 0.20620269E-09 -0.13925070E-09 -0.27417158E-09 0.19010348E-08 + 0.19001641E-08 -0.93629456E-09 0.10843798E-08 -0.25520732E-07 0.53007022E-08 + -0.30528129E-06 -0.52184651E-06 -0.14663859E-05 -0.31933861E-05 -0.57125402E-05 + -0.84467417E-05 -0.11259804E-04 -0.14816426E-04 -0.16495228E-04 -0.18696406E-04 + -0.22139504E-04 -0.21349046E-04 -0.17730797E-04 -0.16006525E-04 -0.15702639E-04 + -0.15657867E-04 -0.13166956E-04 -0.89762345E-05 0.00000000E+00 0.86359389E-10 + 0.85625461E-10 -0.25563105E-09 -0.21349011E-08 -0.74191478E-09 -0.24650856E-08 + -0.62725908E-09 -0.12382716E-07 -0.26350719E-07 -0.15682844E-07 -0.96780802E-08 + -0.20177241E-08 0.42163067E-08 0.46063137E-08 -0.74403594E-09 -0.15483353E-07 + -0.15773113E-07 -0.21074902E-07 -0.33730027E-08 0.63143768E-08 0.42810020E-08 + 0.15064326E-08 -0.58003060E-09 0.58239753E-09 0.20074858E-10 0.44840523E-09 + -0.64812034E-10 0.72130054E-10 0.36964284E-08 -0.15584572E-09 -0.26791323E-07 + -0.12615885E-06 -0.36472805E-06 -0.55982174E-06 -0.11684315E-05 -0.13556883E-05 + -0.20559042E-05 -0.27659786E-05 -0.38516866E-05 -0.50941419E-05 -0.59259445E-05 + -0.74875297E-05 -0.69504834E-05 -0.81386490E-05 -0.10824668E-04 -0.96581178E-05 + -0.60322733E-05 -0.44922188E-05 -0.51067144E-05 -0.60704846E-05 -0.53276456E-05 + -0.28774115E-05 0.22436074E-11 -0.90170323E-10 -0.14281884E-09 -0.10723000E-08 + -0.20390689E-08 -0.95409066E-08 -0.12186163E-07 0.77027617E-08 -0.49337482E-07 + -0.10667445E-06 -0.61680090E-07 -0.42119534E-07 -0.99614405E-08 0.18257221E-07 + 0.24032133E-07 -0.52076202E-08 -0.49619191E-07 -0.59564423E-07 -0.79038955E-07 + -0.11605219E-07 0.28517540E-07 0.22070514E-07 0.63252016E-08 -0.17539280E-08 + 0.26929362E-08 0.25112965E-09 0.23306080E-08 0.94356805E-09 0.20183765E-09 + -0.32929992E-08 -0.65082557E-07 -0.21520928E-06 -0.67819162E-06 -0.16228237E-05 + -0.24107942E-05 -0.40697911E-05 -0.38452110E-05 -0.44783092E-05 -0.39044712E-05 + -0.34836841E-05 -0.36735654E-05 -0.21119035E-05 -0.20309145E-05 0.34833994E-05 + 0.12945601E-05 -0.65615585E-06 0.24523086E-05 0.10286997E-04 0.14221490E-04 + 0.11324160E-04 0.78486282E-05 0.51773586E-05 0.57615664E-05 -0.46656633E-10 + -0.24951008E-09 0.17803098E-09 -0.31023430E-08 -0.87792413E-08 -0.23400525E-07 + -0.45922576E-07 0.37999987E-07 -0.14634441E-06 -0.30787333E-06 -0.19553277E-06 + -0.92916478E-07 0.15166633E-07 0.14172932E-06 0.16209019E-06 0.85886422E-07 + -0.88731485E-07 -0.14906124E-06 -0.21152739E-06 0.42626332E-07 0.20106248E-06 + 0.12481901E-06 0.33642713E-07 -0.36132340E-08 0.16983209E-07 0.23052173E-08 + 0.13139340E-07 0.13465495E-07 0.58600539E-08 -0.13845922E-06 -0.71010599E-06 + -0.14529251E-05 -0.22012310E-05 -0.24478405E-05 -0.11985266E-05 -0.10572899E-05 + 0.34504944E-05 0.58317328E-05 0.77131615E-05 0.10985139E-04 0.11610706E-04 + 0.16198519E-04 0.16918088E-04 0.35055333E-04 0.31922190E-04 0.16322283E-04 + 0.14289161E-04 0.25258473E-04 0.16373598E-04 0.32195588E-05 -0.42311725E-05 + -0.77845163E-05 -0.66206608E-05 0.23378591E-13 0.58455766E-13 0.24479526E-12 + 0.54613183E-12 0.53280889E-12 0.90039879E-12 0.92461772E-12 0.12018825E-11 + -0.59251172E-12 -0.34298655E-12 -0.11697693E-11 0.95487526E-12 0.10194146E-11 + -0.46293446E-11 0.19645819E-12 -0.42637418E-11 -0.10112625E-10 -0.24942807E-11 + 0.14398945E-10 0.37338893E-10 0.44324634E-10 0.25700149E-10 0.10804256E-09 + 0.17359363E-09 0.15445194E-09 -0.52878953E-09 0.12907093E-09 0.18758596E-08 + 0.36906763E-08 -0.27651632E-09 0.10225096E-07 -0.27342011E-08 -0.23904212E-07 + -0.72246502E-08 -0.54047461E-08 0.97387474E-07 0.11391054E-06 0.56634982E-07 + 0.83874858E-07 0.59550479E-07 -0.84172122E-07 -0.53974020E-06 -0.59880190E-06 + -0.67365039E-06 -0.83434978E-06 -0.10199010E-05 -0.92738655E-06 -0.90907989E-06 + -0.69694336E-06 -0.64720057E-06 -0.68696118E-06 -0.57605764E-06 -0.44929770E-06 + -0.84637928E-09 -0.50534931E-09 -0.11417615E-08 -0.11916581E-08 0.63950484E-09 + 0.83065424E-09 -0.14875214E-09 0.11916958E-08 0.29958346E-08 0.48429701E-10 + -0.44572785E-09 -0.27270383E-08 -0.22855519E-08 -0.24602256E-08 -0.31543124E-08 + 0.26569045E-08 -0.74955579E-08 0.12774316E-07 -0.70815512E-09 0.18799846E-07 + -0.37551263E-08 -0.91839210E-07 -0.23168525E-06 0.96817816E-07 0.79493722E-06 + -0.43563578E-05 -0.16749446E-05 0.64154818E-05 0.58104539E-05 -0.18654348E-04 + 0.34552716E-04 -0.62557897E-05 -0.67246511E-05 -0.24346473E-04 -0.42898807E-04 + -0.84317802E-05 -0.18787857E-03 -0.91374380E-04 0.47166368E-04 0.11469103E-03 + -0.30145782E-03 -0.49089601E-04 0.41864030E-03 0.47489799E-03 0.22862002E-03 + -0.90824721E-04 -0.13938218E-03 -0.26492864E-04 -0.20343055E-03 -0.28834729E-03 + -0.34851647E-03 -0.36008526E-03 -0.33143966E-03 -0.32036692E-10 0.13527421E-10 + 0.18574208E-09 0.23954001E-09 0.73644246E-09 0.20703346E-08 0.17842162E-08 + 0.24171583E-08 0.16595436E-08 0.14454491E-08 0.99194599E-09 0.70947055E-09 + 0.50578620E-09 -0.11785887E-08 0.22191386E-10 0.33746416E-08 0.49352732E-08 + 0.94133758E-08 0.15421300E-07 0.27260126E-07 0.31646239E-07 0.20315042E-07 + 0.34265237E-07 0.10062181E-06 0.14653574E-06 -0.11367406E-06 0.47088589E-06 + 0.13148959E-05 0.18237175E-05 -0.10632764E-05 0.29333397E-05 -0.36838635E-06 + -0.43027619E-06 0.22114764E-05 0.26619415E-05 0.11824964E-04 0.59815237E-05 + 0.14350898E-04 0.91763347E-05 0.47515619E-05 -0.12733539E-04 0.24357297E-05 + 0.52408017E-04 0.28596231E-04 -0.13455520E-04 -0.51701312E-05 -0.43119756E-04 + -0.25411901E-04 0.16445674E-04 0.12232795E-04 0.10608402E-04 0.12587927E-04 + 0.98062713E-05 0.29497768E-12 -0.40132488E-12 -0.15543384E-11 -0.44829501E-11 + -0.82480372E-11 -0.14784306E-10 -0.22707327E-10 -0.30441599E-10 -0.33067496E-10 + -0.35342416E-10 -0.39662554E-10 -0.69357154E-10 -0.82520956E-10 -0.99297325E-10 + -0.13017286E-09 -0.12579877E-09 -0.21401519E-09 -0.31231762E-09 -0.37738959E-09 + -0.39902609E-09 -0.47235678E-09 -0.72774360E-09 -0.93461670E-09 -0.65264611E-09 + -0.64981671E-09 -0.35426936E-08 0.79025725E-09 0.23481054E-07 0.73225808E-07 + 0.83990867E-07 0.14595695E-06 0.90695490E-07 0.14989050E-06 0.19357359E-06 + -0.39516335E-07 0.14277198E-06 -0.19228555E-06 -0.76706487E-07 0.16853584E-07 + -0.20412945E-06 -0.56211245E-06 -0.26520263E-06 -0.25367301E-06 -0.52410051E-06 + -0.16018579E-06 -0.20395791E-07 0.36538088E-07 -0.12888357E-06 0.50789424E-07 + 0.16593426E-06 0.17683954E-06 0.17248827E-06 0.16370694E-06 0.00000000E+00 + 0.00000000E+00 0.36949305E-12 -0.93323229E-12 -0.17344789E-11 -0.33039236E-11 + -0.50371738E-11 -0.75554796E-11 -0.80903773E-11 -0.84316437E-11 -0.85235415E-11 + -0.12157727E-10 -0.13403953E-10 -0.14447891E-10 -0.18007873E-10 -0.17727116E-10 + -0.26432066E-10 -0.35518989E-10 -0.42655193E-10 -0.46529880E-10 -0.50920295E-10 + -0.68261574E-10 -0.78980262E-10 -0.74882107E-10 -0.94555461E-10 -0.29655518E-09 + -0.34306042E-09 -0.29428633E-09 -0.13989345E-08 -0.41546108E-08 -0.82742503E-08 + -0.24760055E-07 -0.31385627E-07 -0.22542762E-07 -0.71530945E-08 0.12319172E-06 + 0.23597498E-06 0.40733862E-06 0.45875525E-06 0.60968573E-06 0.54326020E-06 + 0.48052424E-06 0.34279773E-06 0.15795101E-06 0.17574615E-06 0.17214700E-06 + 0.50143325E-07 -0.92222389E-07 -0.77459585E-07 -0.43295674E-07 -0.38201773E-07 + -0.43474405E-07 -0.31996626E-07 0.00000000E+00 0.24898011E-12 -0.51123146E-12 + -0.10871641E-11 -0.24453823E-11 -0.55352340E-11 -0.86775803E-11 -0.12706883E-10 + -0.13364946E-10 -0.14229285E-10 -0.14392764E-10 -0.19057786E-10 -0.21017993E-10 + -0.23611691E-10 -0.27419905E-10 -0.27811401E-10 -0.40694871E-10 -0.55053539E-10 + -0.65898081E-10 -0.70386189E-10 -0.77810144E-10 -0.10364271E-09 -0.12294211E-09 + -0.10882344E-09 -0.13661618E-09 -0.47481947E-09 -0.48863360E-09 -0.10016777E-09 + -0.72704341E-09 -0.36654075E-08 -0.38496536E-08 -0.15049488E-07 0.51370902E-08 + 0.39863829E-07 0.51346064E-07 0.18681913E-06 0.24239684E-06 0.33152716E-06 + 0.33100086E-06 0.40309972E-06 0.21141981E-06 0.17682393E-06 0.60140472E-07 + -0.11356963E-06 -0.30686532E-07 0.45918718E-09 -0.69987559E-07 -0.16318842E-06 + -0.10306540E-06 -0.24249461E-07 0.37224704E-08 0.71733781E-08 0.19943254E-07 + -0.18798776E-12 -0.18665312E-12 -0.14855883E-11 -0.31836776E-11 -0.10628139E-10 + -0.22332960E-10 -0.35249978E-10 -0.50450905E-10 -0.54437232E-10 -0.56728518E-10 + -0.57243435E-10 -0.77326805E-10 -0.85013509E-10 -0.92293547E-10 -0.11109567E-09 + -0.11048276E-09 -0.15978125E-09 -0.21837617E-09 -0.26012059E-09 -0.27769932E-09 + -0.30552229E-09 -0.40829934E-09 -0.48585085E-09 -0.42875468E-09 -0.53373060E-09 + -0.18519443E-08 -0.16617928E-08 0.13234344E-08 0.73285478E-08 0.65768382E-08 + 0.23103628E-07 0.16623323E-07 0.13908365E-06 0.29111931E-06 0.32843527E-06 + 0.69887664E-06 0.70710738E-06 0.75080757E-06 0.69125766E-06 0.52836599E-06 + 0.63861254E-07 -0.47606433E-07 -0.34070134E-06 -0.68919272E-06 -0.46677228E-06 + -0.46306972E-06 -0.48457307E-06 -0.56983729E-06 -0.41038251E-06 -0.21543598E-06 + -0.12153599E-06 -0.70033043E-07 -0.40560211E-07 -0.29601983E-12 -0.93985839E-12 + -0.42883834E-11 -0.13341239E-10 -0.31275708E-10 -0.62949730E-10 -0.96986204E-10 + -0.13841565E-09 -0.14858766E-09 -0.15580848E-09 -0.16223765E-09 -0.23557437E-09 + -0.27164868E-09 -0.30912523E-09 -0.37928203E-09 -0.36940965E-09 -0.53781905E-09 + -0.74153151E-09 -0.88083374E-09 -0.93396435E-09 -0.10740450E-08 -0.15164696E-08 + -0.18595128E-08 -0.15924796E-08 -0.18533173E-08 -0.62053219E-08 -0.17564058E-08 + 0.27464476E-07 0.13144846E-06 0.20133589E-06 0.35968854E-06 0.30877025E-06 + 0.29684680E-06 0.16785600E-06 -0.28199217E-06 -0.83860226E-07 -0.48051198E-06 + 0.42576874E-07 0.27219711E-06 0.51374895E-07 -0.27794886E-06 0.20056000E-06 + 0.18442492E-07 -0.24324145E-06 0.46936093E-06 0.64457229E-06 0.55264162E-06 + 0.13394186E-06 0.35833949E-06 0.51824282E-06 0.50731175E-06 0.44756245E-06 + 0.35171259E-06 -0.76358388E-11 0.61051474E-11 0.59177949E-10 -0.87905054E-10 + -0.12873893E-09 0.40088750E-09 0.21980686E-09 0.20268612E-09 0.76060669E-10 + 0.36968350E-09 0.14697179E-09 -0.75226714E-09 -0.51665500E-09 -0.15381420E-09 + -0.11607917E-08 -0.22849320E-08 -0.39333554E-08 -0.66309181E-08 -0.10031681E-07 + -0.13195875E-07 -0.12936199E-07 -0.64001193E-08 -0.32615587E-07 -0.12495905E-07 + -0.74553708E-09 -0.83427567E-08 0.29889972E-07 -0.18594612E-07 0.35344710E-07 + 0.78198224E-07 -0.33047478E-06 0.15185384E-06 0.32702214E-07 -0.24079132E-06 + -0.11502464E-05 0.52231589E-05 -0.13421798E-05 0.31774552E-05 0.30361503E-06 + -0.42987133E-05 -0.28202476E-05 -0.14800416E-04 -0.14485127E-04 -0.27778263E-04 + -0.42125250E-04 -0.49322138E-04 -0.39362468E-04 -0.41616030E-04 -0.43812041E-04 + -0.32447475E-04 -0.27866462E-04 -0.22233549E-04 -0.18414600E-04 0.19981546E-06 + 0.18137089E-06 0.39807658E-06 0.93818975E-06 0.74393957E-06 0.25524419E-06 + -0.10649528E-07 -0.10745703E-05 -0.16048024E-05 -0.18437919E-05 -0.32135486E-05 + -0.26083616E-05 -0.33073715E-05 -0.28046122E-05 -0.23037234E-05 -0.76481008E-06 + 0.18664865E-05 0.10914710E-04 0.20248187E-04 0.22539404E-04 0.26538258E-04 + 0.23548801E-04 0.23258328E-04 0.11416693E-04 0.10064761E-04 -0.40326917E-04 + 0.17285918E-03 0.66477264E-04 0.15100325E-03 -0.22981860E-03 -0.24574397E-03 + -0.32981130E-04 -0.99086992E-03 -0.72461066E-03 -0.17188391E-04 -0.22759832E-02 + 0.24165919E-03 -0.22560961E-03 -0.21061111E-02 -0.11179531E-02 0.54390928E-02 + 0.11980030E-02 -0.19587526E-02 -0.10854226E-02 0.22615102E-02 0.45918902E-02 + 0.73490683E-02 0.53708550E-02 0.64685600E-02 0.70229802E-02 0.71138224E-02 + 0.67710325E-02 0.58613579E-02 0.11524860E-07 0.11122083E-07 -0.10491331E-07 + -0.13159200E-06 -0.17608616E-06 -0.59642252E-07 -0.39686004E-06 -0.10386797E-05 + -0.14987788E-05 -0.19539347E-05 -0.26102224E-05 -0.34480212E-05 -0.43085923E-05 + -0.49902295E-05 -0.51773743E-05 -0.56731835E-05 -0.55381028E-05 -0.63275172E-05 + -0.80195430E-05 -0.91134058E-05 -0.10261816E-04 -0.10917557E-04 -0.17795804E-04 + -0.14715311E-04 -0.10615634E-04 -0.14537457E-04 0.53868546E-05 -0.47995441E-04 + -0.71850387E-04 -0.16577301E-03 -0.36936305E-03 -0.32868320E-03 -0.72886299E-03 + -0.72275886E-03 -0.81248259E-03 -0.51818062E-03 -0.10448818E-02 -0.12098150E-02 + -0.14426532E-02 -0.14607366E-02 -0.81625550E-03 -0.14649111E-02 -0.18043559E-02 + -0.15553725E-02 -0.67453993E-03 -0.14708393E-02 -0.32634067E-03 -0.10687605E-02 + -0.11015926E-02 -0.41024766E-03 -0.38000956E-03 -0.35332409E-03 -0.29879172E-03 + 0.12094676E-11 0.55508535E-10 0.19912167E-09 -0.95041241E-09 0.33445768E-09 + -0.41335219E-09 -0.10199640E-08 -0.48434747E-09 -0.21082342E-08 -0.33220344E-08 + -0.52032568E-08 0.12875688E-08 0.86678539E-08 0.12733823E-07 0.15682677E-07 + 0.12810171E-07 0.27426424E-07 0.31091985E-08 -0.15298662E-07 -0.99310987E-08 + -0.61882575E-08 -0.25031314E-08 -0.11791966E-07 -0.73955998E-08 0.33387461E-08 + -0.64122717E-07 0.13614044E-06 0.39094438E-07 0.65429390E-06 0.90524315E-06 + -0.41966324E-05 -0.62491090E-05 -0.14868901E-04 -0.27808106E-04 -0.47013211E-04 + -0.35795043E-04 -0.94228140E-04 -0.91764873E-04 -0.10375511E-03 -0.10487857E-03 + -0.12764238E-03 -0.10665531E-03 -0.10691287E-03 -0.12881947E-03 -0.11851716E-03 + -0.12745361E-03 -0.95007918E-04 -0.92152726E-04 -0.10549491E-03 -0.86352713E-04 + -0.74596997E-04 -0.58929102E-04 -0.46359174E-04 0.00000000E+00 0.00000000E+00 + -0.37428089E-09 0.29396120E-09 -0.54260470E-09 -0.94675965E-10 -0.82616343E-10 + -0.79341278E-10 -0.21041825E-09 -0.42953022E-09 -0.22213928E-09 0.40162228E-09 + 0.14646177E-08 0.18985903E-08 0.21993197E-08 0.19962757E-08 0.30669421E-08 + 0.10679557E-08 -0.58283700E-09 -0.22280043E-10 0.36537517E-09 0.51756883E-09 + 0.11978570E-09 0.31093102E-09 0.79793696E-09 -0.19349311E-08 0.86956477E-08 + 0.12406477E-07 0.39340011E-07 0.10816151E-06 -0.12782392E-07 0.83743202E-07 + 0.39400526E-06 0.36731269E-06 0.10287270E-06 0.45883083E-05 0.19386419E-05 + 0.82533616E-05 0.54777334E-05 0.36624737E-05 -0.16071860E-05 -0.85395447E-05 + -0.16060108E-04 -0.32378764E-04 -0.40360780E-04 -0.49350731E-04 -0.50802956E-04 + -0.57940380E-04 -0.63305412E-04 -0.56377345E-04 -0.48352712E-04 -0.39229802E-04 + -0.31605089E-04 0.00000000E+00 -0.16060767E-09 0.22405641E-09 -0.25566486E-09 + -0.81906573E-10 -0.13171296E-09 -0.18585948E-09 -0.15614791E-09 -0.42318774E-09 + -0.46804869E-09 -0.72795817E-09 0.88833830E-09 0.21951269E-08 0.27147317E-08 + 0.34342014E-08 0.30784600E-08 0.47965093E-08 0.14179155E-08 -0.81391882E-09 + -0.15738083E-09 0.53608567E-09 0.59190431E-09 -0.12277396E-09 0.20436240E-09 + 0.10975953E-08 -0.37658758E-08 0.15970108E-07 0.19373224E-07 0.71243499E-07 + 0.19559541E-06 -0.18144621E-07 0.22194645E-06 0.11300914E-05 0.84083695E-06 + -0.71587820E-06 0.34119136E-05 -0.45073064E-05 -0.26629512E-05 -0.90654705E-05 + -0.12316234E-04 -0.22045464E-04 -0.25518098E-04 -0.31603129E-04 -0.47411625E-04 + -0.52362251E-04 -0.60020963E-04 -0.57812245E-04 -0.62877464E-04 -0.69031893E-04 + -0.60407456E-04 -0.51844516E-04 -0.41755776E-04 -0.33401408E-04 0.14271386E-09 + -0.22032084E-09 0.41078286E-09 -0.46882979E-09 0.26926374E-10 -0.82236640E-09 + -0.99868889E-09 -0.56104209E-09 -0.15196644E-08 -0.22291579E-08 -0.27171450E-08 + 0.28823050E-08 0.82084046E-08 0.11321652E-07 0.12906484E-07 0.11733115E-07 + 0.18054725E-07 0.52309730E-08 -0.38020357E-08 -0.11686634E-08 0.12204427E-08 + 0.21399035E-08 -0.11845562E-08 0.32212400E-09 0.41638090E-08 -0.16423255E-07 + 0.59809145E-07 0.64457773E-07 0.30757550E-06 0.80680313E-06 -0.13889381E-06 + 0.20270115E-06 0.14768608E-05 -0.29040870E-05 -0.12682711E-04 -0.69274236E-05 + -0.42109211E-04 -0.52080769E-04 -0.72896812E-04 -0.87660972E-04 -0.11632425E-03 + -0.11697984E-03 -0.13358680E-03 -0.16383804E-03 -0.16008466E-03 -0.16983013E-03 + -0.14591781E-03 -0.13987586E-03 -0.14544909E-03 -0.11895189E-03 -0.10043559E-03 + -0.78982847E-04 -0.60998696E-04 0.65569688E-10 -0.84505509E-10 -0.29864654E-09 + -0.85468183E-09 -0.28284457E-10 -0.17872921E-08 -0.36100595E-08 -0.16433272E-08 + -0.54886829E-08 -0.85837148E-08 -0.12027861E-07 0.58797655E-08 0.23180310E-07 + 0.32705963E-07 0.39845153E-07 0.34463960E-07 0.60338719E-07 0.11712000E-07 + -0.23945812E-07 -0.15381231E-07 -0.68193651E-08 -0.23247239E-08 -0.10816983E-07 + -0.79678546E-09 0.90516744E-08 -0.67217380E-07 0.22754392E-06 0.23189604E-06 + 0.17528745E-05 0.40953843E-05 -0.13489429E-05 -0.62057153E-05 -0.25372596E-04 + -0.55254707E-04 -0.89762398E-04 -0.81262135E-04 -0.16385666E-03 -0.14010301E-03 + -0.15218921E-03 -0.15808489E-03 -0.19537922E-03 -0.16257285E-03 -0.18250922E-03 + -0.21103793E-03 -0.18319426E-03 -0.19589982E-03 -0.15191305E-03 -0.15803043E-03 + -0.17809501E-03 -0.14613786E-03 -0.12323087E-03 -0.96632623E-04 -0.75673113E-04 + 0.21047637E-08 -0.39683023E-08 -0.17018368E-07 0.55103225E-08 -0.23833744E-07 + -0.14499302E-06 -0.13491664E-06 -0.13994598E-06 -0.17679195E-06 -0.22235647E-06 + -0.17218439E-06 -0.70776050E-07 -0.12340541E-06 -0.30543734E-06 -0.14375143E-06 + -0.93459356E-07 -0.57603306E-07 0.32656781E-06 0.74510761E-06 0.92262071E-06 + 0.69326153E-06 -0.25399941E-06 0.46039636E-05 0.16206924E-05 -0.19673964E-06 + -0.87966828E-07 -0.19249257E-05 0.64184527E-05 0.56102263E-05 0.34440020E-05 + 0.90892231E-04 -0.10644128E-03 -0.99703492E-04 -0.12147728E-03 -0.37205882E-04 + -0.24671627E-03 -0.36547687E-03 -0.88251171E-03 -0.10684230E-02 -0.98064592E-03 + -0.11802747E-02 -0.14275104E-02 -0.17114649E-02 -0.13185778E-02 -0.12506708E-02 + -0.12951959E-02 -0.14301460E-02 -0.12965394E-02 -0.99681847E-03 -0.13684759E-02 + -0.16499951E-02 -0.12958709E-02 -0.10959266E-02 -0.14060512E-04 0.36253780E-05 + 0.25072831E-04 -0.52427592E-04 -0.14528775E-04 -0.59239461E-04 -0.11319598E-03 + -0.44923172E-04 -0.80264389E-04 -0.18296542E-03 0.57536324E-04 0.38267026E-04 + 0.33902443E-03 0.52540042E-03 0.64530146E-03 0.64160718E-03 0.17858860E-03 + -0.91473267E-03 -0.21975925E-02 -0.28453443E-02 -0.34118145E-02 -0.24440038E-02 + -0.48104296E-03 -0.32687183E-02 -0.52196747E-02 -0.55576566E-02 -0.14283086E-01 + 0.16231026E-02 -0.83443854E-02 0.24847055E-01 0.16234973E-01 -0.11101995E+00 + -0.89751006E-01 -0.11902294E+00 -0.12073312E+00 0.58060530E-01 -0.21058846E+00 + -0.11991291E+00 -0.15960037E+00 0.17807339E+00 0.20009871E+00 0.26028351E+00 + 0.22705585E+00 0.28172204E+00 0.38327287E+00 0.42804708E+00 0.41451726E+00 + 0.55632032E+00 0.58218340E+00 0.63706038E+00 0.47455712E+00 0.42260834E+00 + 0.34404721E+00 -0.38006026E-05 -0.66802283E-05 -0.11232046E-04 -0.58928246E-05 + -0.48859007E-04 -0.18773801E-03 -0.18587921E-03 -0.17635586E-03 -0.17787430E-03 + -0.18909388E-03 -0.90001900E-04 -0.54884063E-05 0.95538254E-04 0.15000230E-03 + 0.10418964E-03 0.81770862E-04 -0.68388545E-04 -0.40467728E-04 0.15380984E-03 + 0.14169837E-03 0.19695463E-03 0.25843517E-03 0.13552584E-02 0.80319931E-03 + -0.28677303E-03 -0.59963724E-03 -0.23129730E-02 0.13904571E-04 -0.33937940E-02 + -0.64359822E-02 0.20699008E-04 -0.32655204E-01 -0.16535153E-01 -0.12157943E-01 + 0.21543462E-01 0.16526251E-02 -0.33881321E-01 -0.27452957E-01 -0.17417934E-01 + -0.11157232E-01 -0.33443214E-01 -0.42086996E-01 -0.33481563E-01 -0.45793219E-01 + -0.40415652E-01 -0.29156598E-01 -0.44953068E-01 -0.44631488E-01 -0.11162898E-01 + -0.33021174E-02 -0.79495139E-02 -0.13933267E-01 -0.12040258E-01 -0.15554460E-07 + -0.26130631E-07 -0.83652659E-07 0.69390747E-07 -0.32171491E-06 -0.45522642E-06 + -0.31629312E-06 -0.10273498E-05 -0.54359185E-06 -0.86145011E-06 -0.51808297E-06 + -0.16723990E-05 -0.33280440E-05 -0.44864249E-05 -0.53635763E-05 -0.44900011E-05 + -0.69000629E-05 -0.30835928E-05 0.15314119E-05 0.64690593E-06 -0.53476435E-06 + -0.68893712E-06 0.22665422E-05 -0.55625425E-06 -0.21238379E-05 -0.12077372E-08 + -0.75765996E-05 0.34786795E-04 0.32918809E-04 -0.16318498E-04 0.35787059E-03 + -0.90707494E-03 -0.83115244E-03 -0.71800828E-03 0.32986948E-03 -0.15913099E-02 + -0.21853945E-02 -0.25089453E-02 -0.17513866E-02 -0.15423616E-02 -0.19942424E-02 + -0.23889940E-02 -0.13812655E-02 -0.17037301E-02 -0.12187753E-02 -0.35264338E-03 + -0.44829063E-03 -0.31822869E-03 0.21382987E-03 -0.80491430E-04 0.10339835E-03 + -0.59465139E-04 0.10920059E-03 0.00000000E+00 0.00000000E+00 0.54651540E-07 + -0.58928068E-07 0.86429843E-07 -0.42506600E-07 -0.44840590E-07 -0.14075514E-06 + -0.90839645E-07 -0.76668145E-07 -0.95979513E-07 -0.19017839E-06 -0.39144236E-06 + -0.48899302E-06 -0.53646435E-06 -0.45926029E-06 -0.60737346E-06 -0.27308564E-06 + 0.12136627E-06 0.58034492E-07 -0.42914421E-07 -0.65754098E-07 0.63905244E-07 + -0.62375455E-07 -0.73544205E-07 -0.94286736E-08 -0.41431190E-06 0.10402259E-05 + 0.18995637E-05 0.12769686E-05 0.55856471E-04 -0.82590319E-05 0.66352466E-05 + 0.46380673E-04 0.19647912E-03 0.41306997E-04 -0.17736409E-04 -0.33537091E-03 + -0.29682218E-03 -0.34693866E-03 -0.39066382E-03 -0.78193297E-03 -0.95990735E-03 + -0.11960113E-02 -0.13718075E-02 -0.13585509E-02 -0.14236915E-02 -0.14093047E-02 + -0.87684105E-03 -0.86297616E-03 -0.73144562E-03 -0.71117507E-03 -0.52245049E-03 + 0.00000000E+00 0.21376519E-07 -0.48785981E-07 0.31085183E-07 -0.23635236E-07 + -0.66516462E-07 -0.74926951E-07 -0.22636484E-06 -0.11582310E-06 -0.17581492E-06 + -0.10021249E-06 -0.34111829E-06 -0.60488114E-06 -0.72572232E-06 -0.84851633E-06 + -0.70382201E-06 -0.95307511E-06 -0.40545474E-06 0.17958171E-06 0.89743578E-07 + -0.86579494E-07 -0.78911850E-07 0.15939373E-06 -0.81644393E-07 -0.15037564E-06 + -0.24986155E-07 -0.79283748E-06 0.21957174E-05 0.40720970E-05 0.27639643E-05 + 0.90207259E-04 -0.34706217E-04 -0.37974867E-04 -0.31693926E-04 0.10105808E-03 + -0.15448963E-03 -0.32952312E-03 -0.70194566E-03 -0.61129404E-03 -0.60701533E-03 + -0.71466162E-03 -0.10655560E-02 -0.10808756E-02 -0.12426109E-02 -0.12329894E-02 + -0.10951449E-02 -0.10989805E-02 -0.10189813E-02 -0.55024868E-03 -0.61748331E-03 + -0.49457912E-03 -0.52553844E-03 -0.36696215E-03 -0.23912910E-07 0.17819774E-07 + -0.81878686E-07 0.26976838E-07 -0.18356112E-06 -0.19444885E-06 -0.27376025E-06 + -0.91937477E-06 -0.54194426E-06 -0.65242555E-06 -0.45937828E-06 -0.13036607E-05 + -0.23455014E-05 -0.30107009E-05 -0.33395142E-05 -0.27883456E-05 -0.37176417E-05 + -0.16202257E-05 0.69177856E-06 0.36859436E-06 -0.30957083E-06 -0.34502705E-06 + 0.65761853E-06 -0.29060941E-06 -0.62591868E-06 -0.52949237E-07 -0.28766848E-05 + 0.96866865E-05 0.17037620E-04 0.74001036E-05 0.25773088E-03 -0.28130158E-03 + -0.28180130E-03 -0.29088606E-03 0.78022556E-04 -0.90844720E-03 -0.15823067E-02 + -0.22101178E-02 -0.18026692E-02 -0.17295370E-02 -0.23001598E-02 -0.28320167E-02 + -0.23495731E-02 -0.25274509E-02 -0.21404649E-02 -0.15099851E-02 -0.13405343E-02 + -0.10928297E-02 -0.25200822E-03 -0.51078892E-03 -0.29302574E-03 -0.32207736E-03 + -0.12690972E-03 -0.25694501E-07 -0.25416526E-07 -0.59386337E-07 -0.81166708E-07 + -0.57748403E-06 -0.90535628E-06 -0.76621360E-06 -0.29624995E-05 -0.16815060E-05 + -0.21205095E-05 -0.13363764E-05 -0.42548755E-05 -0.78840720E-05 -0.10108720E-04 + -0.11607765E-04 -0.94862354E-05 -0.13462356E-04 -0.60284993E-05 0.23873375E-05 + 0.77701807E-06 -0.14875606E-05 -0.11660250E-05 0.30718235E-05 -0.92577729E-06 + -0.20506719E-05 0.61489740E-06 -0.89388414E-05 0.50972940E-04 0.86492090E-04 + 0.52657913E-04 0.80910641E-03 -0.13967948E-02 -0.13194801E-02 -0.84021741E-03 + 0.12562767E-02 -0.18865876E-02 -0.25120350E-02 -0.25631487E-02 -0.11247228E-02 + -0.11307668E-02 -0.14963340E-02 -0.21761465E-02 -0.43812932E-03 -0.18392784E-02 + -0.14122260E-02 -0.12943051E-04 -0.24432536E-03 -0.19809077E-03 0.57062931E-03 + 0.34037477E-03 0.49708824E-03 0.68975171E-04 0.25178114E-03 -0.22251772E-08 + 0.30351047E-08 0.12269276E-07 -0.22118695E-07 -0.26457316E-07 0.10849602E-06 + 0.76185788E-07 0.70402028E-07 0.72697108E-07 0.12588645E-06 0.40569254E-07 + -0.15509388E-06 -0.47847951E-07 0.28092480E-07 -0.22913617E-06 -0.43582432E-06 + -0.80512881E-06 -0.14998713E-05 -0.21238709E-05 -0.26397382E-05 -0.25909489E-05 + -0.19924456E-05 -0.82945246E-05 -0.30144553E-05 -0.61561572E-06 -0.33289808E-06 + 0.10718602E-05 -0.50957922E-06 0.11244681E-04 0.20863302E-05 -0.53226749E-05 + 0.26249136E-04 0.11167207E-03 0.18285136E-03 0.13463942E-03 0.27087035E-03 + 0.38973857E-03 0.71386945E-03 0.74290381E-03 0.71878720E-03 0.81833123E-03 + 0.78453358E-03 0.10757065E-02 0.79918594E-03 0.68524706E-03 0.64180926E-03 + 0.59458755E-03 0.68225058E-03 0.44010170E-03 0.65023047E-03 0.80958286E-03 + 0.47163131E-03 0.43248674E-03 0.36139762E-04 0.23294668E-04 0.43554641E-04 + 0.12677085E-03 0.11708459E-03 0.13642157E-03 0.18350219E-03 -0.10624325E-04 + -0.66444613E-04 -0.74301316E-04 -0.48831220E-03 -0.48964888E-03 -0.86142782E-03 + -0.91102107E-03 -0.89811904E-03 -0.73669762E-03 0.89352638E-04 0.17195025E-02 + 0.34623084E-02 0.42225785E-02 0.53806577E-02 0.43348616E-02 0.25838407E-02 + 0.33548924E-02 -0.39727012E-03 -0.56518219E-02 0.65526966E-02 -0.24344541E-01 + -0.17434861E-01 -0.90604474E-01 -0.11696845E+00 -0.17710190E+00 -0.27550147E+00 + -0.24874364E+00 -0.26060066E+00 -0.40958159E+00 -0.40203496E+00 -0.53116202E+00 + -0.62027744E+00 -0.64732730E+00 -0.70487075E+00 -0.69098970E+00 -0.80194168E+00 + -0.73423232E+00 -0.63648297E+00 -0.60459790E+00 -0.48379539E+00 -0.42165164E+00 + -0.48449288E+00 -0.41070224E+00 -0.33452823E+00 -0.27510703E+00 -0.21283554E+00 + 0.22801062E-05 0.24026880E-05 -0.77533492E-06 -0.24255615E-04 -0.16286643E-04 + 0.67153652E-04 0.68265184E-04 -0.17867286E-05 -0.29760556E-04 -0.85415163E-04 + -0.21806246E-03 -0.37887794E-03 -0.53773793E-03 -0.64504598E-03 -0.63342619E-03 + -0.66572547E-03 -0.57279403E-03 -0.66351988E-03 -0.96765187E-03 -0.10303283E-02 + -0.11312302E-02 -0.14153693E-02 -0.29966758E-02 -0.18643141E-02 -0.76833615E-03 + -0.48466677E-03 0.74998471E-03 -0.40778655E-02 0.19341842E-02 -0.72755243E-02 + -0.16634253E-01 -0.17530397E-01 -0.41368636E-01 -0.41462258E-01 -0.57158475E-01 + -0.67725565E-01 -0.76328783E-01 -0.93995483E-01 -0.11413594E+00 -0.10141174E+00 + -0.10544364E+00 -0.10220104E+00 -0.12303334E+00 -0.10903939E+00 -0.11101031E+00 + -0.12271294E+00 -0.10336762E+00 -0.78035910E-01 -0.96672784E-01 -0.90561356E-01 + -0.81055152E-01 -0.67046043E-01 -0.52609613E-01 -0.47493310E-08 0.13915304E-07 + 0.43399818E-07 -0.22736300E-06 0.64079969E-07 -0.15404835E-06 -0.39602990E-06 + -0.28579268E-06 -0.97880891E-06 -0.13843751E-05 -0.16517284E-05 -0.57575083E-07 + 0.15615667E-05 0.23527188E-05 0.28825273E-05 0.20601740E-05 0.58918219E-05 + 0.16493603E-05 -0.38357019E-05 -0.31006866E-05 -0.17164857E-05 -0.10792790E-05 + -0.31803231E-05 0.86786609E-06 0.14865854E-05 -0.10445021E-05 0.10911157E-04 + 0.60322057E-05 0.69493423E-04 0.85534921E-04 0.17803447E-03 0.38686718E-03 + 0.64082489E-03 0.65849125E-03 0.24859511E-03 0.10189160E-02 0.28108989E-03 + -0.44058245E-04 -0.76447689E-03 -0.44575686E-03 -0.19876182E-02 -0.19914786E-02 + -0.27109635E-02 -0.35047454E-02 -0.41402849E-02 -0.49305613E-02 -0.45912714E-02 + -0.38758129E-02 -0.38509635E-02 -0.31218136E-02 -0.27989762E-02 -0.23512254E-02 + -0.18142390E-02 0.00000000E+00 0.00000000E+00 -0.75465789E-07 0.69110190E-07 + -0.15008590E-06 -0.24947882E-07 -0.62405528E-07 -0.55609819E-07 -0.13141457E-06 + -0.21002540E-06 -0.14141818E-06 0.15057332E-07 0.24146568E-06 0.31805608E-06 + 0.35738787E-06 0.28778702E-06 0.56048242E-06 0.19289133E-06 -0.26217954E-06 + -0.20235877E-06 -0.10293715E-06 -0.34118894E-07 -0.66042274E-07 0.10408484E-06 + 0.75732167E-07 -0.58699948E-07 0.47691957E-06 0.70585058E-06 0.33180392E-05 + -0.32179814E-06 0.20166591E-05 0.12198697E-06 0.21978805E-04 0.30119486E-04 + -0.13067347E-05 0.16465864E-04 0.46916090E-04 0.23961714E-03 0.26349924E-03 + 0.29723866E-03 0.37387991E-03 0.56420988E-03 0.94397463E-03 0.11602323E-02 + 0.13914639E-02 0.14412603E-02 0.14480043E-02 0.15759231E-02 0.13059999E-02 + 0.11502953E-02 0.91343124E-03 0.79767076E-03 0.63008526E-03 0.00000000E+00 + -0.32662138E-07 0.52008892E-07 -0.64007589E-07 -0.20966586E-07 -0.55086389E-07 + -0.10604870E-06 -0.97191554E-07 -0.24496665E-06 -0.27512272E-06 -0.30187674E-06 + 0.76589801E-07 0.36960399E-06 0.43954007E-06 0.55865141E-06 0.43683669E-06 + 0.88120608E-06 0.26793772E-06 -0.40314253E-06 -0.33067199E-06 -0.12896802E-06 + -0.87499628E-07 -0.19382152E-06 0.14248872E-06 0.13004820E-06 -0.89215777E-07 + 0.95960497E-06 0.11759576E-05 0.55247512E-05 -0.38952633E-05 -0.70910670E-05 + -0.64759651E-05 0.82552413E-04 0.14795654E-03 0.12821661E-03 0.22266674E-03 + 0.30956440E-03 0.46515959E-03 0.46893551E-03 0.53401772E-03 0.39058790E-03 + 0.54866471E-03 0.76609764E-03 0.73447126E-03 0.71106118E-03 0.62198650E-03 + 0.58636682E-03 0.70231673E-03 0.49711261E-03 0.50395472E-03 0.38876299E-03 + 0.37875596E-03 0.32090680E-03 0.24610565E-07 -0.38743873E-07 0.95437270E-07 + -0.12270227E-06 0.49620827E-09 -0.29628741E-06 -0.47675270E-06 -0.38652934E-06 + -0.90930190E-06 -0.11994932E-05 -0.11494562E-05 0.21233854E-06 0.13557385E-05 + 0.19059318E-05 0.21455701E-05 0.17055201E-05 0.33649459E-05 0.10624686E-05 + -0.16162233E-05 -0.13569119E-05 -0.58651975E-06 -0.31928663E-06 -0.83973878E-06 + 0.49017443E-06 0.53037008E-06 -0.38493949E-06 0.36145562E-05 0.34578512E-05 + 0.19623466E-04 -0.11051006E-04 0.66096038E-06 0.40536938E-04 0.37839262E-03 + 0.56928205E-03 0.47095286E-03 0.91944819E-03 0.10320765E-02 0.11334326E-02 + 0.10315566E-02 0.12594334E-02 0.38091431E-03 0.74703437E-03 0.58937911E-03 + 0.73923569E-05 -0.63060130E-03 -0.12000148E-02 -0.13681375E-02 -0.12275614E-02 + -0.15303758E-02 -0.12755562E-02 -0.12437857E-02 -0.11384345E-02 -0.90738638E-03 + 0.13243085E-07 -0.16682765E-07 -0.64161541E-07 -0.20158211E-06 -0.38238574E-07 + -0.71300796E-06 -0.15454571E-05 -0.11043287E-05 -0.29299494E-05 -0.40170088E-05 + -0.42040055E-05 0.25994851E-06 0.40564597E-05 0.57284339E-05 0.67813901E-05 + 0.48849642E-05 0.11837385E-04 0.37835600E-05 -0.61530628E-05 -0.50448322E-05 + -0.26603830E-05 -0.23235115E-05 -0.45974523E-05 0.11782242E-05 0.10683559E-05 + -0.23974422E-05 0.11777429E-04 -0.21586321E-05 0.56415496E-04 0.61317818E-06 + 0.34339805E-03 0.75301444E-03 0.13067578E-02 0.91023222E-03 0.11225519E-03 + 0.11343028E-02 -0.65585750E-03 -0.91341105E-03 -0.21476323E-02 -0.16965296E-02 + -0.39207500E-02 -0.36806152E-02 -0.47732019E-02 -0.51663184E-02 -0.57608071E-02 + -0.69287547E-02 -0.62999888E-02 -0.50413928E-02 -0.49429795E-02 -0.41550950E-02 + -0.36815462E-02 -0.29491127E-02 -0.22588966E-02 +Ozone + -0.26149025E-09 -0.54890757E-08 -0.40521494E-08 -0.69253664E-09 -0.87655725E-07 + -0.18524380E-06 -0.33824596E-06 -0.98809793E-06 0.44553857E-06 -0.21582801E-05 + -0.67011222E-07 -0.24469701E-05 -0.64925043E-05 -0.11960900E-04 -0.10267230E-04 + -0.10937884E-04 -0.11272816E-04 -0.10120815E-04 -0.41261356E-05 -0.23625746E-05 + 0.43815739E-06 -0.24500703E-05 0.15279933E-05 -0.61561279E-05 -0.36453394E-05 + 0.77594912E-06 0.65284023E-05 0.11423542E-04 0.93384005E-05 0.47006061E-05 + 0.19237405E-05 0.59922103E-06 -0.16897793E-05 -0.20600581E-05 -0.20541544E-05 + -0.22488228E-05 -0.13269267E-05 -0.56498630E-06 -0.37300858E-06 0.70385119E-06 + 0.46038191E-05 0.54621187E-05 0.48558889E-05 0.44979164E-05 0.48203436E-05 + 0.12000884E-05 -0.10258012E-05 -0.25816994E-06 0.99354239E-06 -0.13703936E-05 + -0.35885752E-07 0.97328149E-06 0.92322768E-06 -0.18861845E-08 -0.20382358E-07 + -0.32400880E-07 -0.39720597E-07 -0.30742679E-06 -0.89983576E-06 -0.22821429E-05 + -0.38250756E-05 0.33552836E-05 -0.13691110E-04 0.72894125E-05 0.33486810E-05 + -0.14927961E-04 -0.37106947E-04 -0.40023825E-04 -0.57696221E-04 -0.36132631E-04 + -0.20787375E-04 -0.78885330E-05 0.87976312E-05 0.19513620E-04 -0.90207359E-05 + 0.13902226E-04 -0.35863285E-04 -0.17877827E-04 0.32195186E-04 0.62672121E-04 + 0.75205963E-04 0.34382827E-04 0.14370223E-04 0.64107928E-05 0.51581986E-06 + 0.39219138E-05 -0.29479639E-05 -0.58490911E-05 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.92277901E-10 -0.10823920E-09 -0.18339394E-08 -0.18395205E-07 + -0.10647756E-07 -0.12527948E-06 -0.15180132E-06 -0.30065764E-06 -0.48952497E-06 + -0.58702773E-06 -0.22710037E-06 -0.15118690E-05 -0.25796575E-05 -0.36664168E-05 + -0.45258048E-05 -0.37456660E-05 -0.41972872E-05 -0.37960366E-05 -0.27795716E-05 + -0.28339735E-05 -0.18069722E-05 -0.15638878E-05 -0.68047777E-06 -0.84345862E-06 + -0.11582089E-06 0.41997658E-06 0.97798172E-06 0.44107751E-06 0.20370968E-06 + -0.49008505E-08 -0.19216538E-06 -0.30098276E-06 0.90485272E-07 -0.32585832E-06 + -0.38698455E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.35524440E-04 -0.51696873E-04 -0.70479699E-04 + -0.86056187E-04 -0.11611122E-03 -0.13533389E-03 -0.14387549E-03 -0.15692555E-03 + -0.85784818E-04 -0.58091866E-05 0.17678951E-04 0.26605438E-04 -0.81312523E-07 + -0.97677798E-06 -0.14988174E-05 -0.20430198E-05 -0.76794654E-05 -0.22790691E-04 + -0.54951679E-04 -0.10315711E-03 0.11921260E-04 -0.30838074E-03 -0.44249101E-03 + -0.60648410E-03 -0.79494495E-03 -0.74720656E-03 -0.12338933E-02 -0.91767925E-03 + -0.13261132E-02 -0.11521500E-02 -0.81360943E-03 -0.12215761E-02 -0.10606048E-02 + -0.91311166E-03 -0.81914999E-03 -0.52325263E-03 -0.70135023E-03 -0.70072227E-03 + -0.43933059E-03 -0.39932209E-03 -0.35213687E-03 -0.26423823E-03 -0.20797312E-03 + -0.18330047E-03 -0.14544803E-03 -0.12526514E-03 -0.12245280E-03 -0.13124033E-03 + -0.12530475E-03 -0.12181004E-03 -0.12375302E-03 -0.13987462E-03 -0.14043507E-03 + -0.17279581E-03 -0.16460350E-03 -0.13879037E-03 -0.12525135E-03 -0.10515505E-03 + -0.86763155E-04 -0.79475045E-04 -0.84904626E-04 -0.53940919E-04 0.12915490E-04 + 0.22495128E-04 0.12793558E-04 -0.10102051E-04 -0.10173633E-03 -0.16059597E-03 + -0.23433108E-03 -0.88208274E-03 -0.22910139E-02 -0.57571139E-02 -0.10587575E-01 + -0.92666849E-02 -0.13351155E-01 -0.23119634E-01 -0.20696338E-01 -0.67876950E-02 + 0.43422112E-03 -0.24839001E-01 -0.17806951E-01 -0.47886518E-01 -0.50499374E-01 + -0.31063964E-01 -0.56382668E-01 -0.50582098E-01 -0.41277190E-01 -0.42663965E-01 + -0.20165200E-01 -0.27413110E-01 -0.35420491E-01 -0.31085052E-01 -0.29907230E-01 + -0.24509477E-01 -0.18796393E-01 -0.15961288E-01 -0.14378748E-01 -0.12485333E-01 + -0.10953092E-01 -0.10044685E-01 -0.95608964E-02 -0.94736326E-02 -0.95300606E-02 + -0.10036440E-01 -0.10502287E-01 -0.10320742E-01 -0.11272758E-01 -0.10611462E-01 + -0.10289493E-01 -0.99190610E-02 -0.87807315E-02 -0.80911522E-02 -0.72367376E-02 + -0.55128008E-02 -0.45666307E-02 -0.32636608E-02 -0.25481386E-02 -0.20548712E-02 + -0.76197954E-08 -0.99407228E-07 -0.25206050E-06 -0.66216523E-06 -0.34939570E-05 + -0.15271608E-04 -0.44938107E-05 -0.71266979E-04 -0.11010299E-03 -0.29189999E-04 + -0.29907542E-04 -0.20080114E-03 -0.24820593E-03 -0.28352399E-03 -0.34622528E-03 + -0.22680921E-03 -0.24989514E-03 -0.26297566E-03 -0.23640767E-03 -0.19690503E-03 + -0.12778958E-03 -0.10024325E-03 -0.72948111E-04 -0.51779584E-04 -0.44374126E-04 + -0.43552216E-04 -0.31783757E-04 -0.27680352E-04 -0.21987969E-04 -0.16542959E-04 + -0.14080112E-04 -0.12088733E-04 -0.11423699E-04 -0.11258404E-04 -0.11872223E-04 + -0.13658701E-04 -0.15011293E-04 -0.16103743E-04 -0.16023297E-04 -0.15589931E-04 + -0.13610285E-04 -0.14915261E-04 -0.15864252E-04 -0.16130983E-04 -0.16645703E-04 + -0.15731359E-04 -0.16706669E-04 -0.15901785E-04 -0.13989872E-04 -0.12291189E-04 + -0.87496633E-05 -0.65082888E-05 -0.52479260E-05 0.84457149E-09 -0.26690016E-07 + -0.10249004E-06 0.26456820E-07 -0.43308132E-06 -0.14573829E-05 -0.19265212E-05 + -0.66526554E-05 -0.74096783E-05 -0.88222979E-05 -0.46767514E-05 -0.22438037E-04 + -0.32361711E-04 -0.37647607E-04 -0.50652194E-04 -0.29816834E-04 -0.43839074E-04 + -0.44336593E-04 -0.38241904E-04 -0.40401413E-04 -0.28467620E-04 -0.22228935E-04 + -0.17580185E-04 -0.11818130E-04 -0.11740890E-04 -0.11758443E-04 -0.72817008E-05 + -0.75523443E-05 -0.75138549E-05 -0.59246165E-05 -0.48626079E-05 -0.46746153E-05 + -0.36844014E-05 -0.38933817E-05 -0.42867242E-05 -0.48646464E-05 -0.40195038E-05 + -0.22315075E-05 0.51987155E-06 0.14609317E-05 0.24012518E-05 -0.80444995E-06 + -0.49193869E-05 -0.44149749E-05 -0.41264121E-05 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.16786952E-06 -0.88007550E-06 -0.13022951E-05 -0.13947384E-05 + -0.12286788E-05 -0.13716268E-06 -0.14157661E-05 -0.22549012E-05 -0.30609454E-05 + -0.10052806E-04 -0.27209602E-04 -0.66051614E-04 -0.12564948E-03 0.46412613E-04 + -0.36976227E-03 -0.73312975E-03 -0.11273061E-02 -0.14828951E-02 -0.14944109E-02 + -0.23072563E-02 -0.19150341E-02 -0.26934604E-02 -0.23943143E-02 -0.18072840E-02 + -0.24034727E-02 -0.21264775E-02 -0.17418786E-02 -0.14612882E-02 -0.84929493E-03 + -0.97240421E-03 -0.10570565E-02 -0.77181647E-03 -0.62961380E-03 -0.41674263E-03 + -0.35350451E-03 -0.24041440E-03 -0.15307022E-03 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.31011203E-10 + -0.42346840E-08 -0.35382539E-08 0.13714589E-07 -0.25709933E-07 -0.18887577E-06 + -0.51853753E-06 -0.50696030E-06 0.89746802E-06 -0.67396354E-06 0.55274850E-06 + 0.45126347E-06 0.70034204E-06 0.46721868E-06 0.14793309E-05 0.16436732E-05 + 0.51524300E-06 -0.12758434E-05 -0.11910243E-05 -0.11339423E-05 -0.91159022E-06 + -0.37034131E-05 -0.30219178E-05 -0.25192393E-06 0.30489234E-05 0.26374407E-05 + 0.22192631E-05 -0.20335403E-05 -0.37084336E-05 -0.27805823E-05 -0.16206460E-05 + -0.99398130E-06 0.54883317E-06 0.12338897E-05 0.14985423E-05 0.22692853E-05 + 0.24995109E-05 0.21700348E-05 0.27977170E-05 0.28799111E-05 0.17319969E-05 + 0.11404812E-05 0.44964892E-06 0.85791852E-06 0.15683452E-05 0.22021311E-05 + 0.23341337E-05 0.16386216E-05 0.87713994E-06 0.14314651E-05 0.15370042E-05 + 0.13513015E-05 0.11230455E-05 0.30014326E-09 -0.12479383E-07 -0.14648804E-07 + 0.33760987E-07 -0.13887276E-06 -0.91976982E-06 -0.34500206E-05 -0.24718446E-05 + 0.37045720E-05 -0.77171184E-05 0.35702117E-06 0.30421765E-05 -0.96177627E-06 + -0.45765718E-05 -0.37868723E-06 -0.23112137E-05 -0.20289835E-05 -0.54526351E-05 + -0.82367043E-05 -0.10464855E-04 -0.95058792E-05 -0.23326578E-04 -0.13213646E-04 + -0.31826106E-05 0.17917278E-04 0.14132305E-04 0.87388056E-05 -0.20637837E-04 + -0.15683978E-04 0.16094994E-06 0.51138061E-05 0.14434408E-05 -0.44559198E-05 + 0.22468389E-05 0.15109646E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.35884243E-10 0.16166184E-08 -0.38997838E-08 -0.57825931E-08 -0.86193089E-08 + -0.12058012E-06 -0.13007079E-06 -0.10567941E-06 0.36205552E-07 0.36051882E-07 + 0.36991500E-06 0.25258365E-06 0.41940171E-06 0.58618434E-06 0.57555596E-06 + 0.62764996E-06 0.26665076E-06 -0.99235119E-08 -0.10383631E-07 -0.21019198E-06 + -0.63799664E-07 -0.32114929E-06 -0.34312025E-06 0.16979196E-06 0.51563790E-06 + 0.21314446E-06 -0.10269493E-06 -0.34007842E-06 0.74284318E-07 0.15108482E-06 + 0.26230641E-06 0.21163623E-06 -0.13417787E-06 0.20516744E-06 0.36257891E-07 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.21390064E-04 -0.33619608E-04 -0.44059963E-04 -0.52778447E-04 + -0.61833321E-04 -0.69341221E-04 -0.67402307E-04 -0.61711782E-04 -0.57593612E-04 + -0.44004619E-04 -0.27143005E-04 -0.18337370E-04 0.70128637E-08 -0.47947340E-06 + -0.43289967E-06 0.26511899E-06 -0.14064762E-05 -0.83771272E-05 -0.47199322E-04 + -0.28064846E-04 0.10225173E-03 -0.21529005E-04 -0.38244891E-04 -0.46007296E-04 + 0.46311053E-05 0.39111339E-04 -0.30859991E-04 0.11682440E-03 0.56122808E-05 + -0.50460563E-04 0.68530044E-04 0.54340382E-04 0.10100705E-03 0.78751988E-04 + 0.44575772E-04 0.37292454E-04 0.67243184E-04 0.10433669E-03 0.14409262E-04 + -0.10993673E-05 0.78883461E-05 -0.18166812E-05 0.14038463E-04 0.16284060E-04 + 0.11479553E-04 0.78069963E-06 -0.10104401E-04 -0.67431324E-06 -0.36847917E-05 + -0.16281032E-04 -0.32816777E-04 -0.50720748E-04 -0.67093739E-04 -0.74936320E-04 + -0.89689573E-04 -0.96141546E-04 -0.99473483E-04 -0.10036936E-03 -0.90559807E-04 + -0.71264930E-04 -0.62416178E-04 -0.59955431E-04 -0.63743176E-04 -0.52841346E-04 + -0.41564160E-04 0.91544250E-06 -0.48273062E-04 -0.46046519E-04 -0.22359020E-04 + -0.26933327E-03 -0.48675126E-03 -0.29160800E-02 -0.29141918E-03 0.60911600E-02 + 0.94577695E-02 0.30642854E-02 -0.65804130E-02 0.32591975E-02 0.50063976E-02 + -0.17945501E-02 0.10214140E-02 -0.10023538E-01 -0.11620136E-01 -0.52391317E-02 + -0.52875265E-02 -0.34724352E-02 -0.66863731E-02 -0.66618949E-02 -0.60977153E-02 + -0.43905024E-02 -0.64591482E-03 -0.18128358E-02 -0.30471612E-02 -0.24688960E-02 + -0.16568869E-02 -0.75629519E-03 -0.62706284E-03 -0.64075138E-03 -0.66462900E-03 + -0.96088343E-03 -0.89876225E-03 -0.93324123E-03 -0.84928822E-03 -0.86647763E-03 + -0.88774419E-03 -0.67904271E-03 -0.54828022E-03 -0.43987998E-03 -0.26421534E-03 + -0.25848003E-03 -0.19691467E-04 0.15560890E-03 0.24861375E-03 0.16384940E-03 + 0.13435893E-03 -0.80497776E-04 0.62783028E-04 0.40577823E-05 0.14651995E-08 + -0.57110401E-07 -0.13157629E-06 -0.27581770E-06 -0.23433480E-05 -0.15113410E-04 + 0.49193839E-05 -0.23901202E-04 0.40374436E-06 0.57592855E-04 0.73794588E-04 + 0.30075796E-04 0.77187944E-04 0.11711748E-03 0.91843316E-04 0.79326837E-04 + 0.45783639E-04 0.18994579E-04 0.50592472E-05 -0.38950465E-05 0.14762682E-04 + 0.14493435E-04 0.52816351E-05 0.16667129E-05 0.13269347E-05 0.37751325E-05 + -0.38114612E-06 -0.18007493E-05 -0.19858272E-05 -0.23406229E-05 -0.17233644E-05 + -0.22118517E-05 -0.20266201E-05 -0.13668496E-05 -0.10384583E-05 0.47072105E-06 + 0.16749482E-05 0.28001862E-05 0.33181651E-05 0.33205476E-05 0.30861571E-05 + 0.36769265E-05 0.37934231E-05 0.34443884E-05 0.30282512E-05 0.29706025E-05 + 0.26643293E-05 0.25062775E-05 0.18849676E-05 0.12097866E-05 0.88468489E-06 + 0.11422000E-05 0.85611164E-06 -0.17575913E-09 -0.67842357E-08 -0.72710454E-07 + 0.62858021E-07 -0.19903345E-06 -0.13015552E-05 -0.17519443E-05 -0.30793990E-05 + 0.53102906E-06 0.64544931E-06 0.51327388E-05 0.31046927E-05 0.72279362E-05 + 0.10928717E-04 0.90768095E-05 0.10630502E-04 0.57983990E-05 0.14756142E-05 + 0.17630166E-05 0.47798035E-06 0.28798285E-05 0.36097272E-05 0.19887526E-05 + 0.12304654E-05 0.10449791E-05 0.18465301E-05 -0.11398772E-06 -0.22784013E-06 + 0.22408394E-06 0.28449179E-06 0.95633577E-06 0.13735037E-05 0.18246908E-05 + 0.23487989E-05 0.23360766E-05 0.30313353E-05 0.34582814E-05 0.23901323E-05 + 0.12387710E-05 0.44727236E-06 -0.52308044E-06 0.67587669E-06 0.14954927E-05 + 0.16973075E-05 0.21651373E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.12525650E-05 0.15862824E-05 0.10937383E-05 0.12527398E-05 0.10612752E-05 + 0.13049784E-07 -0.69018765E-06 -0.62676023E-06 0.15152527E-06 -0.15276416E-05 + -0.46134873E-05 -0.51480694E-04 -0.20176868E-04 0.16375872E-03 0.41980966E-04 + -0.82152624E-05 -0.10390851E-03 -0.33066111E-04 0.53474839E-04 -0.34530675E-04 + 0.19374910E-03 -0.16474914E-04 -0.63300182E-04 0.16272201E-03 0.19501849E-03 + 0.27823892E-03 0.22161191E-03 0.14900842E-03 0.96177828E-04 0.18593245E-03 + 0.24615773E-03 0.14775396E-03 0.13669998E-03 0.18423131E-03 0.22779679E-03 + 0.24894434E-03 0.14227530E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.21273802E-11 -0.93957942E-11 + -0.81583281E-11 -0.39682707E-10 -0.17036117E-09 -0.58824189E-09 -0.88119265E-09 + -0.11430018E-08 -0.19424883E-08 -0.40354494E-08 -0.79025804E-08 -0.16986684E-07 + -0.26512947E-07 -0.44926201E-07 -0.43527531E-07 -0.40314680E-07 -0.35656135E-07 + -0.17322239E-07 -0.23463275E-07 -0.39639822E-07 -0.38367323E-07 0.10989044E-07 + 0.20686002E-07 -0.11199064E-07 -0.24979172E-07 -0.48874332E-07 -0.26653645E-07 + 0.77879650E-07 0.12718229E-06 0.10286792E-06 0.66974674E-07 -0.26397096E-08 + -0.54991449E-07 -0.43013534E-07 -0.38434967E-07 -0.23968790E-07 -0.11110372E-07 + -0.22217501E-07 -0.20183807E-07 -0.87642042E-08 -0.63831246E-08 0.75257118E-08 + 0.15043374E-07 0.29565185E-07 0.30682620E-07 0.22679777E-07 0.14717394E-08 + 0.40609027E-08 0.13646974E-07 0.10883071E-07 0.60469576E-08 0.59348475E-08 + 0.43657674E-08 -0.15676376E-10 -0.35917933E-10 -0.75072206E-10 -0.74541448E-10 + -0.69386760E-09 -0.22809427E-08 -0.40425605E-08 -0.57295505E-08 -0.87068830E-08 + -0.15564353E-07 -0.30771876E-07 -0.68884047E-07 -0.95760013E-07 -0.16847152E-06 + -0.16402390E-06 -0.14813664E-06 -0.11580770E-06 -0.56729698E-07 -0.98424584E-07 + -0.14983009E-06 -0.14737948E-06 0.11733487E-06 0.14587192E-06 0.19157052E-07 + -0.16250839E-06 -0.29112113E-06 -0.75619304E-07 0.39151644E-06 0.87929165E-07 + -0.12292562E-06 -0.22107677E-07 0.86834594E-07 0.17459759E-06 0.18096812E-06 + 0.12960441E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.11486821E-11 + -0.60299791E-11 -0.16021855E-10 -0.32722426E-10 -0.90670816E-10 -0.29896395E-09 + -0.49465081E-09 -0.93369666E-09 -0.16852746E-08 -0.35088732E-08 -0.61645463E-08 + -0.10775525E-07 -0.16052351E-07 -0.22438258E-07 -0.26798967E-07 -0.25495956E-07 + -0.24547023E-07 -0.21844291E-07 -0.21472024E-07 -0.23866301E-07 -0.21697795E-07 + -0.15224442E-07 -0.81240397E-08 -0.10022618E-07 -0.10822266E-07 -0.12219099E-07 + -0.20781103E-08 -0.51199804E-08 -0.10447581E-07 -0.11393599E-07 -0.53703448E-08 + 0.26016590E-08 0.99082853E-08 0.11828029E-07 0.95701037E-08 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.75517170E-08 0.31877046E-07 0.16853902E-07 -0.46095559E-07 -0.12562769E-06 + -0.25124723E-06 -0.45614768E-06 -0.60359034E-06 -0.45181851E-06 -0.20289082E-06 + -0.90471965E-07 -0.72076755E-07 -0.33863260E-09 -0.10305042E-08 -0.26108081E-08 + -0.56418903E-08 -0.15388670E-07 -0.39432863E-07 -0.61527759E-07 -0.13228898E-06 + -0.24454486E-06 -0.48214602E-06 -0.63949593E-06 -0.92929240E-06 -0.11896694E-05 + -0.11892540E-05 -0.11181949E-05 -0.95651307E-06 -0.12372427E-05 -0.71615841E-06 + -0.13910092E-06 -0.20828683E-05 -0.13509217E-05 -0.18076791E-05 -0.14875234E-05 + 0.41461620E-08 -0.67204543E-06 -0.33778330E-05 0.18881475E-06 -0.85255805E-06 + -0.50385243E-06 -0.69584806E-06 -0.80115484E-06 -0.26529310E-06 0.19584811E-07 + 0.38754246E-06 0.64025077E-07 0.14778382E-06 0.25292172E-07 0.38903930E-07 + 0.26303933E-06 0.13786300E-06 0.13413972E-07 -0.10664826E-06 -0.32442177E-06 + -0.60706731E-06 -0.84479131E-06 -0.98637245E-06 -0.96515258E-06 -0.99891782E-06 + -0.94247694E-06 -0.50497634E-06 -0.15142847E-06 0.11259968E-07 0.39825937E-08 + 0.45219459E-07 0.55444072E-07 0.93392462E-07 0.24349708E-06 0.55643425E-06 + 0.16654134E-07 -0.76406248E-06 -0.67450380E-05 -0.15303331E-04 -0.19508755E-04 + -0.52403106E-05 0.21650506E-05 -0.91139744E-05 -0.19322301E-04 -0.26145728E-04 + -0.27850235E-04 -0.40000199E-04 -0.29321926E-04 -0.33247837E-04 -0.11502240E-03 + -0.71169133E-04 -0.45596504E-04 -0.47932695E-04 0.66017080E-04 0.27767287E-04 + -0.29797081E-04 0.83762007E-04 0.52441773E-04 0.44898745E-04 0.45758467E-04 + 0.38942154E-04 0.57215664E-04 0.30694487E-04 0.38315437E-04 0.32336576E-04 + 0.32085995E-04 0.24757389E-04 0.25118664E-04 0.23093412E-04 0.75332429E-05 + 0.51075092E-05 0.37720773E-05 -0.91519532E-07 -0.25948376E-05 -0.46284379E-05 + -0.41694519E-05 -0.34631886E-05 -0.43385094E-05 -0.52550528E-05 -0.50083334E-05 + -0.30406720E-05 -0.10700739E-05 -0.13304353E-05 -0.11547060E-09 -0.34181870E-09 + -0.11466697E-08 -0.36515164E-08 -0.10537958E-07 -0.39615884E-07 -0.60121959E-07 + -0.87458926E-07 -0.16311662E-06 -0.34720846E-06 -0.60141465E-06 -0.10082275E-05 + -0.14474401E-05 -0.18637287E-05 -0.22073353E-05 -0.18872377E-05 -0.17415246E-05 + -0.15235843E-05 -0.13643429E-05 -0.13499221E-05 -0.13265940E-05 -0.11342467E-05 + -0.81417770E-06 -0.60269305E-06 -0.50161317E-06 -0.57197237E-06 -0.33094013E-06 + -0.30172429E-06 -0.19737722E-06 -0.14715236E-06 -0.10292528E-06 -0.81391149E-07 + -0.11917756E-06 -0.11155667E-06 -0.14111270E-06 -0.15161903E-06 -0.17002168E-06 + -0.16981873E-06 -0.16110187E-06 -0.18596993E-06 -0.20207857E-06 -0.21674963E-06 + -0.22785681E-06 -0.22485124E-06 -0.21245497E-06 -0.20142301E-06 -0.19596991E-06 + -0.18367853E-06 -0.15547045E-06 -0.10973489E-06 -0.75206050E-07 -0.57136390E-07 + -0.47889971E-07 -0.54575370E-10 -0.81504717E-10 -0.28681927E-09 -0.83343545E-09 + -0.21294763E-08 -0.59260129E-08 -0.10093990E-07 -0.19662233E-07 -0.37198514E-07 + -0.74754534E-07 -0.12631268E-06 -0.20990413E-06 -0.30568154E-06 -0.40313443E-06 + -0.49432779E-06 -0.48867892E-06 -0.49877277E-06 -0.47547219E-06 -0.45326896E-06 + -0.46118654E-06 -0.41976445E-06 -0.39008322E-06 -0.30879740E-06 -0.22788943E-06 + -0.18489964E-06 -0.22830954E-06 -0.13026156E-06 -0.14274265E-06 -0.11995545E-06 + -0.10917216E-06 -0.10166976E-06 -0.84170753E-07 -0.73418229E-07 -0.40350878E-07 + -0.18137555E-07 0.19963625E-07 0.45321215E-07 0.50519279E-07 0.74284443E-07 + 0.76457408E-07 0.11047778E-06 0.11982444E-06 0.10238660E-06 0.82021720E-07 + 0.61790379E-07 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.16452988E-07 + 0.11018807E-07 0.12163857E-07 0.10702589E-07 0.75566970E-08 0.65192722E-10 + -0.37210478E-09 -0.85930576E-09 -0.87775356E-09 -0.28999006E-08 -0.89720672E-08 + -0.14914489E-08 -0.84237654E-08 -0.35581670E-07 -0.18358294E-06 -0.23715633E-06 + -0.41098318E-06 -0.60697316E-06 -0.45430330E-06 -0.82223405E-07 -0.66804900E-07 + -0.65108116E-06 -0.18503490E-06 0.24246296E-06 -0.28908189E-05 -0.11494176E-05 + -0.11994873E-05 -0.42590085E-06 0.23765634E-05 0.24626426E-05 -0.11269146E-05 + 0.29879496E-05 0.26264520E-05 0.53679099E-05 0.61700379E-05 0.30315482E-05 + 0.31381447E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.51230131E-11 0.14562372E-09 0.58741014E-09 + -0.34478672E-08 0.53306518E-08 0.16852318E-07 0.47683076E-07 0.52403242E-07 + -0.53755136E-07 0.23534783E-07 0.43223654E-07 0.14047280E-06 0.62797471E-08 + 0.39389339E-06 -0.76850959E-07 -0.73758672E-06 -0.45616689E-06 0.13696296E-06 + 0.33302439E-06 0.35444644E-06 0.38169374E-06 0.46952624E-06 0.43750350E-06 + 0.88911380E-09 -0.19622938E-06 -0.54753514E-07 0.16570772E-07 0.12725688E-06 + 0.79236065E-07 0.35053974E-07 -0.22505990E-07 0.67657864E-07 0.64262431E-07 + 0.74426344E-07 0.12387983E-06 0.10382399E-06 0.92250359E-07 0.27898995E-06 + 0.26049666E-06 0.15216242E-06 0.51127640E-07 0.62346292E-07 0.80818774E-07 + -0.12398660E-06 -0.22952896E-06 -0.95532754E-07 0.31783481E-07 0.92802966E-07 + 0.15797895E-07 -0.95098483E-07 -0.14576750E-06 -0.14733785E-06 -0.12628371E-06 + -0.19213076E-10 0.61127536E-09 0.14231161E-08 -0.55843833E-09 0.22524908E-07 + 0.82038919E-07 0.39512074E-06 0.27088208E-06 -0.24289101E-06 0.21257979E-06 + 0.17454076E-06 0.67433498E-06 0.67196156E-06 0.28868332E-05 -0.25591363E-06 + -0.37067007E-05 -0.12695161E-05 0.21280357E-05 0.28659551E-05 0.35906727E-05 + 0.37824844E-05 0.31351895E-05 0.24216960E-05 0.62471793E-07 -0.12446314E-05 + 0.25244030E-06 0.91514098E-06 0.19646872E-05 0.57273966E-06 0.95206185E-07 + -0.43935623E-06 -0.36383465E-06 0.95540551E-07 -0.34495717E-06 0.57481626E-07 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.19060309E-10 -0.11870874E-09 + 0.14660787E-09 -0.63475997E-09 0.26454274E-08 0.14773144E-07 0.88428149E-08 + 0.13676338E-07 0.15219939E-07 0.31348196E-07 0.23605803E-07 0.48633614E-07 + -0.18260160E-08 0.30324805E-07 0.12926969E-07 -0.12736861E-06 -0.62634490E-07 + 0.12059423E-07 0.33580361E-07 0.59295808E-07 0.68230062E-07 0.69906522E-07 + 0.63155266E-07 0.78948333E-08 -0.96632361E-08 0.10885936E-07 0.38417772E-07 + 0.51659373E-07 0.43753517E-07 0.26574653E-08 -0.14228494E-07 -0.20293797E-07 + 0.62422076E-08 -0.29122433E-07 -0.19499468E-07 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.41365316E-05 + -0.44921239E-05 -0.32721737E-05 -0.14486665E-05 0.90381201E-07 0.13921638E-05 + 0.26864791E-05 0.43608863E-05 0.76696446E-05 0.10618559E-04 0.12117286E-04 + 0.11224531E-04 -0.21282176E-09 0.26543793E-07 0.33591218E-07 -0.83246086E-07 + 0.12651654E-06 0.75117125E-06 0.58676502E-05 0.22645890E-05 -0.91590082E-05 + 0.15911899E-05 0.17637301E-05 0.28641054E-05 -0.16489916E-04 -0.20393584E-04 + -0.23023459E-04 -0.45706207E-04 -0.28510470E-04 -0.10153008E-04 -0.70638167E-05 + -0.10714736E-04 -0.14491475E-04 -0.11722207E-04 -0.94855433E-05 -0.16355457E-05 + -0.14685062E-04 -0.17031214E-04 -0.19695607E-06 0.60577169E-06 -0.17296292E-05 + 0.19003146E-06 -0.14708067E-05 -0.75667064E-06 -0.36771232E-06 -0.49165292E-06 + 0.10213100E-05 -0.12801773E-06 -0.85304953E-07 -0.49433629E-06 -0.30697433E-05 + -0.25140451E-05 0.24916393E-06 0.47699349E-05 0.96024670E-05 0.14416599E-04 + 0.18193448E-04 0.20352700E-04 0.20517237E-04 0.20158825E-04 0.20692355E-04 + 0.17351395E-04 0.17750646E-04 0.17522675E-04 0.14004778E-04 -0.86845830E-07 + 0.28912167E-05 0.32727213E-05 -0.70412431E-05 0.16737605E-04 0.32854489E-04 + 0.20718410E-03 -0.34079234E-03 -0.12735075E-02 -0.79263113E-03 -0.10491292E-02 + 0.35090322E-03 -0.44774974E-03 0.31852331E-04 0.21686726E-04 -0.56319566E-03 + -0.54575603E-03 -0.13548338E-02 -0.13727911E-02 -0.22286088E-02 -0.22252799E-02 + -0.13005355E-02 -0.13713882E-02 -0.38211215E-03 -0.67007842E-03 -0.11510039E-02 + -0.81053660E-03 -0.64404523E-03 -0.51280955E-03 -0.27055318E-03 -0.29495367E-03 + -0.19348432E-03 -0.20993789E-03 -0.24842525E-03 -0.19119061E-03 -0.19961020E-03 + -0.17318535E-03 -0.17299273E-03 -0.19567416E-03 -0.13732236E-03 -0.12250462E-03 + -0.11449715E-03 -0.10272496E-03 -0.94993813E-04 -0.68433345E-04 -0.87515321E-04 + -0.11428874E-03 -0.10101224E-03 0.45998290E-05 0.25892643E-04 0.46442364E-04 + 0.18430737E-04 0.20879518E-04 -0.11459633E-09 0.32150015E-08 0.11234718E-07 + 0.27357625E-07 0.28730695E-06 0.20567949E-05 -0.23420863E-05 0.27752567E-05 + 0.36218670E-05 0.80216069E-05 0.74322199E-05 0.80994586E-05 -0.10751006E-05 + -0.42597713E-05 -0.73349171E-06 -0.89729838E-05 -0.59691726E-05 -0.42942828E-05 + -0.31895453E-05 -0.86505626E-06 -0.19414723E-05 -0.27486912E-05 -0.17535569E-05 + -0.89706050E-06 -0.85326585E-06 -0.10532562E-05 -0.37649431E-06 -0.33378801E-06 + -0.27403154E-06 -0.11036220E-06 -0.15479019E-06 0.23070884E-07 0.73317365E-07 + 0.59739274E-07 0.18753448E-06 0.18576270E-06 0.20472010E-06 0.12815946E-06 + -0.39334413E-07 -0.43613420E-07 -0.36636065E-07 -0.73134397E-07 -0.43868039E-07 + 0.75390101E-07 0.10736943E-06 0.97084862E-07 0.26081677E-06 0.36199798E-06 + 0.40512185E-06 0.32834149E-06 0.92791573E-07 -0.71005254E-07 -0.28248267E-07 + 0.22527047E-09 0.33330681E-09 0.45849992E-08 -0.63178443E-08 0.22447873E-07 + 0.14748528E-06 0.17385598E-06 0.34808574E-06 0.21897344E-06 0.58035282E-06 + 0.29558144E-06 0.61192750E-06 -0.26391556E-06 -0.46893865E-06 0.32554168E-06 + -0.72060698E-06 -0.21882710E-06 0.58059140E-07 -0.28919928E-08 0.13248283E-06 + -0.72466483E-08 -0.22328180E-06 -0.14715779E-06 -0.38564167E-07 -0.15596924E-06 + -0.22178534E-06 0.90488292E-07 0.74104920E-07 -0.19096493E-08 0.25724540E-07 + -0.12537624E-07 -0.12641461E-07 0.35580171E-07 0.23487204E-08 -0.27665959E-08 + -0.17631535E-06 -0.41111748E-06 -0.73184677E-06 -0.10540282E-05 -0.98187386E-06 + -0.13342265E-05 -0.16122435E-05 -0.14766208E-05 -0.96425968E-06 -0.63216544E-06 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.20555978E-06 0.69165105E-07 + -0.12610079E-06 -0.32962892E-06 -0.27249158E-06 -0.13860699E-08 0.39976393E-07 + 0.46804004E-07 -0.10690494E-06 0.11603188E-06 0.39104670E-06 0.61361521E-05 + 0.96292080E-06 -0.15792886E-04 -0.50730020E-05 -0.56344732E-05 -0.34190362E-05 + -0.33725619E-04 -0.45639298E-04 -0.53153431E-04 -0.77535238E-04 -0.65014906E-04 + -0.53212160E-04 -0.54342820E-04 -0.63242211E-04 -0.64672125E-04 -0.46195341E-04 + -0.31871116E-04 -0.10877336E-04 -0.28456284E-04 -0.39536635E-04 -0.24958432E-04 + -0.26630465E-04 -0.32619237E-04 -0.33988863E-04 -0.20983718E-04 -0.11801452E-04 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.20181671E-11 0.49227236E-11 -0.14127172E-10 -0.15902839E-10 + 0.37912943E-10 0.18161730E-09 0.14734289E-09 -0.45924688E-09 -0.57547389E-09 + -0.10867990E-08 0.32631467E-10 0.58607521E-08 0.13886282E-07 0.31382348E-07 + 0.26573856E-07 0.20625282E-07 0.18556201E-07 -0.34674807E-08 0.10707821E-08 + 0.28730801E-07 0.31607151E-07 -0.44610611E-07 -0.67664346E-07 -0.92547191E-08 + 0.29458868E-07 0.57094319E-07 0.19280869E-07 -0.15327344E-06 -0.22492425E-06 + -0.18425158E-06 -0.13929244E-06 -0.59904578E-07 0.14325611E-07 0.19506600E-07 + 0.25906211E-07 0.18568654E-07 0.10770915E-07 0.27334791E-07 0.29053875E-07 + 0.11202611E-07 0.78888984E-09 -0.75932476E-08 -0.57639141E-08 -0.18726586E-07 + -0.22108343E-07 -0.12207527E-07 0.11501226E-07 0.10263216E-07 -0.26071426E-08 + -0.71564440E-09 0.45021192E-08 0.37886445E-08 0.35433523E-08 -0.20228261E-11 + -0.51990523E-11 -0.11945656E-10 -0.17491753E-09 -0.15032904E-10 0.54740833E-09 + 0.86865016E-09 -0.15609580E-08 -0.42165740E-08 -0.11651873E-07 -0.14613143E-07 + 0.93379827E-09 0.76249506E-08 0.67346041E-07 0.47014557E-07 0.10726558E-07 + -0.13376197E-07 -0.84431837E-07 -0.44426486E-07 0.51524210E-07 0.63920635E-07 + -0.35477317E-06 -0.44884127E-06 -0.15112916E-06 0.26109744E-06 0.42892625E-06 + 0.56566589E-07 -0.71034615E-06 -0.19906997E-06 0.25765487E-06 0.24916776E-06 + 0.15602954E-06 0.49091592E-07 -0.55916179E-08 0.90658565E-08 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.10967763E-11 -0.57815816E-12 0.12582447E-10 + -0.67260659E-11 -0.90052239E-11 0.40449927E-10 -0.65967899E-11 -0.15324894E-09 + -0.20051522E-09 -0.71265962E-10 0.40264658E-09 0.23563686E-08 0.51465348E-08 + 0.93466794E-08 0.11496028E-07 0.82320417E-08 0.75689269E-08 0.47413984E-08 + 0.41724800E-08 0.95508311E-08 0.91411383E-08 0.59045747E-09 -0.80596105E-08 + -0.12303246E-08 0.46000998E-08 0.72213663E-08 -0.60608847E-08 -0.15867946E-08 + 0.74996262E-08 0.14944775E-07 0.12226847E-07 0.55385197E-08 -0.18991945E-08 + -0.51107287E-08 -0.38748096E-08 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.12185030E-07 -0.73213396E-07 + -0.11996665E-06 -0.10573601E-06 -0.77163512E-07 0.24753641E-07 0.25218804E-06 + 0.43751981E-06 0.28684208E-06 -0.76473609E-08 -0.13133724E-06 -0.12038543E-06 + -0.10784383E-09 0.16031396E-09 0.40595078E-09 -0.20587328E-10 0.15103807E-08 + 0.95536061E-08 0.45463657E-08 -0.60541421E-08 0.19676804E-07 -0.12676221E-07 + -0.19981181E-06 -0.40850553E-06 -0.65738431E-06 -0.12131278E-05 -0.17487990E-05 + -0.22062300E-05 -0.18780869E-05 -0.27711903E-05 -0.35456231E-05 -0.47320036E-06 + -0.10274537E-05 -0.78916142E-06 -0.51638975E-06 -0.25319756E-05 -0.10825731E-05 + 0.29320640E-05 -0.12463434E-05 -0.16105958E-06 -0.75979883E-06 0.22629909E-06 + 0.60749039E-06 0.19047156E-06 -0.36475403E-06 -0.86361882E-06 -0.51887867E-06 + -0.63685201E-06 -0.59903171E-06 -0.70434782E-06 -0.10589795E-05 -0.10594486E-05 + -0.10333988E-05 -0.10284266E-05 -0.93816234E-06 -0.70840051E-06 -0.47431774E-06 + -0.31582715E-06 -0.25958273E-06 -0.92791574E-07 -0.26550510E-07 -0.37864083E-06 + -0.68552486E-06 -0.73874157E-06 -0.58007087E-06 -0.39815946E-08 0.48750714E-07 + 0.11823620E-06 0.22363736E-06 0.43723873E-06 0.22710068E-05 0.41632384E-05 + 0.10755997E-04 0.20552357E-04 0.21603100E-04 0.15988570E-07 -0.86989898E-05 + 0.14094313E-04 0.35552998E-04 0.49708807E-04 0.57169285E-04 0.78250872E-04 + 0.56242135E-04 0.63299647E-04 0.18905373E-03 0.14127499E-03 0.82945197E-04 + 0.96979136E-04 -0.78347373E-04 -0.17241313E-04 0.68058312E-04 -0.44450085E-04 + -0.24772665E-04 -0.26246601E-04 -0.76440721E-05 0.11654476E-05 -0.14269960E-04 + 0.24530410E-05 -0.96389572E-05 -0.78359710E-05 -0.11303300E-04 -0.70174075E-05 + -0.94992137E-05 -0.90606803E-05 0.39909312E-05 0.48022645E-05 0.61696860E-05 + 0.81300030E-05 0.10721919E-04 0.11907095E-04 0.11462965E-04 0.96377769E-05 + 0.96741496E-05 0.98644275E-05 0.84648492E-05 0.48123844E-05 0.28110900E-05 + 0.28304568E-05 0.25933175E-10 0.64763954E-10 0.28034947E-09 0.84131096E-09 + 0.92718692E-09 0.10495609E-07 -0.12952603E-08 -0.43639922E-07 -0.41121037E-07 + 0.71101008E-08 0.97704736E-07 0.35476032E-06 0.69934871E-06 0.10522323E-05 + 0.13130768E-05 0.89069726E-06 0.77743988E-06 0.61755042E-06 0.47875346E-06 + 0.57626866E-06 0.68998646E-06 0.55730270E-06 0.31065168E-06 0.16021611E-06 + 0.12480248E-06 0.25975034E-06 0.17004829E-08 0.70547172E-08 -0.56080259E-07 + -0.40303388E-07 -0.60067583E-07 -0.67128627E-07 -0.36468761E-07 -0.44989131E-07 + -0.14537627E-07 -0.74528315E-08 0.57741958E-08 -0.86911999E-09 -0.16006492E-07 + 0.76922989E-08 0.26156254E-07 0.42242565E-07 0.52366262E-07 0.54233976E-07 + 0.50512477E-07 0.50680463E-07 0.55808778E-07 0.57315908E-07 0.46423362E-07 + 0.17936166E-07 -0.15684451E-08 -0.55103041E-08 -0.27606667E-08 0.31576200E-10 + -0.57326930E-10 0.41066662E-10 0.74674432E-10 0.94647540E-10 0.77731054E-09 + -0.50848924E-10 -0.23798507E-08 -0.18247474E-08 0.56028507E-10 0.44287166E-08 + 0.27301852E-07 0.59655541E-07 0.95485139E-07 0.13026779E-06 0.80432469E-07 + 0.87757545E-07 0.66827414E-07 0.47237850E-07 0.98065838E-07 0.96014819E-07 + 0.98953753E-07 0.63017436E-07 0.91293314E-08 -0.34126625E-08 0.75731069E-07 + -0.20878100E-07 0.20512931E-07 0.24500124E-07 0.52539900E-07 0.70086305E-07 + 0.69712302E-07 0.70456226E-07 0.45822969E-07 0.29616877E-07 -0.18734896E-08 + -0.21104188E-07 -0.20179688E-07 -0.38737259E-07 -0.39565652E-07 -0.77456985E-07 + -0.82643107E-07 -0.63491471E-07 -0.43650068E-07 -0.26146752E-07 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.51141421E-08 0.50752599E-08 -0.27570528E-08 + -0.40017024E-08 -0.21622209E-08 -0.15173092E-09 0.46901333E-09 0.69060529E-09 + 0.49447944E-09 0.20821272E-08 0.12529934E-07 0.92228357E-08 0.99021619E-09 + 0.72986139E-07 0.16640779E-06 0.16239868E-06 0.15647771E-06 0.19060933E-06 + -0.22200560E-06 -0.79478062E-06 -0.78027725E-06 0.16161675E-06 -0.70968409E-06 + -0.12367520E-05 0.34669437E-05 0.14735701E-05 0.74117385E-06 0.50879304E-06 + -0.35039812E-05 -0.33854650E-05 0.23241232E-05 -0.17303145E-05 -0.10383394E-05 + -0.39709860E-05 -0.47078842E-05 -0.34869943E-05 -0.28599828E-05 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.32557254E-11 0.17215515E-10 -0.87081342E-10 -0.11738976E-09 0.18984888E-08 + 0.52636043E-08 0.10010167E-07 -0.37602322E-07 -0.86395730E-07 -0.20958622E-07 + 0.30103765E-07 0.36409411E-07 0.77587669E-07 0.19517140E-06 0.17465090E-06 + -0.38983604E-06 -0.59630507E-06 -0.13243007E-05 -0.46169582E-06 0.34061732E-06 + 0.67416966E-06 -0.16592230E-06 0.25962440E-07 -0.17126534E-06 0.10265728E-06 + 0.53091084E-07 0.77880218E-07 -0.57268293E-07 -0.11409303E-06 -0.20246067E-06 + -0.24445956E-06 -0.15669349E-06 -0.69907658E-07 -0.80999774E-07 -0.72693056E-07 + -0.95484970E-07 -0.49512007E-07 0.49631856E-07 0.20515886E-06 0.44017718E-06 + 0.77846870E-06 0.73968785E-06 0.87538235E-06 0.11918214E-05 0.69720567E-06 + -0.22210545E-06 -0.42290853E-06 -0.27283300E-06 0.83459172E-07 0.16975414E-06 + 0.32558638E-06 0.28342742E-06 0.23217178E-06 -0.56654172E-10 0.26128694E-10 + -0.16408806E-09 -0.15194750E-08 0.53007076E-08 0.40842055E-07 0.13374811E-06 + 0.45557002E-07 -0.43388049E-07 0.50757733E-06 0.10564507E-05 0.13202537E-05 + 0.15401177E-05 0.30374823E-05 0.38305590E-05 0.25072668E-06 -0.14118129E-05 + -0.49268634E-05 -0.14268265E-05 0.14015407E-05 0.34925561E-05 -0.89694821E-06 + 0.40891377E-06 -0.10471334E-05 0.72376839E-06 0.54342055E-06 0.80154099E-06 + 0.37988112E-06 0.59089000E-06 0.31265780E-06 0.44874256E-07 -0.14854443E-06 + -0.28462611E-06 -0.15398630E-06 -0.16239589E-06 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.53264107E-11 0.44574631E-10 0.86992867E-10 -0.74806811E-10 + -0.22176309E-09 0.11229740E-08 -0.36986872E-08 -0.26432526E-07 -0.50132367E-07 + -0.59479119E-07 -0.35688382E-07 -0.46874171E-07 -0.31000243E-07 -0.14800143E-07 + -0.32685603E-07 -0.16475556E-06 -0.28417733E-06 -0.30809692E-06 -0.21140318E-06 + -0.10074138E-06 -0.15559554E-07 -0.73079998E-07 -0.30400305E-07 -0.35457290E-07 + 0.10565854E-07 0.20884396E-07 0.20527613E-07 0.22378297E-07 0.41853011E-07 + 0.51423413E-07 0.41438794E-07 0.27056231E-07 0.82919807E-08 0.11584547E-07 + 0.18418203E-07 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.21631535E-05 -0.18764273E-05 -0.79920787E-05 + -0.12927474E-04 -0.17623921E-04 -0.20890314E-04 -0.22798359E-04 -0.26104409E-04 + -0.27139913E-04 -0.23152190E-04 -0.20371558E-04 -0.16166665E-04 -0.19445106E-08 + -0.13064847E-08 -0.30726973E-09 -0.64976555E-08 0.27013028E-07 0.20993151E-06 + 0.13932851E-05 0.91818038E-06 -0.38077194E-05 -0.27277565E-05 0.57859194E-05 + -0.34041250E-05 0.54190187E-05 -0.25645966E-05 -0.51248408E-05 0.17614106E-04 + 0.69326265E-05 0.87767147E-05 -0.32841997E-05 0.11703607E-04 0.82539955E-05 + 0.28064751E-05 0.75772313E-05 -0.38182398E-05 0.29821354E-05 0.12175235E-04 + -0.37074742E-06 -0.19371587E-06 0.52826962E-06 0.56507958E-06 0.15588018E-05 + -0.64904086E-06 -0.11495094E-05 -0.15552992E-05 -0.11798320E-05 -0.20971423E-05 + -0.23289776E-05 -0.34512561E-05 -0.52843616E-05 -0.95695784E-05 -0.19344491E-04 + -0.34807929E-04 -0.40991795E-04 -0.47226191E-04 -0.48000787E-04 -0.46890779E-04 + -0.46679281E-04 -0.43541467E-04 -0.40435443E-04 -0.36382829E-04 -0.27163702E-04 + -0.23142188E-04 -0.17428776E-04 -0.21945945E-06 -0.17377185E-06 -0.11542332E-06 + -0.64177667E-06 -0.30791677E-05 -0.11225562E-04 -0.88797653E-05 0.21827622E-04 + -0.37134526E-03 -0.98537204E-03 -0.46023404E-03 -0.48599084E-03 -0.11691371E-03 + -0.69524017E-03 -0.10135304E-02 -0.56126486E-03 -0.72932255E-03 -0.35957594E-03 + 0.17495394E-03 0.99336103E-03 0.49027961E-03 -0.23358802E-03 0.14635220E-03 + -0.30815397E-03 -0.27113427E-04 0.25870436E-03 -0.52292809E-04 -0.64011152E-04 + -0.17639075E-04 -0.54095347E-04 -0.43728688E-04 -0.13789182E-03 -0.70354145E-04 + -0.67342658E-04 -0.64455032E-04 -0.10223846E-03 -0.11706186E-03 -0.18096365E-03 + -0.22395231E-03 -0.25631490E-03 -0.33649466E-03 -0.42786588E-03 -0.27866521E-03 + -0.23594878E-03 -0.12278204E-03 -0.72498421E-04 -0.72721155E-04 0.84383642E-06 + 0.47481228E-04 0.51408173E-04 0.39668670E-05 -0.50190012E-04 -0.13332642E-04 + -0.26829363E-09 -0.47482046E-09 -0.18619581E-08 -0.16022726E-07 -0.78383703E-07 + -0.12036848E-06 -0.30451743E-05 -0.89214010E-05 -0.15375085E-04 -0.21190559E-04 + -0.15719875E-04 -0.12428611E-04 -0.90319819E-05 -0.76626539E-05 -0.10930868E-04 + -0.20739115E-04 -0.27107915E-04 -0.25218342E-04 -0.22737694E-04 -0.14384705E-04 + -0.39488475E-05 -0.14524766E-05 -0.58127592E-06 -0.84943358E-06 -0.33346905E-06 + 0.23452039E-06 -0.26965860E-06 -0.18220713E-06 -0.14890600E-06 -0.16147825E-06 + -0.21582522E-06 -0.33672028E-06 -0.25655369E-06 -0.26028935E-06 -0.22060831E-06 + -0.23290815E-06 -0.16038431E-06 -0.13516030E-06 -0.82512882E-07 0.15503020E-07 + 0.13312820E-06 -0.32062646E-07 -0.24882615E-06 -0.61463527E-06 -0.66262075E-06 + -0.69969333E-06 -0.88916808E-06 -0.83207601E-06 -0.81313095E-06 -0.76194370E-06 + -0.65997347E-06 -0.61528919E-06 -0.41862285E-06 -0.57125363E-10 -0.13919879E-09 + -0.30684637E-09 -0.45459838E-09 -0.67431970E-09 0.15764943E-07 -0.40942103E-07 + -0.33612179E-06 -0.72687403E-06 -0.91644849E-06 -0.67548882E-06 -0.97349553E-06 + -0.82544267E-06 -0.90136348E-06 -0.14427733E-05 -0.23246348E-05 -0.36230207E-05 + -0.27362162E-05 -0.25540019E-05 -0.17275517E-05 -0.69216689E-06 -0.25141092E-06 + -0.43062956E-07 -0.23727503E-06 -0.65660290E-07 0.17612601E-06 -0.52275850E-07 + -0.96674358E-08 0.27050927E-07 0.52706943E-07 0.11675505E-06 0.10591921E-06 + 0.10738253E-06 0.93535726E-07 0.12757179E-06 0.18216789E-06 0.32504009E-06 + 0.55693745E-06 0.69899662E-06 0.84082279E-06 0.90537757E-06 0.18647776E-06 + -0.93957663E-07 -0.23829818E-06 -0.31720845E-06 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.18330237E-06 -0.98081087E-07 -0.52814378E-07 -0.83750393E-07 + -0.41690720E-07 -0.28156179E-08 -0.17512970E-08 -0.85571021E-09 -0.65635348E-08 + 0.18695827E-07 0.53552030E-07 0.14316668E-05 0.11656590E-05 -0.54901736E-05 + -0.55805432E-05 0.64895511E-05 -0.63876781E-05 0.32693916E-05 -0.18035802E-04 + -0.29364931E-04 0.15650106E-04 0.18259085E-04 0.27655373E-04 0.22420179E-04 + 0.48238431E-04 0.29788816E-04 0.15903969E-04 0.20694192E-04 0.33990005E-05 + 0.14520700E-04 0.31258720E-04 0.17119037E-04 0.16131720E-04 0.14425711E-04 + 0.65623282E-05 0.40218473E-05 -0.39773612E-05 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.31016459E-10 + 0.40798194E-08 0.27372136E-08 -0.75586406E-08 0.21977100E-07 0.15937189E-06 + 0.42549739E-06 0.55817255E-06 -0.84639969E-06 0.93287942E-06 -0.86145454E-06 + -0.55244604E-06 0.40967952E-07 0.10764213E-05 -0.23873539E-06 -0.11703225E-06 + 0.53163904E-06 0.11649289E-05 -0.65744970E-06 -0.74311582E-06 -0.15421963E-05 + 0.25009884E-06 -0.89041520E-06 0.68038224E-06 -0.84889164E-06 -0.18352776E-05 + -0.33442067E-05 -0.34062858E-05 -0.22469588E-05 -0.10298707E-05 -0.54649473E-06 + -0.41568487E-06 -0.13820687E-06 -0.16207380E-06 -0.19397475E-06 -0.35425130E-06 + -0.62182329E-06 -0.67788329E-06 -0.10078891E-05 -0.13727316E-05 -0.21070747E-05 + -0.21362005E-05 -0.16543658E-05 -0.18243110E-05 -0.23062341E-05 -0.12781029E-05 + -0.50269457E-06 -0.50094185E-06 -0.61931141E-06 -0.15059147E-06 -0.66048288E-06 + -0.91434817E-06 -0.78812519E-06 0.30013128E-09 0.11449637E-07 0.13291137E-07 + -0.26508705E-07 0.13176631E-06 0.77853872E-06 0.28515553E-05 0.25039703E-05 + -0.38154518E-05 0.91418247E-05 -0.38598324E-05 -0.69678871E-05 -0.85816254E-06 + 0.49675480E-05 0.40169394E-05 0.11243802E-04 0.15308282E-05 -0.23224795E-05 + -0.34304568E-05 -0.52969103E-05 -0.91045447E-05 0.40507915E-05 -0.60822266E-05 + 0.74254087E-05 -0.29831643E-05 -0.15630139E-04 -0.22734448E-04 -0.17598912E-04 + -0.75059965E-05 -0.45196233E-05 -0.27560689E-05 -0.37767205E-06 0.37184537E-06 + -0.79768696E-06 0.68124532E-07 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.35883343E-10 -0.11975759E-08 0.27762655E-08 0.98359600E-08 0.35328104E-08 + 0.10589155E-06 0.12085398E-06 0.12892192E-06 0.49902211E-07 0.32837269E-07 + -0.38760764E-06 -0.51097307E-07 0.75406612E-07 0.14881635E-06 0.35084274E-06 + 0.73338030E-07 0.43010517E-06 0.52602697E-06 0.20701046E-06 0.41917074E-06 + 0.72179832E-07 0.11221447E-06 -0.74020383E-07 -0.12289349E-06 -0.36001591E-06 + -0.39869599E-06 -0.46181491E-06 -0.21458642E-06 -0.23518791E-06 -0.12871625E-06 + -0.60443425E-07 -0.12358015E-07 -0.14828278E-08 -0.26830667E-07 0.37435775E-07 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.17827126E-04 0.27392923E-04 0.37827555E-04 0.46359004E-04 + 0.60396004E-04 0.68597671E-04 0.68924300E-04 0.72280597E-04 0.49079490E-04 + 0.16158232E-04 0.13869187E-05 -0.40238036E-05 0.70136501E-08 0.46176891E-06 + 0.40576575E-06 -0.23888105E-06 0.13977653E-05 0.76594657E-05 0.39890358E-04 + 0.31024376E-04 -0.10432848E-03 0.33159706E-04 0.45331346E-04 0.36690491E-04 + -0.41237997E-05 -0.13318247E-03 -0.13643091E-04 -0.25547390E-03 -0.77386346E-04 + -0.86442566E-04 -0.25502966E-03 -0.57336499E-04 -0.84271492E-04 -0.71589598E-04 + -0.11089230E-04 -0.63454619E-04 0.21828742E-04 0.14682082E-04 -0.23061649E-04 + -0.23952043E-05 0.33822019E-05 0.19216875E-05 -0.25874259E-06 0.23138169E-06 + -0.22026812E-05 -0.10509402E-05 0.25457431E-05 0.24233476E-05 0.20506910E-05 + 0.57208436E-05 0.12793081E-04 0.25758552E-04 0.33227061E-04 0.47510089E-04 + 0.52658299E-04 0.48225099E-04 0.48373450E-04 0.44667660E-04 0.33850091E-04 + 0.22336917E-04 0.25481863E-04 0.21424237E-04 0.49300774E-05 -0.10986149E-05 + 0.36015790E-06 0.91543885E-06 0.45802255E-04 0.45840186E-04 0.22807831E-04 + 0.27930166E-03 0.54937835E-03 0.28513244E-02 0.10652994E-02 -0.61977249E-02 + -0.13837671E-01 -0.90234438E-02 -0.61875303E-02 -0.19667998E-01 -0.27303949E-01 + -0.18682789E-01 -0.25600583E-01 -0.97871760E-02 -0.85217201E-02 -0.19512679E-01 + -0.98756583E-02 -0.10964340E-01 -0.10979790E-01 -0.63312414E-02 -0.10602685E-01 + -0.63787589E-02 -0.50845572E-02 -0.47790707E-02 -0.23541123E-02 -0.15031981E-02 + -0.13676173E-02 -0.79164916E-03 -0.28472177E-03 -0.15916434E-03 -0.15588478E-03 + -0.84041477E-04 -0.11808999E-03 -0.89008532E-04 -0.92011004E-04 0.56204198E-04 + 0.24252109E-03 0.16844153E-03 0.44066153E-03 0.29958489E-03 0.25576413E-03 + 0.36320166E-03 0.10124085E-03 0.68116193E-04 0.38651898E-04 -0.10984800E-03 + -0.45565915E-04 0.56068580E-05 -0.84933147E-04 -0.41264207E-04 0.14652715E-08 + 0.56402101E-07 0.13501062E-06 0.30305852E-06 0.23217063E-05 0.13414987E-04 + -0.17043391E-05 0.33395079E-04 0.22355004E-04 -0.50956211E-04 -0.66814831E-04 + 0.10904839E-04 -0.46654333E-05 -0.23093015E-04 0.86466974E-05 -0.18900351E-04 + 0.14118724E-04 0.42018899E-04 0.40665742E-04 0.34679631E-04 0.80724677E-05 + 0.30281924E-05 0.28510092E-05 0.45212523E-06 0.42593091E-06 -0.70506119E-06 + -0.20133765E-05 -0.76789542E-06 -0.55076655E-06 -0.60778900E-06 -0.38937123E-06 + -0.30934968E-06 -0.29980631E-06 -0.44802065E-06 -0.47639572E-06 -0.65689518E-06 + -0.91696019E-06 -0.12511154E-05 -0.18235274E-05 -0.23792123E-05 -0.31700611E-05 + -0.31945162E-05 -0.30094089E-05 -0.26680941E-05 -0.20629926E-05 -0.20481801E-05 + -0.10266874E-05 -0.70042474E-06 -0.35097190E-06 0.20684299E-06 -0.10559160E-06 + -0.48175041E-06 -0.33702374E-06 -0.17570305E-09 0.11974856E-07 0.74045455E-07 + -0.72913432E-07 0.19765222E-06 0.11343886E-05 0.15303295E-05 0.34872574E-05 + 0.65829304E-06 0.13150128E-06 -0.52506657E-05 -0.12181801E-06 -0.72994088E-06 + -0.29146212E-05 0.70897575E-06 -0.71145247E-05 0.83752377E-06 0.50954506E-05 + 0.30572197E-05 0.53311524E-05 0.13789636E-05 0.13876352E-07 0.47224588E-06 + -0.35525188E-06 0.34751840E-06 0.63202115E-07 -0.53653498E-06 0.41845035E-07 + 0.24243236E-06 0.13615665E-06 -0.14505840E-07 -0.11037975E-06 -0.49499209E-06 + -0.61817740E-06 -0.55835591E-06 -0.69843079E-06 -0.11280230E-05 -0.13364665E-05 + -0.19374958E-05 -0.20469189E-05 -0.20963984E-05 -0.17115820E-05 -0.53411411E-06 + -0.72067463E-06 -0.10891652E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.13992181E-05 -0.11202084E-05 -0.48851345E-06 -0.38649499E-06 -0.29623151E-06 + 0.13050661E-07 0.64730400E-06 0.61248394E-06 -0.13271230E-06 0.15089180E-05 + 0.47282027E-05 0.43498452E-04 0.24785687E-04 -0.16810892E-03 -0.27323879E-04 + 0.57169924E-04 0.14770700E-03 0.10453148E-03 -0.97349192E-04 0.85731851E-04 + -0.26757999E-03 0.89020567E-04 0.38925259E-04 -0.27332473E-03 -0.11258127E-04 + -0.65325472E-04 -0.71055616E-04 0.12627938E-05 -0.10345035E-03 -0.42263656E-04 + -0.23618496E-04 -0.49186544E-04 -0.34872133E-04 -0.62196098E-04 -0.50102778E-04 + -0.87644936E-04 -0.45999423E-04 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.54887503E-10 -0.76868029E-10 + 0.21890743E-09 -0.73282833E-10 -0.64862572E-08 -0.12310750E-07 -0.22784326E-07 + 0.62957735E-07 0.14338524E-06 -0.17764378E-07 -0.12578971E-06 -0.13333859E-06 + -0.18396667E-06 -0.42004196E-06 -0.30389057E-06 0.88789594E-06 0.11197967E-05 + 0.26876331E-05 0.11285192E-05 -0.76442059E-06 -0.18623851E-05 0.76035606E-06 + 0.34418088E-06 0.10283733E-05 -0.37754577E-06 -0.38128785E-07 -0.33719924E-06 + 0.28817621E-06 0.58732427E-06 0.12683655E-05 0.16657611E-05 0.14969547E-05 + 0.12170896E-05 0.12645441E-05 0.12311397E-05 0.12573970E-05 0.92452714E-06 + 0.47228332E-06 -0.32787554E-08 -0.81019107E-06 -0.15639233E-05 -0.15457790E-05 + -0.20908636E-05 -0.28321514E-05 -0.14983790E-05 0.82398360E-06 0.14400134E-05 + 0.10098233E-05 0.29353519E-07 -0.29454554E-06 -0.99297126E-06 -0.93663824E-06 + -0.76987764E-06 0.30015921E-09 -0.24714539E-09 0.37791937E-09 0.33463474E-08 + -0.14238992E-07 -0.98406818E-07 -0.28489460E-06 -0.15578494E-06 -0.11628355E-06 + -0.14439455E-05 -0.27064511E-05 -0.33204748E-05 -0.38592070E-05 -0.73035224E-05 + -0.88874437E-05 -0.99178736E-06 0.18511387E-05 0.95551191E-05 0.34644062E-05 + -0.32621875E-05 -0.97674118E-05 0.46484609E-05 0.13543522E-05 0.60432257E-05 + -0.29375997E-05 -0.13245763E-05 -0.32541888E-05 -0.79018899E-06 -0.10211133E-05 + 0.75743053E-06 0.13795916E-05 0.13780305E-05 0.13309255E-05 0.27559323E-06 + 0.37969000E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.27130921E-10 + -0.17571555E-09 -0.43776883E-09 0.69457277E-10 0.13635393E-09 -0.30572406E-08 + 0.73751625E-08 0.49591862E-07 0.97346622E-07 0.10889867E-06 0.64229857E-07 + 0.91697827E-07 0.72847735E-07 0.51192790E-07 0.10571923E-06 0.38254019E-06 + 0.57440190E-06 0.67014922E-06 0.54039742E-06 0.33196317E-06 0.11261470E-06 + 0.34875770E-06 0.23309238E-06 0.23883242E-06 0.77672879E-08 -0.10561144E-07 + -0.28425564E-07 -0.21963039E-07 -0.11278130E-06 -0.15488367E-06 -0.14989340E-06 + -0.13469481E-06 -0.89510439E-07 -0.13682749E-06 -0.18272919E-06 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.29628050E-05 0.82650880E-05 0.25058491E-04 0.39748368E-04 0.55059062E-04 + 0.67584654E-04 0.75712406E-04 0.86934448E-04 0.92538168E-04 0.82945000E-04 + 0.73327602E-04 0.58031725E-04 0.10588319E-07 0.48178374E-08 0.32257557E-08 + 0.14212963E-07 -0.61590677E-07 -0.42784776E-06 -0.28268717E-05 -0.23743034E-05 + 0.77191038E-05 0.54597443E-05 -0.12584231E-04 0.23860739E-05 -0.15434858E-04 + 0.80690370E-06 0.52056398E-06 -0.55056966E-04 -0.38577716E-04 -0.15266832E-04 + -0.10422814E-05 -0.37696580E-04 -0.38543850E-04 -0.17322972E-05 -0.25393238E-04 + 0.14824592E-04 -0.13231996E-04 -0.51875139E-04 -0.48459617E-05 0.33140159E-05 + -0.21270831E-05 -0.35676701E-05 -0.72305652E-05 0.22023424E-05 0.51687792E-05 + 0.63792091E-05 0.57129402E-05 0.10398183E-04 0.12991074E-04 0.17415901E-04 + 0.24141791E-04 0.41340958E-04 0.69549887E-04 0.10802276E-03 0.12569869E-03 + 0.14510564E-03 0.15243177E-03 0.15436447E-03 0.15719244E-03 0.14978651E-03 + 0.14193982E-03 0.13208533E-03 0.10693037E-03 0.92803792E-04 0.70784510E-04 + 0.11683020E-05 0.71595212E-06 0.82549901E-06 0.16060672E-05 0.66127172E-05 + 0.29091115E-04 0.15668983E-05 -0.75616531E-04 0.81340709E-03 0.21952562E-02 + 0.94157774E-03 0.87347630E-03 0.18207231E-03 0.15174700E-02 0.21863772E-02 + 0.10051510E-02 0.11991431E-02 0.13788222E-02 -0.48263044E-03 -0.26177667E-02 + -0.19201685E-02 0.85746609E-03 -0.66304327E-03 0.85760588E-03 -0.28508445E-03 + -0.14910133E-02 -0.52134170E-03 0.18597554E-04 -0.18401834E-03 -0.57058847E-04 + -0.62599341E-04 0.35756388E-03 0.14644702E-03 0.11040695E-03 0.84834658E-04 + 0.25940198E-03 0.33968879E-03 0.52636332E-03 0.67097956E-03 0.88666190E-03 + 0.10546752E-02 0.13013738E-02 0.91593663E-03 0.83981566E-03 0.57382615E-03 + 0.37136304E-03 0.31840553E-03 0.93239329E-04 -0.59269823E-04 -0.63279330E-04 + 0.63388902E-04 0.22998850E-03 0.91395212E-04 0.11434187E-08 0.13719113E-08 + 0.57976402E-08 0.40009085E-07 0.16436054E-06 0.20549226E-06 0.60264066E-05 + 0.17512279E-04 0.31384672E-04 0.42829110E-04 0.32063149E-04 0.26267242E-04 + 0.21172727E-04 0.19988165E-04 0.29181306E-04 0.49315312E-04 0.57686458E-04 + 0.53132766E-04 0.52117955E-04 0.37588335E-04 0.12463107E-04 0.65615881E-05 + 0.33634777E-05 0.44204039E-05 0.19988417E-05 -0.62144955E-06 0.11783106E-05 + 0.10014434E-05 0.58021303E-06 0.56002948E-06 0.81700083E-06 0.13771095E-05 + 0.11186681E-05 0.99425439E-06 0.77498086E-06 0.81414417E-06 0.57440783E-06 + 0.34889176E-06 0.87907197E-07 -0.14485880E-07 -0.25212542E-06 0.36623785E-06 + 0.84550193E-06 0.16285878E-05 0.16911508E-05 0.15941242E-05 0.20773564E-05 + 0.19250514E-05 0.19208483E-05 0.19446327E-05 0.18063859E-05 0.17515117E-05 + 0.11716180E-05 0.29197243E-09 0.52090200E-09 0.79655688E-09 0.93968797E-09 + -0.54109858E-09 -0.40517122E-07 0.81002619E-07 0.63614426E-06 0.14799137E-05 + 0.17645469E-05 0.13776144E-05 0.20420937E-05 0.20023054E-05 0.23910371E-05 + 0.36736916E-05 0.53841683E-05 0.73563849E-05 0.60570228E-05 0.62407069E-05 + 0.46986916E-05 0.20614097E-05 0.12991525E-05 0.48311977E-06 0.11994179E-05 + 0.43757698E-06 -0.59866252E-06 0.19933442E-06 0.15644314E-06 -0.88006495E-07 + -0.27966526E-06 -0.60135884E-06 -0.61573032E-06 -0.69950000E-06 -0.81711694E-06 + -0.10864036E-05 -0.14547055E-05 -0.20767568E-05 -0.28153417E-05 -0.32803315E-05 + -0.37602789E-05 -0.40376289E-05 -0.21171650E-05 -0.13875399E-05 -0.77977648E-06 + -0.22678304E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.10488744E-06 + 0.37683661E-07 -0.58984648E-07 0.70981985E-07 -0.28948843E-07 0.15105537E-07 + 0.69021374E-08 0.79726315E-08 0.15367039E-07 -0.41187040E-07 -0.76036773E-08 + -0.28878818E-05 -0.28636332E-05 0.11390686E-04 0.13030606E-04 -0.13216871E-04 + 0.66445306E-05 -0.14982441E-04 0.25888068E-04 0.35809990E-04 -0.78564264E-04 + -0.97003248E-04 -0.80706163E-04 -0.96903242E-04 -0.16366694E-03 -0.13618569E-03 + -0.73194432E-04 -0.11134950E-03 -0.62284575E-04 -0.12244484E-03 -0.20882250E-03 + -0.17518944E-03 -0.17478955E-03 -0.18923006E-03 -0.13840660E-03 -0.84919364E-04 + -0.83240499E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.75374480E-10 -0.82515130E-10 -0.27437006E-08 + 0.53464139E-08 0.91095008E-08 -0.59551654E-07 -0.16998927E-06 0.79802984E-07 + 0.93763185E-07 0.43840751E-06 -0.48792824E-06 0.59439901E-08 0.15186765E-05 + 0.29890630E-05 0.24144294E-05 0.30397605E-05 0.23157975E-05 0.36799820E-06 + -0.29523615E-05 -0.39259245E-05 -0.48152547E-05 -0.35802289E-05 -0.50163409E-05 + 0.71685047E-06 0.12311648E-05 -0.14101913E-05 -0.38608061E-05 -0.65242469E-05 + -0.51642629E-05 -0.29798619E-05 -0.15089315E-05 -0.12888685E-05 -0.44666299E-06 + -0.38015949E-06 -0.44945350E-06 -0.18872613E-06 -0.54781360E-06 -0.12981057E-05 + -0.11392147E-05 -0.11222839E-05 -0.26073200E-05 -0.32345575E-05 -0.30793793E-05 + -0.21099476E-05 -0.17537424E-05 -0.63324293E-06 -0.19826111E-07 -0.57411683E-06 + -0.88603549E-06 0.74738903E-06 0.49023104E-06 0.93074643E-07 0.38090027E-07 + 0.28934953E-09 -0.91803405E-09 -0.21025393E-08 0.10409082E-07 -0.18185066E-07 + -0.23898528E-06 -0.11004253E-05 -0.23811886E-08 -0.19675394E-06 0.23227063E-05 + -0.61044395E-05 -0.64359642E-05 -0.27558889E-05 0.12319802E-05 0.60610810E-05 + 0.15572907E-04 0.23999741E-08 -0.13999908E-04 -0.22850596E-04 -0.33888741E-04 + -0.37024951E-04 -0.22155871E-04 -0.27888745E-04 0.64788901E-05 0.84923949E-05 + -0.20401301E-04 -0.34969801E-04 -0.45113651E-04 -0.20575621E-04 -0.10807587E-04 + -0.51787809E-05 -0.14966077E-05 -0.31032481E-05 0.18131740E-05 0.25560175E-05 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.14215002E-09 0.57959685E-09 + -0.12890283E-08 0.66377914E-08 -0.97942824E-08 -0.25168857E-07 -0.13545213E-07 + 0.33537320E-07 0.16495123E-06 0.12837029E-06 -0.34660127E-08 0.41435074E-06 + 0.87404275E-06 0.12062154E-05 0.14158269E-05 0.10198994E-05 0.99118334E-06 + 0.66087546E-06 0.15890630E-06 0.89599031E-07 -0.30101671E-06 -0.37199445E-06 + -0.64060938E-06 -0.20485639E-06 -0.31611570E-06 -0.64450520E-06 -0.92501531E-06 + -0.70430045E-06 -0.48842198E-06 -0.24378574E-06 -0.76317531E-07 0.71791332E-07 + -0.10551334E-06 0.22412089E-06 0.26649634E-06 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.27188347E-04 + 0.34160269E-04 0.37105368E-04 0.36756361E-04 0.42872794E-04 0.45434924E-04 + 0.44068942E-04 0.41058977E-04 -0.67736244E-05 -0.50235586E-04 -0.61325010E-04 + -0.59358097E-04 0.46805318E-08 -0.16879406E-07 -0.33149757E-07 0.81033942E-07 + -0.80424121E-07 -0.12881921E-05 -0.13533761E-04 0.51239532E-05 -0.17930286E-05 + 0.24655237E-04 0.26033162E-04 0.18869730E-04 0.73833095E-04 -0.17284981E-04 + 0.16085167E-03 0.75925733E-04 0.21215786E-03 0.76937601E-04 -0.54964530E-04 + 0.15325366E-03 0.12817568E-03 0.65845198E-04 0.66538380E-04 -0.33272903E-04 + 0.12882062E-03 0.16744115E-03 0.18253353E-04 0.10553437E-04 0.37108852E-04 + 0.19289561E-04 0.17149625E-04 0.17000900E-04 0.67588728E-05 0.46606919E-05 + 0.89276641E-06 0.84150603E-05 0.50211125E-05 0.22081414E-05 0.64654857E-05 + 0.76568393E-05 -0.27458901E-05 -0.20891565E-05 -0.22085512E-04 -0.48330462E-04 + -0.67135572E-04 -0.82935794E-04 -0.89156156E-04 -0.85280163E-04 -0.81541355E-04 + -0.85635374E-04 -0.10922635E-03 -0.10238965E-03 -0.78913519E-04 0.12168411E-05 + -0.26771056E-05 -0.11387759E-05 0.46500939E-05 0.19722441E-04 0.16071361E-03 + 0.20065365E-03 0.31415087E-02 0.63004041E-02 0.84997400E-02 0.13840732E-01 + 0.66056532E-02 0.38006781E-02 -0.11206956E-02 0.91994721E-02 0.80766721E-02 + 0.19622094E-01 0.23023719E-01 0.15763531E-01 0.29690009E-01 0.27305880E-01 + 0.19429945E-01 0.20169804E-01 0.69588660E-02 0.11266189E-01 0.17059268E-01 + 0.14254089E-01 0.12326583E-01 0.98230721E-02 0.68113420E-02 0.58800999E-02 + 0.50184967E-02 0.43055579E-02 0.38144686E-02 0.32286813E-02 0.29739128E-02 + 0.28166059E-02 0.27308022E-02 0.29194516E-02 0.28801893E-02 0.27336662E-02 + 0.31244676E-02 0.28097148E-02 0.27089750E-02 0.25491614E-02 0.22562116E-02 + 0.21893854E-02 0.19785452E-02 0.11236144E-02 0.88998659E-03 0.41064650E-03 + 0.35997812E-03 0.26800256E-03 0.15567635E-08 -0.19799359E-08 0.15749239E-08 + 0.18089851E-07 -0.13199938E-06 -0.30828557E-05 0.61279469E-05 0.17820489E-04 + 0.46273928E-04 0.25433633E-04 0.37796528E-04 0.10739575E-03 0.15652058E-03 + 0.18348172E-03 0.18488187E-03 0.11851706E-03 0.11559673E-03 0.11891291E-03 + 0.10369865E-03 0.76161215E-04 0.50404257E-04 0.40957329E-04 0.27504120E-04 + 0.17445657E-04 0.15829681E-04 0.17493026E-04 0.10184438E-04 0.77650931E-05 + 0.62021699E-05 0.40850493E-05 0.36314048E-05 0.24584022E-05 0.20870342E-05 + 0.21879316E-05 0.20427808E-05 0.27597859E-05 0.31842156E-05 0.36552590E-05 + 0.37924062E-05 0.33246968E-05 0.22389479E-05 0.28492235E-05 0.31383395E-05 + 0.29801185E-05 0.32711659E-05 0.31924753E-05 0.33142544E-05 0.30425595E-05 + 0.23986266E-05 0.21663640E-05 0.16068442E-05 0.14646943E-05 0.10658288E-05 + -0.25839149E-08 0.26806785E-08 0.51369500E-08 -0.82588447E-08 0.78343416E-09 + -0.29647483E-06 -0.42356191E-06 0.69716320E-06 0.22593650E-05 0.14937042E-05 + 0.15053994E-06 0.60483485E-05 0.11257494E-04 0.12607744E-04 0.14467713E-04 + 0.39151936E-05 0.85868874E-05 0.81899611E-05 0.61838112E-05 0.73531799E-05 + 0.35982933E-05 0.22181047E-05 0.13151792E-05 -0.38591813E-06 0.82212378E-06 + 0.16283324E-05 -0.95970478E-06 -0.53768664E-06 0.55343342E-06 0.34734024E-06 + 0.35405880E-06 0.58590519E-06 0.24400501E-06 0.71282008E-06 0.10890894E-05 + 0.20697349E-05 0.25670092E-05 0.27120048E-05 0.23582057E-05 0.17011416E-05 + 0.21771000E-05 0.45180742E-05 0.61191179E-05 0.45697779E-05 0.37322865E-05 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.53323886E-06 0.35678150E-06 + 0.10035669E-05 0.15881714E-05 0.13474094E-05 0.18652788E-07 -0.45663245E-07 + -0.36215599E-07 0.76561996E-07 -0.79607496E-07 0.92957910E-07 -0.14722545E-04 + 0.79432235E-05 -0.64046051E-05 0.31585172E-04 0.11014784E-03 0.14151443E-03 + 0.26994092E-03 0.21040871E-03 0.55203146E-03 0.47857130E-03 0.78537237E-03 + 0.61113960E-03 0.40448555E-03 0.72598056E-03 0.65724453E-03 0.43578177E-03 + 0.33177194E-03 0.74143244E-04 0.26548147E-03 0.40284304E-03 0.27939731E-03 + 0.25058352E-03 0.25695584E-03 0.28259160E-03 0.22795286E-03 0.14053165E-03 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.26148861E-09 0.45595127E-08 0.30916422E-08 -0.21780568E-07 + 0.55336656E-07 0.19035484E-06 0.41624191E-06 0.52914423E-06 -0.12124059E-05 + 0.49276290E-06 -0.99005955E-06 -0.13788677E-06 0.82120739E-06 0.33445534E-05 + 0.12251981E-05 -0.10745095E-06 0.10439048E-05 0.17360349E-05 0.74522876E-06 + 0.10335844E-05 0.77894652E-06 0.29622106E-05 0.15261351E-05 0.68277791E-06 + -0.25809260E-05 -0.37843520E-05 -0.49504376E-05 -0.37461915E-05 -0.22633727E-05 + -0.19765908E-05 -0.22865243E-05 -0.17664598E-05 -0.16893422E-05 -0.18888313E-05 + -0.19427309E-05 -0.24593040E-05 -0.26686735E-05 -0.21123778E-05 -0.23325484E-05 + -0.24089872E-05 -0.25263118E-05 -0.21258150E-05 -0.11083515E-05 -0.11826983E-05 + -0.26058030E-05 -0.29499565E-05 -0.25536584E-05 -0.18606829E-05 -0.12830827E-05 + -0.94335576E-06 -0.92129911E-06 -0.10240331E-05 -0.90640512E-06 -0.18861660E-08 + 0.15477806E-07 0.16438967E-07 -0.28437695E-07 0.20173399E-06 0.94889168E-06 + 0.31963183E-05 0.25476189E-05 -0.53974796E-05 0.68140022E-05 -0.50877956E-05 + -0.38910352E-05 0.55159531E-05 0.19912948E-04 0.12450930E-04 0.11262754E-04 + 0.95426732E-05 0.85392472E-05 0.91494436E-05 0.99823593E-05 0.11383047E-04 + 0.23524730E-04 0.96494081E-05 0.81713141E-05 -0.15296650E-04 -0.28389039E-04 + -0.30932195E-04 -0.12585085E-04 -0.41819034E-05 -0.10604437E-04 -0.12770216E-04 + -0.70279725E-05 -0.29565994E-05 -0.37273267E-05 -0.34541261E-06 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.92277297E-10 -0.86044523E-09 0.30458017E-08 + 0.54136690E-08 0.12938138E-07 0.13324157E-06 0.11226913E-06 0.11333546E-06 + 0.26328984E-07 -0.64831012E-08 -0.38254405E-06 0.72303650E-07 0.18235673E-06 + 0.46124922E-06 0.64340337E-06 0.88135589E-07 0.46999655E-06 0.45215940E-06 + 0.23468119E-06 0.51789521E-06 0.27966696E-06 0.35144377E-06 0.18712381E-06 + -0.25310052E-06 -0.75090730E-06 -0.68329528E-06 -0.52239616E-06 -0.81630461E-07 + -0.19257877E-06 -0.20470583E-06 -0.21874981E-06 -0.12428599E-06 0.49925443E-08 + -0.78482017E-07 0.12261851E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.20663214E-04 0.27659970E-04 + 0.33630283E-04 0.40106577E-04 0.49538086E-04 0.57504602E-04 0.59332904E-04 + 0.57329622E-04 0.38327770E-04 0.16361716E-04 0.44302051E-05 0.47160729E-06 + -0.81312919E-07 0.67756386E-06 0.71900330E-06 -0.19873298E-06 0.22913984E-05 + 0.11345448E-04 0.47057520E-04 0.40949185E-04 -0.11820294E-03 0.73822600E-04 + 0.88191267E-04 0.92709084E-04 0.40246723E-04 -0.47226615E-04 0.89824471E-04 + -0.13955971E-03 0.66161120E-04 0.36950555E-04 -0.12310394E-03 0.92665152E-05 + -0.59441827E-04 -0.69006766E-04 -0.34234804E-04 -0.61810154E-04 -0.29521523E-04 + -0.29787071E-04 -0.14497370E-04 -0.10979643E-05 0.73524171E-05 0.14792380E-04 + -0.65430587E-05 -0.63835642E-05 -0.13366859E-04 -0.12526857E-04 0.15736053E-05 + -0.59356626E-05 -0.78327776E-05 -0.43884324E-05 -0.17302469E-05 0.31139830E-05 + 0.25625188E-05 0.35635101E-05 0.95809259E-05 0.70498070E-05 0.10041339E-04 + 0.10441264E-04 0.38968499E-05 -0.43188192E-06 0.41190247E-05 -0.34475036E-05 + -0.37698190E-05 -0.41327933E-05 -0.46002119E-06 -0.10101940E-04 0.68934559E-04 + 0.73614458E-04 0.20191542E-04 0.35664310E-03 0.95077317E-03 0.34919033E-02 + 0.31488623E-02 -0.27069526E-02 0.41362428E-04 0.53409738E-02 0.11436549E-01 + -0.15779633E-02 -0.60209005E-02 0.33148096E-02 -0.25482065E-02 0.11478215E-01 + 0.96453578E-02 0.62331160E-03 0.65231091E-02 0.29478117E-02 0.35224708E-02 + 0.46878666E-02 0.81235337E-03 0.17129020E-02 0.14133682E-02 0.15490185E-02 + 0.26015340E-02 0.23019639E-02 0.17355698E-02 0.61582062E-03 0.74622807E-03 + 0.54128786E-03 0.19973436E-03 0.44899869E-03 0.21822823E-03 0.25469425E-03 + 0.17151115E-03 0.24095891E-03 0.27528217E-03 0.68345655E-04 0.29318692E-03 + 0.31882893E-03 0.33677248E-03 0.53458590E-03 0.30902980E-03 0.11252770E-03 + 0.11593897E-03 0.13335093E-03 0.14845206E-03 0.15447303E-04 -0.26388701E-03 + -0.11156539E-03 -0.76195761E-08 0.73525968E-07 0.16450708E-06 0.35957397E-06 + 0.28163839E-05 0.17237968E-04 -0.10173493E-04 0.31970539E-04 0.23924941E-04 + -0.38319482E-04 -0.48905778E-04 0.30932452E-04 0.24252307E-05 -0.13215433E-04 + 0.28383615E-04 -0.13679666E-04 0.10664879E-04 0.23846811E-04 0.25683918E-04 + 0.30933178E-04 0.75502385E-05 0.14738733E-05 0.31994413E-05 0.24828422E-05 + 0.18625127E-05 0.10475785E-05 0.13292195E-05 0.16125242E-05 0.16260764E-05 + 0.15980330E-05 0.41240045E-06 0.77629395E-06 0.79074241E-06 0.28378569E-06 + 0.67804222E-06 0.41670253E-07 -0.36038024E-06 -0.93448983E-06 -0.15216250E-05 + -0.16948981E-05 -0.19412219E-05 -0.23634253E-05 -0.24153727E-05 -0.22125571E-05 + -0.16391973E-05 -0.15587256E-05 -0.91233410E-06 -0.48509714E-06 -0.15387579E-06 + 0.99297327E-07 -0.63978772E-06 -0.13915334E-05 -0.87998875E-06 0.84455820E-09 + 0.13674290E-07 0.77895899E-07 -0.63955560E-07 0.27215393E-06 0.14372627E-05 + 0.15330989E-05 0.35734994E-05 0.50695485E-06 0.23456448E-06 -0.50686389E-05 + 0.98083970E-06 -0.78497839E-06 -0.22281466E-05 0.35787187E-05 -0.54530771E-05 + 0.13172167E-05 0.32042207E-05 0.13688441E-05 0.39626332E-05 0.24669619E-06 + -0.14426064E-05 -0.64591663E-06 -0.89941928E-06 -0.50481475E-06 -0.56397723E-06 + -0.58362062E-07 0.33176382E-06 0.56968870E-06 0.64093686E-06 0.11664020E-06 + 0.11467746E-06 -0.16034253E-06 -0.36054597E-06 -0.19622210E-08 -0.36522742E-06 + -0.94896238E-06 -0.78407929E-06 -0.82728715E-06 -0.27213797E-07 0.16655211E-06 + -0.10154032E-05 -0.77390702E-06 -0.45334305E-06 -0.50099833E-06 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.81904070E-07 -0.18700181E-06 -0.25382168E-06 + -0.87512414E-06 -0.67230106E-06 -0.13716271E-06 0.98207167E-06 0.10428158E-05 + -0.13468174E-06 0.24861284E-05 0.88182987E-05 0.50385753E-04 0.39341215E-04 + -0.18940892E-03 0.40069672E-04 0.12952185E-03 0.23552943E-03 0.17734346E-03 + 0.30292686E-04 0.23282892E-03 -0.71981782E-04 0.30112127E-03 0.21501857E-03 + -0.48167358E-04 0.13319117E-03 0.20450422E-04 -0.75830753E-06 0.44059323E-04 + 0.37443232E-05 0.10026095E-04 0.43029017E-04 0.80724405E-04 0.74684878E-04 + 0.55855762E-05 -0.68494330E-04 -0.90233780E-04 -0.59215435E-04 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.51159077E-11 -0.18595825E-09 -0.50374003E-10 0.25789049E-08 -0.77376297E-08 + -0.22010098E-08 -0.45629501E-08 -0.70900036E-07 0.30967054E-07 -0.12652103E-06 + 0.83663722E-07 -0.13220363E-06 -0.34125037E-06 -0.10583483E-05 -0.41235542E-06 + 0.10690021E-06 0.64050309E-08 -0.12621258E-06 0.53460841E-06 0.89453577E-06 + 0.10607706E-05 0.21031179E-06 0.62468706E-06 -0.13891109E-06 0.23148226E-06 + 0.74345758E-06 0.11532867E-05 0.13000510E-05 0.88893032E-06 0.48797392E-06 + 0.27322799E-06 0.10197976E-06 -0.71555169E-09 0.70486280E-08 -0.20564958E-07 + -0.30809980E-08 0.89048866E-07 0.83509191E-07 0.97165211E-07 0.14141449E-06 + 0.32898738E-06 0.38226988E-06 0.34076887E-06 0.29978502E-06 0.34202580E-06 + 0.21470418E-06 0.12353634E-06 0.12689770E-06 0.15334114E-06 -0.40771326E-07 + 0.24285589E-07 0.84358891E-07 0.81700202E-07 -0.19440449E-10 -0.43421049E-09 + -0.95095447E-09 -0.16790739E-08 -0.17262945E-07 -0.23910413E-07 -0.11424397E-06 + -0.26270964E-06 0.29630294E-06 -0.75704207E-06 0.13690606E-05 0.94613524E-06 + 0.13033365E-06 -0.29247995E-05 -0.68414685E-06 0.55769851E-06 0.18886652E-05 + 0.19994806E-05 0.37057712E-05 0.62110637E-05 0.64264814E-05 0.10281462E-05 + 0.35776308E-05 -0.17145929E-05 0.13894150E-05 0.69535476E-05 0.88703144E-05 + 0.76603245E-05 0.33567393E-05 0.29130369E-05 0.26310252E-05 0.11856378E-05 + 0.43813603E-06 0.11928180E-06 -0.72589781E-06 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.19049651E-10 -0.49961408E-10 0.14484922E-09 -0.83860662E-09 + -0.20996724E-09 -0.84875507E-08 -0.58135650E-08 -0.21201549E-07 -0.58178730E-07 + -0.64598947E-07 -0.26949953E-07 -0.15960692E-06 -0.21310095E-06 -0.31295347E-06 + -0.33054849E-06 -0.95662262E-07 -0.15491574E-06 -0.15419303E-06 -0.66021966E-07 + -0.66307956E-07 0.17867078E-07 -0.13299647E-07 0.42919052E-07 0.39846742E-07 + 0.12741407E-06 0.16768259E-06 0.16035089E-06 0.78866706E-07 0.79277685E-07 + 0.70596696E-07 0.62057667E-07 0.23224973E-07 0.38912414E-08 -0.76851994E-08 + -0.36461883E-07 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.57649894E-05 -0.84876244E-05 -0.11003694E-04 + -0.13219323E-04 -0.16368136E-04 -0.19145363E-04 -0.20356841E-04 -0.20142610E-04 + -0.12271965E-04 -0.43705877E-05 -0.98651523E-06 0.88216755E-06 -0.21282176E-09 + -0.22825289E-07 -0.25638072E-07 0.59527707E-07 -0.95927271E-07 -0.40519243E-06 + -0.23069033E-05 -0.31597209E-05 0.10657968E-04 -0.42172124E-05 0.61280559E-06 + 0.11209260E-04 0.31003071E-04 0.69224064E-04 0.35595319E-04 0.81344606E-04 + 0.30373478E-04 0.43307931E-04 0.70709633E-04 0.30474727E-04 0.36653780E-04 + 0.44152722E-04 0.35942993E-04 0.38345586E-04 0.13349832E-04 0.64649113E-05 + 0.68960353E-05 0.66576875E-05 0.68942471E-07 -0.89145703E-06 0.21851616E-05 + 0.38321883E-07 0.15000961E-05 0.10798670E-05 -0.99029505E-06 -0.10539476E-05 + -0.99419321E-06 -0.15222587E-05 -0.26212159E-05 -0.48038302E-05 -0.62665045E-05 + -0.93105197E-05 -0.98483369E-05 -0.90266369E-05 -0.81635054E-05 -0.70528070E-05 + -0.60840961E-05 -0.58215228E-05 -0.53888923E-05 -0.13731972E-05 0.25693322E-05 + 0.22442632E-05 0.12825335E-05 -0.86845830E-07 -0.22808114E-05 -0.24995186E-05 + 0.73165380E-05 -0.11269600E-04 -0.29518630E-04 -0.12103385E-03 -0.88619860E-04 + 0.19551825E-03 -0.10754814E-02 -0.25081889E-02 -0.21584544E-02 -0.39654621E-03 + 0.64411251E-03 -0.16836561E-02 -0.68418962E-03 -0.34053079E-02 -0.35793651E-02 + -0.16679762E-02 -0.37549625E-02 -0.30201598E-02 -0.23270160E-02 -0.22687666E-02 + -0.47900781E-03 -0.93593899E-03 -0.15606558E-02 -0.15603863E-02 -0.12572578E-02 + -0.91649459E-03 -0.59184059E-03 -0.34102098E-03 -0.34757331E-03 -0.23127148E-03 + -0.13824126E-03 -0.13816380E-03 -0.10490814E-03 -0.12107015E-03 -0.11353279E-03 + -0.14885669E-03 -0.17172498E-03 -0.14915300E-03 -0.23669659E-03 -0.19483315E-03 + -0.19637266E-03 -0.19626283E-03 -0.14015560E-03 -0.10582384E-03 -0.88619856E-04 + -0.19308644E-04 -0.21612896E-04 0.32868641E-04 0.42942457E-04 0.33330795E-04 + -0.11459633E-09 -0.26752263E-08 -0.10714156E-07 -0.26501241E-07 -0.23548993E-06 + -0.12446868E-05 0.86162380E-06 -0.69846912E-05 -0.15057867E-04 -0.14354467E-04 + -0.17498572E-04 -0.35832924E-04 -0.36831276E-04 -0.37690177E-04 -0.39283146E-04 + -0.14779546E-04 -0.16706537E-04 -0.19353121E-04 -0.18268534E-04 -0.13980220E-04 + -0.54061121E-05 -0.26490232E-05 -0.15481720E-05 -0.10191376E-05 -0.10479240E-05 + -0.12413373E-05 -0.96011464E-06 -0.45007798E-06 -0.40248465E-06 -0.32526750E-06 + -0.20798576E-06 -0.29869825E-06 -0.28500609E-06 -0.23260095E-06 -0.28561062E-06 + -0.26923421E-06 -0.23504893E-06 -0.14671033E-06 -0.29505079E-07 0.37636553E-07 + 0.16903252E-06 0.12098472E-06 0.77659652E-07 0.23735420E-07 -0.70828153E-07 + -0.85278251E-07 -0.18304598E-06 -0.22506342E-06 -0.21688911E-06 -0.22849036E-06 + -0.67618056E-07 0.30356660E-07 0.31778087E-07 0.22552626E-09 -0.60734074E-09 + -0.55050399E-08 0.74273307E-08 -0.21773865E-07 -0.73132847E-07 -0.64697798E-07 + -0.51954473E-06 -0.80236982E-06 -0.96136810E-06 -0.34771778E-06 -0.21360567E-05 + -0.23227692E-05 -0.21645673E-05 -0.31660751E-05 0.45439037E-06 -0.11037300E-05 + -0.12878644E-05 -0.92665432E-06 -0.13200997E-05 -0.18614885E-06 0.41060385E-06 + 0.36979636E-06 0.46984145E-06 0.25963822E-06 0.18549308E-06 0.15112779E-06 + 0.11564701E-06 -0.60700086E-07 -0.54370478E-07 0.64036377E-07 0.24866014E-07 + 0.91600584E-07 0.97344269E-07 0.54819484E-07 0.83746350E-07 0.18974855E-06 + 0.21668800E-06 0.29150497E-06 0.29315731E-06 0.27664807E-06 0.10282718E-06 + -0.88281732E-07 -0.88836681E-07 -0.12329508E-06 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.53793416E-07 -0.33622724E-07 -0.43088592E-07 -0.46549844E-08 + -0.58511823E-08 -0.13897079E-08 -0.30887176E-07 -0.36756215E-07 0.82042357E-07 + -0.84424019E-07 -0.36992606E-06 -0.22497208E-05 -0.23910513E-05 0.19222931E-04 + 0.32082925E-05 -0.64890339E-05 0.10173884E-05 0.23052819E-04 0.70184053E-04 + 0.69695667E-05 0.55596255E-04 -0.31024719E-04 -0.36574987E-05 0.44199077E-04 + -0.15119066E-04 -0.43189808E-05 0.24158978E-04 0.28777153E-04 0.49511056E-04 + 0.25270234E-04 0.10282639E-04 0.94226727E-05 0.22216818E-04 0.29527178E-04 + 0.24693601E-04 0.54628410E-05 -0.43580434E-05 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 +WV_Continuum + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.35803906E-12 + -0.21697517E-12 0.95352481E-14 -0.18111698E-11 -0.34030573E-11 -0.12257441E-11 + -0.13758662E-11 -0.41824563E-11 -0.96821961E-09 0.00000000E+00 -0.33622715E-09 + 0.31923052E-09 0.47656721E-08 0.19224045E-07 0.36516965E-07 0.41601598E-06 + 0.16180075E-05 0.37543095E-05 0.11583050E-04 0.22677152E-04 0.38334681E-04 + 0.66697947E-04 0.12615680E-03 0.20477652E-03 0.33461183E-03 0.41151960E-03 + 0.64041925E-03 0.76303711E-03 0.95308274E-03 0.11503847E-02 0.14049189E-02 + 0.16518410E-02 0.16852817E-02 0.16662457E-02 0.16786926E-02 0.16437805E-02 + 0.14563891E-02 0.12645993E-02 0.10851593E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.57237678E-07 -0.47275244E-07 -0.11260881E-07 -0.10395814E-07 0.16932986E-07 + 0.28734959E-07 -0.12236613E-07 -0.24690920E-07 -0.35836866E-07 0.28082016E-06 + 0.39965728E-06 -0.16274975E-06 0.62776047E-06 0.72075945E-06 -0.67779572E-06 + 0.12150514E-06 0.13176658E-04 0.11494610E-04 0.81183858E-07 -0.92937528E-05 + -0.67689483E-05 -0.11285754E-03 0.91068974E-03 0.25847300E-02 0.18519023E-02 + 0.60944879E-02 0.52365430E-02 0.37434358E-01 0.84190259E-01 -0.41954513E-01 + 0.55692572E-01 0.59064849E-01 0.79447071E+00 0.37847795E+00 0.71306559E+00 + 0.49014327E+00 -0.93412809E-02 0.26975047E+01 0.38952822E+01 0.67793104E+01 + 0.43813147E+01 0.64466585E+01 0.46404823E+01 0.25849896E+01 0.21126329E+01 + 0.16078313E+01 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.21379246E-10 -0.18379110E-09 + -0.46748978E-08 -0.57559507E-08 0.96931757E-09 -0.21724367E-08 0.69787446E-09 + 0.10065708E-07 -0.22991248E-08 0.12440797E-07 0.10765633E-07 -0.90151156E-08 + 0.57335226E-07 0.84523633E-07 -0.77667568E-07 -0.29539728E-08 0.59411472E-06 + 0.53722275E-06 -0.62696916E-08 -0.38202429E-06 -0.54052183E-07 -0.45954179E-05 + 0.42402108E-04 0.96254168E-04 0.42893380E-04 0.14565301E-03 0.21151724E-03 + 0.52877584E-03 0.75798539E-03 0.68241277E-04 0.48011709E-02 0.25597408E-02 + 0.59641351E-02 0.39773416E-02 -0.52240685E-02 -0.23944024E-01 -0.39750640E-01 + -0.42364852E-01 -0.68794465E-01 -0.75995589E-01 -0.75046137E-01 -0.22067037E-01 + -0.30072295E-01 -0.37504727E-01 -0.41353210E-01 -0.39664002E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.20232726E-10 0.45554778E-11 0.12495879E-10 -0.26139637E-11 + -0.72083643E-09 0.50570508E-08 0.14442829E-07 0.40278739E-08 0.63251509E-09 + -0.27451856E-08 0.33820957E-07 -0.34069871E-07 0.10790952E-05 0.36239947E-05 + 0.71565593E-05 0.28277378E-04 0.56950842E-04 0.95677679E-04 0.16904382E-03 + 0.34288937E-03 0.59614511E-03 0.10298263E-02 0.13031300E-02 0.21573654E-02 + 0.26325562E-02 0.35438670E-02 0.43453203E-02 0.56150528E-02 0.65703255E-02 + 0.69311819E-02 0.69840303E-02 0.74127612E-02 0.74365024E-02 0.64714331E-02 + 0.58515342E-02 0.48923255E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.61115910E-10 + -0.11318888E-07 -0.23917991E-08 0.18346051E-07 0.61281293E-08 0.53253990E-07 + 0.50135357E-08 0.15536622E-05 0.55453965E-05 0.11898554E-04 0.44282388E-04 + 0.89574044E-04 0.15149874E-03 0.26756523E-03 0.53391592E-03 0.92262589E-03 + 0.15599846E-02 0.19988318E-02 0.32227677E-02 0.39467194E-02 0.52782690E-02 + 0.64507550E-02 0.83936746E-02 0.96823265E-02 0.10274574E-01 0.10387887E-01 + 0.11099488E-01 0.11106825E-01 0.98834651E-02 0.89561162E-02 0.72721486E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.16692094E-12 0.10091923E-10 0.00000000E+00 + -0.19323272E-07 0.14269182E-07 -0.17916769E-09 -0.13470729E-09 0.83913009E-09 + 0.30691058E-08 0.74241749E-08 0.10180725E-06 0.38353451E-07 0.27633182E-05 + 0.10004059E-04 0.21660185E-04 0.77486601E-04 0.15605280E-03 0.26593706E-03 + 0.47182641E-03 0.94272960E-03 0.16585710E-02 0.27369987E-02 0.36486639E-02 + 0.57397611E-02 0.71157880E-02 0.95894531E-02 0.11735092E-01 0.15902793E-01 + 0.17846363E-01 0.19215564E-01 0.19440247E-01 0.21109752E-01 0.20728548E-01 + 0.18638946E-01 0.16690732E-01 0.13118565E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.25789368E-12 0.11395288E-09 + 0.11360282E-07 -0.67075633E-07 0.56913144E-08 0.46091827E-07 -0.90065836E-08 + 0.91301258E-08 0.32529618E-08 0.11021691E-07 0.11522265E-08 0.81424466E-08 + 0.15776868E-06 0.44343715E-07 0.45302306E-05 0.16207941E-04 0.34321740E-04 + 0.12038413E-03 0.24054869E-03 0.41166544E-03 0.72936504E-03 0.14536232E-02 + 0.26042091E-02 0.41758430E-02 0.56892359E-02 0.87924373E-02 0.11009846E-01 + 0.15240775E-01 0.18303566E-01 0.25469376E-01 0.27388211E-01 0.30179757E-01 + 0.30231193E-01 0.33639326E-01 0.32326465E-01 0.29428558E-01 0.26134086E-01 + 0.20312702E-01 0.37194145E-15 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.21161584E-07 -0.40828151E-07 0.64609348E-07 0.73237674E-08 + -0.11765164E-07 0.16409954E-07 -0.86653082E-08 0.23857328E-08 0.30899567E-07 + 0.25210393E-07 0.30868626E-08 0.20060221E-08 0.21826309E-06 -0.84363126E-07 + 0.73227070E-05 0.25154336E-04 0.49992410E-04 0.17571479E-03 0.34807895E-03 + 0.60209875E-03 0.10800984E-02 0.22060039E-02 0.41904405E-02 0.65235636E-02 + 0.93959276E-02 0.14336937E-01 0.18225080E-01 0.25891298E-01 0.30260857E-01 + 0.42544016E-01 0.43709997E-01 0.48016040E-01 0.46587196E-01 0.53889179E-01 + 0.50688153E-01 0.46366228E-01 0.40903109E-01 0.31978203E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.18861426E-12 0.15425472E-12 + -0.13915350E-14 0.13096514E-11 0.25567947E-11 0.74489249E-13 0.23276434E-11 + -0.34925493E-11 0.67233708E-09 0.00000000E+00 0.17401476E-09 -0.44942852E-09 + -0.94976989E-08 -0.41589715E-07 -0.13250842E-06 -0.94105654E-06 -0.36855979E-05 + -0.93721499E-05 -0.26816805E-04 -0.53044725E-04 -0.91101577E-04 -0.15623844E-03 + -0.28017236E-03 -0.45178566E-03 -0.70216600E-03 -0.89295089E-03 -0.13002801E-02 + -0.15840873E-02 -0.19707424E-02 -0.24214438E-02 -0.29605140E-02 -0.34440417E-02 + -0.36066309E-02 -0.36600458E-02 -0.37222352E-02 -0.36298705E-02 -0.32668390E-02 + -0.28202907E-02 -0.23591766E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.50056915E-07 + 0.42362624E-07 -0.64071519E-08 0.10980963E-07 -0.22803643E-07 -0.29677596E-07 + -0.94322388E-08 0.23105969E-08 0.23580258E-07 -0.33210557E-06 -0.42046525E-06 + -0.60220516E-08 -0.85450546E-06 -0.10228613E-05 0.29073453E-07 -0.10107423E-05 + -0.16665925E-04 -0.12941075E-04 0.48676651E-05 0.80092708E-05 0.37788870E-05 + 0.18743093E-03 -0.14290821E-02 -0.41899978E-02 -0.34029029E-02 -0.10171370E-01 + -0.58145482E-02 -0.53282025E-01 -0.13424453E+00 0.55451040E-01 -0.67364694E-01 + -0.41472777E-01 -0.78694592E+00 -0.50086121E+00 -0.68081290E+00 -0.38714040E+00 + 0.23782805E-01 -0.26623504E+01 -0.30219485E+01 -0.65856706E+01 -0.32329745E+01 + -0.42155599E+01 -0.20778449E+01 -0.38980181E+00 -0.10725391E-01 0.27722905E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.43057051E-10 -0.14852006E-09 0.52785879E-09 + 0.32914905E-08 -0.89412185E-09 0.47666873E-09 -0.76829485E-09 -0.50129555E-08 + 0.28923689E-08 -0.13618387E-07 -0.10409750E-07 -0.51649257E-09 -0.66032519E-07 + -0.82883564E-07 0.61704607E-07 -0.20126635E-07 -0.74276143E-06 -0.61350028E-06 + 0.23099535E-06 0.30140867E-06 -0.20261573E-06 0.75827641E-05 -0.67180107E-04 + -0.16578599E-03 -0.11232702E-03 -0.25930667E-03 -0.34863171E-03 -0.95144793E-03 + -0.11722569E-02 0.39100214E-03 -0.55848894E-02 -0.12146796E-02 -0.62171070E-02 + -0.29537891E-02 0.98970590E-02 0.35368765E-01 0.52542983E-01 0.48063406E-01 + 0.85345873E-01 0.91288303E-01 0.89915952E-01 0.24849948E-01 0.36175265E-01 + 0.45476122E-01 0.49755436E-01 0.47925255E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.12737106E-10 0.13498685E-12 -0.13888996E-10 -0.44018259E-10 0.15532294E-09 + -0.16360509E-07 -0.17633721E-07 -0.20087116E-08 -0.30658538E-08 -0.11101011E-07 + -0.10832109E-06 -0.29437381E-06 -0.30346756E-05 -0.11323769E-04 -0.28735750E-04 + -0.90195302E-04 -0.18676282E-03 -0.33064796E-03 -0.58068119E-03 -0.10685020E-02 + -0.18114751E-02 -0.28763098E-02 -0.38277959E-02 -0.56442449E-02 -0.71200570E-02 + -0.93056566E-02 -0.11706909E-01 -0.14909375E-01 -0.17335462E-01 -0.18740730E-01 + -0.19502931E-01 -0.20450832E-01 -0.20193595E-01 -0.18011450E-01 -0.15917741E-01 + -0.13060139E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.51414855E-10 0.97313797E-08 + -0.13617187E-08 -0.16424723E-07 -0.25208387E-07 -0.16188096E-06 -0.48421642E-06 + -0.42701083E-05 -0.16306409E-04 -0.42168118E-04 -0.13057505E-03 -0.26937047E-03 + -0.47449717E-03 -0.83044457E-03 -0.15222158E-02 -0.25698667E-02 -0.40484159E-02 + -0.53914909E-02 -0.78889700E-02 -0.99309152E-02 -0.12941309E-01 -0.16198837E-01 + -0.20729250E-01 -0.23889087E-01 -0.25846403E-01 -0.26886018E-01 -0.28270991E-01 + -0.27888216E-01 -0.25063782E-01 -0.22240240E-01 -0.17997594E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.86596620E-12 -0.14676887E-10 0.00000000E+00 0.70989630E-08 + -0.16599264E-07 0.73905488E-08 0.21844431E-08 -0.40367911E-08 -0.80328816E-08 + -0.39419741E-07 -0.28024395E-06 -0.82081597E-06 -0.72599072E-05 -0.27775491E-04 + -0.71218400E-04 -0.21763841E-03 -0.44602890E-03 -0.78520085E-03 -0.13736955E-02 + -0.25244471E-02 -0.42970524E-02 -0.66838676E-02 -0.90526172E-02 -0.13125886E-01 + -0.16563642E-01 -0.21689866E-01 -0.27045284E-01 -0.35544597E-01 -0.40163109E-01 + -0.43685461E-01 -0.45349723E-01 -0.48053520E-01 -0.46897399E-01 -0.42252920E-01 + -0.37404494E-01 -0.29704814E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.52073690E-12 -0.16768068E-09 -0.23224080E-07 + 0.44382853E-07 0.10506510E-07 -0.26419572E-07 0.13113918E-08 -0.14164538E-07 + -0.45578579E-08 -0.16681153E-07 -0.70215438E-08 -0.57021289E-07 -0.42839930E-06 + -0.12001368E-05 -0.11466327E-04 -0.43462205E-04 -0.10944055E-03 -0.33159963E-03 + -0.67541726E-03 -0.11910373E-02 -0.20807210E-02 -0.38220523E-02 -0.65759731E-02 + -0.10066756E-01 -0.13813415E-01 -0.19847539E-01 -0.25205090E-01 -0.33604096E-01 + -0.41424381E-01 -0.55471414E-01 -0.60986442E-01 -0.67225240E-01 -0.69523034E-01 + -0.74554982E-01 -0.71884498E-01 -0.65198017E-01 -0.57517203E-01 -0.45367234E-01 + -0.13815104E-15 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.74832141E-09 0.36208933E-07 -0.30994799E-07 -0.82217840E-08 0.40682796E-08 + -0.12279776E-07 0.38085031E-08 -0.75289696E-08 -0.42053135E-07 -0.31873575E-07 + -0.68020176E-08 -0.74625947E-07 -0.61672751E-06 -0.15350293E-05 -0.17960902E-04 + -0.66518684E-04 -0.16208330E-03 -0.48984886E-03 -0.99320147E-03 -0.17658273E-02 + -0.31023742E-02 -0.57656973E-02 -0.10249831E-01 -0.15395137E-01 -0.21808416E-01 + -0.31153978E-01 -0.39867438E-01 -0.54206895E-01 -0.65576618E-01 -0.88878295E-01 + -0.94565972E-01 -0.10404685E+00 -0.10587374E+00 -0.11565115E+00 -0.11002286E+00 + -0.10009766E+00 -0.87941671E-01 -0.69468900E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.66058145E-12 -0.46504793E-12 -0.15620636E-11 + 0.34524246E-11 0.90165796E-11 0.59550833E-13 0.15680003E-12 0.48127550E-11 + 0.24065669E-08 0.00000000E+00 0.33955489E-08 -0.42277843E-07 -0.60245158E-07 + -0.21866535E-06 -0.79997192E-06 0.48124980E-06 0.56406310E-05 0.12536905E-04 + -0.15706621E-04 -0.17983149E-04 -0.35699777E-05 0.84846274E-05 -0.14751631E-04 + 0.49815907E-04 -0.37257483E-04 0.90600030E-04 0.15084233E-03 0.32383628E-03 + -0.71955088E-04 0.15191672E-03 0.34870975E-03 -0.11858760E-03 0.54528476E-03 + 0.98422332E-03 0.12276967E-02 0.13158020E-02 0.15076170E-02 0.11221671E-02 + 0.78371757E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.23988940E-06 0.10346634E-06 + -0.12381931E-06 -0.23164777E-06 -0.55486133E-06 -0.98282799E-06 -0.15393833E-05 + -0.25289790E-05 -0.39083568E-05 -0.74950268E-05 -0.10690396E-04 -0.13269386E-04 + -0.22354479E-04 -0.30540705E-04 -0.39133317E-04 -0.61580249E-04 -0.13788148E-03 + -0.27079745E-03 -0.29638096E-03 -0.56646754E-03 -0.13376022E-02 -0.94030643E-02 + -0.63387935E-02 0.55856481E-02 -0.29984477E-01 -0.97878470E-01 -0.26172367E+00 + -0.16944383E+00 -0.13461889E-03 -0.55299878E+00 -0.65062321E+00 -0.81016455E+00 + -0.11425664E+01 -0.78694511E+00 -0.11304218E+01 -0.19877857E+01 -0.16713991E+01 + -0.78813806E+00 -0.42709615E+01 -0.11898404E+01 -0.15787360E+01 -0.33840983E+01 + -0.34346650E+01 -0.35847521E+01 -0.27724251E+01 -0.20543872E+01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.13226974E-09 -0.52467379E-10 0.65228957E-08 -0.56335618E-11 + -0.28592696E-07 -0.43456375E-07 -0.87932370E-07 -0.16817490E-06 -0.20406072E-06 + -0.38390822E-06 -0.53285302E-06 -0.70457686E-06 -0.12516342E-05 -0.17483070E-05 + -0.19741655E-05 -0.34249489E-05 -0.70294044E-05 -0.13322300E-04 -0.15207466E-04 + -0.32165424E-04 -0.81413818E-04 -0.49424456E-03 -0.50677752E-03 -0.44601867E-04 + -0.18360883E-02 -0.86694126E-02 -0.12673764E-01 -0.10157067E-01 -0.13137476E-01 + -0.29916084E-01 -0.37207541E-01 -0.59352911E-01 -0.31969775E-01 -0.18460378E-01 + -0.93202555E-04 0.82467307E-02 0.31147192E-01 0.12486293E+00 0.14408870E+00 + 0.21470904E+00 0.23672625E+00 0.13776947E+00 0.12390087E+00 0.11647195E+00 + 0.10981594E+00 0.99944261E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.58397454E-10 + -0.21130477E-10 -0.40593295E-10 0.24363151E-10 0.20210006E-08 -0.82300429E-08 + -0.88558638E-07 -0.72365039E-07 -0.31359675E-07 0.36340108E-07 -0.80631983E-06 + -0.28920376E-05 0.16431828E-05 0.21239194E-04 0.42676515E-04 -0.11271108E-03 + -0.13812896E-03 -0.89979912E-04 -0.13465123E-03 -0.48448472E-03 -0.38078963E-03 + -0.13471042E-02 -0.10553244E-02 -0.12745370E-02 -0.85769066E-03 -0.39686140E-02 + -0.35293921E-02 -0.21386542E-02 -0.65811043E-02 -0.30828672E-02 -0.46160259E-03 + -0.16939802E-02 -0.17696859E-02 -0.95720691E-03 -0.15652894E-02 -0.13318506E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.16443236E-09 0.30449291E-07 0.93749821E-07 + -0.38282220E-06 -0.11092610E-06 -0.75671371E-06 -0.31109737E-05 0.33872657E-05 + 0.29816575E-04 0.64055720E-04 -0.13175458E-03 -0.15501961E-03 -0.79510055E-04 + -0.10731982E-03 -0.51941516E-03 -0.30513088E-03 -0.14845508E-02 -0.92598314E-03 + -0.11590107E-02 -0.42444304E-03 -0.43148558E-02 -0.34922234E-02 -0.12542151E-02 + -0.67091203E-02 -0.21604610E-02 0.15483199E-02 -0.42268957E-03 -0.74247033E-03 + -0.54571781E-03 -0.12855523E-02 -0.78852979E-03 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.33114507E-12 -0.30828281E-10 0.00000000E+00 0.70268768E-07 -0.73368109E-07 + -0.22826881E-07 -0.25132089E-07 -0.30699797E-07 -0.79924262E-07 -0.13105015E-06 + -0.16868927E-05 -0.60516679E-05 0.48725317E-05 0.49493999E-04 0.10393484E-03 + -0.21467278E-03 -0.26321004E-03 -0.14327209E-03 -0.18898917E-03 -0.84969368E-03 + -0.53318269E-03 -0.26862367E-02 -0.18944043E-02 -0.27205020E-02 -0.18428370E-02 + -0.83991209E-02 -0.77059209E-02 -0.43296343E-02 -0.13388498E-01 -0.71665383E-02 + -0.63341387E-03 -0.57887760E-02 -0.61875166E-02 -0.63359138E-02 -0.56096892E-02 + -0.33360100E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.96481959E-12 -0.40525718E-09 -0.32084010E-07 0.19899945E-06 + -0.68044301E-07 -0.15014210E-06 0.78386048E-08 -0.69102057E-07 -0.66470954E-07 + -0.18688445E-06 -0.14304978E-06 -0.35237586E-06 -0.30110828E-05 -0.12318570E-04 + 0.47492530E-05 0.76682786E-04 0.15179063E-03 -0.35072646E-03 -0.44680668E-03 + -0.24832808E-03 -0.31539931E-03 -0.13068265E-02 -0.68767499E-03 -0.39695776E-02 + -0.23438701E-02 -0.35447332E-02 -0.17298338E-02 -0.11342074E-01 -0.92907552E-02 + -0.27360623E-02 -0.15523389E-01 -0.73512956E-02 0.47192494E-02 -0.69916638E-02 + -0.66357753E-02 -0.78258187E-02 -0.61759344E-02 -0.30338458E-02 -0.12379425E-14 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.61533610E-07 + 0.10258661E-06 -0.23833069E-06 -0.36163839E-07 0.48528441E-08 -0.10881852E-06 + -0.35603956E-07 -0.11893707E-06 -0.27323006E-06 -0.52183189E-06 -0.49931843E-06 + -0.10049116E-05 -0.55564358E-05 -0.26666810E-04 -0.17054178E-07 0.11903367E-03 + 0.20699886E-03 -0.63789594E-03 -0.88027538E-03 -0.59859901E-03 -0.85716882E-03 + -0.26991934E-02 -0.21883435E-02 -0.87895266E-02 -0.72065850E-02 -0.10543907E-01 + -0.90230285E-02 -0.25200815E-01 -0.23156570E-01 -0.11396475E-01 -0.31522308E-01 + -0.19247808E-01 0.62295860E-02 -0.19579284E-01 -0.17185694E-01 -0.17772001E-01 + -0.14016529E-01 -0.90212581E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.57495954E-12 0.27382131E-12 0.11811363E-11 -0.35728279E-11 + -0.95610966E-11 -0.16352438E-11 -0.48048710E-11 -0.39005691E-11 -0.21299483E-08 + 0.00000000E+00 -0.54831916E-08 0.36337651E-07 0.46670903E-07 0.16778639E-06 + 0.65789917E-06 -0.69484779E-06 -0.65328305E-05 -0.14440045E-04 0.13367622E-04 + 0.11659447E-04 -0.56833275E-05 -0.26277011E-04 -0.10505203E-04 -0.94193129E-04 + -0.15122033E-04 -0.17172712E-03 -0.22973291E-03 -0.44479307E-03 -0.10644388E-03 + -0.36866604E-03 -0.60174372E-03 -0.20560753E-03 -0.89121714E-03 -0.13475945E-02 + -0.16408551E-02 -0.17069049E-02 -0.18618205E-02 -0.14332382E-02 -0.10119569E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.18689872E-06 -0.14841355E-06 0.10287406E-07 + -0.24586171E-07 0.83486039E-07 0.11934414E-06 0.65713148E-07 0.82693613E-07 + 0.21978892E-07 0.16010583E-05 0.18515551E-05 0.33371521E-06 0.34688447E-05 + 0.33648931E-05 -0.22445871E-06 0.45557772E-05 0.57912255E-04 0.13843619E-03 + -0.23058927E-05 -0.16156971E-03 -0.75945705E-03 0.39377474E-02 -0.53390199E-02 + -0.34693069E-01 -0.26429141E-01 -0.78933827E-02 0.83271413E-01 -0.89247141E-01 + -0.36663428E+00 -0.20348121E-01 -0.13509756E+00 -0.23071067E+00 -0.14216042E+00 + -0.72422172E+00 -0.73441460E+00 -0.24678383E+00 -0.87222045E+00 -0.19764403E+01 + 0.89144040E+00 -0.18590211E+01 -0.15961960E+01 -0.96910752E-01 0.70288864E-01 + 0.45530178E+00 0.97589883E-01 -0.88426821E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.13318771E-09 0.22704903E-09 -0.50601767E-08 -0.99153636E-08 0.59597441E-08 + 0.47777621E-08 0.16071858E-07 0.44807186E-07 0.20640884E-07 0.10726426E-06 + 0.11593182E-06 0.10105352E-06 0.36677697E-06 0.46297694E-06 0.12077256E-06 + 0.74585781E-06 0.32755810E-05 0.71182116E-05 0.11601190E-05 -0.21819563E-05 + -0.17633588E-04 0.23589109E-03 -0.44891007E-04 -0.13508639E-02 -0.87818786E-03 + 0.36500121E-02 0.41623423E-02 -0.24619197E-02 -0.57405411E-02 0.22106615E-02 + -0.66667027E-03 0.92969789E-02 -0.27668038E-01 -0.52955748E-01 -0.85866334E-01 + -0.11085694E+00 -0.14726835E+00 -0.24753627E+00 -0.28178944E+00 -0.35029138E+00 + -0.36855822E+00 -0.26237061E+00 -0.23989326E+00 -0.21952607E+00 -0.19702607E+00 + -0.16912196E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.54569535E-10 0.10163641E-10 + 0.35544561E-10 -0.12914519E-13 -0.16298653E-08 0.15241345E-07 0.74083373E-07 + 0.45099010E-07 -0.68634757E-08 -0.13115626E-06 0.50721678E-06 0.20877493E-05 + -0.29348676E-05 -0.25897694E-04 -0.51995603E-04 0.10287555E-03 0.11273170E-03 + 0.54370291E-04 0.64457773E-04 0.38697467E-03 0.21679081E-03 0.11646405E-02 + 0.78718285E-03 0.10273306E-02 0.47332695E-03 0.33936597E-02 0.28584447E-02 + 0.14779814E-02 0.55812070E-02 0.21324667E-02 -0.43562584E-03 0.61879712E-03 + 0.77264409E-03 -0.46724003E-04 0.74021595E-03 0.74731869E-03 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.15508617E-09 -0.29001685E-07 -0.10094335E-06 0.33730771E-06 + 0.61918330E-07 0.59114847E-06 0.26335979E-05 -0.38266861E-05 -0.32884765E-04 + -0.70455066E-04 0.12984067E-03 0.13944299E-03 0.58690130E-04 0.52669312E-04 + 0.44580718E-03 0.16510697E-03 0.13412333E-02 0.69578670E-03 0.98173245E-03 + 0.94927197E-04 0.37701983E-02 0.28401533E-02 0.68002029E-03 0.56857727E-02 + 0.12195594E-02 -0.24086783E-02 -0.65632953E-03 -0.24650580E-03 -0.47080132E-03 + 0.49512956E-03 0.22329999E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.93073790E-12 + 0.34391125E-10 0.00000000E+00 -0.63493544E-07 0.57853306E-07 -0.71218045E-08 + 0.23917533E-08 0.66360525E-08 0.14765137E-07 -0.26446709E-07 0.11915608E-05 + 0.46871084E-05 -0.68618060E-05 -0.57639189E-04 -0.12054550E-03 0.19927395E-03 + 0.21723032E-03 0.78849504E-04 0.55299099E-04 0.66731249E-03 0.22658757E-03 + 0.23316204E-02 0.13976307E-02 0.22578767E-02 0.11003729E-02 0.73010639E-02 + 0.63586468E-02 0.32484747E-02 0.11420746E-01 0.53597173E-02 -0.10254063E-02 + 0.38001848E-02 0.42844912E-02 0.44055345E-02 0.41076490E-02 0.21523336E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.11965237E-11 0.45655708E-09 0.42737440E-07 -0.19213240E-06 0.22660586E-07 + 0.11338819E-06 -0.25588738E-07 0.32957179E-07 0.12058220E-07 0.10106372E-06 + -0.58849322E-07 -0.13863857E-06 0.15331968E-05 0.83578686E-05 -0.11825969E-04 + -0.99156959E-04 -0.19666694E-03 0.28980085E-03 0.31398427E-03 0.57885641E-04 + -0.24288692E-04 0.83491193E-03 -0.32326557E-04 0.30688972E-02 0.11892963E-02 + 0.23311815E-02 0.51874005E-04 0.91772735E-02 0.66117309E-02 0.61196229E-03 + 0.11736280E-01 0.39171170E-02 -0.78752073E-02 0.33843584E-02 0.30871889E-02 + 0.43344821E-02 0.33935929E-02 0.78079320E-03 0.73681547E-15 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.46649051E-07 -0.12140357E-06 + 0.17787191E-06 0.14287898E-07 -0.34062256E-07 0.47581833E-07 -0.36353347E-07 + 0.10507964E-07 0.11853577E-06 0.25966998E-06 -0.88931357E-07 -0.42567423E-06 + 0.13453168E-05 0.15539555E-04 -0.21684127E-04 -0.18041954E-03 -0.32783420E-03 + 0.44658954E-03 0.51414573E-03 0.68779247E-04 -0.12474085E-04 0.14831220E-02 + 0.45671703E-03 0.65161015E-02 0.44437947E-02 0.74132341E-02 0.49559836E-02 + 0.20331883E-01 0.17044885E-01 0.61764204E-02 0.22983914E-01 0.11161461E-01 + -0.13951649E-01 0.11098309E-01 0.87562236E-02 0.97655176E-02 0.73697653E-02 + 0.36178324E-02 +CO2 + -0.22865720E-03 -0.97352447E-04 -0.59292952E-04 -0.10802450E-03 -0.20963261E-03 + -0.31439685E-03 -0.42018708E-03 -0.64275316E-03 -0.98807473E-03 -0.15946434E-02 + -0.21956518E-02 -0.25967981E-02 -0.23102537E-02 -0.24506731E-02 -0.23304970E-02 + -0.20340668E-02 -0.27194629E-03 0.23303530E-02 0.16981059E-02 0.13301118E-02 + 0.24379787E-03 -0.14722574E-02 0.14748118E-03 0.18415393E-02 0.31919427E-02 + 0.53560049E-02 0.53753404E-02 0.24140279E-02 0.19916633E-02 0.18959038E-02 + -0.46250158E-04 0.92993292E-03 0.66235721E-03 -0.29909236E-03 -0.91256387E-03 + -0.20091485E-03 -0.26484930E-03 0.92792382E-04 0.20269839E-03 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.55765582E-03 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.26494568E-10 -0.55898752E-10 + -0.81294632E-10 -0.15617742E-09 -0.30072450E-09 -0.31850745E-09 -0.63421389E-09 + -0.14478786E-08 -0.16849123E-08 -0.31162155E-08 -0.31136224E-08 -0.48341089E-08 + -0.41241332E-08 -0.55902391E-08 -0.85249484E-08 -0.11518900E-07 -0.17153870E-07 + -0.17893054E-07 -0.27182806E-07 -0.42602354E-07 -0.67547494E-07 -0.10962106E-06 + 0.78581777E-08 -0.69960454E-07 -0.10129621E-06 -0.32494335E-07 -0.66849987E-07 + -0.12003827E-06 -0.15482991E-06 -0.17136134E-06 -0.20614806E-06 -0.19704785E-06 + -0.27449800E-06 -0.27632735E-06 -0.37862489E-06 -0.33084530E-06 -0.38687215E-06 + -0.42435244E-06 -0.44590853E-06 -0.50459516E-06 -0.50358352E-06 -0.52652763E-06 + -0.54972378E-06 -0.54104460E-06 -0.53294502E-06 -0.54327269E-06 -0.56278746E-06 + -0.53817967E-06 -0.50056808E-06 -0.46621873E-06 -0.39950326E-06 -0.33725788E-06 + -0.26893397E-06 -0.28084279E-07 -0.73088945E-07 -0.13085909E-06 -0.24384998E-06 + -0.39068425E-06 -0.67474375E-06 -0.10006867E-05 -0.15384681E-05 -0.21655049E-05 + -0.31382941E-05 -0.42814513E-05 -0.57704627E-05 -0.77091307E-05 -0.10000553E-04 + -0.12699530E-04 -0.15752579E-04 -0.19293497E-04 -0.23440445E-04 -0.28041435E-04 + -0.33531782E-04 -0.39038571E-04 -0.45285096E-04 -0.52956358E-04 -0.61302165E-04 + -0.70798507E-04 -0.80227274E-04 -0.89473323E-04 -0.97767054E-04 -0.10825691E-03 + -0.11758090E-03 -0.12661670E-03 -0.13640931E-03 -0.14586079E-03 -0.15209012E-03 + -0.15858167E-03 -0.16562447E-03 -0.16990699E-03 -0.17359495E-03 -0.17560399E-03 + -0.17465210E-03 -0.17537695E-03 -0.17316368E-03 -0.16936159E-03 -0.16469196E-03 + -0.15829590E-03 -0.15131816E-03 -0.13881738E-03 -0.12793380E-03 -0.11745110E-03 + -0.10402826E-03 -0.91213463E-04 -0.78769428E-04 -0.63523301E-04 -0.42766468E-10 + -0.15239200E-09 -0.45004935E-09 -0.12859528E-08 -0.34250235E-08 -0.79529413E-08 + -0.12936361E-07 -0.20425614E-07 -0.26199966E-07 -0.31116940E-07 -0.31704517E-07 + -0.32663537E-07 -0.33279047E-07 -0.36132684E-07 -0.41709340E-07 -0.44760251E-07 + -0.52287346E-07 -0.62637899E-07 -0.76962585E-07 -0.12592493E-06 -0.19585703E-06 + 0.26225045E-07 -0.20383511E-06 -0.11264308E-06 -0.21901987E-06 -0.22060654E-06 + -0.25410264E-06 -0.31945171E-06 -0.38921401E-06 -0.47269155E-06 -0.56003306E-06 + -0.66055012E-06 -0.79554939E-06 -0.95094001E-06 -0.10949494E-05 -0.12667620E-05 + -0.14368425E-05 -0.16358299E-05 -0.18544938E-05 -0.20588118E-05 -0.22358916E-05 + -0.23436601E-05 -0.24414639E-05 -0.25020941E-05 -0.24930181E-05 -0.25293361E-05 + -0.24550982E-05 -0.23144908E-05 -0.21824407E-05 -0.20092586E-05 -0.17852543E-05 + -0.15358926E-05 -0.12413600E-05 -0.24183656E-07 -0.10224412E-06 -0.33412551E-06 + -0.96830336E-06 -0.26399869E-05 -0.63979271E-05 -0.10172038E-04 -0.15684896E-04 + -0.19672604E-04 -0.23662709E-04 -0.23845747E-04 -0.23147883E-04 -0.23594318E-04 + -0.24535781E-04 -0.28763891E-04 -0.30546077E-04 -0.35475999E-04 -0.42831889E-04 + -0.50671611E-04 -0.59350516E-04 -0.59777799E-04 -0.64297487E-04 -0.68279115E-04 + -0.76096996E-04 -0.82928881E-04 -0.92753359E-04 -0.11562723E-03 -0.13792273E-03 + -0.16426719E-03 -0.20684177E-03 -0.24566747E-03 -0.29517810E-03 -0.36622264E-03 + -0.45517593E-03 -0.53525206E-03 -0.63635204E-03 -0.74775522E-03 -0.87244400E-03 + -0.10110114E-02 -0.11668198E-02 -0.12785735E-02 -0.13471583E-02 -0.13987398E-02 + -0.14242944E-02 -0.14163058E-02 -0.14373933E-02 -0.13820682E-02 -0.12892097E-02 + -0.12112098E-02 -0.11130391E-02 -0.99216736E-03 -0.84854677E-03 -0.68422590E-03 + -0.15890763E-07 -0.65828040E-07 -0.21683574E-06 -0.61301429E-06 -0.16862871E-05 + -0.40531451E-05 -0.64771029E-05 -0.99999382E-05 -0.12732704E-04 -0.15522701E-04 + -0.15936126E-04 -0.15727128E-04 -0.16251869E-04 -0.17157617E-04 -0.20222946E-04 + -0.21457574E-04 -0.24651717E-04 -0.29497003E-04 -0.35182734E-04 -0.41102303E-04 + -0.41098167E-04 -0.44113886E-04 -0.46979984E-04 -0.52368718E-04 -0.56858931E-04 + -0.63859341E-04 -0.79819670E-04 -0.94357967E-04 -0.11087025E-03 -0.13803266E-03 + -0.16290138E-03 -0.19518388E-03 -0.24162851E-03 -0.30051618E-03 -0.35289468E-03 + -0.41732474E-03 -0.48944251E-03 -0.57252918E-03 -0.66552133E-03 -0.76917779E-03 + -0.84523101E-03 -0.89247481E-03 -0.93083597E-03 -0.95160822E-03 -0.94924302E-03 + -0.96646142E-03 -0.93293164E-03 -0.87388654E-03 -0.82382777E-03 -0.75827956E-03 + -0.67660742E-03 -0.57910718E-03 -0.46742273E-03 -0.92667505E-08 -0.37612336E-07 + -0.11611858E-06 -0.34383752E-06 -0.91218202E-06 -0.21875341E-05 -0.34873836E-05 + -0.54037573E-05 -0.69753216E-05 -0.85765992E-05 -0.89258693E-05 -0.89113763E-05 + -0.92961568E-05 -0.98782236E-05 -0.11670105E-04 -0.12420050E-04 -0.14167823E-04 + -0.16892287E-04 -0.20339506E-04 -0.23754117E-04 -0.23731021E-04 -0.25610734E-04 + -0.27511772E-04 -0.30796411E-04 -0.33656814E-04 -0.38012648E-04 -0.47431892E-04 + -0.56039046E-04 -0.65787844E-04 -0.81249791E-04 -0.95759424E-04 -0.11427413E-03 + -0.14045787E-03 -0.17311141E-03 -0.20217784E-03 -0.23678279E-03 -0.27484820E-03 + -0.31855863E-03 -0.36695189E-03 -0.41992889E-03 -0.45910837E-03 -0.48304720E-03 + -0.50338148E-03 -0.51406028E-03 -0.51177915E-03 -0.52042081E-03 -0.50315280E-03 + -0.47269497E-03 -0.44633790E-03 -0.41057726E-03 -0.36606698E-03 -0.31328562E-03 + -0.25291965E-03 -0.27573157E-04 -0.69141852E-04 -0.14687654E-03 -0.22826371E-03 + -0.23204784E-03 -0.20977365E-03 -0.23705269E-03 -0.33350652E-03 -0.44813922E-03 + -0.65922401E-03 -0.85286830E-03 -0.10363137E-02 -0.12407711E-02 -0.14420310E-02 + -0.17443739E-02 -0.19772648E-02 -0.22894275E-02 -0.26587566E-02 -0.30597460E-02 + -0.35596087E-02 -0.38329225E-02 -0.43879291E-02 -0.47735750E-02 -0.53942459E-02 + -0.61975245E-02 -0.67971258E-02 -0.82407860E-02 -0.93930129E-02 -0.10667051E-01 + -0.12137289E-01 -0.13015937E-01 -0.14481573E-01 -0.16143671E-01 -0.17700981E-01 + -0.18567994E-01 -0.19687047E-01 -0.20351883E-01 -0.20916135E-01 -0.21168827E-01 + -0.21318531E-01 -0.20516532E-01 -0.19277233E-01 -0.17776864E-01 -0.16078817E-01 + -0.14316801E-01 -0.13051092E-01 -0.11050747E-01 -0.91626501E-02 -0.76762529E-02 + -0.63383248E-02 -0.51366445E-02 -0.40448357E-02 -0.30131243E-02 -0.13808057E-03 + 0.13106480E-03 0.44246953E-04 0.12554380E-03 0.12704424E-03 0.27942351E-03 + 0.90959230E-03 0.16353083E-02 0.22895927E-02 0.28834029E-02 0.45372195E-02 + 0.70347081E-02 0.10647536E-01 0.14859131E-01 0.17189169E-01 0.19370528E-01 + 0.21305848E-01 0.23027023E-01 0.22568012E-01 0.22135847E-01 0.22374934E-01 + 0.21656424E-01 0.28956974E-01 0.84170697E-02 -0.12956625E-01 -0.74710284E-02 + 0.16843285E-01 0.25200735E-01 0.17942530E-01 0.11581020E-01 0.10549157E-01 + 0.87411190E-02 0.66400518E-02 0.30746623E-02 0.25700366E-02 0.28007217E-02 + 0.13777106E-02 0.10584195E-02 0.64891275E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.10557481E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.21625280E-10 -0.31011914E-11 -0.17903376E-10 + -0.69787529E-10 0.85572529E-10 0.78530205E-09 -0.64367755E-09 -0.99242149E-09 + -0.62243774E-09 0.10406803E-08 -0.17111449E-08 -0.14323801E-08 0.13510472E-08 + 0.12707074E-08 -0.13575487E-09 -0.44374389E-08 -0.25062713E-08 -0.66326229E-09 + 0.15379101E-08 0.87001832E-08 0.42378668E-08 0.83790085E-08 0.43226695E-08 + 0.21973458E-07 -0.13913007E-07 0.81814960E-08 -0.79073713E-07 -0.18929430E-07 + -0.97900822E-08 -0.99030101E-08 -0.20141297E-07 -0.19875507E-07 -0.37705501E-07 + -0.46362414E-07 -0.60839605E-07 -0.72446528E-07 -0.98055607E-07 -0.12968142E-06 + -0.16772374E-06 -0.15661155E-06 -0.33725289E-06 -0.36983820E-06 -0.42697766E-06 + -0.47552863E-06 -0.54094892E-06 -0.55477166E-06 -0.56642886E-06 -0.56671065E-06 + -0.54895771E-06 -0.51200265E-06 -0.44834722E-06 -0.41149803E-06 -0.37254506E-06 + -0.37240166E-07 0.81850014E-09 -0.79176420E-08 0.10369870E-07 0.17456564E-07 + -0.12574641E-07 0.13662017E-07 0.53120588E-08 0.82474297E-08 0.22957633E-07 + 0.42580694E-07 0.67518289E-07 -0.47507986E-07 -0.86353401E-07 -0.36365326E-07 + 0.31685557E-07 -0.14479653E-07 -0.39875016E-06 -0.10291793E-05 -0.14275735E-05 + -0.17943383E-05 -0.22227361E-05 -0.35396373E-05 -0.41934897E-05 -0.40236434E-05 + -0.59573086E-05 -0.42100225E-05 -0.78541904E-05 -0.99030753E-05 -0.10400391E-04 + -0.11278433E-04 -0.11949184E-04 -0.12488804E-04 -0.12891782E-04 -0.13890704E-04 + -0.15073048E-04 -0.15309066E-04 -0.15152009E-04 -0.16509780E-04 -0.32833231E-04 + -0.23149414E-04 -0.22406451E-04 -0.23168764E-04 -0.23640189E-04 -0.23633353E-04 + -0.24874428E-04 -0.22078873E-04 -0.19237073E-04 -0.17098671E-04 -0.15429200E-04 + -0.13301092E-04 -0.10583000E-04 -0.87832680E-05 0.12415986E-09 0.70770950E-10 + 0.14553761E-09 0.13780436E-09 -0.20820115E-09 -0.67253525E-09 -0.32446230E-08 + -0.81324388E-08 -0.12617974E-07 -0.17649480E-07 -0.22908236E-07 -0.25998999E-07 + -0.24667862E-07 -0.33989922E-07 -0.37577551E-07 -0.49953454E-07 -0.48617125E-07 + -0.67107548E-07 -0.81442889E-07 -0.75410200E-07 -0.87498472E-07 -0.95928803E-07 + -0.82777738E-07 -0.10240631E-06 -0.57823329E-07 -0.66662452E-07 -0.11858423E-06 + -0.17340372E-06 -0.21840680E-06 -0.24543746E-06 -0.35067984E-06 -0.44855801E-06 + -0.58141984E-06 -0.72357824E-06 -0.79163320E-06 -0.91312328E-06 -0.10079343E-05 + -0.10884708E-05 -0.10599876E-05 -0.10136075E-05 -0.11044576E-05 -0.11994669E-05 + -0.12634950E-05 -0.12513568E-05 -0.12391662E-05 -0.12786720E-05 -0.12416114E-05 + -0.13568918E-05 -0.14159609E-05 -0.13010565E-05 -0.10878115E-05 -0.89027594E-06 + -0.69673659E-06 0.33404939E-07 0.91602988E-07 0.72625261E-07 0.72058088E-07 + -0.19917320E-06 -0.87437113E-06 -0.31220460E-05 -0.63008621E-05 -0.11852911E-04 + -0.16460864E-04 -0.20365984E-04 -0.22762435E-04 -0.23878671E-04 -0.26775549E-04 + -0.33478775E-04 -0.37787577E-04 -0.47090017E-04 -0.59721674E-04 -0.68978578E-04 + -0.65554034E-04 -0.69414610E-04 -0.72590509E-04 -0.71518329E-04 -0.70569715E-04 + -0.55613869E-04 -0.45312433E-04 -0.96726218E-04 -0.14000089E-03 -0.17385206E-03 + -0.21698693E-03 -0.29375124E-03 -0.39142382E-03 -0.50835964E-03 -0.62175407E-03 + -0.72755054E-03 -0.82879844E-03 -0.91329452E-03 -0.99780903E-03 -0.98127195E-03 + -0.91819068E-03 -0.10477831E-02 -0.11200617E-02 -0.11877186E-02 -0.12126938E-02 + -0.11982061E-02 -0.12107014E-02 -0.12426881E-02 -0.13234976E-02 -0.13763146E-02 + -0.12627706E-02 -0.10761669E-02 -0.88695502E-03 -0.69445552E-03 0.65206366E-07 + 0.48306642E-07 0.37711325E-07 0.58629453E-07 -0.11395197E-06 -0.36939842E-06 + -0.15086840E-05 -0.30135114E-05 -0.59453838E-05 -0.79195224E-05 -0.94938172E-05 + -0.10562901E-04 -0.11168669E-04 -0.12456271E-04 -0.15514591E-04 -0.16768244E-04 + -0.20412075E-04 -0.27748788E-04 -0.33807813E-04 -0.30937843E-04 -0.33116816E-04 + -0.35109764E-04 -0.34519334E-04 -0.33307538E-04 -0.22756136E-04 -0.13949837E-04 + -0.40772551E-04 -0.65940146E-04 -0.83488517E-04 -0.10341959E-03 -0.13908554E-03 + -0.18458423E-03 -0.23774169E-03 -0.28737108E-03 -0.32958171E-03 -0.36638091E-03 + -0.39239035E-03 -0.41951128E-03 -0.38983473E-03 -0.35412336E-03 -0.44045570E-03 + -0.48025429E-03 -0.51718567E-03 -0.52930317E-03 -0.51495785E-03 -0.51220634E-03 + -0.53000479E-03 -0.58267064E-03 -0.61965615E-03 -0.56310542E-03 -0.46621401E-03 + -0.37281727E-03 -0.28343589E-03 -0.93534786E-08 0.34991472E-07 0.65569844E-07 + -0.44163662E-07 -0.57843667E-07 -0.17757304E-06 -0.65712658E-06 -0.13016105E-05 + -0.27187246E-05 -0.34716685E-05 -0.40116220E-05 -0.44416261E-05 -0.49052864E-05 + -0.55137801E-05 -0.67805549E-05 -0.70075117E-05 -0.80611128E-05 -0.11502081E-04 + -0.14949225E-04 -0.13665334E-04 -0.15422436E-04 -0.17060246E-04 -0.17383529E-04 + -0.17232884E-04 -0.12120926E-04 -0.79200379E-05 -0.22276352E-04 -0.36401432E-04 + -0.46940967E-04 -0.58824284E-04 -0.79286394E-04 -0.10500483E-03 -0.13507252E-03 + -0.16310673E-03 -0.18788035E-03 -0.21062782E-03 -0.22802222E-03 -0.24620445E-03 + -0.23693827E-03 -0.22458130E-03 -0.26261411E-03 -0.28300695E-03 -0.30111220E-03 + -0.30669400E-03 -0.29853002E-03 -0.29165446E-03 -0.28932304E-03 -0.30249139E-03 + -0.31108153E-03 -0.27812110E-03 -0.22802285E-03 -0.18133427E-03 -0.13668367E-03 + -0.40367654E-04 -0.79006963E-04 -0.27482053E-03 -0.56482700E-03 -0.69731292E-03 + -0.80594912E-03 -0.91012970E-03 -0.11348336E-02 -0.12533336E-02 -0.15806294E-02 + -0.20154281E-02 -0.24776851E-02 -0.30674609E-02 -0.36662833E-02 -0.44648189E-02 + -0.54307618E-02 -0.65312730E-02 -0.75024710E-02 -0.86898673E-02 -0.97648596E-02 + -0.11020476E-01 -0.12417895E-01 -0.13699981E-01 -0.15903283E-01 -0.17530819E-01 + -0.20020404E-01 -0.22470095E-01 -0.25779815E-01 -0.29856823E-01 -0.33204908E-01 + -0.37349315E-01 -0.40858354E-01 -0.45062059E-01 -0.48378113E-01 -0.52371824E-01 + -0.56363513E-01 -0.59176459E-01 -0.61787481E-01 -0.63719847E-01 -0.65236199E-01 + -0.66726426E-01 -0.67370931E-01 -0.66907623E-01 -0.65092655E-01 -0.62377434E-01 + -0.60471137E-01 -0.55256886E-01 -0.49232843E-01 -0.44003203E-01 -0.37886208E-01 + -0.32038466E-01 -0.26780086E-01 -0.21180175E-01 0.26740634E-02 0.49847965E-04 + 0.44525128E-03 -0.13702523E-02 -0.35412474E-03 0.18680423E-02 0.31068351E-02 + 0.25304834E-02 0.34692075E-02 0.38609898E-02 0.13510337E-01 0.76678132E-02 + 0.22524878E-01 0.22748545E-01 0.38574658E-01 0.36167069E-01 0.36868006E-01 + 0.14691057E-02 -0.81063816E-02 -0.32235652E-01 -0.34516705E-01 -0.48518688E-01 + 0.11546819E+00 -0.83471999E-01 -0.15890358E+00 -0.38269761E-01 0.16855982E+00 + 0.19339225E-01 -0.55778637E-01 -0.33133629E-01 -0.31286828E-02 0.22115056E-01 + 0.16039962E-01 0.35830334E-01 0.22946883E-01 0.50698420E-02 0.30085349E-02 + 0.14823609E-01 0.26589733E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.15071304E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.58546640E-09 0.54086009E-09 0.79982165E-09 0.83961884E-09 + 0.53411403E-08 0.10902391E-07 0.12324079E-07 0.16821895E-07 0.27330552E-07 + 0.23501066E-07 0.38184357E-07 0.43646856E-07 0.60896224E-07 0.82096080E-07 + 0.12443007E-06 0.13871768E-06 0.18541667E-06 0.14145241E-06 0.15375266E-06 + 0.10327089E-06 0.30126555E-06 0.65731781E-06 0.71232178E-06 -0.16945603E-06 + -0.12794471E-05 0.38766904E-06 0.25413098E-05 0.10987084E-05 0.35801670E-06 + 0.59639013E-06 0.81725031E-06 0.27165886E-05 0.14171560E-05 0.15177340E-05 + 0.34918919E-05 0.11226706E-05 0.19637544E-05 0.27342412E-05 0.34473018E-05 + 0.95232279E-05 0.33902928E-05 0.27956781E-05 0.30174224E-05 0.33959725E-05 + 0.33636476E-05 0.32382911E-05 0.32975742E-05 0.31769299E-05 0.33342680E-05 + 0.32091194E-05 0.27985170E-05 0.23689472E-05 0.19794873E-05 0.10013758E-06 + -0.18988333E-07 -0.29122830E-07 0.32399969E-07 -0.28611460E-07 -0.26813237E-06 + -0.24789708E-06 -0.37719117E-06 -0.49008451E-06 -0.60213074E-06 -0.13818762E-05 + -0.10843344E-05 -0.26032101E-05 -0.30788007E-05 -0.56615372E-05 -0.66240978E-05 + -0.87597426E-05 -0.63611364E-05 -0.73913631E-05 -0.44523103E-05 -0.58852866E-05 + -0.24021924E-05 -0.52336329E-04 0.19606534E-04 0.85298378E-04 -0.19434963E-04 + -0.12598681E-03 -0.44419887E-04 0.78522821E-05 0.11121395E-04 -0.16523589E-04 + -0.44148468E-04 -0.21480705E-04 -0.12334974E-04 0.10388753E-04 0.42488564E-04 + 0.55697707E-04 0.40691183E-04 0.92712170E-05 -0.28007960E-03 0.69101337E-04 + 0.12332175E-03 0.12001678E-03 0.11233130E-03 0.12140048E-03 0.13810682E-03 + 0.13270725E-03 0.12992508E-03 0.10527103E-03 0.88044385E-04 0.81187591E-04 + 0.77952241E-04 0.63844991E-04 0.41356636E-07 0.66625091E-08 0.21471653E-07 + 0.59250689E-07 0.13873569E-06 0.30084689E-06 0.43147471E-06 0.55642296E-06 + 0.63982588E-06 0.70281484E-06 0.73599478E-06 0.79766860E-06 0.83593868E-06 + 0.96882914E-06 0.11664691E-05 0.13689376E-05 0.17023400E-05 0.19994689E-05 + 0.23587396E-05 0.28447754E-05 0.38337599E-05 0.19516618E-05 0.39444501E-05 + 0.40064360E-05 0.47958492E-05 0.61113843E-05 0.72271057E-05 0.82017458E-05 + 0.10164678E-04 0.12063614E-04 0.15293023E-04 0.17806998E-04 0.20438276E-04 + 0.22918226E-04 0.24600098E-04 0.25882181E-04 0.27891504E-04 0.30607709E-04 + 0.32985634E-04 0.34043115E-04 0.32898586E-04 0.33229369E-04 0.33736402E-04 + 0.33051234E-04 0.31555987E-04 0.30798792E-04 0.29208853E-04 0.27594402E-04 + 0.25989076E-04 0.23135923E-04 0.19985008E-04 0.16874441E-04 0.13496048E-04 + 0.32620493E-04 0.62857211E-05 0.18301930E-04 0.50476563E-04 0.11357220E-03 + 0.23824609E-03 0.33526264E-03 0.43015371E-03 0.48559137E-03 0.54734701E-03 + 0.58067251E-03 0.62691608E-03 0.67437801E-03 0.78040272E-03 0.95659858E-03 + 0.11534602E-02 0.14431333E-02 0.16715275E-02 0.19498051E-02 0.23462946E-02 + 0.25829980E-02 0.28235400E-02 0.30250872E-02 0.33829046E-02 0.39761966E-02 + 0.50695698E-02 0.61681680E-02 0.67922498E-02 0.85013145E-02 0.10007119E-01 + 0.12705166E-01 0.14624011E-01 0.16609890E-01 0.18300944E-01 0.19306151E-01 + 0.20139210E-01 0.21347873E-01 0.23134695E-01 0.24837796E-01 0.25348698E-01 + 0.23815814E-01 0.23494592E-01 0.23337508E-01 0.22570902E-01 0.21379873E-01 + 0.20661183E-01 0.19333876E-01 0.18018530E-01 0.16909567E-01 0.14934679E-01 + 0.12894198E-01 0.10894479E-01 0.86827928E-02 0.21467435E-04 0.38788021E-05 + 0.11362646E-04 0.31252313E-04 0.70249577E-04 0.14844627E-03 0.21124500E-03 + 0.27567035E-03 0.31784860E-03 0.36498237E-03 0.39401974E-03 0.44069590E-03 + 0.47962148E-03 0.55816550E-03 0.67951705E-03 0.80344865E-03 0.99699905E-03 + 0.11754473E-02 0.13960428E-02 0.16577670E-02 0.17927729E-02 0.19446316E-02 + 0.20793909E-02 0.23207811E-02 0.27161031E-02 0.34354265E-02 0.41523835E-02 + 0.46456565E-02 0.57996349E-02 0.68108428E-02 0.86464743E-02 0.10009925E-01 + 0.11456934E-01 0.12738818E-01 0.13538306E-01 0.14188827E-01 0.15121703E-01 + 0.16511870E-01 0.17844671E-01 0.18386918E-01 0.17653223E-01 0.17595710E-01 + 0.17638893E-01 0.17167860E-01 0.16310004E-01 0.15761989E-01 0.14814152E-01 + 0.13842069E-01 0.12964432E-01 0.11462283E-01 0.98992459E-02 0.83556990E-02 + 0.66667883E-02 0.10686448E-04 0.19585024E-05 0.61472036E-05 0.16368894E-04 + 0.37156785E-04 0.78741342E-04 0.11336789E-03 0.14968630E-03 0.17511429E-03 + 0.20307365E-03 0.22103034E-03 0.25253064E-03 0.27587009E-03 0.32130059E-03 + 0.38850406E-03 0.45197714E-03 0.55706382E-03 0.66507759E-03 0.79906455E-03 + 0.93604078E-03 0.99267272E-03 0.10690850E-02 0.11424861E-02 0.12707282E-02 + 0.14777552E-02 0.18543524E-02 0.22286023E-02 0.24936981E-02 0.30971159E-02 + 0.36189908E-02 0.45849262E-02 0.52996634E-02 0.60595672E-02 0.67406012E-02 + 0.71632947E-02 0.74962905E-02 0.79834540E-02 0.87295756E-02 0.94516899E-02 + 0.98577726E-02 0.96399266E-02 0.97128598E-02 0.98502331E-02 0.96705143E-02 + 0.92363541E-02 0.89585395E-02 0.84791428E-02 0.79653498E-02 0.74690083E-02 + 0.66209309E-02 0.57278840E-02 0.48353372E-02 0.38648308E-02 0.32687808E-02 + 0.12958533E-03 -0.16872010E-03 -0.71437960E-03 -0.13088951E-04 0.19162828E-02 + 0.22641076E-02 0.24048763E-02 0.18981970E-02 0.17653640E-02 0.10219076E-02 + 0.56771465E-03 0.29298247E-03 0.37483262E-03 0.11679955E-02 0.21731330E-02 + 0.35958787E-02 0.42913941E-02 0.41291865E-02 0.69281756E-02 0.34722125E-02 + 0.11877040E-02 0.11624429E-01 0.32802758E-02 -0.51155654E-02 -0.34832501E-02 + 0.14507598E-01 0.70510212E-02 0.11287680E-01 -0.70485672E-02 -0.31665902E-02 + -0.15341776E-01 -0.27109726E-01 -0.34911197E-01 -0.42019398E-01 -0.49833909E-01 + -0.49364159E-01 -0.43047009E-01 -0.38979151E-01 -0.46849785E-01 -0.25968681E-01 + -0.27827406E-01 -0.24227316E-01 -0.18308625E-01 -0.10158780E-01 0.11933171E-02 + 0.61681116E-02 0.11206292E-01 0.16580899E-01 0.17705111E-01 0.17753110E-01 + 0.16754650E-01 0.14481813E-01 -0.45897979E-03 -0.32033052E-03 -0.37059529E-04 + 0.16972652E-02 -0.27025096E-03 -0.17600494E-02 -0.21151335E-02 -0.39711847E-02 + -0.29546491E-02 -0.15996610E-02 -0.14232136E-01 0.92398882E-03 -0.12715533E-01 + -0.18108455E-01 -0.33844087E-01 -0.36948152E-01 -0.47684103E-01 -0.19185858E-01 + -0.46218377E-02 0.18956429E-01 0.16421362E-01 0.18615874E-01 -0.11209125E+00 + 0.47628209E-01 0.16588138E+00 0.42847228E-01 -0.15958352E+00 -0.26231934E-01 + 0.45634100E-01 0.45018848E-01 -0.34637867E-01 -0.41339982E-01 -0.43806116E-01 + -0.36702941E-01 -0.58816181E-02 0.85806844E-02 0.41639091E-02 -0.12565937E-01 + -0.98535247E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.63454807E-03 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.87241487E-10 -0.34109470E-09 -0.50043047E-09 -0.17698848E-09 -0.23266211E-08 + -0.78642754E-08 -0.95356006E-08 -0.12601433E-07 -0.99280629E-08 -0.93919857E-08 + -0.23145748E-07 -0.12771432E-07 -0.27022138E-07 -0.46858510E-07 -0.82367632E-07 + -0.90012212E-07 -0.13376318E-06 -0.95269602E-07 -0.74536966E-07 0.91737887E-09 + -0.19038117E-06 -0.51573125E-06 -0.52026159E-06 0.12864239E-06 0.16129186E-05 + -0.28128192E-06 -0.17489301E-05 -0.55593580E-06 0.16608100E-06 0.35312043E-07 + -0.10708327E-05 -0.15694244E-05 -0.16934001E-05 -0.11980770E-05 -0.13795152E-05 + -0.84064370E-06 -0.59762855E-06 -0.13135582E-05 -0.18335581E-05 -0.95193648E-05 + -0.12380359E-05 -0.76760331E-06 -0.78170042E-06 -0.84703543E-06 -0.31688537E-06 + -0.61189518E-06 -0.38015114E-06 -0.15789558E-06 -0.82569579E-06 -0.11002194E-05 + -0.10281803E-05 -0.98627446E-06 -0.79392413E-06 -0.22158897E-09 0.10464595E-07 + -0.53545577E-07 0.48118884E-07 0.25879737E-07 0.13909398E-06 0.18085805E-06 + 0.25500730E-06 0.22622907E-06 0.22171501E-06 0.10476668E-05 -0.17489041E-06 + 0.12353624E-05 0.19196835E-05 0.41806051E-05 0.49811826E-05 0.72803072E-05 + 0.52114259E-05 0.47062208E-05 0.31321325E-06 0.53316015E-07 -0.20867569E-05 + 0.35223370E-04 -0.17577311E-04 -0.93838264E-04 0.10242950E-04 0.97930695E-04 + 0.24937584E-04 -0.17092723E-04 -0.21792363E-04 0.50349370E-04 0.65526791E-04 + 0.59448898E-04 0.40867000E-04 0.51418066E-05 -0.11864091E-04 -0.69634751E-05 + 0.29752222E-04 0.39678980E-04 0.49693732E-03 0.19763053E-04 -0.16891665E-04 + -0.17647838E-04 -0.30022537E-04 -0.60715111E-04 -0.47170437E-04 -0.65611655E-04 + -0.82358522E-04 -0.45309448E-04 -0.25431025E-04 -0.23273939E-04 -0.19569156E-04 + -0.14701706E-04 -0.78217621E-08 -0.43739274E-08 -0.14593661E-07 -0.38113308E-07 + -0.76531039E-07 -0.17095166E-06 -0.24641522E-06 -0.34012232E-06 -0.38633420E-06 + -0.45998696E-06 -0.52098665E-06 -0.58762407E-06 -0.64350750E-06 -0.78278719E-06 + -0.96419391E-06 -0.11435875E-05 -0.14308319E-05 -0.15653034E-05 -0.17258986E-05 + -0.19401993E-05 -0.28756561E-05 -0.93289657E-06 -0.24299440E-05 -0.23849855E-05 + -0.28787966E-05 -0.38423881E-05 -0.47785149E-05 -0.51037376E-05 -0.64717574E-05 + -0.78689445E-05 -0.93999176E-05 -0.10496104E-04 -0.11318483E-04 -0.12226476E-04 + -0.13693728E-04 -0.15900346E-04 -0.17995539E-04 -0.21767884E-04 -0.23632340E-04 + -0.28669903E-04 -0.25305965E-04 -0.26297759E-04 -0.27032951E-04 -0.27131595E-04 + -0.26287638E-04 -0.26988027E-04 -0.26636702E-04 -0.25125569E-04 -0.23822302E-04 + -0.20439708E-04 -0.17615456E-04 -0.14918775E-04 -0.12021003E-04 -0.61708728E-05 + -0.42179872E-05 -0.12426463E-04 -0.32354044E-04 -0.62078566E-04 -0.13505663E-03 + -0.19493090E-03 -0.26936329E-03 -0.30668503E-03 -0.37742473E-03 -0.43761969E-03 + -0.47855869E-03 -0.53497236E-03 -0.65182484E-03 -0.80323541E-03 -0.10094160E-02 + -0.12237302E-02 -0.13084673E-02 -0.14131106E-02 -0.16366413E-02 -0.17444002E-02 + -0.18091425E-02 -0.18702314E-02 -0.19715735E-02 -0.24472138E-02 -0.31964142E-02 + -0.40459564E-02 -0.42658828E-02 -0.54479731E-02 -0.65973819E-02 -0.78500087E-02 + -0.86767587E-02 -0.93571955E-02 -0.10050792E-01 -0.11196187E-01 -0.13074859E-01 + -0.14813016E-01 -0.17928283E-01 -0.19902268E-01 -0.24525368E-01 -0.21319856E-01 + -0.21981152E-01 -0.22475830E-01 -0.22365039E-01 -0.21690766E-01 -0.21921848E-01 + -0.20781968E-01 -0.18941394E-01 -0.17674724E-01 -0.14963287E-01 -0.12696752E-01 + -0.10756559E-01 -0.86087837E-02 -0.40609575E-05 -0.25746381E-05 -0.77379129E-05 + -0.20076947E-04 -0.38319126E-04 -0.83774105E-04 -0.12180547E-03 -0.16916241E-03 + -0.19486589E-03 -0.23976671E-03 -0.28023761E-03 -0.31827251E-03 -0.35449880E-03 + -0.43302460E-03 -0.52910596E-03 -0.65136758E-03 -0.79111104E-03 -0.88020333E-03 + -0.98614716E-03 -0.11165695E-02 -0.11542629E-02 -0.11804442E-02 -0.12142551E-02 + -0.12731373E-02 -0.15750117E-02 -0.20484188E-02 -0.25920110E-02 -0.28094905E-02 + -0.35899085E-02 -0.43225237E-02 -0.51174174E-02 -0.56382359E-02 -0.60531750E-02 + -0.64717882E-02 -0.71569546E-02 -0.83066223E-02 -0.93964608E-02 -0.11440758E-01 + -0.12689802E-01 -0.15718414E-01 -0.13751583E-01 -0.14201048E-01 -0.14584167E-01 + -0.14563076E-01 -0.14150559E-01 -0.14434254E-01 -0.13906232E-01 -0.12857413E-01 + -0.12076481E-01 -0.10260462E-01 -0.87208470E-02 -0.73952991E-02 -0.59332561E-02 + -0.20252719E-05 -0.13126438E-05 -0.40930960E-05 -0.10629809E-04 -0.20277174E-04 + -0.44286874E-04 -0.64929542E-04 -0.90450124E-04 -0.10493617E-03 -0.12848676E-03 + -0.15069779E-03 -0.17611563E-03 -0.19490937E-03 -0.23788524E-03 -0.28811188E-03 + -0.34803801E-03 -0.42308879E-03 -0.48733699E-03 -0.56092447E-03 -0.62084102E-03 + -0.62260873E-03 -0.63145811E-03 -0.65110704E-03 -0.68089728E-03 -0.83901061E-03 + -0.10854846E-02 -0.13721448E-02 -0.14962215E-02 -0.19062026E-02 -0.22859554E-02 + -0.26982404E-02 -0.29646212E-02 -0.31701655E-02 -0.33724115E-02 -0.37000087E-02 + -0.42494962E-02 -0.47507425E-02 -0.57333118E-02 -0.62552089E-02 -0.78188087E-02 + -0.68856500E-02 -0.70775863E-02 -0.72586068E-02 -0.72259087E-02 -0.69865188E-02 + -0.71826227E-02 -0.70473994E-02 -0.66218568E-02 -0.62701904E-02 -0.53458273E-02 + -0.45456085E-02 -0.38513459E-02 -0.30924826E-02 -0.69634322E-03 -0.16792705E-03 + -0.32166479E-03 -0.16683979E-03 -0.21913054E-03 -0.12845594E-02 -0.18313051E-02 + -0.23905513E-02 -0.24549238E-02 -0.32457862E-02 -0.33209369E-02 -0.33139807E-02 + -0.33154235E-02 -0.40857631E-02 -0.54315228E-02 -0.78307968E-02 -0.90583229E-02 + -0.10164875E-01 -0.88207317E-02 -0.11096714E-01 -0.76892883E-02 -0.65286565E-02 + -0.17270150E-01 -0.10198498E-01 -0.75984081E-02 -0.67699965E-02 -0.32635883E-01 + -0.31380227E-01 -0.37551482E-01 -0.34335528E-01 -0.31946104E-01 -0.27926566E-01 + -0.16284931E-01 -0.11133936E-01 -0.59369714E-02 -0.83856873E-02 -0.93812538E-02 + -0.24804722E-01 -0.23240419E-01 -0.52996070E-01 -0.49991369E-01 -0.39875416E-01 + -0.35687273E-01 -0.25882292E-01 -0.13898013E-01 -0.12076000E-01 -0.11360378E-01 + -0.81969350E-02 -0.11372847E-01 -0.78056256E-02 -0.51692994E-02 -0.31847633E-02 + -0.15814242E-02 0.18472069E-03 -0.17654379E-03 -0.21875334E-03 -0.28147015E-03 + -0.30489975E-03 -0.51517548E-03 -0.10450346E-02 -0.17543831E-02 -0.24165461E-02 + -0.34787005E-02 -0.53868564E-02 -0.83442649E-02 -0.12161984E-01 -0.16548929E-01 + -0.20425035E-01 -0.24053658E-01 -0.26085326E-01 -0.26079079E-01 -0.23615441E-01 + -0.20731084E-01 -0.19002461E-01 -0.16653169E-01 -0.21925302E-01 -0.82756451E-02 + 0.73234943E-02 0.71958349E-02 -0.10479473E-01 -0.16926090E-01 -0.10387336E-01 + -0.71161180E-02 -0.51963089E-02 -0.35969011E-02 -0.35810607E-02 -0.10861348E-02 + -0.87750311E-04 -0.72912700E-03 -0.70081159E-03 -0.13381557E-02 -0.40992756E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.57598984E-02 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.53278670E-10 + -0.35998226E-13 0.26561177E-10 0.75574230E-10 -0.94354668E-10 -0.87853226E-09 + 0.13748123E-08 0.13038026E-08 -0.86243453E-09 -0.23668166E-09 0.81809229E-09 + 0.51549538E-09 -0.62364365E-09 -0.10176951E-08 -0.92043124E-10 0.16589443E-08 + 0.11435630E-08 0.29181371E-09 -0.46318806E-09 -0.39390024E-08 -0.42475063E-08 + -0.28201033E-08 0.11656989E-08 -0.17973256E-07 0.49113850E-08 0.44647874E-08 + 0.60463562E-07 0.20335248E-07 0.16864547E-07 0.19667076E-07 0.44007969E-07 + 0.49077000E-07 0.42661216E-07 0.58301159E-07 0.69206476E-07 0.85087195E-07 + 0.11294958E-06 0.13104310E-06 0.16570134E-06 0.17026513E-06 0.26196062E-06 + 0.30048072E-06 0.35867323E-06 0.39468700E-06 0.43501949E-06 0.46812506E-06 + 0.49623578E-06 0.50460269E-06 0.50161793E-06 0.48002625E-06 0.43615197E-06 + 0.39910899E-06 0.34308752E-06 0.83498247E-07 -0.18026940E-08 0.18341972E-07 + -0.14009421E-07 -0.14240064E-07 0.18561022E-07 -0.18494721E-07 0.20266079E-08 + 0.10266070E-08 -0.16062370E-07 -0.19725419E-07 -0.44239475E-07 0.15394571E-07 + 0.40428298E-07 0.61717354E-07 0.85653829E-07 0.20616592E-06 0.52796115E-06 + 0.10740812E-05 0.15986144E-05 0.20877353E-05 0.25467399E-05 0.38199356E-05 + 0.48883288E-05 0.53456730E-05 0.61178975E-05 0.59114722E-05 0.89724098E-05 + 0.10627257E-04 0.11188566E-04 0.11452631E-04 0.11482893E-04 0.11715935E-04 + 0.11469750E-04 0.11164754E-04 0.11156912E-04 0.10497696E-04 0.10149174E-04 + 0.10543186E-04 0.18573817E-04 0.13675321E-04 0.12549705E-04 0.12667690E-04 + 0.12683491E-04 0.13299580E-04 0.14032611E-04 0.12029342E-04 0.10084735E-04 + 0.87662901E-05 0.78416286E-05 0.67689256E-05 0.60465798E-05 0.50356096E-05 + -0.23588689E-09 -0.31187028E-10 -0.90792264E-10 -0.90927400E-10 0.30155066E-09 + 0.12992220E-08 0.44019945E-08 0.11879600E-07 0.16979166E-07 0.25333208E-07 + 0.32714229E-07 0.38304776E-07 0.41219470E-07 0.49298304E-07 0.55693679E-07 + 0.63133352E-07 0.67117094E-07 0.81909173E-07 0.95756722E-07 0.97012870E-07 + 0.10410168E-06 0.12015936E-06 0.99103097E-07 0.12713592E-06 0.10011572E-06 + 0.11692813E-06 0.15468447E-06 0.20095552E-06 0.24433512E-06 0.28341164E-06 + 0.38086813E-06 0.49511767E-06 0.66653886E-06 0.85653334E-06 0.10154108E-05 + 0.12397470E-05 0.14215796E-05 0.16212573E-05 0.17732990E-05 0.19141328E-05 + 0.21119694E-05 0.22618360E-05 0.23784486E-05 0.24258832E-05 0.24198427E-05 + 0.24617864E-05 0.23975979E-05 0.23545614E-05 0.22715218E-05 0.20886034E-05 + 0.18218973E-05 0.15438799E-05 0.12399366E-05 -0.68433970E-07 -0.63169077E-07 + -0.31419240E-07 -0.42813708E-07 0.19479496E-06 0.11925121E-05 0.41260629E-05 + 0.96126139E-05 0.15841407E-04 0.23313552E-04 0.29135368E-04 0.33941037E-04 + 0.37135307E-04 0.41011949E-04 0.47349641E-04 0.52006538E-04 0.60175272E-04 + 0.70991715E-04 0.80655859E-04 0.82154742E-04 0.85838114E-04 0.90276894E-04 + 0.90961348E-04 0.93338952E-04 0.89756010E-04 0.87781247E-04 0.12969416E-03 + 0.16799039E-03 0.20098386E-03 0.24477497E-03 0.32244957E-03 0.43434238E-03 + 0.58141247E-03 0.75299578E-03 0.92676756E-03 0.11081187E-02 0.12898649E-02 + 0.14774954E-02 0.16283567E-02 0.17614250E-02 0.19609918E-02 0.20987617E-02 + 0.22139489E-02 0.22681636E-02 0.22583737E-02 0.22749129E-02 0.22375295E-02 + 0.21776114E-02 0.20925666E-02 0.19129658E-02 0.16776711E-02 0.14163723E-02 + 0.11366620E-02 -0.12850097E-06 -0.28599042E-07 -0.12359109E-07 -0.43987991E-07 + 0.10435503E-06 0.53905230E-06 0.20523864E-05 0.47549527E-05 0.79073637E-05 + 0.11651353E-04 0.14532023E-04 0.17090895E-04 0.18921635E-04 0.20968978E-04 + 0.24181134E-04 0.26206933E-04 0.29801785E-04 0.35876452E-04 0.41737039E-04 + 0.41834776E-04 0.43563184E-04 0.45828852E-04 0.45843022E-04 0.46354076E-04 + 0.42847661E-04 0.39162127E-04 0.60712477E-04 0.82054488E-04 0.98667490E-04 + 0.11878235E-03 0.15456640E-03 0.20850508E-03 0.27911380E-03 0.36290386E-03 + 0.44530565E-03 0.53062054E-03 0.61629070E-03 0.70651470E-03 0.77777870E-03 + 0.85354171E-03 0.97404972E-03 0.10539766E-02 0.11242582E-02 0.11623583E-02 + 0.11637628E-02 0.11816087E-02 0.11712791E-02 0.11491417E-02 0.11116689E-02 + 0.10200483E-02 0.89499494E-03 0.75417659E-03 0.60450552E-03 0.18812938E-07 + -0.23238089E-07 -0.43417476E-07 0.46172398E-07 0.53707947E-07 0.26198629E-06 + 0.87350268E-06 0.20955583E-05 0.35546620E-05 0.52228816E-05 0.64901020E-05 + 0.76861097E-05 0.87025729E-05 0.97249257E-05 0.11191958E-04 0.12025556E-04 + 0.13394016E-04 0.16277581E-04 0.19490176E-04 0.19674044E-04 0.21001500E-04 + 0.22618238E-04 0.23136275E-04 0.23828605E-04 0.22473908E-04 0.21041382E-04 + 0.32834812E-04 0.45002522E-04 0.55026387E-04 0.67028326E-04 0.87485742E-04 + 0.11753098E-03 0.15628383E-03 0.20116040E-03 0.24465117E-03 0.28878308E-03 + 0.33154132E-03 0.37462971E-03 0.40640149E-03 0.43844137E-03 0.48680460E-03 + 0.51670140E-03 0.54215325E-03 0.55335166E-03 0.54808890E-03 0.55169534E-03 + 0.54109931E-03 0.52607486E-03 0.50634172E-03 0.46299889E-03 0.40514921E-03 + 0.34073897E-03 0.27252141E-03 0.69257491E-04 0.80078158E-04 0.27760382E-03 + 0.50150265E-03 0.37979578E-03 0.19891399E-03 0.33659308E-03 0.56961776E-03 + 0.74133376E-03 0.10433051E-02 0.14190109E-02 0.17627863E-02 0.20944496E-02 + 0.24407399E-02 0.28985622E-02 0.33988097E-02 0.39564166E-02 0.44310278E-02 + 0.50165098E-02 0.55589611E-02 0.62062732E-02 0.69975157E-02 0.77312261E-02 + 0.93124104E-02 0.10546235E-01 0.12409155E-01 0.14103284E-01 0.16249694E-01 + 0.18620871E-01 0.20624972E-01 0.22977607E-01 0.25070023E-01 0.26954250E-01 + 0.28335807E-01 0.29488934E-01 0.30806855E-01 0.31774848E-01 0.32587644E-01 + 0.33069015E-01 0.33179214E-01 0.32965315E-01 0.31675317E-01 0.29737359E-01 + 0.26837833E-01 0.23355813E-01 0.20652846E-01 0.16727218E-01 0.12842352E-01 + 0.98817744E-02 0.71866403E-02 0.51196602E-02 0.36122429E-02 0.24469921E-02 + 0.74553434E-03 0.25106281E-03 -0.43579229E-03 -0.35618554E-03 0.68601344E-03 + -0.36155426E-04 -0.74305816E-03 0.19807794E-02 0.56397000E-03 -0.87195735E-03 + 0.21733281E-02 -0.58442321E-02 -0.94920069E-02 -0.28092054E-02 -0.88835546E-03 + 0.64121564E-02 0.16099311E-01 0.18911601E-01 0.12319411E-01 0.13524705E-01 + 0.19473770E-01 0.32289342E-01 -0.45203788E-02 0.37339192E-01 -0.71293089E-02 + -0.80937143E-02 -0.91362532E-02 0.97375689E-02 0.10180765E-01 -0.12616623E-01 + 0.39985815E-01 0.20207495E-01 0.28267989E-01 0.34745301E-02 -0.13745810E-01 + -0.10540637E-01 -0.41223433E-02 -0.10855873E-02 -0.18665681E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.90640886E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.19782842E-09 -0.96369554E-10 + -0.17399681E-09 -0.39855673E-09 -0.24558227E-08 -0.23144360E-08 -0.27396674E-08 + -0.20098804E-08 -0.10615656E-07 -0.10551441E-07 -0.87554227E-08 -0.20389785E-07 + -0.28276887E-07 -0.22020121E-07 -0.21713181E-07 -0.18598297E-07 -0.11517267E-07 + -0.20640618E-08 -0.27293584E-07 -0.42011058E-07 -0.21838590E-07 -0.35261040E-07 + -0.55190411E-07 0.13765908E-06 -0.37767341E-06 -0.31356548E-07 -0.53235756E-06 + -0.26367780E-06 -0.30532849E-06 -0.48878218E-06 0.44726459E-06 -0.93829331E-06 + 0.33843217E-06 -0.17101065E-06 -0.20351546E-05 -0.13532432E-06 -0.13004098E-05 + -0.14346199E-05 -0.15643400E-05 -0.26995748E-07 -0.17659363E-05 -0.17372323E-05 + -0.19237168E-05 -0.22942026E-05 -0.27005734E-05 -0.23209324E-05 -0.26886574E-05 + -0.27987486E-05 -0.23692996E-05 -0.20122463E-05 -0.18145054E-05 -0.14478311E-05 + -0.12190425E-05 0.55982266E-07 0.96763858E-08 0.61473062E-07 -0.77817272E-07 + -0.34243191E-07 0.85952395E-07 -0.37272241E-09 -0.34326517E-08 0.59908823E-07 + 0.15692643E-06 0.20260045E-07 0.77927919E-06 0.10649129E-05 0.52607597E-06 + 0.43283573E-06 0.11039152E-08 -0.88453504E-06 -0.15344189E-05 -0.45942377E-06 + -0.37501037E-06 -0.63181819E-06 -0.39086052E-05 0.79826259E-05 -0.90460414E-05 + 0.65989183E-05 0.41008609E-05 0.10915084E-04 -0.19804457E-06 -0.63967916E-05 + -0.62322513E-06 -0.47063944E-04 -0.33054731E-04 -0.44440741E-04 -0.34382148E-04 + -0.20246965E-04 -0.31155890E-04 -0.43628987E-04 -0.59081857E-04 -0.37226007E-04 + -0.18949105E-03 -0.84501341E-04 -0.96118647E-04 -0.90340157E-04 -0.66012403E-04 + -0.49520175E-04 -0.76949041E-04 -0.55189062E-04 -0.41049468E-04 -0.49642533E-04 + -0.52644173E-04 -0.44048882E-04 -0.45950066E-04 -0.38784389E-04 0.92140599E-08 + -0.24820965E-08 -0.73392369E-08 -0.21779066E-07 -0.63508943E-07 -0.13492923E-06 + -0.18560950E-06 -0.22136579E-06 -0.25558324E-06 -0.26449749E-06 -0.24730604E-06 + -0.25355157E-06 -0.24680830E-06 -0.24526702E-06 -0.26961008E-06 -0.29356465E-06 + -0.35660267E-06 -0.50537039E-06 -0.69962671E-06 -0.98660469E-06 -0.10305328E-05 + -0.11101771E-05 -0.16050733E-05 -0.17653737E-05 -0.20963172E-05 -0.24590897E-05 + -0.26171662E-05 -0.32422447E-05 -0.38604306E-05 -0.43790853E-05 -0.60899051E-05 + -0.75702337E-05 -0.94988855E-05 -0.11134521E-04 -0.11693120E-04 -0.11203156E-04 + -0.11458407E-04 -0.10927333E-04 -0.11840914E-04 -0.84679336E-05 -0.10894042E-04 + -0.10630908E-04 -0.10782706E-04 -0.10237469E-04 -0.95056038E-05 -0.82101973E-05 + -0.68550400E-05 -0.64422737E-05 -0.59106113E-05 -0.60273632E-05 -0.53892076E-05 + -0.46224220E-05 -0.36835881E-05 0.72616889E-05 -0.22272416E-05 -0.62436881E-05 + -0.18659218E-04 -0.52515702E-04 -0.10689952E-03 -0.14177565E-03 -0.16696611E-03 + -0.18490108E-03 -0.19143020E-03 -0.17361296E-03 -0.18839726E-03 -0.18712904E-03 + -0.18338083E-03 -0.20997122E-03 -0.20959965E-03 -0.28769208E-03 -0.42049627E-03 + -0.59005817E-03 -0.76893567E-03 -0.90318927E-03 -0.10863911E-02 -0.12403381E-02 + -0.15190431E-02 -0.16665631E-02 -0.20371440E-02 -0.22633288E-02 -0.26489975E-02 + -0.32086086E-02 -0.35562592E-02 -0.50265709E-02 -0.61744570E-02 -0.75853858E-02 + -0.86938949E-02 -0.88402203E-02 -0.81685749E-02 -0.79865854E-02 -0.71257357E-02 + -0.72481917E-02 -0.37123646E-02 -0.55428012E-02 -0.49159591E-02 -0.45903785E-02 + -0.40707768E-02 -0.35070240E-02 -0.26988946E-02 -0.22805003E-02 -0.24914270E-02 + -0.24286250E-02 -0.28393049E-02 -0.27966058E-02 -0.24303235E-02 -0.19741780E-02 + 0.47772881E-05 -0.14062956E-05 -0.38605905E-05 -0.11520288E-04 -0.32542699E-04 + -0.66912527E-04 -0.90017976E-04 -0.10923260E-03 -0.12454823E-03 -0.13574551E-03 + -0.12949923E-03 -0.14393713E-03 -0.15016769E-03 -0.15361266E-03 -0.17947853E-03 + -0.18696815E-03 -0.24343830E-03 -0.32654236E-03 -0.43800383E-03 -0.57140015E-03 + -0.67095369E-03 -0.80050944E-03 -0.90965301E-03 -0.11057921E-02 -0.12164512E-02 + -0.14755560E-02 -0.16355418E-02 -0.18984163E-02 -0.22892603E-02 -0.25558854E-02 + -0.36022031E-02 -0.44644912E-02 -0.55393773E-02 -0.64421491E-02 -0.67093446E-02 + -0.64208502E-02 -0.64555611E-02 -0.60698524E-02 -0.63635016E-02 -0.42079262E-02 + -0.55089327E-02 -0.52198400E-02 -0.51009803E-02 -0.47529759E-02 -0.42927493E-02 + -0.35842506E-02 -0.30616886E-02 -0.29853691E-02 -0.27842059E-02 -0.29102473E-02 + -0.27366283E-02 -0.23450686E-02 -0.18886884E-02 0.23813227E-05 -0.70378940E-06 + -0.21868105E-05 -0.59140545E-05 -0.17216450E-04 -0.35644554E-04 -0.48595714E-04 + -0.60252933E-04 -0.70168116E-04 -0.79029947E-04 -0.77382652E-04 -0.86569652E-04 + -0.92434662E-04 -0.96338386E-04 -0.11340674E-03 -0.12015588E-03 -0.15233122E-03 + -0.19365812E-03 -0.25248669E-03 -0.33009072E-03 -0.38580215E-03 -0.45544788E-03 + -0.51377170E-03 -0.61975504E-03 -0.67800175E-03 -0.81511726E-03 -0.89643387E-03 + -0.10314093E-02 -0.12346472E-02 -0.13710893E-02 -0.19280813E-02 -0.23870074E-02 + -0.29634466E-02 -0.34608432E-02 -0.36316264E-02 -0.35176949E-02 -0.35914193E-02 + -0.34769216E-02 -0.37601512E-02 -0.27521248E-02 -0.34886288E-02 -0.34603007E-02 + -0.35170943E-02 -0.34075933E-02 -0.31886071E-02 -0.27710575E-02 -0.23857079E-02 + -0.22393155E-02 -0.20537089E-02 -0.20401272E-02 -0.18785338E-02 -0.16033525E-02 + -0.12902857E-02 0.70753363E-03 -0.29177540E-04 0.31686827E-03 0.52688828E-03 + -0.20916709E-03 -0.10535163E-02 -0.84795469E-03 -0.62616699E-03 -0.46613225E-04 + 0.57737851E-03 0.12114739E-02 0.13274887E-02 0.13670463E-02 0.16265566E-02 + 0.17881223E-02 0.27335615E-02 0.20762909E-02 0.20795571E-02 0.47796978E-03 + -0.53312312E-03 -0.96429572E-03 -0.63165098E-03 -0.13110314E-02 -0.10722150E-02 + 0.31253616E-02 -0.13072330E-02 0.49869348E-02 0.99290041E-02 0.95734160E-02 + 0.23375221E-01 0.14092968E-01 0.19678963E-01 0.16554544E-01 0.17363221E-01 + 0.16401310E-01 0.23825341E-01 0.22125427E-01 0.28477355E-01 0.21845264E-01 + 0.59239677E-01 0.35594610E-01 0.29974581E-01 0.24542972E-01 0.13498334E-01 + -0.86535573E-03 -0.10386442E-01 -0.11143114E-01 -0.16685944E-01 -0.17233212E-01 + -0.19446053E-01 -0.19997637E-01 -0.19050151E-01 -0.16779310E-01 0.74552846E-03 + -0.12018500E-02 0.76446701E-03 0.41961189E-02 -0.19785140E-02 -0.39599252E-02 + -0.35162008E-02 -0.12887095E-01 -0.84133247E-02 -0.32767425E-02 -0.35351810E-01 + 0.81410417E-02 -0.12006573E-01 -0.36908371E-01 -0.70822431E-01 -0.88858686E-01 + -0.12798541E+00 -0.75575424E-01 -0.30636979E-01 0.12929354E-01 -0.48801188E-02 + -0.24621728E-01 -0.21695409E+00 0.17695348E-01 0.34021179E+00 0.90909059E-01 + -0.31336172E+00 -0.80870435E-01 0.65123830E-01 0.11233965E+00 -0.15349630E+00 + -0.12823740E+00 -0.14536890E+00 -0.80336760E-01 0.17839761E-01 0.40079513E-01 + 0.18368912E-01 -0.20687500E-01 0.21807172E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.14070578E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.19782690E-09 -0.73754956E-09 -0.10390755E-08 + -0.13187563E-09 -0.10238946E-09 -0.10744725E-07 -0.15094037E-07 -0.22915189E-07 + -0.55650807E-09 0.59306440E-09 -0.38538127E-07 -0.26719538E-08 -0.21690202E-07 + -0.85405230E-07 -0.16724579E-06 -0.20130617E-06 -0.31177711E-06 -0.27071998E-06 + -0.18350073E-06 -0.14561706E-07 -0.46389583E-06 -0.11378633E-05 -0.13556442E-05 + -0.22754465E-06 0.39013373E-05 -0.80526851E-06 -0.31002619E-05 -0.12807311E-05 + 0.32679314E-06 0.45176588E-06 -0.37162233E-05 -0.19868933E-05 -0.48234519E-05 + -0.28117598E-05 0.54837363E-06 -0.23001319E-05 0.40646923E-06 -0.78415071E-06 + -0.17338081E-05 -0.20194350E-04 -0.68975939E-06 0.17646545E-06 0.40613337E-06 + 0.94901534E-06 0.26345984E-05 0.12856986E-05 0.25802662E-05 0.32891910E-05 + 0.12133857E-05 0.11663357E-06 0.61592517E-07 -0.43298145E-06 -0.30840088E-06 + 0.55981795E-07 0.53813369E-08 -0.23793086E-06 0.28358023E-06 0.12603209E-06 + 0.92503809E-07 0.37694789E-06 0.51966358E-06 0.36216780E-06 0.17092295E-06 + 0.22299586E-05 -0.13301994E-05 0.10911933E-05 0.39209887E-05 0.87772992E-05 + 0.11287148E-04 0.17592359E-04 0.14366831E-04 0.10057462E-04 0.10426683E-05 + 0.65692069E-06 0.14789894E-05 0.54124949E-04 -0.25739335E-04 -0.22048845E-03 + -0.48791345E-05 0.17030515E-03 0.43905468E-04 -0.39367964E-04 -0.68787523E-04 + 0.16596514E-03 0.16521480E-03 0.16783306E-03 0.10310207E-03 -0.29683616E-05 + -0.18097296E-04 0.12479129E-04 0.11319009E-03 0.88962774E-04 0.12893026E-02 + 0.14969296E-03 0.96103698E-04 0.81487314E-04 0.78130198E-05 -0.78968671E-04 + 0.26240539E-05 -0.78769640E-04 -0.13476652E-03 -0.42827186E-04 0.41511960E-05 + -0.56471255E-05 0.12910729E-04 0.14970859E-04 0.92139694E-08 -0.17014606E-08 + -0.82177003E-08 -0.15104531E-07 0.19451401E-07 0.32062437E-07 0.40252874E-07 + -0.91949245E-08 0.81460434E-08 -0.78837148E-07 -0.22239406E-06 -0.32768478E-06 + -0.43559524E-06 -0.69263439E-06 -0.95656092E-06 -0.12134124E-05 -0.15748295E-05 + -0.14805232E-05 -0.13228562E-05 -0.10362854E-05 -0.27530065E-05 0.11921069E-05 + -0.47206624E-06 -0.18658927E-07 -0.56683525E-07 -0.10058081E-05 -0.22214759E-05 + -0.12707142E-05 -0.22959284E-05 -0.35055649E-05 -0.23845061E-05 -0.74522108E-06 + 0.26120198E-05 0.52136845E-05 0.47388715E-05 0.77593496E-06 -0.15089441E-05 + -0.86008224E-05 -0.90834406E-05 -0.24477917E-04 -0.12154449E-04 -0.13949583E-04 + -0.14559494E-04 -0.15707558E-04 -0.15925328E-04 -0.20078185E-04 -0.22925502E-04 + -0.21909207E-04 -0.21388382E-04 -0.15845570E-04 -0.13001064E-04 -0.10789780E-04 + -0.87741386E-05 0.72616175E-05 -0.22520068E-05 -0.72171184E-05 -0.12772492E-04 + 0.18850507E-04 0.29833835E-04 0.26033408E-04 -0.18051515E-04 -0.25858661E-04 + -0.11953180E-03 -0.26315890E-03 -0.30536528E-03 -0.40572396E-03 -0.62429574E-03 + -0.83439492E-03 -0.11990332E-02 -0.14086511E-02 -0.12584264E-02 -0.10583388E-02 + -0.10570155E-02 -0.93669090E-03 -0.60733219E-03 -0.32275406E-03 0.18415910E-03 + -0.28254822E-03 -0.75211312E-03 -0.17004149E-02 -0.10404427E-02 -0.18318353E-02 + -0.29489873E-02 -0.18122229E-02 -0.39534153E-03 0.20864066E-02 0.39358026E-02 + 0.30793387E-02 -0.75689963E-03 -0.33802424E-02 -0.10050177E-01 -0.12542528E-01 + -0.27622751E-01 -0.16978782E-01 -0.18997789E-01 -0.20282407E-01 -0.21099343E-01 + -0.21253431E-01 -0.23506477E-01 -0.22924425E-01 -0.19879813E-01 -0.18362115E-01 + -0.13325200E-01 -0.10149702E-01 -0.83520231E-02 -0.65540231E-02 0.47772411E-05 + -0.12290327E-05 -0.44761359E-05 -0.78648004E-05 0.12343438E-04 0.20562684E-04 + 0.20373710E-04 -0.13013949E-06 0.10701982E-05 -0.40970788E-04 -0.12310348E-03 + -0.16017424E-03 -0.20834260E-03 -0.34145000E-03 -0.45314953E-03 -0.64868836E-03 + -0.77061909E-03 -0.74410075E-03 -0.68437946E-03 -0.61792931E-03 -0.45022543E-03 + -0.18181474E-03 0.35175952E-04 0.41165580E-03 0.15381745E-03 -0.85541615E-04 + -0.64508037E-03 -0.32720693E-03 -0.80185940E-03 -0.14056572E-02 -0.42570623E-03 + 0.78748546E-03 0.28042713E-02 0.44734167E-02 0.44217691E-02 0.24134440E-02 + 0.11475541E-02 -0.28144922E-02 -0.38750494E-02 -0.13386399E-01 -0.64216261E-02 + -0.74728674E-02 -0.81739590E-02 -0.87795383E-02 -0.90990972E-02 -0.11173765E-01 + -0.11710410E-01 -0.10460579E-01 -0.99090768E-02 -0.68754199E-02 -0.50512638E-02 + -0.41518394E-02 -0.32725215E-02 0.23812992E-05 -0.61438365E-06 -0.19776534E-05 + -0.45431727E-05 0.66393956E-05 0.11676894E-04 0.12361618E-04 0.42348599E-05 + 0.76417599E-05 -0.71011415E-05 -0.47701481E-04 -0.73501369E-04 -0.92571583E-04 + -0.16098696E-03 -0.21086268E-03 -0.29818045E-03 -0.35856352E-03 -0.38219069E-03 + -0.38452688E-03 -0.31690806E-03 -0.18664516E-03 -0.32513410E-04 0.79681215E-04 + 0.28602353E-03 0.15164358E-03 0.32263947E-04 -0.26874559E-03 -0.12793544E-03 + -0.38368572E-03 -0.70156900E-03 -0.16614840E-03 0.49108651E-03 0.15899140E-02 + 0.25374992E-02 0.26211748E-02 0.17309977E-02 0.12978627E-02 -0.44692604E-03 + -0.50159181E-03 -0.52125909E-02 -0.16457249E-02 -0.18633746E-02 -0.19396659E-02 + -0.20573560E-02 -0.21291612E-02 -0.33937877E-02 -0.41524590E-02 -0.39298027E-02 + -0.39026139E-02 -0.25234120E-02 -0.17225994E-02 -0.13945334E-02 -0.10938449E-02 + 0.70752711E-03 0.19800205E-03 -0.65728342E-03 -0.78074784E-03 0.82212760E-03 + 0.10361747E-02 -0.91768971E-04 -0.10626490E-02 -0.19015697E-02 -0.39418445E-02 + -0.48475282E-02 -0.43895469E-02 -0.36489552E-02 -0.46693195E-02 -0.63815125E-02 + -0.11854187E-01 -0.11365505E-01 -0.11909450E-01 -0.40504728E-02 -0.42449208E-02 + 0.53398684E-02 0.99335842E-02 -0.80556817E-02 0.91015423E-02 0.94770116E-02 + 0.23324427E-01 -0.36816111E-01 -0.41040960E-01 -0.49013134E-01 -0.68109433E-01 + -0.42177120E-01 -0.43179592E-01 -0.10416061E-01 -0.14070190E-03 0.12393344E-01 + -0.71480365E-02 -0.69985823E-02 -0.51743949E-01 -0.38372989E-01 -0.17576508E+00 + -0.12721299E+00 -0.10167350E+00 -0.86758416E-01 -0.49788250E-01 -0.14262012E-02 + 0.20336643E-01 0.20646622E-01 0.36974777E-01 0.31722810E-01 0.41771564E-01 + 0.46278805E-01 0.46057385E-01 0.41977177E-01 0.28764449E-04 0.14389654E-04 + 0.97256175E-05 0.11062375E-04 0.20617824E-04 0.42295235E-04 0.58542780E-04 + 0.77926024E-04 0.11076433E-03 0.17671830E-03 0.25303162E-03 0.35384105E-03 + 0.49765000E-03 0.65780580E-03 0.73684242E-03 0.68442247E-03 0.28374695E-03 + -0.26269605E-03 -0.53542266E-03 -0.49076437E-03 -0.25240809E-03 0.42618214E-04 + -0.10829411E-03 -0.31744014E-03 -0.31469228E-03 -0.35487123E-05 0.10809295E-04 + 0.17342236E-03 0.18762099E-03 0.15182668E-03 0.70836760E-04 0.24554091E-04 + 0.59489083E-04 0.11910989E-03 0.14412019E-03 0.14561359E-03 0.19156856E-03 + 0.86336884E-04 -0.42740623E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.24830363E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.20194501E-11 0.11384533E-11 0.76106242E-12 0.20982331E-11 + 0.81640701E-11 -0.27712622E-10 0.82710520E-11 0.40552911E-10 0.10894310E-10 + 0.87607616E-10 -0.11126916E-09 0.87681919E-10 0.28331538E-10 0.16918177E-10 + 0.22601498E-10 0.70379568E-10 0.33779231E-09 0.38581207E-09 0.51206530E-09 + 0.26279785E-10 0.12314592E-09 0.10137289E-08 0.21651463E-08 -0.23178830E-08 + -0.10586506E-08 0.31167483E-08 0.41062697E-08 0.40284137E-08 0.26664492E-08 + 0.35030109E-08 0.16600231E-08 0.15298860E-08 -0.17649645E-08 -0.20953977E-08 + -0.48106533E-08 -0.67532036E-08 -0.68010775E-08 -0.99550118E-08 -0.13475964E-07 + -0.24188032E-07 -0.25080631E-07 -0.26665422E-07 -0.29389645E-07 -0.33720173E-07 + -0.38340717E-07 -0.41591517E-07 -0.41254019E-07 -0.40923351E-07 -0.40128269E-07 + -0.39576019E-07 -0.38513230E-07 -0.35640771E-07 -0.31513191E-07 -0.22405985E-08 + 0.13288571E-08 0.51092453E-10 0.28301566E-08 -0.20457495E-08 0.99002320E-09 + -0.80123360E-09 0.15448537E-08 0.20055078E-08 0.52302269E-08 0.99917560E-08 + 0.18961815E-07 0.33774605E-07 0.52657724E-07 0.78018542E-07 0.10006585E-06 + 0.12283620E-06 0.14264126E-06 0.16528539E-06 0.18704122E-06 0.16044438E-06 + 0.83985219E-07 0.11743698E-06 0.15700192E-06 0.14880966E-06 -0.47158090E-07 + 0.40947830E-07 0.16398251E-06 0.37633148E-06 0.52325126E-06 0.89837125E-06 + 0.11380304E-05 0.13670555E-05 0.14669929E-05 0.15999663E-05 0.17073860E-05 + 0.15964647E-05 0.15866038E-05 0.15880495E-05 0.18694945E-05 0.14176671E-05 + 0.10636863E-05 0.90756097E-06 0.74237223E-06 0.70504128E-06 0.66403502E-06 + 0.23199328E-06 -0.78371936E-07 -0.26929210E-06 -0.34561408E-06 -0.40452061E-06 + -0.30966706E-06 -0.30184219E-06 -0.38813433E-12 -0.93814765E-12 -0.34858288E-11 + -0.11617189E-11 0.13004979E-10 0.12753796E-11 -0.12461661E-10 0.39067682E-09 + 0.64017442E-09 0.78119814E-09 0.13221099E-08 0.16141840E-08 0.19901626E-08 + 0.21748708E-08 0.24510335E-08 0.26838675E-08 0.27222882E-08 0.28696919E-08 + 0.30331731E-08 0.30980878E-08 0.34873197E-08 0.46222156E-08 0.67525172E-09 + 0.43904945E-08 0.26292808E-08 0.51674325E-08 0.59804663E-08 0.76178478E-08 + 0.87944203E-08 0.10543266E-07 0.11727593E-07 0.15144722E-07 0.15652474E-07 + 0.20232110E-07 0.22366691E-07 0.29580509E-07 0.36061697E-07 0.44531841E-07 + 0.51731876E-07 0.67022259E-07 0.79408317E-07 0.82016134E-07 0.87808929E-07 + 0.91214392E-07 0.90924932E-07 0.99524933E-07 0.96288550E-07 0.89608903E-07 + 0.85315044E-07 0.80642789E-07 0.71462253E-07 0.61488258E-07 0.50088535E-07 + -0.24102204E-09 -0.66981364E-09 -0.74860244E-09 -0.33371082E-08 -0.59489114E-09 + 0.11688329E-07 0.76815152E-07 0.23526004E-06 0.51041807E-06 0.83131323E-06 + 0.11204881E-05 0.13663890E-05 0.15611568E-05 0.17854621E-05 0.19850459E-05 + 0.21256780E-05 0.21609126E-05 0.22937140E-05 0.23177107E-05 0.22455459E-05 + 0.22145069E-05 0.21848955E-05 0.19244738E-05 0.18826582E-05 0.22833482E-05 + 0.30868391E-05 0.48414044E-05 0.54622266E-05 0.62747659E-05 0.77505751E-05 + 0.85763423E-05 0.11389181E-04 0.11913597E-04 0.15280141E-04 0.18293521E-04 + 0.24174541E-04 0.31365695E-04 0.39586584E-04 0.47750388E-04 0.61438672E-04 + 0.74535803E-04 0.80100542E-04 0.85358008E-04 0.88853149E-04 0.88327252E-04 + 0.94093498E-04 0.91537017E-04 0.85190406E-04 0.79935329E-04 0.74434689E-04 + 0.66760853E-04 0.56877518E-04 0.46549115E-04 -0.28023354E-09 -0.34310373E-09 + -0.20074992E-09 -0.44026931E-08 0.10541936E-08 0.76758467E-09 0.34336975E-07 + 0.99033868E-07 0.24165290E-06 0.39903162E-06 0.55126377E-06 0.69162674E-06 + 0.80054198E-06 0.92584297E-06 0.10319638E-05 0.11144477E-05 0.11046554E-05 + 0.11765615E-05 0.12223996E-05 0.11632975E-05 0.11187017E-05 0.10723003E-05 + 0.86213657E-06 0.78669535E-06 0.99837328E-06 0.14351022E-05 0.24049688E-05 + 0.26034277E-05 0.28860129E-05 0.35039384E-05 0.35836929E-05 0.49131602E-05 + 0.44795203E-05 0.57946566E-05 0.66953808E-05 0.93013964E-05 0.12755861E-04 + 0.16804736E-04 0.20781551E-04 0.28741895E-04 0.36114094E-04 0.38780690E-04 + 0.41704184E-04 0.44000817E-04 0.44071266E-04 0.48472331E-04 0.47620419E-04 + 0.44465658E-04 0.42142579E-04 0.39792979E-04 0.36020160E-04 0.30757467E-04 + 0.25305972E-04 -0.61187182E-10 -0.49067684E-09 -0.47445548E-09 -0.73395535E-10 + 0.80666076E-09 0.89185967E-09 0.11720644E-07 0.37594110E-07 0.10956923E-06 + 0.17720232E-06 0.25052244E-06 0.32020324E-06 0.37581736E-06 0.43503997E-06 + 0.48692055E-06 0.53169391E-06 0.52109375E-06 0.56559224E-06 0.61992094E-06 + 0.59468729E-06 0.57661313E-06 0.56040304E-06 0.45522794E-06 0.42038351E-06 + 0.55052141E-06 0.80972214E-06 0.13580122E-05 0.14978914E-05 0.17024643E-05 + 0.20973139E-05 0.22402857E-05 0.30777995E-05 0.30032810E-05 0.38433604E-05 + 0.44638748E-05 0.59446630E-05 0.77926111E-05 0.98263469E-05 0.11657749E-04 + 0.15377187E-04 0.18541015E-04 0.19353236E-04 0.20359787E-04 0.21136778E-04 + 0.20872374E-04 0.23020625E-04 0.22525471E-04 0.20978527E-04 0.19974810E-04 + 0.18978403E-04 0.17245263E-04 0.14726793E-04 0.12115032E-04 0.55828425E-06 + 0.41050803E-05 0.16318489E-04 0.35597374E-04 0.36698123E-04 0.20136739E-04 + 0.18079294E-04 0.23112848E-04 0.30427416E-04 0.51132213E-04 0.80244724E-04 + 0.10943520E-03 0.13441464E-03 0.16281659E-03 0.19667063E-03 0.22917447E-03 + 0.25689892E-03 0.28728492E-03 0.31798535E-03 0.34709922E-03 0.37718139E-03 + 0.41611869E-03 0.45146015E-03 0.50634940E-03 0.60419461E-03 0.74173476E-03 + 0.93757860E-03 0.10776960E-02 0.12478249E-02 0.14288522E-02 0.16161336E-02 + 0.18745047E-02 0.21135610E-02 0.23787227E-02 0.26413129E-02 0.29326230E-02 + 0.31744805E-02 0.33844260E-02 0.35546740E-02 0.36500165E-02 0.37198329E-02 + 0.36205093E-02 0.34686486E-02 0.32123623E-02 0.28898002E-02 0.26327391E-02 + 0.22280792E-02 0.18147303E-02 0.14709121E-02 0.11759483E-02 0.91931313E-03 + 0.69884429E-03 0.50444009E-03 -0.42329859E-03 -0.99340723E-04 0.61230777E-05 + -0.25982312E-04 -0.40533685E-04 -0.70928282E-04 -0.30068813E-03 -0.56010295E-03 + -0.76471129E-03 -0.68213293E-03 -0.91763486E-03 -0.11440793E-02 -0.18351527E-02 + -0.28021716E-02 -0.27334398E-02 -0.29394543E-02 -0.44523652E-02 -0.67768804E-02 + -0.78225388E-02 -0.86603725E-02 -0.89344240E-02 -0.91132123E-02 -0.11190076E-01 + -0.39951532E-02 0.26749769E-02 -0.13970572E-02 -0.79981589E-02 -0.95613135E-02 + -0.86114661E-02 -0.51863824E-02 -0.60494057E-02 -0.57906636E-02 -0.35226827E-02 + -0.24288019E-02 -0.29422242E-02 -0.26849693E-02 -0.12903680E-02 -0.64416009E-03 + -0.36158903E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.64140948E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.34978914E-10 0.22350299E-11 -0.50794918E-11 -0.11575704E-11 0.31915556E-10 + 0.39724894E-10 -0.71527251E-09 -0.23374132E-09 0.15148621E-08 -0.63113711E-09 + 0.61732674E-09 0.10455163E-08 -0.67943510E-09 -0.37223682E-09 0.99697429E-10 + 0.26444113E-08 0.18029614E-08 0.70131566E-09 -0.58900545E-09 -0.56609306E-08 + -0.96937651E-09 -0.44983122E-08 -0.21157399E-08 -0.11733954E-07 0.47321155E-08 + -0.68108025E-08 0.26858318E-07 0.68208900E-08 -0.18595233E-08 -0.13964204E-08 + -0.18322496E-07 -0.21507799E-07 -0.38816822E-08 -0.79172003E-08 -0.66943423E-08 + -0.10716126E-07 -0.70630460E-08 0.52666782E-08 0.83166607E-08 -0.24407240E-07 + 0.72936544E-07 0.72986853E-07 0.76825963E-07 0.88790501E-07 0.11280430E-06 + 0.95432219E-07 0.86260457E-07 0.82723075E-07 0.71408693E-07 0.54495874E-07 + 0.30594686E-07 0.28877027E-07 0.40353722E-07 -0.49839628E-07 -0.35056519E-09 + -0.81269894E-08 0.10140951E-07 -0.74539942E-08 -0.41692794E-08 0.20877444E-08 + -0.60591991E-08 -0.90797267E-08 -0.50489718E-08 -0.18334513E-07 -0.16118999E-07 + 0.44258608E-07 0.61114552E-07 0.46461146E-09 -0.89738535E-07 -0.15504326E-06 + -0.75037278E-07 0.61256238E-07 0.31288900E-07 -0.56990519E-07 -0.10655776E-06 + 0.24381920E-06 0.18372855E-06 -0.23297150E-06 0.57584073E-06 -0.69388399E-06 + 0.94358004E-07 0.77983531E-06 0.64797852E-06 0.16172732E-05 0.21701090E-05 + 0.23110033E-05 0.25140098E-05 0.35121880E-05 0.44630563E-05 0.47531907E-05 + 0.47341140E-05 0.56888340E-05 0.14905390E-04 0.93524707E-05 0.92837077E-05 + 0.10001794E-04 0.10527282E-04 0.10330189E-04 0.11243669E-04 0.98886785E-05 + 0.86373345E-05 0.76742977E-05 0.70220079E-05 0.60511750E-05 0.44481443E-05 + 0.36677968E-05 0.11169603E-09 -0.39876470E-10 -0.61832626E-10 -0.49804891E-10 + -0.79553872E-10 -0.75952505E-09 -0.14850088E-08 -0.35946753E-08 -0.43744306E-08 + -0.82358221E-08 -0.10092237E-07 -0.12401040E-07 -0.16588720E-07 -0.15515137E-07 + -0.18197740E-07 -0.13403227E-07 -0.19245916E-07 -0.15733361E-07 -0.15160680E-07 + -0.22786033E-07 -0.17092929E-07 -0.23256122E-07 -0.25032630E-07 -0.24335870E-07 + -0.48022070E-07 -0.51674373E-07 -0.38099108E-07 -0.28161497E-07 -0.27609657E-07 + -0.39633910E-07 -0.37032283E-07 -0.55377095E-07 -0.10630473E-06 -0.15940359E-06 + -0.26694674E-06 -0.37646031E-06 -0.47413964E-06 -0.60228135E-06 -0.79686530E-06 + -0.97828761E-06 -0.10850368E-05 -0.11590355E-05 -0.12216376E-05 -0.12898470E-05 + -0.13054626E-05 -0.12908286E-05 -0.12680126E-05 -0.11129085E-05 -0.96710538E-06 + -0.88665996E-06 -0.82477934E-06 -0.73160068E-06 -0.60703485E-06 0.34536447E-07 + -0.28264454E-07 -0.43152133E-07 -0.38236036E-07 -0.10461738E-07 -0.36784864E-06 + -0.10845536E-05 -0.34223480E-05 -0.40484608E-05 -0.68802766E-05 -0.87893805E-05 + -0.11167241E-04 -0.13243417E-04 -0.14063663E-04 -0.13642826E-04 -0.14044702E-04 + -0.13181748E-04 -0.11287214E-04 -0.11879412E-04 -0.17164304E-04 -0.17163250E-04 + -0.18638722E-04 -0.21237107E-04 -0.25053292E-04 -0.36140381E-04 -0.43679979E-04 + -0.31639313E-04 -0.27270808E-04 -0.27150767E-04 -0.28120005E-04 -0.33204994E-04 + -0.49085727E-04 -0.90331028E-04 -0.15558759E-03 -0.23540175E-03 -0.32402594E-03 + -0.42924246E-03 -0.54081555E-03 -0.71916852E-03 -0.91269187E-03 -0.97996823E-03 + -0.10593998E-02 -0.11173590E-02 -0.11553734E-02 -0.11718121E-02 -0.11677513E-02 + -0.11011442E-02 -0.96594997E-03 -0.82714466E-03 -0.75257770E-03 -0.69341083E-03 + -0.61037546E-03 -0.50779685E-03 0.62536716E-07 -0.18764991E-07 -0.27294581E-07 + -0.26641709E-07 0.56363507E-08 -0.20560011E-06 -0.59571941E-06 -0.18390992E-05 + -0.20264204E-05 -0.37943748E-05 -0.50856889E-05 -0.65258610E-05 -0.77299815E-05 + -0.83771245E-05 -0.84846839E-05 -0.92443225E-05 -0.93788994E-05 -0.80504137E-05 + -0.78358774E-05 -0.11005438E-04 -0.10677643E-04 -0.11102051E-04 -0.12293781E-04 + -0.14362421E-04 -0.21182102E-04 -0.25743564E-04 -0.18860719E-04 -0.15478665E-04 + -0.15028292E-04 -0.15417497E-04 -0.18089366E-04 -0.27104104E-04 -0.51228576E-04 + -0.89172944E-04 -0.13602936E-03 -0.18882450E-03 -0.25204933E-03 -0.31883300E-03 + -0.42490942E-03 -0.53189404E-03 -0.56256916E-03 -0.60998981E-03 -0.64816406E-03 + -0.67777186E-03 -0.69930521E-03 -0.71282927E-03 -0.68592808E-03 -0.61470066E-03 + -0.53974484E-03 -0.50008574E-03 -0.46704795E-03 -0.41528663E-03 -0.34834033E-03 + -0.93758702E-08 -0.12777156E-07 -0.21632032E-07 -0.65106395E-08 0.89499963E-09 + -0.10835666E-06 -0.26464972E-06 -0.86789149E-06 -0.88287353E-06 -0.18178114E-05 + -0.25448201E-05 -0.32871114E-05 -0.38324732E-05 -0.42037166E-05 -0.43862194E-05 + -0.49842008E-05 -0.54116869E-05 -0.48149150E-05 -0.45167813E-05 -0.61005308E-05 + -0.57522128E-05 -0.58236643E-05 -0.63470333E-05 -0.73969882E-05 -0.11041625E-04 + -0.13516417E-04 -0.10116241E-04 -0.84421451E-05 -0.82315761E-05 -0.85288061E-05 + -0.99668715E-05 -0.14694540E-04 -0.27112481E-04 -0.46257266E-04 -0.68905315E-04 + -0.93104795E-04 -0.12102532E-03 -0.14873318E-03 -0.19353681E-03 -0.23685971E-03 + -0.24685303E-03 -0.26113314E-03 -0.27152616E-03 -0.27912550E-03 -0.28473830E-03 + -0.29087228E-03 -0.28231514E-03 -0.25484638E-03 -0.22503448E-03 -0.21113699E-03 + -0.19993540E-03 -0.17932682E-03 -0.15174001E-03 -0.29118139E-04 -0.26646334E-05 + -0.15561023E-04 -0.82066882E-05 0.10511932E-03 0.27288406E-03 0.24672059E-03 + 0.24466255E-03 0.20810753E-03 0.22381001E-03 0.24524087E-03 0.26408724E-03 + 0.36576374E-03 0.43244744E-03 0.54641803E-03 0.74411759E-03 0.99120727E-03 + 0.12016969E-02 0.14888753E-02 0.17114512E-02 0.20693525E-02 0.23897752E-02 + 0.26611919E-02 0.30173891E-02 0.30314289E-02 0.32104123E-02 0.34110726E-02 + 0.38833726E-02 0.47929949E-02 0.53095031E-02 0.59036289E-02 0.62774476E-02 + 0.70498943E-02 0.77204720E-02 0.91397871E-02 0.10482591E-01 0.11170813E-01 + 0.11880474E-01 0.12348778E-01 0.12953122E-01 0.14288132E-01 0.15737818E-01 + 0.17080166E-01 0.18275070E-01 0.19460278E-01 0.20925938E-01 0.20585409E-01 + 0.19514635E-01 0.18442590E-01 0.16616252E-01 0.14614997E-01 0.12670194E-01 + 0.10305323E-01 -0.37036838E-02 0.12186989E-02 -0.75891295E-03 -0.41730932E-02 + 0.19192143E-02 0.38320654E-02 0.31867042E-02 0.12256048E-01 0.72887328E-02 + 0.19088047E-02 0.33968163E-01 -0.11064954E-01 0.10604949E-01 0.33735147E-01 + 0.65893226E-01 0.82985671E-01 0.12295498E+00 0.74166132E-01 0.32163546E-01 + -0.12285010E-01 0.43656695E-02 0.23639185E-01 0.21847890E+00 -0.20217729E-01 + -0.34251705E+00 -0.92872746E-01 0.30797587E+00 0.74827440E-01 -0.68074730E-01 + -0.11432096E+00 0.15091898E+00 0.12615984E+00 0.14394405E+00 0.77698063E-01 + -0.20624423E-01 -0.43298117E-01 -0.21503858E-01 0.19532350E-01 -0.19545612E-01 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.21429512E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.89565237E-09 + 0.63451545E-09 0.90363574E-09 -0.12300752E-09 -0.41775237E-09 0.99989202E-08 + 0.14985602E-07 0.20941887E-07 -0.61715894E-08 -0.36432300E-08 0.32459453E-07 + -0.77687207E-08 0.14002980E-07 0.69800570E-07 0.14536262E-06 0.16995739E-06 + 0.27220682E-06 0.22441047E-06 0.13451465E-06 -0.34228572E-07 0.39912548E-06 + 0.10752412E-05 0.11344653E-05 0.14114815E-06 -0.38482463E-05 0.65530877E-06 + 0.27703681E-05 0.96315188E-06 -0.57159309E-06 -0.63244058E-06 0.34975781E-05 + 0.17332263E-05 0.47542116E-05 0.26232097E-05 -0.58746527E-06 0.20890523E-05 + -0.51643907E-06 0.75954851E-06 0.16332989E-05 0.20222045E-04 0.25855604E-06 + -0.52184697E-06 -0.77157461E-06 -0.12729293E-05 -0.30569433E-05 -0.16563618E-05 + -0.28457986E-05 -0.35501872E-05 -0.14014124E-05 -0.24950763E-06 -0.64228619E-07 + 0.44467364E-06 0.29467148E-06 -0.21179856E-06 -0.42679744E-08 0.25862950E-06 + -0.28207793E-06 -0.87810454E-07 -0.42948554E-07 -0.30010885E-06 -0.38166267E-06 + -0.14442618E-06 0.60410890E-07 -0.19049140E-05 0.18422624E-05 -0.66263176E-06 + -0.31306433E-05 -0.75911319E-05 -0.96017504E-05 -0.15268935E-04 -0.11704306E-04 + -0.72270537E-05 0.31540884E-05 0.51809858E-05 0.58582426E-05 -0.45962953E-04 + 0.31966802E-04 0.22235386E-03 0.11450050E-04 -0.15201828E-03 -0.24140215E-04 + 0.55380625E-04 0.80751206E-04 -0.15325846E-03 -0.15288401E-03 -0.16023787E-03 + -0.96574230E-04 0.83853606E-05 0.20632080E-04 -0.15121639E-04 -0.12174447E-03 + -0.98261817E-04 -0.13177847E-02 -0.15249361E-03 -0.10469878E-03 -0.92358646E-04 + -0.22744914E-04 0.68773538E-04 -0.16023265E-04 0.65010521E-04 0.12625548E-03 + 0.31095052E-04 -0.16477679E-04 -0.98803704E-05 -0.25999395E-04 -0.26032029E-04 + -0.51957709E-07 0.19367650E-08 0.87913909E-08 0.16001003E-07 -0.17601804E-07 + -0.25557932E-07 -0.37238400E-07 0.18870783E-07 0.11961599E-08 0.11013321E-06 + 0.26207303E-06 0.37766654E-06 0.49482215E-06 0.75731614E-06 0.10310364E-05 + 0.12870202E-05 0.16680663E-05 0.15644706E-05 0.14096107E-05 0.11752308E-05 + 0.29093449E-05 -0.12260150E-05 0.66592423E-06 0.12749472E-06 0.29027231E-06 + 0.12057882E-05 0.23812576E-05 0.14119284E-05 0.24630312E-05 0.36952500E-05 + 0.25777174E-05 0.98643606E-06 -0.22535610E-05 -0.47892105E-05 -0.39894577E-05 + 0.38745508E-06 0.29998910E-05 0.10627062E-04 0.11545013E-04 0.27557961E-04 + 0.15469159E-04 0.17667449E-04 0.18678116E-04 0.20087444E-04 0.20226317E-04 + 0.24573938E-04 0.27323871E-04 0.25985835E-04 0.25236205E-04 0.19280608E-04 + 0.16116238E-04 0.13534305E-04 0.11040317E-04 -0.40968424E-04 0.24470744E-05 + 0.76820901E-05 0.13519049E-04 -0.17396819E-04 -0.24938588E-04 -0.23036371E-04 + 0.27605554E-04 0.36564731E-04 0.14734781E-03 0.29866260E-03 0.34870103E-03 + 0.45621161E-03 0.68136955E-03 0.89525749E-03 0.12677595E-02 0.14821956E-02 + 0.13249273E-02 0.11247855E-02 0.11342132E-02 0.10157597E-02 0.69372799E-03 + 0.42264878E-03 -0.59714814E-04 0.43231362E-03 0.92024995E-03 0.18418648E-02 + 0.11614995E-02 0.19836371E-02 0.30989576E-02 0.19797273E-02 0.60644923E-03 + -0.17728517E-02 -0.35093621E-02 -0.23849810E-02 0.18107262E-02 0.47763250E-02 + 0.11919067E-01 0.14827014E-01 0.30517219E-01 0.20045100E-01 0.22424774E-01 + 0.24043601E-01 0.25003597E-01 0.25118085E-01 0.27536966E-01 0.26728320E-01 + 0.23359787E-01 0.21625356E-01 0.16263844E-01 0.12818781E-01 0.10705081E-01 + 0.85014868E-02 -0.26957686E-04 0.13520546E-05 0.47726594E-05 0.83408958E-05 + -0.11464400E-04 -0.17576614E-04 -0.18788749E-04 0.50791424E-05 0.37531761E-05 + 0.56018125E-04 0.14270625E-03 0.18466887E-03 0.23617625E-03 0.37262371E-03 + 0.48646518E-03 0.68706748E-03 0.81295596E-03 0.78262591E-03 0.72265232E-03 + 0.66157766E-03 0.49348000E-03 0.22884951E-03 0.20242494E-04 -0.34089178E-03 + -0.68941478E-04 0.17875993E-03 0.72334688E-03 0.39119170E-03 0.88110803E-03 + 0.14768446E-02 0.49722045E-03 -0.70445754E-03 -0.26801670E-02 -0.43076437E-02 + -0.41150586E-02 -0.19071581E-02 -0.45407238E-03 0.37809161E-02 0.50675042E-02 + 0.14931151E-01 0.80451277E-02 0.93182526E-02 0.10248134E-01 0.10961228E-01 + 0.11270313E-01 0.13484380E-01 0.13921926E-01 0.12513272E-01 0.11859904E-01 + 0.86378540E-02 0.66615151E-02 0.55812190E-02 0.44624475E-02 -0.13422374E-04 + 0.68577300E-06 0.21399553E-05 0.47895481E-05 -0.61627057E-05 -0.10086395E-04 + -0.11644275E-04 -0.19730089E-05 -0.57648139E-05 0.14221212E-04 0.57200764E-04 + 0.85694242E-04 0.10604733E-03 0.17593801E-03 0.22683974E-03 0.31695834E-03 + 0.38013542E-03 0.40263575E-03 0.40514982E-03 0.33989216E-03 0.20882061E-03 + 0.56686507E-04 -0.50817014E-04 -0.24872866E-03 -0.10678233E-03 0.16941734E-04 + 0.31090044E-03 0.16328206E-03 0.42763010E-03 0.74181926E-03 0.20695381E-03 + -0.44391889E-03 -0.15213688E-02 -0.24487222E-02 -0.24624968E-02 -0.14755561E-02 + -0.95696549E-03 0.91267515E-03 0.10595286E-02 0.59317701E-02 0.23937030E-02 + 0.27054678E-02 0.28884864E-02 0.30479870E-02 0.30978784E-02 0.44275019E-02 + 0.51476187E-02 0.48643553E-02 0.47972838E-02 0.33264517E-02 0.24542232E-02 + 0.20440017E-02 0.16353447E-02 -0.39880859E-02 -0.12876245E-03 0.83134358E-03 + 0.11352379E-02 -0.37453979E-03 -0.60270053E-03 0.50650594E-03 0.16821644E-02 + 0.25278254E-02 0.48884836E-02 0.59657285E-02 0.58216979E-02 0.53259947E-02 + 0.67545263E-02 0.88978995E-02 0.14780483E-01 0.14804031E-01 0.15839389E-01 + 0.84706504E-02 0.92990511E-02 0.10371411E-03 -0.36167913E-02 0.15276396E-01 + -0.82599476E-03 0.31125570E-03 -0.12046555E-01 0.49702769E-01 0.55205306E-01 + 0.65494134E-01 0.86159867E-01 0.62743773E-01 0.66315859E-01 0.36919987E-01 + 0.28772364E-01 0.18817818E-01 0.41278498E-01 0.43479600E-01 0.91324527E-01 + 0.79308608E-01 0.21758397E+00 0.16884729E+00 0.14078186E+00 0.12354270E+00 + 0.82007573E-01 0.28040333E-01 0.29178717E-02 -0.24079111E-02 -0.21471691E-01 + -0.17901418E-01 -0.30551370E-01 -0.37356140E-01 -0.39279977E-01 -0.37065231E-01 + ! ------------------------------------------------------ +END diff --git a/tools/conf_tests/small_3D/data/rttov12/rtcoef_msg_3_seviri.dat b/tools/conf_tests/small_3D/data/rttov12/rtcoef_msg_3_seviri.dat new file mode 100644 index 0000000000000000000000000000000000000000..bea2ebb773d5e9c8980132ae6d53ced497142303 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov12/rtcoef_msg_3_seviri.dat @@ -0,0 +1,4776 @@ + ! RTTOV coefficient file msg-3 seviri-ir + ! Automatic creation by subroutine rttov_writecoef + ! RTTOV library version 12.1.0 + ! ------------------------------------------------------ +IDENTIFICATION + ! + 12 3 21 ! Platform sat_id instrument + msg-3 seviri-ir + ir ! Sensor type [ir,mw,hi,po] + 12 ! RTTOV coefficient file version number + Created by rttov_lbl_make_coef.exe + 2016 11 10 ! Creation date + ! ------------------------------------------------------ +LINE-BY-LINE + ! Line-by-line and other information + ! +LBLRTM_DB1/wv-ozone-co2/l54/avg/msg-3-seviri-ir +LBLRTM +Created at CMS, September 2016 +pascal.brunel@meteo.fr +Software = lblrtm_v12.2 +Continuum = contnm.f(Revision: 16421) mt_ckd_2.5.2 (Jan 2011) +LBL data = lblrtm_v12.2/aer_v_3.2 +Profiles = based on ECMWF_83P 2013 (marco.matricardi@ecmwf.int) revised for 1970-202x + PROFILES_ECMWF_83_2016_CO2FIX 2 variable gases h2o, o3 + PROFILES_ECMWF_83_2016_CO2VAR 3 variable gases h2o, co2, o3 + PROFILES_ECMWF_83_2016_CH4VAR 6 variable gases h2o, co2, o3, n2o, co, ch4 + PROFILES_ECMWF_83_2016_SO2VAR 7 variable gases h2o, co2, o3, n2o, co, ch4, so2 + Minor gases from ECMWF_83P 2013 (marco.matricardi@ecmwf.int) and US76 +Secants for LbL = 14 +LbL spectral range 175-3300cm-1 LbL interpolated/averaged at 0.001cm-1 +Spectral resolution for storage 0.25cm-1 +High resolution sounders, convolution at 0.001cm-1 +Secant angles used for coefficient generation = + 0 37 48 55 60 64 +Some channels were taken from rtcoef_msg_3_seviri-ir.H5--planck-weighted: + 1 2 3 + ! ------------------------------------------------------ +FAST_MODEL_VARIABLES + ! + ! + RTTOV8 ! Fast model name + 8 ! Fast model version compatibility level + 8 ! Number of channels described in the coef file + 5 ! Number of gases described in the coef file + 0 ! PC compatibility level + 0 ! Zeeman flag + Mixed_gases ! Gas identification + 10 10 54 ! Variables/predictors levels (pressure/absorber) + Water_vapour ! Gas identification + 12 12 54 ! Variables/predictors levels (pressure/absorber) + Ozone ! Gas identification + 11 11 54 ! Variables/predictors levels (pressure/absorber) + WV_Continuum ! Gas identification + 4 4 54 ! Variables/predictors levels (pressure/absorber) + CO2 ! Gas identification + 10 10 54 ! Variables/predictors levels (pressure/absorber) + ! ------------------------------------------------------ +README_SPECTRAL_RESPONSE_FUNCTION + ! +README file for MSG-3 SEVIRI filter functions +December 2011 + +Reference file: EUM-MSG-TEN-06-0010 MSG_SEVIRI_Spectral_Response_Characterisation.XLS +available on the web page +http://www.eumetsat.int/Home/Main/DataProducts/Calibration/MSGCalibration/index.htm?l=en +see link: + +LinkSpectral responses for Meteosat Second Generation (MSG) (ZIP, 226 KB). +Note: SEVIRI PFM is onboard Meteosat-8, SEVIRI FM2 is onboard Meteosat-9, SEVIRI FM3 is onboard MSG-3, + and SEVIRI FM4 is onboard MSG-4 (data not yet available). +Document Change Record +Issue Date DCN No Author Changes +1 1/19/2006 - GEO/GF First Issue + + +The IR channels spectral response function are taken from the 95K instrument temperature + +Excel sheets are converted to ASCII text files +Wavelenghts are converted to wavenumbers +All original values are kept. + ! ------------------------------------------------------ +FILTER_FUNCTIONS + ! + ! Channel number (from instrument original description) + ! Channel status + ! Central wavenumber + ! Band correction coefficients (offset, slope) + ! Gamma correction factor + 1 1 0.2555731534E+04 0.3068827725E+01 0.9933322864E+00 0.1000000000E+01 + 2 1 0.1588479697E+04 0.1563937843E+01 0.9947899214E+00 0.1000000000E+01 + 3 1 0.1358460452E+04 0.2747093130E+00 0.9989332688E+00 0.1000000000E+01 + 4 1 0.1147372612E+04 0.8439648226E-01 0.9995983065E+00 0.1000000000E+01 + 5 1 0.1034479078E+04 0.1989136387E-01 0.9998870663E+00 0.1000000000E+01 + 6 1 0.9270688810E+03 0.1448128235E+00 0.9988828246E+00 0.1000000000E+01 + 7 1 0.8368734588E+03 0.3209138358E-01 0.9994537860E+00 0.1000000000E+01 + 8 1 0.7481686747E+03 -0.5612228281E-01 0.9995570938E+00 0.1000000000E+01 + ! ------------------------------------------------------ +FUNDAMENTAL_CONSTANTS + ! + ! Units of constants for spectral radiance + ! First radiation constant (mW/(m2.sr.cm-4)) + ! Second radiation constant (cm.K) + 1.191042953E-05 1.4387774 ! Planck constants + 35800.0 ! Nominal satellite height (km) + ! ------------------------------------------------------ +PLANCK_WEIGHTED + ! + ! Channel number + ! Planck-weighted flag (1 => yes; 0 => no) + 1 1 + 2 1 + 3 1 + 4 0 + 5 0 + 6 0 + 7 0 + 8 0 + ! ------------------------------------------------------ +SSIREM + ! + ! Channel number + ! 5 coefficients for emissivity model SSIREM + 1 ! Version number + 1 0.9768650 0.0187397 0.0231705 4.0 8.0 + 2 0.9798478 0.0172035 0.0227162 4.0 8.0 + 3 0.9820277 0.0157868 0.0221262 4.0 8.0 + 4 0.9854429 0.0134818 0.0210176 4.0 8.0 + 5 0.9884671 0.0111948 0.0196581 4.0 8.0 + 6 0.9922828 0.0081102 0.0177841 4.0 8.0 + 7 0.9883886 0.0142663 0.0249018 4.0 8.0 + 8 0.9713797 0.0077291 0.0535882 3.0 6.0 + ! ------------------------------------------------------ +IR_SEA_EMIS + ! + 1 ! Version number + 11 ! Number of coefficients per channel + 75.000 301.200 ! Reference zenith angle and Tskin values + 0.97618121E+00 -0.57969243E-05 -0.27175234E-06 0.80679274E+00 0.58735597E-02 + -0.11799988E-03 0.19551880E+04 0.30988803E+02 0.15161259E+03 0.00000000E+00 + 0.00000000E+00 0.97918383E+00 -0.53047432E-05 -0.25743810E-06 0.81368023E+00 + 0.57859286E-02 -0.11655689E-03 0.19642907E+04 0.31559300E+02 0.15326083E+03 + -0.10000028E+01 0.34115555E-05 0.98150358E+00 -0.48625568E-05 -0.24089569E-06 + 0.82057457E+00 0.56779839E-02 -0.11475058E-03 0.19856062E+04 0.32202261E+02 + 0.15550322E+03 -0.99999394E+00 0.18535317E-04 0.98468416E+00 -0.42354683E-05 + -0.21734488E-06 0.83078127E+00 0.55053674E-02 -0.11179334E-03 0.20192945E+04 + 0.33238021E+02 0.15908229E+03 -0.99996674E+00 0.82417276E-04 0.98740904E+00 + -0.36549280E-05 -0.19387964E-06 0.84103520E+00 0.53125806E-02 -0.10842306E-03 + 0.20618482E+04 0.34408341E+02 0.16329794E+03 -0.99997224E+00 0.92017999E-04 + 0.99147801E+00 -0.27226762E-05 -0.15447307E-06 0.85841682E+00 0.49610769E-02 + -0.10217479E-03 0.21303739E+04 0.36444587E+02 0.17117108E+03 -0.99998985E+00 + 0.11704507E-03 0.98811136E+00 -0.40868358E-05 -0.24623862E-06 0.81773262E+00 + 0.59957419E-02 -0.12073379E-03 0.17391319E+04 0.29509731E+02 0.14571453E+03 + -0.99987054E+00 0.18901538E-03 0.97301374E+00 -0.82991663E-05 -0.45355736E-06 + 0.75787026E+00 0.69556817E-02 -0.13592104E-03 0.16441103E+04 0.26140197E+02 + 0.13246554E+03 -0.99980688E+00 0.18793024E-04 + ! ------------------------------------------------------ +REFERENCE_PROFILE + ! + ! Reference pressure (hPa), reference temperature (K) and + ! reference/background volume mixing ratios (ppmv) for each gas + ! Note that mixing ratio is "missing" for mixed gases + ! Mixed_gases + 0.0050 191.313 0.900000E+38 0.900000E+38 + 0.0131 197.579 0.900000E+38 0.900000E+38 + 0.0304 208.936 0.900000E+38 0.900000E+38 + 0.0644 224.429 0.900000E+38 0.900000E+38 + 0.1263 241.278 0.900000E+38 0.900000E+38 + 0.2324 255.512 0.900000E+38 0.900000E+38 + 0.4052 263.063 0.900000E+38 0.900000E+38 + 0.6749 263.743 0.900000E+38 0.900000E+38 + 1.0801 259.027 0.900000E+38 0.900000E+38 + 1.6691 252.271 0.900000E+38 0.900000E+38 + 2.5011 245.349 0.900000E+38 0.900000E+38 + 3.6462 238.052 0.900000E+38 0.900000E+38 + 5.1864 231.275 0.900000E+38 0.900000E+38 + 7.2150 225.435 0.900000E+38 0.900000E+38 + 9.8368 220.998 0.900000E+38 0.900000E+38 + 13.1672 218.057 0.900000E+38 0.900000E+38 + 17.3308 215.687 0.900000E+38 0.900000E+38 + 22.4601 213.682 0.900000E+38 0.900000E+38 + 28.6937 211.946 0.900000E+38 0.900000E+38 + 36.1735 210.653 0.900000E+38 0.900000E+38 + 45.0430 209.238 0.900000E+38 0.900000E+38 + 55.4433 207.879 0.900000E+38 0.900000E+38 + 67.5109 206.848 0.900000E+38 0.900000E+38 + 81.3744 205.749 0.900000E+38 0.900000E+38 + 97.1505 205.737 0.900000E+38 0.900000E+38 + 114.9415 207.457 0.900000E+38 0.900000E+38 + 134.8318 210.060 0.900000E+38 0.900000E+38 + 156.8846 212.535 0.900000E+38 0.900000E+38 + 181.1394 214.742 0.900000E+38 0.900000E+38 + 207.6092 217.193 0.900000E+38 0.900000E+38 + 236.2784 220.448 0.900000E+38 0.900000E+38 + 267.1012 224.303 0.900000E+38 0.900000E+38 + 300.0000 228.567 0.900000E+38 0.900000E+38 + 334.8648 233.110 0.900000E+38 0.900000E+38 + 371.5529 237.639 0.900000E+38 0.900000E+38 + 409.8893 242.080 0.900000E+38 0.900000E+38 + 449.6677 246.270 0.900000E+38 0.900000E+38 + 490.6516 250.193 0.900000E+38 0.900000E+38 + 532.5769 253.926 0.900000E+38 0.900000E+38 + 575.1538 257.362 0.900000E+38 0.900000E+38 + 618.0706 259.963 0.900000E+38 0.900000E+38 + 660.9965 262.401 0.900000E+38 0.900000E+38 + 703.5863 264.647 0.900000E+38 0.900000E+38 + 745.4841 266.631 0.900000E+38 0.900000E+38 + 786.3278 268.280 0.900000E+38 0.900000E+38 + 825.7546 269.621 0.900000E+38 0.900000E+38 + 863.4047 270.777 0.900000E+38 0.900000E+38 + 898.9275 271.651 0.900000E+38 0.900000E+38 + 931.9853 272.503 0.900000E+38 0.900000E+38 + 962.2587 273.447 0.900000E+38 0.900000E+38 + 989.4510 274.216 0.900000E+38 0.900000E+38 + 1013.2923 274.597 0.900000E+38 0.900000E+38 + 1033.5436 274.625 0.900000E+38 0.900000E+38 + 1050.0000 274.633 0.900000E+38 0.900000E+38 + ! Water_vapour + 0.0050 191.313 0.262772E+01 0.262772E+01 + 0.0131 197.579 0.310453E+01 0.310453E+01 + 0.0304 208.936 0.393918E+01 0.393918E+01 + 0.0644 224.429 0.486750E+01 0.486750E+01 + 0.1263 241.278 0.554010E+01 0.554010E+01 + 0.2324 255.512 0.587060E+01 0.587060E+01 + 0.4052 263.063 0.598199E+01 0.598199E+01 + 0.6749 263.743 0.598047E+01 0.598047E+01 + 1.0801 259.027 0.586610E+01 0.586610E+01 + 1.6691 252.271 0.565885E+01 0.565885E+01 + 2.5011 245.349 0.543432E+01 0.543432E+01 + 3.6462 238.052 0.522027E+01 0.522027E+01 + 5.1864 231.275 0.499416E+01 0.499416E+01 + 7.2150 225.435 0.476098E+01 0.476098E+01 + 9.8368 220.998 0.452508E+01 0.452508E+01 + 13.1672 218.057 0.426713E+01 0.426713E+01 + 17.3308 215.687 0.402139E+01 0.402139E+01 + 22.4601 213.682 0.380384E+01 0.380384E+01 + 28.6937 211.946 0.363522E+01 0.363522E+01 + 36.1735 210.653 0.350877E+01 0.350877E+01 + 45.0430 209.238 0.344182E+01 0.344182E+01 + 55.4433 207.879 0.346107E+01 0.346107E+01 + 67.5109 206.848 0.352157E+01 0.352157E+01 + 81.3744 205.749 0.375882E+01 0.375882E+01 + 97.1505 205.737 0.393261E+01 0.393261E+01 + 114.9415 207.457 0.550984E+01 0.550984E+01 + 134.8318 210.060 0.101032E+02 0.101032E+02 + 156.8846 212.535 0.215795E+02 0.215795E+02 + 181.1394 214.742 0.493968E+02 0.493968E+02 + 207.6092 217.193 0.941923E+02 0.941923E+02 + 236.2784 220.448 0.183078E+03 0.183078E+03 + 267.1012 224.303 0.335379E+03 0.335379E+03 + 300.0000 228.567 0.548621E+03 0.548621E+03 + 334.8648 233.110 0.864657E+03 0.864657E+03 + 371.5529 237.639 0.117500E+04 0.117500E+04 + 409.8893 242.080 0.152513E+04 0.152513E+04 + 449.6677 246.270 0.200679E+04 0.200679E+04 + 490.6516 250.193 0.262552E+04 0.262552E+04 + 532.5769 253.926 0.331061E+04 0.331061E+04 + 575.1538 257.362 0.393078E+04 0.393078E+04 + 618.0706 259.963 0.453822E+04 0.453822E+04 + 660.9965 262.401 0.517545E+04 0.517545E+04 + 703.5863 264.647 0.590779E+04 0.590779E+04 + 745.4841 266.631 0.678572E+04 0.678572E+04 + 786.3278 268.280 0.772527E+04 0.772527E+04 + 825.7546 269.621 0.864842E+04 0.864842E+04 + 863.4047 270.777 0.937278E+04 0.937278E+04 + 898.9275 271.651 0.990063E+04 0.990063E+04 + 931.9853 272.503 0.105103E+05 0.105103E+05 + 962.2587 273.447 0.111002E+05 0.111002E+05 + 989.4510 274.216 0.113614E+05 0.113614E+05 + 1013.2923 274.597 0.115064E+05 0.115064E+05 + 1033.5436 274.625 0.113242E+05 0.113242E+05 + 1050.0000 274.633 0.111573E+05 0.111573E+05 + ! Ozone + 0.0050 191.313 0.296166E+00 0.296166E+00 + 0.0131 197.579 0.320791E+00 0.320791E+00 + 0.0304 208.936 0.380517E+00 0.380517E+00 + 0.0644 224.429 0.526745E+00 0.526745E+00 + 0.1263 241.278 0.769079E+00 0.769079E+00 + 0.2324 255.512 0.107400E+01 0.107400E+01 + 0.4052 263.063 0.147091E+01 0.147091E+01 + 0.6749 263.743 0.199110E+01 0.199110E+01 + 1.0801 259.027 0.278683E+01 0.278683E+01 + 1.6691 252.271 0.375638E+01 0.375638E+01 + 2.5011 245.349 0.486419E+01 0.486419E+01 + 3.6462 238.052 0.595341E+01 0.595341E+01 + 5.1864 231.275 0.676255E+01 0.676255E+01 + 7.2150 225.435 0.710919E+01 0.710919E+01 + 9.8368 220.998 0.706019E+01 0.706019E+01 + 13.1672 218.057 0.657373E+01 0.657373E+01 + 17.3308 215.687 0.568748E+01 0.568748E+01 + 22.4601 213.682 0.470472E+01 0.470472E+01 + 28.6937 211.946 0.386951E+01 0.386951E+01 + 36.1735 210.653 0.311078E+01 0.311078E+01 + 45.0430 209.238 0.247791E+01 0.247791E+01 + 55.4433 207.879 0.190696E+01 0.190696E+01 + 67.5109 206.848 0.144011E+01 0.144011E+01 + 81.3744 205.749 0.102021E+01 0.102021E+01 + 97.1505 205.737 0.733271E+00 0.733271E+00 + 114.9415 207.457 0.603950E+00 0.603950E+00 + 134.8318 210.060 0.489326E+00 0.489326E+00 + 156.8846 212.535 0.387625E+00 0.387625E+00 + 181.1394 214.742 0.284290E+00 0.284290E+00 + 207.6092 217.193 0.198038E+00 0.198038E+00 + 236.2784 220.448 0.145005E+00 0.145005E+00 + 267.1012 224.303 0.109867E+00 0.109867E+00 + 300.0000 228.567 0.862935E-01 0.862935E-01 + 334.8648 233.110 0.726348E-01 0.726348E-01 + 371.5529 237.639 0.631269E-01 0.631269E-01 + 409.8893 242.080 0.574107E-01 0.574107E-01 + 449.6677 246.270 0.537303E-01 0.537303E-01 + 490.6516 250.193 0.517329E-01 0.517329E-01 + 532.5769 253.926 0.502232E-01 0.502232E-01 + 575.1538 257.362 0.495550E-01 0.495550E-01 + 618.0706 259.963 0.491254E-01 0.491254E-01 + 660.9965 262.401 0.475869E-01 0.475869E-01 + 703.5863 264.647 0.471438E-01 0.471438E-01 + 745.4841 266.631 0.461746E-01 0.461746E-01 + 786.3278 268.280 0.446271E-01 0.446271E-01 + 825.7546 269.621 0.430512E-01 0.430512E-01 + 863.4047 270.777 0.414805E-01 0.414805E-01 + 898.9275 271.651 0.399446E-01 0.399446E-01 + 931.9853 272.503 0.376030E-01 0.376030E-01 + 962.2587 273.447 0.343882E-01 0.343882E-01 + 989.4510 274.216 0.303838E-01 0.303838E-01 + 1013.2923 274.597 0.278440E-01 0.278440E-01 + 1033.5436 274.625 0.274868E-01 0.274868E-01 + 1050.0000 274.633 0.273608E-01 0.273608E-01 + ! WV_Continuum + 0.0050 191.313 0.262772E+01 0.262772E+01 + 0.0131 197.579 0.310453E+01 0.310453E+01 + 0.0304 208.936 0.393918E+01 0.393918E+01 + 0.0644 224.429 0.486750E+01 0.486750E+01 + 0.1263 241.278 0.554010E+01 0.554010E+01 + 0.2324 255.512 0.587060E+01 0.587060E+01 + 0.4052 263.063 0.598199E+01 0.598199E+01 + 0.6749 263.743 0.598047E+01 0.598047E+01 + 1.0801 259.027 0.586610E+01 0.586610E+01 + 1.6691 252.271 0.565885E+01 0.565885E+01 + 2.5011 245.349 0.543432E+01 0.543432E+01 + 3.6462 238.052 0.522027E+01 0.522027E+01 + 5.1864 231.275 0.499416E+01 0.499416E+01 + 7.2150 225.435 0.476098E+01 0.476098E+01 + 9.8368 220.998 0.452508E+01 0.452508E+01 + 13.1672 218.057 0.426713E+01 0.426713E+01 + 17.3308 215.687 0.402139E+01 0.402139E+01 + 22.4601 213.682 0.380384E+01 0.380384E+01 + 28.6937 211.946 0.363522E+01 0.363522E+01 + 36.1735 210.653 0.350877E+01 0.350877E+01 + 45.0430 209.238 0.344182E+01 0.344182E+01 + 55.4433 207.879 0.346107E+01 0.346107E+01 + 67.5109 206.848 0.352157E+01 0.352157E+01 + 81.3744 205.749 0.375882E+01 0.375882E+01 + 97.1505 205.737 0.393261E+01 0.393261E+01 + 114.9415 207.457 0.550984E+01 0.550984E+01 + 134.8318 210.060 0.101032E+02 0.101032E+02 + 156.8846 212.535 0.215795E+02 0.215795E+02 + 181.1394 214.742 0.493968E+02 0.493968E+02 + 207.6092 217.193 0.941923E+02 0.941923E+02 + 236.2784 220.448 0.183078E+03 0.183078E+03 + 267.1012 224.303 0.335379E+03 0.335379E+03 + 300.0000 228.567 0.548621E+03 0.548621E+03 + 334.8648 233.110 0.864657E+03 0.864657E+03 + 371.5529 237.639 0.117500E+04 0.117500E+04 + 409.8893 242.080 0.152513E+04 0.152513E+04 + 449.6677 246.270 0.200679E+04 0.200679E+04 + 490.6516 250.193 0.262552E+04 0.262552E+04 + 532.5769 253.926 0.331061E+04 0.331061E+04 + 575.1538 257.362 0.393078E+04 0.393078E+04 + 618.0706 259.963 0.453822E+04 0.453822E+04 + 660.9965 262.401 0.517545E+04 0.517545E+04 + 703.5863 264.647 0.590779E+04 0.590779E+04 + 745.4841 266.631 0.678572E+04 0.678572E+04 + 786.3278 268.280 0.772527E+04 0.772527E+04 + 825.7546 269.621 0.864842E+04 0.864842E+04 + 863.4047 270.777 0.937278E+04 0.937278E+04 + 898.9275 271.651 0.990063E+04 0.990063E+04 + 931.9853 272.503 0.105103E+05 0.105103E+05 + 962.2587 273.447 0.111002E+05 0.111002E+05 + 989.4510 274.216 0.113614E+05 0.113614E+05 + 1013.2923 274.597 0.115064E+05 0.115064E+05 + 1033.5436 274.625 0.113242E+05 0.113242E+05 + 1050.0000 274.633 0.111573E+05 0.111573E+05 + ! CO2 + 0.0050 191.313 0.386188E+03 0.386188E+03 + 0.0131 197.579 0.386196E+03 0.386196E+03 + 0.0304 208.936 0.386218E+03 0.386218E+03 + 0.0644 224.429 0.386258E+03 0.386258E+03 + 0.1263 241.278 0.386329E+03 0.386329E+03 + 0.2324 255.512 0.386449E+03 0.386449E+03 + 0.4052 263.063 0.386614E+03 0.386614E+03 + 0.6749 263.743 0.386756E+03 0.386756E+03 + 1.0801 259.027 0.386571E+03 0.386571E+03 + 1.6691 252.271 0.386218E+03 0.386218E+03 + 2.5011 245.349 0.386658E+03 0.386658E+03 + 3.6462 238.052 0.387474E+03 0.387474E+03 + 5.1864 231.275 0.388461E+03 0.388461E+03 + 7.2150 225.435 0.389418E+03 0.389418E+03 + 9.8368 220.998 0.390246E+03 0.390246E+03 + 13.1672 218.057 0.390595E+03 0.390595E+03 + 17.3308 215.687 0.390487E+03 0.390487E+03 + 22.4601 213.682 0.390315E+03 0.390315E+03 + 28.6937 211.946 0.390530E+03 0.390530E+03 + 36.1735 210.653 0.390929E+03 0.390929E+03 + 45.0430 209.238 0.391252E+03 0.391252E+03 + 55.4433 207.879 0.393168E+03 0.393168E+03 + 67.5109 206.848 0.394070E+03 0.394070E+03 + 81.3744 205.749 0.396270E+03 0.396270E+03 + 97.1505 205.737 0.397504E+03 0.397504E+03 + 114.9415 207.457 0.396854E+03 0.396854E+03 + 134.8318 210.060 0.395476E+03 0.395476E+03 + 156.8846 212.535 0.397056E+03 0.397056E+03 + 181.1394 214.742 0.398104E+03 0.398104E+03 + 207.6092 217.193 0.398619E+03 0.398619E+03 + 236.2784 220.448 0.398292E+03 0.398292E+03 + 267.1012 224.303 0.399162E+03 0.399162E+03 + 300.0000 228.567 0.400264E+03 0.400264E+03 + 334.8648 233.110 0.401019E+03 0.401019E+03 + 371.5529 237.639 0.401681E+03 0.401681E+03 + 409.8893 242.080 0.402304E+03 0.402304E+03 + 449.6677 246.270 0.403003E+03 0.403003E+03 + 490.6516 250.193 0.403733E+03 0.403733E+03 + 532.5769 253.926 0.404314E+03 0.404314E+03 + 575.1538 257.362 0.404704E+03 0.404704E+03 + 618.0706 259.963 0.404996E+03 0.404996E+03 + 660.9965 262.401 0.405309E+03 0.405309E+03 + 703.5863 264.647 0.405004E+03 0.405004E+03 + 745.4841 266.631 0.404763E+03 0.404763E+03 + 786.3278 268.280 0.404388E+03 0.404388E+03 + 825.7546 269.621 0.404044E+03 0.404044E+03 + 863.4047 270.777 0.403651E+03 0.403651E+03 + 898.9275 271.651 0.403319E+03 0.403319E+03 + 931.9853 272.503 0.402640E+03 0.402640E+03 + 962.2587 273.447 0.402074E+03 0.402074E+03 + 989.4510 274.216 0.401685E+03 0.401685E+03 + 1013.2923 274.597 0.401427E+03 0.401427E+03 + 1033.5436 274.625 0.401295E+03 0.401295E+03 + 1050.0000 274.633 0.401227E+03 0.401227E+03 + ! ------------------------------------------------------ +PROFILE_ENVELOPE + ! + ! Reference pressure (hPa), temperature max and min (K) and + ! volume mixing ratio max and min (ppmv) for each gas + ! Temperature + 0.0050 223.59 159.62 + 0.0131 229.21 171.32 + 0.0304 239.74 187.13 + 0.0644 254.65 200.20 + 0.1263 271.86 216.09 + 0.2324 289.67 229.12 + 0.4052 305.67 228.51 + 0.6749 310.98 219.08 + 1.0801 309.85 210.55 + 1.6691 304.25 199.19 + 2.5011 293.18 195.86 + 3.6462 284.10 194.49 + 5.1864 276.26 192.30 + 7.2150 268.62 187.09 + 9.8368 266.66 184.78 + 13.1672 260.95 181.63 + 17.3308 257.60 179.43 + 22.4601 255.39 179.41 + 28.6937 256.97 180.10 + 36.1735 254.48 180.54 + 45.0430 248.32 182.96 + 55.4433 241.75 184.66 + 67.5109 240.64 186.02 + 81.3744 238.14 177.75 + 97.1505 238.57 182.17 + 114.9415 235.97 187.32 + 134.8318 235.69 188.57 + 156.8846 236.48 188.24 + 181.1394 238.43 189.59 + 207.6092 240.41 193.45 + 236.2784 245.54 196.80 + 267.1012 252.66 202.20 + 300.0000 259.25 205.29 + 334.8648 266.98 208.54 + 371.5529 272.84 211.49 + 409.8893 275.12 216.00 + 449.6677 276.75 220.51 + 490.6516 279.27 223.92 + 532.5769 283.79 225.27 + 575.1538 286.86 224.01 + 618.0706 289.33 211.06 + 660.9965 292.46 211.06 + 703.5863 298.14 211.06 + 745.4841 303.43 211.06 + 786.3278 305.87 211.06 + 825.7546 307.76 211.06 + 863.4047 311.41 211.06 + 898.9275 314.75 211.06 + 931.9853 317.49 211.06 + 962.2587 318.11 211.06 + 989.4510 318.26 211.06 + 1013.2923 318.26 211.06 + 1033.5436 318.26 211.06 + 1050.0000 318.26 211.06 + ! Mixed_gases + 0.0050 0.9000E+38 -0.9000E+38 + 0.0131 0.9000E+38 -0.9000E+38 + 0.0304 0.9000E+38 -0.9000E+38 + 0.0644 0.9000E+38 -0.9000E+38 + 0.1263 0.9000E+38 -0.9000E+38 + 0.2324 0.9000E+38 -0.9000E+38 + 0.4052 0.9000E+38 -0.9000E+38 + 0.6749 0.9000E+38 -0.9000E+38 + 1.0801 0.9000E+38 -0.9000E+38 + 1.6691 0.9000E+38 -0.9000E+38 + 2.5011 0.9000E+38 -0.9000E+38 + 3.6462 0.9000E+38 -0.9000E+38 + 5.1864 0.9000E+38 -0.9000E+38 + 7.2150 0.9000E+38 -0.9000E+38 + 9.8368 0.9000E+38 -0.9000E+38 + 13.1672 0.9000E+38 -0.9000E+38 + 17.3308 0.9000E+38 -0.9000E+38 + 22.4601 0.9000E+38 -0.9000E+38 + 28.6937 0.9000E+38 -0.9000E+38 + 36.1735 0.9000E+38 -0.9000E+38 + 45.0430 0.9000E+38 -0.9000E+38 + 55.4433 0.9000E+38 -0.9000E+38 + 67.5109 0.9000E+38 -0.9000E+38 + 81.3744 0.9000E+38 -0.9000E+38 + 97.1505 0.9000E+38 -0.9000E+38 + 114.9415 0.9000E+38 -0.9000E+38 + 134.8318 0.9000E+38 -0.9000E+38 + 156.8846 0.9000E+38 -0.9000E+38 + 181.1394 0.9000E+38 -0.9000E+38 + 207.6092 0.9000E+38 -0.9000E+38 + 236.2784 0.9000E+38 -0.9000E+38 + 267.1012 0.9000E+38 -0.9000E+38 + 300.0000 0.9000E+38 -0.9000E+38 + 334.8648 0.9000E+38 -0.9000E+38 + 371.5529 0.9000E+38 -0.9000E+38 + 409.8893 0.9000E+38 -0.9000E+38 + 449.6677 0.9000E+38 -0.9000E+38 + 490.6516 0.9000E+38 -0.9000E+38 + 532.5769 0.9000E+38 -0.9000E+38 + 575.1538 0.9000E+38 -0.9000E+38 + 618.0706 0.9000E+38 -0.9000E+38 + 660.9965 0.9000E+38 -0.9000E+38 + 703.5863 0.9000E+38 -0.9000E+38 + 745.4841 0.9000E+38 -0.9000E+38 + 786.3278 0.9000E+38 -0.9000E+38 + 825.7546 0.9000E+38 -0.9000E+38 + 863.4047 0.9000E+38 -0.9000E+38 + 898.9275 0.9000E+38 -0.9000E+38 + 931.9853 0.9000E+38 -0.9000E+38 + 962.2587 0.9000E+38 -0.9000E+38 + 989.4510 0.9000E+38 -0.9000E+38 + 1013.2923 0.9000E+38 -0.9000E+38 + 1033.5436 0.9000E+38 -0.9000E+38 + 1050.0000 0.9000E+38 -0.9000E+38 + ! Water_vapour + 0.0050 0.4368E+01 0.1142E+01 + 0.0131 0.5026E+01 0.1352E+01 + 0.0304 0.6186E+01 0.1687E+01 + 0.0644 0.6754E+01 0.1976E+01 + 0.1263 0.7030E+01 0.2255E+01 + 0.2324 0.7159E+01 0.2488E+01 + 0.4052 0.7147E+01 0.3113E+01 + 0.6749 0.6951E+01 0.3760E+01 + 1.0801 0.6721E+01 0.4119E+01 + 1.6691 0.6577E+01 0.4006E+01 + 2.5011 0.6462E+01 0.3652E+01 + 3.6462 0.6409E+01 0.3536E+01 + 5.1864 0.6320E+01 0.3378E+01 + 7.2150 0.6271E+01 0.3180E+01 + 9.8368 0.6137E+01 0.3071E+01 + 13.1672 0.6002E+01 0.3030E+01 + 17.3308 0.5801E+01 0.2750E+01 + 22.4601 0.5626E+01 0.2134E+01 + 28.6937 0.5381E+01 0.1903E+01 + 36.1735 0.5119E+01 0.1640E+01 + 45.0430 0.4915E+01 0.1695E+01 + 55.4433 0.5174E+01 0.1620E+01 + 67.5109 0.7641E+01 0.1455E+01 + 81.3744 0.1491E+02 0.4490E+00 + 97.1505 0.1692E+02 0.1608E-01 + 114.9415 0.2797E+02 0.1608E-01 + 134.8318 0.8520E+02 0.1608E-01 + 156.8846 0.2375E+03 0.1608E-01 + 181.1394 0.5955E+03 0.1608E-01 + 207.6092 0.1220E+04 0.1608E-01 + 236.2784 0.2063E+04 0.1608E-01 + 267.1012 0.3651E+04 0.1608E-01 + 300.0000 0.5526E+04 0.1608E-01 + 334.8648 0.7875E+04 0.1614E+01 + 371.5529 0.1036E+05 0.1906E+01 + 409.8893 0.1289E+05 0.2648E+01 + 449.6677 0.1547E+05 0.2948E+01 + 490.6516 0.1807E+05 0.3639E+01 + 532.5769 0.2058E+05 0.4584E+01 + 575.1538 0.2290E+05 0.4760E+01 + 618.0706 0.2524E+05 0.8522E+01 + 660.9965 0.2733E+05 0.7585E+01 + 703.5863 0.2944E+05 0.8411E+01 + 745.4841 0.3141E+05 0.1089E+02 + 786.3278 0.3332E+05 0.1033E+02 + 825.7546 0.3516E+05 0.9835E+01 + 863.4047 0.3685E+05 0.9407E+01 + 898.9275 0.3856E+05 0.9035E+01 + 931.9853 0.3978E+05 0.8714E+01 + 962.2587 0.4272E+05 0.8440E+01 + 989.4510 0.4143E+05 0.8208E+01 + 1013.2923 0.3934E+05 0.8015E+01 + 1033.5436 0.3984E+05 0.7858E+01 + 1050.0000 0.3970E+05 0.7735E+01 + ! Ozone + 0.0050 0.1170E+01 0.1752E-01 + 0.0131 0.1175E+01 0.8642E-01 + 0.0304 0.1247E+01 0.1344E+00 + 0.0644 0.1392E+01 0.2139E+00 + 0.1263 0.1720E+01 0.2844E+00 + 0.2324 0.1971E+01 0.4443E+00 + 0.4052 0.2265E+01 0.6911E+00 + 0.6749 0.2971E+01 0.9136E+00 + 1.0801 0.4444E+01 0.8955E+00 + 1.6691 0.6095E+01 0.8036E+00 + 2.5011 0.7659E+01 0.6303E+00 + 3.6462 0.8706E+01 0.9315E+00 + 5.1864 0.1028E+02 0.1982E+01 + 7.2150 0.1078E+02 0.2349E+01 + 9.8368 0.1062E+02 0.1652E+01 + 13.1672 0.9967E+01 0.8989E+00 + 17.3308 0.9254E+01 0.5345E+00 + 22.4601 0.8163E+01 0.3479E+00 + 28.6937 0.7280E+01 0.2044E+00 + 36.1735 0.6145E+01 0.1336E+00 + 45.0430 0.5666E+01 0.6817E-01 + 55.4433 0.4758E+01 0.6027E-01 + 67.5109 0.3988E+01 0.5375E-01 + 81.3744 0.3658E+01 0.4721E-01 + 97.1505 0.3016E+01 0.1982E-01 + 114.9415 0.2481E+01 0.1963E-01 + 134.8318 0.2221E+01 0.1965E-01 + 156.8846 0.1959E+01 0.1683E-01 + 181.1394 0.1644E+01 0.1222E-01 + 207.6092 0.1234E+01 0.1675E-01 + 236.2784 0.8958E+00 0.1986E-01 + 267.1012 0.6454E+00 0.1935E-01 + 300.0000 0.5235E+00 0.1933E-01 + 334.8648 0.4580E+00 0.1987E-01 + 371.5529 0.3729E+00 0.1910E-01 + 409.8893 0.3010E+00 0.1888E-01 + 449.6677 0.2363E+00 0.1876E-01 + 490.6516 0.2058E+00 0.1866E-01 + 532.5769 0.1662E+00 0.1816E-01 + 575.1538 0.1590E+00 0.1439E-01 + 618.0706 0.1428E+00 0.1211E-01 + 660.9965 0.1063E+00 0.1126E-01 + 703.5863 0.1032E+00 0.1084E-01 + 745.4841 0.9740E-01 0.1053E-01 + 786.3278 0.9606E-01 0.1022E-01 + 825.7546 0.9429E-01 0.9850E-02 + 863.4047 0.9289E-01 0.9226E-02 + 898.9275 0.8994E-01 0.8067E-02 + 931.9853 0.8499E-01 0.7483E-02 + 962.2587 0.8288E-01 0.6966E-02 + 989.4510 0.8272E-01 0.7135E-02 + 1013.2923 0.7871E-01 0.7979E-02 + 1033.5436 0.7860E-01 0.8002E-02 + 1050.0000 0.7860E-01 0.8002E-02 + ! WV_Continuum + 0.0050 0.4368E+01 0.1142E+01 + 0.0131 0.5026E+01 0.1352E+01 + 0.0304 0.6186E+01 0.1687E+01 + 0.0644 0.6754E+01 0.1976E+01 + 0.1263 0.7030E+01 0.2255E+01 + 0.2324 0.7159E+01 0.2488E+01 + 0.4052 0.7147E+01 0.3113E+01 + 0.6749 0.6951E+01 0.3760E+01 + 1.0801 0.6721E+01 0.4119E+01 + 1.6691 0.6577E+01 0.4006E+01 + 2.5011 0.6462E+01 0.3652E+01 + 3.6462 0.6409E+01 0.3536E+01 + 5.1864 0.6320E+01 0.3378E+01 + 7.2150 0.6271E+01 0.3180E+01 + 9.8368 0.6137E+01 0.3071E+01 + 13.1672 0.6002E+01 0.3030E+01 + 17.3308 0.5801E+01 0.2750E+01 + 22.4601 0.5626E+01 0.2134E+01 + 28.6937 0.5381E+01 0.1903E+01 + 36.1735 0.5119E+01 0.1640E+01 + 45.0430 0.4915E+01 0.1695E+01 + 55.4433 0.5174E+01 0.1620E+01 + 67.5109 0.7641E+01 0.1455E+01 + 81.3744 0.1491E+02 0.4490E+00 + 97.1505 0.1692E+02 0.1608E-01 + 114.9415 0.2797E+02 0.1608E-01 + 134.8318 0.8520E+02 0.1608E-01 + 156.8846 0.2375E+03 0.1608E-01 + 181.1394 0.5955E+03 0.1608E-01 + 207.6092 0.1220E+04 0.1608E-01 + 236.2784 0.2063E+04 0.1608E-01 + 267.1012 0.3651E+04 0.1608E-01 + 300.0000 0.5526E+04 0.1608E-01 + 334.8648 0.7875E+04 0.1614E+01 + 371.5529 0.1036E+05 0.1906E+01 + 409.8893 0.1289E+05 0.2648E+01 + 449.6677 0.1547E+05 0.2948E+01 + 490.6516 0.1807E+05 0.3639E+01 + 532.5769 0.2058E+05 0.4584E+01 + 575.1538 0.2290E+05 0.4760E+01 + 618.0706 0.2524E+05 0.8522E+01 + 660.9965 0.2733E+05 0.7585E+01 + 703.5863 0.2944E+05 0.8411E+01 + 745.4841 0.3141E+05 0.1089E+02 + 786.3278 0.3332E+05 0.1033E+02 + 825.7546 0.3516E+05 0.9835E+01 + 863.4047 0.3685E+05 0.9407E+01 + 898.9275 0.3856E+05 0.9035E+01 + 931.9853 0.3978E+05 0.8714E+01 + 962.2587 0.4272E+05 0.8440E+01 + 989.4510 0.4143E+05 0.8208E+01 + 1013.2923 0.3934E+05 0.8015E+01 + 1033.5436 0.3984E+05 0.7858E+01 + 1050.0000 0.3970E+05 0.7735E+01 + ! CO2 + 0.0050 0.4419E+03 0.3421E+03 + 0.0131 0.4419E+03 0.3421E+03 + 0.0304 0.4419E+03 0.3421E+03 + 0.0644 0.4419E+03 0.3421E+03 + 0.1263 0.4419E+03 0.3421E+03 + 0.2324 0.4419E+03 0.3421E+03 + 0.4052 0.4420E+03 0.3420E+03 + 0.6749 0.4422E+03 0.3420E+03 + 1.0801 0.4424E+03 0.3421E+03 + 1.6691 0.4424E+03 0.3423E+03 + 2.5011 0.4424E+03 0.3423E+03 + 3.6462 0.4426E+03 0.3421E+03 + 5.1864 0.4428E+03 0.3419E+03 + 7.2150 0.4427E+03 0.3419E+03 + 9.8368 0.4422E+03 0.3421E+03 + 13.1672 0.4417E+03 0.3423E+03 + 17.3308 0.4421E+03 0.3423E+03 + 22.4601 0.4435E+03 0.3420E+03 + 28.6937 0.4456E+03 0.3414E+03 + 36.1735 0.4489E+03 0.3405E+03 + 45.0430 0.4531E+03 0.3393E+03 + 55.4433 0.4498E+03 0.3410E+03 + 67.5109 0.4520E+03 0.3411E+03 + 81.3744 0.4543E+03 0.3410E+03 + 97.1505 0.4557E+03 0.3415E+03 + 114.9415 0.4568E+03 0.3421E+03 + 134.8318 0.4562E+03 0.3437E+03 + 156.8846 0.4576E+03 0.3433E+03 + 181.1394 0.4584E+03 0.3433E+03 + 207.6092 0.4580E+03 0.3440E+03 + 236.2784 0.4564E+03 0.3455E+03 + 267.1012 0.4564E+03 0.3459E+03 + 300.0000 0.4571E+03 0.3457E+03 + 334.8648 0.4578E+03 0.3454E+03 + 371.5529 0.4584E+03 0.3451E+03 + 409.8893 0.4588E+03 0.3449E+03 + 449.6677 0.4592E+03 0.3447E+03 + 490.6516 0.4599E+03 0.3443E+03 + 532.5769 0.4607E+03 0.3439E+03 + 575.1538 0.4613E+03 0.3436E+03 + 618.0706 0.4616E+03 0.3434E+03 + 660.9965 0.4616E+03 0.3434E+03 + 703.5863 0.4633E+03 0.3428E+03 + 745.4841 0.4646E+03 0.3424E+03 + 786.3278 0.4669E+03 0.3417E+03 + 825.7546 0.4697E+03 0.3408E+03 + 863.4047 0.4727E+03 0.3398E+03 + 898.9275 0.4755E+03 0.3389E+03 + 931.9853 0.4792E+03 0.3377E+03 + 962.2587 0.4822E+03 0.3367E+03 + 989.4510 0.4842E+03 0.3361E+03 + 1013.2923 0.4856E+03 0.3356E+03 + 1033.5436 0.4863E+03 0.3354E+03 + 1050.0000 0.4866E+03 0.3353E+03 + ! ------------------------------------------------------ +FAST_COEFFICIENTS + ! + ! Transmission coefficients + ! Order of the gases: + ! Mixed_gases + ! Water_vapour + ! Ozone + ! WV_Continuum + ! CO2 +Mixed_gases + 0.67498722E-07 -0.68745396E-07 -0.27689103E-07 -0.15026367E-08 -0.72829189E-06 + 0.40660685E-06 0.34820909E-06 -0.19460049E-05 -0.16977210E-05 -0.25170792E-05 + -0.10660595E-04 -0.10615900E-04 -0.34171883E-04 -0.70738082E-04 -0.12713785E-03 + -0.21565202E-03 -0.35271879E-03 -0.56362602E-03 -0.79579323E-03 -0.11612911E-02 + -0.14979052E-02 -0.20864893E-02 -0.24506129E-02 -0.35356976E-02 -0.10538982E-01 + -0.55238949E-02 -0.41483606E-02 -0.11049774E-01 -0.15580429E-01 -0.21116531E-01 + -0.20379173E-02 -0.41601209E-02 -0.15706902E-02 -0.10326731E-01 -0.21320158E-01 + -0.23705109E-01 -0.18133590E-01 -0.71369060E-02 -0.11553587E-01 0.25032266E+00 + -0.10832921E-01 -0.80051993E-03 0.24943605E-02 -0.23750019E-01 -0.67169440E-01 + -0.23176621E-01 -0.39746225E-01 -0.53150516E-01 -0.40372422E-01 -0.14696009E-01 + -0.12327824E-01 0.23998066E-01 0.23659080E-01 -0.88765225E-07 0.49523220E-07 + 0.19625053E-07 -0.13215597E-06 -0.27310180E-06 -0.15868770E-06 -0.12407315E-05 + -0.26316756E-05 -0.49924449E-05 -0.10691145E-04 -0.30805742E-04 -0.21163245E-04 + -0.45583954E-04 -0.12238651E-03 -0.24920927E-03 -0.42138883E-03 -0.68242279E-03 + -0.80496915E-03 -0.89853211E-03 -0.10713120E-02 -0.15396601E-02 -0.22869771E-02 + -0.33091988E-02 -0.37575411E-02 -0.43562615E-02 -0.72276368E-02 -0.10075997E-01 + -0.11478593E-01 -0.13716113E-01 -0.18321336E-01 -0.18881968E-01 -0.21530673E-01 + -0.22236645E-01 -0.25519992E-01 -0.28169821E-01 -0.32019194E-01 -0.32857277E-01 + -0.34196029E-01 -0.33205006E-01 -0.73806989E-02 -0.32324578E-01 -0.29107353E-01 + -0.26552420E-01 -0.26888786E-01 -0.27904869E-01 -0.22035014E-01 -0.23120220E-01 + -0.21220588E-01 -0.19579875E-01 -0.13243552E-01 -0.10017706E-01 -0.23911715E-02 + -0.14008248E-03 -0.10963923E-05 -0.27547538E-05 -0.54822191E-05 -0.79581562E-05 + -0.11932139E-04 -0.28783374E-04 -0.48031697E-04 -0.14698805E-04 -0.33569539E-05 + 0.36571435E-04 0.33675796E-03 -0.42634761E-04 -0.24774476E-03 -0.64843991E-03 + -0.68947472E-03 -0.36718386E-03 0.32238276E-03 -0.18253092E-04 -0.59500161E-03 + -0.16981986E-02 -0.16191885E-02 -0.87321707E-03 0.23632101E-02 0.89106493E-03 + -0.14482120E-01 0.23182477E-02 0.60491893E-02 -0.35633263E-02 -0.54939951E-02 + -0.49157185E-02 0.16853326E-01 0.16017879E-01 0.17024217E-01 0.82825284E-02 + -0.26366948E-02 -0.45195150E-02 -0.17142846E-02 0.56168515E-02 -0.53191500E-03 + 0.96463566E-01 -0.57588220E-02 -0.29989951E-02 -0.40626248E-02 -0.13362213E-01 + -0.28847690E-01 -0.16338191E-01 -0.19683316E-01 -0.25565682E-01 -0.19056842E-01 + -0.12064800E-01 -0.96277223E-02 -0.82432280E-03 -0.13272840E-03 0.10883424E-06 + -0.17897719E-06 0.32735941E-07 0.55439594E-07 -0.17103265E-07 -0.23515837E-06 + -0.23483582E-06 -0.86143833E-06 -0.19224935E-05 -0.28216503E-05 -0.19994706E-05 + -0.24322053E-05 -0.84285415E-05 -0.90930874E-05 -0.15028198E-05 0.72883183E-05 + 0.25362439E-04 -0.10243952E-03 -0.42217024E-03 -0.31572895E-03 -0.51606829E-03 + -0.80843568E-03 -0.82479151E-03 -0.97614364E-03 -0.11902829E-02 -0.18991413E-02 + -0.22793511E-02 -0.23379928E-02 -0.20726297E-02 -0.83864338E-03 -0.13921586E-03 + 0.43648920E-03 -0.67775628E-03 -0.22725562E-02 -0.29423892E-02 -0.27836797E-02 + -0.33621629E-02 -0.42389041E-02 -0.54293025E-02 -0.90838003E-02 -0.10186535E-01 + -0.92467290E-02 -0.91690648E-02 -0.85358397E-02 -0.74852802E-02 -0.60171797E-02 + -0.46625147E-02 -0.34611471E-02 -0.25059663E-02 -0.16788925E-02 -0.11600177E-02 + -0.88778072E-03 -0.71811342E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.76426064E-11 -0.10828706E-09 -0.13096174E-09 -0.10100333E-06 + 0.77911841E-07 -0.12316202E-06 -0.89684386E-07 0.11759552E-06 0.29300411E-07 + -0.27403327E-06 -0.23282252E-06 -0.64951050E-07 0.66054220E-07 -0.38085829E-06 + -0.75811650E-06 -0.86389303E-06 -0.14737189E-05 -0.18683201E-05 -0.23019891E-05 + -0.29817020E-05 -0.30492549E-05 -0.43595378E-05 -0.45723534E-05 -0.55508798E-05 + -0.62970005E-05 -0.66864641E-05 -0.81974069E-05 -0.10588874E-04 -0.13879567E-04 + -0.18227485E-04 -0.22370684E-04 -0.26892793E-04 -0.32116368E-04 -0.38227456E-04 + -0.45068005E-04 -0.54477413E-04 -0.62219670E-04 -0.67670015E-04 -0.73896804E-04 + -0.76638479E-04 -0.75018764E-04 -0.75270590E-04 -0.72770705E-04 -0.66280269E-04 + -0.62211866E-04 -0.54607143E-04 -0.47469991E-04 -0.40817910E-04 -0.32777062E-04 + 0.29806155E-08 -0.77330661E-08 0.91760746E-08 0.16005828E-06 -0.49126124E-06 + 0.15932326E-08 0.47766723E-07 0.28514120E-06 -0.55110141E-06 -0.87888931E-06 + -0.21598586E-05 -0.57600201E-05 -0.13097127E-04 -0.24455020E-04 -0.38878112E-04 + -0.63057390E-04 -0.84496082E-04 -0.13006145E-03 -0.19322076E-03 -0.21075980E-03 + -0.24073363E-03 -0.26206941E-03 -0.23817631E-03 -0.22361851E-03 -0.24691165E-03 + -0.34404132E-03 -0.42730123E-03 -0.41861577E-03 -0.32182643E-03 -0.20139542E-03 + -0.25224200E-03 -0.84515584E-04 -0.78031262E-04 -0.17600324E-03 -0.27177325E-03 + -0.32352332E-03 -0.43391423E-03 -0.61037305E-03 -0.79745181E-03 -0.12357208E-02 + -0.13462593E-02 -0.13304807E-02 -0.13923353E-02 -0.13605301E-02 -0.12517545E-02 + -0.11039699E-02 -0.93149566E-03 -0.75945622E-03 -0.62591597E-03 -0.48560907E-03 + -0.38674622E-03 -0.32457442E-03 -0.26443249E-03 0.15073696E-08 0.19025432E-08 + -0.15016970E-06 0.22081315E-06 0.33272037E-08 -0.21921359E-07 -0.45722322E-07 + 0.17165208E-06 -0.41007282E-06 -0.44349462E-07 -0.17628292E-06 -0.11051685E-05 + -0.18309393E-05 -0.34127347E-05 -0.73380762E-05 -0.11449472E-04 -0.18425773E-04 + -0.24201500E-04 -0.32564234E-04 -0.37465590E-04 -0.44315504E-04 -0.43132449E-04 + -0.45547055E-04 -0.56413173E-04 -0.54485401E-04 -0.61095154E-04 -0.59328063E-04 + -0.73641699E-04 -0.12222453E-03 -0.14769422E-03 -0.13909937E-03 -0.17770158E-03 + -0.19967861E-03 -0.20950259E-03 -0.21299184E-03 -0.21669053E-03 -0.19740122E-03 + -0.16607708E-03 -0.12023505E-03 -0.94919147E-04 -0.89554196E-04 -0.81216077E-04 + -0.69061548E-04 -0.69422203E-04 -0.74369489E-04 -0.89032231E-04 -0.96105387E-04 + -0.10479479E-03 -0.11226626E-03 -0.11057583E-03 -0.10363801E-03 -0.91204652E-04 + -0.73059609E-04 -0.83300511E-08 0.13954030E-07 0.87418601E-07 -0.21278498E-06 + -0.47893598E-07 -0.11175433E-06 0.66740575E-07 -0.72044158E-07 -0.23344252E-06 + -0.30602621E-06 -0.10307338E-05 -0.23247159E-05 -0.35476447E-05 -0.55659489E-05 + -0.75811329E-05 -0.10763411E-04 -0.13401443E-04 -0.17181910E-04 -0.19044625E-04 + -0.22011237E-04 -0.22107643E-04 -0.19846041E-04 -0.16356158E-04 -0.13642061E-04 + -0.12296479E-04 -0.13690617E-04 -0.15081706E-04 -0.16258984E-04 -0.18681593E-04 + -0.20977249E-04 -0.23579875E-04 -0.25165507E-04 -0.27333959E-04 -0.29010457E-04 + -0.31202407E-04 -0.33345734E-04 -0.36448168E-04 -0.39322454E-04 -0.43241123E-04 + -0.45059394E-04 -0.50473116E-04 -0.53931500E-04 -0.56503799E-04 -0.58265334E-04 + -0.60884880E-04 -0.66385907E-04 -0.68935676E-04 -0.70965232E-04 -0.74503132E-04 + -0.72304875E-04 -0.67249338E-04 -0.61501494E-04 -0.51327462E-04 -0.54987683E-08 + 0.45921018E-08 0.21205710E-08 -0.38248126E-08 0.13453750E-07 0.37477470E-08 + -0.33738104E-07 0.14497967E-07 0.12315840E-08 0.10559248E-07 0.15515812E-07 + 0.43930113E-07 0.37117435E-07 0.10499096E-06 0.44905372E-06 0.11205922E-05 + 0.23585426E-05 0.41455484E-05 0.65096056E-05 0.87513266E-05 0.10824579E-04 + 0.12965788E-04 0.15801633E-04 0.16617255E-04 0.19936774E-04 0.24775698E-04 + 0.31931398E-04 0.36474796E-04 0.39133824E-04 0.51805384E-04 0.85810551E-04 + 0.11369350E-03 0.11890407E-03 0.13048653E-03 0.15465734E-03 0.19138209E-03 + 0.23431708E-03 0.27374069E-03 0.29922675E-03 0.54072031E-04 0.18669809E-03 + -0.37912374E-04 -0.16922037E-03 -0.27460580E-03 -0.31906831E-03 -0.50735666E-03 + -0.58806113E-03 -0.62226239E-03 -0.69725502E-03 -0.69706523E-03 -0.60104969E-03 + -0.48044040E-03 -0.38493977E-03 0.53303066E-08 -0.34594910E-08 -0.38663134E-08 + 0.26433066E-08 0.15150681E-08 -0.23482021E-07 0.16342020E-07 -0.68406586E-09 + 0.85393714E-08 0.66779951E-08 0.66292232E-07 0.30263221E-06 0.53939140E-06 + 0.98283374E-06 0.18310831E-05 0.25231274E-05 0.32200399E-05 0.32409315E-05 + 0.29500311E-05 0.34637457E-05 0.34629937E-05 0.29964161E-05 0.36148312E-05 + 0.20103061E-05 0.27622574E-05 0.35871615E-05 0.49469422E-05 0.66980488E-05 + 0.98149645E-05 0.14772049E-04 0.20565285E-04 0.26721361E-04 0.31627936E-04 + 0.37575026E-04 0.46631672E-04 0.60994737E-04 0.78308486E-04 0.95080630E-04 + 0.10858716E-03 0.66179275E-04 0.25609627E-04 -0.52320970E-04 -0.11216241E-03 + -0.16714831E-03 -0.21218857E-03 -0.27150812E-03 -0.30399641E-03 -0.30240657E-03 + -0.29305967E-03 -0.28327007E-03 -0.26593914E-03 -0.23833135E-03 -0.19193184E-03 + -0.54572016E-09 -0.22480876E-07 0.17688435E-08 0.17136311E-07 0.76059852E-07 + 0.26557875E-06 0.70077217E-06 0.18454576E-05 0.46808977E-05 0.12594005E-04 + 0.21597914E-04 0.16697641E-04 -0.51024491E-05 -0.25740834E-04 -0.35141081E-04 + -0.29244836E-04 -0.23469608E-04 -0.88430266E-05 -0.44640969E-06 0.33448743E-05 + 0.42849746E-05 0.11991276E-04 -0.38932099E-04 0.17834305E-04 0.32268813E-04 + -0.13903296E-04 -0.75913586E-04 -0.85152987E-04 -0.92047132E-04 -0.11568920E-03 + -0.14274094E-03 -0.20986391E-03 -0.22697392E-03 -0.22084213E-03 -0.18425848E-03 + -0.13797422E-03 -0.10256257E-03 -0.96427362E-04 -0.15321499E-03 -0.77185232E-03 + -0.21564954E-03 -0.87788080E-04 -0.10109173E-03 -0.11995163E-03 -0.91359160E-04 + -0.59153820E-04 -0.72638747E-05 -0.19192387E-05 -0.10177437E-03 -0.12150207E-03 + -0.71672449E-04 -0.14132571E-04 -0.79687988E-05 -0.83753119E-08 0.11078465E-07 + -0.29020121E-08 -0.63303489E-08 -0.14266943E-07 0.16100158E-07 -0.60744791E-08 + 0.53610562E-09 0.43187064E-08 0.59744292E-08 0.92956918E-08 0.51060116E-08 + 0.49390218E-07 0.24493764E-06 0.42552064E-06 0.60105345E-06 0.94931923E-06 + 0.14459638E-05 0.25097768E-05 0.30181283E-05 0.42532359E-05 0.58777572E-05 + 0.74497110E-05 0.95976973E-05 0.11828488E-04 0.14054410E-04 0.16316068E-04 + 0.18673588E-04 0.21386473E-04 0.21924166E-04 0.24597617E-04 0.28444792E-04 + 0.28774999E-04 0.30217206E-04 0.31687855E-04 0.32875828E-04 0.33845277E-04 + 0.34629319E-04 0.35182546E-04 0.37418931E-04 0.43095492E-04 0.43459725E-04 + 0.44247372E-04 0.43529553E-04 0.41700795E-04 0.38547662E-04 0.32460294E-04 + 0.23673161E-04 0.16794550E-04 0.13209948E-04 0.10595307E-04 0.78715591E-05 + 0.53630122E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.12862119E-11 0.15201032E-11 -0.11771789E-11 0.34575661E-08 -0.67050041E-08 + 0.24033123E-08 0.37881413E-08 -0.74163927E-08 -0.51127738E-09 0.87654774E-08 + 0.95565803E-08 -0.11964508E-07 0.19664099E-09 0.56839785E-08 -0.42529157E-08 + -0.15056471E-07 0.83004262E-08 0.46771381E-08 0.50822297E-09 -0.24697925E-08 + 0.12779539E-08 -0.18666301E-08 0.10626113E-09 0.40807084E-09 -0.17296538E-08 + 0.57949414E-08 -0.39602737E-08 -0.18096911E-08 0.44730877E-08 -0.26578234E-08 + 0.58646300E-08 0.13365778E-08 0.83172442E-08 0.12861305E-07 0.16756350E-07 + 0.31710296E-07 0.39540099E-07 0.55269455E-07 0.75411232E-07 0.71211834E-07 + 0.86299599E-07 0.88516721E-07 0.95868218E-07 0.81236954E-07 0.84584706E-07 + 0.63663427E-07 0.64975323E-07 0.54365010E-07 0.42857449E-07 -0.26714409E-09 + 0.18387404E-09 -0.36003286E-09 -0.63636202E-08 0.27134048E-07 0.57350276E-09 + -0.69597075E-08 -0.29776390E-07 0.14704886E-07 0.16094376E-08 0.27012293E-08 + -0.61040829E-08 0.34791578E-08 0.19578816E-07 0.22243834E-07 0.37821305E-07 + 0.63327208E-07 0.11044233E-06 0.20494352E-06 0.25221769E-06 0.33569857E-06 + 0.36720730E-06 0.30264185E-06 0.23720556E-06 0.22537932E-06 0.21740323E-06 + 0.26076221E-06 0.31779988E-06 0.41190383E-06 0.27698625E-06 0.60252326E-06 + 0.89017303E-06 0.85830369E-06 0.97874058E-06 0.11233803E-05 0.12826497E-05 + 0.14371042E-05 0.15789044E-05 0.17149800E-05 0.20644912E-05 0.27466258E-05 + 0.29070548E-05 0.31558432E-05 0.32094903E-05 0.31346970E-05 0.29426490E-05 + 0.23000298E-05 0.12675214E-05 0.47846062E-06 0.18082979E-06 0.40143982E-07 + -0.10445074E-06 -0.21377047E-06 -0.13510538E-09 -0.12927571E-09 0.98215260E-08 + -0.16345608E-07 -0.12060485E-09 -0.61913052E-09 0.35758972E-08 -0.59186825E-08 + 0.24262618E-07 -0.10867302E-07 -0.23445660E-07 0.12925039E-07 0.44340570E-09 + -0.16358863E-08 -0.48803300E-08 0.55690907E-08 0.16370396E-07 0.56195163E-07 + 0.79261017E-07 0.12058107E-06 0.16213812E-06 0.15587673E-06 0.14929578E-06 + 0.12002449E-06 0.94251862E-07 0.10879616E-06 0.13854665E-06 0.18344833E-06 + 0.24968191E-06 0.35554005E-06 0.35207797E-06 0.38641759E-06 0.51962099E-06 + 0.62955172E-06 0.73316962E-06 0.84822983E-06 0.96091261E-06 0.10702476E-05 + 0.11943666E-05 0.12595825E-05 0.12960282E-05 0.13354150E-05 0.13880351E-05 + 0.14331197E-05 0.14683430E-05 0.14961539E-05 0.15478771E-05 0.16052416E-05 + 0.16044627E-05 0.15025089E-05 0.13617978E-05 0.12005421E-05 0.10101222E-05 + 0.40870789E-09 -0.69557463E-09 -0.66072817E-08 0.14216159E-07 0.14092277E-08 + 0.93265619E-08 -0.93897323E-08 -0.27882898E-08 0.42847693E-08 -0.11748043E-07 + -0.21683935E-08 0.15762456E-07 -0.10238567E-07 0.25019103E-08 -0.39593850E-08 + -0.48327692E-09 -0.20994589E-08 0.98504488E-08 0.32509209E-08 0.14197794E-07 + 0.16727534E-07 0.23686136E-07 0.11284741E-07 0.19174079E-07 0.68284583E-08 + 0.13403699E-07 0.14691313E-07 0.14584917E-07 0.13144160E-07 0.22281324E-07 + 0.29893507E-07 0.20252908E-07 0.32602901E-07 0.35293865E-07 0.44917921E-07 + 0.42077403E-07 0.54103768E-07 0.61551142E-07 0.71619374E-07 0.77335361E-07 + 0.83874811E-07 0.98240991E-07 0.10746893E-06 0.11630375E-06 0.13190795E-06 + 0.15549940E-06 0.17449346E-06 0.21726491E-06 0.23798491E-06 0.26574302E-06 + 0.27522218E-06 0.27397049E-06 0.24621390E-06 -0.45493739E-07 0.10775112E-07 + -0.39909971E-07 -0.77785031E-07 0.76894397E-06 -0.10166541E-05 -0.10382213E-05 + 0.77277499E-06 -0.61894862E-06 -0.13773296E-05 0.49698708E-05 0.22348203E-05 + 0.22990300E-04 0.59466483E-04 0.11419738E-03 0.21100894E-03 0.36177101E-03 + 0.59739456E-03 0.87307772E-03 0.13186070E-02 0.18161761E-02 0.25802043E-02 + 0.39182929E-02 0.45906780E-02 0.10974976E-01 0.87692719E-02 0.11677074E-01 + 0.17520252E-01 0.20718371E-01 0.28153115E-01 0.81538149E-02 0.14283035E-01 + 0.11671237E-01 0.23836507E-01 0.37819503E-01 0.41052728E-01 0.35431353E-01 + 0.26919612E-01 0.42387544E-01 -0.20861984E+00 0.40236523E-01 0.22658159E-01 + 0.22351997E-01 0.58443596E-01 0.11116319E+00 0.58427344E-01 0.77888173E-01 + 0.95494538E-01 0.81059408E-01 0.48801117E-01 0.40876672E-01 -0.80177697E-02 + -0.11312410E-01 0.33422284E-07 -0.54726598E-07 -0.75065701E-07 -0.44063583E-07 + 0.35172546E-07 -0.27843495E-06 0.13250942E-06 0.85793435E-06 0.25900465E-06 + -0.39149761E-05 -0.58236957E-05 -0.51917145E-04 -0.73880300E-04 -0.31606404E-04 + 0.51506974E-04 0.21302007E-03 0.46053123E-03 0.61585198E-03 0.72025889E-03 + 0.96836716E-03 0.15709713E-02 0.25952605E-02 0.32268085E-02 0.51170568E-02 + 0.61938785E-02 0.88076472E-02 0.12090970E-01 0.14799204E-01 0.17296415E-01 + 0.23070294E-01 0.23308038E-01 0.26775150E-01 0.27931146E-01 0.32295001E-01 + 0.35808403E-01 0.40952440E-01 0.42228508E-01 0.44638469E-01 0.44899919E-01 + 0.24694390E-01 0.45905004E-01 0.42424532E-01 0.40838704E-01 0.42860819E-01 + 0.45126339E-01 0.39074650E-01 0.40913096E-01 0.39050705E-01 0.37154660E-01 + 0.28985573E-01 0.23817866E-01 0.13277489E-01 0.89202128E-02 0.26310272E-06 + 0.18721061E-05 0.34847419E-05 0.30547175E-05 0.14298749E-05 0.12102600E-04 + 0.22386467E-04 -0.45868244E-04 -0.80264422E-04 -0.16980326E-03 -0.46863119E-03 + 0.54568807E-04 0.48398656E-03 0.94194687E-03 0.10357984E-02 0.57568193E-03 + -0.17999565E-03 -0.54757926E-04 0.57607282E-03 0.16297028E-02 0.16020734E-02 + 0.56705211E-03 0.15528858E-02 -0.19433724E-02 0.10825730E-01 0.41795105E-03 + 0.34171527E-02 0.78069735E-02 0.68657655E-02 0.70656719E-02 -0.15609400E-01 + -0.11697957E-01 -0.13787768E-01 -0.33481063E-02 0.90594778E-02 0.10250483E-01 + 0.66092800E-02 -0.83965663E-03 0.98233808E-02 -0.84571654E-01 0.11454462E-01 + 0.44331823E-02 0.57593964E-02 0.17886280E-01 0.35595019E-01 0.19505572E-01 + 0.23027204E-01 0.30031435E-01 0.23473253E-01 0.15409670E-01 0.12025239E-01 + 0.67215773E-03 -0.15930248E-03 -0.65315837E-07 0.11140943E-06 -0.20215389E-07 + -0.17522669E-08 0.14577389E-06 0.31954982E-06 0.56130225E-06 0.13596232E-05 + 0.24365571E-05 0.30836297E-05 0.16069268E-06 -0.30025597E-05 -0.90401025E-06 + 0.10574492E-05 -0.56174873E-05 -0.17956624E-04 -0.44198636E-04 0.79986855E-04 + 0.39299074E-03 0.34252374E-03 0.63583055E-03 0.98471178E-03 0.94476928E-03 + 0.11159527E-02 0.14750326E-02 0.22484439E-02 0.26750408E-02 0.28214992E-02 + 0.28240951E-02 0.24210196E-02 -0.25404902E-03 -0.39109550E-02 -0.31672544E-02 + -0.11728173E-02 -0.20649116E-03 0.83639884E-04 0.16794975E-02 0.37731730E-02 + 0.58324664E-02 0.96280814E-02 0.11092419E-01 0.10070256E-01 0.10061930E-01 + 0.93201899E-02 0.80502020E-02 0.62965738E-02 0.47198149E-02 0.33771206E-02 + 0.23375184E-02 0.14366500E-02 0.89710918E-03 0.65094205E-03 0.53429301E-03 + 0.19998109E-15 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.81654998E-11 + 0.15103360E-09 0.31077514E-09 0.12438606E-06 -0.15918125E-07 0.12193337E-06 + 0.12382383E-06 -0.26320497E-07 0.17289441E-07 0.35608600E-06 0.37827153E-06 + 0.33302635E-06 0.25258439E-06 0.68223375E-06 0.11352859E-05 0.12785729E-05 + 0.16840312E-05 0.20168337E-05 0.23568706E-05 0.29758805E-05 0.30802954E-05 + 0.44936972E-05 0.46466398E-05 0.56593518E-05 0.66315266E-05 0.72538520E-05 + 0.85747135E-05 0.10506811E-04 0.13572769E-04 0.17875252E-04 0.21316906E-04 + 0.25079389E-04 0.29321816E-04 0.34524948E-04 0.40009307E-04 0.49370141E-04 + 0.53860843E-04 0.57467409E-04 0.62719152E-04 0.64667451E-04 0.62108653E-04 + 0.62788749E-04 0.60953602E-04 0.54867851E-04 0.52227116E-04 0.45698571E-04 + 0.39643358E-04 0.34216175E-04 0.27419714E-04 -0.17701222E-08 0.81464397E-08 + -0.17694362E-07 -0.12043581E-06 0.32553246E-06 -0.40553496E-07 -0.49837153E-07 + -0.21581545E-06 0.26004810E-06 -0.13644308E-06 -0.76015909E-06 -0.12759784E-05 + -0.19174524E-05 -0.30225066E-05 -0.65715246E-05 -0.63222183E-05 -0.16006038E-04 + -0.53870002E-05 0.23254159E-04 0.21667342E-04 0.53674338E-04 0.97425720E-04 + 0.95772186E-04 0.12037027E-03 0.18387360E-03 0.29146929E-03 0.37840002E-03 + 0.39161659E-03 0.35633042E-03 0.36878740E-03 0.16660608E-03 -0.44242169E-03 + -0.58395258E-03 -0.50661692E-03 -0.40977383E-03 -0.33248366E-03 -0.14114911E-03 + 0.15711753E-03 0.42792537E-03 0.89047831E-03 0.10301522E-02 0.10159801E-02 + 0.11067011E-02 0.10860229E-02 0.97122191E-03 0.81367615E-03 0.63636977E-03 + 0.46872439E-03 0.35183073E-03 0.22805483E-03 0.15499208E-03 0.12652677E-03 + 0.10496664E-03 -0.89515131E-09 -0.10277698E-08 0.88935537E-07 -0.14183616E-06 + 0.33093927E-08 0.10501845E-08 -0.42457581E-07 -0.23590299E-06 0.80890510E-07 + -0.68546295E-06 -0.18584353E-05 -0.38372327E-05 -0.81675178E-05 -0.14909464E-04 + -0.22469602E-04 -0.33622774E-04 -0.45539192E-04 -0.63357544E-04 -0.79578006E-04 + -0.93823156E-04 -0.98144896E-04 -0.98438212E-04 -0.79273612E-04 -0.64364201E-04 + -0.65017836E-04 -0.67317264E-04 -0.85007924E-04 -0.91199150E-04 -0.76774012E-04 + -0.92826721E-04 -0.80922696E-04 -0.17960872E-04 -0.49568846E-05 -0.66789879E-05 + -0.19107436E-04 -0.37870705E-04 -0.88993412E-04 -0.15622165E-03 -0.23999259E-03 + -0.29224836E-03 -0.32363240E-03 -0.34928535E-03 -0.36621677E-03 -0.35621239E-03 + -0.33487779E-03 -0.29944601E-03 -0.26715093E-03 -0.22986994E-03 -0.19192137E-03 + -0.16003993E-03 -0.13158512E-03 -0.10870938E-03 -0.88747708E-04 0.73902489E-08 + -0.10038202E-07 -0.61356389E-07 0.14007550E-06 0.60139734E-08 0.57327094E-07 + -0.53726469E-07 0.14191008E-07 0.10244063E-06 0.57920103E-07 0.34944113E-06 + 0.81069921E-06 0.10717802E-05 0.14706317E-05 0.14674505E-05 0.22201463E-05 + 0.17309154E-05 0.19537351E-05 0.43302023E-06 0.70077202E-06 0.64270461E-07 + -0.74005682E-06 -0.13153761E-05 -0.67320753E-06 -0.59191231E-07 0.93230570E-06 + 0.91646247E-06 0.20439508E-06 0.41865902E-06 0.45668784E-06 0.94521423E-06 + 0.73000243E-06 0.74104289E-06 0.38584677E-06 0.33128560E-06 -0.14241462E-06 + 0.13801746E-07 -0.41951056E-06 0.61017104E-07 -0.18132510E-05 -0.17925311E-06 + -0.58125508E-06 -0.12798895E-05 -0.21363653E-05 -0.26500925E-05 -0.32504271E-05 + -0.36941789E-05 -0.45804967E-05 -0.39274281E-05 -0.46928749E-05 -0.51609984E-05 + -0.48662891E-05 -0.43166436E-05 0.19387101E-07 -0.97399480E-08 0.73072710E-08 + 0.12913488E-07 -0.37051382E-06 0.25893019E-06 0.22190092E-06 -0.50567346E-06 + -0.51717235E-06 -0.11260979E-05 -0.30842908E-05 -0.67892515E-05 -0.13437591E-04 + -0.29434465E-04 -0.50399897E-04 -0.92033170E-04 -0.15086857E-03 -0.23320407E-03 + -0.34844054E-03 -0.50959778E-03 -0.75260868E-03 -0.10081435E-02 -0.20639283E-02 + -0.18969124E-02 -0.19694105E-02 -0.43346960E-02 -0.85942652E-02 -0.73321835E-02 + -0.61407395E-02 -0.87502139E-02 -0.73606834E-02 -0.11295222E-01 -0.11907060E-01 + -0.15363907E-01 -0.17791878E-01 -0.18330692E-01 -0.18784362E-01 -0.22111428E-01 + -0.31111234E-01 -0.30831104E-01 -0.23908825E-01 -0.11759105E-01 -0.11134069E-01 + -0.20131417E-01 -0.29040463E-01 -0.12056314E-01 -0.12902393E-01 -0.12918889E-01 + -0.16558913E-01 -0.11442806E-01 -0.99960776E-02 0.16942529E-02 0.26900252E-02 + -0.15331187E-07 0.20439191E-07 0.28485887E-07 0.17181730E-08 -0.42429094E-07 + 0.95818952E-07 -0.61996629E-07 -0.31193777E-06 -0.16522686E-06 0.93641419E-06 + 0.40081368E-05 0.97231728E-05 0.19973482E-04 0.70906088E-05 0.69050693E-05 + -0.30480472E-04 -0.80085039E-04 -0.18875480E-03 -0.28159586E-03 -0.48559374E-03 + -0.76350544E-03 -0.12127922E-02 -0.10156490E-02 -0.25212376E-02 -0.32131440E-02 + -0.34456967E-02 -0.42983743E-02 -0.60791010E-02 -0.67955432E-02 -0.85794984E-02 + -0.88770638E-02 -0.10302340E-01 -0.11401965E-01 -0.13142718E-01 -0.14524267E-01 + -0.16277307E-01 -0.17250506E-01 -0.18728638E-01 -0.20113925E-01 -0.24753606E-01 + -0.21196269E-01 -0.19592449E-01 -0.18918025E-01 -0.19348680E-01 -0.19133656E-01 + -0.16464284E-01 -0.15536101E-01 -0.13760329E-01 -0.13589288E-01 -0.11441147E-01 + -0.96695731E-02 -0.64899256E-02 -0.46932234E-02 -0.38068202E-07 -0.62043987E-06 + -0.12703337E-05 -0.69507420E-06 -0.22186306E-06 -0.50937954E-05 -0.78971988E-05 + 0.93339700E-05 0.24894939E-04 0.58461052E-04 0.83715480E-04 0.70991841E-05 + -0.17818354E-03 -0.31293094E-03 -0.47252695E-03 -0.45163966E-03 -0.40033927E-03 + -0.19776079E-03 -0.17160065E-03 -0.34392893E-04 0.35824034E-04 0.46641214E-03 + -0.30727699E-02 0.13269063E-02 0.35687056E-02 -0.12037708E-02 -0.89685076E-02 + -0.34520250E-02 -0.59343931E-03 -0.14893087E-02 -0.99200183E-04 -0.29208032E-02 + -0.27403787E-02 -0.50602779E-02 -0.70736796E-02 -0.70008583E-02 -0.67140722E-02 + -0.71840745E-02 -0.11094314E-01 -0.93694315E-02 -0.91257954E-02 -0.44232117E-02 + -0.45347763E-02 -0.73301571E-02 -0.10730228E-01 -0.59751180E-02 -0.58413873E-02 + -0.66979601E-02 -0.65846487E-02 -0.50535652E-02 -0.41179766E-02 -0.13534526E-02 + -0.93275202E-03 0.34396160E-07 -0.57511966E-07 0.33081057E-08 -0.86115588E-08 + -0.73700696E-07 -0.30792448E-06 -0.43142566E-06 -0.89767821E-06 -0.13756241E-05 + -0.18850424E-05 -0.14304044E-05 -0.69510978E-06 -0.14483410E-05 -0.10591313E-04 + -0.24165252E-04 -0.40547877E-04 -0.60098592E-04 -0.84162979E-04 -0.10431279E-03 + -0.21449918E-03 -0.35101507E-03 -0.45279090E-03 -0.45885850E-03 -0.55285818E-03 + -0.76684201E-03 -0.89921052E-03 -0.10122284E-02 -0.11748893E-02 -0.15145943E-02 + -0.23488800E-02 -0.55340369E-03 0.24474120E-02 0.28735392E-02 0.25684787E-02 + 0.22875983E-02 0.17944316E-02 0.72410816E-03 -0.53608142E-03 -0.14573751E-02 + -0.17201601E-02 -0.22084769E-02 -0.21233847E-02 -0.22594958E-02 -0.21870482E-02 + -0.19702754E-02 -0.16588440E-02 -0.14055239E-02 -0.12106290E-02 -0.10167778E-02 + -0.78936306E-03 -0.62390061E-03 -0.51594872E-03 -0.42528967E-03 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.38231667E-11 -0.58303143E-10 + -0.19597030E-09 -0.50381535E-07 0.51342470E-09 -0.54620866E-07 -0.75357598E-07 + -0.18685827E-07 -0.55845349E-07 -0.19848881E-06 -0.23641410E-06 -0.23765651E-06 + -0.29721240E-06 -0.52206947E-06 -0.70234178E-06 -0.76417040E-06 -0.10457179E-05 + -0.12394991E-05 -0.14425271E-05 -0.17436402E-05 -0.20619751E-05 -0.25041144E-05 + -0.28353830E-05 -0.32942103E-05 -0.40726072E-05 -0.48430126E-05 -0.53402131E-05 + -0.58848850E-05 -0.70759822E-05 -0.85332430E-05 -0.98208077E-05 -0.11340247E-04 + -0.12936267E-04 -0.14745165E-04 -0.16390401E-04 -0.20024980E-04 -0.19790108E-04 + -0.20821497E-04 -0.22031195E-04 -0.22583379E-04 -0.21911545E-04 -0.21846640E-04 + -0.21290589E-04 -0.19744869E-04 -0.18622917E-04 -0.16524858E-04 -0.14418686E-04 + -0.12457763E-04 -0.99658310E-05 0.95846277E-09 -0.34467000E-08 0.97115715E-08 + 0.56381187E-07 -0.15345214E-06 0.20824967E-07 0.31085506E-07 0.14574449E-06 + -0.60140571E-07 0.28777704E-06 0.72195263E-06 0.17531514E-05 0.30939661E-05 + 0.43037843E-05 0.61922705E-05 0.79298382E-05 0.11911803E-04 0.15053598E-04 + 0.18647149E-04 0.13160722E-04 0.54185392E-06 -0.15168493E-04 -0.18300835E-04 + -0.41418249E-04 -0.73957554E-04 -0.88980513E-04 -0.10243480E-03 -0.13605850E-03 + -0.20875724E-03 -0.34686562E-03 -0.12212827E-03 0.29818639E-03 0.42835902E-03 + 0.44637653E-03 0.43694860E-03 0.39666672E-03 0.29679322E-03 0.15981628E-03 + 0.55974243E-04 0.22727289E-05 -0.56061930E-04 -0.69967285E-04 -0.11197735E-03 + -0.12559384E-03 -0.11343894E-03 -0.93272431E-04 -0.76982794E-04 -0.63417066E-04 + -0.49051164E-04 -0.27949710E-04 -0.15282575E-04 -0.12064815E-04 -0.10621798E-04 + 0.48470263E-09 0.51376692E-09 -0.42978222E-07 0.69621306E-07 0.28775738E-08 + -0.10079336E-07 0.23046416E-07 0.11197456E-06 -0.37869613E-07 0.32079212E-06 + 0.79514078E-06 0.15669158E-05 0.32035811E-05 0.57859455E-05 0.91489473E-05 + 0.13688390E-04 0.18917813E-04 0.25523742E-04 0.31727044E-04 0.36056378E-04 + 0.37762726E-04 0.34850526E-04 0.21560527E-04 0.19810231E-04 0.16137217E-04 + 0.16222229E-04 0.18866059E-04 0.26039871E-04 0.44695544E-04 0.72305179E-04 + 0.39712897E-04 0.36962974E-05 -0.30693899E-05 -0.52472056E-05 -0.23899691E-05 + 0.64557939E-05 0.24650561E-04 0.47763711E-04 0.73297042E-04 0.92824385E-04 + 0.11314306E-03 0.12789569E-03 0.13610790E-03 0.13543348E-03 0.13049681E-03 + 0.12211151E-03 0.11262153E-03 0.10191430E-03 0.90691626E-04 0.78882067E-04 + 0.67548689E-04 0.57044744E-04 0.46326356E-04 -0.30724485E-08 0.38015475E-08 + 0.32598615E-07 -0.70204025E-07 -0.62632003E-08 -0.17581792E-07 0.30070053E-07 + 0.39214223E-08 -0.32702817E-07 0.40966107E-07 -0.45602184E-07 -0.92650944E-07 + 0.51877807E-07 0.16827635E-06 0.54510244E-06 0.87804074E-06 0.16063072E-05 + 0.22060902E-05 0.29219341E-05 0.35273550E-05 0.35126804E-05 0.28319662E-05 + 0.21392834E-05 0.58307721E-06 -0.37539482E-06 -0.53415847E-06 -0.57775214E-06 + -0.81476192E-06 -0.10417226E-05 -0.97125109E-06 -0.11700422E-05 -0.11952639E-05 + -0.13033632E-05 -0.13080657E-05 -0.13731347E-05 -0.12158520E-05 -0.11122237E-05 + -0.79861725E-06 -0.65047051E-06 -0.33473926E-06 0.11253775E-07 0.53397430E-06 + 0.10179651E-05 0.14241069E-05 0.19617695E-05 0.29848728E-05 0.37625873E-05 + 0.46369647E-05 0.52862664E-05 0.56897982E-05 0.57870451E-05 0.55509438E-05 + 0.47876836E-05 0.77413811E-07 -0.59225114E-07 -0.18022485E-07 0.48609374E-07 + -0.17527953E-06 0.11845515E-06 0.30965346E-06 -0.26205683E-06 -0.44253777E-07 + 0.19450240E-07 0.12180237E-06 0.40755885E-06 0.72740998E-06 0.11930375E-05 + 0.80862511E-06 0.17867442E-06 -0.39034461E-06 0.40299888E-06 0.38702600E-05 + 0.15469746E-04 0.36965404E-04 0.73156300E-04 0.12355126E-03 0.16634940E-03 + 0.11651949E-03 0.48860687E-03 -0.11575038E-03 0.11718845E-03 0.38987347E-03 + 0.40686801E-03 0.26802454E-03 0.26867286E-03 0.53958406E-03 0.80973712E-03 + 0.99683066E-03 0.12465533E-02 0.15711519E-02 0.19943200E-02 0.29830697E-02 + 0.13408222E-01 0.22487759E-02 0.85686797E-02 0.11420365E-01 0.13148480E-01 + 0.11567814E-01 0.18498415E-01 0.21979189E-01 0.22952583E-01 0.21383410E-01 + 0.20749137E-01 0.19655903E-01 0.18261564E-01 0.15266380E-01 -0.82736401E-07 + 0.84897830E-07 0.57537353E-07 -0.65229749E-07 -0.28459494E-07 0.43658297E-06 + -0.30619484E-06 0.93518766E-08 -0.14759559E-06 0.62284180E-07 0.13216272E-07 + 0.28317753E-06 -0.37205655E-06 0.46296146E-07 -0.21252469E-06 -0.40624556E-06 + -0.10573185E-05 0.13967177E-05 0.31001993E-05 0.36939521E-05 0.60815588E-05 + 0.54547551E-05 -0.14992302E-04 0.34501249E-04 0.14768616E-04 -0.55417987E-04 + 0.41019026E-04 0.21511970E-04 0.42338356E-05 -0.56844576E-05 -0.15628229E-05 + 0.32627856E-04 0.11387931E-03 0.22637862E-03 0.30724196E-03 0.40353098E-03 + 0.50875975E-03 0.70641855E-03 0.10075322E-02 0.28540934E-02 0.22788007E-02 + 0.42181499E-02 0.58037946E-02 0.72552452E-02 0.83601407E-02 0.10114721E-01 + 0.11494596E-01 0.11966046E-01 0.11452274E-01 0.11086669E-01 0.10533210E-01 + 0.98112934E-02 0.83282833E-02 0.11395808E-07 -0.21241399E-07 -0.51459121E-06 + -0.33737609E-06 -0.12111493E-06 -0.32547420E-06 0.16329728E-05 0.11015997E-04 + 0.41752984E-04 0.10092946E-03 0.19438789E-03 0.31924708E-03 0.44406766E-03 + 0.37989768E-03 0.30987956E-03 0.22826610E-03 0.27980128E-03 0.27263107E-03 + 0.37116251E-03 0.37532434E-03 0.33410186E-03 0.23483676E-03 0.82426445E-03 + 0.44173998E-03 0.12901308E-02 0.23552603E-02 -0.74451037E-03 -0.99354445E-03 + -0.39825057E-03 0.87713672E-04 0.15806743E-03 0.81956152E-03 0.99065804E-03 + 0.80987017E-03 0.41919844E-03 0.11005751E-03 0.24724231E-03 0.75053042E-03 + 0.16718804E-02 0.92065849E-02 -0.75696045E-03 -0.51885680E-03 -0.18712852E-03 + 0.29311252E-03 -0.13709410E-02 -0.61268303E-03 -0.46468735E-03 -0.79542391E-03 + 0.60408285E-03 0.11907290E-02 0.12965391E-02 0.91570026E-03 0.73422442E-03 + 0.12974878E-06 -0.19008727E-06 0.50607480E-07 0.14954856E-06 0.19400649E-06 + -0.29317420E-06 0.10331038E-06 -0.92516731E-08 -0.68567072E-07 -0.90219516E-07 + -0.37301405E-07 0.87682599E-07 0.16660774E-06 -0.12785973E-06 -0.87483888E-06 + -0.88604435E-06 -0.85110284E-06 -0.48107395E-06 -0.11647027E-05 0.97553592E-06 + 0.26637639E-05 0.74062259E-05 0.13824120E-04 0.15114351E-04 0.25095493E-04 + 0.32464772E-04 0.58654662E-04 0.62586238E-04 0.54571625E-04 0.69670232E-04 + 0.73562243E-04 0.65663041E-04 0.78712097E-04 0.80573236E-04 0.83665332E-04 + 0.88582163E-04 0.99950402E-04 0.12336834E-03 0.11777648E-03 -0.15896398E-04 + -0.14787551E-03 -0.16078356E-03 -0.24732875E-03 -0.30804125E-03 -0.34597500E-03 + -0.36359792E-03 -0.34753648E-03 -0.26247484E-03 -0.17070267E-03 -0.11960600E-03 + -0.93251561E-04 -0.74951723E-04 -0.57823162E-04 -0.34740606E-15 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.12216251E-10 -0.39984521E-10 -0.17413118E-09 + -0.64517558E-07 0.79255747E-07 -0.97695860E-08 -0.72271808E-07 0.12249481E-06 + 0.18661884E-07 -0.15384833E-06 -0.12971962E-06 0.22581863E-06 -0.92998939E-08 + -0.77516953E-07 -0.39249243E-08 0.21017388E-06 -0.11294467E-06 -0.20208530E-07 + -0.13402932E-07 -0.36324719E-07 -0.93033991E-08 0.22249124E-07 0.59436158E-07 + 0.17590289E-07 0.19910904E-07 -0.81786025E-07 0.44188603E-07 0.34871296E-07 + -0.62147995E-07 0.62088699E-07 -0.27286184E-07 0.31098058E-07 -0.13993906E-07 + 0.56427041E-09 -0.16984714E-07 -0.46828688E-07 -0.18801008E-06 -0.21970197E-06 + -0.37887190E-06 -0.19526607E-06 -0.10444688E-06 -0.39843776E-06 -0.41600909E-06 + -0.24093321E-06 -0.35413987E-06 -0.57885797E-07 -0.77221252E-07 -0.16082753E-06 + -0.39553941E-07 0.30548412E-08 -0.33619365E-08 0.19615771E-07 0.18238338E-06 + -0.51915832E-06 0.36589068E-07 0.82404390E-07 0.46568351E-06 -0.28530562E-06 + 0.26360943E-07 -0.59213514E-07 0.21606082E-07 -0.17543442E-07 -0.35687665E-07 + 0.58298266E-07 -0.13399599E-06 -0.98812567E-08 -0.25659594E-07 -0.21695328E-07 + -0.33319426E-07 -0.21299418E-06 0.74788673E-07 0.53839784E-06 0.28791873E-06 + -0.42690753E-06 -0.16228128E-05 0.13308921E-05 0.11936187E-05 -0.32763833E-06 + 0.11597912E-05 -0.19725164E-08 -0.17460429E-05 -0.15633746E-05 -0.24492833E-05 + -0.35694095E-05 -0.43271795E-05 -0.37876269E-05 -0.11735365E-05 -0.22129358E-05 + -0.15673663E-04 -0.28590282E-04 -0.29855112E-04 -0.41056464E-04 -0.48557973E-04 + -0.52788008E-04 -0.57895751E-04 -0.56691678E-04 -0.45189101E-04 -0.31918175E-04 + -0.24173561E-04 -0.19588738E-04 -0.16209103E-04 -0.12733121E-04 0.15449479E-08 + 0.23501578E-08 -0.15775800E-06 0.23612622E-06 0.24699964E-07 -0.54260052E-07 + 0.13395048E-07 0.21250673E-06 -0.45847752E-06 0.18052388E-06 0.28340703E-06 + -0.16336682E-06 -0.28960371E-07 -0.50150967E-08 0.38535881E-07 0.23038888E-07 + 0.68770401E-07 -0.12238910E-06 -0.37611895E-07 -0.34760559E-07 -0.20491821E-06 + -0.35375535E-07 -0.37314694E-06 -0.41366670E-06 -0.92859999E-07 -0.23615233E-06 + -0.10362842E-06 -0.13386855E-06 -0.19257081E-06 -0.76719389E-06 -0.14497831E-06 + -0.75830766E-07 -0.61784922E-06 -0.80995615E-06 -0.75465371E-06 -0.94485330E-06 + -0.98005822E-06 -0.10951585E-05 -0.11727984E-05 0.60678508E-06 0.15206841E-05 + 0.31183366E-05 0.43348138E-05 0.50829688E-05 0.55174452E-05 0.59297925E-05 + 0.51353138E-05 0.34792445E-05 0.19426888E-05 0.11685369E-05 0.81859114E-06 + 0.63923952E-06 0.44689835E-06 -0.43654864E-08 0.16008938E-07 0.10100917E-06 + -0.21070790E-06 -0.40351071E-07 -0.80568358E-07 0.13761176E-06 0.34159340E-07 + -0.56628381E-07 0.15611336E-06 -0.35973623E-08 -0.23751266E-06 0.14443143E-06 + -0.42631297E-07 0.42645745E-07 0.80610718E-08 0.47737692E-07 -0.95088607E-07 + 0.62797165E-07 -0.60745410E-08 0.29103668E-07 -0.46746559E-07 0.83383506E-07 + -0.47200734E-07 0.72760724E-07 -0.82630455E-07 0.65626811E-08 -0.78527256E-08 + 0.59207074E-07 -0.49658444E-07 -0.93322433E-07 0.78506351E-07 -0.33146839E-07 + 0.18328751E-07 -0.67243591E-07 0.82161364E-07 -0.16946512E-07 0.37037303E-07 + 0.63383752E-08 0.73844205E-07 0.54275660E-07 0.27959047E-07 0.10774870E-06 + 0.16804933E-06 0.19084655E-06 0.21159285E-06 0.37845707E-06 0.21838909E-06 + 0.32084015E-06 0.22802255E-06 0.25501100E-06 0.22731522E-06 0.19155882E-06 + -0.35845806E-07 0.25203320E-07 0.58505835E-08 -0.24607971E-07 0.80842510E-07 + -0.55329430E-07 -0.14351205E-06 0.13812593E-06 0.42922900E-07 -0.34459464E-07 + -0.80287403E-07 -0.31432562E-06 -0.65475610E-07 -0.95465137E-07 -0.17731744E-06 + 0.12522426E-06 0.21560882E-06 -0.87070824E-06 -0.48302057E-05 -0.13144779E-04 + -0.27650987E-04 -0.53729366E-04 -0.96184529E-04 -0.11012585E-03 -0.41432310E-04 + -0.40041345E-03 0.20589413E-03 0.57673257E-05 -0.19686776E-03 -0.19004636E-03 + -0.14172494E-03 -0.15084869E-03 -0.20210441E-03 -0.25024760E-03 -0.23449024E-03 + -0.29597069E-03 -0.41229541E-03 -0.53181331E-03 -0.10518676E-02 -0.89429118E-02 + 0.19453398E-02 -0.19798244E-02 -0.31679938E-02 -0.35103119E-02 -0.11218122E-02 + -0.62201941E-02 -0.89222572E-02 -0.96751635E-02 -0.78021033E-02 -0.76629801E-02 + -0.79256521E-02 -0.81700154E-02 -0.69801167E-02 0.37004658E-07 -0.39455898E-07 + -0.32429638E-07 0.34774751E-07 0.13228048E-07 -0.21167206E-06 0.15096043E-06 + -0.16543623E-08 0.88500054E-07 -0.32948729E-07 -0.33089267E-07 -0.62118328E-06 + 0.13412260E-05 0.20567544E-05 0.76523839E-06 -0.45374687E-07 -0.10472162E-05 + -0.10069107E-05 0.17698780E-06 -0.35890247E-05 -0.60240457E-05 -0.28885203E-05 + 0.11900053E-04 -0.25247133E-04 -0.74537891E-05 0.63650587E-04 -0.30431875E-04 + -0.50774446E-05 0.17863872E-04 0.31150902E-04 0.40438049E-04 0.32953414E-04 + 0.12224041E-04 -0.27057119E-04 -0.29065650E-04 -0.55053989E-04 -0.85341308E-04 + -0.17485385E-03 -0.31737060E-03 -0.15692925E-02 -0.40509756E-03 -0.14622556E-02 + -0.23007473E-02 -0.30604735E-02 -0.35827502E-02 -0.46607655E-02 -0.56575530E-02 + -0.60647109E-02 -0.56219419E-02 -0.54675209E-02 -0.52886062E-02 -0.50811091E-02 + -0.44015846E-02 -0.87648000E-09 0.20443226E-06 0.52718024E-06 0.34033544E-06 + 0.19364646E-06 0.71585452E-06 0.61280097E-06 -0.57172250E-06 -0.83177605E-05 + -0.15088478E-04 -0.25282807E-04 -0.45788473E-04 -0.11760511E-03 -0.97188103E-04 + -0.93574406E-04 -0.75542660E-04 -0.93439998E-04 -0.62853727E-04 -0.68308269E-04 + 0.55175326E-04 0.22730732E-03 0.41976053E-03 0.33464419E-03 0.43146618E-03 + -0.40712160E-03 -0.10967197E-02 0.24395868E-02 0.26375791E-02 0.19065955E-02 + 0.13090069E-02 0.11380906E-02 0.65441996E-03 0.37400930E-03 0.33841642E-03 + 0.38953509E-03 0.37125558E-03 0.42670946E-04 -0.39834465E-03 -0.78047310E-03 + -0.37112848E-02 0.23436052E-02 0.13066041E-02 0.11662986E-02 0.89262072E-03 + 0.23895980E-02 0.14461766E-02 0.93512190E-03 0.12227462E-02 0.53905136E-03 + 0.67983369E-04 -0.43326288E-03 -0.50676444E-03 -0.42833034E-03 -0.67065201E-07 + 0.96981995E-07 -0.20137347E-07 -0.73368448E-07 -0.10055886E-06 0.14448960E-06 + -0.48894810E-07 0.10671094E-07 0.47745740E-07 0.53202866E-07 0.21666465E-07 + -0.10973840E-07 -0.27969195E-06 -0.10859287E-05 -0.96190012E-06 -0.78862185E-06 + -0.74571172E-06 -0.62777833E-06 -0.18668041E-05 -0.19943194E-06 -0.14323613E-05 + -0.61873203E-05 -0.98276805E-05 -0.98383935E-05 -0.16535043E-04 -0.19638571E-04 + -0.40937406E-04 -0.41307189E-04 -0.32284176E-04 -0.31914698E-04 -0.36859402E-04 + -0.40490112E-04 -0.39784331E-04 -0.38103200E-04 -0.39171486E-04 -0.41681442E-04 + -0.51243509E-04 -0.73494154E-04 -0.67238223E-04 0.52200925E-04 0.14255755E-03 + 0.15046783E-03 0.22588142E-03 0.28372784E-03 0.32436795E-03 0.35235541E-03 + 0.36483750E-03 0.32588354E-03 0.26474257E-03 0.21781273E-03 0.18658033E-03 + 0.16281215E-03 0.13658837E-03 0.17155279E-15 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.52124245E-11 0.25132528E-10 0.11444082E-09 0.35478807E-07 + -0.35250088E-07 0.12137572E-07 0.36059666E-07 -0.65034892E-07 -0.13562438E-07 + 0.84761464E-07 0.62094493E-07 -0.10038921E-06 -0.25512213E-07 0.41039243E-07 + 0.31439894E-07 -0.11075198E-06 0.41720746E-07 0.92534780E-08 0.81468711E-08 + 0.38772212E-07 0.40357276E-08 -0.11061152E-07 -0.45182457E-07 -0.22846483E-07 + -0.45166712E-08 0.42670638E-07 -0.18447260E-07 -0.81352289E-08 0.35644774E-07 + -0.27552389E-07 0.10921317E-07 -0.75191471E-08 0.19220025E-07 0.93731138E-08 + 0.30512233E-07 0.23765129E-07 0.19004469E-06 0.19926618E-06 0.31772360E-06 + 0.25919753E-06 0.13614654E-06 0.46905163E-06 0.46903270E-06 0.38916030E-06 + 0.45188306E-06 0.25936032E-06 0.22571493E-06 0.29750830E-06 0.16487305E-06 + -0.16157015E-08 0.10023284E-08 -0.84936760E-08 -0.86684694E-07 0.25405654E-06 + -0.17095735E-07 -0.42839238E-07 -0.22851256E-06 0.14321090E-06 -0.14349741E-07 + 0.33824404E-07 0.14798477E-07 0.89263739E-08 -0.80080633E-07 -0.12298365E-06 + 0.68109119E-07 -0.37316568E-08 0.77570707E-07 -0.31153665E-07 0.26865704E-06 + 0.33457101E-06 -0.91109246E-07 -0.43038236E-06 -0.16276145E-06 0.35177965E-06 + 0.16460088E-05 -0.13208753E-05 -0.11458265E-05 0.27740369E-06 0.41152089E-06 + -0.10962722E-06 0.25136154E-06 0.11880388E-05 0.21624188E-05 0.32671701E-05 + 0.39748886E-05 0.34892093E-05 0.10226852E-05 0.22426805E-05 0.14297854E-04 + 0.23335029E-04 0.24453362E-04 0.34506581E-04 0.41981387E-04 0.46880541E-04 + 0.53316857E-04 0.56363604E-04 0.51726102E-04 0.43361799E-04 0.36610374E-04 + 0.31617728E-04 0.27681935E-04 0.23101813E-04 -0.81712706E-09 -0.11435635E-08 + 0.76826045E-07 -0.11201603E-06 -0.13322594E-07 0.28479212E-07 -0.95554272E-08 + -0.11490688E-06 0.22316529E-06 -0.89459834E-07 -0.12979994E-06 0.75135188E-07 + 0.29003025E-07 0.34126498E-07 0.32658692E-07 0.28701592E-07 0.27399692E-07 + 0.11731561E-06 0.11019232E-06 0.11687094E-06 0.19119683E-06 0.90417331E-07 + 0.29686461E-06 0.33200761E-06 0.85876387E-07 0.19143565E-06 0.60749855E-07 + 0.77500566E-07 0.60861405E-07 0.33556618E-06 0.27966424E-06 0.53290891E-06 + 0.79352843E-06 0.92055676E-06 0.90315540E-06 0.10871223E-05 0.11574449E-05 + 0.13168935E-05 0.13246483E-05 -0.11429597E-06 -0.54550844E-06 -0.17848723E-05 + -0.28760434E-05 -0.36495704E-05 -0.42124792E-05 -0.48071915E-05 -0.46365245E-05 + -0.38423696E-05 -0.28927175E-05 -0.22200764E-05 -0.18761981E-05 -0.16664561E-05 + -0.14424653E-05 0.13398639E-08 -0.58836065E-08 -0.53585284E-07 0.10745512E-06 + 0.17190313E-07 0.38734700E-07 -0.63637369E-07 -0.21082751E-07 0.32448330E-07 + -0.84027138E-07 0.55463980E-08 0.11960651E-06 -0.62701886E-07 0.28991810E-07 + -0.69165957E-08 0.10973468E-07 -0.73203748E-08 0.68309482E-07 -0.61338470E-08 + 0.16936910E-07 -0.13703334E-07 0.33308400E-07 -0.34241077E-07 0.16768920E-07 + -0.26939476E-07 0.71525754E-07 -0.25068974E-07 0.52805760E-08 -0.27804920E-07 + 0.26982032E-07 0.52155383E-07 -0.29763162E-07 0.26877262E-07 0.81426954E-09 + 0.46733303E-07 -0.31570270E-07 0.24824498E-07 -0.18501325E-07 0.34510492E-08 + -0.43067402E-07 0.15560644E-07 0.20692397E-07 -0.37159012E-07 -0.67055211E-07 + -0.82338673E-07 -0.81510294E-07 -0.20773189E-06 -0.14512997E-06 -0.15342012E-06 + -0.10635247E-06 -0.14506222E-06 -0.12099331E-06 -0.10105482E-06 0.00000000E+00 + 0.21627200E-07 0.38599654E-06 0.64967985E-05 -0.59496735E-05 0.91542655E-05 + 0.39241064E-05 0.13810706E-06 0.19159691E-05 0.18412820E-05 0.19451926E-06 + 0.14161671E-05 0.42310772E-06 0.26854046E-06 0.10088692E-06 0.10503539E-06 + 0.47748940E-07 -0.48359573E-07 0.39027840E-07 0.12776474E-07 0.13914845E-06 + 0.71442260E-07 0.48329173E-06 0.15160019E-06 -0.10240068E-05 0.24510620E-06 + 0.86538013E-06 0.76997055E-07 -0.22981031E-06 -0.24387945E-06 0.39762498E-06 + 0.36735120E-06 0.38631649E-06 0.22778737E-06 0.59229012E-07 0.24234942E-07 + 0.82240516E-07 0.19007591E-06 0.17530443E-06 0.15591965E-05 0.81397329E-07 + 0.31181248E-07 0.19575430E-07 -0.45602465E-07 -0.14327421E-06 -0.89383892E-07 + -0.13329660E-06 -0.17014222E-06 -0.10725779E-06 -0.56736674E-07 -0.45763587E-07 + 0.10476599E-08 0.37809033E-08 0.00000000E+00 0.15118337E-06 -0.11549260E-05 + 0.35722039E-05 -0.13653074E-05 0.86604895E-06 -0.13512904E-05 -0.15743286E-05 + -0.53325934E-06 0.22741400E-06 -0.18172940E-05 0.26973095E-05 0.12453375E-05 + 0.15923855E-06 -0.12690454E-05 -0.14110305E-05 -0.14940117E-05 -0.49140569E-06 + 0.51550753E-07 0.41405637E-06 0.37178499E-06 0.32140910E-06 -0.78427708E-07 + 0.37766475E-06 0.42667996E-06 0.88335708E-07 -0.40087374E-07 0.89840138E-07 + 0.57374753E-07 -0.13031088E-07 0.34351010E-07 0.34717260E-07 0.70358773E-07 + 0.56953403E-07 0.47349722E-07 0.29235792E-07 0.37127107E-07 0.40242238E-07 + 0.54082988E-07 0.21515126E-06 0.52606286E-07 0.46223552E-07 0.40268029E-07 + 0.30156938E-07 0.17039306E-07 0.14420196E-07 0.10599074E-09 -0.74988075E-08 + -0.50591060E-08 0.80486715E-09 0.16396518E-08 0.70155431E-08 0.61798480E-08 + 0.00000000E+00 -0.41155447E-05 -0.35073331E-04 -0.15914789E-03 0.84471684E-04 + 0.37297674E-04 -0.46521164E-04 0.68320923E-04 -0.99039444E-05 -0.27948909E-04 + 0.33935800E-04 -0.26693821E-04 -0.84478127E-05 -0.34631772E-05 0.44297273E-05 + 0.70405971E-05 0.77655278E-05 0.26043074E-05 0.17285866E-07 -0.17530753E-05 + -0.11813273E-05 -0.68571566E-06 0.20153949E-05 -0.19563477E-06 -0.36171273E-05 + 0.11233573E-06 0.15760293E-05 0.28898435E-07 -0.27915346E-06 -0.16672669E-06 + 0.52783363E-06 0.45595295E-06 0.39759136E-06 0.21955335E-06 0.59659589E-07 + 0.29953600E-07 0.49490760E-07 0.10542410E-06 0.70567322E-07 0.58502826E-06 + 0.37989306E-07 0.16868304E-07 0.10925204E-07 -0.12406718E-07 -0.41196605E-07 + -0.21562051E-07 -0.30852120E-07 -0.40427073E-07 -0.23026670E-07 -0.11496260E-07 + -0.88280505E-08 0.19430709E-08 0.21394349E-08 0.00000000E+00 -0.45292156E-06 + -0.36712796E-06 -0.20874122E-06 -0.12958538E-05 0.38048738E-05 0.70996387E-06 + 0.27772109E-07 -0.50765942E-06 -0.31396872E-06 0.19444046E-06 0.16011835E-06 + -0.98031613E-07 0.35157329E-06 0.73261537E-06 0.82189467E-06 0.82456983E-06 + 0.20792623E-06 -0.47899177E-06 0.59334629E-07 0.14302454E-07 -0.83389026E-07 + -0.38595201E-07 -0.24542679E-07 -0.80211637E-08 -0.79997059E-07 -0.83665217E-07 + -0.51826883E-07 -0.41552330E-08 0.82844160E-07 0.31109356E-07 -0.38200922E-07 + -0.62548280E-07 -0.72519160E-07 -0.63013825E-07 -0.42585621E-07 -0.29436059E-07 + -0.21168075E-07 -0.19481573E-07 -0.35344108E-07 -0.33155046E-07 -0.25610070E-07 + -0.21522404E-07 -0.17107665E-07 -0.12766801E-07 -0.83748202E-08 -0.48263845E-08 + -0.21377816E-08 -0.56754929E-09 0.35143700E-09 0.72553706E-09 0.75420982E-09 + 0.61630400E-09 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.29682073E-09 -0.14251924E-08 -0.20323483E-09 -0.12995024E-06 -0.66340733E-08 + 0.52548578E-08 -0.57815201E-09 0.33008760E-08 0.36593255E-08 -0.39057787E-09 + -0.73434583E-10 0.93044269E-09 0.60939487E-09 0.56795716E-09 0.93127476E-10 + -0.11383558E-09 0.21445511E-10 -0.18764142E-11 -0.40731883E-11 -0.27413073E-10 + 0.53598170E-10 -0.54820957E-10 -0.96021680E-11 -0.27346943E-10 0.66074983E-11 + 0.37758003E-10 0.15672660E-10 -0.78631959E-11 -0.15625730E-10 -0.27857118E-10 + -0.25218079E-10 -0.17707771E-10 -0.12930973E-10 -0.11997948E-10 -0.13138344E-10 + -0.10600932E-10 -0.22477735E-10 -0.17498091E-10 -0.19659290E-10 -0.16165188E-10 + -0.95539107E-11 -0.10212984E-10 -0.88784789E-11 -0.31627484E-11 -0.47004473E-11 + -0.26128509E-11 -0.17752691E-11 -0.15069998E-11 -0.12083386E-11 0.00000000E+00 + 0.57508130E-07 0.16786506E-06 -0.18509951E-05 0.26047943E-06 0.43753388E-06 + -0.42342632E-07 -0.14832379E-06 -0.10662229E-06 -0.96747471E-07 0.13971930E-07 + -0.65830542E-07 -0.50871719E-07 0.18997477E-07 0.76442703E-07 0.56060207E-07 + 0.75801034E-07 0.86955491E-08 -0.59679017E-07 -0.16537411E-07 -0.17555729E-07 + -0.22462287E-07 -0.15682660E-07 -0.69429791E-08 -0.57742196E-08 -0.15325999E-07 + -0.17792549E-07 -0.94543659E-08 0.26597678E-08 0.13061865E-07 0.13509661E-08 + -0.51026000E-08 -0.63476655E-08 -0.67877844E-08 -0.63057122E-08 -0.48770642E-08 + -0.37671456E-08 -0.32408200E-08 -0.30914450E-08 -0.46058657E-08 -0.40641564E-08 + -0.33660120E-08 -0.29763847E-08 -0.24834656E-08 -0.19565248E-08 -0.14446230E-08 + -0.94858848E-09 -0.54811542E-09 -0.33311793E-09 -0.16768765E-09 -0.88038772E-10 + -0.62895568E-10 -0.48650797E-10 0.00000000E+00 0.30335976E-08 -0.10170290E-05 + 0.16619826E-05 -0.15081701E-05 0.55320564E-06 0.15173881E-06 -0.22187076E-08 + -0.88554599E-07 -0.23366032E-07 -0.33534477E-08 -0.65995399E-08 0.10872383E-08 + -0.36526075E-08 -0.30660231E-07 -0.29671101E-07 -0.32345469E-07 -0.20083123E-07 + -0.14200426E-07 -0.54014356E-08 -0.32154918E-08 0.32037255E-08 0.75707473E-08 + 0.35948227E-08 0.49149370E-08 0.41377248E-08 0.43642942E-08 0.27005035E-08 + -0.76777265E-09 -0.21947516E-08 0.22076281E-09 0.52650998E-09 0.47018353E-09 + 0.48415212E-09 0.47903858E-09 0.39575134E-09 0.45816387E-09 0.54926914E-09 + 0.68827832E-09 0.66415889E-09 0.53354875E-09 0.45065871E-09 0.40122054E-09 + 0.32899870E-09 0.26039276E-09 0.18313450E-09 0.13163566E-09 0.82027141E-10 + 0.41134177E-10 0.20601587E-10 0.63565485E-11 0.40887977E-12 0.59739404E-12 + 0.00000000E+00 0.20138047E-07 -0.52806304E-06 -0.16670956E-07 0.19668450E-05 + -0.15154687E-05 0.63995452E-07 0.18896469E-07 -0.25006069E-07 -0.24653530E-07 + 0.29150321E-08 -0.47862233E-08 -0.86449265E-08 -0.61329287E-08 -0.40466357E-08 + -0.81372581E-08 -0.49401753E-08 -0.43232722E-08 -0.61749128E-09 -0.18557741E-08 + -0.81949702E-09 0.14940528E-09 0.23776941E-09 0.44383532E-09 0.34271200E-09 + 0.61092338E-10 0.35143647E-11 0.72222153E-10 0.55635525E-10 0.21694420E-10 + 0.41859627E-11 0.29747130E-11 0.89041217E-12 0.42013859E-11 0.40833899E-11 + 0.51525344E-11 0.32952384E-11 0.34226642E-11 0.84563075E-12 0.11131982E-10 + 0.18373620E-11 0.18062205E-11 0.22637818E-11 0.31176758E-11 0.28373500E-11 + 0.21103743E-11 0.12555705E-11 0.12898781E-11 -0.38726220E-12 0.34470217E-12 + 0.62504433E-12 0.41973787E-12 0.38851999E-12 0.00000000E+00 0.13395188E-07 + 0.32446361E-06 0.29792660E-05 0.11569028E-04 -0.66686162E-05 -0.16352078E-05 + 0.14263581E-05 -0.84428249E-06 -0.13444673E-05 0.12103134E-06 -0.11872979E-05 + -0.25417471E-06 -0.11753186E-06 -0.38718255E-07 -0.88384508E-07 -0.66492011E-07 + 0.10511409E-07 -0.94613995E-07 -0.82515751E-07 -0.22536346E-06 -0.18200335E-06 + -0.61160013E-06 -0.24039097E-06 0.10345819E-05 -0.34587950E-06 -0.98550989E-06 + -0.21472430E-06 0.10640813E-06 0.15692489E-06 -0.50546955E-06 -0.46976364E-06 + -0.46320184E-06 -0.29498662E-06 -0.12764597E-06 -0.89493634E-07 -0.13561126E-06 + -0.23013917E-06 -0.22287012E-06 -0.16479726E-05 -0.13650294E-06 -0.87809179E-07 + -0.76096691E-07 -0.16638412E-08 0.10315193E-06 0.36668265E-07 0.83385283E-07 + 0.11622150E-06 0.71621666E-07 0.26943334E-07 0.24055772E-07 -0.22398087E-07 + -0.21479399E-07 0.00000000E+00 0.14013595E-06 -0.11634854E-05 0.27087392E-05 + 0.28652298E-05 0.16647242E-05 0.20937898E-05 0.21353508E-05 0.10702501E-05 + 0.29180450E-06 0.24522064E-05 -0.19532023E-05 -0.43440356E-06 0.84902252E-06 + 0.19953223E-05 0.19343403E-05 0.18955234E-05 0.81485172E-06 0.18959784E-06 + -0.20913055E-06 -0.20534573E-06 -0.19093381E-06 0.16875906E-06 -0.35830305E-06 + -0.43313869E-06 -0.75883013E-07 0.45091436E-07 -0.89225578E-07 -0.67161187E-07 + 0.30792649E-08 -0.46922807E-07 -0.47866984E-07 -0.84247665E-07 -0.69626887E-07 + -0.61600210E-07 -0.45358217E-07 -0.53023566E-07 -0.56216074E-07 -0.71016547E-07 + -0.23540370E-06 -0.69146747E-07 -0.64275768E-07 -0.60565931E-07 -0.50354391E-07 + -0.37572308E-07 -0.37603004E-07 -0.23413096E-07 -0.16779051E-07 -0.15917693E-07 + -0.19503242E-07 -0.17480109E-07 -0.21405851E-07 -0.18300236E-07 0.00000000E+00 + -0.46244634E-05 -0.39319249E-04 -0.14201825E-03 -0.30974315E-03 -0.17549274E-03 + -0.59302600E-04 -0.15414931E-03 -0.61878336E-04 -0.18135040E-04 -0.54750822E-04 + 0.28915584E-04 0.20283506E-04 0.14676350E-04 0.23581151E-05 -0.39837333E-05 + -0.68090181E-05 -0.27127639E-05 -0.50715181E-06 0.12855326E-05 0.81677001E-06 + 0.39184149E-06 -0.22121749E-05 0.12170947E-06 0.36486329E-05 -0.22494752E-06 + -0.14790824E-05 0.32663476E-07 0.33004243E-06 0.21675517E-06 -0.50088928E-06 + -0.42986859E-06 -0.35937900E-06 -0.18311965E-06 -0.30255145E-07 -0.55149039E-08 + -0.28259488E-07 -0.84018749E-07 -0.53144954E-07 -0.56098907E-06 -0.14327881E-07 + -0.35680666E-08 0.74149540E-09 0.23404740E-07 0.54002406E-07 0.29032677E-07 + 0.35705504E-07 0.44256162E-07 0.28677853E-07 0.16350878E-07 0.12630862E-07 + 0.35965392E-09 -0.39765821E-09 0.00000000E+00 -0.46704523E-06 -0.32928696E-06 + 0.13405218E-05 0.43065720E-05 -0.45381661E-05 -0.52119801E-06 0.10380277E-06 + 0.60408848E-06 0.31489508E-06 -0.15680598E-06 -0.11556105E-06 0.96404278E-07 + -0.40020938E-06 -0.76818241E-06 -0.82535470E-06 -0.81312467E-06 -0.21212848E-06 + 0.44651945E-06 -0.58676975E-07 -0.18036841E-07 0.72749911E-07 0.31394190E-07 + 0.20195660E-07 0.33596859E-08 0.75787272E-07 0.79533796E-07 0.48975722E-07 + 0.16399513E-08 -0.86691569E-07 -0.31244981E-07 0.37540975E-07 0.59616626E-07 + 0.67639858E-07 0.58089464E-07 0.38522111E-07 0.26254275E-07 0.18649778E-07 + 0.17578716E-07 0.34225028E-07 0.32549392E-07 0.25076063E-07 0.21337273E-07 + 0.17174998E-07 0.12994910E-07 0.86960112E-08 0.53260698E-08 0.28132407E-08 + 0.12387651E-08 0.18428894E-09 -0.29604215E-09 -0.39243674E-09 -0.31640932E-09 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.16279140E-09 + 0.12624685E-08 -0.16171147E-09 0.98556854E-07 -0.34513206E-08 0.20357062E-07 + -0.10292661E-08 -0.41342576E-08 -0.32781270E-08 0.94807731E-09 -0.25561752E-09 + -0.10140180E-09 -0.12841182E-08 -0.49241996E-09 0.51603002E-10 0.82133482E-10 + -0.38075130E-10 -0.47940859E-11 0.14966643E-11 0.40701937E-10 -0.56923708E-10 + 0.56092852E-10 0.91465981E-11 0.25171417E-10 -0.41445096E-11 -0.38586647E-10 + -0.15719655E-10 0.84603458E-11 0.14566618E-10 0.25836590E-10 0.22923440E-10 + 0.15943795E-10 0.11638652E-10 0.10768677E-10 0.11996429E-10 0.10718398E-10 + 0.21791288E-10 0.16445152E-10 0.18537921E-10 0.15682068E-10 0.87466028E-11 + 0.97891206E-11 0.90392828E-11 0.38971685E-11 0.52455863E-11 0.29960823E-11 + 0.19951909E-11 0.18784029E-11 0.13515387E-11 0.00000000E+00 0.57647484E-07 + 0.89387317E-07 -0.17630573E-05 0.59030592E-06 -0.24404432E-06 -0.79339177E-07 + 0.13317357E-06 0.68625463E-07 0.68775966E-07 -0.32925426E-07 0.52053164E-07 + 0.39252396E-07 -0.32710743E-07 -0.86724146E-07 -0.58389851E-07 -0.76652047E-07 + -0.10854013E-07 0.53760863E-07 0.13969848E-07 0.14990878E-07 0.19889141E-07 + 0.13995508E-07 0.61634825E-08 0.53811520E-08 0.15315408E-07 0.17705774E-07 + 0.93610452E-08 -0.28842114E-08 -0.13423107E-07 -0.13379417E-08 0.51765523E-08 + 0.61688371E-08 0.64054034E-08 0.58748208E-08 0.44769086E-08 0.34342799E-08 + 0.29455462E-08 0.28626401E-08 0.44645376E-08 0.39911695E-08 0.33073784E-08 + 0.29677751E-08 0.25131964E-08 0.20065962E-08 0.15084913E-08 0.10459786E-08 + 0.67360417E-09 0.45283612E-09 0.26633788E-09 0.16752603E-09 0.12967552E-09 + 0.10347344E-09 0.00000000E+00 0.24604361E-08 -0.10369647E-05 0.12312782E-05 + 0.60411989E-06 -0.50055095E-06 0.20746663E-07 -0.48726530E-07 0.22205675E-07 + 0.27039514E-07 0.12887037E-07 0.11050733E-07 0.55552515E-08 0.10624462E-07 + 0.37729450E-07 0.32890815E-07 0.33898340E-07 0.20208352E-07 0.14428549E-07 + 0.49810784E-08 0.26671449E-08 -0.35653729E-08 -0.76186383E-08 -0.35800289E-08 + -0.49752927E-08 -0.41396463E-08 -0.43600462E-08 -0.26868063E-08 0.81615671E-09 + 0.22490583E-08 -0.22985985E-09 -0.54388534E-09 -0.45827248E-09 -0.45837533E-09 + -0.45328979E-09 -0.37379988E-09 -0.43514453E-09 -0.52305402E-09 -0.65878555E-09 + -0.65583950E-09 -0.53459181E-09 -0.46205400E-09 -0.41851881E-09 -0.34959532E-09 + -0.28198382E-09 -0.20439358E-09 -0.15167900E-09 -0.10188656E-09 -0.59930984E-10 + -0.35980320E-10 -0.19542972E-10 -0.11694413E-10 -0.99681782E-11 0.00000000E+00 + 0.28243471E-07 -0.66621717E-06 0.17478755E-06 -0.12114902E-05 0.46270269E-06 + 0.54554934E-07 0.79287989E-08 0.85319603E-08 0.78786126E-08 -0.10192262E-07 + 0.42557911E-09 0.71779833E-08 0.48906212E-08 0.32799022E-08 0.77023819E-08 + 0.44488241E-08 0.40359780E-08 0.33610281E-09 0.16476468E-08 0.64901636E-09 + -0.23246805E-09 -0.28781052E-09 -0.49055218E-09 -0.36249896E-09 -0.59751858E-10 + -0.25584427E-11 -0.69967122E-10 -0.54326727E-10 -0.21275192E-10 -0.32737618E-11 + -0.25365806E-11 -0.67714761E-12 -0.45269761E-11 -0.44493230E-11 -0.59301038E-11 + -0.39084579E-11 -0.47045327E-11 -0.19415917E-11 -0.12438199E-10 -0.26488551E-11 + -0.28821643E-11 -0.36276769E-11 -0.44295075E-11 -0.42930875E-11 -0.39386203E-11 + -0.34112282E-11 -0.38292730E-11 -0.21396882E-11 -0.28441454E-11 -0.31158837E-11 + -0.27290856E-11 -0.23487414E-11 -0.88422514E-07 0.50484578E-07 -0.21297395E-07 + -0.40635783E-07 0.25916456E-06 -0.17147678E-06 -0.37919310E-06 0.51914528E-06 + 0.38975602E-06 -0.42037067E-06 -0.74744734E-06 -0.30728996E-05 -0.73668453E-06 + -0.15351499E-05 -0.69593469E-05 -0.85862810E-05 -0.10726850E-04 -0.16005386E-04 + -0.35819065E-04 -0.64036233E-04 -0.11371917E-03 -0.23266865E-03 -0.48855282E-03 + -0.47958870E-03 0.14261451E-04 -0.23852992E-02 0.11509662E-02 0.14440463E-03 + -0.13411760E-02 -0.20927400E-02 -0.41813606E-02 -0.64161964E-02 -0.71336491E-02 + -0.83392042E-02 -0.97882301E-02 -0.12799101E-01 -0.16576925E-01 -0.20257716E-01 + -0.26816765E-01 -0.81208278E-01 -0.43622784E-02 -0.28794993E-01 -0.35451705E-01 + -0.36430322E-01 -0.18532204E-01 -0.52931489E-01 -0.72219986E-01 -0.77407995E-01 + -0.59367765E-01 -0.57137989E-01 -0.61311714E-01 -0.65658720E-01 -0.56669706E-01 + 0.98513316E-07 -0.99039744E-07 -0.92226910E-07 0.71963768E-07 -0.29854676E-07 + -0.35646058E-06 0.32446664E-06 0.29887866E-07 0.37080691E-06 -0.26550270E-06 + -0.12430830E-05 -0.92120545E-05 0.60348458E-05 0.11803357E-04 -0.76316054E-05 + -0.18568161E-04 -0.32175849E-04 -0.19259790E-04 0.37856137E-05 -0.31526009E-04 + -0.43564911E-04 -0.60500940E-05 0.97583620E-04 -0.17574934E-03 -0.76963349E-04 + 0.33243228E-03 -0.30212090E-03 -0.27828243E-03 -0.34264990E-03 -0.61655843E-03 + -0.98811031E-03 -0.15885564E-02 -0.22298196E-02 -0.31568598E-02 -0.38793879E-02 + -0.52045544E-02 -0.67290467E-02 -0.87698236E-02 -0.11178023E-01 -0.20306090E-01 + -0.11072208E-01 -0.17599281E-01 -0.23062445E-01 -0.28010707E-01 -0.31312359E-01 + -0.38539954E-01 -0.45851366E-01 -0.49755207E-01 -0.46903246E-01 -0.45684286E-01 + -0.44091925E-01 -0.42355967E-01 -0.36903435E-01 -0.16517092E-07 0.21274442E-05 + 0.30177254E-05 0.15536415E-05 -0.65249611E-06 -0.21786138E-05 -0.15625368E-04 + -0.51370842E-04 -0.16565644E-03 -0.32069727E-03 -0.39461545E-03 -0.33152765E-04 + 0.39946519E-03 0.11253282E-02 0.11162387E-02 0.55443591E-03 -0.27021465E-03 + -0.10845120E-02 -0.18952019E-02 -0.15822957E-02 -0.90456627E-03 -0.16013463E-03 + -0.29133417E-03 -0.69937615E-03 -0.47943512E-02 -0.69233622E-02 0.13301611E-01 + 0.13710094E-01 0.10713318E-01 0.69531132E-02 0.64196009E-02 0.50319997E-02 + 0.45040352E-02 0.49936599E-02 0.55017654E-02 0.43077608E-02 0.91638387E-03 + -0.21255591E-02 -0.22818775E-02 -0.55082788E-02 0.23466524E-01 0.12052919E-01 + 0.12597709E-01 0.12072275E-01 0.21989212E-01 0.13609060E-01 0.76548833E-02 + 0.10486652E-01 0.99154072E-02 0.75138418E-02 0.18240095E-02 -0.90741849E-03 + -0.98261599E-03 -0.13702001E-06 0.19613869E-06 -0.38712731E-07 -0.13872559E-06 + -0.80818037E-07 0.83253862E-07 -0.28911193E-07 0.85640288E-07 0.33892454E-06 + 0.24532821E-06 0.17190577E-06 0.39160159E-06 -0.22544579E-05 -0.13331939E-04 + -0.15717437E-04 -0.14007984E-04 -0.13790048E-04 -0.11486684E-04 -0.28777987E-04 + -0.32955449E-05 -0.10964190E-04 -0.46625125E-04 -0.64626849E-04 -0.56380210E-04 + -0.91423771E-04 -0.94550728E-04 -0.20782583E-03 -0.22326995E-03 -0.18497897E-03 + -0.26285935E-04 -0.10248551E-03 -0.32675103E-03 -0.17297239E-03 -0.13101854E-03 + -0.14316102E-03 -0.16575993E-03 -0.25298351E-03 -0.44096932E-03 -0.39085392E-03 + 0.45519743E-03 0.93119861E-03 0.95590642E-03 0.14773825E-02 0.19041909E-02 + 0.22349648E-02 0.25324130E-02 0.28322240E-02 0.28401091E-02 0.25681077E-02 + 0.22305273E-02 0.19512957E-02 0.17228368E-02 0.14595096E-02 -0.10190265E-15 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.22766318E-10 0.17518536E-10 + -0.15081526E-11 0.24408212E-07 -0.10237429E-06 0.24230015E-06 0.47939620E-07 + -0.15363188E-06 0.11282124E-07 0.23379042E-06 0.52998706E-07 0.12355018E-06 + -0.52074685E-06 0.92708738E-07 0.27957873E-06 -0.32112188E-06 0.69481983E-07 + 0.17945877E-07 -0.92862384E-10 0.23823651E-06 -0.28589901E-07 0.24861405E-07 + -0.16893030E-06 -0.19995266E-06 0.11517914E-06 0.10102232E-06 -0.90623598E-08 + 0.19562592E-06 0.12163920E-06 0.12599887E-07 -0.35491354E-07 -0.39043677E-07 + 0.62826189E-07 -0.51249827E-07 -0.29724845E-07 -0.53881988E-06 0.80255973E-06 + 0.39901084E-06 0.93017383E-06 0.84266549E-06 -0.51450559E-06 0.22057203E-05 + 0.19691377E-05 0.19838231E-05 0.22604201E-05 0.14155277E-05 0.11615426E-05 + 0.16625266E-05 0.83083881E-06 -0.33383805E-08 0.51977603E-08 -0.15313316E-07 + -0.22166039E-06 0.58822962E-06 0.11446021E-07 -0.13167759E-06 -0.51007221E-06 + 0.23329502E-06 0.41657748E-07 0.10151454E-06 0.23719746E-06 0.11190043E-07 + -0.11340126E-05 -0.13723506E-05 -0.40409346E-06 -0.12120609E-05 -0.14134229E-05 + -0.39255469E-05 -0.22182588E-05 -0.33665475E-05 -0.70187614E-05 -0.82649775E-05 + -0.44322227E-05 0.49887603E-07 0.86571621E-05 -0.93114182E-05 -0.98312537E-05 + -0.12988906E-05 0.19896996E-04 -0.26620687E-05 -0.22131511E-04 -0.15195494E-05 + 0.68798551E-05 0.13299230E-04 0.13703309E-04 0.41097396E-05 -0.19859047E-04 + -0.12308588E-04 0.71080757E-04 0.11814548E-03 0.12329369E-03 0.19350520E-03 + 0.24966352E-03 0.29068117E-03 0.35052686E-03 0.40424499E-03 0.41497961E-03 + 0.38308363E-03 0.33809049E-03 0.29707658E-03 0.26301134E-03 0.22182811E-03 + -0.16883362E-08 -0.23530260E-08 0.16648059E-06 -0.21343589E-06 -0.50677869E-07 + 0.54068319E-07 0.12639303E-06 -0.26386995E-06 0.23100419E-06 -0.19605855E-06 + -0.25038627E-06 0.16919766E-06 0.18154098E-06 0.33898043E-06 0.48412664E-06 + 0.23409861E-06 0.16729280E-06 -0.82403844E-07 -0.39823533E-06 -0.89974907E-06 + -0.11754051E-05 -0.14002965E-05 0.14466028E-06 0.12662562E-05 -0.13277815E-06 + 0.53227069E-06 -0.24591054E-06 -0.37643255E-06 -0.16846711E-05 -0.32589879E-05 + 0.15999830E-05 0.50011258E-05 0.17461794E-05 -0.13381725E-06 -0.26158680E-05 + -0.32144778E-05 -0.46256753E-05 -0.51670595E-05 -0.76419938E-05 -0.19286078E-04 + -0.22099234E-04 -0.31783227E-04 -0.41220123E-04 -0.48529409E-04 -0.54350484E-04 + -0.60800408E-04 -0.63274727E-04 -0.61839240E-04 -0.56923564E-04 -0.50179341E-04 + -0.44700066E-04 -0.39486123E-04 -0.33718683E-04 0.61894083E-08 -0.16206581E-07 + -0.10969975E-06 0.23059645E-06 0.93565991E-07 -0.63945098E-07 -0.98126116E-07 + 0.18423182E-07 0.27223597E-07 -0.23250204E-06 -0.14296084E-08 0.30779830E-06 + -0.66590357E-07 0.11936136E-06 0.11005002E-06 0.16360229E-06 0.32153579E-07 + 0.21798715E-06 -0.78105252E-07 -0.16034206E-06 -0.44096075E-06 -0.27685232E-06 + -0.37738494E-06 -0.28626150E-06 -0.10068115E-06 0.31928447E-06 -0.27775620E-06 + -0.11825135E-06 -0.11008035E-06 -0.91454691E-07 0.67891584E-07 -0.12102310E-06 + -0.72649968E-07 -0.13008420E-06 -0.83036554E-07 -0.42154826E-06 -0.24102735E-06 + -0.71620445E-06 -0.65282410E-06 -0.11056168E-05 -0.57866998E-06 -0.91041721E-06 + -0.14694297E-05 -0.17989140E-05 -0.21634952E-05 -0.26706915E-05 -0.39392452E-05 + -0.47241613E-05 -0.49601062E-05 -0.54631152E-05 -0.59933036E-05 -0.58052232E-05 + -0.51946984E-05 0.00000000E+00 0.24270073E-06 0.31909689E-06 -0.60741256E-07 + -0.14215585E-06 0.18070230E-06 -0.69953469E-07 -0.34406502E-06 -0.42545060E-06 + 0.40146807E-06 0.46399455E-06 0.16778890E-05 -0.45342171E-06 -0.59740892E-06 + 0.16556378E-05 0.19932266E-05 0.23882533E-05 0.31691521E-05 0.67331760E-05 + 0.92724845E-05 0.13294196E-04 0.25920133E-04 0.55887373E-04 0.40297337E-04 + -0.27765031E-04 0.23022614E-03 -0.14390332E-03 -0.47820781E-04 0.69797943E-04 + 0.12084180E-03 0.28600993E-03 0.42951126E-03 0.42101622E-03 0.44433581E-03 + 0.48264742E-03 0.60971772E-03 0.76559507E-03 0.89240092E-03 0.11378342E-02 + 0.34916506E-02 -0.24215236E-03 0.64399138E-03 0.75663337E-03 0.64428994E-03 + -0.20276446E-03 0.10476024E-02 0.17288623E-02 0.18778311E-02 0.11189289E-02 + 0.10570636E-02 0.13113801E-02 0.15921869E-02 0.13945262E-02 0.00000000E+00 + 0.10883159E-06 0.22864940E-06 -0.51633972E-07 0.18973761E-06 -0.26068559E-06 + 0.19726030E-08 -0.66171063E-07 -0.26992930E-06 0.17577849E-06 0.92007243E-06 + 0.59179498E-05 -0.41202767E-05 -0.70607572E-05 0.21969005E-05 0.59761292E-05 + 0.99001296E-05 0.42017153E-05 -0.26159021E-05 0.57614215E-05 0.72569049E-05 + -0.13945333E-06 -0.13029525E-04 0.19855827E-04 0.70126479E-05 -0.38230672E-04 + 0.27768126E-04 0.22316475E-04 0.25244051E-04 0.45137320E-04 0.68297094E-04 + 0.10301310E-03 0.13162735E-03 0.17372705E-03 0.19842836E-03 0.25680747E-03 + 0.32051905E-03 0.40255809E-03 0.49144833E-03 0.85720004E-03 0.32931894E-03 + 0.52939478E-03 0.68349547E-03 0.81260278E-03 0.87671256E-03 0.10918555E-02 + 0.13281734E-02 0.14501322E-02 0.13199930E-02 0.12704800E-02 0.12241493E-02 + 0.11872984E-02 0.10400530E-02 0.00000000E+00 -0.24766943E-04 -0.19343982E-04 + -0.68490430E-05 0.15580327E-05 0.29981006E-05 0.18574280E-04 0.37743197E-04 + 0.94775385E-04 0.91334882E-04 -0.62604904E-04 -0.51648304E-03 -0.84457459E-03 + -0.10960483E-02 -0.95697872E-03 -0.65988338E-03 -0.41770712E-03 -0.23513437E-03 + -0.13899309E-03 -0.31072578E-03 -0.51950591E-03 -0.69727326E-03 -0.84809680E-03 + -0.71998518E-03 -0.26087792E-03 -0.17172438E-03 -0.23606930E-02 -0.22865541E-02 + -0.19104395E-02 -0.15116058E-02 -0.14079777E-02 -0.12843236E-02 -0.11900770E-02 + -0.11424612E-02 -0.10812860E-02 -0.92519277E-03 -0.67192328E-03 -0.48529969E-03 + -0.51160444E-03 -0.81924556E-03 -0.17495688E-02 -0.10784319E-02 -0.10742887E-02 + -0.10246924E-02 -0.13819783E-02 -0.97059495E-03 -0.65661204E-03 -0.72758349E-03 + -0.72804713E-03 -0.60809736E-03 -0.32684398E-03 -0.15830960E-03 -0.11517464E-03 + 0.00000000E+00 0.30704269E-07 -0.11299050E-06 -0.19710756E-07 -0.41079815E-06 + 0.49870131E-06 -0.14480147E-06 -0.12462140E-06 -0.31417378E-06 -0.15224350E-06 + -0.99227404E-07 -0.34035501E-06 0.12360815E-05 0.67722940E-05 0.71585175E-05 + 0.55237359E-05 0.46832904E-05 0.32610134E-05 0.74547252E-05 0.84925489E-07 + 0.11300599E-05 0.64494674E-05 0.73954340E-05 0.51520785E-05 0.78125825E-05 + 0.63095864E-05 0.15907598E-04 0.15263820E-04 0.10503093E-04 -0.59466492E-05 + 0.20979870E-06 0.17870618E-04 0.43250238E-05 0.79087349E-06 0.11099922E-05 + 0.19675368E-05 0.64132949E-05 0.15917029E-04 0.12617610E-04 -0.27853025E-04 + -0.45160454E-04 -0.44326295E-04 -0.65059734E-04 -0.81363197E-04 -0.93374174E-04 + -0.10423968E-03 -0.11644296E-03 -0.11832202E-03 -0.10819587E-03 -0.93903183E-04 + -0.81640186E-04 -0.71663010E-04 -0.60449459E-04 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.20250257E-10 0.39130981E-10 0.20034224E-09 + 0.50699532E-07 0.10890587E-07 -0.20787927E-06 0.19595419E-07 0.18607729E-07 + -0.11053768E-07 -0.36947517E-07 0.35334768E-07 -0.12049330E-06 0.16098690E-06 + -0.41343259E-08 -0.73707853E-07 0.18974346E-07 0.13844818E-07 0.29390324E-08 + 0.13738501E-08 -0.32557279E-07 0.48910357E-08 -0.55820144E-08 0.14657644E-07 + 0.19432307E-07 -0.12984929E-07 -0.13071788E-08 -0.38622875E-08 -0.17854398E-07 + -0.44558133E-08 -0.54892415E-08 0.43711892E-08 -0.85214857E-09 -0.39995118E-08 + 0.18383419E-08 -0.22228974E-09 0.28753023E-07 -0.38312452E-07 -0.16438587E-07 + -0.35538974E-07 -0.42558337E-07 0.18490239E-07 -0.97084692E-07 -0.83853507E-07 + -0.91161828E-07 -0.96053735E-07 -0.70960818E-07 -0.55754871E-07 -0.72997776E-07 + -0.40838835E-07 0.00000000E+00 -0.44427789E-09 0.14093096E-07 0.17331993E-06 + -0.17005129E-06 -0.95627793E-07 0.80013083E-07 0.23766252E-08 0.61059850E-07 + -0.47078113E-07 -0.35249677E-07 -0.19179287E-06 0.64680226E-08 0.58837868E-06 + 0.55449713E-06 0.17164741E-06 0.34188064E-06 0.31531410E-06 0.86903323E-06 + 0.32686020E-06 0.53287817E-06 0.10956030E-05 0.11327384E-05 0.53461377E-06 + 0.12845554E-07 -0.94554891E-06 0.93119922E-06 0.90471015E-06 0.12155229E-06 + -0.18890517E-05 0.21994739E-06 0.18137415E-05 0.15577361E-06 -0.40284876E-06 + -0.77139815E-06 -0.75312551E-06 -0.19541886E-06 0.10664302E-05 0.61932263E-06 + -0.33445153E-05 -0.50594122E-05 -0.51171000E-05 -0.79716482E-05 -0.10170885E-04 + -0.11694809E-04 -0.13993641E-04 -0.16218856E-04 -0.16908920E-04 -0.15788035E-04 + -0.13910269E-04 -0.12147146E-04 -0.10696043E-04 -0.89895240E-05 0.00000000E+00 + -0.13512121E-08 0.62998012E-07 -0.23702902E-06 0.10211034E-06 -0.31489916E-07 + -0.19851592E-06 0.10477145E-06 0.26348263E-06 0.26243709E-08 -0.65104767E-07 + 0.13596495E-07 -0.91169108E-07 -0.17034671E-06 -0.23456299E-06 -0.11049389E-06 + -0.10311270E-06 0.23213431E-07 0.49326609E-07 0.13877754E-06 0.20669997E-06 + 0.19851240E-06 0.25636311E-08 -0.14062683E-06 0.17140756E-07 -0.47417117E-07 + 0.33795651E-07 0.46231236E-07 0.17055880E-06 0.33950980E-06 -0.14396062E-06 + -0.42923397E-06 -0.14472450E-06 -0.79750393E-08 0.13817588E-06 0.16656229E-06 + 0.23291520E-06 0.24620483E-06 0.36996403E-06 0.89064855E-06 0.94319343E-06 + 0.13197817E-05 0.16869895E-05 0.19574011E-05 0.21630523E-05 0.23927813E-05 + 0.24945918E-05 0.24623781E-05 0.22783656E-05 0.19946426E-05 0.17624311E-05 + 0.15462901E-05 0.13173155E-05 0.00000000E+00 -0.30528794E-07 0.47220511E-07 + -0.27755928E-07 -0.13690010E-06 0.41900314E-06 -0.11908312E-06 -0.82316020E-07 + 0.31537592E-07 0.59034979E-07 -0.58080207E-08 -0.34516392E-07 -0.53382060E-07 + -0.38178887E-07 -0.68345130E-07 -0.64554440E-07 -0.33250388E-07 -0.39070502E-07 + -0.94184838E-08 0.26152109E-07 0.69597673E-07 0.48093745E-07 0.37828148E-07 + 0.45251606E-07 0.47759396E-09 -0.32065119E-07 0.31682827E-07 0.11383914E-07 + 0.38012276E-08 0.11155619E-07 0.18561557E-08 0.99594777E-09 0.57194187E-08 + 0.58673200E-08 0.75936590E-08 0.18027061E-07 0.12112347E-07 0.35832059E-07 + 0.32114588E-07 0.50662152E-07 0.20167732E-07 0.36697340E-07 0.58249103E-07 + 0.67971410E-07 0.80912447E-07 0.97726627E-07 0.14296608E-06 0.17938969E-06 + 0.17720330E-06 0.19730779E-06 0.21544659E-06 0.20625736E-06 0.18314669E-06 +Water_vapour + -0.14424745E-09 0.17468632E-08 0.62665922E-09 -0.35348991E-08 -0.31402236E-10 + 0.90880334E-08 0.49273674E-08 0.95142233E-09 -0.60363318E-07 -0.37859043E-07 + -0.13642839E-07 -0.71324480E-07 0.59177826E-07 0.13225550E-06 0.57919691E-07 + -0.29877951E-07 -0.15110092E-06 -0.40193301E-07 0.28742353E-07 -0.10879874E-06 + -0.26346343E-06 -0.13875628E-06 -0.81073987E-06 -0.25459487E-06 -0.88573502E-07 + 0.21596875E-07 0.75099078E-07 0.28502616E-07 0.18866127E-06 -0.46327351E-06 + -0.89545639E-07 -0.29160001E-08 0.53739083E-05 0.14279677E-04 0.21788800E-04 + 0.36952493E-04 0.46511830E-04 0.75289860E-04 0.97002876E-04 0.12812805E-03 + 0.14464146E-03 0.15829536E-03 0.19168423E-03 0.18012554E-03 0.19110137E-03 + 0.19844736E-03 0.20405268E-03 0.14076149E-03 0.76279617E-04 0.77054353E-04 + 0.10115348E-03 0.11195995E-03 0.66397776E-04 0.55899886E-06 0.37807684E-05 + 0.40394591E-05 0.26125850E-04 0.55300176E-04 0.64844772E-04 0.92640513E-04 + 0.14874606E-03 0.82065970E-04 -0.19123448E-04 -0.12550862E-03 -0.13488729E-03 + -0.17967917E-03 -0.16757041E-03 -0.99712484E-04 0.14227217E-03 -0.76083896E-04 + -0.39604739E-04 -0.30997870E-03 -0.30641021E-04 0.45504769E-03 0.25074357E-03 + 0.24464056E-04 0.71649489E-03 0.44204079E-03 0.47360465E-03 0.50959636E-03 + 0.59044837E-03 0.11605453E-02 -0.51301394E-03 0.31133570E-02 0.21489688E-02 + 0.49248932E-02 0.10739126E-01 0.88012724E-02 -0.17342234E-01 0.16034700E-01 + -0.39198073E-01 -0.14056381E+00 -0.24491545E+00 -0.37493889E+00 -0.62466617E+00 + -0.90303810E+00 -0.88562396E+00 -0.11465892E+01 -0.12103592E+01 -0.11500596E+01 + -0.15613807E+01 -0.18159344E+01 -0.17446924E+01 -0.12883480E+01 -0.10380337E+01 + -0.76416414E+00 0.32010697E-07 0.44615754E-06 0.38819371E-06 -0.20385645E-05 + -0.12574946E-06 0.93312111E-05 0.12432533E-04 0.45149862E-05 -0.55375798E-04 + -0.75715536E-04 -0.12456813E-03 -0.13323686E-03 -0.12857189E-03 -0.10870596E-03 + -0.10704530E-03 -0.13190939E-03 -0.12769440E-03 0.19655056E-04 0.87796638E-04 + 0.47174664E-04 -0.12588678E-03 -0.75988263E-04 -0.23531688E-03 -0.14049329E-03 + -0.59315334E-04 0.58734415E-04 0.98918747E-04 0.78367786E-04 0.20594789E-03 + 0.61509768E-04 0.30378093E-03 0.23678081E-03 0.26208304E-03 0.62911358E-03 + 0.31912836E-03 0.48542964E-03 0.75757502E-03 -0.76210868E-03 0.20468282E-02 + 0.88492844E-03 0.94074757E-02 0.41255592E-02 0.58602630E-02 0.15018985E-01 + 0.17179958E-01 0.19067914E-01 0.29074252E-01 0.31426910E-01 0.19176145E-01 + 0.29762950E-01 0.22910359E-01 0.18137664E-01 0.13448010E-01 -0.74619818E-09 + 0.12423116E-09 0.69300535E-08 -0.12076812E-07 0.89190528E-08 0.80445404E-07 + 0.54191114E-07 -0.19817811E-06 0.18153426E-06 0.55352864E-06 0.24652358E-06 + 0.27543227E-06 0.80999034E-07 -0.24527823E-06 -0.33024247E-06 -0.13355583E-06 + 0.73519070E-06 0.52619490E-06 0.63262492E-06 -0.31285890E-06 -0.92848831E-06 + -0.55180990E-06 -0.33158408E-06 0.17437640E-06 0.92032232E-08 -0.82253867E-08 + 0.79927059E-07 -0.27828191E-08 0.17684498E-05 0.25527853E-05 0.14363616E-04 + 0.30655796E-04 0.69809709E-04 0.10438664E-03 0.11628422E-03 0.13770527E-03 + 0.10440801E-03 0.11061079E-03 0.10603855E-03 0.14518083E-04 0.41605487E-04 + -0.88718290E-06 -0.53231965E-05 -0.12721058E-03 -0.61901553E-04 -0.28727193E-04 + 0.13159058E-06 -0.12657372E-03 -0.92475780E-04 -0.57886504E-04 -0.33211670E-04 + -0.33175992E-05 -0.20260581E-04 0.00000000E+00 0.00000000E+00 -0.64948883E-08 + 0.69714949E-08 -0.17981918E-07 0.41404049E-07 -0.24396475E-08 -0.22177039E-07 + 0.43568837E-07 0.74219848E-07 0.10854474E-06 0.12648514E-07 0.97517915E-08 + 0.12189457E-07 0.11024332E-07 0.55781139E-07 0.11653012E-06 0.71215813E-07 + 0.98855763E-07 0.15720758E-07 -0.38884603E-07 -0.19805595E-07 -0.10157178E-07 + 0.10433363E-07 0.37150478E-08 0.12735786E-08 0.12062404E-07 0.20910995E-07 + 0.56928043E-07 -0.19167483E-06 -0.84668028E-07 -0.97993389E-07 0.76402617E-06 + 0.26648679E-05 0.43509992E-05 0.12421534E-04 0.24628797E-04 0.46367958E-04 + 0.85132433E-04 0.12587147E-03 0.19091594E-03 0.24735540E-03 0.32596804E-03 + 0.35898685E-03 0.41762724E-03 0.46750638E-03 0.47167928E-03 0.41118559E-03 + 0.37564684E-03 0.34250261E-03 0.31738182E-03 0.27138883E-03 0.19739638E-03 + 0.00000000E+00 -0.54559750E-08 0.62361552E-08 -0.45618916E-08 0.16568931E-07 + -0.72470947E-09 0.84765998E-08 -0.75216772E-08 0.59458090E-07 0.15592472E-06 + 0.71598378E-07 0.70930100E-07 0.38892645E-07 0.64051618E-09 0.40505274E-08 + 0.42093301E-07 0.19288402E-06 0.12057704E-06 0.14167326E-06 0.21378564E-07 + -0.51455343E-07 -0.34974118E-07 -0.27141183E-07 0.17317475E-07 0.41762001E-08 + 0.42546089E-08 0.24455191E-07 0.29659462E-07 0.71618694E-07 -0.45135955E-06 + -0.29292130E-06 0.74143153E-06 0.72653238E-05 0.18526053E-04 0.28796755E-04 + 0.44133466E-04 0.57464942E-04 0.79265017E-04 0.11054276E-03 0.12156290E-03 + 0.16009604E-03 0.18531370E-03 0.23282854E-03 0.23126616E-03 0.27541325E-03 + 0.30505685E-03 0.30148333E-03 0.23797222E-03 0.20941208E-03 0.19385533E-03 + 0.18529327E-03 0.16483387E-03 0.11616502E-03 0.38695184E-10 -0.19706933E-08 + 0.13159750E-07 -0.92093526E-08 0.13054406E-07 0.34029846E-07 0.43117425E-07 + -0.95257606E-07 0.21004432E-06 0.56851007E-06 0.25482264E-06 0.28584136E-06 + 0.14626762E-06 0.59826533E-08 -0.39692316E-07 0.18713950E-06 0.58754991E-06 + 0.42678222E-06 0.47908208E-06 0.75534310E-07 -0.19886611E-06 -0.15566878E-06 + -0.95469908E-07 0.54051397E-07 0.13160025E-07 0.87804475E-08 0.62835881E-07 + 0.45648902E-07 0.18600772E-06 -0.11184682E-05 0.11645651E-05 0.74279520E-05 + 0.33597867E-04 0.74285717E-04 0.10956309E-03 0.15099544E-03 0.17158652E-03 + 0.21708116E-03 0.26288849E-03 0.23299455E-03 0.27789778E-03 0.28230486E-03 + 0.31663327E-03 0.25298286E-03 0.31404113E-03 0.29707912E-03 0.25785813E-03 + 0.11099197E-03 0.47908795E-04 0.35259441E-04 0.35655761E-04 0.45505367E-04 + 0.14647864E-04 0.21218985E-09 0.38798400E-08 -0.41054054E-08 -0.22539891E-08 + 0.58031243E-07 0.85888891E-07 0.19624418E-06 -0.42685881E-06 0.65457278E-06 + 0.16361576E-05 0.83209473E-06 0.54262330E-06 -0.14477270E-07 -0.90350859E-06 + -0.10394309E-05 -0.45077849E-06 0.14227450E-05 0.11494775E-05 0.13129862E-05 + -0.37954313E-06 -0.16398972E-05 -0.98828580E-06 -0.50971660E-06 0.20029462E-06 + -0.69473029E-07 -0.70802836E-07 0.21825116E-07 -0.64895054E-06 -0.17090619E-06 + 0.71634261E-06 0.29188522E-04 0.74050933E-04 0.12755045E-03 0.13569023E-03 + 0.11111393E-03 0.10997703E-03 0.51350940E-04 0.69920656E-04 0.10753275E-03 + 0.13109868E-04 0.12012225E-03 0.90358930E-04 0.82445461E-04 -0.10846772E-03 + 0.15879065E-05 0.10161770E-03 0.18049018E-03 0.88874036E-05 0.13147607E-03 + 0.23135775E-03 0.26762840E-03 0.28114422E-03 0.22276733E-03 -0.53838407E-09 + -0.32644922E-09 0.13730326E-08 -0.17912902E-07 -0.52248486E-07 -0.17401224E-07 + -0.62589180E-07 -0.71081938E-07 -0.73161428E-07 -0.73178063E-07 -0.98752060E-07 + -0.16297590E-06 -0.19275503E-06 -0.26872966E-06 -0.40817733E-06 -0.74775079E-06 + -0.99702804E-06 -0.13687897E-05 -0.16335467E-05 -0.19846853E-05 -0.21242358E-05 + -0.23731549E-05 -0.50591967E-05 -0.15956846E-05 -0.71755704E-06 -0.44641646E-06 + -0.15934226E-05 0.28187735E-05 0.87218365E-05 -0.80685121E-05 0.57685746E-04 + -0.12565557E-03 -0.27555666E-04 0.38013782E-04 0.13416993E-03 -0.77163148E-04 + 0.96464832E-04 -0.14799020E-04 -0.25956265E-04 0.74342821E-04 -0.14198337E-04 + -0.14374438E-03 -0.25661804E-04 0.10020063E-03 0.36748913E-03 0.50888092E-03 + 0.31816997E-03 0.55671404E-03 0.68390586E-03 0.34744580E-03 0.17100424E-03 + -0.62955828E-04 -0.59221067E-04 -0.58196742E-05 0.59636055E-04 0.11696296E-03 + 0.24460583E-03 0.50555750E-03 0.93663857E-03 0.10738895E-02 0.11088582E-02 + 0.95998130E-03 0.89531260E-03 0.59382537E-03 0.43491010E-03 0.27745516E-03 + 0.39482391E-03 0.65256001E-03 0.11785438E-02 0.18590836E-02 0.28118835E-02 + 0.38071141E-02 0.42141467E-02 0.51940872E-02 0.55956565E-02 0.51777554E-02 + 0.55362634E-02 0.15416938E-02 -0.35701779E-03 0.59582930E-02 0.20311927E-01 + 0.44303213E-01 0.39960562E-01 0.78728510E-01 -0.62594186E-01 -0.18813120E-01 + 0.28119355E-01 0.12557443E+00 0.99205698E-01 0.59735825E-01 0.17857227E-01 + -0.76329254E-02 0.16951867E+00 0.36101321E-01 0.10004563E+00 -0.14155804E+00 + 0.46506049E-01 0.43640353E+00 0.43940020E+00 0.56873478E+00 0.57676136E+00 + 0.37027101E+00 0.41368865E+00 0.38435395E+00 0.33733832E+00 0.28014051E+00 + 0.13759532E-05 -0.13503044E-05 -0.54087715E-05 -0.25514435E-04 -0.52347892E-04 + -0.77317023E-04 -0.85695848E-04 -0.11974997E-03 -0.81882677E-04 -0.10498202E-03 + -0.11298281E-03 -0.20795421E-03 -0.35416695E-03 -0.45526263E-03 -0.47747584E-03 + -0.56242052E-03 -0.58932386E-03 -0.65021865E-03 -0.75316100E-03 -0.79734599E-03 + -0.86305930E-03 -0.10280284E-02 -0.18942820E-02 -0.88597357E-03 -0.49950277E-03 + -0.29033623E-03 -0.21752165E-03 0.11554605E-02 0.65251425E-02 0.71580009E-03 + 0.12153230E-01 -0.13003860E-01 0.61536099E-02 0.19541079E-01 0.53645130E-01 + 0.15287920E-01 0.17529575E-01 0.16396042E-01 0.25211542E-01 0.42397748E-01 + 0.32531112E-01 0.44796655E-01 0.19809252E-01 0.35154192E-01 0.46631760E-01 + 0.56763019E-01 0.43290983E-01 0.62166266E-01 0.53089879E-01 0.41631764E-01 + 0.27615475E-01 0.19128812E-01 0.14790537E-01 0.10645496E-07 -0.51323168E-08 + -0.13690395E-07 -0.17597310E-06 -0.19297184E-06 -0.47663027E-06 -0.56311377E-06 + -0.10043085E-05 -0.15144939E-05 -0.24893710E-05 -0.22209094E-05 -0.13080102E-05 + -0.10108942E-05 -0.10006507E-05 -0.10640480E-05 -0.98453847E-06 -0.39375619E-06 + -0.17928734E-05 -0.28499219E-05 -0.24964677E-05 -0.24001327E-05 -0.17347028E-05 + -0.19487836E-05 0.49394471E-06 -0.22615794E-06 -0.13593675E-05 -0.96331859E-06 + 0.28040259E-04 0.75763837E-04 0.33730182E-04 0.58316834E-03 -0.29976088E-03 + 0.49716890E-03 0.11057907E-02 0.23943650E-02 0.11593292E-02 0.17947206E-02 + 0.19019789E-02 0.29247770E-02 0.32186312E-02 0.25076799E-02 0.24335062E-02 + 0.32728724E-02 0.24001064E-02 0.26745400E-02 0.28408453E-02 0.26033351E-02 + 0.26767865E-02 0.32418590E-02 0.28498642E-02 0.25366671E-02 0.20134805E-02 + 0.17464743E-02 0.00000000E+00 0.00000000E+00 -0.34122236E-07 0.16403912E-07 + -0.69539262E-07 -0.45824625E-07 -0.93249423E-07 -0.15840905E-06 -0.21884762E-06 + -0.35275886E-06 -0.25846481E-06 -0.13365905E-06 -0.77513841E-07 -0.49203042E-07 + -0.40887203E-07 -0.23275516E-07 0.25337074E-07 -0.88522902E-07 -0.17771160E-06 + -0.13480825E-06 -0.14545498E-06 -0.99220336E-07 -0.50719509E-07 0.43299012E-07 + 0.14552317E-07 -0.46025830E-07 -0.34521740E-07 0.12475270E-05 0.38542679E-05 + -0.10901232E-05 0.49194351E-04 -0.14881798E-04 0.24596859E-04 0.77253081E-04 + 0.21115380E-03 -0.16632024E-04 0.68490075E-04 -0.89918639E-04 0.10713350E-03 + 0.91228395E-04 0.30491592E-03 0.22173018E-03 0.61251374E-03 0.70537178E-03 + 0.10247850E-02 0.13433345E-02 0.14132094E-02 0.15061533E-02 0.19871619E-02 + 0.17163455E-02 0.14797979E-02 0.12321356E-02 0.10333343E-02 0.00000000E+00 + -0.19145793E-07 0.16040329E-07 -0.36758469E-07 -0.32994931E-07 -0.10517733E-06 + -0.14559556E-06 -0.25982771E-06 -0.38381628E-06 -0.52332112E-06 -0.44540510E-06 + -0.20772704E-06 -0.11415853E-06 -0.10324758E-06 -0.57865040E-07 -0.41076001E-07 + 0.45678080E-07 -0.16551703E-06 -0.28019203E-06 -0.23697915E-06 -0.20913626E-06 + -0.17320731E-06 -0.13164478E-06 0.67323194E-07 0.10453855E-07 -0.85438629E-07 + -0.43850766E-07 0.25174293E-05 0.72849311E-05 -0.49565475E-05 0.71459403E-04 + -0.49663690E-04 0.45287932E-04 0.14840788E-03 0.33790836E-03 0.86580886E-04 + 0.27331580E-03 0.16874761E-03 0.53371266E-03 0.57725641E-03 0.61459221E-03 + 0.55454583E-03 0.98541924E-03 0.90679822E-03 0.11512826E-02 0.13948433E-02 + 0.14107936E-02 0.14832827E-02 0.19229922E-02 0.16595902E-02 0.14760980E-02 + 0.12300758E-02 0.10525327E-02 0.10821422E-07 -0.20358330E-07 0.36843726E-07 + -0.10394446E-06 -0.13366885E-06 -0.39645560E-06 -0.55039543E-06 -0.95472819E-06 + -0.13865932E-05 -0.19670933E-05 -0.15988855E-05 -0.76064897E-06 -0.47690296E-06 + -0.31348424E-06 -0.28177605E-06 -0.15822192E-06 0.78766849E-07 -0.59958271E-06 + -0.10388797E-05 -0.88177508E-06 -0.80006234E-06 -0.61674019E-06 -0.49551313E-06 + 0.20250402E-06 0.28860351E-07 -0.32417677E-06 -0.21863494E-06 0.84777474E-05 + 0.24224829E-04 -0.18256830E-04 0.20993333E-03 -0.19585418E-03 0.18140949E-03 + 0.51682900E-03 0.10812465E-02 0.48392012E-03 0.10232009E-02 0.10581467E-02 + 0.21558192E-02 0.24047497E-02 0.20187223E-02 0.21952464E-02 0.31888879E-02 + 0.28586434E-02 0.30111555E-02 0.33383516E-02 0.31743416E-02 0.30344187E-02 + 0.37250186E-02 0.30507401E-02 0.26658882E-02 0.21103080E-02 0.17434552E-02 + 0.10692655E-07 -0.28916152E-07 -0.10279085E-06 -0.26883963E-06 -0.48900201E-06 + -0.13446661E-05 -0.18112528E-05 -0.31438595E-05 -0.46685559E-05 -0.68975638E-05 + -0.57147175E-05 -0.29136879E-05 -0.20225460E-05 -0.17766455E-05 -0.16872860E-05 + -0.14889279E-05 -0.19869328E-06 -0.26406490E-05 -0.44211020E-05 -0.39561074E-05 + -0.38618088E-05 -0.29772749E-05 -0.25078003E-05 0.70714950E-06 -0.22979159E-06 + -0.16835781E-05 -0.98241274E-06 0.36327559E-04 0.10635141E-03 0.50808807E-05 + 0.11633533E-02 -0.17996280E-03 0.11364670E-02 0.20647901E-02 0.43150254E-02 + 0.21837167E-02 0.26791448E-02 0.30387270E-02 0.45477184E-02 0.48082664E-02 + 0.43367065E-02 0.42008803E-02 0.56913397E-02 0.43226830E-02 0.44825998E-02 + 0.46997414E-02 0.43322984E-02 0.44733011E-02 0.54697698E-02 0.48203012E-02 + 0.43317647E-02 0.35113417E-02 0.29569959E-02 -0.14421432E-09 -0.13815580E-09 + -0.20879131E-08 0.17852006E-08 0.31882602E-08 -0.11086577E-07 -0.40766070E-08 + -0.57924250E-08 -0.16504135E-07 -0.20347356E-07 -0.20193924E-07 -0.14701741E-07 + -0.66850889E-08 -0.18624207E-07 0.13050727E-08 0.61263882E-07 0.96918890E-07 + 0.15683619E-06 0.21299178E-06 0.24901721E-06 0.22641216E-06 0.16309692E-06 + 0.90548708E-06 0.26301793E-06 -0.33075086E-07 -0.68097743E-07 -0.18485449E-06 + 0.46672265E-08 -0.18144069E-06 0.43666491E-06 0.66730251E-06 0.20698980E-05 + 0.25957468E-05 0.33555851E-05 0.43086948E-05 0.96417935E-05 0.52731255E-05 + 0.22436290E-05 0.49403872E-05 0.86072480E-05 0.16453280E-04 0.21178929E-04 + 0.87633888E-05 0.22083417E-04 0.18186513E-05 -0.77941819E-05 -0.15478925E-05 + -0.54055574E-05 0.27018868E-05 0.16548272E-04 -0.15525086E-04 -0.68845699E-05 + -0.72790528E-05 0.55907439E-06 -0.17330493E-05 0.77043325E-05 0.42299260E-05 + -0.11587109E-04 -0.84559731E-04 -0.12482756E-03 -0.14585875E-03 -0.14711514E-03 + -0.16244764E-03 -0.10590334E-03 -0.70757988E-04 -0.74035269E-05 0.23590271E-04 + 0.24077226E-04 -0.41961232E-04 -0.13519533E-03 -0.33769922E-03 -0.52704891E-03 + -0.57499674E-03 -0.70077787E-03 -0.66548061E-03 -0.38361389E-03 -0.63804276E-03 + -0.94199767E-03 -0.47834344E-03 -0.70496911E-03 -0.31303515E-03 -0.11574281E-02 + -0.11906703E-03 -0.28101617E-02 -0.26946688E-03 -0.16212186E-02 -0.47179553E-02 + -0.14423969E-01 -0.20316135E-01 -0.56857556E-01 -0.52461144E-01 -0.10704582E+00 + -0.10633836E+00 -0.15203928E+00 -0.16069324E+00 -0.32164516E+00 -0.44861978E+00 + -0.66472766E+00 -0.66689575E+00 -0.74450891E+00 -0.57938240E+00 -0.62806178E+00 + -0.58579602E+00 -0.79477132E+00 -0.73201766E+00 -0.64455510E+00 0.32040055E-07 + -0.48024974E-06 -0.63619519E-06 0.25251314E-05 0.29037187E-05 -0.44955346E-05 + 0.47777865E-06 0.42191116E-05 -0.92078013E-05 -0.15156669E-04 -0.15659006E-04 + -0.19553314E-05 0.29640120E-04 0.51409592E-04 0.50552967E-04 0.63554371E-04 + 0.54547326E-04 0.63207185E-04 0.85810287E-04 0.87473718E-04 0.10281231E-03 + 0.11528859E-03 0.31452479E-03 0.14888598E-03 -0.39631310E-04 -0.12552521E-04 + -0.80866825E-04 0.21909259E-04 -0.17614930E-03 -0.27638252E-04 -0.21557395E-03 + -0.29681483E-03 -0.40765618E-03 -0.62896076E-03 -0.10175636E-02 -0.34031272E-03 + -0.17738333E-02 -0.10608054E-02 -0.17902902E-02 -0.23920715E-02 -0.24936752E-02 + -0.60802726E-02 -0.25307839E-02 -0.63645919E-02 -0.79421186E-02 -0.11113508E-01 + -0.12020118E-01 -0.16969342E-01 -0.75115148E-02 -0.22998275E-02 -0.36258849E-02 + -0.47693472E-02 -0.55272295E-02 -0.74612303E-09 -0.15905925E-08 -0.70974976E-08 + 0.27138877E-07 -0.32044350E-08 0.16886170E-07 0.34485341E-07 0.22622902E-07 + 0.15967192E-06 0.29053674E-06 0.28879864E-06 0.45742299E-07 -0.16146288E-06 + -0.33080457E-06 -0.44757482E-06 -0.49563284E-06 -0.63249118E-06 -0.52493241E-07 + 0.34482025E-06 0.17535969E-06 0.13782890E-06 0.61511133E-07 0.35974671E-06 + -0.13808716E-06 -0.32703401E-06 0.71536441E-07 -0.38211073E-06 0.71521641E-06 + 0.10181080E-05 0.53407516E-05 0.30635889E-05 0.97408899E-06 -0.10747263E-04 + -0.22954972E-04 -0.37816451E-04 -0.41470210E-04 -0.87563085E-04 -0.12546404E-03 + -0.17594283E-03 -0.16035352E-03 -0.18941196E-03 -0.20939504E-03 -0.19746929E-03 + -0.18273816E-03 -0.18406393E-03 -0.13770954E-03 -0.12935643E-03 -0.10842251E-03 + -0.12853341E-03 -0.11384263E-03 -0.90395051E-04 -0.70175062E-04 -0.56878164E-04 + 0.00000000E+00 0.00000000E+00 0.86768143E-08 -0.56704507E-08 0.13869505E-07 + -0.17828160E-09 0.78973858E-08 0.53362380E-08 0.20428300E-07 0.48410357E-07 + 0.34778837E-07 0.53848459E-08 -0.22183454E-07 -0.42847150E-07 -0.51432723E-07 + -0.58651778E-07 -0.65252956E-07 -0.15758303E-07 0.20723987E-07 0.47626823E-08 + 0.28922999E-08 0.21378139E-09 0.92694084E-08 -0.11782604E-07 -0.13255454E-07 + -0.59946105E-08 -0.32703516E-07 -0.19422966E-07 -0.49996305E-07 0.18548301E-06 + 0.68600493E-07 0.50616459E-06 0.69057679E-06 0.15472544E-05 0.28506357E-05 + 0.93822217E-05 0.97098828E-05 0.18231917E-04 0.23414716E-04 0.35802186E-04 + 0.29349269E-04 0.25341103E-04 0.82518922E-05 -0.55819917E-05 -0.33648694E-04 + -0.50247740E-04 -0.67148949E-04 -0.73646595E-04 -0.84055605E-04 -0.73404870E-04 + -0.63755857E-04 -0.58440831E-04 -0.49514136E-04 0.00000000E+00 0.42896412E-08 + -0.64393322E-08 0.60232983E-08 0.13931063E-08 0.66097442E-08 0.92478252E-08 + 0.82607771E-08 0.43243413E-07 0.63190234E-07 0.62477001E-07 0.51174781E-08 + -0.36188416E-07 -0.60694303E-07 -0.85837368E-07 -0.90178887E-07 -0.10501623E-06 + -0.19110589E-07 0.31577635E-07 0.10840028E-07 0.34121303E-09 0.39731616E-08 + 0.25238033E-07 -0.16815365E-07 -0.28788309E-07 -0.12015477E-07 -0.66577627E-07 + -0.26463856E-07 -0.49514678E-07 0.56944421E-06 0.92623875E-06 0.22201863E-05 + 0.19549737E-05 0.95866300E-06 -0.37120816E-06 0.38610579E-05 -0.39348044E-05 + -0.58042293E-05 -0.17415764E-04 -0.90726472E-05 -0.17194065E-04 -0.24152541E-04 + -0.38477943E-04 -0.42414637E-04 -0.58566036E-04 -0.61066334E-04 -0.67482859E-04 + -0.64156287E-04 -0.72829692E-04 -0.61286786E-04 -0.50765594E-04 -0.45692785E-04 + -0.39656910E-04 0.37886363E-10 0.26364596E-08 -0.10961024E-07 0.14869076E-07 + 0.16612007E-08 0.32696162E-07 0.36723362E-07 0.32906920E-07 0.15054931E-06 + 0.24329468E-06 0.21896069E-06 0.20545421E-07 -0.11643373E-06 -0.23780949E-06 + -0.29293538E-06 -0.32458303E-06 -0.36135195E-06 -0.68337378E-07 0.11573421E-06 + 0.44877520E-07 0.10558588E-07 0.12363698E-07 0.91399316E-07 -0.55174869E-07 + -0.99234495E-07 -0.27608613E-07 -0.19663726E-06 -0.26209123E-08 0.77485529E-07 + 0.24375796E-05 0.35467400E-05 0.68275724E-05 0.42358611E-05 -0.18185106E-05 + -0.10165625E-04 -0.87708989E-05 -0.41864898E-04 -0.69914538E-04 -0.12286311E-03 + -0.11810275E-03 -0.15049164E-03 -0.18432380E-03 -0.21654608E-03 -0.22765126E-03 + -0.23859610E-03 -0.23059015E-03 -0.22527463E-03 -0.19804598E-03 -0.21333900E-03 + -0.17714458E-03 -0.14035028E-03 -0.11117341E-03 -0.88396321E-04 0.21204480E-09 + -0.16459766E-08 0.25616449E-08 0.24876154E-07 0.12446089E-07 0.84434882E-07 + 0.12628601E-06 0.97392370E-07 0.50757419E-06 0.84863810E-06 0.77669739E-06 + 0.10170927E-06 -0.38221010E-06 -0.74573216E-06 -0.98708389E-06 -0.10733364E-05 + -0.13082524E-05 -0.20206858E-06 0.50523003E-06 0.20536173E-06 0.12679844E-06 + 0.95121495E-07 0.44058818E-06 -0.21311154E-06 -0.33679546E-06 0.21463295E-06 + -0.38666210E-06 0.12681437E-05 0.30668009E-05 0.13879328E-04 0.10415165E-04 + -0.47668096E-05 -0.34110348E-04 -0.49369065E-04 -0.69653502E-04 -0.74105106E-04 + -0.12577482E-03 -0.16876186E-03 -0.22139184E-03 -0.20367475E-03 -0.27271968E-03 + -0.30339802E-03 -0.28875947E-03 -0.30693690E-03 -0.29538353E-03 -0.21150545E-03 + -0.20092508E-03 -0.17802801E-03 -0.22095734E-03 -0.17821600E-03 -0.14261195E-03 + -0.12098592E-03 -0.97903471E-04 0.57092908E-11 -0.18898934E-10 -0.91394089E-10 + -0.10159723E-10 -0.11359240E-09 -0.61200360E-09 -0.56797401E-09 -0.66062464E-09 + -0.69396596E-09 -0.10150588E-08 -0.10072994E-08 -0.80609139E-09 -0.10442531E-08 + -0.19134845E-08 -0.16265373E-08 -0.13641821E-08 -0.11296330E-08 -0.13484862E-09 + 0.15001705E-08 0.20441452E-08 0.34753784E-09 -0.69098420E-08 0.10594492E-07 + -0.52543562E-09 -0.91424393E-08 0.11023663E-07 -0.32619594E-07 -0.31140354E-07 + -0.11776592E-06 0.34337921E-07 0.22681747E-06 -0.20327892E-06 0.70038049E-06 + -0.36050873E-06 0.12947785E-05 -0.43630447E-05 -0.18773250E-05 -0.18283128E-05 + -0.18548244E-05 0.32409722E-05 0.66500672E-05 0.27964755E-04 0.33147900E-04 + 0.48760155E-04 0.66066147E-04 0.76665698E-04 0.68547612E-04 0.70897984E-04 + 0.63179586E-04 0.54364117E-04 0.54281672E-04 0.44622245E-04 0.36049078E-04 + -0.47472237E-07 -0.21791819E-07 -0.69205880E-07 -0.64994450E-06 -0.62138228E-06 + -0.62339213E-06 -0.61297442E-06 -0.25583108E-06 -0.16503837E-06 -0.11512020E-06 + 0.96317777E-06 0.90693057E-06 0.18575882E-05 0.24235017E-05 0.27767934E-05 + 0.22374683E-05 0.12083743E-05 -0.52055852E-05 -0.11124589E-04 -0.13468981E-04 + -0.14027178E-04 -0.90012885E-05 -0.42264151E-05 -0.76242367E-05 -0.57953539E-04 + 0.72616455E-04 -0.73448244E-04 -0.23189776E-03 -0.32335894E-03 0.90965107E-03 + -0.55488582E-03 -0.14195814E-03 0.17780586E-03 0.43602088E-03 -0.10233326E-03 + 0.44752620E-02 0.21676378E-02 0.15359644E-02 -0.88606683E-04 -0.39465494E-03 + -0.28996454E-02 -0.20210039E-02 -0.51697298E-02 -0.46055580E-02 -0.34195212E-02 + -0.65211234E-02 -0.85890297E-02 -0.76382394E-02 -0.51353423E-02 -0.19091096E-02 + -0.22932119E-02 -0.21391723E-02 -0.16410850E-02 -0.30336393E-07 -0.64531334E-07 + -0.12953756E-06 -0.18177760E-06 -0.44307939E-06 -0.10288926E-05 -0.92124422E-06 + -0.80773374E-06 -0.62052893E-06 -0.54956631E-06 -0.92978450E-07 0.29483737E-06 + 0.75462747E-06 0.10412074E-05 0.74858667E-06 0.55676569E-06 -0.29476980E-06 + -0.37763323E-06 0.14343267E-06 -0.15198465E-06 -0.81997235E-07 -0.83942547E-06 + 0.24199365E-05 -0.75220682E-06 -0.90808098E-05 -0.45505988E-05 -0.35651343E-04 + -0.43447092E-04 -0.71659269E-04 0.40163437E-04 -0.14373157E-04 -0.74941121E-04 + 0.73538488E-04 -0.12665016E-03 0.40529374E-05 -0.27349976E-03 -0.41548714E-03 + -0.39045653E-03 -0.36145934E-03 -0.81035801E-04 -0.69982965E-03 -0.44085414E-03 + -0.84341323E-03 -0.92910262E-03 -0.12404944E-02 -0.78395843E-03 -0.83759014E-03 + 0.68862328E-04 -0.12127335E-02 -0.15024327E-02 -0.12308378E-02 -0.10273389E-02 + -0.70140874E-03 -0.13838475E-09 -0.20588145E-09 -0.63909699E-09 -0.37818858E-09 + -0.28659096E-08 -0.48442606E-08 -0.60028717E-08 -0.10632528E-07 -0.11691619E-07 + -0.15959109E-07 -0.16752853E-07 -0.23162559E-07 -0.32539470E-07 -0.40077270E-07 + -0.46632216E-07 -0.46756957E-07 -0.58232467E-07 -0.39401419E-07 -0.27079802E-07 + -0.38636776E-07 -0.47759504E-07 -0.53268011E-07 -0.48310888E-07 -0.68037696E-07 + -0.11903993E-06 -0.10833440E-06 -0.55650810E-06 -0.14706964E-05 -0.42445344E-05 + -0.67363338E-05 -0.92357653E-05 -0.15074201E-04 -0.18667692E-04 -0.20496386E-04 + 0.67016054E-06 -0.16871777E-04 0.93219926E-05 0.46173650E-05 0.57703682E-06 + 0.83081909E-05 0.22062598E-04 -0.43337932E-05 -0.10408860E-04 0.10480742E-04 + -0.13273840E-04 -0.20439426E-04 -0.37731195E-04 -0.27351414E-04 -0.27787063E-04 + -0.36437328E-04 -0.33315264E-04 -0.30698413E-04 -0.23993172E-04 0.00000000E+00 + 0.00000000E+00 0.22271437E-09 -0.25125605E-09 0.22920977E-09 -0.37186156E-09 + -0.58131081E-09 -0.10127031E-08 -0.10444670E-08 -0.12324990E-08 -0.14375053E-08 + -0.18059642E-08 -0.27812070E-08 -0.33421150E-08 -0.36813140E-08 -0.35838405E-08 + -0.41947956E-08 -0.24386576E-08 -0.10508000E-08 -0.18061042E-08 -0.24842999E-08 + -0.25741904E-08 -0.21462244E-08 -0.29225882E-08 -0.48915156E-08 -0.45606982E-08 + -0.26345413E-07 -0.71280876E-07 -0.17251632E-06 -0.35333864E-06 -0.53599811E-06 + -0.12490953E-05 -0.30850249E-05 -0.60025109E-05 -0.82137850E-05 -0.17998552E-04 + -0.25214995E-04 -0.39414333E-04 -0.46669005E-04 -0.53479739E-04 -0.52703747E-04 + -0.50639394E-04 -0.46340815E-04 -0.32679848E-04 -0.30712585E-04 -0.29156386E-04 + -0.21763660E-04 -0.88398350E-05 -0.51844683E-05 -0.64953180E-05 -0.56527978E-05 + -0.42315472E-05 -0.21298609E-05 0.00000000E+00 0.91343874E-10 -0.23504336E-09 + 0.56969418E-10 -0.25240268E-09 -0.66247976E-09 -0.92168618E-09 -0.16268265E-08 + -0.16418958E-08 -0.22145552E-08 -0.20825175E-08 -0.31757170E-08 -0.44596803E-08 + -0.52545353E-08 -0.60906612E-08 -0.58424327E-08 -0.69272401E-08 -0.40075623E-08 + -0.21252394E-08 -0.32840687E-08 -0.43942865E-08 -0.45236485E-08 -0.38412536E-08 + -0.53209779E-08 -0.91828266E-08 -0.81116895E-08 -0.47544671E-07 -0.12621311E-06 + -0.32461191E-06 -0.66623762E-06 -0.11335430E-05 -0.27768097E-05 -0.64511678E-05 + -0.10747006E-04 -0.12027602E-04 -0.21939723E-04 -0.25504206E-04 -0.34376136E-04 + -0.37516908E-04 -0.40566728E-04 -0.34710127E-04 -0.36472768E-04 -0.34701738E-04 + -0.22113852E-04 -0.24956461E-04 -0.26363419E-04 -0.23635424E-04 -0.14362591E-04 + -0.12905568E-04 -0.16657844E-04 -0.15802649E-04 -0.13713620E-04 -0.10169052E-04 + -0.12908045E-09 0.63601097E-10 -0.39726405E-09 -0.16572897E-09 -0.12584915E-08 + -0.21044700E-08 -0.32652521E-08 -0.60047845E-08 -0.61456891E-08 -0.78922729E-08 + -0.77553013E-08 -0.11078902E-07 -0.15784594E-07 -0.19377070E-07 -0.21495018E-07 + -0.20785757E-07 -0.24396309E-07 -0.14163374E-07 -0.74049857E-08 -0.11486693E-07 + -0.15302242E-07 -0.16153899E-07 -0.13494140E-07 -0.18803024E-07 -0.32556784E-07 + -0.28678175E-07 -0.16792404E-06 -0.45336980E-06 -0.12715799E-05 -0.26352535E-05 + -0.46417526E-05 -0.10490426E-04 -0.21681255E-04 -0.32256312E-04 -0.31096658E-04 + -0.51722292E-04 -0.47135154E-04 -0.46676664E-04 -0.39314494E-04 -0.25210535E-04 + -0.25338103E-05 -0.14957117E-05 0.12411423E-04 0.42304395E-04 0.32843993E-04 + 0.34754376E-04 0.26582618E-04 0.31144352E-04 0.27654319E-04 0.10683374E-04 + 0.60967935E-05 0.19587130E-05 0.16391563E-05 -0.16272503E-09 -0.24769509E-09 + -0.61876086E-09 -0.13552237E-08 -0.49613293E-08 -0.95090521E-08 -0.12361241E-07 + -0.23227102E-07 -0.24155348E-07 -0.31301431E-07 -0.30504392E-07 -0.42870326E-07 + -0.59958028E-07 -0.72485516E-07 -0.83249591E-07 -0.81447076E-07 -0.98618593E-07 + -0.57518963E-07 -0.29571586E-07 -0.45719403E-07 -0.59801382E-07 -0.63999442E-07 + -0.56018128E-07 -0.82686395E-07 -0.14211932E-06 -0.14103154E-06 -0.78828564E-06 + -0.22589886E-05 -0.76793806E-05 -0.14835909E-04 -0.22368781E-04 -0.33826374E-04 + -0.33655295E-04 -0.23718476E-04 0.15463381E-04 -0.67392250E-05 0.21284156E-04 + -0.11010953E-04 -0.25592876E-04 -0.15901070E-04 0.26686055E-05 -0.36509065E-04 + -0.29809210E-04 -0.76459331E-05 -0.54354300E-04 -0.63043558E-04 -0.76535454E-04 + -0.46353727E-04 -0.42792047E-04 -0.55797389E-04 -0.52512250E-04 -0.47230971E-04 + -0.34695737E-04 0.10603758E-09 0.14890595E-07 -0.25257400E-07 0.22776173E-08 + 0.37090473E-07 -0.11987968E-06 -0.50775692E-07 -0.14460946E-06 -0.91112753E-06 + -0.72698890E-06 -0.38807042E-06 -0.66983268E-06 0.67094175E-06 0.12839418E-05 + 0.99635900E-06 0.98615547E-06 0.62143420E-06 0.35130632E-05 0.62759209E-05 + 0.72117070E-05 0.54112667E-05 0.34400814E-05 0.16908340E-04 0.50614797E-05 + -0.55313581E-06 0.86289337E-06 -0.25931315E-05 0.20647382E-05 -0.16781209E-04 + 0.14905374E-04 0.26557108E-04 -0.73228858E-05 -0.49283614E-04 -0.21648862E-03 + -0.13251248E-03 -0.56345485E-03 -0.92332851E-03 -0.15490575E-02 -0.20019415E-02 + -0.21537055E-02 -0.27566412E-02 -0.24102308E-02 -0.29239512E-02 -0.27142931E-02 + -0.21775424E-02 -0.22321566E-02 -0.24019543E-02 -0.24560994E-02 -0.28190851E-02 + -0.31678289E-02 -0.28081879E-02 -0.21001604E-02 -0.18697439E-02 -0.24336579E-04 + -0.20324449E-04 -0.49526293E-04 -0.25099991E-03 -0.56493495E-03 -0.13149771E-02 + -0.12134855E-02 -0.64839511E-03 -0.13937950E-02 -0.24872930E-02 -0.23467367E-02 + -0.22384567E-02 -0.19020296E-02 -0.18316082E-02 -0.16062826E-02 -0.37096274E-03 + -0.56978890E-02 -0.10611770E-01 -0.19583609E-01 -0.19902815E-01 -0.21120776E-01 + -0.21666287E-01 -0.17154637E-01 -0.15296510E-01 -0.12406511E-01 -0.14535355E-01 + -0.59250196E-01 -0.48105484E-01 -0.11610276E+00 -0.38648823E-01 -0.10464291E+00 + -0.12149447E+00 -0.11181684E+00 -0.25487118E+00 -0.44951035E+00 -0.36337238E+00 + -0.52538826E+00 -0.51914804E+00 -0.54644783E+00 -0.51681310E+00 -0.62540158E+00 + -0.66128642E+00 -0.48314832E+00 -0.52701219E+00 -0.67030550E+00 -0.61241712E+00 + -0.53554506E+00 -0.44221501E+00 -0.34987779E+00 -0.26721711E+00 -0.23606988E+00 + -0.18167396E+00 -0.13516734E+00 -0.14587490E-05 -0.27267921E-05 -0.15384162E-05 + 0.23651475E-04 0.23867141E-04 -0.64713974E-04 -0.30596336E-04 -0.20757454E-03 + -0.99009367E-03 -0.11308721E-02 -0.14455255E-02 -0.12651572E-02 -0.72380905E-03 + -0.14926601E-03 -0.21662794E-03 -0.36328829E-03 -0.44079027E-03 0.16714860E-02 + 0.31566497E-02 0.29772019E-02 0.15571724E-02 0.23782208E-02 0.61763210E-02 + 0.20029861E-02 -0.12460019E-02 -0.76341396E-03 -0.65079660E-02 -0.52637517E-02 + -0.26667471E-01 -0.18267549E-01 -0.29503578E-01 -0.54275753E-01 -0.47195790E-01 + -0.83441083E-01 -0.93102185E-01 -0.96116658E-01 -0.12512410E+00 -0.13378106E+00 + -0.11710374E+00 -0.16583975E+00 -0.17027200E+00 -0.20042049E+00 -0.17082863E+00 + -0.20986516E+00 -0.22553069E+00 -0.20320571E+00 -0.19482412E+00 -0.20611932E+00 + -0.17337643E+00 -0.14227309E+00 -0.12178747E+00 -0.10283824E+00 -0.80736395E-01 + -0.62228677E-08 -0.31694973E-07 -0.33595298E-07 0.34269864E-06 0.15121359E-07 + 0.99501914E-06 0.12321491E-05 -0.16687714E-05 0.42815263E-05 0.98259034E-05 + 0.73115965E-05 0.30971995E-05 -0.31664237E-05 -0.97237751E-05 -0.13578482E-04 + -0.12358328E-04 -0.74726803E-05 0.24808224E-05 0.17324454E-04 0.61283326E-05 + -0.29096138E-05 -0.83311705E-06 0.87025250E-05 -0.69884270E-06 -0.48685082E-05 + 0.22462138E-05 -0.22931318E-04 -0.76224697E-05 -0.11758429E-03 -0.10552974E-03 + -0.49153078E-03 -0.11003858E-02 -0.19748778E-02 -0.34046125E-02 -0.39216355E-02 + -0.70825947E-02 -0.80729481E-02 -0.10630999E-01 -0.12584363E-01 -0.14724906E-01 + -0.12256681E-01 -0.14434192E-01 -0.14628153E-01 -0.13243652E-01 -0.12069791E-01 + -0.10956467E-01 -0.10647379E-01 -0.10739881E-01 -0.99124268E-02 -0.97290325E-02 + -0.80755923E-02 -0.64807114E-02 -0.51729758E-02 0.00000000E+00 0.00000000E+00 + 0.89902323E-07 -0.49059886E-07 0.85698303E-07 0.41507683E-06 0.95030534E-07 + -0.17186361E-06 0.81576111E-06 0.13791176E-05 0.16406855E-05 0.13244237E-06 + -0.40957473E-06 -0.87000734E-06 -0.98209753E-06 -0.62224394E-06 -0.26693630E-06 + 0.17085864E-06 0.16429023E-05 0.59704021E-06 -0.15670443E-06 -0.58897001E-07 + 0.21066170E-06 -0.16819976E-06 -0.15978839E-06 0.45642205E-07 -0.10814757E-05 + -0.10733402E-05 -0.50619341E-05 0.31021361E-05 -0.21073672E-05 0.12252506E-04 + -0.94013188E-05 -0.42701879E-04 0.41850912E-04 -0.25747415E-05 0.34506534E-04 + -0.32040077E-03 -0.38672344E-03 -0.38863898E-03 -0.34211041E-03 -0.37367681E-03 + -0.63693023E-03 -0.66152962E-03 -0.10355138E-02 -0.14612940E-02 -0.14227740E-02 + -0.16088340E-02 -0.16756746E-02 -0.17882678E-02 -0.14803771E-02 -0.13074945E-02 + -0.11379137E-02 0.00000000E+00 0.16679635E-07 -0.52564801E-07 0.77326618E-07 + 0.19009307E-06 0.10966138E-06 0.23683439E-06 0.44286456E-07 0.12872345E-05 + 0.24753166E-05 0.17062108E-05 0.64584363E-06 -0.48192408E-06 -0.12554363E-05 + -0.17941294E-05 -0.15073111E-05 -0.36702238E-06 0.50917025E-06 0.24300110E-05 + 0.10119346E-05 -0.23780816E-06 -0.26536923E-07 0.54964312E-06 -0.20186738E-06 + -0.36224765E-06 0.86824272E-07 -0.22421490E-05 -0.19307380E-05 -0.90354434E-05 + 0.11877245E-04 0.15722549E-04 0.39176720E-04 -0.63115829E-04 -0.20540008E-03 + -0.17631342E-03 -0.52876981E-03 -0.83186214E-03 -0.14531013E-02 -0.19151181E-02 + -0.23510197E-02 -0.20579325E-02 -0.25026471E-02 -0.28463967E-02 -0.25404048E-02 + -0.25075784E-02 -0.27082222E-02 -0.25103708E-02 -0.25625479E-02 -0.25441170E-02 + -0.26771867E-02 -0.22598750E-02 -0.19235468E-02 -0.16280139E-02 -0.20794725E-07 + 0.33230016E-07 -0.59648890E-07 0.15823449E-06 0.14877092E-06 0.88594020E-06 + 0.10421823E-05 -0.39908920E-06 0.42991164E-05 0.92713677E-05 0.59773587E-05 + 0.27808103E-05 -0.14173205E-05 -0.49668389E-05 -0.68356502E-05 -0.48508982E-05 + -0.22782213E-05 0.19070465E-05 0.84884182E-05 0.37781203E-05 -0.61436145E-06 + -0.46714222E-06 0.20712360E-05 -0.68255042E-06 -0.13088831E-05 0.41978070E-06 + -0.73993442E-05 -0.54039934E-05 -0.29503790E-04 0.39438014E-04 0.18457930E-04 + 0.12270975E-04 -0.42352400E-03 -0.96103237E-03 -0.10617184E-02 -0.26886768E-02 + -0.39577702E-02 -0.56390602E-02 -0.73779891E-02 -0.89607094E-02 -0.77826162E-02 + -0.95835666E-02 -0.10000373E-01 -0.89833857E-02 -0.82497417E-02 -0.82396350E-02 + -0.79281186E-02 -0.80424502E-02 -0.79569795E-02 -0.80607931E-02 -0.67525448E-02 + -0.53489425E-02 -0.42737339E-02 -0.82895849E-08 0.40187278E-07 0.46429508E-07 + 0.42034414E-06 0.78268163E-06 0.22369567E-05 0.39679893E-05 -0.27660090E-05 + 0.14355980E-04 0.28831011E-04 0.21019810E-04 0.56455737E-05 -0.10075300E-04 + -0.26348263E-04 -0.33734788E-04 -0.28685352E-04 -0.15903815E-04 0.47703391E-05 + 0.30257745E-04 0.96551844E-05 -0.82563725E-05 -0.22022514E-05 0.11244964E-04 + -0.11297771E-05 -0.48564397E-05 0.46702867E-05 -0.26089150E-04 0.18651400E-05 + -0.11989679E-03 0.76478838E-04 -0.65965391E-03 -0.18074589E-02 -0.37697326E-02 + -0.57130770E-02 -0.64475952E-02 -0.10324801E-01 -0.10477008E-01 -0.14414833E-01 + -0.15925762E-01 -0.18055774E-01 -0.13786640E-01 -0.16817133E-01 -0.16200140E-01 + -0.15189710E-01 -0.14295002E-01 -0.12342649E-01 -0.11687097E-01 -0.11862107E-01 + -0.10523264E-01 -0.10148658E-01 -0.84301643E-02 -0.68982257E-02 -0.54198639E-02 + 0.12185112E-08 -0.10007446E-07 0.71232581E-08 0.11334712E-07 -0.35725861E-08 + 0.67462894E-08 -0.14623805E-07 0.44860160E-07 0.48266998E-06 0.34284749E-06 + 0.19585459E-06 0.45974192E-06 -0.35793237E-06 -0.75493475E-06 -0.44370648E-06 + -0.32566246E-06 0.76410709E-07 -0.12318053E-05 -0.25504192E-05 -0.29571924E-05 + -0.19744803E-05 -0.97797548E-06 -0.57904899E-05 -0.14255988E-05 0.58802213E-06 + -0.44775671E-06 0.14963369E-05 -0.63146720E-06 0.54496799E-05 -0.70121680E-05 + -0.99021916E-05 -0.21175210E-06 -0.14277305E-04 0.27808011E-04 -0.12013330E-05 + 0.17017888E-03 0.21076477E-03 0.36721278E-03 0.52929871E-03 0.57021868E-03 + 0.79557051E-03 0.52239072E-03 0.57088595E-03 0.45525015E-03 0.81409394E-04 + 0.12004389E-04 0.18825664E-03 0.52306137E-04 0.21396252E-03 0.42454277E-03 + 0.30519479E-03 0.23294483E-03 0.22682046E-03 -0.69801959E-05 -0.23104769E-05 + 0.15846490E-05 0.65490818E-04 0.21043516E-03 0.50926035E-03 0.30692291E-03 + 0.16426302E-04 0.46181068E-03 0.10662862E-02 0.12015944E-02 0.11454388E-02 + 0.11242368E-02 0.10464813E-02 0.79851857E-03 -0.15718946E-03 0.23333040E-02 + 0.41083178E-02 0.82113392E-02 0.78420650E-02 0.79274850E-02 0.82699907E-02 + 0.59451798E-02 0.37924378E-02 0.18975830E-02 0.33836792E-02 0.19655747E-01 + 0.10668699E-01 0.28006415E-01 -0.51488020E-02 0.87357737E-02 0.14508858E-01 + 0.37950835E-02 0.27525219E-01 0.84641714E-01 0.62776743E-01 0.85213796E-01 + 0.83770224E-01 0.59346541E-01 0.41116858E-01 0.14108102E+00 0.90453226E-01 + 0.35596808E-01 0.39378077E-01 0.70783811E-01 0.70094320E-01 0.74294862E-01 + 0.37905908E-01 0.49430934E-01 0.44678166E-01 0.45323590E-01 0.42176303E-01 + 0.36095398E-01 -0.48179023E-06 0.16805602E-06 0.13842955E-05 0.31377245E-06 + -0.44181101E-05 -0.31320072E-05 -0.30488924E-04 0.11123442E-03 0.55941098E-03 + 0.64502075E-03 0.88040822E-03 0.86446126E-03 0.64579039E-03 0.37520923E-03 + 0.40882029E-03 0.50910799E-03 0.47773087E-03 -0.73427300E-03 -0.14524268E-02 + -0.13552953E-02 -0.52978524E-03 -0.86355531E-03 -0.23689761E-02 -0.45909752E-03 + 0.69141769E-03 0.57886834E-04 0.24929905E-02 0.18719659E-02 0.86925281E-02 + 0.41680003E-02 0.73197596E-02 0.13630110E-01 0.88989988E-02 0.17419604E-01 + 0.19889143E-01 0.18560365E-01 0.18402068E-01 0.17990639E-01 0.76561108E-02 + 0.16609839E-01 0.22802003E-01 0.17298341E-01 0.97193929E-02 0.16006239E-01 + 0.26318949E-01 0.12038993E-01 0.21156178E-01 0.12923609E-01 0.93282622E-02 + 0.12345478E-01 0.10113159E-01 0.81289685E-02 0.60050966E-02 0.59602313E-08 + 0.93925562E-08 -0.80980330E-08 -0.62664167E-07 -0.53074239E-07 -0.45885710E-06 + -0.47074232E-06 0.11211855E-05 -0.18693826E-05 -0.47864902E-05 -0.32588687E-05 + -0.17387898E-05 0.94546453E-06 0.42495714E-05 0.62357638E-05 0.60959102E-05 + 0.10271213E-05 -0.24168302E-05 -0.82420780E-05 -0.23678989E-05 0.21441817E-05 + 0.63157041E-06 -0.38239705E-05 -0.16459974E-06 0.17163753E-05 -0.10521948E-05 + 0.98100130E-05 0.75826955E-06 0.35825786E-04 0.21628178E-04 0.13996499E-03 + 0.31810256E-03 0.49211448E-03 0.97546673E-03 0.11798758E-02 0.21531736E-02 + 0.23288553E-02 0.34070045E-02 0.41670472E-02 0.45081749E-02 0.36378290E-02 + 0.42666206E-02 0.42962420E-02 0.34418904E-02 0.28958749E-02 0.23403026E-02 + 0.24252824E-02 0.22161281E-02 0.17499472E-02 0.18238605E-02 0.14149938E-02 + 0.11184367E-02 0.89152949E-03 0.00000000E+00 0.00000000E+00 -0.92818917E-08 + -0.10433565E-07 0.43904821E-07 -0.21986725E-06 -0.15152625E-07 0.13250629E-06 + -0.39141929E-06 -0.65222655E-06 -0.85620927E-06 -0.83063791E-07 0.95727349E-07 + 0.32906136E-06 0.36655000E-06 0.20802550E-06 -0.15885949E-06 -0.19690472E-06 + -0.81375313E-06 -0.25614055E-06 0.13151580E-06 0.35552477E-07 -0.10092142E-06 + 0.42307897E-07 0.39464363E-07 -0.21851679E-07 0.45338960E-06 0.26674136E-06 + 0.13862442E-05 -0.12795319E-05 -0.46703725E-06 -0.49350218E-05 -0.37503487E-05 + 0.50700799E-05 -0.25370594E-04 0.14865039E-04 -0.48956971E-04 0.59598316E-04 + 0.62386350E-04 0.47043829E-04 -0.30023904E-04 -0.15930821E-03 -0.29861816E-03 + -0.54235623E-03 -0.56378018E-03 -0.49110502E-03 -0.53008110E-03 -0.62590083E-03 + -0.60160656E-03 -0.42253090E-03 -0.36608118E-03 -0.27153331E-03 -0.18167368E-03 + 0.00000000E+00 0.99659604E-08 -0.83286203E-09 -0.92775379E-08 -0.91565508E-07 + -0.32191152E-07 -0.67045058E-07 0.36382580E-07 -0.58887355E-06 -0.12440263E-05 + -0.79864808E-06 -0.40837075E-06 0.67991259E-07 0.46641082E-06 0.71945182E-06 + 0.64378378E-06 -0.28159004E-06 -0.43601898E-06 -0.11944376E-05 -0.43849985E-06 + 0.18272743E-06 0.35089288E-07 -0.24026858E-06 0.38093765E-07 0.11100554E-06 + -0.48629551E-07 0.93514006E-06 0.48278612E-06 0.25399161E-05 -0.41095708E-05 + -0.59498028E-05 -0.14518013E-04 -0.28581651E-05 0.26949576E-04 0.69293890E-05 + 0.14413339E-03 0.16512667E-03 0.38764930E-03 0.54002880E-03 0.65483149E-03 + 0.50985590E-03 0.55072275E-03 0.48126649E-03 0.15439212E-03 0.37810026E-04 + 0.24012585E-04 -0.58080833E-04 -0.19608902E-03 -0.24226739E-03 -0.82122110E-04 + -0.90433780E-04 -0.59927316E-04 -0.19236441E-04 -0.18256336E-08 0.18061569E-08 + -0.20051628E-07 -0.22547250E-07 -0.90557003E-07 -0.33575156E-06 -0.32631412E-06 + 0.44453228E-06 -0.19473813E-05 -0.46293120E-05 -0.28088949E-05 -0.16915559E-05 + 0.11862151E-06 0.18571224E-05 0.28383945E-05 0.19747655E-05 -0.38982566E-06 + -0.16265159E-05 -0.41574134E-05 -0.16419727E-05 0.52714549E-06 0.32174968E-06 + -0.91714254E-06 0.14252643E-06 0.40574626E-06 -0.21399258E-06 0.31217119E-05 + 0.13034260E-05 0.85180340E-05 -0.13960902E-04 -0.98246247E-05 -0.13708167E-04 + 0.48837492E-04 0.16945744E-03 0.17709125E-03 0.72722946E-03 0.94327952E-03 + 0.15742197E-02 0.21675188E-02 0.24988502E-02 0.20416768E-02 0.23882046E-02 + 0.22232058E-02 0.14949757E-02 0.12093363E-02 0.10744847E-02 0.11290699E-02 + 0.10821076E-02 0.10138470E-02 0.13098159E-02 0.10547491E-02 0.83948924E-03 + 0.69472453E-03 -0.24116646E-08 -0.14290691E-07 0.10734463E-07 -0.12462886E-06 + -0.43418568E-06 -0.86168622E-06 -0.13155581E-05 0.22424706E-05 -0.64862715E-05 + -0.14092457E-04 -0.96640630E-05 -0.33457495E-05 0.35706373E-05 0.11948682E-04 + 0.15669957E-04 0.14057279E-04 0.26494528E-05 -0.49754905E-05 -0.14706681E-04 + -0.37058090E-05 0.53963185E-05 0.17155302E-05 -0.48630910E-05 -0.79823225E-07 + 0.18723947E-05 -0.18300290E-05 0.11447721E-04 -0.18225750E-05 0.40331751E-04 + -0.36322490E-04 0.15724018E-03 0.51495252E-03 0.10107733E-02 0.17801903E-02 + 0.21341696E-02 0.32314981E-02 0.33004888E-02 0.49478622E-02 0.55683610E-02 + 0.56376989E-02 0.40518946E-02 0.48887506E-02 0.44420670E-02 0.33861797E-02 + 0.30594493E-02 0.22670099E-02 0.23189488E-02 0.19155909E-02 0.11719386E-02 + 0.13557532E-02 0.10508232E-02 0.88195147E-03 0.69249817E-03 -0.53839682E-09 + -0.57876841E-08 0.20894576E-07 0.18096833E-07 0.57437496E-07 0.15334804E-06 + 0.16355129E-06 0.21296140E-06 0.63220536E-06 0.54932858E-06 0.38281423E-06 + 0.58748416E-06 -0.10163458E-06 -0.21525054E-06 0.14973715E-07 0.39623308E-06 + 0.98118835E-06 -0.10596270E-06 -0.12361534E-05 -0.10396841E-05 0.19830121E-06 + 0.16587847E-05 -0.30787085E-05 -0.13521291E-05 0.67968409E-06 -0.12187805E-05 + 0.92683274E-07 -0.20266273E-04 -0.36864256E-04 -0.51683231E-04 -0.26515818E-03 + 0.18266076E-04 -0.27541346E-03 -0.47118939E-03 -0.87367017E-03 -0.66204140E-03 + -0.86894063E-03 -0.55844741E-03 -0.54046770E-03 -0.10293689E-02 -0.86081451E-03 + -0.91897517E-03 -0.10152779E-02 -0.17520540E-02 -0.24083764E-02 -0.25866823E-02 + -0.21729400E-02 -0.22607047E-02 -0.20663464E-02 -0.11351672E-02 -0.60861540E-03 + -0.48096309E-03 -0.19880320E-03 -0.58194434E-05 -0.11237470E-03 -0.24843647E-03 + -0.33833491E-03 -0.56158644E-03 -0.55384107E-03 -0.61354377E-03 -0.86798883E-03 + -0.27153710E-03 0.45245473E-03 0.63167362E-03 0.62038586E-03 0.33026072E-03 + -0.19921110E-03 -0.92221099E-03 -0.23681757E-02 -0.64545500E-03 0.75860834E-03 + 0.41104170E-02 0.35343582E-02 0.21900992E-02 0.14059687E-02 -0.15384902E-02 + -0.13028668E-02 0.58193268E-02 0.67446649E-02 0.12969418E-01 -0.19954003E-01 + -0.25209848E-01 -0.69769509E-01 -0.92137964E-01 0.17720967E+00 0.13017437E+00 + 0.14834387E+00 0.19985912E+00 0.11997798E+00 0.57535203E+00 0.70194178E+00 + 0.10858559E+01 0.68300374E+00 0.10077749E+01 0.11289720E+01 0.15967471E+01 + 0.13709804E+01 0.10684744E+01 0.82366791E+00 0.38060316E+00 0.39503301E-01 + 0.29129326E+00 -0.59631372E-01 -0.57502620E-01 -0.15576913E+00 -0.18494198E+00 + 0.13759602E-05 0.62441059E-05 0.12095361E-04 0.16757448E-04 0.64015070E-04 + 0.20358394E-03 0.17075099E-03 0.28152291E-03 0.65968253E-03 0.81684231E-03 + 0.97561623E-03 0.97235112E-03 0.81424915E-03 0.61228646E-03 0.68042595E-03 + 0.84922024E-03 0.10103728E-02 0.53355211E-04 -0.63153763E-03 -0.45602528E-03 + 0.32077240E-03 0.78983567E-04 -0.10127686E-02 -0.39590497E-03 0.11526277E-02 + 0.13938220E-03 0.20253890E-02 -0.25697325E-02 -0.24562135E-02 0.29126961E-02 + -0.14297317E-01 0.46502921E-01 0.10373573E-01 0.13473511E-03 -0.61141149E-01 + -0.13227103E-01 0.39332593E-01 0.35002616E-01 0.81244940E-02 -0.36261669E-02 + 0.14076529E-01 0.40629917E-01 0.36905677E-01 0.40692476E-01 0.29614825E-01 + 0.12526850E-01 0.11727395E-01 0.56808891E-02 -0.12967590E-01 -0.41926571E-01 + -0.17145745E-01 0.54422825E-03 0.43126769E-02 0.10645293E-07 0.36601210E-07 + 0.82892712E-07 0.69618063E-08 0.39737797E-06 0.28453537E-06 0.14723334E-06 + 0.25970724E-05 -0.20389721E-06 -0.16874440E-05 -0.86299874E-06 0.59731064E-06 + 0.42007514E-05 0.81745984E-05 0.10544685E-04 0.91105763E-05 0.65329385E-05 + 0.13958953E-05 -0.63217145E-05 -0.39370248E-06 0.42372670E-05 0.20219386E-05 + -0.44701799E-05 -0.28317024E-05 0.42689486E-06 -0.64036340E-05 -0.54485636E-05 + -0.11074503E-03 -0.20795925E-03 -0.25122096E-03 -0.13221833E-02 0.61111055E-03 + -0.56713393E-03 -0.12332952E-02 -0.36928856E-02 -0.32388617E-03 0.19602395E-03 + 0.83919405E-03 -0.13893096E-03 -0.83672790E-04 0.56040643E-03 0.18176599E-02 + 0.32937756E-04 0.10318237E-02 -0.87841230E-04 -0.12708071E-02 -0.11181341E-02 + -0.10303869E-02 -0.19784758E-02 -0.13339159E-02 -0.15492405E-02 -0.12400176E-02 + -0.12131235E-02 0.00000000E+00 0.00000000E+00 -0.28282183E-07 0.29471626E-07 + 0.46767446E-08 -0.12715632E-06 0.10106475E-06 0.38715973E-06 -0.64891114E-07 + -0.22375765E-06 -0.44804427E-06 0.20893990E-06 0.51650660E-06 0.75157314E-06 + 0.83273419E-06 0.56985979E-06 0.35684899E-06 0.97127369E-07 -0.67103164E-06 + -0.14051333E-06 0.28343204E-06 0.16723967E-06 -0.13884763E-06 -0.54889941E-07 + -0.23434971E-07 -0.17442671E-06 0.24658506E-07 -0.39512988E-05 -0.95695396E-05 + -0.10669370E-04 -0.12799891E-03 -0.31459327E-04 -0.13240883E-03 -0.27906953E-03 + -0.67703382E-03 -0.46182462E-03 -0.67366753E-03 -0.42695769E-03 -0.95004129E-03 + -0.12520682E-02 -0.18158199E-02 -0.17290169E-02 -0.23240580E-02 -0.24494018E-02 + -0.26924188E-02 -0.29583503E-02 -0.29169230E-02 -0.27482120E-02 -0.33474832E-02 + -0.27727214E-02 -0.24745760E-02 -0.19817119E-02 -0.15721945E-02 0.00000000E+00 + 0.48656800E-08 0.33170123E-07 -0.22186740E-08 -0.42647423E-07 0.12831795E-06 + 0.11675528E-06 0.46678651E-06 -0.87843990E-07 -0.49972953E-06 -0.23468006E-06 + 0.10575153E-06 0.69498934E-06 0.11619073E-05 0.14212451E-05 0.11349861E-05 + 0.50704896E-06 0.42171079E-07 -0.99459484E-06 -0.24578807E-06 0.39114225E-06 + 0.20619354E-06 -0.31705384E-06 -0.17617386E-06 -0.23943514E-08 -0.39606182E-06 + -0.27170599E-07 -0.82384210E-05 -0.19243406E-04 -0.19807853E-04 -0.21225418E-03 + -0.21582999E-04 -0.20211377E-03 -0.39876462E-03 -0.87153848E-03 -0.49543147E-03 + -0.57204685E-03 -0.22469858E-03 -0.76686783E-03 -0.94779106E-03 -0.11919059E-02 + -0.89945351E-03 -0.15355432E-02 -0.15519075E-02 -0.19613521E-02 -0.22898287E-02 + -0.22901562E-02 -0.22076078E-02 -0.27517799E-02 -0.21817279E-02 -0.20371984E-02 + -0.16424970E-02 -0.13443202E-02 0.10821295E-07 0.26794297E-08 0.22608106E-07 + 0.42708819E-07 0.20325551E-06 0.17943852E-06 0.35443014E-06 0.20190300E-05 + -0.12645185E-06 -0.18920575E-05 -0.73401199E-06 0.16382453E-06 0.24074531E-05 + 0.43771120E-05 0.53859804E-05 0.38465860E-05 0.23805379E-05 0.15001155E-06 + -0.33805226E-05 -0.90994199E-06 0.13766338E-05 0.93934616E-06 -0.11325014E-05 + -0.59926765E-06 0.31453575E-08 -0.14893628E-05 -0.47121697E-06 -0.29465880E-04 + -0.67099173E-04 -0.66426401E-04 -0.62008157E-03 0.10283138E-03 -0.51589279E-03 + -0.10443702E-02 -0.22501692E-02 -0.81663842E-03 -0.49503123E-03 0.90482995E-04 + -0.10549270E-02 -0.11345180E-02 -0.57269949E-03 0.21492161E-03 -0.11972699E-02 + -0.84600447E-03 -0.15455638E-02 -0.20899608E-02 -0.18803121E-02 -0.14298406E-02 + -0.22303005E-02 -0.10826397E-02 -0.11571376E-02 -0.91805030E-03 -0.82505315E-03 + 0.10692561E-07 0.37889349E-07 0.15435333E-06 0.18596468E-06 0.55639519E-06 + 0.11310670E-05 0.68783570E-06 0.72804492E-05 -0.52000570E-06 -0.49577283E-05 + -0.26781159E-05 0.28508659E-05 0.11484953E-04 0.20737974E-04 0.25031293E-04 + 0.20690127E-04 0.13511802E-04 0.25771571E-05 -0.10913749E-04 0.29898767E-06 + 0.99201213E-05 0.52187382E-05 -0.50605636E-05 -0.29501723E-05 0.83234189E-07 + -0.86716226E-05 -0.71196664E-05 -0.14618309E-03 -0.30718709E-03 -0.39072901E-03 + -0.25527060E-02 0.74917065E-03 -0.73517207E-03 -0.17119797E-02 -0.59278423E-02 + -0.34156788E-03 0.53771358E-03 0.10391725E-02 -0.11705797E-02 -0.94895326E-03 + -0.11904340E-02 0.60711280E-03 -0.26840667E-02 0.11140223E-03 -0.90062181E-03 + -0.30737218E-02 -0.31329729E-02 -0.31205101E-02 -0.50095579E-02 -0.44132593E-02 + -0.44622776E-02 -0.35751711E-02 -0.32157947E-02 0.32018137E-10 -0.15532415E-09 + 0.17656522E-09 0.17490735E-09 -0.50170136E-09 0.32230891E-09 0.20602546E-10 + 0.31758922E-09 0.88214781E-08 0.69190658E-08 0.37283096E-08 0.10276659E-07 + -0.52556232E-08 -0.11755278E-07 -0.49763390E-08 -0.84726981E-09 0.10798440E-07 + -0.81930407E-08 -0.18600272E-07 0.17641855E-08 0.23659989E-07 0.32174280E-08 + 0.34756758E-07 0.85124098E-08 0.52353309E-08 0.34531156E-09 0.94573346E-09 + -0.85595815E-09 -0.81649711E-09 0.69163974E-08 -0.28214859E-08 -0.16284874E-07 + -0.13002231E-06 -0.39149838E-06 -0.59176008E-06 -0.12922194E-05 -0.16419352E-05 + -0.27729825E-05 -0.42525465E-05 -0.63856874E-05 -0.82123861E-05 -0.97518956E-05 + -0.11477711E-04 -0.13540814E-04 -0.13489755E-04 -0.14057121E-04 -0.15095237E-04 + -0.10681556E-04 -0.84207779E-05 -0.10360413E-04 -0.88276363E-05 -0.10325396E-04 + -0.64286065E-05 -0.91477572E-07 -0.20436097E-07 -0.69246695E-06 -0.28131864E-05 + -0.57845432E-05 0.12417058E-05 0.28568497E-05 -0.32145768E-05 0.23387261E-05 + 0.16190301E-04 0.24348865E-04 0.22127484E-04 0.21155339E-04 0.16821087E-04 + 0.92156798E-05 -0.11807574E-04 0.20375313E-04 0.32263197E-04 0.76679306E-04 + 0.42694521E-04 -0.17459579E-04 0.80459753E-05 0.11602365E-04 -0.27067213E-04 + 0.49078837E-05 -0.90146010E-05 -0.12160389E-05 -0.90402628E-05 -0.56200705E-05 + 0.22531377E-04 -0.11386987E-04 -0.50058942E-04 -0.14050078E-03 -0.36732507E-03 + -0.35655152E-04 0.12717829E-02 0.15391816E-02 0.29730444E-02 0.17798139E-01 + 0.30853306E-01 0.65623945E-01 0.11319448E+00 0.20375818E+00 0.15835393E+00 + 0.27235600E+00 0.35941760E+00 0.44448256E+00 0.77583723E+00 0.82339608E+00 + 0.83207894E+00 0.68724245E+00 0.59350709E+00 0.46758377E+00 -0.59889986E-08 + 0.39043299E-08 0.42168385E-07 -0.28363249E-07 -0.20445893E-06 -0.10536362E-06 + -0.82855731E-06 -0.12409209E-05 0.72306870E-05 0.10624989E-04 0.16497898E-04 + 0.15478745E-04 0.11458695E-04 0.71824789E-05 0.70639725E-05 0.84645331E-05 + 0.95395890E-05 -0.62854722E-05 -0.15240158E-04 -0.88992222E-05 0.11306142E-04 + 0.34031473E-05 0.99789615E-05 0.49893527E-05 0.46646378E-05 -0.13643646E-05 + -0.86152305E-06 -0.20588047E-05 -0.14383842E-05 0.14223422E-06 -0.30106191E-05 + 0.12356126E-05 0.35245139E-05 -0.44306387E-05 0.21697952E-04 -0.81008187E-05 + 0.49770819E-04 0.72899447E-04 -0.22151800E-04 0.52948974E-04 -0.56728376E-03 + 0.37652510E-04 -0.10133975E-02 -0.17639952E-02 -0.14104430E-02 -0.21169062E-02 + -0.29059363E-02 -0.49527905E-02 -0.31387684E-02 -0.55890060E-02 -0.42164414E-02 + -0.31679398E-02 -0.21843238E-02 0.18131948E-09 0.13033617E-09 0.14328466E-09 + -0.23235021E-08 -0.48030938E-09 -0.12755684E-07 -0.11002080E-07 0.19943300E-07 + -0.42295371E-07 -0.10192124E-06 -0.62160706E-07 -0.41024106E-07 0.17885991E-08 + 0.51678916E-07 0.63096095E-07 0.35488596E-07 -0.44432616E-07 -0.73201287E-07 + -0.10743941E-06 0.36495115E-07 0.11582706E-06 0.75620946E-07 0.21193241E-07 + -0.41741822E-08 0.11568744E-07 0.14505164E-08 0.94426971E-08 0.10681708E-08 + -0.26576564E-07 -0.89151773E-07 -0.29509289E-06 -0.56492354E-06 -0.12221902E-05 + -0.20800330E-05 -0.21412157E-05 -0.30848945E-05 -0.54970496E-06 0.10772367E-05 + 0.39849612E-05 0.70906675E-05 0.87962350E-05 0.13108930E-04 0.13651020E-04 + 0.22481168E-04 0.21542275E-04 0.14291410E-04 0.14250752E-04 0.22036783E-04 + 0.19270019E-04 0.15319073E-04 0.11532454E-04 0.77968097E-05 0.75810503E-05 + 0.00000000E+00 0.00000000E+00 -0.30718870E-09 -0.10092710E-09 0.29440334E-09 + -0.51902177E-08 -0.85927698E-09 0.17153519E-08 -0.76896037E-08 -0.15209333E-07 + -0.16946416E-07 -0.27076189E-08 0.69787746E-09 0.10546926E-08 0.19536904E-08 + -0.33601027E-08 -0.94256986E-08 -0.91899485E-08 -0.14792870E-07 -0.24620090E-08 + 0.45660160E-08 0.25521772E-08 0.59087865E-09 -0.32166442E-09 0.16985065E-09 + 0.18742433E-10 0.20201887E-09 -0.14016714E-09 -0.27850486E-09 0.18785072E-08 + 0.20436167E-08 -0.34782331E-09 0.27743571E-08 -0.22631494E-07 0.86393028E-08 + -0.30085505E-06 -0.51761538E-06 -0.14578669E-05 -0.31785166E-05 -0.56903553E-05 + -0.84235634E-05 -0.11239332E-04 -0.14802800E-04 -0.16479426E-04 -0.18702082E-04 + -0.22188645E-04 -0.21400768E-04 -0.17776379E-04 -0.16045621E-04 -0.15749438E-04 + -0.15690828E-04 -0.13178412E-04 -0.89759998E-05 0.00000000E+00 0.94960524E-10 + 0.87553659E-10 -0.22706217E-09 -0.22391716E-08 -0.78641689E-09 -0.25646941E-08 + -0.50804005E-09 -0.12508614E-07 -0.26705600E-07 -0.15853373E-07 -0.98669303E-08 + -0.20116611E-08 0.42374076E-08 0.47273258E-08 -0.75622723E-09 -0.15541530E-07 + -0.15962126E-07 -0.21345134E-07 -0.33587376E-08 0.63137461E-08 0.43327770E-08 + 0.15515992E-08 -0.59064086E-09 0.59873812E-09 0.18640790E-10 0.45849296E-09 + -0.67811944E-10 0.72996702E-10 0.37604160E-08 -0.30714811E-09 -0.27934443E-07 + -0.13123085E-06 -0.37616169E-06 -0.57616810E-06 -0.11933295E-05 -0.13813859E-05 + -0.20838670E-05 -0.27824593E-05 -0.38514649E-05 -0.50734024E-05 -0.58701960E-05 + -0.73962240E-05 -0.68062309E-05 -0.79802940E-05 -0.10618408E-04 -0.94090568E-05 + -0.57391086E-05 -0.41567441E-05 -0.48011341E-05 -0.58077113E-05 -0.51144019E-05 + -0.27057516E-05 -0.69041404E-11 -0.89469087E-10 -0.17038849E-09 -0.86571369E-09 + -0.19091030E-08 -0.88072095E-08 -0.11242097E-07 0.69136767E-08 -0.45154854E-07 + -0.98398665E-07 -0.56339844E-07 -0.38980376E-07 -0.93472459E-08 0.16362786E-07 + 0.21724549E-07 -0.55227826E-08 -0.45949764E-07 -0.55258082E-07 -0.73068819E-07 + -0.11892702E-07 0.25023996E-07 0.19549264E-07 0.55646517E-08 -0.16187337E-08 + 0.22987534E-08 0.20130191E-09 0.19884632E-08 0.66239316E-09 0.40154784E-09 + 0.80229352E-09 -0.46865567E-07 -0.18101167E-06 -0.62130102E-06 -0.15485187E-05 + -0.23594002E-05 -0.40337671E-05 -0.39621153E-05 -0.47151328E-05 -0.42596832E-05 + -0.39470026E-05 -0.41109321E-05 -0.26103942E-05 -0.24704771E-05 0.26911785E-05 + 0.55407763E-06 -0.12180618E-05 0.17612970E-05 0.90935205E-05 0.12851515E-04 + 0.10097153E-04 0.68007160E-05 0.42868836E-05 0.49814257E-05 -0.51147127E-10 + -0.26254395E-09 0.16439870E-09 -0.29827630E-08 -0.85355451E-08 -0.22800698E-07 + -0.45019839E-07 0.37259767E-07 -0.14291968E-06 -0.30092325E-06 -0.18884207E-06 + -0.84336764E-07 0.26121020E-07 0.15204571E-06 0.16966261E-06 0.90741711E-07 + -0.84766827E-07 -0.14669821E-06 -0.20569003E-06 0.45938097E-07 0.20424163E-06 + 0.12585297E-06 0.33876185E-07 -0.26516974E-08 0.17413094E-07 0.22244931E-08 + 0.12860387E-07 0.12747701E-07 0.50788685E-08 -0.13612272E-06 -0.69310459E-06 + -0.14322903E-05 -0.21704228E-05 -0.24098634E-05 -0.11860273E-05 -0.10486295E-05 + 0.33397017E-05 0.56385880E-05 0.74376080E-05 0.10596567E-04 0.11203297E-04 + 0.15690560E-04 0.16509442E-04 0.34198908E-04 0.31231956E-04 0.16150669E-04 + 0.14310632E-04 0.24981670E-04 0.16461333E-04 0.36463107E-05 -0.36195006E-05 + -0.71785637E-05 -0.61413413E-05 0.24211086E-13 0.55787912E-13 0.24203502E-12 + 0.53486050E-12 0.52053032E-12 0.88772587E-12 0.91365689E-12 0.11995423E-11 + -0.57401580E-12 -0.30584762E-12 -0.11101693E-11 0.10154792E-11 0.11093746E-11 + -0.44931363E-11 0.35804182E-12 -0.40272100E-11 -0.98196497E-11 -0.23843508E-11 + 0.14339195E-10 0.37047790E-10 0.43959829E-10 0.25542313E-10 0.10651151E-09 + 0.17139524E-09 0.15351109E-09 -0.52350425E-09 0.12076292E-09 0.18356198E-08 + 0.35781657E-08 -0.29152192E-09 0.10143076E-07 -0.26626207E-08 -0.23612894E-07 + -0.73525823E-08 -0.57980695E-08 0.97149648E-07 0.11468329E-06 0.58214652E-07 + 0.84185240E-07 0.60314972E-07 -0.82232795E-07 -0.53351315E-06 -0.59282748E-06 + -0.66924328E-06 -0.82879396E-06 -0.10112922E-05 -0.92012734E-06 -0.90213086E-06 + -0.69207563E-06 -0.64270262E-06 -0.68165331E-06 -0.57178038E-06 -0.44584061E-06 + -0.83146882E-09 -0.46336284E-09 -0.10405556E-08 -0.10789093E-08 0.71842170E-09 + 0.91150966E-09 -0.89909220E-10 0.12251866E-08 0.29500047E-08 0.45834055E-10 + -0.44306710E-09 -0.26342695E-08 -0.21931258E-08 -0.24381188E-08 -0.30553340E-08 + 0.25893006E-08 -0.73703172E-08 0.12919728E-07 0.22202420E-10 0.19738341E-07 + -0.21920932E-08 -0.89218423E-07 -0.22504241E-06 0.99677043E-07 0.78333773E-06 + -0.42926987E-05 -0.16280657E-05 0.63276691E-05 0.57018735E-05 -0.18447293E-04 + 0.33498899E-04 -0.60793489E-05 -0.63830127E-05 -0.22577623E-04 -0.39110493E-04 + -0.22101835E-05 -0.17566681E-03 -0.76851799E-04 0.53579000E-04 0.11916294E-03 + -0.29718686E-03 -0.59522965E-04 0.40865766E-03 0.45562127E-03 0.20524997E-03 + -0.93735310E-04 -0.13145410E-03 -0.12592458E-04 -0.18541971E-03 -0.27322216E-03 + -0.32942794E-03 -0.33992128E-03 -0.31233840E-03 -0.31862836E-10 0.11212392E-10 + 0.17788198E-09 0.22647826E-09 0.71702542E-09 0.20370031E-08 0.17457322E-08 + 0.23756177E-08 0.16636904E-08 0.14613488E-08 0.10454133E-08 0.75804932E-09 + 0.56066248E-09 -0.10892236E-08 0.65850585E-10 0.34642702E-08 0.50569273E-08 + 0.94912056E-08 0.15403408E-07 0.27117393E-07 0.31450932E-07 0.20169903E-07 + 0.33723740E-07 0.99940778E-07 0.14633719E-06 -0.10749494E-06 0.47895720E-06 + 0.13205625E-05 0.18282017E-05 -0.10570101E-05 0.29416289E-05 -0.37310607E-06 + -0.47873703E-06 0.20627201E-05 0.22926354E-05 0.10927555E-04 0.47428478E-05 + 0.13208785E-04 0.80621414E-05 0.35095669E-05 -0.13154501E-04 0.21222546E-05 + 0.52982786E-04 0.27706307E-04 -0.15738730E-04 -0.68987930E-05 -0.44369455E-04 + -0.22296662E-04 0.18126628E-04 0.14397577E-04 0.12432335E-04 0.14319754E-04 + 0.11319262E-04 0.30162682E-12 -0.41084519E-12 -0.15354702E-11 -0.43809724E-11 + -0.81733730E-11 -0.14728659E-10 -0.22549208E-10 -0.30261467E-10 -0.32909150E-10 + -0.35198591E-10 -0.39570238E-10 -0.68999453E-10 -0.82182693E-10 -0.98762242E-10 + -0.12938802E-09 -0.12540847E-09 -0.21278250E-09 -0.31017173E-09 -0.37487506E-09 + -0.39710071E-09 -0.46974203E-09 -0.72086117E-09 -0.92417164E-09 -0.65032083E-09 + -0.65429592E-09 -0.35126969E-08 0.59160752E-09 0.22356706E-07 0.70776270E-07 + 0.82986050E-07 0.14656368E-06 0.96024789E-07 0.15692882E-06 0.19887650E-06 + -0.36264843E-07 0.14129144E-06 -0.19538278E-06 -0.80813515E-07 0.13546994E-07 + -0.20548870E-06 -0.56206024E-06 -0.26306035E-06 -0.25302338E-06 -0.52346946E-06 + -0.16355053E-06 -0.26643133E-07 0.28519164E-07 -0.13591054E-06 0.40279128E-07 + 0.15495975E-06 0.16658067E-06 0.16310597E-06 0.15571048E-06 0.00000000E+00 + 0.00000000E+00 0.34663030E-12 -0.92006200E-12 -0.17664185E-11 -0.33567801E-11 + -0.50899470E-11 -0.76382127E-11 -0.81841755E-11 -0.85296897E-11 -0.86154711E-11 + -0.12249000E-10 -0.13484734E-10 -0.14481203E-10 -0.18067188E-10 -0.17758411E-10 + -0.26429927E-10 -0.35464261E-10 -0.42634500E-10 -0.46435064E-10 -0.50743382E-10 + -0.67943145E-10 -0.78385902E-10 -0.74715095E-10 -0.94192757E-10 -0.29428127E-09 + -0.34250808E-09 -0.30355153E-09 -0.14276949E-08 -0.42267788E-08 -0.85397277E-08 + -0.25266605E-07 -0.32276681E-07 -0.23707853E-07 -0.81384928E-08 0.12205024E-06 + 0.23485170E-06 0.40704230E-06 0.45915289E-06 0.61234977E-06 0.54559275E-06 + 0.48479554E-06 0.34711751E-06 0.16279568E-06 0.18196247E-06 0.17860480E-06 + 0.55206900E-07 -0.88379219E-07 -0.74122527E-07 -0.39832105E-07 -0.34909079E-07 + -0.40690165E-07 -0.29746692E-07 0.00000000E+00 0.25541679E-12 -0.52080829E-12 + -0.10914364E-11 -0.24921281E-11 -0.56100552E-11 -0.88128537E-11 -0.12894931E-10 + -0.13561018E-10 -0.14435167E-10 -0.14562284E-10 -0.19298690E-10 -0.21242416E-10 + -0.23873072E-10 -0.27713278E-10 -0.28077689E-10 -0.41128640E-10 -0.55581070E-10 + -0.66555212E-10 -0.71071489E-10 -0.78445289E-10 -0.10462701E-09 -0.12415266E-09 + -0.10944486E-09 -0.13701692E-09 -0.48119900E-09 -0.49233159E-09 -0.87084513E-10 + -0.70632355E-09 -0.36574075E-08 -0.36786330E-08 -0.14780589E-07 0.59402136E-08 + 0.41303757E-07 0.52669592E-07 0.18913394E-06 0.24429007E-06 0.33300658E-06 + 0.33251723E-06 0.40347055E-06 0.20913532E-06 0.17408292E-06 0.56096016E-07 + -0.11921201E-06 -0.35651830E-07 -0.48905980E-08 -0.74868055E-07 -0.16742827E-06 + -0.10639204E-06 -0.26011666E-07 0.30459994E-08 0.70383740E-08 0.19954783E-07 + -0.17865192E-12 -0.19461641E-12 -0.14191946E-11 -0.27901787E-11 -0.97904680E-11 + -0.20515067E-10 -0.32450385E-10 -0.46390390E-10 -0.50079794E-10 -0.52174766E-10 + -0.52655450E-10 -0.71068717E-10 -0.78212839E-10 -0.84841984E-10 -0.10213726E-09 + -0.10171551E-09 -0.14687511E-09 -0.20062121E-09 -0.23896758E-09 -0.25546759E-09 + -0.28085551E-09 -0.37430892E-09 -0.44430154E-09 -0.39589333E-09 -0.49557619E-09 + -0.16923747E-08 -0.15944841E-08 0.75651085E-09 0.46351871E-08 0.24254421E-08 + 0.15840188E-07 0.10411799E-07 0.13161709E-06 0.28622578E-06 0.33394591E-06 + 0.69635932E-06 0.72057163E-06 0.75846832E-06 0.69690285E-06 0.54057965E-06 + 0.78275383E-07 -0.43712738E-07 -0.32975013E-06 -0.67443674E-06 -0.46764552E-06 + -0.46455001E-06 -0.48472197E-06 -0.56222539E-06 -0.40820244E-06 -0.22119074E-06 + -0.13209425E-06 -0.82135140E-07 -0.50698051E-07 -0.29926477E-12 -0.92145489E-12 + -0.41791562E-11 -0.13076344E-10 -0.30566834E-10 -0.61446348E-10 -0.94733853E-10 + -0.13514055E-09 -0.14507226E-09 -0.15218245E-09 -0.15867991E-09 -0.23120473E-09 + -0.26820300E-09 -0.30667636E-09 -0.37565551E-09 -0.36308618E-09 -0.52418141E-09 + -0.72155035E-09 -0.85741868E-09 -0.90690982E-09 -0.10396023E-08 -0.14700465E-08 + -0.18029912E-08 -0.15394053E-08 -0.17911730E-08 -0.60171643E-08 -0.14267793E-08 + 0.27983020E-07 0.13083244E-06 0.19725046E-06 0.35320148E-06 0.30404076E-06 + 0.30051686E-06 0.17867675E-06 -0.26814834E-06 -0.88245746E-07 -0.47302077E-06 + 0.45169045E-07 0.27693221E-06 0.61128043E-07 -0.26959340E-06 0.20269534E-06 + 0.23600744E-07 -0.23487279E-06 0.46102758E-06 0.63566748E-06 0.54596660E-06 + 0.14036819E-06 0.35674611E-06 0.51437049E-06 0.50464964E-06 0.44455436E-06 + 0.35107613E-06 -0.77479442E-11 0.61278480E-11 0.57837892E-10 -0.86479042E-10 + -0.13024229E-09 0.39595480E-09 0.21529653E-09 0.20034289E-09 0.73497982E-10 + 0.36861591E-09 0.14829520E-09 -0.73793774E-09 -0.50931132E-09 -0.14340730E-09 + -0.11361234E-08 -0.22398727E-08 -0.38552410E-08 -0.65309318E-08 -0.98888803E-08 + -0.13005275E-07 -0.12738235E-07 -0.62563373E-08 -0.32111504E-07 -0.12283525E-07 + -0.69319282E-09 -0.82794996E-08 0.29525720E-07 -0.18363146E-07 0.34125220E-07 + 0.76034560E-07 -0.32692902E-06 0.15116943E-06 0.30451689E-07 -0.24984356E-06 + -0.11626741E-05 0.51838750E-05 -0.13108183E-05 0.31803399E-05 0.33007506E-06 + -0.42563976E-05 -0.27931231E-05 -0.14726648E-04 -0.14421626E-04 -0.27695201E-04 + -0.41946969E-04 -0.49083553E-04 -0.39234032E-04 -0.41442136E-04 -0.43594664E-04 + -0.32359870E-04 -0.27795294E-04 -0.22193490E-04 -0.18378892E-04 0.19736497E-06 + 0.17989563E-06 0.39864811E-06 0.90741091E-06 0.72010571E-06 0.25942414E-06 + -0.11365487E-07 -0.10707483E-05 -0.15956828E-05 -0.18354484E-05 -0.31939409E-05 + -0.26262969E-05 -0.33153727E-05 -0.28355434E-05 -0.23575703E-05 -0.88449431E-06 + 0.16186331E-05 0.10470025E-04 0.19549393E-04 0.21690000E-04 0.25551360E-04 + 0.22702599E-04 0.21631799E-04 0.10607016E-04 0.96067986E-05 -0.39988669E-04 + 0.17034146E-03 0.63925606E-04 0.14699753E-03 -0.22622806E-03 -0.25475219E-03 + -0.33190465E-04 -0.98327457E-03 -0.70228472E-03 -0.11279812E-04 -0.22129672E-02 + 0.23098722E-03 -0.23383338E-03 -0.20954303E-02 -0.11718664E-02 0.52538238E-02 + 0.11202450E-02 -0.19814031E-02 -0.10874928E-02 0.22297850E-02 0.43287555E-02 + 0.69736918E-02 0.49733219E-02 0.60301168E-02 0.66087642E-02 0.66833608E-02 + 0.63721332E-02 0.55200490E-02 0.11404719E-07 0.11008137E-07 -0.11290989E-07 + -0.12978715E-06 -0.17384998E-06 -0.62834290E-07 -0.39737592E-06 -0.10346639E-05 + -0.14954620E-05 -0.19579602E-05 -0.26167065E-05 -0.34426605E-05 -0.43118086E-05 + -0.49980443E-05 -0.51812213E-05 -0.56686463E-05 -0.55196537E-05 -0.62955737E-05 + -0.79739210E-05 -0.90454111E-05 -0.10186287E-04 -0.10871993E-04 -0.17591043E-04 + -0.14649930E-04 -0.10617018E-04 -0.14487881E-04 0.54257318E-05 -0.48026861E-04 + -0.71979808E-04 -0.16572014E-03 -0.36954886E-03 -0.32871695E-03 -0.72868239E-03 + -0.72306625E-03 -0.81232217E-03 -0.52197829E-03 -0.10462989E-02 -0.12003505E-02 + -0.14220934E-02 -0.14256834E-02 -0.78906566E-03 -0.14250040E-02 -0.17530311E-02 + -0.14929956E-02 -0.58439348E-03 -0.13705214E-02 -0.23652139E-03 -0.10206021E-02 + -0.10382007E-02 -0.36466280E-03 -0.34077514E-03 -0.32066833E-03 -0.27381774E-03 + 0.27518363E-11 0.56763389E-10 0.20814708E-09 -0.95344392E-09 0.35002003E-09 + -0.41570166E-09 -0.10020230E-08 -0.47089316E-09 -0.20593833E-08 -0.32552925E-08 + -0.50843401E-08 0.13840035E-08 0.87239214E-08 0.12796182E-07 0.15745900E-07 + 0.12976958E-07 0.27342496E-07 0.33337292E-08 -0.14770321E-07 -0.94309319E-08 + -0.56725376E-08 -0.21094513E-08 -0.11186528E-07 -0.68739721E-08 0.35966618E-08 + -0.62345111E-07 0.13392333E-06 0.41176974E-07 0.64681792E-06 0.94829374E-06 + -0.39280241E-05 -0.58797230E-05 -0.14216000E-04 -0.27248715E-04 -0.46624895E-04 + -0.35893642E-04 -0.94304861E-04 -0.92037768E-04 -0.10372625E-03 -0.10487862E-03 + -0.12764853E-03 -0.10653806E-03 -0.10689050E-03 -0.12890893E-03 -0.11886644E-03 + -0.12783972E-03 -0.95586861E-04 -0.92646510E-04 -0.10586368E-03 -0.86666711E-04 + -0.74858252E-04 -0.59149503E-04 -0.46506846E-04 0.00000000E+00 0.00000000E+00 + -0.35731724E-09 0.28117886E-09 -0.56946425E-09 -0.91578772E-10 -0.84616475E-10 + -0.63801513E-10 -0.21578596E-09 -0.43785487E-09 -0.21143103E-09 0.39714171E-09 + 0.14646462E-08 0.18973176E-08 0.21865363E-08 0.19955405E-08 0.30605583E-08 + 0.10710542E-08 -0.58351766E-09 -0.20410933E-10 0.36024391E-09 0.51072242E-09 + 0.12736032E-09 0.30670959E-09 0.79925774E-09 -0.18972956E-08 0.85866039E-08 + 0.12347429E-07 0.38961523E-07 0.10697616E-06 -0.12958853E-07 0.81000122E-07 + 0.39500536E-06 0.38978696E-06 0.15894675E-06 0.46563935E-05 0.20690733E-05 + 0.84149074E-05 0.56381090E-05 0.38505141E-05 -0.14570371E-05 -0.83453313E-05 + -0.15879310E-04 -0.32176215E-04 -0.40152187E-04 -0.49184850E-04 -0.50722829E-04 + -0.57957788E-04 -0.63402314E-04 -0.56477577E-04 -0.48426385E-04 -0.39273002E-04 + -0.31639419E-04 0.00000000E+00 -0.16376035E-09 0.23251836E-09 -0.25023681E-09 + -0.89890186E-10 -0.12687377E-09 -0.20094120E-09 -0.15263482E-09 -0.42843855E-09 + -0.47405533E-09 -0.73596105E-09 0.89211615E-09 0.22213659E-08 0.27433573E-08 + 0.34652999E-08 0.31057740E-08 0.48394831E-08 0.14317901E-08 -0.82399830E-09 + -0.16301603E-09 0.54445827E-09 0.59741182E-09 -0.13691016E-09 0.19412146E-09 + 0.11151200E-08 -0.38492378E-08 0.16295131E-07 0.19570687E-07 0.72226836E-07 + 0.19846954E-06 -0.19205443E-07 0.22847118E-06 0.11518002E-05 0.84664946E-06 + -0.75873748E-06 0.33796585E-05 -0.47046882E-05 -0.29417133E-05 -0.94378604E-05 + -0.12742059E-04 -0.22626862E-04 -0.26077760E-04 -0.32230316E-04 -0.48165896E-04 + -0.53100994E-04 -0.60800090E-04 -0.58479272E-04 -0.63470000E-04 -0.69615735E-04 + -0.60841738E-04 -0.52199488E-04 -0.42025665E-04 -0.33596825E-04 0.13611567E-09 + -0.19551888E-09 0.39729740E-09 -0.44061353E-09 0.36584241E-10 -0.79564978E-09 + -0.90184803E-09 -0.51652467E-09 -0.13803091E-08 -0.20230078E-08 -0.24565950E-08 + 0.26900297E-08 0.75788336E-08 0.10463401E-07 0.11917977E-07 0.10875690E-07 + 0.16620954E-07 0.49062503E-08 -0.33544256E-08 -0.94091133E-09 0.12868767E-08 + 0.20721554E-08 -0.89550270E-09 0.45261255E-09 0.38819774E-08 -0.14451065E-07 + 0.54303019E-07 0.61092809E-07 0.27405199E-06 0.72696809E-06 -0.82490737E-07 + 0.38498574E-06 0.21590579E-05 -0.13725474E-05 -0.10110334E-04 -0.44560030E-05 + -0.37129587E-04 -0.47295930E-04 -0.68018048E-04 -0.82486320E-04 -0.11059041E-03 + -0.11207163E-03 -0.12812482E-03 -0.15785574E-03 -0.15480205E-03 -0.16414286E-03 + -0.14144407E-03 -0.13532506E-03 -0.14038260E-03 -0.11485622E-03 -0.97067755E-04 + -0.76407387E-04 -0.59036749E-04 0.61331282E-10 -0.76796001E-10 -0.30231454E-09 + -0.85903240E-09 -0.46652170E-11 -0.17540560E-08 -0.35285047E-08 -0.16207837E-08 + -0.54182870E-08 -0.84843275E-08 -0.11987459E-07 0.53772986E-08 0.22073828E-07 + 0.31490413E-07 0.39235021E-07 0.34465066E-07 0.59788716E-07 0.11967952E-07 + -0.23245449E-07 -0.15449499E-07 -0.75188622E-08 -0.29353089E-08 -0.10978208E-07 + -0.14687127E-08 0.85483005E-08 -0.64586756E-07 0.22807479E-06 0.23949362E-06 + 0.17647818E-05 0.41029561E-05 -0.13220237E-05 -0.59873463E-05 -0.24337370E-04 + -0.53291407E-04 -0.86902528E-04 -0.78784369E-04 -0.15930035E-03 -0.13569912E-03 + -0.14744369E-03 -0.15287187E-03 -0.18979875E-03 -0.15719864E-03 -0.17657419E-03 + -0.20444495E-03 -0.17732332E-03 -0.18966776E-03 -0.14702213E-03 -0.15291469E-03 + -0.17264101E-03 -0.14153763E-03 -0.11930749E-03 -0.93436658E-04 -0.73111067E-04 + 0.21142840E-08 -0.39272611E-08 -0.16697727E-07 0.56202444E-08 -0.22715232E-07 + -0.14277695E-06 -0.13256490E-06 -0.13815032E-06 -0.17478135E-06 -0.22097933E-06 + -0.17129957E-06 -0.71618064E-07 -0.12348786E-06 -0.30561262E-06 -0.14572096E-06 + -0.96186450E-07 -0.61765008E-07 0.32055287E-06 0.73385592E-06 0.90902558E-06 + 0.68330456E-06 -0.25297578E-06 0.45383944E-05 0.15930981E-05 -0.19824464E-06 + -0.89514850E-07 -0.19089454E-05 0.63232753E-05 0.55390727E-05 0.34003466E-05 + 0.89508933E-04 -0.10589153E-03 -0.98446883E-04 -0.12004493E-03 -0.36881204E-04 + -0.24443809E-03 -0.36218504E-03 -0.87586744E-03 -0.10619444E-02 -0.97439605E-03 + -0.11738564E-02 -0.14196217E-02 -0.17035857E-02 -0.13135018E-02 -0.12467729E-02 + -0.12920337E-02 -0.14269897E-02 -0.12955012E-02 -0.99628052E-03 -0.13650239E-02 + -0.16407741E-02 -0.12900904E-02 -0.10907335E-02 -0.13779702E-04 0.28887294E-05 + 0.21911101E-04 -0.52023422E-04 -0.17974685E-04 -0.67421734E-04 -0.11825972E-03 + -0.48007484E-04 -0.82223933E-04 -0.18170526E-03 0.56980187E-04 0.41034305E-04 + 0.33603453E-03 0.51840800E-03 0.63626064E-03 0.63258106E-03 0.18299930E-03 + -0.88919483E-03 -0.21417252E-02 -0.27710807E-02 -0.33255641E-02 -0.23949606E-02 + -0.33595158E-03 -0.31579138E-02 -0.51301961E-02 -0.54728862E-02 -0.14099298E-01 + 0.16243763E-02 -0.83690232E-02 0.24100762E-01 0.16546792E-01 -0.11050220E+00 + -0.87168319E-01 -0.11511812E+00 -0.11383674E+00 0.62562219E-01 -0.20075277E+00 + -0.11044473E+00 -0.14628624E+00 0.17515881E+00 0.20017016E+00 0.25741989E+00 + 0.22494524E+00 0.27140696E+00 0.37217553E+00 0.41768592E+00 0.40874159E+00 + 0.55165106E+00 0.57971643E+00 0.63219200E+00 0.47057850E+00 0.42011292E+00 + 0.34230183E+00 -0.37883514E-05 -0.66227485E-05 -0.10959309E-04 -0.58313274E-05 + -0.48272857E-04 -0.18534462E-03 -0.18320692E-03 -0.17434435E-03 -0.17474746E-03 + -0.18553041E-03 -0.87124252E-04 -0.50375942E-05 0.96371491E-04 0.15159453E-03 + 0.10406904E-03 0.80536092E-04 -0.71394759E-04 -0.45619766E-04 0.14772235E-03 + 0.13438602E-03 0.18978300E-03 0.25657415E-03 0.13274265E-02 0.79608385E-03 + -0.28527556E-03 -0.59675845E-03 -0.23132401E-02 0.27651281E-04 -0.33781130E-02 + -0.64047695E-02 0.28503702E-03 -0.32445910E-01 -0.16417024E-01 -0.11983948E-01 + 0.21795525E-01 0.21016444E-02 -0.33143541E-01 -0.26668114E-01 -0.16434777E-01 + -0.99448071E-02 -0.30824833E-01 -0.39513549E-01 -0.30301787E-01 -0.43379161E-01 + -0.37872708E-01 -0.26599570E-01 -0.42321394E-01 -0.42573377E-01 -0.96866128E-02 + -0.20944855E-02 -0.65430881E-02 -0.12585677E-01 -0.10897977E-01 -0.15754344E-07 + -0.25637328E-07 -0.83775232E-07 0.73023766E-07 -0.32208994E-06 -0.44639636E-06 + -0.31386313E-06 -0.10160032E-05 -0.53954853E-06 -0.85036946E-06 -0.51352959E-06 + -0.16593022E-05 -0.32982257E-05 -0.44465280E-05 -0.53108176E-05 -0.44522367E-05 + -0.68112484E-05 -0.30370565E-05 0.15101497E-05 0.63914441E-06 -0.53254879E-06 + -0.67966055E-06 0.22069933E-05 -0.56663750E-06 -0.20761726E-05 -0.19234647E-07 + -0.74594718E-05 0.33755300E-04 0.33227754E-04 -0.13965329E-04 0.35876966E-03 + -0.90146093E-03 -0.83301508E-03 -0.72350806E-03 0.31001795E-03 -0.15954135E-02 + -0.21861281E-02 -0.25023965E-02 -0.17496198E-02 -0.15441010E-02 -0.19988701E-02 + -0.23915504E-02 -0.13939036E-02 -0.17079733E-02 -0.12235167E-02 -0.36484957E-03 + -0.45747056E-03 -0.32767901E-03 0.20187990E-03 -0.91788170E-04 0.92887737E-04 + -0.65408062E-04 0.10330446E-03 0.00000000E+00 0.00000000E+00 0.51763402E-07 + -0.55817066E-07 0.92669811E-07 -0.44192188E-07 -0.43751105E-07 -0.14513277E-06 + -0.90553065E-07 -0.75802755E-07 -0.97938492E-07 -0.18988017E-06 -0.39085693E-06 + -0.48828381E-06 -0.53404063E-06 -0.45827439E-06 -0.60521651E-06 -0.27303399E-06 + 0.12213178E-06 0.57985859E-07 -0.41941004E-07 -0.65329725E-07 0.61788346E-07 + -0.61612020E-07 -0.72467688E-07 -0.85273840E-08 -0.40696396E-06 0.10201227E-05 + 0.18645889E-05 0.12360616E-05 0.55440993E-04 -0.72296983E-05 0.75307765E-05 + 0.47197556E-04 0.19703095E-03 0.43313810E-04 -0.15269632E-04 -0.33306841E-03 + -0.29344364E-03 -0.34290624E-03 -0.38425107E-03 -0.77650173E-03 -0.95370049E-03 + -0.11938911E-02 -0.13701354E-02 -0.13556933E-02 -0.14202854E-02 -0.14055132E-02 + -0.87090043E-03 -0.85624288E-03 -0.72538819E-03 -0.70704859E-03 -0.51859764E-03 + 0.00000000E+00 0.21812470E-07 -0.50360942E-07 0.29466259E-07 -0.21908750E-07 + -0.68439498E-07 -0.73379909E-07 -0.23049026E-06 -0.11762486E-06 -0.17761937E-06 + -0.10150709E-06 -0.34396740E-06 -0.61181866E-06 -0.73333039E-06 -0.85622628E-06 + -0.71009928E-06 -0.96204300E-06 -0.40969267E-06 0.18138350E-06 0.90688604E-07 + -0.87789675E-07 -0.79807205E-07 0.16403849E-06 -0.81673358E-07 -0.15453687E-06 + -0.26649932E-07 -0.81289172E-06 0.22510848E-05 0.41623277E-05 0.28654302E-05 + 0.91634687E-04 -0.36364636E-04 -0.40224372E-04 -0.34719771E-04 0.98781888E-04 + -0.16088573E-03 -0.33986318E-03 -0.71542886E-03 -0.62329713E-03 -0.61930676E-03 + -0.72947135E-03 -0.10821872E-02 -0.10939979E-02 -0.12544575E-02 -0.12402686E-02 + -0.10984782E-02 -0.10991664E-02 -0.10163132E-02 -0.54515383E-03 -0.61328529E-03 + -0.48910198E-03 -0.52014963E-03 -0.36209813E-03 -0.22628035E-07 0.14991806E-07 + -0.77158995E-07 0.27565689E-07 -0.17191482E-06 -0.16730828E-06 -0.25348787E-06 + -0.84100552E-06 -0.49808053E-06 -0.59923690E-06 -0.42251991E-06 -0.11968484E-05 + -0.21523464E-05 -0.27634613E-05 -0.30626849E-05 -0.25596055E-05 -0.34007934E-05 + -0.14821314E-05 0.63060126E-06 0.33829447E-06 -0.28796817E-06 -0.31564147E-06 + 0.57975464E-06 -0.26988453E-06 -0.55476365E-06 -0.52042930E-07 -0.26119886E-05 + 0.84603367E-05 0.15182359E-04 0.70916145E-05 0.24635865E-03 -0.23611799E-03 + -0.24270787E-03 -0.26037300E-03 0.60643949E-04 -0.84222915E-03 -0.15022720E-02 + -0.21495098E-02 -0.17772293E-02 -0.17133127E-02 -0.22569440E-02 -0.27856999E-02 + -0.23411115E-02 -0.24904201E-02 -0.21140477E-02 -0.15193130E-02 -0.13476034E-02 + -0.11025492E-02 -0.28551757E-03 -0.54357220E-03 -0.33300228E-03 -0.35264074E-03 + -0.15784141E-03 -0.24858932E-07 -0.25904825E-07 -0.57173165E-07 -0.76268245E-07 + -0.57099088E-06 -0.88906758E-06 -0.75294466E-06 -0.29000691E-05 -0.16447921E-05 + -0.20817317E-05 -0.13072278E-05 -0.41627940E-05 -0.76936384E-05 -0.98683059E-05 + -0.11420493E-04 -0.93660263E-05 -0.13218450E-04 -0.59224733E-05 0.22943920E-05 + 0.72908304E-06 -0.14606445E-05 -0.11571315E-05 0.29657061E-05 -0.83367639E-06 + -0.19687650E-05 0.63263987E-06 -0.87841374E-05 0.51042755E-04 0.85992045E-04 + 0.55446136E-04 0.83607263E-03 -0.13299194E-02 -0.12724184E-02 -0.79968673E-03 + 0.12615226E-02 -0.18098198E-02 -0.24346513E-02 -0.25001654E-02 -0.10924062E-02 + -0.11058859E-02 -0.14357257E-02 -0.21167386E-02 -0.41075351E-03 -0.17813739E-02 + -0.13658503E-02 0.95245192E-06 -0.22156482E-03 -0.17579964E-03 0.58546631E-03 + 0.35714243E-03 0.50639894E-03 0.82642736E-04 0.25856138E-03 -0.22508702E-08 + 0.30307379E-08 0.12032718E-07 -0.21838268E-07 -0.26948669E-07 0.10717136E-06 + 0.74646981E-07 0.69484430E-07 0.71593067E-07 0.12570295E-06 0.41253338E-07 + -0.15163176E-06 -0.46251645E-07 0.30904032E-07 -0.22302700E-06 -0.42629836E-06 + -0.78827026E-06 -0.14770278E-05 -0.20930692E-05 -0.26013040E-05 -0.25518916E-05 + -0.19556635E-05 -0.81703658E-05 -0.29611177E-05 -0.59889372E-06 -0.32468165E-06 + 0.10797761E-05 -0.44780096E-06 0.11149276E-04 0.20360245E-05 -0.54062588E-05 + 0.25929313E-04 0.11037687E-03 0.18089535E-03 0.13296458E-03 0.26833249E-03 + 0.38707037E-03 0.70933025E-03 0.73955260E-03 0.71547841E-03 0.81527791E-03 + 0.78190660E-03 0.10726974E-02 0.79883568E-03 0.68704757E-03 0.64462489E-03 + 0.59865490E-03 0.68575203E-03 0.44519735E-03 0.65328330E-03 0.80784702E-03 + 0.47300329E-03 0.43317157E-03 0.35714939E-04 0.23206707E-04 0.44582098E-04 + 0.12170808E-03 0.11411121E-03 0.13952317E-03 0.18443944E-03 -0.10233203E-04 + -0.65882600E-04 -0.75617935E-04 -0.48559554E-03 -0.49159727E-03 -0.85439699E-03 + -0.90399782E-03 -0.89260140E-03 -0.73855086E-03 0.54981036E-04 0.16470445E-02 + 0.33456605E-02 0.40751491E-02 0.52022238E-02 0.41781690E-02 0.22827602E-02 + 0.31864805E-02 -0.43439607E-03 -0.55924818E-02 0.64152175E-02 -0.24117204E-01 + -0.17121674E-01 -0.89168807E-01 -0.11605906E+00 -0.17455068E+00 -0.27272826E+00 + -0.24667404E+00 -0.25950386E+00 -0.40706160E+00 -0.40004007E+00 -0.52580484E+00 + -0.61294545E+00 -0.63539183E+00 -0.69233099E+00 -0.67817823E+00 -0.78573709E+00 + -0.71839705E+00 -0.62480002E+00 -0.59702551E+00 -0.48155584E+00 -0.41657752E+00 + -0.48075485E+00 -0.40969662E+00 -0.33527153E+00 -0.27658719E+00 -0.21427078E+00 + 0.22563524E-05 0.23809696E-05 -0.94994032E-06 -0.23825076E-04 -0.15875819E-04 + 0.65728272E-04 0.66751342E-04 -0.25991971E-05 -0.31308616E-04 -0.87784792E-04 + -0.21922342E-03 -0.37627138E-03 -0.53649902E-03 -0.64386015E-03 -0.63051472E-03 + -0.66104199E-03 -0.56436721E-03 -0.65153034E-03 -0.95439083E-03 -0.10138095E-02 + -0.11133472E-02 -0.14003221E-02 -0.29478192E-02 -0.18496938E-02 -0.76456116E-03 + -0.47638211E-03 0.76814437E-03 -0.40691042E-02 0.19442910E-02 -0.72556590E-02 + -0.16590287E-01 -0.17486409E-01 -0.41302416E-01 -0.41434035E-01 -0.57092012E-01 + -0.67778033E-01 -0.76476193E-01 -0.94049114E-01 -0.11415092E+00 -0.10162999E+00 + -0.10619542E+00 -0.10279450E+00 -0.12379677E+00 -0.10919069E+00 -0.11064678E+00 + -0.12155139E+00 -0.10239701E+00 -0.76435506E-01 -0.95792826E-01 -0.89269339E-01 + -0.79865252E-01 -0.65880897E-01 -0.51579260E-01 -0.44989725E-08 0.14202040E-07 + 0.45466057E-07 -0.22826318E-06 0.68005776E-07 -0.15555488E-06 -0.39044051E-06 + -0.28227773E-06 -0.96532304E-06 -0.13684276E-05 -0.16287966E-05 -0.44796777E-07 + 0.15605679E-05 0.23481996E-05 0.28729828E-05 0.20691039E-05 0.58294511E-05 + 0.16344936E-05 -0.37651902E-05 -0.30389731E-05 -0.16683041E-05 -0.10449334E-05 + -0.30760563E-05 0.89368119E-06 0.14716294E-05 -0.10187343E-05 0.10671400E-04 + 0.60330698E-05 0.66940867E-04 0.78170488E-04 0.17207611E-03 0.38096148E-03 + 0.65806560E-03 0.67991647E-03 0.27342496E-03 0.10444771E-02 0.31242990E-03 + -0.11568362E-04 -0.71809017E-03 -0.40597801E-03 -0.19446397E-02 -0.19475110E-02 + -0.26633895E-02 -0.34614417E-02 -0.40980814E-02 -0.48801031E-02 -0.45462593E-02 + -0.38374026E-02 -0.38125615E-02 -0.30915166E-02 -0.27742260E-02 -0.23341119E-02 + -0.18025361E-02 0.00000000E+00 0.00000000E+00 -0.72113043E-07 0.66650367E-07 + -0.15736432E-06 -0.23438782E-07 -0.64038878E-07 -0.51642746E-07 -0.13357436E-06 + -0.21259386E-06 -0.13929999E-06 0.14450483E-07 0.24091667E-06 0.31805063E-06 + 0.35507555E-06 0.28831014E-06 0.55894520E-06 0.19390056E-06 -0.26208114E-06 + -0.20121440E-06 -0.10297131E-06 -0.33902619E-07 -0.63351825E-07 0.10273238E-06 + 0.75292805E-07 -0.58819590E-07 0.46837373E-06 0.69770766E-06 0.32769593E-05 + -0.29863115E-06 0.20266525E-05 -0.12124054E-06 0.21029320E-04 0.29143430E-04 + -0.18757347E-05 0.14799432E-04 0.45751382E-04 0.23841316E-03 0.26173139E-03 + 0.29476033E-03 0.37106416E-03 0.56252122E-03 0.94338790E-03 0.11626961E-02 + 0.13952690E-02 0.14451268E-02 0.14514839E-02 0.15798770E-02 0.13092958E-02 + 0.11529753E-02 0.91641313E-03 0.80138455E-03 0.63288756E-03 0.00000000E+00 + -0.33285664E-07 0.53683242E-07 -0.62320695E-07 -0.23518860E-07 -0.54104239E-07 + -0.11031552E-06 -0.97000259E-07 -0.24777684E-06 -0.27873124E-06 -0.30524225E-06 + 0.76360328E-07 0.37414109E-06 0.44453720E-06 0.56324383E-06 0.44044458E-06 + 0.88911715E-06 0.27102535E-06 -0.40718002E-06 -0.33421927E-06 -0.12975265E-06 + -0.88241031E-07 -0.19960270E-06 0.14330953E-06 0.13273932E-06 -0.89087002E-07 + 0.98561837E-06 0.12024893E-05 0.56403852E-05 -0.39369078E-05 -0.71919631E-05 + -0.62763626E-05 0.85159591E-04 0.15212166E-03 0.13208761E-03 0.22920588E-03 + 0.31740315E-03 0.47285173E-03 0.47656759E-03 0.54339025E-03 0.39511981E-03 + 0.55422181E-03 0.76928138E-03 0.73216326E-03 0.70149941E-03 0.60838688E-03 + 0.57023062E-03 0.68411076E-03 0.47743532E-03 0.48524287E-03 0.37090166E-03 + 0.36200549E-03 0.30713946E-03 0.23458803E-07 -0.33630702E-07 0.91922277E-07 + -0.11576738E-06 0.46665207E-08 -0.28338255E-06 -0.43439666E-06 -0.35690498E-06 + -0.83186099E-06 -0.10970857E-05 -0.10504731E-05 0.20021528E-06 0.12485187E-05 + 0.17566122E-05 0.19753471E-05 0.15752213E-05 0.30836768E-05 0.97848860E-06 + -0.14688903E-05 -0.12343326E-05 -0.52313920E-06 -0.28556094E-06 -0.73475667E-06 + 0.45479661E-06 0.47844455E-06 -0.34593194E-06 0.32480022E-05 0.33193097E-05 + 0.17840308E-04 -0.12334335E-04 -0.91041847E-05 0.19899716E-04 0.34531397E-03 + 0.54568888E-03 0.46923451E-03 0.88626193E-03 0.10520822E-02 0.11730587E-02 + 0.11043226E-02 0.13319752E-02 0.51627781E-03 0.87628957E-03 0.75323913E-03 + 0.17846336E-03 -0.45212640E-03 -0.99414299E-03 -0.11801241E-02 -0.10713634E-02 + -0.13737701E-02 -0.11333310E-02 -0.11111041E-02 -0.10247335E-02 -0.81784516E-03 + 0.12511853E-07 -0.15195900E-07 -0.65191422E-07 -0.20252585E-06 -0.31540304E-07 + -0.69847911E-06 -0.15093103E-05 -0.10813687E-05 -0.28712759E-05 -0.39333216E-05 + -0.41295971E-05 0.22740047E-06 0.39029052E-05 0.55395723E-05 0.66598672E-05 + 0.48099609E-05 0.11592036E-04 0.37408437E-05 -0.59390885E-05 -0.48822646E-05 + -0.25974041E-05 -0.22629584E-05 -0.45054141E-05 0.99639487E-06 0.93474160E-06 + -0.23481687E-05 0.11533781E-04 -0.28825719E-05 0.56146215E-04 0.14951578E-05 + 0.33192660E-03 0.72358594E-03 0.12775974E-02 0.88908756E-03 0.11157581E-03 + 0.11033306E-02 -0.64588960E-03 -0.89177344E-03 -0.20857197E-02 -0.16344070E-02 + -0.38090048E-02 -0.35630473E-02 -0.46175330E-02 -0.50140551E-02 -0.56037468E-02 + -0.67437738E-02 -0.61395278E-02 -0.49138933E-02 -0.48209585E-02 -0.40487878E-02 + -0.35841249E-02 -0.28682108E-02 -0.21963333E-02 +Ozone + -0.10847086E-09 -0.42841407E-08 -0.24267163E-08 0.37262738E-08 -0.78960929E-07 + -0.16432350E-06 -0.37943301E-06 -0.90170362E-06 0.57480186E-06 -0.25768757E-05 + 0.15599538E-05 0.12709932E-06 -0.38990330E-05 -0.93391418E-05 -0.90146397E-05 + -0.11905571E-04 -0.84034090E-05 -0.61551503E-05 -0.23298025E-05 0.56451339E-06 + 0.33252841E-05 -0.23551981E-05 0.34197028E-05 -0.68474623E-05 -0.27307901E-05 + 0.52815547E-05 0.10855995E-04 0.16144239E-04 0.12669295E-04 0.65188723E-05 + 0.32120493E-05 0.14965787E-05 -0.12460205E-05 -0.16977543E-05 -0.17732256E-05 + -0.19835162E-05 -0.10857547E-05 -0.46525870E-06 -0.57967800E-06 0.36015109E-06 + 0.32633492E-05 0.47232429E-05 0.50606003E-05 0.49465328E-05 0.48606252E-05 + 0.15461816E-05 -0.40699511E-06 -0.56823548E-06 0.94439263E-06 -0.15477303E-05 + -0.15098574E-06 0.80441705E-06 0.78271019E-06 -0.16639092E-08 -0.17770884E-07 + -0.28539504E-07 -0.36144013E-07 -0.27757957E-06 -0.81865300E-06 -0.20382398E-05 + -0.34706866E-05 0.29167382E-05 -0.12183468E-04 0.66940214E-05 0.30650566E-05 + -0.13305795E-04 -0.33255252E-04 -0.35384091E-04 -0.50971736E-04 -0.31800567E-04 + -0.18379614E-04 -0.69275220E-05 0.86622079E-05 0.18105699E-04 -0.70609831E-05 + 0.12498699E-04 -0.32157348E-04 -0.15397925E-04 0.29300254E-04 0.54716463E-04 + 0.61035800E-04 0.25974055E-04 0.12205581E-04 0.40547674E-05 0.31917759E-06 + 0.29396303E-05 -0.33473531E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.89803618E-10 -0.19957571E-09 -0.19192110E-08 -0.17397964E-07 + -0.11319194E-07 -0.12342633E-06 -0.15360725E-06 -0.29890540E-06 -0.48605935E-06 + -0.58932258E-06 -0.22395265E-06 -0.15023589E-05 -0.25712681E-05 -0.36621351E-05 + -0.45163529E-05 -0.37419645E-05 -0.41911310E-05 -0.37888507E-05 -0.27715274E-05 + -0.28290467E-05 -0.18002026E-05 -0.15591578E-05 -0.66575975E-06 -0.84297976E-06 + -0.11677393E-06 0.41292183E-06 0.96718401E-06 0.41958712E-06 0.20961574E-06 + -0.72105882E-08 -0.20195248E-06 -0.30071313E-06 0.11430848E-06 -0.30470232E-06 + -0.34668980E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.27028108E-04 -0.54123343E-04 -0.71367896E-04 + -0.84338273E-04 -0.11223648E-03 -0.13350990E-03 -0.14425801E-03 -0.16645876E-03 + -0.10008425E-03 -0.21841601E-04 0.34828916E-05 0.16111560E-04 -0.82153683E-07 + -0.98967081E-06 -0.15148578E-05 -0.20618602E-05 -0.77488486E-05 -0.22963076E-04 + -0.55258740E-04 -0.10398530E-03 0.12312060E-04 -0.31065823E-03 -0.44956414E-03 + -0.61856534E-03 -0.81133381E-03 -0.76458651E-03 -0.12572894E-02 -0.93739280E-03 + -0.13511364E-02 -0.11738685E-02 -0.82939914E-03 -0.12421560E-02 -0.10795314E-02 + -0.92918861E-03 -0.83302343E-03 -0.53152945E-03 -0.71086280E-03 -0.71046073E-03 + -0.44609265E-03 -0.40572249E-03 -0.35766019E-03 -0.26793013E-03 -0.21055616E-03 + -0.18542002E-03 -0.14722822E-03 -0.12743243E-03 -0.12492567E-03 -0.13381231E-03 + -0.12676164E-03 -0.12138403E-03 -0.12088268E-03 -0.13602489E-03 -0.13728541E-03 + -0.17059613E-03 -0.16370230E-03 -0.13848511E-03 -0.12667199E-03 -0.11016311E-03 + -0.92427132E-04 -0.82815051E-04 -0.84983775E-04 -0.55297291E-04 0.11669927E-04 + 0.21884489E-04 0.12284127E-04 -0.10058027E-04 -0.10148551E-03 -0.16008145E-03 + -0.23293828E-03 -0.87779502E-03 -0.22821076E-02 -0.57889471E-02 -0.10605408E-01 + -0.93620369E-02 -0.13588825E-01 -0.23052856E-01 -0.20639796E-01 -0.66104433E-02 + 0.70912843E-03 -0.24695335E-01 -0.17827772E-01 -0.47730327E-01 -0.50204225E-01 + -0.30850697E-01 -0.56262747E-01 -0.50616700E-01 -0.41467552E-01 -0.42830228E-01 + -0.20401597E-01 -0.27790220E-01 -0.35757859E-01 -0.31273016E-01 -0.30042238E-01 + -0.24596612E-01 -0.18857837E-01 -0.16037423E-01 -0.14453854E-01 -0.12558208E-01 + -0.11026856E-01 -0.10121006E-01 -0.96366994E-02 -0.95385491E-02 -0.95799619E-02 + -0.10076820E-01 -0.10558768E-01 -0.10362240E-01 -0.11339429E-01 -0.10669386E-01 + -0.10347499E-01 -0.99732892E-02 -0.88284644E-02 -0.81256120E-02 -0.72653324E-02 + -0.55332577E-02 -0.45352774E-02 -0.31716709E-02 -0.24593178E-02 -0.19799209E-02 + -0.49913253E-08 -0.67887212E-07 -0.19599205E-06 -0.56674620E-06 -0.30401154E-05 + -0.13574627E-04 -0.21248336E-05 -0.62889552E-04 -0.97303246E-04 -0.14887773E-04 + -0.21126823E-04 -0.17630274E-03 -0.22300247E-03 -0.25952746E-03 -0.31015099E-03 + -0.20036395E-03 -0.21843468E-03 -0.23185540E-03 -0.20984785E-03 -0.16799406E-03 + -0.10342279E-03 -0.78131620E-04 -0.53805922E-04 -0.38246780E-04 -0.30078086E-04 + -0.28231320E-04 -0.19715746E-04 -0.17585677E-04 -0.14253464E-04 -0.10770027E-04 + -0.96056531E-05 -0.84051416E-05 -0.79809212E-05 -0.79499203E-05 -0.87119635E-05 + -0.10486787E-04 -0.11925355E-04 -0.13045698E-04 -0.13147297E-04 -0.12887115E-04 + -0.11188586E-04 -0.12145918E-04 -0.12458035E-04 -0.12570098E-04 -0.13049636E-04 + -0.12177879E-04 -0.13075275E-04 -0.12890780E-04 -0.11967875E-04 -0.10239002E-04 + -0.63987009E-05 -0.45650658E-05 -0.37257155E-05 0.99782583E-09 -0.20109375E-07 + -0.98888766E-07 0.33564345E-07 -0.39932034E-06 -0.13202747E-05 -0.16076539E-05 + -0.60239378E-05 -0.70993504E-05 -0.74120378E-05 -0.37452027E-05 -0.20586946E-04 + -0.29771200E-04 -0.35224142E-04 -0.46885188E-04 -0.28348819E-04 -0.40524638E-04 + -0.41113528E-04 -0.35699286E-04 -0.36658178E-04 -0.25627938E-04 -0.19904135E-04 + -0.15556728E-04 -0.10460939E-04 -0.99333421E-05 -0.99061173E-05 -0.61680885E-05 + -0.63125753E-05 -0.61881004E-05 -0.48406412E-05 -0.40257641E-05 -0.39604370E-05 + -0.32436980E-05 -0.33831686E-05 -0.36546657E-05 -0.41232601E-05 -0.34945575E-05 + -0.22018925E-05 -0.19839122E-06 0.86464267E-06 0.15254557E-05 -0.98497225E-06 + -0.38723331E-05 -0.41720766E-05 -0.36014365E-05 -0.46877005E-05 -0.54802886E-05 + -0.37215698E-05 -0.10835280E-05 -0.16379686E-05 -0.14382580E-05 -0.15162738E-05 + -0.12965226E-05 -0.14250416E-06 -0.14696003E-05 -0.23394926E-05 -0.31721964E-05 + -0.10412844E-04 -0.28095790E-04 -0.67908559E-04 -0.12989663E-03 0.47656561E-04 + -0.38053810E-03 -0.76491818E-03 -0.11813469E-02 -0.15551159E-02 -0.15703584E-02 + -0.24154585E-02 -0.20131670E-02 -0.28250612E-02 -0.25117177E-02 -0.18951163E-02 + -0.25094761E-02 -0.22222397E-02 -0.18188206E-02 -0.15220567E-02 -0.88101872E-03 + -0.10124107E-02 -0.11005957E-02 -0.80546243E-03 -0.65579781E-03 -0.43290131E-03 + -0.37143857E-03 -0.24623211E-03 -0.14675763E-03 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.12537729E-10 + -0.39346808E-08 -0.39282542E-08 0.16816762E-07 -0.23769150E-07 -0.19509567E-06 + -0.62556471E-06 -0.55835852E-06 0.77887611E-06 -0.13627016E-05 0.36637682E-06 + 0.82147771E-06 0.44526217E-06 -0.34052389E-07 0.82711873E-06 0.46296337E-06 + 0.13928174E-06 -0.10543558E-05 -0.15747976E-05 -0.19895066E-05 -0.17142307E-05 + -0.51201478E-05 -0.33000141E-05 -0.60357880E-06 0.38138494E-05 0.29594456E-05 + 0.23772222E-05 -0.32568112E-05 -0.46451550E-05 -0.32755789E-05 -0.18444719E-05 + -0.12760757E-05 0.32664620E-06 0.88054773E-06 0.11381676E-05 0.18168402E-05 + 0.19846335E-05 0.16418902E-05 0.22792981E-05 0.23823678E-05 0.14971514E-05 + 0.58489475E-06 -0.67638564E-07 0.27854836E-06 0.10841347E-05 0.17015425E-05 + 0.18932387E-05 0.13668544E-05 0.59587168E-06 0.11091183E-05 0.12208273E-05 + 0.11291658E-05 0.92957462E-06 0.27904437E-09 -0.10947259E-07 -0.13175617E-07 + 0.28983988E-07 -0.12789403E-06 -0.84409131E-06 -0.30868194E-05 -0.22510752E-05 + 0.32791539E-05 -0.68914677E-05 0.39190243E-06 0.28133976E-05 -0.65828194E-06 + -0.37660230E-05 -0.14472817E-07 -0.18400967E-05 -0.16107963E-05 -0.47844652E-05 + -0.73544730E-05 -0.92441025E-05 -0.84107872E-05 -0.20323047E-04 -0.11240751E-04 + -0.27820972E-05 0.14945907E-04 0.11527934E-04 0.60098993E-05 -0.17772976E-04 + -0.11862026E-04 0.73993005E-06 0.37443917E-05 -0.35395115E-06 -0.54826845E-05 + -0.11331832E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.34669021E-10 0.15809639E-08 -0.38722761E-08 -0.49972630E-08 -0.90741687E-08 + -0.11924019E-06 -0.13272369E-06 -0.10478228E-06 0.37075925E-07 0.32055146E-07 + 0.36748029E-06 0.25315498E-06 0.41722116E-06 0.58204995E-06 0.57316367E-06 + 0.62519987E-06 0.26517513E-06 -0.12359210E-07 -0.12953958E-07 -0.21284946E-06 + -0.67958867E-07 -0.32888336E-06 -0.35120472E-06 0.16499095E-06 0.51683912E-06 + 0.20556657E-06 -0.11401988E-06 -0.33708786E-06 0.91087299E-07 0.15694057E-06 + 0.25519740E-06 0.19578927E-06 -0.16817026E-06 0.18877280E-06 0.10103358E-07 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.15041192E-04 -0.31979284E-04 -0.44216419E-04 -0.52785643E-04 + -0.60903740E-04 -0.68087726E-04 -0.67535964E-04 -0.63099414E-04 -0.60098895E-04 + -0.45279113E-04 -0.27459070E-04 -0.18665130E-04 0.70172651E-08 -0.48635490E-06 + -0.43574630E-06 0.26687315E-06 -0.14199518E-05 -0.83755464E-05 -0.47355556E-04 + -0.28064245E-04 0.10362215E-03 -0.20480048E-04 -0.37959953E-04 -0.47046436E-04 + 0.42199218E-05 0.39922945E-04 -0.30622064E-04 0.11862736E-03 0.54245975E-05 + -0.50818220E-04 0.69957129E-04 0.55755545E-04 0.10304052E-03 0.79953453E-04 + 0.45172077E-04 0.37605279E-04 0.67909387E-04 0.10551182E-03 0.14561691E-04 + -0.10147077E-05 0.81966366E-05 -0.16493000E-05 0.14275171E-04 0.16453593E-04 + 0.11831245E-04 0.17435821E-05 -0.83950740E-05 0.22666211E-05 -0.53170494E-06 + -0.13631735E-04 -0.30935005E-04 -0.49343660E-04 -0.65824663E-04 -0.72809214E-04 + -0.87147853E-04 -0.93062859E-04 -0.95141197E-04 -0.94974319E-04 -0.85054032E-04 + -0.66163711E-04 -0.57452242E-04 -0.55295834E-04 -0.60449538E-04 -0.50341489E-04 + -0.39603567E-04 0.91057111E-06 -0.48186725E-04 -0.45728306E-04 -0.20759856E-04 + -0.26530656E-03 -0.48366701E-03 -0.29777637E-02 -0.33299517E-03 0.60341075E-02 + 0.93392604E-02 0.31106076E-02 -0.65440246E-02 0.33275026E-02 0.50582364E-02 + -0.18212262E-02 0.98086868E-03 -0.99975876E-02 -0.11580380E-01 -0.52408975E-02 + -0.52799361E-02 -0.34241806E-02 -0.66276427E-02 -0.65992639E-02 -0.60179649E-02 + -0.42736348E-02 -0.53201230E-03 -0.17450111E-02 -0.29872462E-02 -0.24194966E-02 + -0.16187637E-02 -0.71583959E-03 -0.57501862E-03 -0.58066883E-03 -0.61296427E-03 + -0.91245340E-03 -0.84640475E-03 -0.88660594E-03 -0.81594837E-03 -0.84950435E-03 + -0.88615206E-03 -0.69465371E-03 -0.58217289E-03 -0.48911426E-03 -0.31427865E-03 + -0.30748898E-03 -0.70996974E-04 0.11039596E-03 0.21482608E-03 0.13094298E-03 + 0.10570070E-03 -0.10144056E-03 0.51520271E-04 -0.57270978E-05 0.11530433E-08 + -0.40697223E-07 -0.11230651E-06 -0.27121092E-06 -0.21422773E-05 -0.13801826E-04 + 0.63637258E-05 -0.21253578E-04 0.25201846E-07 0.54941567E-04 0.65976498E-04 + 0.27375357E-04 0.68314169E-04 0.10439530E-03 0.84656043E-04 0.73152555E-04 + 0.43781917E-04 0.19108890E-04 0.58527393E-05 -0.20022299E-05 0.14148881E-04 + 0.14560888E-04 0.62144457E-05 0.26976795E-05 0.16698142E-05 0.32626402E-05 + 0.72917284E-07 -0.66994934E-06 -0.96659267E-06 -0.13770840E-05 -0.88861229E-06 + -0.13103612E-05 -0.12801461E-05 -0.89751297E-06 -0.67322180E-06 0.57201184E-06 + 0.16243930E-05 0.25188524E-05 0.28237630E-05 0.26796612E-05 0.23229304E-05 + 0.25240715E-05 0.24457174E-05 0.20104345E-05 0.13992784E-05 0.11291361E-05 + 0.93321667E-06 0.10082684E-05 0.49492600E-06 -0.19701982E-06 -0.47208588E-06 + 0.77339930E-08 -0.10176154E-07 -0.28091691E-09 -0.31612742E-08 -0.71221187E-07 + 0.59440914E-07 -0.19189474E-06 -0.12005629E-05 -0.14301111E-05 -0.27753239E-05 + 0.30360676E-06 0.95475166E-06 0.50878139E-05 0.29902983E-05 0.68566865E-05 + 0.10411020E-04 0.87676337E-05 0.98836458E-05 0.54807552E-05 0.16345879E-05 + 0.16405726E-05 0.43573711E-06 0.26470923E-05 0.32705236E-05 0.17976004E-05 + 0.10898267E-05 0.86889548E-06 0.15598417E-05 -0.55176854E-07 -0.16517132E-06 + 0.15497597E-06 0.15614715E-06 0.67784450E-06 0.10019663E-05 0.14130183E-05 + 0.18507298E-05 0.18613069E-05 0.24669040E-05 0.28087135E-05 0.26526892E-05 + 0.16200777E-05 0.79372991E-06 -0.88298548E-08 0.85647852E-06 0.14642366E-05 + 0.17885129E-05 0.21254621E-05 0.26338991E-05 0.23926077E-05 0.17789213E-05 + 0.14386656E-05 0.16044655E-05 0.12888748E-05 0.12751050E-05 0.10662321E-05 + 0.13498759E-07 -0.71513352E-06 -0.64959717E-06 0.15030968E-06 -0.15941477E-05 + -0.46359929E-05 -0.52590478E-04 -0.20343413E-04 0.16993206E-03 0.46826614E-04 + -0.65222220E-05 -0.10902075E-03 -0.34830494E-04 0.58600396E-04 -0.32446877E-04 + 0.20282024E-03 -0.17180027E-04 -0.64451040E-04 0.17022455E-03 0.20410317E-03 + 0.29110260E-03 0.23042827E-03 0.15403219E-03 0.98511793E-04 0.18858189E-03 + 0.25068146E-03 0.14972888E-03 0.14054512E-03 0.19077537E-03 0.23765736E-03 + 0.25652976E-03 0.14028329E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.37133575E-11 -0.99389519E-11 + -0.57534951E-11 -0.31483623E-10 -0.17721136E-09 -0.60111574E-09 -0.96446116E-09 + -0.13195136E-08 -0.20693112E-08 -0.38222803E-08 -0.75148920E-08 -0.16238967E-07 + -0.23420953E-07 -0.40913883E-07 -0.39742122E-07 -0.35533752E-07 -0.28482977E-07 + -0.13306668E-07 -0.21720516E-07 -0.33643726E-07 -0.34610411E-07 0.24814427E-07 + 0.31565249E-07 -0.46166267E-08 -0.37959482E-07 -0.62868389E-07 -0.34892052E-07 + 0.10381557E-06 0.14018399E-06 0.10623144E-06 0.70177128E-07 -0.20790161E-08 + -0.53696469E-07 -0.39657536E-07 -0.34794731E-07 -0.23326102E-07 -0.11677130E-07 + -0.21811127E-07 -0.21187136E-07 -0.15792586E-07 -0.10496990E-07 0.88938039E-09 + 0.58121539E-08 0.19448505E-07 0.23600271E-07 0.15339420E-07 -0.23625840E-08 + -0.16735840E-08 0.98641763E-08 0.66268510E-08 0.21802910E-08 0.30991289E-08 + 0.22199526E-08 -0.14478729E-10 -0.33591791E-10 -0.72393575E-10 -0.79654236E-10 + -0.65248715E-09 -0.21267516E-08 -0.37651305E-08 -0.53924488E-08 -0.83017966E-08 + -0.14903321E-07 -0.29255644E-07 -0.64535424E-07 -0.89950238E-07 -0.15662195E-06 + -0.15337536E-06 -0.13923375E-06 -0.11092108E-06 -0.57593982E-07 -0.94358156E-07 + -0.13892459E-06 -0.13664696E-06 0.97631082E-07 0.12177249E-06 0.12864512E-07 + -0.13420286E-06 -0.24161003E-06 -0.45697227E-07 0.29276496E-06 0.48574044E-07 + -0.94282792E-07 0.29134340E-07 0.11434331E-06 0.14293349E-06 0.17559014E-06 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.11764976E-11 + -0.60661705E-11 -0.15814926E-10 -0.32520126E-10 -0.91966291E-10 -0.29749064E-09 + -0.49440653E-09 -0.93582172E-09 -0.16877855E-08 -0.35098497E-08 -0.61664659E-08 + -0.10776093E-07 -0.16056018E-07 -0.22449882E-07 -0.26802947E-07 -0.25509396E-07 + -0.24571155E-07 -0.21861298E-07 -0.21494527E-07 -0.23891422E-07 -0.21699110E-07 + -0.15149214E-07 -0.79766095E-08 -0.99350760E-08 -0.10745535E-07 -0.12095791E-07 + -0.18931136E-08 -0.52147675E-08 -0.10407810E-07 -0.11159503E-07 -0.47602621E-08 + 0.31504307E-08 0.10375784E-07 0.11716665E-07 0.91432318E-08 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.25975740E-08 0.18415850E-07 0.37183209E-07 -0.79800231E-08 -0.70927544E-07 + -0.17662131E-06 -0.37840911E-06 -0.53517870E-06 -0.40880381E-06 -0.19166016E-06 + -0.87684762E-07 -0.63927818E-07 -0.33391101E-09 -0.10226148E-08 -0.25918666E-08 + -0.55883107E-08 -0.15245455E-07 -0.39136100E-07 -0.60841163E-07 -0.13075389E-06 + -0.24207852E-06 -0.47928413E-06 -0.63541961E-06 -0.92336932E-06 -0.11812182E-05 + -0.11752448E-05 -0.10963165E-05 -0.93115997E-06 -0.12138993E-05 -0.68846228E-06 + -0.10704413E-06 -0.20766509E-05 -0.13362385E-05 -0.17953746E-05 -0.14758745E-05 + 0.34832554E-07 -0.65060719E-06 -0.33854441E-05 0.21985281E-06 -0.84173452E-06 + -0.49642092E-06 -0.69005847E-06 -0.79274887E-06 -0.24990204E-06 0.22224206E-07 + 0.36304266E-06 0.51297404E-08 0.91011803E-07 -0.17313588E-07 0.23285038E-07 + 0.27753483E-06 0.17055042E-06 0.64726592E-07 -0.41556384E-07 -0.26645458E-06 + -0.55611876E-06 -0.80765205E-06 -0.96287428E-06 -0.95384084E-06 -0.98747029E-06 + -0.92871039E-06 -0.49869020E-06 -0.14729112E-06 0.12379320E-07 0.40002549E-08 + 0.43448560E-07 0.52262134E-07 0.87759741E-07 0.23274152E-06 0.52947010E-06 + -0.21203039E-07 -0.81210353E-06 -0.67662705E-05 -0.15199949E-04 -0.19345932E-04 + -0.52118278E-05 0.20513502E-05 -0.92747157E-05 -0.19409288E-04 -0.26242644E-04 + -0.27823712E-04 -0.39628178E-04 -0.28514796E-04 -0.32181428E-04 -0.11405512E-03 + -0.70620111E-04 -0.45177374E-04 -0.47562515E-04 0.66215928E-04 0.26715599E-04 + -0.31672735E-04 0.84002329E-04 0.52489440E-04 0.44867263E-04 0.45907318E-04 + 0.38423887E-04 0.56667503E-04 0.29978536E-04 0.37765231E-04 0.31816138E-04 + 0.31883929E-04 0.24773991E-04 0.25203600E-04 0.23391597E-04 0.77741955E-05 + 0.54106989E-05 0.39994448E-05 -0.13377645E-07 -0.25000364E-05 -0.46477967E-05 + -0.42431445E-05 -0.35122654E-05 -0.43988676E-05 -0.52872690E-05 -0.49087979E-05 + -0.28688507E-05 -0.86614074E-06 -0.11663993E-05 -0.90368678E-10 -0.27730458E-09 + -0.97706768E-09 -0.32113294E-08 -0.93144701E-08 -0.35615950E-07 -0.54014438E-07 + -0.77842816E-07 -0.14826817E-06 -0.32148104E-06 -0.55890430E-06 -0.93048693E-06 + -0.13246440E-05 -0.16998446E-05 -0.20111015E-05 -0.17236995E-05 -0.15990553E-05 + -0.14091792E-05 -0.12651880E-05 -0.12367923E-05 -0.12147117E-05 -0.10414729E-05 + -0.74816907E-06 -0.56291760E-06 -0.45823942E-06 -0.50334861E-06 -0.31072422E-06 + -0.29047767E-06 -0.19936979E-06 -0.14779760E-06 -0.10469133E-06 -0.77278296E-07 + -0.98517111E-07 -0.93351475E-07 -0.12148931E-06 -0.13549969E-06 -0.15371835E-06 + -0.15386840E-06 -0.14657824E-06 -0.17176154E-06 -0.19509997E-06 -0.21409619E-06 + -0.22502048E-06 -0.22417611E-06 -0.21308101E-06 -0.20198237E-06 -0.19378143E-06 + -0.18237408E-06 -0.15519054E-06 -0.10581206E-06 -0.68739352E-07 -0.50059404E-07 + -0.41751801E-07 -0.48634892E-10 -0.69492973E-10 -0.25249613E-09 -0.74065381E-09 + -0.18889353E-08 -0.53261623E-08 -0.90460186E-08 -0.17437511E-07 -0.33033415E-07 + -0.66710094E-07 -0.11333829E-06 -0.18887422E-06 -0.27565698E-06 -0.36441648E-06 + -0.44725346E-06 -0.44046498E-06 -0.44786678E-06 -0.42674555E-06 -0.40719885E-06 + -0.41201510E-06 -0.37640134E-06 -0.34793670E-06 -0.27488110E-06 -0.20366143E-06 + -0.16411536E-06 -0.19928209E-06 -0.11612318E-06 -0.12420516E-06 -0.10159757E-06 + -0.90307985E-07 -0.82610721E-07 -0.71947374E-07 -0.67506198E-07 -0.43115519E-07 + -0.28147073E-07 0.19379514E-08 0.21835833E-07 0.28973546E-07 0.48728775E-07 + 0.52227079E-07 0.75132736E-07 0.84137430E-07 0.74141733E-07 0.63819326E-07 + 0.50531487E-07 0.38237013E-07 0.27346871E-07 0.23117101E-07 0.21247192E-07 + 0.10740095E-07 0.84020749E-08 0.70174700E-08 0.45582633E-08 0.87260336E-10 + -0.34007399E-09 -0.79413589E-09 -0.67364208E-09 -0.23857226E-08 -0.79024774E-08 + 0.10938922E-08 -0.27471031E-08 -0.26482353E-07 -0.17363321E-06 -0.22297437E-06 + -0.39222976E-06 -0.58323842E-06 -0.41377655E-06 -0.14924260E-07 0.12445762E-09 + -0.61310715E-06 -0.14417768E-06 0.28203391E-06 -0.29720045E-05 -0.11695014E-05 + -0.11994017E-05 -0.39019287E-06 0.25360644E-05 0.26059444E-05 -0.10810520E-05 + 0.31806185E-05 0.28017523E-05 0.56673303E-05 0.64448898E-05 0.31267530E-05 + 0.31333682E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.13358203E-11 0.12215535E-09 0.62638224E-09 + -0.34694363E-08 0.53878010E-08 0.16435581E-07 0.65766028E-07 0.60088677E-07 + -0.42231898E-07 0.51675428E-07 0.61139394E-07 0.15935784E-06 0.10597417E-06 + 0.55433770E-06 -0.59507453E-07 -0.79234298E-06 -0.32794793E-06 0.36775605E-06 + 0.53241836E-06 0.62910843E-06 0.67615009E-06 0.64092321E-06 0.54189774E-06 + 0.85295708E-08 -0.23724718E-06 0.17257701E-07 0.48475008E-07 0.19987768E-06 + 0.12069586E-06 0.47367496E-07 -0.38727276E-07 0.48511562E-07 0.28085626E-07 + 0.36745724E-07 0.68197134E-07 0.41837670E-07 0.25066671E-07 0.19526339E-06 + 0.17561771E-06 0.11383196E-06 0.22796919E-07 0.78430628E-07 0.12353580E-06 + -0.99955935E-07 -0.21490273E-06 -0.78489393E-07 0.35615572E-07 0.10030143E-06 + 0.21841294E-07 -0.83239420E-07 -0.11553342E-06 -0.11504677E-06 -0.97300323E-07 + -0.18104629E-10 0.53892296E-09 0.12763563E-08 -0.36812223E-09 0.20602217E-07 + 0.75963872E-07 0.35162090E-06 0.24693966E-06 -0.21114572E-06 0.19517548E-06 + 0.16044373E-06 0.60778286E-06 0.58931523E-06 0.25497322E-05 -0.24395943E-06 + -0.33098563E-05 -0.11402350E-05 0.18908960E-05 0.25474341E-05 0.32056293E-05 + 0.33665881E-05 0.27591572E-05 0.20969752E-05 0.28868012E-07 -0.10527460E-05 + 0.27705463E-06 0.90198664E-06 0.17429335E-05 0.41678462E-06 0.31560746E-07 + -0.46296821E-06 -0.30921993E-06 0.78566680E-07 -0.24779339E-06 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.18635760E-10 -0.11486379E-09 + 0.14063615E-09 -0.72957883E-09 0.26793082E-08 0.14653333E-07 0.91501592E-08 + 0.13513102E-07 0.14973161E-07 0.31140742E-07 0.23237434E-07 0.48284696E-07 + -0.18170472E-08 0.30802206E-07 0.12811742E-07 -0.12782984E-06 -0.62644000E-07 + 0.12741285E-07 0.34212814E-07 0.59619906E-07 0.68618660E-07 0.70346531E-07 + 0.63701317E-07 0.80440866E-08 -0.99335857E-08 0.10856794E-07 0.38927064E-07 + 0.52039978E-07 0.44089521E-07 0.14947547E-08 -0.15611576E-07 -0.20954437E-07 + 0.68670828E-08 -0.29180122E-07 -0.17012942E-07 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.33865591E-05 + -0.54415812E-05 -0.47296568E-05 -0.26285091E-05 -0.52898729E-06 0.12659573E-05 + 0.30737863E-05 0.40043073E-05 0.68817518E-05 0.97578645E-05 0.11368751E-04 + 0.10715384E-04 -0.19645086E-09 0.26886755E-07 0.33824108E-07 -0.84154364E-07 + 0.12754529E-06 0.75343411E-06 0.58778987E-05 0.22591116E-05 -0.92799598E-05 + 0.15352025E-05 0.17399872E-05 0.28130671E-05 -0.16886708E-04 -0.21012447E-04 + -0.23759627E-04 -0.46565384E-04 -0.29222579E-04 -0.10732226E-04 -0.75630215E-05 + -0.11250364E-04 -0.15059892E-04 -0.12128635E-04 -0.97824056E-05 -0.17400501E-05 + -0.14894272E-04 -0.17279651E-04 -0.25836211E-06 0.54950445E-06 -0.18055872E-05 + 0.15458769E-06 -0.15133914E-05 -0.78176977E-06 -0.35252553E-06 -0.43177499E-06 + 0.11371725E-05 -0.10465819E-06 -0.17097645E-06 -0.75597663E-06 -0.34089424E-05 + -0.27821610E-05 -0.13484962E-06 0.40235700E-05 0.87843751E-05 0.13668425E-04 + 0.17509872E-04 0.19620741E-04 0.19782047E-04 0.19379567E-04 0.19948757E-04 + 0.16718817E-04 0.17096884E-04 0.16889105E-04 0.13502267E-04 -0.86612999E-07 + 0.28833538E-05 0.32465782E-05 -0.71350622E-05 0.16379576E-04 0.31631960E-04 + 0.21752137E-03 -0.33761606E-03 -0.12718351E-02 -0.79664412E-03 -0.10739995E-02 + 0.33332714E-03 -0.46077865E-03 0.24806079E-04 0.17308525E-04 -0.58444960E-03 + -0.56117287E-03 -0.13536135E-02 -0.13611993E-02 -0.22160738E-02 -0.22209021E-02 + -0.13017623E-02 -0.13711569E-02 -0.38466395E-03 -0.68159588E-03 -0.11602437E-02 + -0.80921083E-03 -0.63932828E-03 -0.50881729E-03 -0.26526672E-03 -0.29273843E-03 + -0.19160163E-03 -0.20795639E-03 -0.24547799E-03 -0.18649822E-03 -0.19609052E-03 + -0.17083903E-03 -0.17045749E-03 -0.19470817E-03 -0.13497530E-03 -0.12015073E-03 + -0.11165742E-03 -0.97939537E-04 -0.90724038E-04 -0.62444954E-04 -0.80762041E-04 + -0.10809109E-03 -0.95628368E-04 0.11201489E-04 0.34718604E-04 0.60318836E-04 + 0.32981073E-04 0.32711662E-04 -0.92313712E-10 0.23098720E-08 0.97269898E-08 + 0.28390205E-07 0.26473993E-06 0.19004072E-05 -0.23932818E-05 0.25769429E-05 + 0.36194219E-05 0.74620829E-05 0.75714956E-05 0.81176311E-05 -0.21313402E-06 + -0.34989118E-05 -0.49720879E-06 -0.76262606E-05 -0.49389132E-05 -0.33895155E-05 + -0.24772315E-05 -0.21479385E-06 -0.10488085E-05 -0.18669791E-05 -0.10425545E-05 + -0.48629000E-06 -0.38145749E-06 -0.50228381E-06 -0.22200599E-07 -0.57491703E-07 + -0.75331404E-07 0.11442043E-07 -0.56164430E-07 0.61396430E-07 0.10126398E-06 + 0.98402919E-07 0.20944353E-06 0.21978451E-06 0.24076190E-06 0.17587250E-06 + 0.23208274E-07 0.33160821E-07 0.11447756E-06 0.18013607E-06 0.25398997E-06 + 0.36983739E-06 0.40382134E-06 0.40714989E-06 0.53858324E-06 0.63783635E-06 + 0.67948169E-06 0.55848876E-06 0.36185696E-06 0.20038304E-06 0.18051839E-06 + 0.20543212E-09 0.16672631E-09 0.44823886E-08 -0.59855190E-08 0.21697561E-07 + 0.13800260E-06 0.13185867E-06 0.31616175E-06 0.22659796E-06 0.54744413E-06 + 0.29419685E-06 0.57750212E-06 -0.23124059E-06 -0.44290150E-06 0.26692297E-06 + -0.68843144E-06 -0.26662366E-06 -0.50620615E-07 -0.86645854E-07 0.69691200E-07 + -0.43215114E-07 -0.22880653E-06 -0.14837976E-06 -0.48564174E-07 -0.12642666E-06 + -0.18267868E-06 0.72734891E-07 0.57640487E-07 -0.35822196E-08 0.21529681E-07 + -0.11926717E-07 -0.48399732E-08 0.38483834E-07 0.16978991E-07 0.18190256E-07 + -0.12186798E-06 -0.30149327E-06 -0.44239783E-06 -0.76495686E-06 -0.77879655E-06 + -0.10401114E-05 -0.12953086E-05 -0.12456727E-05 -0.93620084E-06 -0.67748202E-06 + -0.55983449E-06 -0.42022279E-06 -0.30321639E-06 -0.23823960E-06 -0.18484919E-06 + -0.23447918E-06 -0.34464670E-06 -0.28442913E-06 -0.14370016E-08 0.41479554E-07 + 0.48522788E-07 -0.11021796E-06 0.12121094E-06 0.39800707E-06 0.62359258E-05 + 0.93594654E-06 -0.16392438E-04 -0.54413644E-05 -0.60063027E-05 -0.37439837E-05 + -0.35574787E-04 -0.48633473E-04 -0.56786720E-04 -0.81970983E-04 -0.69387214E-04 + -0.57242849E-04 -0.57747276E-04 -0.66616220E-04 -0.67957250E-04 -0.48258637E-04 + -0.33118363E-04 -0.11213629E-04 -0.29558729E-04 -0.41174313E-04 -0.26199712E-04 + -0.28051498E-04 -0.34322233E-04 -0.35664019E-04 -0.20911677E-04 -0.11314025E-04 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.16787631E-11 0.26981788E-11 -0.19619782E-10 -0.30346154E-10 + 0.31488145E-10 0.15795131E-09 0.15688644E-09 -0.44896070E-09 -0.93775767E-09 + -0.22573066E-08 -0.21518288E-08 0.24316328E-08 0.67719721E-08 0.23018571E-07 + 0.19225765E-07 0.11571772E-07 0.66590161E-08 -0.11169195E-07 -0.39772503E-08 + 0.17320913E-07 0.21975287E-07 -0.70922076E-07 -0.94179330E-07 -0.21428129E-07 + 0.54197310E-07 0.83083431E-07 0.28496493E-07 -0.20259215E-06 -0.24815249E-06 + -0.18882904E-06 -0.14113685E-06 -0.58720423E-07 0.14569893E-07 0.16981674E-07 + 0.22404356E-07 0.16876129E-07 0.86661658E-08 0.22333651E-07 0.23922940E-07 + 0.12635134E-07 -0.74403117E-11 -0.12392479E-07 -0.86141205E-08 -0.20226780E-07 + -0.24374323E-07 -0.13791943E-07 0.76969267E-08 0.85133529E-08 -0.49879064E-08 + -0.11409039E-08 0.48953963E-08 0.40131900E-08 0.35729227E-08 -0.17330429E-11 + -0.45699535E-11 -0.87400482E-11 -0.15450473E-09 -0.10945402E-10 0.49919623E-09 + 0.77691174E-09 -0.14387322E-08 -0.38096844E-08 -0.10457339E-07 -0.12924720E-07 + 0.15017035E-08 0.82531651E-08 0.62682604E-07 0.44448948E-07 0.11563260E-07 + -0.94171469E-08 -0.73135257E-07 -0.37799616E-07 0.46359920E-07 0.57823520E-07 + -0.31154889E-06 -0.39008688E-06 -0.12990663E-06 0.21254129E-06 0.35429750E-06 + 0.24057244E-07 -0.53223244E-06 -0.11945534E-06 0.23773303E-06 0.17800366E-06 + 0.99571501E-07 0.43037651E-07 -0.45504204E-07 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.11159825E-11 -0.52235322E-12 0.12132359E-10 + -0.67416780E-11 -0.74587926E-11 0.38313044E-10 -0.71434111E-11 -0.15110824E-09 + -0.19993244E-09 -0.76369297E-10 0.39299255E-09 0.23347702E-08 0.51174272E-08 + 0.93125768E-08 0.11443152E-07 0.81807784E-08 0.75305382E-08 0.46931021E-08 + 0.41311868E-08 0.95242885E-08 0.90899512E-08 0.42551993E-09 -0.83360054E-08 + -0.13795183E-08 0.44990024E-08 0.70799425E-08 -0.62794119E-08 -0.13580238E-08 + 0.76103611E-08 0.14948112E-07 0.11736117E-07 0.50351911E-08 -0.24403509E-08 + -0.52089421E-08 -0.36724139E-08 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.43262125E-08 -0.34578613E-07 + -0.10758526E-06 -0.11796185E-06 -0.11002642E-06 -0.36818121E-07 0.18167516E-06 + 0.37757226E-06 0.25769985E-06 -0.13591470E-08 -0.11877730E-06 -0.12023284E-06 + -0.10812397E-09 0.16410260E-09 0.41321577E-09 -0.91723466E-11 0.15203535E-08 + 0.96523392E-08 0.46161146E-08 -0.61369346E-08 0.20445301E-07 -0.98288244E-08 + -0.19477347E-06 -0.40169826E-06 -0.64847923E-06 -0.12053941E-05 -0.17446901E-05 + -0.22009067E-05 -0.18660603E-05 -0.27661814E-05 -0.35461323E-05 -0.43679530E-06 + -0.10022087E-05 -0.77130750E-06 -0.49918720E-06 -0.25514043E-05 -0.10911736E-05 + 0.29638754E-05 -0.12632647E-05 -0.15767743E-06 -0.75778680E-06 0.23489805E-06 + 0.61093829E-06 0.18312217E-06 -0.35993533E-06 -0.81864277E-06 -0.41832191E-06 + -0.52078624E-06 -0.48639240E-06 -0.61270121E-06 -0.99509011E-06 -0.10184724E-05 + -0.10199079E-05 -0.10304967E-05 -0.93277579E-06 -0.69431861E-06 -0.44480311E-06 + -0.27249180E-06 -0.20819588E-06 -0.47656029E-07 0.92914214E-08 -0.34366140E-06 + -0.65628324E-06 -0.71227278E-06 -0.55821467E-06 -0.42981196E-08 0.47756723E-07 + 0.11525150E-06 0.21646229E-06 0.42897057E-06 0.22391480E-05 0.40964887E-05 + 0.10570954E-04 0.20155212E-04 0.21041729E-04 -0.52397196E-06 -0.93232577E-05 + 0.13165560E-04 0.34152512E-04 0.48010379E-04 0.55079712E-04 0.75603373E-04 + 0.53053422E-04 0.59785207E-04 0.18576335E-03 0.13869390E-03 0.80639504E-04 + 0.94932105E-04 -0.79878772E-04 -0.16875649E-04 0.69596643E-04 -0.45365477E-04 + -0.25774863E-04 -0.27288624E-04 -0.86336699E-05 0.86749050E-06 -0.14414374E-04 + 0.26538077E-05 -0.93845073E-05 -0.74963968E-05 -0.11241210E-04 -0.71922688E-05 + -0.97924522E-05 -0.96581560E-05 0.33138882E-05 0.39589637E-05 0.53321764E-05 + 0.73383656E-05 0.98880217E-05 0.11177448E-04 0.10783528E-04 0.89562565E-05 + 0.90612641E-05 0.92899566E-05 0.78310192E-05 0.41566363E-05 0.21894897E-05 + 0.23296579E-05 0.28608186E-10 0.61232279E-10 0.26522269E-09 0.81329026E-09 + 0.85744397E-09 0.95615974E-08 -0.11161443E-08 -0.39653326E-07 -0.34773749E-07 + 0.16500935E-07 0.10567477E-06 0.34074407E-06 0.64704561E-06 0.96438972E-06 + 0.12006921E-05 0.82135594E-06 0.72732729E-06 0.59346265E-06 0.46803554E-06 + 0.53300380E-06 0.63376974E-06 0.52021312E-06 0.29160411E-06 0.16603496E-06 + 0.11234719E-06 0.20447027E-06 0.26308844E-08 0.21838904E-07 -0.29647309E-07 + -0.27801637E-07 -0.50405930E-07 -0.65524850E-07 -0.51428155E-07 -0.59273256E-07 + -0.31642152E-07 -0.21939756E-07 -0.10262127E-07 -0.18452373E-07 -0.33975156E-07 + -0.10281674E-07 0.16525412E-07 0.35999943E-07 0.45126560E-07 0.48107906E-07 + 0.45070111E-07 0.44543289E-07 0.47885162E-07 0.51295398E-07 0.41445690E-07 + 0.88605429E-08 -0.13607166E-07 -0.17782467E-07 -0.12792246E-07 0.31284926E-10 + -0.55116296E-10 0.41334514E-10 0.66869825E-10 0.81283193E-10 0.72058641E-09 + -0.55436282E-10 -0.23061208E-08 -0.18005261E-08 0.35980055E-09 0.54049770E-08 + 0.27846493E-07 0.59656840E-07 0.95477658E-07 0.12966839E-06 0.84482998E-07 + 0.90111105E-07 0.72204010E-07 0.55440948E-07 0.97163827E-07 0.96514993E-07 + 0.96774898E-07 0.62646128E-07 0.15124060E-07 0.10378049E-08 0.65957637E-07 + -0.15771119E-07 0.16406618E-07 0.16002202E-07 0.36705917E-07 0.49285086E-07 + 0.53666648E-07 0.58953718E-07 0.42271467E-07 0.33202223E-07 0.89475418E-08 + -0.53447197E-08 -0.78466412E-08 -0.23328854E-07 -0.24844285E-07 -0.50892254E-07 + -0.56644678E-07 -0.44459010E-07 -0.33234915E-07 -0.21723417E-07 -0.10741957E-07 + -0.35219614E-08 -0.24294632E-08 -0.37645953E-08 0.29892524E-08 0.11711309E-11 + -0.93245121E-09 0.37353205E-09 -0.15268898E-09 0.48619758E-09 0.73436318E-09 + 0.54487854E-09 0.21651274E-08 0.13038228E-07 0.96559059E-08 0.90938453E-09 + 0.76685024E-07 0.17869767E-06 0.18377474E-06 0.18723339E-06 0.23475193E-06 + -0.17822057E-06 -0.76207879E-06 -0.72619519E-06 0.26844779E-06 -0.61723256E-06 + -0.11479855E-05 0.37187870E-05 0.16380616E-05 0.83535483E-06 0.56093520E-06 + -0.36494486E-05 -0.34915619E-05 0.23812747E-05 -0.18198034E-05 -0.10937353E-05 + -0.41826793E-05 -0.49238905E-05 -0.36070923E-05 -0.28351907E-05 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.58268462E-11 0.20634262E-10 -0.85568054E-10 -0.15657183E-09 0.22521470E-08 + 0.69453423E-08 0.18799598E-07 -0.19286306E-07 -0.51919324E-07 0.46263293E-07 + 0.13280164E-06 0.18028476E-06 0.22663124E-06 0.49057288E-06 0.60025758E-06 + -0.16876358E-06 -0.50983333E-06 -0.12979623E-05 -0.43959945E-06 0.26735214E-06 + 0.70074526E-06 -0.25382566E-06 0.22354789E-07 -0.21886405E-06 0.14428260E-06 + 0.69259993E-07 0.11374434E-06 -0.67863142E-07 -0.11905966E-06 -0.21961607E-06 + -0.27016823E-06 -0.17703119E-06 -0.83791665E-07 -0.95373091E-07 -0.86758954E-07 + -0.10490403E-06 -0.62067212E-07 0.24165741E-07 0.16228073E-06 0.37497103E-06 + 0.64791086E-06 0.86136113E-06 0.98448323E-06 0.12913449E-05 0.74922212E-06 + -0.18096095E-06 -0.35884053E-06 -0.35567315E-06 0.82352717E-07 0.14421311E-06 + 0.31579189E-06 0.25806011E-06 0.21002182E-06 -0.50393332E-10 0.23657679E-10 + -0.15101803E-09 -0.13512223E-08 0.46321095E-08 0.36676178E-07 0.11725658E-06 + 0.32531724E-07 -0.49975933E-07 0.44105441E-06 0.92516427E-06 0.11629375E-05 + 0.13593276E-05 0.26948731E-05 0.33852047E-05 0.17582041E-06 -0.12874235E-05 + -0.44333247E-05 -0.12861322E-05 0.12579599E-05 0.31407685E-05 -0.74861593E-06 + 0.42006720E-06 -0.89610389E-06 0.63849368E-06 0.51844447E-06 0.77157959E-06 + 0.51725223E-06 0.56694843E-06 0.32321932E-06 0.83426849E-09 -0.17084476E-06 + -0.19296051E-06 -0.11822668E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.50903121E-11 0.44172603E-10 0.87852105E-10 -0.79156672E-10 + -0.21586923E-09 0.11127949E-08 -0.35303911E-08 -0.26097821E-07 -0.49605242E-07 + -0.58560784E-07 -0.34780227E-07 -0.46154481E-07 -0.30288946E-07 -0.13803462E-07 + -0.31540173E-07 -0.16381414E-06 -0.28301816E-06 -0.30761277E-06 -0.21011712E-06 + -0.98997317E-07 -0.13674750E-07 -0.72227960E-07 -0.29430809E-07 -0.34952607E-07 + 0.11436345E-07 0.21645193E-07 0.21336044E-07 0.23773880E-07 0.43682581E-07 + 0.51718580E-07 0.40897544E-07 0.26267420E-07 0.74012935E-08 0.12030878E-07 + 0.18096567E-07 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.26513242E-05 0.16494275E-05 -0.46534072E-05 + -0.11015073E-04 -0.16666276E-04 -0.20825328E-04 -0.23277970E-04 -0.26282275E-04 + -0.27147471E-04 -0.23220162E-04 -0.20548893E-04 -0.16354425E-04 -0.19672769E-08 + -0.13113762E-08 -0.32881898E-09 -0.65227219E-08 0.26588923E-07 0.20720609E-06 + 0.13871644E-05 0.89377937E-06 -0.39004800E-05 -0.28633605E-05 0.57348376E-05 + -0.35324268E-05 0.53635935E-05 -0.28329554E-05 -0.55600128E-05 0.17453721E-04 + 0.68458022E-05 0.87249539E-05 -0.33398525E-05 0.11894988E-04 0.83778586E-05 + 0.28397806E-05 0.76697387E-05 -0.38556682E-05 0.30120536E-05 0.12309220E-04 + -0.37222349E-06 -0.18313017E-06 0.54802145E-06 0.57920449E-06 0.15734412E-05 + -0.65595450E-06 -0.11227765E-05 -0.14587010E-05 -0.97287657E-06 -0.18029060E-05 + -0.19092862E-05 -0.28774122E-05 -0.46531255E-05 -0.88979988E-05 -0.18401927E-04 + -0.33843295E-04 -0.39936441E-04 -0.46001958E-04 -0.46663580E-04 -0.45275817E-04 + -0.44857071E-04 -0.41633427E-04 -0.38447817E-04 -0.34667933E-04 -0.25926717E-04 + -0.22085865E-04 -0.16579828E-04 -0.21802526E-06 -0.17110182E-06 -0.10922720E-06 + -0.61737468E-06 -0.28505030E-05 -0.10312696E-04 -0.37800285E-05 0.29058914E-04 + -0.36556521E-03 -0.97434173E-03 -0.44366115E-03 -0.47235437E-03 -0.10189995E-03 + -0.67480894E-03 -0.98558362E-03 -0.53510827E-03 -0.71722771E-03 -0.35267888E-03 + 0.17303194E-03 0.99227524E-03 0.49756651E-03 -0.22893971E-03 0.15133783E-03 + -0.30718592E-03 -0.21337138E-04 0.26616188E-03 -0.50930382E-04 -0.63517025E-04 + -0.16519032E-04 -0.53518494E-04 -0.41237281E-04 -0.13544791E-03 -0.68022764E-04 + -0.65740612E-04 -0.63031585E-04 -0.10142919E-03 -0.11637771E-03 -0.18159001E-03 + -0.22686809E-03 -0.26208457E-03 -0.34665083E-03 -0.44195502E-03 -0.28838642E-03 + -0.24788841E-03 -0.13652500E-03 -0.87730009E-04 -0.88719221E-04 -0.15413080E-04 + 0.30969915E-04 0.36212425E-04 -0.74041742E-05 -0.59507733E-04 -0.19939356E-04 + -0.20704829E-09 -0.42630340E-09 -0.17509618E-08 -0.14865357E-07 -0.74781730E-07 + -0.12282151E-06 -0.28852602E-05 -0.83497268E-05 -0.14173214E-04 -0.19421413E-04 + -0.14619503E-04 -0.11609485E-04 -0.85810871E-05 -0.72623727E-05 -0.10279278E-04 + -0.19208126E-04 -0.24676395E-04 -0.22975459E-04 -0.20767474E-04 -0.13331259E-04 + -0.38848247E-05 -0.14795586E-05 -0.67644851E-06 -0.80212206E-06 -0.37830631E-06 + 0.81158269E-07 -0.27265596E-06 -0.17346399E-06 -0.13695512E-06 -0.14030410E-06 + -0.18277243E-06 -0.29492745E-06 -0.25212165E-06 -0.25959614E-06 -0.22801662E-06 + -0.24042082E-06 -0.19311815E-06 -0.20013294E-06 -0.18909719E-06 -0.16016847E-06 + -0.21794591E-06 -0.49886171E-06 -0.78952349E-06 -0.11805209E-05 -0.12247162E-05 + -0.12955548E-05 -0.15030622E-05 -0.14366044E-05 -0.13564170E-05 -0.12268642E-05 + -0.99731781E-06 -0.90439135E-06 -0.65490053E-06 -0.53208142E-10 -0.12548347E-09 + -0.31592324E-09 -0.37993684E-09 -0.90528335E-09 0.12865099E-07 -0.51466239E-07 + -0.33813669E-06 -0.70805110E-06 -0.91034001E-06 -0.69648135E-06 -0.93921307E-06 + -0.80896995E-06 -0.87267746E-06 -0.13899810E-05 -0.22811553E-05 -0.34469200E-05 + -0.26489838E-05 -0.24419757E-05 -0.16648284E-05 -0.66693175E-06 -0.24880631E-06 + -0.60399764E-07 -0.21546650E-06 -0.70367922E-07 0.13466605E-06 -0.52440714E-07 + -0.16223204E-07 0.13006946E-07 0.32766404E-07 0.80876820E-07 0.74256614E-07 + 0.83236292E-07 0.76372190E-07 0.10685251E-06 0.14749828E-06 0.26323126E-06 + 0.42352322E-06 0.60098825E-06 0.76517928E-06 0.91441797E-06 0.43193658E-06 + 0.31827615E-06 0.12838981E-06 0.27426501E-07 0.98989053E-07 0.20293326E-06 + 0.10634140E-06 -0.55823891E-07 -0.26445990E-07 0.18287954E-07 -0.64012153E-08 + 0.19901628E-07 -0.29296647E-08 -0.18386954E-08 -0.88719903E-09 -0.69321703E-08 + 0.17493494E-07 0.44599201E-07 0.14298863E-05 0.11052819E-05 -0.58554584E-05 + -0.61221334E-05 0.63148040E-05 -0.69509123E-05 0.29917771E-05 -0.19405216E-04 + -0.31592698E-04 0.15011284E-04 0.18304042E-04 0.27940304E-04 0.22729436E-04 + 0.49600997E-04 0.30498930E-04 0.15995020E-04 0.21043532E-04 0.32893131E-05 + 0.14885508E-04 0.32299387E-04 0.17804853E-04 0.16903950E-04 0.15113385E-04 + 0.67690319E-05 0.39202126E-05 -0.41531800E-05 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.12538123E-10 + 0.37685538E-08 0.29886273E-08 -0.10226290E-07 0.19762674E-07 0.16300238E-06 + 0.51235704E-06 0.59090369E-06 -0.75399663E-06 0.16782386E-05 -0.10081645E-05 + -0.13494111E-05 -0.25613087E-06 0.10729243E-05 0.57636931E-06 0.18353306E-05 + 0.48711956E-06 0.31020267E-06 -0.37884752E-06 -0.63050426E-06 -0.16070363E-05 + 0.11540625E-05 -0.11470393E-05 0.13598746E-05 -0.97587754E-06 -0.29096762E-05 + -0.43738365E-05 -0.42685332E-05 -0.28200043E-05 -0.12898818E-05 -0.75863812E-06 + -0.52965301E-06 -0.15440639E-06 -0.11126592E-06 -0.13863124E-06 -0.26838974E-06 + -0.50671750E-06 -0.51491431E-06 -0.74570008E-06 -0.10714158E-05 -0.15652287E-05 + -0.16169394E-05 -0.14488913E-05 -0.16760232E-05 -0.20532678E-05 -0.11108333E-05 + -0.49738558E-06 -0.25037563E-06 -0.43739142E-06 0.10260743E-06 -0.44951811E-06 + -0.74623979E-06 -0.64556551E-06 0.27906103E-09 0.10012559E-07 0.11937039E-07 + -0.22588378E-07 0.12136666E-06 0.71502021E-06 0.25533677E-05 0.22861776E-05 + -0.33580290E-05 0.81771274E-05 -0.35236240E-05 -0.62671718E-05 -0.83798637E-06 + 0.43692938E-05 0.33787136E-05 0.98497258E-05 0.12613441E-05 -0.19933547E-05 + -0.29118856E-05 -0.48709352E-05 -0.82209940E-05 0.32613277E-05 -0.55285606E-05 + 0.67319642E-05 -0.24202486E-05 -0.13687584E-04 -0.19282932E-04 -0.14056239E-04 + -0.59282464E-05 -0.38617447E-05 -0.16665548E-05 0.27783969E-06 0.96209409E-06 + -0.46561866E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.34668857E-10 -0.11486906E-08 0.27920558E-08 0.90022707E-08 0.40386318E-08 + 0.10439670E-06 0.12309104E-06 0.12788762E-06 0.48359551E-07 0.36574459E-07 + -0.38675663E-06 -0.54868211E-07 0.73118220E-07 0.14811402E-06 0.34732201E-06 + 0.71386523E-07 0.42617701E-06 0.52217070E-06 0.20343660E-06 0.41726211E-06 + 0.70436987E-07 0.11225296E-06 -0.76736806E-07 -0.12221539E-06 -0.36089111E-06 + -0.39412483E-06 -0.45519472E-06 -0.20917528E-06 -0.24036706E-06 -0.12759987E-06 + -0.54062751E-07 -0.66973497E-08 0.47023373E-08 -0.26859034E-07 0.36362545E-07 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.13168054E-04 0.27374393E-04 0.37620915E-04 0.45329858E-04 + 0.58340727E-04 0.67575031E-04 0.69094667E-04 0.75772642E-04 0.54295446E-04 + 0.21045278E-04 0.52967344E-05 -0.11553637E-05 0.70173323E-08 0.46854628E-06 + 0.40895007E-06 -0.24103734E-06 0.14110892E-05 0.76656923E-05 0.40027501E-04 + 0.31092879E-04 -0.10565503E-03 0.32319380E-04 0.45961486E-04 0.38958917E-04 + -0.19282647E-05 -0.13286060E-03 -0.12197329E-04 -0.25686095E-03 -0.75844887E-04 + -0.85616319E-04 -0.25708072E-03 -0.57149454E-04 -0.84293907E-04 -0.71477543E-04 + -0.10379024E-04 -0.63836675E-04 0.22234092E-04 0.15069160E-04 -0.23044125E-04 + -0.20695146E-05 0.37070917E-05 0.20592841E-05 -0.21167767E-06 0.26581089E-06 + -0.22706151E-05 -0.12383946E-05 0.21892044E-05 0.16830972E-05 0.96007362E-06 + 0.43353587E-05 0.10933234E-04 0.23760851E-04 0.31517692E-04 0.45700286E-04 + 0.51168331E-04 0.46641855E-04 0.46647093E-04 0.43621550E-04 0.33071227E-04 + 0.21057120E-04 0.23114495E-04 0.19701892E-04 0.40805763E-05 -0.17308917E-05 + -0.10376720E-06 0.91062743E-06 0.45709498E-04 0.45494371E-04 0.21264095E-04 + 0.27508303E-03 0.54499668E-03 0.28989783E-02 0.11014099E-02 -0.61263734E-02 + -0.13675527E-01 -0.90717678E-02 -0.62390296E-02 -0.19778665E-01 -0.27428652E-01 + -0.18705004E-01 -0.25550849E-01 -0.98552247E-02 -0.86475718E-02 -0.19572866E-01 + -0.98955758E-02 -0.10939196E-01 -0.10903935E-01 -0.62627340E-02 -0.10525062E-01 + -0.62699321E-02 -0.49853938E-02 -0.47157843E-02 -0.23096068E-02 -0.14773709E-02 + -0.13511835E-02 -0.77708286E-03 -0.27966417E-03 -0.15996388E-03 -0.15432540E-03 + -0.80872558E-04 -0.11590177E-03 -0.87253997E-04 -0.89136675E-04 0.62139437E-04 + 0.26017761E-03 0.18839147E-03 0.47457990E-03 0.33778409E-03 0.29263560E-03 + 0.39839452E-03 0.13603760E-03 0.94851192E-04 0.56806901E-04 -0.92633932E-04 + -0.45940277E-04 -0.16089265E-04 -0.10946243E-03 -0.61668995E-04 0.11530623E-08 + 0.40717338E-07 0.11608067E-06 0.29531674E-06 0.21233022E-05 0.12249858E-04 + -0.31242820E-05 0.29985585E-04 0.20781735E-04 -0.48918739E-04 -0.58197636E-04 + 0.12525304E-04 0.14426329E-05 -0.12874108E-04 0.12449173E-04 -0.12569836E-04 + 0.16242632E-04 0.42553402E-04 0.42390283E-04 0.34433780E-04 0.94692559E-05 + 0.39533262E-05 0.29190797E-05 0.13291359E-05 0.56846844E-06 -0.63810934E-06 + -0.16384843E-05 -0.70790783E-06 -0.44861152E-06 -0.45459237E-06 -0.25320437E-06 + -0.19622195E-06 -0.22164681E-06 -0.32437081E-06 -0.30110019E-06 -0.39461467E-06 + -0.56006404E-06 -0.77578338E-06 -0.11480254E-05 -0.15227134E-05 -0.21475582E-05 + -0.21013065E-05 -0.20756866E-05 -0.17930304E-05 -0.11502548E-05 -0.11009393E-05 + -0.34137915E-06 -0.95251461E-07 0.39073315E-06 0.80588877E-06 0.17684565E-06 + -0.28813962E-06 -0.19746359E-06 -0.28093933E-09 0.79238650E-08 0.73403788E-07 + -0.69737211E-07 0.19106493E-06 0.10474904E-05 0.12590442E-05 0.31720827E-05 + 0.86114593E-06 -0.24714410E-06 -0.50993124E-05 0.45529917E-07 -0.43384870E-06 + -0.22298472E-05 0.10909587E-05 -0.56280810E-05 0.14967781E-05 0.53658017E-05 + 0.36712107E-05 0.53423311E-05 0.16180984E-05 0.31563854E-06 0.60593609E-06 + -0.13361040E-06 0.32955079E-06 0.62681060E-07 -0.44666163E-06 0.18613335E-07 + 0.17801747E-06 0.94483618E-07 -0.57054148E-08 -0.54733388E-07 -0.35818831E-06 + -0.47066193E-06 -0.43777535E-06 -0.56584538E-06 -0.90537806E-06 -0.12613841E-05 + -0.16448282E-05 -0.17906501E-05 -0.17904374E-05 -0.14646239E-05 -0.69791900E-06 + -0.71573760E-06 -0.11401483E-05 -0.95868951E-06 -0.30086027E-06 -0.36537867E-06 + -0.10327190E-05 -0.78813882E-06 -0.49005770E-06 -0.32830671E-06 -0.24995908E-06 + 0.13497427E-07 0.67098556E-06 0.63514243E-06 -0.13205441E-06 0.15749963E-05 + 0.47811266E-05 0.44460894E-04 0.25218619E-04 -0.17423298E-03 -0.31626942E-04 + 0.58983449E-04 0.15715376E-03 0.11271233E-03 -0.98976778E-04 0.90676435E-04 + -0.27375286E-03 0.99414725E-04 0.45921464E-04 -0.28068409E-03 -0.10479700E-04 + -0.66432416E-04 -0.72328702E-04 0.19044330E-05 -0.10804018E-03 -0.42069687E-04 + -0.22755671E-04 -0.49481472E-04 -0.35766539E-04 -0.64862426E-04 -0.51654757E-04 + -0.91911290E-04 -0.48218516E-04 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.63316847E-10 -0.94391304E-10 + 0.18451060E-09 0.13063297E-10 -0.73617391E-08 -0.16474820E-07 -0.41138498E-07 + 0.24520601E-07 0.62695242E-07 -0.17843355E-06 -0.37318948E-06 -0.46922237E-06 + -0.55355552E-06 -0.11308743E-05 -0.12943221E-05 0.39288698E-06 0.93097896E-06 + 0.26042298E-05 0.11049129E-05 -0.54030315E-06 -0.18831750E-05 0.11720188E-05 + 0.51472938E-06 0.12933108E-05 -0.57449812E-06 -0.96315654E-07 -0.50120847E-06 + 0.31906187E-06 0.59235570E-06 0.13809915E-05 0.18123315E-05 0.16060521E-05 + 0.12691870E-05 0.13003502E-05 0.12373709E-05 0.12269812E-05 0.89965067E-06 + 0.48657049E-06 0.60156098E-07 -0.65182128E-06 -0.12680464E-05 -0.19488655E-05 + -0.23990637E-05 -0.31226364E-05 -0.16858285E-05 0.68917861E-06 0.12402170E-05 + 0.12512027E-05 0.51443843E-07 -0.19191598E-06 -0.93561173E-06 -0.83017562E-06 + -0.67793013E-06 0.26540405E-09 -0.22335314E-09 0.35261904E-09 0.29572440E-08 + -0.12480096E-07 -0.88496486E-07 -0.25015712E-06 -0.12354806E-06 -0.82284303E-07 + -0.12689069E-05 -0.23818987E-05 -0.29314461E-05 -0.34087856E-05 -0.64783905E-05 + -0.78487668E-05 -0.77523689E-06 0.17083368E-05 0.85754441E-05 0.31026042E-05 + -0.29493424E-05 -0.88005892E-05 0.39460438E-05 0.95843462E-06 0.51830663E-05 + -0.25826308E-05 -0.13360082E-05 -0.31146349E-05 -0.15035440E-05 -0.13512375E-05 + -0.22971454E-07 0.99298102E-06 0.10296208E-05 0.65818458E-06 -0.28839496E-06 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.27315713E-10 + -0.17636741E-09 -0.43995291E-09 0.84785866E-10 0.12807530E-09 -0.30532521E-08 + 0.70316651E-08 0.48904763E-07 0.96250868E-07 0.10690251E-06 0.62205899E-07 + 0.89989894E-07 0.70990181E-07 0.48581513E-07 0.10260069E-06 0.37981118E-06 + 0.57107601E-06 0.66824170E-06 0.53665011E-06 0.32652478E-06 0.10602957E-06 + 0.34507815E-06 0.22885778E-06 0.23561401E-06 0.24929755E-08 -0.14980913E-07 + -0.33111982E-07 -0.29900639E-07 -0.12407474E-06 -0.16083513E-06 -0.15277128E-06 + -0.13585592E-06 -0.88844290E-07 -0.14096905E-06 -0.17875079E-06 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.48415529E-05 -0.40343487E-06 0.16396499E-04 0.34330492E-04 0.51831740E-04 + 0.66514937E-04 0.76504800E-04 0.87333750E-04 0.92973986E-04 0.83696817E-04 + 0.74394913E-04 0.58983619E-04 0.10725660E-07 0.48151316E-08 0.33563010E-08 + 0.14232541E-07 -0.60551637E-07 -0.42056525E-06 -0.28143608E-05 -0.23272269E-05 + 0.79134161E-05 0.57680795E-05 -0.12461341E-04 0.26202339E-05 -0.15361430E-04 + 0.13182823E-05 0.13350304E-05 -0.54920956E-04 -0.38648637E-04 -0.15107264E-04 + -0.10450417E-05 -0.38255674E-04 -0.39080903E-04 -0.18243231E-05 -0.25790429E-04 + 0.14863934E-04 -0.13482459E-04 -0.52569429E-04 -0.50371429E-05 0.31742529E-05 + -0.23455223E-05 -0.37970439E-05 -0.74631851E-05 0.20669831E-05 0.49072304E-05 + 0.57955195E-05 0.46520087E-05 0.89774233E-05 0.11085800E-04 0.14900906E-04 + 0.21430894E-04 0.38477401E-04 0.65990995E-04 0.10451999E-03 0.12188915E-03 + 0.14079290E-03 0.14782198E-03 0.14896741E-03 0.15120533E-03 0.14350480E-03 + 0.13535477E-03 0.12611678E-03 0.10223568E-03 0.88735787E-04 0.67521985E-04 + 0.11627431E-05 0.70619849E-06 0.80304062E-06 0.15451842E-05 0.61070352E-05 + 0.27021893E-04 -0.87542420E-05 -0.90735036E-04 0.79958847E-03 0.21670779E-02 + 0.90119376E-03 0.83976811E-03 0.14544985E-03 0.14685336E-02 0.21210139E-02 + 0.94449154E-03 0.11669638E-02 0.13539336E-02 -0.48674208E-03 -0.26209905E-02 + -0.19435635E-02 0.84566315E-03 -0.67488289E-03 0.86060049E-03 -0.30128810E-03 + -0.15132243E-02 -0.52331824E-03 0.22521824E-04 -0.18501077E-03 -0.57916480E-04 + -0.70615755E-04 0.34956806E-03 0.13924664E-03 0.10558779E-03 0.80457054E-04 + 0.25766620E-03 0.33911928E-03 0.53175929E-03 0.68641067E-03 0.91509667E-03 + 0.10960836E-02 0.13566273E-02 0.96572909E-03 0.90004129E-03 0.64210269E-03 + 0.44445582E-03 0.39401550E-03 0.16872042E-03 0.13224469E-04 0.99079027E-06 + 0.11280195E-03 0.27081205E-03 0.12111138E-03 0.82045771E-09 0.12094738E-08 + 0.53796779E-08 0.37094494E-07 0.15718988E-06 0.21564847E-06 0.57174750E-05 + 0.16414517E-04 0.28953855E-04 0.39322120E-04 0.29983489E-04 0.24726518E-04 + 0.20198861E-04 0.18931155E-04 0.27372399E-04 0.45724515E-04 0.52706807E-04 + 0.48504473E-04 0.47793240E-04 0.34969375E-04 0.12327646E-04 0.64337459E-05 + 0.35341974E-05 0.40968739E-05 0.21531671E-05 0.67768352E-07 0.12822837E-05 + 0.96673700E-06 0.58336121E-06 0.51672330E-06 0.69728536E-06 0.11823138E-05 + 0.10580270E-05 0.97524752E-06 0.79609384E-06 0.83622631E-06 0.69098194E-06 + 0.59049877E-06 0.45343625E-06 0.56010016E-06 0.80498857E-06 0.16360045E-05 + 0.23157026E-05 0.32048727E-05 0.33018454E-05 0.33620892E-05 0.39250913E-05 + 0.37734936E-05 0.36250939E-05 0.34701972E-05 0.30199603E-05 0.28140203E-05 + 0.20352227E-05 0.27202122E-09 0.47037503E-09 0.84150480E-09 0.78474782E-09 + -0.18157413E-10 -0.33748432E-07 0.10246216E-06 0.64409952E-06 0.14430606E-05 + 0.17655786E-05 0.14266723E-05 0.19833446E-05 0.19605279E-05 0.23095178E-05 + 0.35512117E-05 0.53046229E-05 0.70584089E-05 0.58409291E-05 0.59570180E-05 + 0.45388605E-05 0.20227664E-05 0.12441163E-05 0.51993943E-06 0.10952835E-05 + 0.44605985E-06 -0.43520657E-06 0.21286062E-06 0.17187966E-06 -0.28446713E-07 + -0.17821501E-06 -0.41724686E-06 -0.42759565E-06 -0.51721883E-06 -0.62612948E-06 + -0.84636018E-06 -0.11258948E-05 -0.16436737E-05 -0.22224629E-05 -0.27516857E-05 + -0.32573751E-05 -0.36820562E-05 -0.23658360E-05 -0.21219492E-05 -0.15323625E-05 + -0.10473592E-05 -0.11132303E-05 -0.13239663E-05 -0.98388863E-06 -0.35265636E-06 + -0.21353685E-06 -0.29387535E-06 -0.18152481E-06 -0.23045906E-06 0.15715513E-07 + 0.72638969E-08 0.82964039E-08 0.16365454E-07 -0.38184855E-07 0.18243169E-07 + -0.28828571E-05 -0.27500401E-05 0.12167941E-04 0.14293676E-04 -0.12746207E-04 + 0.77112644E-05 -0.14562866E-04 0.28473970E-04 0.39800061E-04 -0.78602103E-04 + -0.98806299E-04 -0.81579569E-04 -0.98505133E-04 -0.16746303E-03 -0.13884287E-03 + -0.73349309E-04 -0.11321177E-03 -0.63189174E-04 -0.12607424E-03 -0.21634366E-03 + -0.18267688E-03 -0.18339884E-03 -0.19862780E-03 -0.14418350E-03 -0.86660570E-04 + -0.68348864E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.30586922E-10 -0.11142946E-09 -0.28692777E-08 + 0.60114283E-08 0.85748780E-08 -0.63137681E-07 -0.20810309E-06 0.46770281E-07 + 0.45046356E-07 0.52139596E-06 -0.11165470E-05 -0.83666627E-06 0.32707944E-06 + 0.16793963E-05 0.19893928E-05 0.35227957E-05 0.74787899E-06 -0.17648746E-05 + -0.41463956E-05 -0.60047433E-05 -0.69248792E-05 -0.41788573E-05 -0.61448286E-05 + 0.11119524E-05 0.12904938E-05 -0.34414066E-05 -0.56662324E-05 -0.87015890E-05 + -0.65984642E-05 -0.37148353E-05 -0.19039127E-05 -0.14870516E-05 -0.37549515E-06 + -0.27805271E-06 -0.22609569E-06 0.70675905E-07 -0.27610715E-06 -0.92806085E-06 + -0.63117831E-06 -0.69372108E-06 -0.17936457E-05 -0.27724297E-05 -0.31406620E-05 + -0.22424071E-05 -0.17428807E-05 -0.80128809E-06 -0.25983048E-06 -0.46757890E-06 + -0.91276949E-06 0.72311382E-06 0.41038526E-06 0.45302314E-07 -0.90683645E-08 + 0.27151032E-09 -0.83759209E-09 -0.19379023E-08 0.91683760E-08 -0.16754507E-07 + -0.21849941E-06 -0.98063074E-06 0.86779744E-08 -0.13829934E-06 0.20990677E-05 + -0.54525171E-05 -0.56450590E-05 -0.22409097E-05 0.15067004E-05 0.55620895E-05 + 0.13917068E-04 0.90743054E-07 -0.12293950E-04 -0.20181448E-04 -0.30373755E-04 + -0.33101489E-04 -0.19834614E-04 -0.24424455E-04 0.61744683E-05 0.70992846E-05 + -0.18653790E-04 -0.31031173E-04 -0.37376392E-04 -0.15837876E-04 -0.91019385E-05 + -0.35558524E-05 -0.11588837E-05 -0.24040033E-05 0.10658685E-05 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.13932525E-09 0.59741252E-09 + -0.12249449E-08 0.66095502E-08 -0.97061994E-08 -0.25372111E-07 -0.14252678E-07 + 0.33132026E-07 0.16375588E-06 0.12769244E-06 -0.66537595E-08 0.40842428E-06 + 0.86611980E-06 0.11986525E-05 0.14068866E-05 0.10143788E-05 0.98411770E-06 + 0.65158783E-06 0.14929099E-06 0.82436182E-07 -0.30858446E-06 -0.37881895E-06 + -0.65223120E-06 -0.20715232E-06 -0.31476866E-06 -0.64279939E-06 -0.92320762E-06 + -0.69600783E-06 -0.49154698E-06 -0.23852094E-06 -0.65612689E-07 0.76654023E-07 + -0.11538240E-06 0.21696215E-06 0.23969990E-06 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.21528010E-04 + 0.38506204E-04 0.42445023E-04 0.40090797E-04 0.43784521E-04 0.45637116E-04 + 0.43889830E-04 0.47223777E-04 0.27327247E-05 -0.39667172E-04 -0.52100042E-04 + -0.52630002E-04 0.44870612E-08 -0.16777266E-07 -0.32963845E-07 0.81040063E-07 + -0.81197879E-07 -0.12777667E-05 -0.13572105E-04 0.52206279E-05 -0.17978352E-05 + 0.24879386E-04 0.27672399E-04 0.21699067E-04 0.78963054E-04 -0.11339913E-04 + 0.16970561E-03 0.83708859E-04 0.22157970E-03 0.84273352E-04 -0.50306454E-04 + 0.16008665E-03 0.13457083E-03 0.70396380E-04 0.70124842E-04 -0.32255659E-04 + 0.13116947E-03 0.17039564E-03 0.19513042E-04 0.11765861E-04 0.38459643E-04 + 0.20015413E-04 0.17632654E-04 0.17400705E-04 0.69842994E-05 0.50364071E-05 + 0.13504164E-05 0.92944254E-05 0.57553644E-05 0.26525075E-05 0.61387056E-05 + 0.68373556E-05 -0.28307211E-05 -0.60708923E-06 -0.19682007E-04 -0.45619068E-04 + -0.63531615E-04 -0.77392209E-04 -0.83311600E-04 -0.80390678E-04 -0.78068916E-04 + -0.81843429E-04 -0.10580909E-03 -0.99533259E-04 -0.76644829E-04 0.12078087E-05 + -0.26855851E-05 -0.11626780E-05 0.47527118E-05 0.19383368E-04 0.15842063E-03 + 0.17320852E-03 0.31284508E-02 0.63232342E-02 0.85910750E-02 0.13888222E-01 + 0.66344195E-02 0.37599853E-02 -0.12399012E-02 0.90970614E-02 0.80693604E-02 + 0.19532451E-01 0.22824157E-01 0.15544496E-01 0.29489688E-01 0.27183394E-01 + 0.19378259E-01 0.20097382E-01 0.69324092E-02 0.11338480E-01 0.17096074E-01 + 0.14191480E-01 0.12234546E-01 0.97340002E-02 0.67272760E-02 0.58293525E-02 + 0.49794156E-02 0.42710710E-02 0.37817303E-02 0.31930955E-02 0.29402190E-02 + 0.27791792E-02 0.26823816E-02 0.28660588E-02 0.28251965E-02 0.26674646E-02 + 0.30650587E-02 0.27378522E-02 0.26384677E-02 0.24724805E-02 0.21755838E-02 + 0.21087741E-02 0.19044825E-02 0.10485210E-02 0.79344299E-03 0.28232823E-03 + 0.24123445E-03 0.17081335E-03 0.12316137E-08 -0.11060454E-08 0.22595272E-08 + 0.13954152E-07 -0.12023111E-06 -0.28295991E-05 0.61069315E-05 0.16030355E-04 + 0.40764297E-04 0.18633423E-04 0.28906449E-04 0.92128521E-04 0.13795368E-03 + 0.16564888E-03 0.16546388E-03 0.10389112E-03 0.10014435E-03 0.10341410E-03 + 0.90591292E-04 0.62485659E-04 0.37803547E-04 0.29598922E-04 0.17974946E-04 + 0.11102021E-04 0.86141833E-05 0.92040497E-05 0.40678695E-05 0.30752268E-05 + 0.26844030E-05 0.16087772E-05 0.17610583E-05 0.11174662E-05 0.88901003E-06 + 0.99382689E-06 0.96573282E-06 0.16503337E-05 0.21074622E-05 0.25586094E-05 + 0.27300791E-05 0.22868799E-05 0.11024098E-05 0.12507332E-05 0.10895781E-05 + 0.80246041E-06 0.95069514E-06 0.73559974E-06 0.90024353E-06 0.89390768E-06 + 0.62119495E-06 0.37655097E-06 -0.40575978E-06 -0.31794085E-06 -0.30348127E-06 + -0.24258383E-08 0.20202801E-08 0.57458303E-08 -0.89739034E-08 0.22892356E-08 + -0.27196443E-06 -0.32917139E-06 0.68134264E-06 0.22077553E-05 0.13765632E-05 + 0.34087531E-06 0.61222463E-05 0.11169799E-04 0.12983188E-04 0.14680830E-04 + 0.51802634E-05 0.92147002E-05 0.90369409E-05 0.71434800E-05 0.75676323E-05 + 0.39525827E-05 0.25984186E-05 0.15823739E-05 -0.34386458E-08 0.73599032E-06 + 0.13973024E-05 -0.75028934E-06 -0.43907429E-06 0.42025375E-06 0.23028099E-06 + 0.26900793E-06 0.46149872E-06 0.19440602E-06 0.54091635E-06 0.79990899E-06 + 0.15783864E-05 0.19649608E-05 0.18520731E-05 0.18464647E-05 0.13767009E-05 + 0.17427514E-05 0.36649661E-05 0.49833333E-05 0.43884603E-05 0.36376295E-05 + 0.40024778E-05 0.39542350E-05 0.27236008E-05 0.13195140E-05 0.14235824E-05 + 0.14142883E-05 0.17294244E-05 0.14416687E-05 0.19265695E-07 -0.47176847E-07 + -0.36961830E-07 0.76744559E-07 -0.82660859E-07 0.13735119E-06 -0.14990569E-04 + 0.84096126E-05 -0.62636915E-05 0.32948549E-04 0.11802396E-03 0.15385682E-03 + 0.29190629E-03 0.23632040E-03 0.59409460E-03 0.52064124E-03 0.84143987E-03 + 0.65935315E-03 0.43897191E-03 0.76859708E-03 0.69588176E-03 0.46140484E-03 + 0.34898087E-03 0.77963750E-04 0.27801242E-03 0.42151434E-03 0.29476696E-03 + 0.26488051E-03 0.27136892E-03 0.29946310E-03 0.23424727E-03 0.13641595E-03 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.10847180E-09 0.38620297E-08 0.27418491E-08 -0.24793031E-07 + 0.53595074E-07 0.19076889E-06 0.54233890E-06 0.56579374E-06 -0.11173348E-05 + 0.11141867E-05 -0.12718787E-05 -0.82871645E-06 0.80381000E-06 0.37925940E-05 + 0.20525075E-05 0.15175137E-05 0.14864187E-05 0.17005157E-05 0.15430732E-05 + 0.18428274E-05 0.18498685E-05 0.49213183E-05 0.20709845E-05 0.14024833E-05 + -0.34331734E-05 -0.54205181E-05 -0.63766268E-05 -0.42573651E-05 -0.26665223E-05 + -0.24259832E-05 -0.28992073E-05 -0.22077649E-05 -0.20408085E-05 -0.21048176E-05 + -0.21239678E-05 -0.25352884E-05 -0.26784631E-05 -0.21024459E-05 -0.22562727E-05 + -0.22574971E-05 -0.23085335E-05 -0.14337598E-05 -0.68277923E-06 -0.81948115E-06 + -0.22246937E-05 -0.26605701E-05 -0.23269446E-05 -0.17025591E-05 -0.10701874E-05 + -0.71614173E-06 -0.66219594E-06 -0.81829644E-06 -0.72506977E-06 -0.16639277E-08 + 0.13562863E-07 0.14649364E-07 -0.23947039E-07 0.18458223E-06 0.87110672E-06 + 0.28525320E-05 0.23144799E-05 -0.47830799E-05 0.60401389E-05 -0.46622325E-05 + -0.35562767E-05 0.48017646E-05 0.17618896E-04 0.10871377E-04 0.98566951E-05 + 0.83438431E-05 0.76039290E-05 0.82307217E-05 0.87511201E-05 0.10047403E-04 + 0.20458725E-04 0.82377912E-05 0.74699740E-05 -0.12723585E-04 -0.24305105E-04 + -0.25352606E-04 -0.86464239E-05 -0.27299904E-05 -0.85248462E-05 -0.95741953E-05 + -0.42840813E-05 -0.51301179E-06 -0.11686075E-05 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.89804371E-10 -0.79927120E-09 0.30360250E-08 + 0.44687913E-08 0.13451821E-07 0.13163519E-06 0.11501209E-06 0.11200248E-06 + 0.24327523E-07 -0.36460859E-08 -0.38273722E-06 0.68271639E-07 0.18126473E-06 + 0.46380403E-06 0.64233496E-06 0.88186901E-07 0.47023547E-06 0.45357820E-06 + 0.23672775E-06 0.52146790E-06 0.28510313E-06 0.35978720E-06 0.19413308E-06 + -0.24505693E-06 -0.74607455E-06 -0.67007040E-06 -0.50232905E-06 -0.64095468E-07 + -0.19176310E-06 -0.19976351E-06 -0.20579315E-06 -0.10894936E-06 0.22676935E-07 + -0.68817977E-07 0.13327816E-06 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.15618508E-04 0.30247436E-04 + 0.36642993E-04 0.41018741E-04 0.48840427E-04 0.56384984E-04 0.59397425E-04 + 0.59804826E-04 0.42657569E-04 0.20559054E-04 0.76677221E-05 0.30013151E-05 + -0.82153292E-07 0.68650879E-06 0.72515493E-06 -0.20159866E-06 0.23089165E-05 + 0.11377969E-04 0.47170284E-04 0.41096205E-04 -0.11974897E-03 0.73497357E-04 + 0.89479323E-04 0.95730395E-04 0.43122941E-04 -0.45695760E-04 0.92680431E-04 + -0.13908960E-03 0.69438217E-04 0.38939284E-04 -0.12362110E-03 0.10249170E-04 + -0.59312995E-04 -0.68792917E-04 -0.33720720E-04 -0.61945802E-04 -0.29434911E-04 + -0.29664839E-04 -0.14150203E-04 -0.58059368E-06 0.78511122E-05 0.15184197E-04 + -0.64809004E-05 -0.63133489E-05 -0.13256552E-04 -0.12160578E-04 0.22197994E-05 + -0.58256975E-05 -0.79637017E-05 -0.46498468E-05 -0.21755647E-05 0.28915119E-05 + 0.27281215E-05 0.28187779E-05 0.88584555E-05 0.65586964E-05 0.96336866E-05 + 0.10749545E-04 0.45803028E-05 -0.84259183E-07 0.39479658E-05 -0.33045861E-05 + -0.37133277E-05 -0.41784199E-05 -0.48114851E-06 -0.10058305E-04 0.68813392E-04 + 0.73302433E-04 0.18741772E-04 0.35255480E-03 0.94391389E-03 0.35583810E-02 + 0.31797221E-02 -0.26524746E-02 0.15639406E-03 0.52326915E-02 0.11360848E-01 + -0.16946564E-02 -0.61400572E-02 0.32941362E-02 -0.25414852E-02 0.11407293E-01 + 0.95569340E-02 0.58428993E-03 0.64966971E-02 0.29253990E-02 0.35181313E-02 + 0.46704866E-02 0.79230674E-03 0.16921553E-02 0.13836967E-02 0.15194236E-02 + 0.25691625E-02 0.22707048E-02 0.17120352E-02 0.59333726E-03 0.72095567E-03 + 0.51366777E-03 0.18064207E-03 0.43693445E-03 0.19834760E-03 0.23119698E-03 + 0.14838089E-03 0.21768816E-03 0.25966049E-03 0.54133919E-04 0.29465286E-03 + 0.33388842E-03 0.34933110E-03 0.54577709E-03 0.31932867E-03 0.11407418E-03 + 0.10943881E-03 0.12740230E-03 0.13389583E-03 -0.58839202E-05 -0.28542274E-03 + -0.12788208E-03 -0.49913807E-08 0.50925812E-07 0.13516964E-06 0.34634995E-06 + 0.25536699E-05 0.15696626E-04 -0.11411756E-04 0.28214272E-04 0.21660419E-04 + -0.40294640E-04 -0.44724603E-04 0.27079963E-04 0.35327355E-05 -0.96154436E-05 + 0.24440606E-04 -0.13077542E-04 0.77865644E-05 0.20807983E-04 0.23387400E-04 + 0.26582885E-04 0.56448101E-05 -0.36645249E-06 0.11957712E-05 0.12066987E-05 + 0.75856318E-06 0.83453629E-07 0.40811399E-06 0.56518198E-06 0.75932748E-06 + 0.87571710E-06 0.52402305E-07 0.31296140E-06 0.31767304E-06 -0.23981945E-07 + 0.37893115E-06 -0.70260281E-07 -0.39470199E-06 -0.86374630E-06 -0.13265902E-05 + -0.14661115E-05 -0.17274066E-05 -0.19670623E-05 -0.20749851E-05 -0.19558275E-05 + -0.13467832E-05 -0.12466722E-05 -0.77380962E-06 -0.33169124E-06 0.20697989E-06 + 0.40156124E-06 -0.28265733E-06 -0.10267930E-05 -0.61828029E-06 0.99787364E-09 + 0.91421612E-08 0.75776676E-07 -0.61981443E-07 0.25989141E-06 0.13252050E-05 + 0.12081683E-05 0.32242396E-05 0.75009774E-06 -0.16369456E-06 -0.49114032E-05 + 0.10336467E-05 -0.54285784E-06 -0.17380697E-05 0.35131187E-05 -0.44078604E-05 + 0.15028875E-05 0.31539210E-05 0.17017358E-05 0.38664098E-05 0.46197167E-06 + -0.10618153E-05 -0.41635102E-06 -0.65422597E-06 -0.37979908E-06 -0.45522461E-06 + -0.61504314E-07 0.23342349E-06 0.42784337E-06 0.50162287E-06 0.79645412E-07 + 0.14214795E-06 -0.54877888E-07 -0.21297779E-06 0.61209365E-07 -0.27146908E-06 + -0.68767145E-06 -0.84455098E-06 -0.80517301E-06 -0.14208517E-06 0.18841913E-06 + -0.66767667E-06 -0.42349076E-06 -0.28941349E-06 -0.41164809E-06 -0.20539972E-06 + 0.30945468E-06 0.17385961E-06 -0.43981167E-06 -0.40971930E-06 -0.46121609E-06 + -0.78937881E-06 -0.60408564E-06 -0.14249964E-06 0.10183880E-05 0.10809505E-05 + -0.13621233E-06 0.25790262E-05 0.90042218E-05 0.51366475E-04 0.40278119E-04 + -0.19626894E-03 0.38624800E-04 0.13469024E-03 0.24915382E-03 0.18957553E-03 + 0.34784085E-04 0.24451898E-03 -0.69421295E-04 0.31905673E-03 0.22721946E-03 + -0.47325275E-04 0.13961753E-03 0.21789655E-04 -0.24624271E-06 0.45091396E-04 + 0.19448091E-05 0.11111753E-04 0.46068413E-04 0.85541048E-04 0.77792998E-04 + 0.49238112E-05 -0.72309489E-04 -0.92720194E-04 -0.58375654E-04 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.13500312E-11 -0.15744233E-09 -0.67934337E-10 0.24517373E-08 -0.76762473E-08 + -0.10078097E-08 -0.12830975E-07 -0.70615384E-07 0.30783903E-07 -0.17802264E-06 + 0.21287101E-06 0.33693554E-07 -0.18849542E-06 -0.94838886E-06 -0.36825394E-06 + -0.33559375E-08 0.19683090E-06 0.11504759E-06 0.57798992E-06 0.10469485E-05 + 0.11793932E-05 -0.15969238E-07 0.67318830E-06 -0.32563986E-06 0.34074535E-06 + 0.12248310E-05 0.15898641E-05 0.16374624E-05 0.11193203E-05 0.63877067E-06 + 0.40407773E-06 0.18554972E-06 0.52212022E-07 0.46692192E-07 0.40336596E-08 + 0.63699113E-08 0.91128809E-07 0.74966594E-07 0.65119810E-07 0.98100707E-07 + 0.24815670E-06 0.31190631E-06 0.32644300E-06 0.29667695E-06 0.32733217E-06 + 0.22703443E-06 0.14253266E-06 0.11171002E-06 0.15407496E-06 -0.40131734E-07 + 0.19631598E-07 0.72679227E-07 0.70887676E-07 -0.18133051E-10 -0.37773115E-09 + -0.84001408E-09 -0.15955235E-08 -0.15756988E-07 -0.22798217E-07 -0.10133182E-06 + -0.24225824E-06 0.24922174E-06 -0.68787448E-06 0.12172189E-05 0.81140870E-06 + 0.71291998E-07 -0.26830537E-05 -0.63277088E-06 0.49199032E-06 0.16726004E-05 + 0.17471696E-05 0.32672656E-05 0.55770611E-05 0.57640833E-05 0.10197823E-05 + 0.32013371E-05 -0.15927051E-05 0.12108859E-05 0.61857866E-05 0.76729104E-05 + 0.62604955E-05 0.26605978E-05 0.26357797E-05 0.21830519E-05 0.93295381E-06 + 0.28106869E-06 0.34105339E-07 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.18649970E-10 -0.55947367E-10 0.13552655E-09 -0.74599675E-09 + -0.26207932E-09 -0.83290861E-08 -0.59432533E-08 -0.20919704E-07 -0.57631764E-07 + -0.64190559E-07 -0.25724556E-07 -0.15772734E-06 -0.21110273E-06 -0.31161704E-06 + -0.32829133E-06 -0.93933038E-07 -0.15320259E-06 -0.15250140E-06 -0.64011018E-07 + -0.64368092E-07 0.19762876E-07 -0.12019020E-07 0.45256227E-07 0.40578455E-07 + 0.12815355E-06 0.16771366E-06 0.15940384E-06 0.77815225E-07 0.82541341E-07 + 0.72171157E-07 0.61892553E-07 0.22774511E-07 0.42620851E-08 -0.61058752E-08 + -0.34387796E-07 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.41927885E-05 -0.86251109E-05 -0.11399776E-04 + -0.13365556E-04 -0.16199867E-04 -0.18888846E-04 -0.20413242E-04 -0.21172510E-04 + -0.14055534E-04 -0.63746928E-05 -0.27493641E-05 -0.48585384E-06 -0.19099389E-09 + -0.23182816E-07 -0.25886014E-07 0.60340817E-07 -0.96825634E-07 -0.41003029E-06 + -0.23083741E-05 -0.31781411E-05 0.10793072E-04 -0.41549153E-05 0.39734172E-06 + 0.10899356E-04 0.30652659E-04 0.69001430E-04 0.34798777E-04 0.80930888E-04 + 0.29416087E-04 0.42733225E-04 0.70711164E-04 0.30096420E-04 0.36402355E-04 + 0.44104039E-04 0.35964133E-04 0.38609258E-04 0.13391748E-04 0.63967033E-05 + 0.68388264E-05 0.66047652E-05 -0.24595823E-07 -0.92086763E-06 0.22215312E-05 + 0.59293564E-07 0.15378505E-05 0.10818130E-05 -0.10070239E-05 -0.99624858E-06 + -0.83807052E-06 -0.12578870E-05 -0.22639216E-05 -0.44421133E-05 -0.59703581E-05 + -0.90311403E-05 -0.95938664E-05 -0.87845920E-05 -0.80053520E-05 -0.70852737E-05 + -0.61295136E-05 -0.57133129E-05 -0.51246861E-05 -0.12664621E-05 0.26961038E-05 + 0.24000934E-05 0.14070383E-05 -0.85681677E-07 -0.22724593E-05 -0.24744033E-05 + 0.73711393E-05 -0.10867764E-04 -0.27810129E-04 -0.12422759E-03 -0.87909665E-04 + 0.19003361E-03 -0.10913740E-02 -0.24949524E-02 -0.21493750E-02 -0.37435013E-03 + 0.67980689E-03 -0.16544710E-02 -0.66343975E-03 -0.33754938E-02 -0.35413494E-02 + -0.16343594E-02 -0.37239528E-02 -0.29942990E-02 -0.23102269E-02 -0.22461673E-02 + -0.46215584E-03 -0.92814386E-03 -0.15463890E-02 -0.15423899E-02 -0.12374052E-02 + -0.89838135E-03 -0.57773677E-03 -0.33170990E-03 -0.34035705E-03 -0.22508909E-03 + -0.13432958E-03 -0.13527411E-03 -0.10088207E-03 -0.11625737E-03 -0.10844772E-03 + -0.14430186E-03 -0.16928994E-03 -0.14707098E-03 -0.23893496E-03 -0.19779349E-03 + -0.20034394E-03 -0.19995163E-03 -0.14314762E-03 -0.10745372E-03 -0.89582386E-04 + -0.18689608E-04 -0.15877929E-04 0.44331934E-04 0.53867029E-04 0.42444007E-04 + -0.92768460E-10 -0.19600117E-08 -0.94763462E-08 -0.27100080E-07 -0.21939963E-06 + -0.11647034E-05 0.87306828E-06 -0.64695137E-05 -0.13880984E-04 -0.12280258E-04 + -0.15374997E-04 -0.31836460E-04 -0.33025147E-04 -0.34260934E-04 -0.35247251E-04 + -0.13113012E-04 -0.14581284E-04 -0.17080557E-04 -0.16354603E-04 -0.12001024E-04 + -0.41726077E-05 -0.16590810E-05 -0.77663742E-06 -0.52752234E-06 -0.43240262E-06 + -0.48670505E-06 -0.34576227E-06 -0.47419428E-07 -0.11459136E-06 -0.12398708E-06 + -0.90581772E-07 -0.18235964E-06 -0.18196054E-06 -0.15262383E-06 -0.21497016E-06 + -0.22235714E-06 -0.20872186E-06 -0.14485225E-06 -0.53872796E-07 -0.48622164E-08 + 0.10272346E-06 0.54329413E-07 0.33202808E-07 -0.66223441E-08 -0.80742514E-07 + -0.83777705E-07 -0.17486902E-06 -0.24327889E-06 -0.26856552E-06 -0.22721935E-06 + -0.40133141E-07 0.37728953E-07 0.31727622E-07 0.20597213E-09 -0.32151113E-09 + -0.55099917E-08 0.72723118E-08 -0.21432322E-07 -0.69702328E-07 -0.47069213E-07 + -0.48427257E-06 -0.79695869E-06 -0.90291177E-06 -0.40270403E-06 -0.21367364E-05 + -0.23765162E-05 -0.23518654E-05 -0.32488331E-05 0.23669106E-07 -0.13071232E-05 + -0.14842299E-05 -0.11642057E-05 -0.14114087E-05 -0.33527238E-06 0.21609632E-06 + 0.21880676E-06 0.33113355E-06 0.18988704E-06 0.13255066E-06 0.10955194E-06 + 0.91968525E-07 -0.48457597E-07 -0.44580061E-07 0.45167205E-07 0.31783450E-08 + 0.53935343E-07 0.60048815E-07 0.29460788E-07 0.57271838E-07 0.13832243E-06 + 0.22917623E-06 0.26598201E-06 0.26024224E-06 0.23018489E-06 0.10050060E-06 + -0.43928714E-07 -0.75677348E-07 -0.90140353E-07 -0.18841253E-06 -0.23391226E-06 + -0.13215945E-06 -0.13802106E-07 -0.63635883E-07 -0.34656104E-07 -0.14504411E-07 + -0.10950347E-07 -0.14370016E-08 -0.32071991E-07 -0.38219013E-07 0.85092479E-07 + -0.88264232E-07 -0.38516799E-06 -0.22747795E-05 -0.24499445E-05 0.19893151E-04 + 0.35707214E-05 -0.72553098E-05 -0.57723995E-07 0.22085328E-04 0.70092620E-04 + 0.38676509E-05 0.53386829E-04 -0.36764116E-04 -0.79380687E-05 0.42553976E-04 + -0.18422098E-04 -0.69015141E-05 0.23203858E-04 0.28856134E-04 0.51177204E-04 + 0.25812086E-04 0.10168324E-04 0.93069661E-05 0.22979802E-04 0.30752033E-04 + 0.25190285E-04 0.51357060E-05 -0.45670016E-05 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 +WV_Continuum + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.54230110E-12 0.59222701E-12 -0.16294804E-11 -0.27337442E-13 0.12208959E-11 + 0.10118330E-11 -0.17437370E-11 -0.94259025E-09 0.00000000E+00 -0.34831959E-09 + 0.27525113E-09 0.47330658E-08 0.19237207E-07 0.36590012E-07 0.41592846E-06 + 0.16183878E-05 0.37566493E-05 0.11589774E-04 0.22693681E-04 0.38367184E-04 + 0.66757452E-04 0.12625938E-03 0.20490420E-03 0.33486018E-03 0.41179710E-03 + 0.64081933E-03 0.76336640E-03 0.95354639E-03 0.11511160E-02 0.14057399E-02 + 0.16526037E-02 0.16861038E-02 0.16671201E-02 0.16798467E-02 0.16449758E-02 + 0.14573222E-02 0.12652710E-02 0.10857653E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.55715712E-07 -0.46097185E-07 -0.99464003E-08 -0.10063596E-07 0.16429983E-07 + 0.28664044E-07 -0.11105894E-07 -0.23667391E-07 -0.35302616E-07 0.27891398E-06 + 0.39232485E-06 -0.16197223E-06 0.63780388E-06 0.74362386E-06 -0.69709972E-06 + 0.11620593E-06 0.13078608E-04 0.11419191E-04 0.76688273E-07 -0.92032806E-05 + -0.65901615E-05 -0.11157765E-03 0.90598419E-03 0.25663261E-02 0.18313797E-02 + 0.59941804E-02 0.48133173E-02 0.35666546E-01 0.79799887E-01 -0.45002428E-01 + 0.44887282E-01 0.25424233E-01 0.71689625E+00 0.33909848E+00 0.53246132E+00 + 0.12275528E+00 -0.71258949E+00 0.16305103E+01 0.31561522E+01 0.57198149E+01 + 0.22153623E+01 0.63535017E+01 0.42869471E+01 0.33829997E+00 0.38495830E+00 + 0.41227699E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.87543926E-11 -0.61441666E-10 + -0.51937115E-08 -0.48412074E-08 0.39724893E-09 -0.32967934E-08 0.12114671E-08 + 0.10732836E-07 -0.29788572E-08 0.12242845E-07 0.11995496E-07 -0.89918673E-08 + 0.54937823E-07 0.80335124E-07 -0.73808504E-07 -0.21302996E-08 0.59210891E-06 + 0.53395777E-06 -0.56349759E-08 -0.38359150E-06 -0.72559178E-07 -0.46588753E-05 + 0.41749491E-04 0.95663988E-04 0.45424343E-04 0.15143729E-03 0.22767060E-03 + 0.56568320E-03 0.83200471E-03 0.16537999E-03 0.48148852E-02 0.24594352E-02 + 0.56755378E-02 0.34906293E-02 -0.61857440E-02 -0.25521043E-01 -0.42752445E-01 + -0.46384596E-01 -0.72058457E-01 -0.78587507E-01 -0.77002451E-01 -0.24459244E-01 + -0.32097940E-01 -0.39336791E-01 -0.42948995E-01 -0.41064383E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.18475989E-10 0.39540217E-11 0.80553094E-11 0.00000000E+00 + -0.46509150E-09 0.40026627E-08 0.15048524E-07 0.43306797E-08 0.46110889E-09 + -0.26414579E-08 0.33824395E-07 -0.33797737E-07 0.10793065E-05 0.36265056E-05 + 0.71670416E-05 0.28308904E-04 0.57018792E-04 0.95795150E-04 0.16925156E-03 + 0.34327045E-03 0.59675375E-03 0.10308090E-02 0.13043839E-02 0.21591742E-02 + 0.26347685E-02 0.35465429E-02 0.43486507E-02 0.56190690E-02 0.65750557E-02 + 0.69360481E-02 0.69889758E-02 0.74178069E-02 0.74414833E-02 0.64762784E-02 + 0.58556671E-02 0.48957180E-02 0.18597073E-15 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.27137218E-10 + -0.11367552E-07 -0.24269416E-08 0.18898872E-07 0.55533828E-08 0.53449094E-07 + 0.51578580E-08 0.15576948E-05 0.55608293E-05 0.11932731E-04 0.44399627E-04 + 0.89810194E-04 0.15190205E-03 0.26827525E-03 0.53530283E-03 0.92502861E-03 + 0.15638491E-02 0.20039244E-02 0.32306176E-02 0.39564488E-02 0.52913879E-02 + 0.64664824E-02 0.84148423E-02 0.97055005E-02 0.10299915E-01 0.10413791E-01 + 0.11128160E-01 0.11135322E-01 0.99100757E-02 0.89805343E-02 0.72905317E-02 + 0.46492681E-15 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.27189786E-15 0.17126512E-11 0.00000000E+00 + -0.20676573E-07 0.16201639E-07 -0.25835555E-08 -0.25323410E-09 0.13906569E-08 + 0.32199409E-08 0.71448003E-08 0.10285244E-06 0.38959198E-07 0.27907549E-05 + 0.10104020E-04 0.21875598E-04 0.78217728E-04 0.15750676E-03 0.26842983E-03 + 0.47621534E-03 0.95135524E-03 0.16740685E-02 0.27611993E-02 0.36822031E-02 + 0.57906468E-02 0.71806153E-02 0.96812083E-02 0.11844917E-01 0.16060545E-01 + 0.18011862E-01 0.19403545E-01 0.19631006E-01 0.21326892E-01 0.20933534E-01 + 0.18827152E-01 0.16856687E-01 0.13244249E-01 0.46492681E-15 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.24793500E-12 0.49952569E-10 + 0.11543082E-07 -0.61684732E-07 0.76926868E-09 0.53856942E-07 -0.14260952E-07 + 0.10570442E-07 0.28772020E-08 0.10493625E-07 0.10789351E-08 0.81705888E-08 + 0.15635902E-06 0.45428466E-07 0.44779923E-05 0.16032781E-04 0.33989311E-04 + 0.11924444E-03 0.23832083E-03 0.40777543E-03 0.72235596E-03 0.14391898E-02 + 0.25759124E-02 0.41330530E-02 0.56246485E-02 0.86954969E-02 0.10884132E-01 + 0.15055617E-01 0.18085765E-01 0.25146101E-01 0.27070130E-01 0.29823240E-01 + 0.29893506E-01 0.33247947E-01 0.31973610E-01 0.29108141E-01 0.25857103E-01 + 0.20097558E-01 0.13017951E-14 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.24761904E-07 -0.35309331E-07 0.66445914E-07 0.23352896E-08 + -0.12014175E-07 0.21230776E-07 -0.91068348E-08 0.23865523E-08 0.31391267E-07 + 0.25480125E-07 0.31003957E-08 0.18298540E-08 0.21907855E-06 -0.87661195E-07 + 0.73707096E-05 0.25301177E-04 0.50226223E-04 0.17655983E-03 0.34969452E-03 + 0.60498089E-03 0.10854015E-02 0.22175367E-02 0.42164043E-02 0.65605507E-02 + 0.94553119E-02 0.14425785E-01 0.18339473E-01 0.26059046E-01 0.30432069E-01 + 0.42778559E-01 0.43936612E-01 0.48265152E-01 0.46816911E-01 0.54197581E-01 + 0.50975873E-01 0.46638429E-01 0.41142418E-01 0.32169006E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.43034867E-12 + -0.45530859E-12 0.11727074E-11 0.38179324E-13 -0.10130652E-11 -0.69686753E-12 + 0.18386329E-11 0.66432232E-09 0.00000000E+00 0.18632504E-09 -0.43525289E-09 + -0.94570231E-08 -0.41621841E-07 -0.13268829E-06 -0.94116641E-06 -0.36870385E-05 + -0.93783571E-05 -0.26834264E-04 -0.53084508E-04 -0.91175643E-04 -0.15637031E-03 + -0.28039641E-03 -0.45209475E-03 -0.70270259E-03 -0.89359874E-03 -0.13011787E-02 + -0.15849972E-02 -0.19719665E-02 -0.24232152E-02 -0.29626305E-02 -0.34462612E-02 + -0.36090471E-02 -0.36626544E-02 -0.37253053E-02 -0.36329195E-02 -0.32694513E-02 + -0.28223866E-02 -0.23609597E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.49243072E-07 + 0.40837546E-07 -0.67453562E-08 0.10658679E-07 -0.22287361E-07 -0.29466797E-07 + -0.98659358E-08 0.22092012E-08 0.24069974E-07 -0.32865828E-06 -0.41296025E-06 + -0.57686712E-08 -0.86178246E-06 -0.10355673E-05 0.60077112E-07 -0.98953026E-06 + -0.16537165E-04 -0.12860279E-04 0.48372222E-05 0.79226541E-05 0.35964075E-05 + 0.18558108E-03 -0.14209063E-02 -0.41577088E-02 -0.33550989E-02 -0.99800396E-02 + -0.51776036E-02 -0.50955571E-01 -0.12869860E+00 0.59275650E-01 -0.55293586E-01 + -0.72691734E-02 -0.71381280E+00 -0.46387968E+00 -0.51230661E+00 -0.46909851E-01 + 0.67468912E+00 -0.16824661E+01 -0.24369414E+01 -0.57745084E+01 -0.16512087E+01 + -0.46329824E+01 -0.28996035E+01 0.73232990E-01 0.21934491E+00 0.32318467E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.87885517E-11 -0.17042021E-09 0.80977418E-09 + 0.28159597E-08 -0.74898909E-09 0.11841342E-08 -0.80730341E-09 -0.56534845E-08 + 0.31149040E-08 -0.13522041E-07 -0.11383903E-07 -0.59923618E-09 -0.63793696E-07 + -0.79815544E-07 0.57032345E-07 -0.22167957E-07 -0.74086467E-06 -0.60921699E-06 + 0.22924809E-06 0.30382955E-06 -0.18162426E-06 0.76301847E-05 -0.66374102E-04 + -0.16559717E-03 -0.11882207E-03 -0.27418915E-03 -0.38006700E-03 -0.10132309E-02 + -0.12918189E-02 0.22305643E-03 -0.56589041E-02 -0.11920667E-02 -0.60343558E-02 + -0.26296512E-02 0.10689253E-01 0.36720134E-01 0.55365333E-01 0.52154417E-01 + 0.88214186E-01 0.93120571E-01 0.90743180E-01 0.26099995E-01 0.36821924E-01 + 0.46007718E-01 0.50189849E-01 0.48367981E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.11131874E-10 0.13142946E-11 -0.11211837E-10 0.00000000E+00 0.56618954E-10 + -0.14957096E-07 -0.18662765E-07 -0.22008517E-08 -0.29309863E-08 -0.11202662E-07 + -0.10837326E-06 -0.29491320E-06 -0.30354438E-05 -0.11328994E-04 -0.28755573E-04 + -0.90252399E-04 -0.18688152E-03 -0.33084485E-03 -0.58101607E-03 -0.10690895E-02 + -0.18123803E-02 -0.28777155E-02 -0.38295364E-02 -0.56466812E-02 -0.71229512E-02 + -0.93090503E-02 -0.11711007E-01 -0.14914188E-01 -0.17341057E-01 -0.18746318E-01 + -0.19508457E-01 -0.20456381E-01 -0.20199005E-01 -0.18016743E-01 -0.15922213E-01 + -0.13063818E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.22718890E-10 0.97748493E-08 + -0.10373685E-08 -0.17015639E-07 -0.24769457E-07 -0.16232375E-06 -0.48546154E-06 + -0.42803972E-05 -0.16346717E-04 -0.42271232E-04 -0.13088554E-03 -0.27000406E-03 + -0.47560771E-03 -0.83237539E-03 -0.15257319E-02 -0.25758051E-02 -0.40575367E-02 + -0.54037641E-02 -0.79065881E-02 -0.99531627E-02 -0.12970504E-01 -0.16234839E-01 + -0.20776498E-01 -0.23941689E-01 -0.25904203E-01 -0.26946488E-01 -0.28335738E-01 + -0.27951871E-01 -0.25122211E-01 -0.22292851E-01 -0.18038337E-01 -0.17268880E-15 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.63407237E-12 -0.41413545E-11 0.00000000E+00 0.75154592E-08 + -0.17650257E-07 0.11049772E-07 0.16722070E-08 -0.44436777E-08 -0.82499957E-08 + -0.39467475E-07 -0.28284032E-06 -0.82806221E-06 -0.73271892E-05 -0.28031925E-04 + -0.71862599E-04 -0.21956610E-03 -0.44992953E-03 -0.79206237E-03 -0.13856257E-02 + -0.25462452E-02 -0.43346709E-02 -0.67406087E-02 -0.91313010E-02 -0.13237883E-01 + -0.16707361E-01 -0.21884627E-01 -0.27284456E-01 -0.35872929E-01 -0.40517081E-01 + -0.44082743E-01 -0.45763411E-01 -0.48503471E-01 -0.47325890E-01 -0.42642903E-01 + -0.37747959E-01 -0.29971039E-01 -0.17268880E-15 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.54059313E-12 -0.70055209E-10 -0.21515511E-07 + 0.37829703E-07 0.12195703E-07 -0.30593646E-07 0.54599564E-08 -0.16386546E-07 + -0.34755316E-08 -0.16205233E-07 -0.69666476E-08 -0.56585701E-07 -0.42449202E-06 + -0.11916623E-05 -0.11344557E-04 -0.43019826E-04 -0.10840017E-03 -0.32849478E-03 + -0.66918607E-03 -0.11799036E-02 -0.20611433E-02 -0.37854687E-02 -0.65096234E-02 + -0.99690460E-02 -0.13670919E-01 -0.19645786E-01 -0.24944053E-01 -0.33239400E-01 + -0.40983958E-01 -0.54848424E-01 -0.60348098E-01 -0.66514754E-01 -0.68812447E-01 + -0.73776781E-01 -0.71165117E-01 -0.64546402E-01 -0.56950827E-01 -0.44922445E-01 + -0.48352863E-15 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.31998771E-08 0.33119574E-07 -0.33516318E-07 -0.35634409E-08 0.40430389E-08 + -0.16138162E-07 0.39756768E-08 -0.77058184E-08 -0.42644112E-07 -0.32187861E-07 + -0.67469770E-08 -0.74836194E-07 -0.61959994E-06 -0.15386988E-05 -0.18071316E-04 + -0.66901050E-04 -0.16292533E-03 -0.49238863E-03 -0.99828397E-03 -0.17751156E-02 + -0.31188959E-02 -0.57972064E-02 -0.10311495E-01 -0.15482803E-01 -0.21941361E-01 + -0.31341845E-01 -0.40110069E-01 -0.54546621E-01 -0.65955844E-01 -0.89387014E-01 + -0.95085801E-01 -0.10462036E+00 -0.10644880E+00 -0.11632109E+00 -0.11065717E+00 + -0.10068693E+00 -0.88456791E-01 -0.69879022E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.55833023E-12 -0.29656413E-11 + 0.27076276E-11 -0.34070742E-11 -0.78806070E-11 -0.85997935E-11 -0.41131658E-11 + 0.23306086E-08 0.00000000E+00 0.34207295E-08 -0.41184140E-07 -0.59082114E-07 + -0.21772693E-06 -0.79591265E-06 0.48800809E-06 0.56479642E-05 0.12568157E-04 + -0.15636392E-04 -0.17869701E-04 -0.34010196E-05 0.87533646E-05 -0.14384205E-04 + 0.50393009E-04 -0.36398565E-04 0.91864635E-04 0.15250542E-03 0.32611869E-03 + -0.69251269E-04 0.15557615E-03 0.35391770E-03 -0.11273994E-03 0.55162317E-03 + 0.99131552E-03 0.12347521E-02 0.13221279E-02 0.15145841E-02 0.11287496E-02 + 0.78890489E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.23535627E-06 0.99624607E-07 + -0.12677299E-06 -0.23177700E-06 -0.55196403E-06 -0.98013453E-06 -0.15372736E-05 + -0.25226394E-05 -0.38957966E-05 -0.74641139E-05 -0.10635703E-04 -0.13227179E-04 + -0.22313721E-04 -0.30511278E-04 -0.38951399E-04 -0.61458745E-04 -0.13727764E-03 + -0.26936202E-03 -0.29514000E-03 -0.56560640E-03 -0.13375647E-02 -0.93664649E-02 + -0.63668937E-02 0.54155648E-02 -0.30190592E-01 -0.97776716E-01 -0.25991665E+00 + -0.16599105E+00 0.31501342E-02 -0.54517829E+00 -0.63381878E+00 -0.78263487E+00 + -0.10898425E+01 -0.74755155E+00 -0.10614110E+01 -0.18509170E+01 -0.14231672E+01 + -0.58363546E+00 -0.40372726E+01 -0.10134997E+01 -0.13346409E+01 -0.30334261E+01 + -0.24355324E+01 -0.20984793E+01 -0.16903888E+01 -0.13355176E+01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.38425828E-11 -0.19143742E-09 0.78085401E-08 -0.19794412E-08 + -0.26588524E-07 -0.39750075E-07 -0.88264774E-07 -0.16817332E-06 -0.19904501E-06 + -0.37859798E-06 -0.52933089E-06 -0.69394813E-06 -0.12290097E-05 -0.17143870E-05 + -0.19520069E-05 -0.33662511E-05 -0.69452451E-05 -0.13192181E-04 -0.15014541E-04 + -0.31575503E-04 -0.79741749E-04 -0.48828397E-03 -0.49781659E-03 -0.32495858E-04 + -0.17904505E-02 -0.86668705E-02 -0.12982077E-01 -0.10815552E-01 -0.13972433E-01 + -0.30680867E-01 -0.38122991E-01 -0.59731959E-01 -0.31609386E-01 -0.17540998E-01 + 0.15692572E-02 0.11255119E-01 0.37832140E-01 0.12969087E+00 0.14735515E+00 + 0.21592665E+00 0.23696786E+00 0.13726132E+00 0.12395307E+00 0.11630313E+00 + 0.10926786E+00 0.99501274E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.53397401E-10 + -0.20756732E-10 -0.24079792E-10 0.00000000E+00 0.99346439E-09 -0.41909004E-08 + -0.89593627E-07 -0.76195107E-07 -0.27574326E-07 0.34118846E-07 -0.80320893E-06 + -0.28852673E-05 0.16538743E-05 0.21246791E-04 0.42724409E-04 -0.11259274E-03 + -0.13793013E-03 -0.89718733E-04 -0.13421711E-03 -0.48380387E-03 -0.37977692E-03 + -0.13454735E-02 -0.10530520E-02 -0.12717696E-02 -0.85423385E-03 -0.39642667E-02 + -0.35242900E-02 -0.21328276E-02 -0.65734539E-02 -0.30750204E-02 -0.45354574E-03 + -0.16845161E-02 -0.17607410E-02 -0.94950544E-03 -0.15585991E-02 -0.13266900E-02 + -0.61897124E-15 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.72895347E-10 0.30556198E-07 0.93361870E-07 + -0.39336409E-06 -0.92165970E-07 -0.76066913E-06 -0.31198435E-05 0.33963120E-05 + 0.29884207E-04 0.64204562E-04 -0.13201916E-03 -0.15531620E-03 -0.79598645E-04 + -0.10737748E-03 -0.52016609E-03 -0.30503576E-03 -0.14865836E-02 -0.92579939E-03 + -0.11591143E-02 -0.42176041E-03 -0.43190807E-02 -0.34926207E-02 -0.12464183E-02 + -0.67107354E-02 -0.21531619E-02 0.15653222E-02 -0.41453214E-03 -0.73619107E-03 + -0.54496401E-03 -0.12854572E-02 -0.78527803E-03 -0.15474281E-14 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.19299494E-12 -0.47373538E-11 0.00000000E+00 0.75199977E-07 -0.82408124E-07 + -0.14622698E-07 -0.20520029E-07 -0.37755204E-07 -0.82774302E-07 -0.12262684E-06 + -0.17075790E-05 -0.61253140E-05 0.48982095E-05 0.49935716E-04 0.10481113E-03 + -0.21655102E-03 -0.26557824E-03 -0.14429473E-03 -0.18995091E-03 -0.85535508E-03 + -0.53327134E-03 -0.27021800E-02 -0.18962699E-02 -0.27276996E-02 -0.18350259E-02 + -0.84401089E-02 -0.77277172E-02 -0.43018965E-02 -0.13428894E-01 -0.71746455E-02 + -0.57249700E-03 -0.58225448E-02 -0.62177362E-02 -0.63826919E-02 -0.56376263E-02 + -0.33418530E-02 -0.15474281E-14 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.93900950E-12 -0.17863859E-09 -0.33653368E-07 0.18754505E-06 + -0.52989779E-07 -0.17905955E-06 0.31061791E-07 -0.73681834E-07 -0.67310770E-07 + -0.17859406E-06 -0.13695782E-06 -0.34191966E-06 -0.29654811E-05 -0.12085501E-04 + 0.48047414E-05 0.75902741E-04 0.15062164E-03 -0.34602147E-03 -0.43997564E-03 + -0.24319313E-03 -0.30796865E-03 -0.12866549E-02 -0.66987327E-03 -0.39026522E-02 + -0.22842073E-02 -0.34541569E-02 -0.16416277E-02 -0.11137568E-01 -0.90848168E-02 + -0.25918117E-02 -0.15246431E-01 -0.71219416E-02 0.47471247E-02 -0.67552783E-02 + -0.64447889E-02 -0.76473549E-02 -0.60499342E-02 -0.29465566E-02 -0.43327987E-14 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.72850009E-07 + 0.84470215E-07 -0.24388867E-06 -0.21908780E-07 0.72391797E-08 -0.12483075E-06 + -0.35367180E-07 -0.11941391E-06 -0.27783761E-06 -0.52836802E-06 -0.50635098E-06 + -0.10179594E-05 -0.56031196E-05 -0.26947397E-04 -0.13246258E-06 0.11976579E-03 + 0.20782080E-03 -0.64321829E-03 -0.88833577E-03 -0.60475979E-03 -0.86679144E-03 + -0.27238170E-02 -0.22131574E-02 -0.88696518E-02 -0.72826483E-02 -0.10652262E-01 + -0.91292033E-02 -0.25405116E-01 -0.23329135E-01 -0.11450511E-01 -0.31708648E-01 + -0.19350949E-01 0.63614209E-02 -0.19735804E-01 -0.17324779E-01 -0.17911342E-01 + -0.14137819E-01 -0.91185351E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.69254262E-12 0.25304793E-11 -0.27309782E-11 + 0.25984056E-11 0.66491101E-11 0.68885907E-11 0.19386262E-11 -0.20613499E-08 + 0.00000000E+00 -0.54222851E-08 0.35480812E-07 0.45737018E-07 0.16768081E-06 + 0.65601474E-06 -0.69698508E-06 -0.65285210E-05 -0.14448790E-04 0.13340024E-04 + 0.11617538E-04 -0.57446129E-05 -0.26385835E-04 -0.10640069E-04 -0.94454437E-04 + -0.15548028E-04 -0.17246238E-03 -0.23074012E-03 -0.44633004E-03 -0.10825266E-03 + -0.37122969E-03 -0.60569050E-03 -0.21009893E-03 -0.89613748E-03 -0.13532133E-02 + -0.16463501E-02 -0.17117547E-02 -0.18674670E-02 -0.14386754E-02 -0.10161909E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.18348180E-06 -0.14393613E-06 0.12963426E-07 + -0.22916883E-07 0.83557708E-07 0.12196941E-06 0.72492144E-07 0.91281688E-07 + 0.33551721E-07 0.16071411E-05 0.18543659E-05 0.37605266E-06 0.35507805E-05 + 0.35062929E-05 -0.15422709E-06 0.48020336E-05 0.57826691E-04 0.13786344E-03 + -0.16245113E-05 -0.15779990E-03 -0.74620911E-03 0.39356412E-02 -0.52375906E-02 + -0.34345172E-01 -0.25881669E-01 -0.73778542E-02 0.82454479E-01 -0.91273340E-01 + -0.36783878E+00 -0.24669515E-01 -0.14677176E+00 -0.25115717E+00 -0.18470117E+00 + -0.75191138E+00 -0.78870088E+00 -0.36291607E+00 -0.10905590E+01 -0.21521331E+01 + 0.70196687E+00 -0.19939160E+01 -0.17884660E+01 -0.36164946E+00 -0.74189908E+00 + -0.77731354E+00 -0.79188052E+00 -0.67367991E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.97091207E-11 0.33533637E-09 -0.61413462E-08 -0.82070512E-08 0.47686435E-08 + 0.15419992E-08 0.16147978E-07 0.45716431E-07 0.17379112E-07 0.10382011E-06 + 0.11474696E-06 0.94422903E-07 0.34992481E-06 0.43813761E-06 0.11092674E-06 + 0.70479310E-06 0.32157613E-05 0.70276503E-05 0.10600188E-05 -0.25376235E-05 + -0.18622307E-04 0.23173201E-03 -0.49947328E-04 -0.13524002E-02 -0.90269688E-03 + 0.36867317E-02 0.45357267E-02 -0.17210170E-02 -0.48115973E-02 0.30717778E-02 + 0.30303383E-03 0.96860380E-02 -0.28045241E-01 -0.53894092E-01 -0.87604690E-01 + -0.11399575E+00 -0.15419156E+00 -0.25286402E+00 -0.28546040E+00 -0.35183936E+00 + -0.36902194E+00 -0.26215162E+00 -0.24015250E+00 -0.21959986E+00 -0.19674395E+00 + -0.16892326E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.49475385E-10 0.93476077E-11 + 0.21108688E-10 0.00000000E+00 -0.80623567E-09 0.11222691E-07 0.75670154E-07 + 0.48683053E-07 -0.10228960E-07 -0.12826110E-06 0.50611478E-06 0.20862307E-05 + -0.29343052E-05 -0.25877452E-04 -0.51989771E-04 0.10285893E-03 0.11270055E-03 + 0.54354702E-04 0.64383102E-04 0.38681228E-03 0.21649043E-03 0.11639561E-02 + 0.78606116E-03 0.10259881E-02 0.47153998E-03 0.33912378E-02 0.28555329E-02 + 0.14745824E-02 0.55762586E-02 0.21273241E-02 -0.44102209E-03 0.61200463E-03 + 0.76626640E-03 -0.52008306E-04 0.73563214E-03 0.74388198E-03 0.36840774E-15 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.68637081E-10 -0.29093782E-07 -0.10150600E-06 0.34782542E-06 + 0.43421586E-07 0.59454448E-06 0.26408331E-05 -0.38380629E-05 -0.32962095E-04 + -0.70624369E-04 0.13008725E-03 0.13968103E-03 0.58696316E-04 0.52552855E-04 + 0.44632021E-03 0.16460935E-03 0.13427895E-02 0.69494684E-03 0.98122112E-03 + 0.91320122E-04 0.37731221E-02 0.28389413E-02 0.67109507E-03 0.56850257E-02 + 0.12102582E-02 -0.24273455E-02 -0.66644059E-03 -0.25456947E-03 -0.47339131E-03 + 0.49383467E-03 0.21896120E-03 0.92101934E-15 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.34407051E-12 + 0.62920218E-11 0.00000000E+00 -0.67889824E-07 0.64944705E-07 -0.16186753E-07 + -0.12813997E-08 0.12430014E-07 0.16487728E-07 -0.37715365E-07 0.12030876E-05 + 0.47362779E-05 -0.69320510E-05 -0.58219209E-04 -0.12169828E-03 0.20075804E-03 + 0.21876145E-03 0.78665746E-04 0.54150072E-04 0.67003644E-03 0.22230788E-03 + 0.23419568E-02 0.13926459E-02 0.22577366E-02 0.10830721E-02 0.73307697E-02 + 0.63663628E-02 0.32119362E-02 0.11441987E-01 0.53518621E-02 -0.10998980E-02 + 0.38187261E-02 0.42986952E-02 0.44360292E-02 0.41229850E-02 0.21471754E-02 + 0.92101934E-15 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.11949434E-11 0.19786483E-09 0.42709247E-07 -0.17783764E-06 0.10561672E-07 + 0.13795022E-06 -0.46037378E-07 0.39407300E-07 0.13433336E-07 0.95704724E-07 + -0.59075589E-07 -0.13494906E-06 0.15289345E-05 0.82333765E-05 -0.11662261E-04 + -0.97784046E-04 -0.19433636E-03 0.28705751E-03 0.31072938E-03 0.57951433E-04 + -0.23484042E-04 0.82632613E-03 -0.33996744E-04 0.30235691E-02 0.11552767E-02 + 0.22707741E-02 0.13706691E-05 0.90158046E-02 0.64594226E-02 0.51284393E-03 + 0.11531772E-01 0.37569129E-02 -0.78356273E-02 0.32211037E-02 0.29707450E-02 + 0.42261883E-02 0.33270995E-02 0.74236026E-03 0.25788542E-14 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.57269545E-07 -0.10615794E-06 + 0.18443649E-06 -0.17040762E-09 -0.36574974E-07 0.61872146E-07 -0.37400088E-07 + 0.96278728E-08 0.12096634E-06 0.26262993E-06 -0.89896869E-07 -0.43205493E-06 + 0.13356193E-05 0.15672555E-04 -0.21872510E-04 -0.18194997E-03 -0.33021119E-03 + 0.44920092E-03 0.51741861E-03 0.67971682E-04 -0.13615556E-04 0.14925940E-02 + 0.46123734E-03 0.65685757E-02 0.44875049E-02 0.74829492E-02 0.50143565E-02 + 0.20481924E-01 0.17147798E-01 0.61622123E-02 0.23074162E-01 0.11170298E-01 + -0.14174658E-01 0.11158307E-01 0.88009582E-02 0.98186545E-02 0.74166269E-02 + 0.36544977E-02 +CO2 + -0.25166020E-03 -0.11069854E-03 -0.66386783E-04 -0.11894926E-03 -0.22996217E-03 + -0.34392169E-03 -0.45880026E-03 -0.70156594E-03 -0.10802113E-02 -0.17473331E-02 + -0.24067765E-02 -0.28486363E-02 -0.25396132E-02 -0.26904845E-02 -0.25364457E-02 + -0.21742581E-02 -0.18599443E-03 0.27116385E-02 0.20315745E-02 0.15941491E-02 + 0.37849382E-03 -0.14887684E-02 0.25572636E-03 0.20659175E-02 0.33528161E-02 + 0.55443518E-02 0.56609169E-02 0.25101945E-02 0.20870648E-02 0.21118489E-02 + 0.53463515E-03 0.12798327E-02 0.53316360E-03 -0.63108687E-03 -0.92642480E-03 + -0.91857416E-04 -0.76442221E-04 0.29053991E-03 0.32183653E-03 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.16782783E-10 -0.35443222E-10 + -0.49278263E-10 -0.10486951E-09 -0.21056190E-09 -0.18953031E-09 -0.44587876E-09 + -0.10893738E-08 -0.11309495E-08 -0.22672607E-08 -0.18661783E-08 -0.32762790E-08 + -0.25602722E-08 -0.34743852E-08 -0.56439464E-08 -0.68805653E-08 -0.10960034E-07 + -0.10981606E-07 -0.17422069E-07 -0.30250849E-07 -0.54947637E-07 -0.90758612E-07 + 0.23674768E-07 -0.56456546E-07 -0.95551619E-07 -0.28786330E-07 -0.66939316E-07 + -0.10916808E-06 -0.14141979E-06 -0.15730879E-06 -0.18487148E-06 -0.18448396E-06 + -0.26301061E-06 -0.25867190E-06 -0.35746117E-06 -0.32042482E-06 -0.37473554E-06 + -0.41575533E-06 -0.43846601E-06 -0.48081500E-06 -0.49387378E-06 -0.51413395E-06 + -0.53653085E-06 -0.53510088E-06 -0.53266281E-06 -0.53862646E-06 -0.53575749E-06 + -0.51149393E-06 -0.47686989E-06 -0.43862989E-06 -0.38127536E-06 -0.33121968E-06 + -0.26494202E-06 -0.28000956E-07 -0.72847148E-07 -0.13010325E-06 -0.24240583E-06 + -0.38879715E-06 -0.67212598E-06 -0.99706899E-06 -0.15327945E-05 -0.21574766E-05 + -0.31257670E-05 -0.42636010E-05 -0.57435535E-05 -0.76675831E-05 -0.99436319E-05 + -0.12626354E-04 -0.15663516E-04 -0.19184631E-04 -0.23304568E-04 -0.27883527E-04 + -0.33336289E-04 -0.38800763E-04 -0.45006745E-04 -0.52587995E-04 -0.60840277E-04 + -0.70224092E-04 -0.79541616E-04 -0.88736525E-04 -0.97009510E-04 -0.10741825E-03 + -0.11668253E-03 -0.12565570E-03 -0.13532916E-03 -0.14469091E-03 -0.15087904E-03 + -0.15730694E-03 -0.16425907E-03 -0.16849645E-03 -0.17214691E-03 -0.17414173E-03 + -0.17323895E-03 -0.17393188E-03 -0.17172675E-03 -0.16794561E-03 -0.16329373E-03 + -0.15693491E-03 -0.15001688E-03 -0.13761547E-03 -0.12680419E-03 -0.11639556E-03 + -0.10308314E-03 -0.90375369E-04 -0.78040041E-04 -0.62929395E-04 -0.49878539E-10 + -0.18654916E-09 -0.58457131E-09 -0.17304920E-08 -0.47507024E-08 -0.11677463E-07 + -0.18858967E-07 -0.30231737E-07 -0.38954025E-07 -0.46615239E-07 -0.47039774E-07 + -0.47255375E-07 -0.47746071E-07 -0.51064881E-07 -0.59128847E-07 -0.61526884E-07 + -0.69918325E-07 -0.83210013E-07 -0.10370566E-06 -0.15728324E-06 -0.22079423E-06 + -0.21519176E-08 -0.23337965E-06 -0.14253406E-06 -0.25261540E-06 -0.25764294E-06 + -0.30164433E-06 -0.37466401E-06 -0.45068730E-06 -0.55017110E-06 -0.65364351E-06 + -0.77720467E-06 -0.94859492E-06 -0.11581988E-05 -0.13466108E-05 -0.15639786E-05 + -0.17954999E-05 -0.20773390E-05 -0.23948009E-05 -0.26998463E-05 -0.29626144E-05 + -0.31307158E-05 -0.32969516E-05 -0.34054637E-05 -0.34102896E-05 -0.34876187E-05 + -0.34029562E-05 -0.32186586E-05 -0.30495470E-05 -0.28123024E-05 -0.25023243E-05 + -0.21475431E-05 -0.17344399E-05 -0.22651419E-07 -0.96528076E-07 -0.31633795E-06 + -0.91913121E-06 -0.25137019E-05 -0.61112249E-05 -0.97283821E-05 -0.15020401E-04 + -0.18852283E-04 -0.22682180E-04 -0.22843335E-04 -0.22152954E-04 -0.22555643E-04 + -0.23454516E-04 -0.27497486E-04 -0.29117628E-04 -0.33728056E-04 -0.40687343E-04 + -0.48223459E-04 -0.56457919E-04 -0.56690921E-04 -0.60864565E-04 -0.64622600E-04 + -0.72051371E-04 -0.78392107E-04 -0.87693961E-04 -0.10935400E-03 -0.13038744E-03 + -0.15512942E-03 -0.19532480E-03 -0.23212424E-03 -0.27908578E-03 -0.34673275E-03 + -0.43174202E-03 -0.50812420E-03 -0.60417265E-03 -0.71055572E-03 -0.83021159E-03 + -0.96346168E-03 -0.11128841E-02 -0.12206036E-02 -0.12870310E-02 -0.13377895E-02 + -0.13635112E-02 -0.13566880E-02 -0.13780022E-02 -0.13260361E-02 -0.12377210E-02 + -0.11635639E-02 -0.10695684E-02 -0.95353680E-03 -0.81547780E-03 -0.65758927E-03 + -0.14841898E-07 -0.61724856E-07 -0.20444437E-06 -0.57561928E-06 -0.15921220E-05 + -0.38317286E-05 -0.61315824E-05 -0.94744223E-05 -0.12070134E-04 -0.14716819E-04 + -0.15101401E-04 -0.14896212E-04 -0.15379147E-04 -0.16231618E-04 -0.19126857E-04 + -0.20261059E-04 -0.23244853E-04 -0.27798328E-04 -0.33202314E-04 -0.38771717E-04 + -0.38694481E-04 -0.41498965E-04 -0.44199215E-04 -0.49277172E-04 -0.53463131E-04 + -0.60040833E-04 -0.75044648E-04 -0.88701929E-04 -0.10417950E-03 -0.12968197E-03 + -0.15308564E-03 -0.18348141E-03 -0.22729636E-03 -0.28297561E-03 -0.33244689E-03 + -0.39305290E-03 -0.46107779E-03 -0.53972190E-03 -0.62784746E-03 -0.72581246E-03 + -0.79803322E-03 -0.84309448E-03 -0.88029222E-03 -0.90072144E-03 -0.89886661E-03 + -0.91579789E-03 -0.88480337E-03 -0.82953384E-03 -0.78259058E-03 -0.72047906E-03 + -0.64290686E-03 -0.55022981E-03 -0.44411938E-03 -0.76923097E-08 -0.31582052E-07 + -0.97621913E-07 -0.29090609E-06 -0.77406614E-06 -0.18679888E-05 -0.29842340E-05 + -0.46391647E-05 -0.59987785E-05 -0.73714584E-05 -0.76572439E-05 -0.76271660E-05 + -0.79319134E-05 -0.84180107E-05 -0.99372000E-05 -0.10525261E-04 -0.11950801E-04 + -0.14230939E-04 -0.17211255E-04 -0.20084371E-04 -0.19954202E-04 -0.21486154E-04 + -0.23104376E-04 -0.25904512E-04 -0.28264343E-04 -0.31949581E-04 -0.39902016E-04 + -0.47160116E-04 -0.55312788E-04 -0.68287384E-04 -0.80593627E-04 -0.96313542E-04 + -0.11870881E-03 -0.14686027E-03 -0.17188038E-03 -0.20130411E-03 -0.23405564E-03 + -0.27219444E-03 -0.31467280E-03 -0.36089676E-03 -0.39567641E-03 -0.41738815E-03 + -0.43658363E-03 -0.44722166E-03 -0.44614102E-03 -0.45476014E-03 -0.44080855E-03 + -0.41509959E-03 -0.39276011E-03 -0.36163529E-03 -0.32259228E-03 -0.27614160E-03 + -0.22299357E-03 -0.28947436E-04 -0.73880182E-04 -0.15706441E-03 -0.24152356E-03 + -0.24084515E-03 -0.21476110E-03 -0.24451444E-03 -0.34641147E-03 -0.46684687E-03 + -0.68894530E-03 -0.89387713E-03 -0.10876072E-02 -0.13024362E-02 -0.15135105E-02 + -0.18282179E-02 -0.20671757E-02 -0.23855754E-02 -0.27614431E-02 -0.31695767E-02 + -0.36803091E-02 -0.39570491E-02 -0.45285301E-02 -0.49274450E-02 -0.55747016E-02 + -0.64140554E-02 -0.70466723E-02 -0.85608815E-02 -0.97735425E-02 -0.11114531E-01 + -0.12659397E-01 -0.13589504E-01 -0.15119831E-01 -0.16837692E-01 -0.18422350E-01 + -0.19269673E-01 -0.20356247E-01 -0.20959911E-01 -0.21461258E-01 -0.21645626E-01 + -0.21730686E-01 -0.20856424E-01 -0.19554764E-01 -0.17999406E-01 -0.16252063E-01 + -0.14447893E-01 -0.13148977E-01 -0.11103253E-01 -0.91783172E-02 -0.76667584E-02 + -0.63117746E-02 -0.51000479E-02 -0.40032667E-02 -0.29726564E-02 -0.17491808E-03 + 0.12878690E-03 0.47512891E-04 0.14661971E-03 0.15383300E-03 0.32197909E-03 + 0.10133128E-02 0.18149281E-02 0.25348377E-02 0.31958906E-02 0.50240241E-02 + 0.77905502E-02 0.11790956E-01 0.16470375E-01 0.19105661E-01 0.21579775E-01 + 0.23736303E-01 0.25548048E-01 0.24877948E-01 0.24234794E-01 0.24363331E-01 + 0.23470734E-01 0.31281096E-01 0.89105701E-02 -0.13357550E-01 -0.78360136E-02 + 0.17389389E-01 0.25694818E-01 0.17670473E-01 0.11291713E-01 0.10771007E-01 + 0.92649977E-02 0.71086281E-02 0.61505325E-02 0.35190029E-02 0.33203291E-02 + 0.24036163E-02 0.10818081E-02 0.78791536E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 -0.50776331E-10 0.64855819E-13 -0.10088342E-10 + -0.95198876E-10 0.67724626E-10 0.79961201E-09 -0.61706054E-09 -0.11018997E-08 + -0.58661012E-09 0.11771129E-08 -0.16943868E-08 -0.95065497E-09 0.86202410E-09 + 0.80418710E-09 0.22345303E-09 -0.30429205E-08 -0.16846132E-09 -0.38445461E-09 + -0.10652265E-08 0.52860146E-08 0.19253568E-08 0.59124476E-08 -0.28419559E-08 + 0.17353645E-07 -0.89011559E-08 0.80040792E-08 -0.53439298E-07 -0.92774647E-08 + -0.83147308E-08 -0.56098471E-08 -0.14906470E-07 -0.13042046E-07 -0.26420743E-07 + -0.30044984E-07 -0.40536346E-07 -0.47967772E-07 -0.64860525E-07 -0.82427715E-07 + -0.10295154E-06 -0.11759927E-06 -0.21740926E-06 -0.23972398E-06 -0.27848727E-06 + -0.31189825E-06 -0.35210944E-06 -0.37485201E-06 -0.37836173E-06 -0.37138061E-06 + -0.36598741E-06 -0.34450451E-06 -0.30538142E-06 -0.27762052E-06 -0.25816357E-06 + -0.36958437E-07 0.36217039E-09 -0.85661335E-08 0.10852125E-07 0.17710788E-07 + -0.12604769E-07 0.13570371E-07 0.54100083E-08 0.73610419E-08 0.22321865E-07 + 0.40192201E-07 0.63768302E-07 -0.47369655E-07 -0.86154844E-07 -0.40889520E-07 + 0.22871876E-07 -0.24352255E-07 -0.39572255E-06 -0.10113577E-05 -0.14012123E-05 + -0.17721895E-05 -0.21998708E-05 -0.34858253E-05 -0.41474324E-05 -0.40259793E-05 + -0.59039425E-05 -0.41221023E-05 -0.75787567E-05 -0.95504076E-05 -0.10025934E-04 + -0.10860618E-04 -0.11493807E-04 -0.12002394E-04 -0.12369917E-04 -0.13323739E-04 + -0.14460568E-04 -0.14677447E-04 -0.14509447E-04 -0.15791942E-04 -0.31466278E-04 + -0.22290893E-04 -0.21707773E-04 -0.22505639E-04 -0.23039575E-04 -0.23068144E-04 + -0.24362247E-04 -0.21681914E-04 -0.18881156E-04 -0.16802763E-04 -0.15193740E-04 + -0.13152436E-04 -0.10504519E-04 -0.87346981E-05 0.32651799E-09 0.72896475E-10 + 0.17155362E-09 0.27285940E-09 -0.23102130E-09 -0.48234244E-09 -0.34533501E-08 + -0.84519553E-08 -0.14238243E-07 -0.16876215E-07 -0.18739809E-07 -0.21256980E-07 + -0.20595706E-07 -0.30133212E-07 -0.32593279E-07 -0.40267760E-07 -0.34149089E-07 + -0.56581329E-07 -0.76951760E-07 -0.67277904E-07 -0.83638152E-07 -0.94426311E-07 + -0.82278270E-07 -0.10016435E-06 -0.48565153E-07 -0.48683898E-07 -0.10635401E-06 + -0.17188192E-06 -0.22393569E-06 -0.25353974E-06 -0.36472072E-06 -0.47210914E-06 + -0.61205317E-06 -0.75463261E-06 -0.80959897E-06 -0.91042899E-06 -0.97420849E-06 + -0.10189464E-05 -0.90338666E-06 -0.84243467E-06 -0.10008065E-05 -0.11044662E-05 + -0.11816685E-05 -0.11586064E-05 -0.11028494E-05 -0.10979914E-05 -0.10651789E-05 + -0.12659841E-05 -0.14072531E-05 -0.12804383E-05 -0.10170325E-05 -0.78446116E-06 + -0.57688971E-06 0.31098974E-07 0.89643855E-07 0.67740586E-07 0.71586423E-07 + -0.18288682E-06 -0.80069005E-06 -0.29025593E-05 -0.58495576E-05 -0.11060405E-04 + -0.15210399E-04 -0.18662818E-04 -0.20833776E-04 -0.21842718E-04 -0.24518130E-04 + -0.30659394E-04 -0.34398897E-04 -0.42849308E-04 -0.54857773E-04 -0.63737899E-04 + -0.60290888E-04 -0.63922252E-04 -0.66908794E-04 -0.65843362E-04 -0.64798507E-04 + -0.50497504E-04 -0.40321560E-04 -0.88150308E-04 -0.12884171E-03 -0.16049722E-03 + -0.20054239E-03 -0.27195738E-03 -0.36300112E-03 -0.47199729E-03 -0.57748806E-03 + -0.67537111E-03 -0.76867529E-03 -0.84596413E-03 -0.92317916E-03 -0.90370357E-03 + -0.84458173E-03 -0.96925336E-03 -0.10374680E-02 -0.11016685E-02 -0.11249192E-02 + -0.11097364E-02 -0.11202657E-02 -0.11513282E-02 -0.12313823E-02 -0.12848641E-02 + -0.11786243E-02 -0.10024184E-02 -0.82423330E-03 -0.64379104E-03 0.65705662E-07 + 0.44530640E-07 0.33579306E-07 0.57146280E-07 -0.10656715E-06 -0.33788499E-06 + -0.13993842E-05 -0.27922544E-05 -0.55321135E-05 -0.73022094E-05 -0.86821320E-05 + -0.96702846E-05 -0.10261126E-04 -0.11462041E-04 -0.14265473E-04 -0.15332773E-04 + -0.18587825E-04 -0.25431939E-04 -0.31146892E-04 -0.28444106E-04 -0.30579728E-04 + -0.32491948E-04 -0.31967591E-04 -0.30823705E-04 -0.20904306E-04 -0.12576360E-04 + -0.37583317E-04 -0.61139953E-04 -0.77549022E-04 -0.96099871E-04 -0.12929794E-03 + -0.17168490E-03 -0.22115702E-03 -0.26721114E-03 -0.30617999E-03 -0.34004648E-03 + -0.36375813E-03 -0.38844001E-03 -0.35949311E-03 -0.32649876E-03 -0.40743193E-03 + -0.44452578E-03 -0.47896216E-03 -0.49000734E-03 -0.47603885E-03 -0.47235929E-03 + -0.48805824E-03 -0.53764247E-03 -0.57310253E-03 -0.52057773E-03 -0.43007497E-03 + -0.34297287E-03 -0.25985320E-03 -0.90737120E-08 0.29827296E-07 0.60231564E-07 + -0.48796880E-07 -0.46880229E-07 -0.14019852E-06 -0.52427470E-06 -0.10315818E-05 + -0.22036610E-05 -0.27121967E-05 -0.30183097E-05 -0.33337133E-05 -0.37374580E-05 + -0.42271022E-05 -0.51820613E-05 -0.51944242E-05 -0.58269244E-05 -0.86518071E-05 + -0.11575131E-04 -0.10455891E-04 -0.12030468E-04 -0.13426548E-04 -0.13699792E-04 + -0.13513859E-04 -0.91925968E-05 -0.55131056E-05 -0.16989980E-04 -0.28472317E-04 + -0.36932944E-04 -0.46229259E-04 -0.62245695E-04 -0.82383268E-04 -0.10572343E-03 + -0.12711696E-03 -0.14541368E-03 -0.16176547E-03 -0.17351890E-03 -0.18587130E-03 + -0.17483501E-03 -0.16459948E-03 -0.19719735E-03 -0.21364782E-03 -0.22833665E-03 + -0.23242115E-03 -0.22464368E-03 -0.21741631E-03 -0.21536087E-03 -0.22831881E-03 + -0.23792169E-03 -0.21217713E-03 -0.17173242E-03 -0.13443533E-03 -0.99511014E-04 + -0.42998817E-04 -0.85095724E-04 -0.29682085E-03 -0.60282888E-03 -0.73090051E-03 + -0.83948444E-03 -0.95160110E-03 -0.11890596E-02 -0.13124242E-02 -0.16539909E-02 + -0.21101024E-02 -0.25981300E-02 -0.32195950E-02 -0.38516409E-02 -0.46923453E-02 + -0.57063960E-02 -0.68571519E-02 -0.78672964E-02 -0.90971110E-02 -0.10202910E-01 + -0.11490119E-01 -0.12920101E-01 -0.14228049E-01 -0.16500539E-01 -0.18175805E-01 + -0.20742923E-01 -0.23290491E-01 -0.26767510E-01 -0.31045216E-01 -0.34578751E-01 + -0.38958893E-01 -0.42675112E-01 -0.47085028E-01 -0.50502037E-01 -0.54556397E-01 + -0.58546238E-01 -0.61261853E-01 -0.63741513E-01 -0.65556580E-01 -0.67045487E-01 + -0.68429716E-01 -0.68939683E-01 -0.68329786E-01 -0.66347505E-01 -0.63463535E-01 + -0.61434281E-01 -0.56031783E-01 -0.49829204E-01 -0.44457380E-01 -0.38207364E-01 + -0.32255554E-01 -0.26919693E-01 -0.21261808E-01 0.25839939E-02 0.85027891E-05 + 0.49475940E-03 -0.14579827E-02 -0.31725594E-03 0.21035281E-02 0.34346952E-02 + 0.28195855E-02 0.38952522E-02 0.43905355E-02 0.15038050E-01 0.88082831E-02 + 0.25199738E-01 0.25657024E-01 0.42998717E-01 0.40272090E-01 0.40629034E-01 + 0.15303020E-02 -0.92275529E-02 -0.35581928E-01 -0.37930961E-01 -0.53059795E-01 + 0.12328550E+00 -0.90533980E-01 -0.16034732E+00 -0.46804445E-01 0.17089995E+00 + 0.18418517E-01 -0.55982413E-01 -0.24168806E-01 0.48861076E-02 0.23596444E-01 + 0.55489985E-02 0.16196925E-01 0.17848921E-01 0.33003201E-02 0.62264329E-03 + 0.89056916E-02 0.21128791E-01 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.80940175E-10 0.41861156E-09 0.54324470E-09 0.82463701E-09 + 0.51592252E-08 0.99569279E-08 0.10727837E-07 0.15103846E-07 0.24829088E-07 + 0.20964254E-07 0.29757894E-07 0.36910989E-07 0.43850731E-07 0.62221795E-07 + 0.87538801E-07 0.96393235E-07 0.12904900E-06 0.10760468E-06 0.12118072E-06 + 0.96267494E-07 0.28983985E-06 0.66606790E-06 0.30094628E-06 -0.24596150E-07 + -0.59364207E-06 0.26556071E-06 0.16573152E-05 0.77259008E-06 0.37259199E-06 + 0.58449326E-06 0.55842625E-06 0.22098070E-05 0.95625524E-06 0.10106241E-05 + 0.30715977E-05 0.83097119E-06 0.16960744E-05 0.23239429E-05 0.26736795E-05 + 0.58340453E-05 0.27866628E-05 0.25684965E-05 0.26952069E-05 0.29458199E-05 + 0.29325532E-05 0.29176578E-05 0.29544778E-05 0.28678671E-05 0.28604967E-05 + 0.26842442E-05 0.23611697E-05 0.20463718E-05 0.17114268E-05 0.84336868E-07 + -0.24074343E-07 -0.31015555E-07 0.28826155E-07 -0.34777858E-07 -0.27760332E-06 + -0.25976266E-06 -0.40567199E-06 -0.53151482E-06 -0.66520688E-06 -0.14429586E-05 + -0.11912706E-05 -0.26986621E-05 -0.31880598E-05 -0.57303447E-05 -0.67228267E-05 + -0.88582089E-05 -0.66079002E-05 -0.76666856E-05 -0.48844120E-05 -0.65318698E-05 + -0.34548358E-05 -0.51194757E-04 0.17377190E-04 0.80363801E-04 -0.20027544E-04 + -0.12220619E-03 -0.43794941E-04 0.67798902E-05 0.98497011E-05 -0.16651628E-04 + -0.43516045E-04 -0.21625099E-04 -0.12984567E-04 0.86761732E-05 0.39393563E-04 + 0.52097888E-04 0.37896157E-04 0.80472582E-05 -0.27374210E-03 0.67956537E-04 + 0.12157839E-03 0.11869330E-03 0.11127248E-03 0.12036039E-03 0.13712010E-03 + 0.13191341E-03 0.12916711E-03 0.10471467E-03 0.87559247E-04 0.80708619E-04 + 0.77470268E-04 0.63437040E-04 0.67643970E-07 0.99541724E-08 0.32463316E-07 + 0.94548071E-07 0.23079566E-06 0.51422130E-06 0.75093127E-06 0.98550549E-06 + 0.11500250E-05 0.12756655E-05 0.13380384E-05 0.14878260E-05 0.15650881E-05 + 0.17832851E-05 0.21038051E-05 0.23868314E-05 0.29198061E-05 0.34719925E-05 + 0.41597691E-05 0.48338426E-05 0.58369259E-05 0.40639059E-05 0.61123552E-05 + 0.63981735E-05 0.76403811E-05 0.96066985E-05 0.11286818E-04 0.13112146E-04 + 0.16607193E-04 0.20173051E-04 0.26210586E-04 0.31295234E-04 0.36942577E-04 + 0.42280536E-04 0.46092786E-04 0.49249845E-04 0.53569066E-04 0.59303783E-04 + 0.64341047E-04 0.66670097E-04 0.65674487E-04 0.66897993E-04 0.68414654E-04 + 0.67369153E-04 0.64368787E-04 0.62606920E-04 0.59525603E-04 0.56197739E-04 + 0.52753346E-04 0.46898849E-04 0.40546404E-04 0.34225231E-04 0.27381422E-04 + 0.31062931E-04 0.60179533E-05 0.17535384E-04 0.48587115E-04 0.10989600E-03 + 0.23135382E-03 0.32640641E-03 0.41966765E-03 0.47496352E-03 0.53545759E-03 + 0.56817096E-03 0.61542182E-03 0.66178698E-03 0.76465170E-03 0.93458492E-03 + 0.11221100E-02 0.14013150E-02 0.16251978E-02 0.18987692E-02 0.22770718E-02 + 0.25003797E-02 0.27295158E-02 0.29180961E-02 0.32621614E-02 0.38353625E-02 + 0.48837989E-02 0.59310588E-02 0.65530781E-02 0.82129542E-02 0.96913986E-02 + 0.12327079E-01 0.14226934E-01 0.16204538E-01 0.17898379E-01 0.18920590E-01 + 0.19772347E-01 0.20991734E-01 0.22776805E-01 0.24465992E-01 0.24976875E-01 + 0.23532311E-01 0.23257327E-01 0.23139312E-01 0.22402889E-01 0.21229659E-01 + 0.20516998E-01 0.19218312E-01 0.17924333E-01 0.16819522E-01 0.14861091E-01 + 0.12833685E-01 0.10843601E-01 0.86451000E-02 0.20299589E-04 0.36624907E-05 + 0.10738774E-04 0.29659025E-04 0.66964540E-04 0.14202385E-03 0.20253200E-03 + 0.26459617E-03 0.30539149E-03 0.35020502E-03 0.37746167E-03 0.42249907E-03 + 0.45917177E-03 0.53361411E-03 0.64843520E-03 0.76459466E-03 0.94774515E-03 + 0.11184779E-02 0.13298728E-02 0.15756472E-02 0.17001472E-02 0.18424799E-02 + 0.19684468E-02 0.21965440E-02 0.25708503E-02 0.32496418E-02 0.39248238E-02 + 0.43973788E-02 0.54946285E-02 0.64626326E-02 0.82168516E-02 0.95304141E-02 + 0.10930890E-01 0.12176848E-01 0.12961201E-01 0.13601982E-01 0.14514040E-01 + 0.15865221E-01 0.17155858E-01 0.17692597E-01 0.17030872E-01 0.17007096E-01 + 0.17082726E-01 0.16649458E-01 0.15827771E-01 0.15305113E-01 0.14404626E-01 + 0.13475138E-01 0.12625840E-01 0.11168855E-01 0.96489858E-02 0.81451254E-02 + 0.65006327E-02 0.90773566E-05 0.16704954E-05 0.52967120E-05 0.14198433E-04 + 0.32670663E-04 0.69745697E-04 0.10091625E-03 0.13360648E-03 0.15674306E-03 + 0.18133587E-03 0.19683353E-03 0.22534544E-03 0.24545239E-03 0.28482909E-03 + 0.34275234E-03 0.39601357E-03 0.48667021E-03 0.58226188E-03 0.70135377E-03 + 0.81694049E-03 0.86200590E-03 0.92664817E-03 0.98762013E-03 0.10987028E-02 + 0.12793144E-02 0.16025524E-02 0.19212140E-02 0.21645846E-02 0.26991368E-02 + 0.31738091E-02 0.40416757E-02 0.47038479E-02 0.54182095E-02 0.60664791E-02 + 0.64830787E-02 0.68174833E-02 0.72900622E-02 0.79967871E-02 0.86732856E-02 + 0.90552442E-02 0.89011975E-02 0.90005275E-02 0.91572763E-02 0.90093298E-02 + 0.86128567E-02 0.83592341E-02 0.79283880E-02 0.74601507E-02 0.69977634E-02 + 0.62089456E-02 0.53748508E-02 0.45388999E-02 0.36300196E-02 0.34617056E-02 + 0.12733766E-03 -0.21734280E-03 -0.80493883E-03 -0.26593390E-04 0.20016589E-02 + 0.23157614E-02 0.24247847E-02 0.18904125E-02 0.17480278E-02 0.95916069E-03 + 0.48138400E-03 0.16944633E-03 0.20727408E-03 0.97313141E-03 0.19596790E-02 + 0.33910424E-02 0.40952749E-02 0.39168808E-02 0.68144390E-02 0.32491992E-02 + 0.93681730E-03 0.11921711E-01 0.31981385E-02 -0.56319130E-02 -0.40444979E-02 + 0.14450308E-01 0.64927701E-02 0.10432729E-01 -0.91198446E-02 -0.58010391E-02 + -0.18979915E-01 -0.31511466E-01 -0.39556649E-01 -0.46352333E-01 -0.53421199E-01 + -0.51695186E-01 -0.43982137E-01 -0.38894992E-01 -0.46854585E-01 -0.24476729E-01 + -0.26059540E-01 -0.22106862E-01 -0.15834113E-01 -0.73499348E-02 0.43801089E-02 + 0.94700866E-02 0.14576694E-01 0.19963396E-01 0.20895186E-01 0.20650767E-01 + 0.19303946E-01 0.16577435E-01 -0.43643249E-03 -0.33487691E-03 -0.19305724E-04 + 0.18653968E-02 -0.32128363E-03 -0.19685775E-02 -0.23523507E-02 -0.43938804E-02 + -0.33178752E-02 -0.18746639E-02 -0.15733360E-01 0.73281571E-03 -0.14219356E-01 + -0.20292958E-01 -0.37604768E-01 -0.41055107E-01 -0.52677679E-01 -0.21402457E-01 + -0.54474229E-02 0.20190910E-01 0.17357834E-01 0.19927658E-01 -0.12038496E+00 + 0.51597984E-01 0.16627436E+00 0.51139359E-01 -0.16327508E+00 -0.29110351E-01 + 0.42657584E-01 0.36647835E-01 -0.41239984E-01 -0.42367574E-01 -0.30148019E-01 + -0.21768909E-01 -0.82283664E-03 0.11466873E-01 0.72651827E-02 -0.62022927E-02 + -0.82328103E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.34168987E-11 -0.26838309E-09 -0.34248054E-09 -0.30254616E-09 -0.20815739E-08 + -0.71646149E-08 -0.88164499E-08 -0.11077262E-07 -0.87807734E-08 -0.93153076E-08 + -0.16157769E-07 -0.14180563E-07 -0.19552255E-07 -0.35521927E-07 -0.57509688E-07 + -0.61149519E-07 -0.89823653E-07 -0.70480838E-07 -0.60381856E-07 -0.19075137E-07 + -0.21000306E-06 -0.54127695E-06 -0.20662226E-06 0.32372941E-07 0.88220052E-06 + -0.23622696E-06 -0.10892252E-05 -0.40416456E-06 0.31763763E-07 -0.12254783E-06 + -0.67915382E-06 -0.10441626E-05 -0.11797467E-05 -0.79889644E-06 -0.12083128E-05 + -0.83166756E-06 -0.55502227E-06 -0.10626848E-05 -0.14843752E-05 -0.50933275E-05 + -0.99542543E-06 -0.80164859E-06 -0.77075156E-06 -0.91556694E-06 -0.61620268E-06 + -0.82391272E-06 -0.79019639E-06 -0.75209955E-06 -0.10350330E-05 -0.10896580E-05 + -0.10102085E-05 -0.94124606E-06 -0.74792686E-06 0.20316557E-08 0.13820167E-07 + -0.51529068E-07 0.48363092E-07 0.27849596E-07 0.14225655E-06 0.18517013E-06 + 0.26243276E-06 0.24273566E-06 0.24488614E-06 0.10447723E-05 -0.11609856E-06 + 0.12643829E-05 0.19176610E-05 0.41139658E-05 0.48939816E-05 0.71389718E-05 + 0.51156664E-05 0.46254796E-05 0.39416837E-06 0.33125467E-06 -0.15370802E-05 + 0.34106783E-04 -0.16143393E-04 -0.89395443E-04 0.10505864E-04 0.94415904E-04 + 0.24158150E-04 -0.16388158E-04 -0.20812255E-04 0.49300707E-04 0.64450507E-04 + 0.59175489E-04 0.41510001E-04 0.70332538E-05 -0.91901128E-05 -0.42001271E-05 + 0.31315966E-04 0.40081514E-04 0.48466515E-03 0.19234874E-04 -0.16516090E-04 + -0.17488808E-04 -0.29683452E-04 -0.59855942E-04 -0.46646290E-04 -0.64880410E-04 + -0.81267996E-04 -0.44516907E-04 -0.24618989E-04 -0.22247991E-04 -0.18539721E-04 + -0.13806540E-04 -0.12578918E-07 -0.63902809E-08 -0.22132779E-07 -0.59747828E-07 + -0.12680417E-06 -0.28777336E-06 -0.42308012E-06 -0.58557036E-06 -0.66672333E-06 + -0.77220738E-06 -0.87061793E-06 -0.10120944E-05 -0.10911366E-05 -0.13039566E-05 + -0.15604844E-05 -0.18056984E-05 -0.22408349E-05 -0.25567911E-05 -0.29297915E-05 + -0.31409729E-05 -0.39724158E-05 -0.20041797E-05 -0.34626512E-05 -0.34604575E-05 + -0.42377152E-05 -0.55537377E-05 -0.68138784E-05 -0.76615940E-05 -0.10056670E-04 + -0.12488340E-04 -0.15181465E-04 -0.17118607E-04 -0.18658262E-04 -0.20104860E-04 + -0.22439934E-04 -0.26127796E-04 -0.29712009E-04 -0.36105635E-04 -0.39182809E-04 + -0.47127430E-04 -0.41962286E-04 -0.44058332E-04 -0.45845136E-04 -0.46451952E-04 + -0.45514229E-04 -0.47597332E-04 -0.47924273E-04 -0.46052461E-04 -0.44075871E-04 + -0.38167277E-04 -0.32921904E-04 -0.27979473E-04 -0.22577174E-04 -0.58732875E-05 + -0.40408364E-05 -0.11899359E-04 -0.31107575E-04 -0.60058703E-04 -0.13096929E-03 + -0.18936297E-03 -0.26176470E-03 -0.29810485E-03 -0.36556060E-03 -0.42347916E-03 + -0.46494722E-03 -0.51875486E-03 -0.63095317E-03 -0.77556309E-03 -0.97096357E-03 + -0.11774184E-02 -0.12633868E-02 -0.13694954E-02 -0.15780446E-02 -0.16756249E-02 + -0.17341784E-02 -0.17876040E-02 -0.18839434E-02 -0.23392247E-02 -0.30536182E-02 + -0.38578970E-02 -0.40881019E-02 -0.52344837E-02 -0.63518136E-02 -0.75690283E-02 + -0.83756486E-02 -0.90406522E-02 -0.97102313E-02 -0.10816390E-01 -0.12634185E-01 + -0.14323180E-01 -0.17343275E-01 -0.19243564E-01 -0.23665116E-01 -0.20589280E-01 + -0.21252428E-01 -0.21754087E-01 -0.21670640E-01 -0.21039073E-01 -0.21304082E-01 + -0.20257235E-01 -0.18518867E-01 -0.17306210E-01 -0.14673668E-01 -0.12461697E-01 + -0.10560833E-01 -0.84564411E-02 -0.38381820E-05 -0.24254083E-05 -0.73189327E-05 + -0.19035248E-04 -0.36531655E-04 -0.80055059E-04 -0.11659306E-03 -0.16190738E-03 + -0.18641857E-03 -0.22851300E-03 -0.26664087E-03 -0.30351233E-03 -0.33736177E-03 + -0.41156814E-03 -0.50193816E-03 -0.61622723E-03 -0.74854178E-03 -0.83530484E-03 + -0.93838281E-03 -0.10585753E-02 -0.10906205E-02 -0.11140816E-02 -0.11449443E-02 + -0.12004000E-02 -0.14853122E-02 -0.19309365E-02 -0.24411883E-02 -0.26519503E-02 + -0.33938435E-02 -0.40922594E-02 -0.48505459E-02 -0.53490995E-02 -0.57467638E-02 + -0.61437380E-02 -0.67933025E-02 -0.78848193E-02 -0.89205288E-02 -0.10860734E-01 + -0.12031836E-01 -0.14892525E-01 -0.13041815E-01 -0.13477682E-01 -0.13853521E-01 + -0.13843546E-01 -0.13456012E-01 -0.13753712E-01 -0.13298649E-01 -0.12336801E-01 + -0.11605757E-01 -0.98722095E-02 -0.83948521E-02 -0.71192214E-02 -0.57134240E-02 + -0.17168621E-05 -0.11155410E-05 -0.35155263E-05 -0.92123935E-05 -0.17819532E-04 + -0.39124262E-04 -0.57568780E-04 -0.80201911E-04 -0.92967627E-04 -0.11283983E-03 + -0.13188756E-03 -0.15499635E-03 -0.17072675E-03 -0.20757843E-03 -0.25011418E-03 + -0.29984500E-03 -0.36465512E-03 -0.42310808E-03 -0.49016124E-03 -0.53727057E-03 + -0.53416129E-03 -0.54008954E-03 -0.55488098E-03 -0.58047479E-03 -0.71580439E-03 + -0.92449429E-03 -0.11642689E-02 -0.12825764E-02 -0.16441841E-02 -0.19819182E-02 + -0.23486325E-02 -0.25888635E-02 -0.27759380E-02 -0.29544070E-02 -0.32426505E-02 + -0.37267253E-02 -0.41731714E-02 -0.50443279E-02 -0.54995835E-02 -0.68516743E-02 + -0.60536222E-02 -0.62442196E-02 -0.64275453E-02 -0.64198337E-02 -0.62225127E-02 + -0.64309518E-02 -0.63608710E-02 -0.60197443E-02 -0.57174594E-02 -0.48884051E-02 + -0.41628562E-02 -0.35291319E-02 -0.28363089E-02 -0.73839868E-03 -0.17311364E-03 + -0.32342849E-03 -0.14048063E-03 -0.19886825E-03 -0.13205410E-02 -0.18840181E-02 + -0.24497371E-02 -0.25044299E-02 -0.33077645E-02 -0.33638052E-02 -0.33593746E-02 + -0.33396076E-02 -0.41025177E-02 -0.54531102E-02 -0.78951873E-02 -0.91212442E-02 + -0.10244243E-01 -0.87958144E-02 -0.11090780E-01 -0.75017365E-02 -0.63020119E-02 + -0.17576893E-01 -0.10214140E-01 -0.74144212E-02 -0.65659573E-02 -0.33423420E-01 + -0.32137113E-01 -0.38350665E-01 -0.34784501E-01 -0.32034344E-01 -0.27647677E-01 + -0.15370660E-01 -0.98407198E-02 -0.42946872E-02 -0.67285244E-02 -0.77714897E-02 + -0.23660259E-01 -0.21994754E-01 -0.51501472E-01 -0.49173266E-01 -0.39019489E-01 + -0.35010665E-01 -0.25248983E-01 -0.13226482E-01 -0.11631324E-01 -0.11277403E-01 + -0.83551511E-02 -0.11773508E-01 -0.82417240E-02 -0.55772009E-02 -0.35391152E-02 + -0.18771598E-02 0.24596390E-03 -0.17890380E-03 -0.24705816E-03 -0.32475207E-03 + -0.35275233E-03 -0.58117564E-03 -0.11618616E-02 -0.19464210E-02 -0.26772133E-02 + -0.38522424E-02 -0.59601046E-02 -0.92325287E-02 -0.13466594E-01 -0.18348745E-01 + -0.22686743E-01 -0.26744962E-01 -0.28980561E-01 -0.28845847E-01 -0.25914960E-01 + -0.22534898E-01 -0.20493810E-01 -0.17830453E-01 -0.23471136E-01 -0.85882631E-02 + 0.77265820E-02 0.75555892E-02 -0.10730248E-01 -0.17154857E-01 -0.99096777E-02 + -0.65554673E-02 -0.47980354E-02 -0.37703308E-02 -0.34580928E-02 -0.36581859E-02 + -0.39801296E-03 -0.17163134E-03 -0.39385715E-03 -0.63531340E-03 -0.39633693E-02 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.10234284E-09 + -0.13333584E-11 0.11871574E-10 0.97741647E-10 -0.83266748E-10 -0.88300778E-09 + 0.13197482E-08 0.14154185E-08 -0.93792500E-09 -0.28103249E-09 0.85519632E-09 + 0.30434675E-09 -0.36906847E-09 -0.86814456E-09 -0.17228505E-09 0.98559633E-09 + 0.20586359E-10 0.72762748E-10 0.96151548E-09 -0.17092819E-08 -0.27949859E-08 + -0.21608553E-08 0.51183677E-08 -0.13920302E-07 0.32291745E-08 -0.37125042E-09 + 0.40612318E-07 0.11309804E-07 0.11045490E-07 0.10725376E-07 0.30566473E-07 + 0.31670761E-07 0.24904973E-07 0.39240745E-07 0.45950801E-07 0.57415252E-07 + 0.75382616E-07 0.85857068E-07 0.11058406E-06 0.12434490E-06 0.17609571E-06 + 0.19894421E-06 0.24322168E-06 0.26632103E-06 0.29509761E-06 0.32403489E-06 + 0.34107664E-06 0.34281374E-06 0.34064014E-06 0.32876197E-06 0.29862544E-06 + 0.27712886E-06 0.23942459E-06 0.83286509E-07 -0.10425450E-08 0.18842644E-07 + -0.14537101E-07 -0.14606683E-07 0.18470964E-07 -0.18291413E-07 0.20547805E-08 + 0.11994842E-08 -0.16106370E-07 -0.18467478E-07 -0.42390011E-07 0.16071007E-07 + 0.41222996E-07 0.64773682E-07 0.91057784E-07 0.21194869E-06 0.52734228E-06 + 0.10634250E-05 0.15779493E-05 0.20649924E-05 0.25191707E-05 0.37556990E-05 + 0.48020550E-05 0.52713407E-05 0.60289601E-05 0.57590477E-05 0.86536897E-05 + 0.10222378E-04 0.10724331E-04 0.10931597E-04 0.10913211E-04 0.11080069E-04 + 0.10784283E-04 0.10433669E-04 0.10372422E-04 0.96809589E-05 0.92927748E-05 + 0.96264737E-05 0.17313446E-04 0.12663433E-04 0.11627859E-04 0.11785388E-04 + 0.11858746E-04 0.12509716E-04 0.13305750E-04 0.11401891E-04 0.95344550E-05 + 0.82940102E-05 0.74500730E-05 0.64572569E-05 0.58053787E-05 0.48525453E-05 + -0.63765487E-09 -0.28509874E-10 -0.95181639E-10 -0.20373836E-09 0.31007441E-09 + 0.13863684E-08 0.49640992E-08 0.13533058E-07 0.19658456E-07 0.28195069E-07 + 0.34219969E-07 0.39743220E-07 0.43459375E-07 0.51958691E-07 0.58334169E-07 + 0.63699130E-07 0.65476834E-07 0.82637155E-07 0.10091056E-06 0.10005587E-06 + 0.10845970E-06 0.12560129E-06 0.10390002E-06 0.13056794E-06 0.99711978E-07 + 0.10988529E-06 0.15134727E-06 0.20500517E-06 0.25291703E-06 0.29186004E-06 + 0.39136008E-06 0.51826708E-06 0.70774526E-06 0.92466959E-06 0.11016173E-05 + 0.13426244E-05 0.15420538E-05 0.17637802E-05 0.19259133E-05 0.21292986E-05 + 0.24209548E-05 0.26323488E-05 0.28177067E-05 0.29195009E-05 0.29403225E-05 + 0.30307043E-05 0.30014722E-05 0.29984157E-05 0.29426664E-05 0.27268707E-05 + 0.23867394E-05 0.20157880E-05 0.16145582E-05 -0.63715980E-07 -0.62270452E-07 + -0.27770248E-07 -0.44192370E-07 0.17943908E-06 0.11058082E-05 0.38539863E-05 + 0.89923723E-05 0.14812631E-04 0.21747274E-04 0.27077219E-04 0.31519054E-04 + 0.34482512E-04 0.38080017E-04 0.43943450E-04 0.48139589E-04 0.55629313E-04 + 0.65830421E-04 0.75003046E-04 0.76226314E-04 0.79578666E-04 0.83652226E-04 + 0.84162399E-04 0.86211299E-04 0.82604289E-04 0.80267513E-04 0.11918720E-03 + 0.15507359E-03 0.18580477E-03 0.22634243E-03 0.29846913E-03 0.40291017E-03 + 0.54052359E-03 0.70150271E-03 0.86431719E-03 0.10342432E-02 0.12048057E-02 + 0.13813074E-02 0.15230775E-02 0.16509075E-02 0.18424081E-02 0.19746939E-02 + 0.20861098E-02 0.21397270E-02 0.21321258E-02 0.21500004E-02 0.21169438E-02 + 0.20629072E-02 0.19846102E-02 0.18152873E-02 0.15921805E-02 0.13439306E-02 + 0.10783028E-02 -0.12937177E-06 -0.26297486E-07 -0.92365321E-08 -0.45219411E-07 + 0.98784826E-07 0.49858895E-06 0.19127237E-05 0.44323396E-05 0.73644671E-05 + 0.10830801E-04 0.13466314E-04 0.15841401E-04 0.17559180E-04 0.19465664E-04 + 0.22436543E-04 0.24274452E-04 0.27542588E-04 0.33197018E-04 0.38697500E-04 + 0.38761627E-04 0.40411239E-04 0.42542514E-04 0.42559387E-04 0.43018210E-04 + 0.39698786E-04 0.36164879E-04 0.56246047E-04 0.76196701E-04 0.91694513E-04 + 0.11037017E-03 0.14360861E-03 0.19387476E-03 0.25972727E-03 0.33794583E-03 + 0.41472629E-03 0.49417599E-03 0.57396912E-03 0.65803674E-03 0.72420805E-03 + 0.79554632E-03 0.90854829E-03 0.98343361E-03 0.10494957E-02 0.10855610E-02 + 0.10871919E-02 0.11043811E-02 0.10950502E-02 0.10749869E-02 0.10407124E-02 + 0.95535179E-03 0.83832309E-03 0.70631414E-03 0.56599241E-03 0.18267807E-07 + -0.20227469E-07 -0.39236220E-07 0.48821807E-07 0.41771900E-07 0.21246103E-06 + 0.70102063E-06 0.17010409E-05 0.28891556E-05 0.42059358E-05 0.51637620E-05 + 0.61097363E-05 0.69475956E-05 0.77729753E-05 0.89279991E-05 0.95195748E-05 + 0.10499936E-04 0.12840197E-04 0.15520188E-04 0.15600337E-04 0.16714119E-04 + 0.18023376E-04 0.18404503E-04 0.18880436E-04 0.17637987E-04 0.16211110E-04 + 0.25583643E-04 0.35378394E-04 0.43298657E-04 0.52557145E-04 0.68387064E-04 + 0.92012778E-04 0.12253393E-03 0.15809484E-03 0.19220535E-03 0.22675628E-03 + 0.26035802E-03 0.29452834E-03 0.31946680E-03 0.34704797E-03 0.38877066E-03 + 0.41469347E-03 0.43736845E-03 0.44838670E-03 0.44548300E-03 0.45019022E-03 + 0.44313092E-03 0.43271854E-03 0.41824982E-03 0.38340741E-03 0.33576032E-03 + 0.28220728E-03 0.22553301E-03 0.74824501E-04 0.86920866E-04 0.30077279E-03 + 0.53316598E-03 0.38749375E-03 0.19266129E-03 0.34716132E-03 0.59552611E-03 + 0.77249924E-03 0.10847973E-02 0.14773850E-02 0.18385417E-02 0.21864721E-02 + 0.25504325E-02 0.30296405E-02 0.35491697E-02 0.41224887E-02 0.46028567E-02 + 0.51932814E-02 0.57344942E-02 0.63833050E-02 0.71813762E-02 0.79265378E-02 + 0.95677705E-02 0.10855369E-01 0.12802741E-01 0.14593591E-01 0.16883845E-01 + 0.19412086E-01 0.21569879E-01 0.24103021E-01 0.26346251E-01 0.28322181E-01 + 0.29668221E-01 0.30666546E-01 0.31740061E-01 0.32399392E-01 0.32899808E-01 + 0.33116706E-01 0.33062760E-01 0.32703150E-01 0.31289727E-01 0.29255017E-01 + 0.26264091E-01 0.22699891E-01 0.19938653E-01 0.15952877E-01 0.12028071E-01 + 0.90599693E-02 0.63920840E-02 0.43841387E-02 0.29544547E-02 0.18994329E-02 + 0.74959337E-03 0.29921558E-03 -0.50352925E-03 -0.43402694E-03 0.71300017E-03 + -0.51572385E-04 -0.81272807E-03 0.21599046E-02 0.59434929E-03 -0.99620888E-03 + 0.22844219E-02 -0.65306003E-02 -0.10607834E-01 -0.33177509E-02 -0.11237273E-02 + 0.70188031E-02 0.17858826E-01 0.21126836E-01 0.14112660E-01 0.15494489E-01 + 0.21882635E-01 0.35519808E-01 -0.43314312E-02 0.40486517E-01 -0.59743686E-02 + -0.79895408E-02 -0.83221332E-02 0.13382903E-01 0.13544517E-01 -0.12848302E-01 + 0.38304064E-01 0.19890284E-01 0.25419963E-01 0.81199636E-02 -0.14508891E-01 + -0.13168833E-01 -0.66011766E-02 -0.27030004E-02 -0.17739374E-01 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.77724251E-11 -0.87620360E-10 + -0.12278269E-09 -0.35418742E-09 -0.27088894E-08 -0.23893053E-08 -0.23432802E-08 + -0.27920884E-08 -0.10683006E-07 -0.10023736E-07 -0.96978986E-08 -0.16257451E-07 + -0.21479399E-07 -0.18959712E-07 -0.18255228E-07 -0.17548228E-07 -0.16517655E-07 + -0.10795029E-07 -0.28556492E-07 -0.42295149E-07 -0.28630178E-07 -0.66836497E-07 + -0.10839144E-07 0.54151141E-07 -0.32371548E-06 0.29573878E-07 -0.41215759E-06 + -0.20908383E-06 -0.28045572E-06 -0.37857661E-06 0.23489111E-06 -0.10242175E-05 + 0.23641380E-06 -0.11398000E-06 -0.18481557E-05 0.87608845E-07 -0.11065129E-05 + -0.12841773E-05 -0.11752655E-05 -0.75220729E-06 -0.16125614E-05 -0.16349498E-05 + -0.17809389E-05 -0.19191799E-05 -0.21673011E-05 -0.19537959E-05 -0.20892193E-05 + -0.20769530E-05 -0.18018825E-05 -0.15896800E-05 -0.14037240E-05 -0.11671521E-05 + -0.99283232E-06 0.52051929E-07 0.11324059E-07 0.61957419E-07 -0.74118682E-07 + -0.29339202E-07 0.93255578E-07 0.97010446E-08 0.20645142E-07 0.93012214E-07 + 0.20378573E-06 0.94351929E-07 0.84443154E-06 0.11399672E-05 0.65923564E-06 + 0.60627970E-06 0.24761156E-06 -0.56033216E-06 -0.11051025E-05 -0.93159560E-08 + 0.11072802E-06 -0.74729533E-07 -0.31649688E-05 0.82110519E-05 -0.80832088E-05 + 0.70910145E-05 0.45762099E-05 0.11229682E-04 0.64293771E-06 -0.54339148E-05 + 0.21919448E-06 -0.45186842E-04 -0.31896359E-04 -0.43345714E-04 -0.33628505E-04 + -0.19662145E-04 -0.30008841E-04 -0.42126475E-04 -0.57264716E-04 -0.35830808E-04 + -0.18359245E-03 -0.82133745E-04 -0.94108186E-04 -0.88646069E-04 -0.64858167E-04 + -0.48870066E-04 -0.76136752E-04 -0.54774279E-04 -0.41086557E-04 -0.49662792E-04 + -0.52776910E-04 -0.44441321E-04 -0.46361980E-04 -0.39166084E-04 0.15270157E-07 + -0.37879453E-08 -0.10972428E-07 -0.35722466E-07 -0.10582794E-06 -0.23322470E-06 + -0.32667880E-06 -0.40117535E-06 -0.47768348E-06 -0.52450344E-06 -0.50376957E-06 + -0.52748833E-06 -0.53419455E-06 -0.54176561E-06 -0.61234735E-06 -0.65998716E-06 + -0.78376505E-06 -0.10033219E-05 -0.13078407E-05 -0.17802503E-05 -0.19368315E-05 + -0.21504839E-05 -0.27414098E-05 -0.30884761E-05 -0.35987649E-05 -0.42601950E-05 + -0.46543755E-05 -0.55925592E-05 -0.67146873E-05 -0.78301421E-05 -0.11145067E-04 + -0.14314450E-04 -0.18486318E-04 -0.22364107E-04 -0.24236111E-04 -0.24275304E-04 + -0.25457358E-04 -0.25516069E-04 -0.27974399E-04 -0.23251034E-04 -0.27630672E-04 + -0.27434923E-04 -0.27898586E-04 -0.26699294E-04 -0.24609540E-04 -0.21195281E-04 + -0.17762078E-04 -0.15990016E-04 -0.14253688E-04 -0.13707482E-04 -0.12161460E-04 + -0.10286782E-04 -0.81790129E-05 0.69168769E-05 -0.21280140E-05 -0.59868115E-05 + -0.17990410E-04 -0.50812451E-04 -0.10391005E-03 -0.13830358E-03 -0.16347516E-03 + -0.18207155E-03 -0.18986208E-03 -0.17326499E-03 -0.18802659E-03 -0.18761524E-03 + -0.18471433E-03 -0.21164300E-03 -0.21250008E-03 -0.28813342E-03 -0.41565677E-03 + -0.57897716E-03 -0.75398433E-03 -0.88444585E-03 -0.10617567E-02 -0.12094928E-02 + -0.14780712E-02 -0.16239623E-02 -0.19824554E-02 -0.22040430E-02 -0.25780654E-02 + -0.31215114E-02 -0.34727025E-02 -0.49123106E-02 -0.60555475E-02 -0.74639088E-02 + -0.85885374E-02 -0.87741759E-02 -0.81631824E-02 -0.80232271E-02 -0.72337624E-02 + -0.73959416E-02 -0.40358326E-02 -0.58151518E-02 -0.52217526E-02 -0.49211672E-02 + -0.44046975E-02 -0.38225517E-02 -0.29877712E-02 -0.25232021E-02 -0.26726318E-02 + -0.25719736E-02 -0.29339908E-02 -0.28621383E-02 -0.24803243E-02 -0.20112949E-02 + 0.45187612E-05 -0.13318694E-05 -0.36427084E-05 -0.10947862E-04 -0.31010192E-04 + -0.64074387E-04 -0.86430856E-04 -0.10510804E-03 -0.12022584E-03 -0.13139229E-03 + -0.12542762E-03 -0.13906135E-03 -0.14508796E-03 -0.14843817E-03 -0.17340603E-03 + -0.18084089E-03 -0.23433712E-03 -0.31250691E-03 -0.41777424E-03 -0.54514277E-03 + -0.63956205E-03 -0.76201890E-03 -0.86480961E-03 -0.10502470E-02 -0.11557844E-02 + -0.14012238E-02 -0.15536642E-02 -0.18032800E-02 -0.21746282E-02 -0.24324894E-02 + -0.34328399E-02 -0.42652383E-02 -0.53065126E-02 -0.61903026E-02 -0.64673781E-02 + -0.62140483E-02 -0.62694446E-02 -0.59318959E-02 -0.62464303E-02 -0.42336206E-02 + -0.54850663E-02 -0.52318381E-02 -0.51433855E-02 -0.48184981E-02 -0.43702768E-02 + -0.36690217E-02 -0.31320290E-02 -0.30243390E-02 -0.28085671E-02 -0.29066267E-02 + -0.27220313E-02 -0.23305372E-02 -0.18760709E-02 0.20262652E-05 -0.60212494E-06 + -0.18953683E-05 -0.51342421E-05 -0.15136489E-04 -0.31630358E-04 -0.43408792E-04 + -0.54076226E-04 -0.63466719E-04 -0.71953564E-04 -0.70628895E-04 -0.78660468E-04 + -0.83972921E-04 -0.87554081E-04 -0.10294644E-03 -0.10931250E-03 -0.13719618E-03 + -0.17236331E-03 -0.22297418E-03 -0.29162166E-03 -0.34026174E-03 -0.40056929E-03 + -0.45048671E-03 -0.54217049E-03 -0.59510299E-03 -0.71514102E-03 -0.78885140E-03 + -0.90864594E-03 -0.10890857E-02 -0.12200414E-02 -0.17220283E-02 -0.21502945E-02 + -0.26921495E-02 -0.31727250E-02 -0.33615832E-02 -0.32966509E-02 -0.33947779E-02 + -0.33324358E-02 -0.36213481E-02 -0.27787708E-02 -0.34386540E-02 -0.34287331E-02 + -0.34951638E-02 -0.33928304E-02 -0.31759739E-02 -0.27687324E-02 -0.23804969E-02 + -0.22093200E-02 -0.20162409E-02 -0.19782880E-02 -0.18108548E-02 -0.15433949E-02 + -0.12408414E-02 0.74867678E-03 -0.25954727E-04 0.35458434E-03 0.56842986E-03 + -0.23604411E-03 -0.11153929E-02 -0.86456340E-03 -0.61597696E-03 -0.14798702E-04 + 0.62302070E-03 0.12768979E-02 0.14030499E-02 0.14472875E-02 0.17221231E-02 + 0.18935626E-02 0.28771088E-02 0.21885859E-02 0.21857376E-02 0.48954028E-03 + -0.60304221E-03 -0.11046696E-02 -0.79258220E-03 -0.15064480E-02 -0.12062256E-02 + 0.31625722E-02 -0.13358304E-02 0.53600358E-02 0.10699879E-01 0.10566687E-01 + 0.25136988E-01 0.15884250E-01 0.21954830E-01 0.18809047E-01 0.19450152E-01 + 0.17864928E-01 0.24660313E-01 0.21944737E-01 0.27557578E-01 0.20042704E-01 + 0.57595194E-01 0.33256483E-01 0.27459684E-01 0.21926601E-01 0.10662919E-01 + -0.39783611E-02 -0.13591139E-01 -0.14065783E-01 -0.19453021E-01 -0.19795386E-01 + -0.21797342E-01 -0.22116094E-01 -0.20916662E-01 -0.18312865E-01 0.74958798E-03 + -0.13451593E-02 0.91898316E-03 0.46880622E-02 -0.21459564E-02 -0.44034960E-02 + -0.39376523E-02 -0.14204825E-01 -0.93596960E-02 -0.37981657E-02 -0.38882043E-01 + 0.85411809E-02 -0.13400289E-01 -0.40919265E-01 -0.78340864E-01 -0.98367718E-01 + -0.14130280E+00 -0.84122963E-01 -0.35364157E-01 0.11856855E-01 -0.74764374E-02 + -0.27986328E-01 -0.23372127E+00 0.19276196E-01 0.33838693E+00 0.10713514E+00 + -0.32213694E+00 -0.93741711E-01 0.52176421E-01 0.95455207E-01 -0.16456935E+00 + -0.12991439E+00 -0.11304355E+00 -0.57109301E-01 0.30218428E-01 0.50958767E-01 + 0.29235841E-01 -0.57455953E-02 0.23828557E-01 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.77722525E-11 -0.51344800E-09 -0.67328891E-09 + -0.27308483E-09 0.12630561E-08 -0.84527806E-08 -0.13200969E-07 -0.16740429E-07 + 0.43468668E-08 0.30066315E-08 -0.17839948E-07 -0.48024456E-08 -0.90810897E-08 + -0.52886889E-07 -0.10448942E-06 -0.12172377E-06 -0.18425139E-06 -0.17007469E-06 + -0.11725570E-06 -0.96831561E-08 -0.42701122E-06 -0.10559013E-05 -0.70851898E-06 + -0.17901692E-06 0.23507155E-05 -0.77071727E-06 -0.18070496E-05 -0.85417838E-06 + 0.19610995E-06 0.72645996E-07 -0.23272920E-05 -0.56721395E-06 -0.34080125E-05 + -0.19546180E-05 0.68468156E-06 -0.25316768E-05 0.31403085E-06 -0.35129862E-06 + -0.15292108E-05 -0.96456963E-05 -0.13072051E-07 0.39303188E-06 0.65735247E-06 + 0.59968356E-06 0.15917641E-05 0.73697504E-06 0.11282676E-05 0.12306586E-05 + 0.16805667E-06 -0.26775741E-06 -0.35850947E-06 -0.57424934E-06 -0.39162683E-06 + 0.52051629E-07 0.10176436E-07 -0.23238811E-06 0.28252332E-06 0.12933349E-06 + 0.99305078E-07 0.38696185E-06 0.52054097E-06 0.37697908E-06 0.19709182E-06 + 0.21738197E-05 -0.12213177E-05 0.11616199E-05 0.38553556E-05 0.85602883E-05 + 0.10950007E-04 0.17073203E-04 0.13831098E-04 0.96482458E-05 0.99222383E-06 + 0.94931632E-06 0.21091942E-05 0.52463544E-04 -0.23289885E-04 -0.21056184E-03 + -0.32649961E-05 0.16444165E-03 0.42850905E-04 -0.37028198E-04 -0.65123666E-04 + 0.16381750E-03 0.16474814E-03 0.16953262E-03 0.10767578E-03 0.47428568E-05 + -0.97451345E-05 0.20507109E-04 0.11840363E-03 0.92867986E-04 0.12597028E-02 + 0.14993709E-03 0.98882050E-04 0.84483954E-04 0.12113906E-04 -0.72914645E-04 + 0.75464741E-05 -0.72950337E-04 -0.12771274E-03 -0.36796825E-04 0.99685464E-05 + 0.59233253E-06 0.18653930E-04 0.19830209E-04 0.15270008E-07 -0.24840102E-08 + -0.13761135E-07 -0.22867111E-07 0.25907776E-07 0.51454752E-07 0.61325537E-07 + -0.63782587E-08 0.50831170E-07 0.15145986E-08 -0.21644953E-06 -0.43109712E-06 + -0.55828491E-06 -0.93890992E-06 -0.12406526E-05 -0.15580535E-05 -0.20574403E-05 + -0.21575842E-05 -0.21727636E-05 -0.14769969E-05 -0.27563466E-05 0.15392251E-05 + 0.17804814E-06 0.98088798E-06 0.81586955E-06 -0.10584388E-06 -0.13167943E-05 + -0.57973852E-06 -0.23858589E-05 -0.41624195E-05 -0.16660227E-05 0.22586976E-05 + 0.94717840E-05 0.16338048E-04 0.17743229E-04 0.12994377E-04 0.10741606E-04 + 0.88170632E-06 0.23401416E-05 -0.20302375E-04 0.35842667E-06 -0.26068646E-05 + -0.38940129E-05 -0.69739523E-05 -0.98022672E-05 -0.20867425E-04 -0.29684599E-04 + -0.31414836E-04 -0.32724298E-04 -0.24647983E-04 -0.20089181E-04 -0.17018779E-04 + -0.13965707E-04 0.69168090E-05 -0.21877707E-05 -0.69393489E-05 -0.12299262E-04 + 0.17849440E-04 0.28590480E-04 0.25205232E-04 -0.16728390E-04 -0.22243467E-04 + -0.10801991E-03 -0.24509743E-03 -0.28882352E-03 -0.38322619E-03 -0.59208766E-03 + -0.78972659E-03 -0.11326159E-02 -0.13342349E-02 -0.11998123E-02 -0.10187936E-02 + -0.10001853E-02 -0.87141411E-03 -0.54693733E-03 -0.26484102E-03 0.22388671E-03 + -0.21541505E-03 -0.65360787E-03 -0.15329879E-02 -0.93047674E-03 -0.17027206E-02 + -0.27688336E-02 -0.16494297E-02 -0.22921480E-03 0.22428428E-02 0.41392303E-02 + 0.34036878E-02 -0.22869032E-03 -0.27041890E-02 -0.90747613E-02 -0.11370116E-01 + -0.25729596E-01 -0.15455390E-01 -0.17414904E-01 -0.18659001E-01 -0.19511447E-01 + -0.19767125E-01 -0.22128179E-01 -0.21787018E-01 -0.19030126E-01 -0.17667460E-01 + -0.12851280E-01 -0.98087102E-02 -0.80850727E-02 -0.63565173E-02 0.45187169E-05 + -0.11464770E-05 -0.42698749E-05 -0.74537652E-05 0.11547827E-04 0.19482189E-04 + 0.19351246E-04 0.95098814E-07 0.21931554E-05 -0.35638542E-04 -0.11320222E-03 + -0.15017709E-03 -0.19487733E-03 -0.32066291E-03 -0.42442307E-03 -0.60613281E-03 + -0.72164256E-03 -0.70253787E-03 -0.65232766E-03 -0.58128280E-03 -0.41563469E-03 + -0.15994932E-03 0.46127772E-04 0.40188623E-03 0.16013775E-03 -0.62218105E-04 + -0.58195197E-03 -0.28990250E-03 -0.74380153E-03 -0.13150165E-02 -0.37949674E-03 + 0.79060275E-03 0.27386916E-02 0.43778011E-02 0.43780203E-02 0.25134228E-02 + 0.13567270E-02 -0.23423904E-02 -0.32436105E-02 -0.12172071E-01 -0.55529374E-02 + -0.65175940E-02 -0.71468766E-02 -0.77218514E-02 -0.80516855E-02 -0.10129330E-01 + -0.10805379E-01 -0.97522899E-02 -0.92989187E-02 -0.64479883E-02 -0.47308198E-02 + -0.38893498E-02 -0.30690374E-02 0.20262453E-05 -0.52246999E-06 -0.16850832E-05 + -0.40148759E-05 0.55696579E-05 0.99962856E-05 0.10686245E-04 0.38095869E-05 + 0.79577244E-05 -0.22087365E-05 -0.36941353E-04 -0.61511615E-04 -0.76898534E-04 + -0.13545845E-03 -0.17590928E-03 -0.24661527E-03 -0.29893798E-03 -0.32677639E-03 + -0.33681324E-03 -0.26697626E-03 -0.14543123E-03 -0.98531640E-05 0.89427790E-04 + 0.26680605E-03 0.15672376E-03 0.63249282E-04 -0.17500084E-03 -0.69743669E-04 + -0.29699491E-03 -0.56511740E-03 -0.80829422E-04 0.53334858E-03 0.15564048E-02 + 0.24763936E-02 0.26300506E-02 0.19203758E-02 0.16018192E-02 0.13993269E-03 + 0.19060308E-03 -0.38081883E-02 -0.67968587E-03 -0.86902858E-03 -0.93385786E-03 + -0.10779109E-02 -0.12083961E-02 -0.24643687E-02 -0.33198675E-02 -0.32715120E-02 + -0.33227250E-02 -0.21371015E-02 -0.14495951E-02 -0.11766736E-02 -0.92820346E-03 + 0.74867016E-03 0.21140764E-03 -0.70699973E-03 -0.79630150E-03 0.94087764E-03 + 0.11408066E-02 -0.10346163E-03 -0.11256262E-02 -0.19706667E-02 -0.40260700E-02 + -0.49072827E-02 -0.44442339E-02 -0.36384532E-02 -0.46393895E-02 -0.63441241E-02 + -0.11956506E-01 -0.11368764E-01 -0.11898295E-01 -0.35940224E-02 -0.35967943E-02 + 0.65557130E-02 0.11381385E-01 -0.75155659E-02 0.10242245E-01 0.10815146E-01 + 0.24950698E-01 -0.37840465E-01 -0.42752493E-01 -0.51235564E-01 -0.71260511E-01 + -0.44834395E-01 -0.46316185E-01 -0.12505879E-01 -0.14188362E-02 0.12779411E-01 + -0.56695007E-02 -0.36983232E-02 -0.47908046E-01 -0.32588834E-01 -0.16989711E+00 + -0.12128618E+00 -0.95303084E-01 -0.80455282E-01 -0.43037193E-01 0.60696737E-02 + 0.27724063E-01 0.26884208E-01 0.42563659E-01 0.36538500E-01 0.46144951E-01 + 0.50249132E-01 0.49603211E-01 0.44908496E-01 0.31460585E-04 0.16423122E-04 + 0.10892890E-04 0.12291636E-04 0.22797628E-04 0.46527507E-04 0.64160660E-04 + 0.85047519E-04 0.12104944E-03 0.19385717E-03 0.27786271E-03 0.38883189E-03 + 0.54786944E-03 0.72482420E-03 0.81104940E-03 0.74900526E-03 0.29795498E-03 + -0.31490822E-03 -0.61686721E-03 -0.56046771E-03 -0.29270089E-03 0.31183737E-04 + -0.12959959E-03 -0.35431304E-03 -0.34092422E-03 -0.35997829E-04 -0.94555559E-05 + 0.16286973E-03 0.20544000E-03 0.18919552E-03 0.74737358E-04 -0.53883200E-05 + 0.95450419E-05 0.69529749E-04 0.12658116E-03 0.10465701E-03 0.12475433E-03 + 0.28793760E-04 -0.61226895E-04 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 -0.11623659E-11 0.10267157E-11 -0.52589226E-13 0.26744285E-11 + 0.78743178E-11 -0.27930752E-10 0.10007392E-10 0.39017826E-10 0.28497244E-11 + 0.84349804E-10 -0.11103666E-09 0.85230049E-10 0.97203558E-11 -0.25058705E-10 + -0.92939570E-11 -0.13783236E-10 0.21909233E-09 0.20809857E-09 0.36975380E-09 + -0.29453809E-10 -0.63057272E-10 0.50685662E-09 0.21146733E-08 -0.18534852E-08 + -0.91353699E-09 0.17348290E-08 0.25892839E-08 0.25232157E-08 0.11350593E-08 + 0.17624303E-08 0.93701103E-09 0.11279175E-08 -0.18633167E-08 -0.16475719E-08 + -0.38056743E-08 -0.53223627E-08 -0.58515251E-08 -0.80460386E-08 -0.10287369E-07 + -0.17022955E-07 -0.18975818E-07 -0.21302118E-07 -0.23258314E-07 -0.26784106E-07 + -0.29322441E-07 -0.31948739E-07 -0.32735375E-07 -0.33430855E-07 -0.33688850E-07 + -0.33030769E-07 -0.32242136E-07 -0.28992851E-07 -0.25762254E-07 -0.21811536E-08 + 0.13620225E-08 0.67680465E-10 0.27653214E-08 -0.20935261E-08 0.96655769E-09 + -0.78690328E-09 0.15200846E-08 0.19635702E-08 0.51212411E-08 0.99005420E-08 + 0.18879061E-07 0.33689711E-07 0.52600846E-07 0.78011106E-07 0.10055664E-06 + 0.12402440E-06 0.14513134E-06 0.16920504E-06 0.19219805E-06 0.16793224E-06 + 0.95118634E-07 0.12809802E-06 0.16772801E-06 0.16473302E-06 -0.16048760E-07 + 0.80714517E-07 0.21301699E-06 0.43484814E-06 0.59288313E-06 0.97266668E-06 + 0.12191656E-05 0.14539824E-05 0.15604362E-05 0.16992597E-05 0.18127807E-05 + 0.17110919E-05 0.17058187E-05 0.17103909E-05 0.19889235E-05 0.15504514E-05 + 0.12025851E-05 0.10489833E-05 0.88440188E-06 0.84407388E-06 0.80145146E-06 + 0.36729361E-06 0.50054322E-07 -0.14899001E-06 -0.23576414E-06 -0.30816616E-06 + -0.22768166E-06 -0.23522668E-06 -0.47174963E-12 -0.10361783E-11 -0.54085908E-11 + -0.31067072E-11 0.46530811E-11 0.70329892E-11 -0.74898249E-10 0.35010705E-09 + 0.64464269E-09 0.78086420E-09 0.13199502E-08 0.16391288E-08 0.20602935E-08 + 0.22517367E-08 0.25303902E-08 0.27521524E-08 0.27047826E-08 0.28756335E-08 + 0.32350197E-08 0.32372385E-08 0.35282264E-08 0.45120345E-08 0.30396669E-09 + 0.39486305E-08 0.22349575E-08 0.47957845E-08 0.58048644E-08 0.73226420E-08 + 0.82626085E-08 0.98990790E-08 0.10571860E-07 0.14542843E-07 0.13158367E-07 + 0.17023475E-07 0.17072908E-07 0.23210620E-07 0.29527635E-07 0.38140532E-07 + 0.45104613E-07 0.66173039E-07 0.81023443E-07 0.82874389E-07 0.89767812E-07 + 0.96321218E-07 0.98378137E-07 0.11516768E-06 0.11429530E-06 0.10802421E-06 + 0.10566142E-06 0.10250423E-06 0.92643878E-07 0.79782865E-07 0.65579742E-07 + -0.21492146E-09 -0.65550732E-09 -0.70262158E-09 -0.32820328E-08 -0.84304320E-09 + 0.98957742E-08 0.69460194E-07 0.21484968E-06 0.47050147E-06 0.76735657E-06 + 0.10358755E-05 0.12647551E-05 0.14466415E-05 0.16551698E-05 0.18402228E-05 + 0.19703765E-05 0.19976819E-05 0.21209090E-05 0.21501520E-05 0.20802827E-05 + 0.20457774E-05 0.20108493E-05 0.17535944E-05 0.17059285E-05 0.20805251E-05 + 0.28210869E-05 0.44567450E-05 0.50210771E-05 0.57578857E-05 0.71160479E-05 + 0.78538685E-05 0.10477534E-04 0.10876575E-04 0.13964245E-04 0.16675333E-04 + 0.22108389E-04 0.28811298E-04 0.36504959E-04 0.44146459E-04 0.57212466E-04 + 0.69590830E-04 0.74816101E-04 0.79815512E-04 0.83244226E-04 0.82878641E-04 + 0.88599320E-04 0.86318045E-04 0.80412252E-04 0.75573631E-04 0.70483548E-04 + 0.63275985E-04 0.53920622E-04 0.44150740E-04 -0.27835855E-09 -0.32885968E-09 + -0.80119269E-10 -0.46237828E-08 0.13415340E-08 0.23987269E-09 0.31477678E-07 + 0.90487443E-07 0.22333515E-06 0.36893891E-06 0.51037669E-06 0.64113598E-06 + 0.74246785E-06 0.85878570E-06 0.95671694E-06 0.10334361E-05 0.10219183E-05 + 0.10889995E-05 0.11359934E-05 0.10797638E-05 0.10358193E-05 0.99073121E-06 + 0.79127243E-06 0.71843429E-06 0.91663500E-06 0.13229173E-05 0.22288386E-05 + 0.24092748E-05 0.26662943E-05 0.32377998E-05 0.33042379E-05 0.45493148E-05 + 0.41190664E-05 0.53275555E-05 0.61279875E-05 0.85272475E-05 0.11727806E-04 + 0.15484558E-04 0.19159680E-04 0.26635086E-04 0.33480610E-04 0.35908094E-04 + 0.38619465E-04 0.40799562E-04 0.40902857E-04 0.45139546E-04 0.44398964E-04 + 0.41501367E-04 0.39412939E-04 0.37285031E-04 0.33786269E-04 0.28855506E-04 + 0.23747555E-04 -0.53552825E-10 -0.44442756E-09 -0.31895114E-09 0.94482613E-10 + 0.83035671E-09 0.24471746E-09 0.77444070E-08 0.27428260E-07 0.86397061E-07 + 0.13840000E-06 0.19732359E-06 0.25389431E-06 0.29881227E-06 0.34593374E-06 + 0.38689679E-06 0.42310219E-06 0.41013664E-06 0.44654532E-06 0.49780023E-06 + 0.47476066E-06 0.45626611E-06 0.43906080E-06 0.34528957E-06 0.31058475E-06 + 0.41596221E-06 0.62041908E-06 0.10631491E-05 0.11618599E-05 0.13065137E-05 + 0.16034671E-05 0.16826470E-05 0.23440319E-05 0.21922284E-05 0.27970933E-05 + 0.31795900E-05 0.42775335E-05 0.57004970E-05 0.72901429E-05 0.87081315E-05 + 0.11857137E-04 0.14445576E-04 0.15059445E-04 0.15907361E-04 0.16648827E-04 + 0.16531724E-04 0.18545444E-04 0.18259678E-04 0.17078329E-04 0.16385969E-04 + 0.15686627E-04 0.14318360E-04 0.12240993E-04 0.10088501E-04 0.51221203E-06 + 0.43876830E-05 0.17659908E-04 0.38039685E-04 0.38348778E-04 0.20379890E-04 + 0.18580994E-04 0.24180078E-04 0.31789943E-04 0.53431797E-04 0.84172230E-04 + 0.11508598E-03 0.14151629E-03 0.17157697E-03 0.20730546E-03 0.24126738E-03 + 0.26969663E-03 0.30037171E-03 0.33098827E-03 0.35958690E-03 0.38900161E-03 + 0.42755803E-03 0.46276878E-03 0.51903553E-03 0.62067584E-03 0.76458863E-03 + 0.96989339E-03 0.11187636E-02 0.13001392E-02 0.14945451E-02 0.16973386E-02 + 0.19735582E-02 0.22292208E-02 0.25069364E-02 0.27764696E-02 0.30689034E-02 + 0.33046929E-02 0.35051869E-02 0.36647947E-02 0.37488504E-02 0.38092261E-02 + 0.36996027E-02 0.35385226E-02 0.32720074E-02 0.29388033E-02 0.26716270E-02 + 0.22534352E-02 0.18275733E-02 0.14741786E-02 0.11724778E-02 0.91149253E-03 + 0.68860546E-03 0.49383201E-03 -0.48285257E-03 -0.10888499E-03 0.11533724E-04 + -0.24440279E-04 -0.42990624E-04 -0.79486060E-04 -0.33270063E-03 -0.61704605E-03 + -0.83869378E-03 -0.74814592E-03 -0.10077832E-02 -0.12578828E-02 -0.20111478E-02 + -0.30700508E-02 -0.30005426E-02 -0.32445913E-02 -0.49405853E-02 -0.75258392E-02 + -0.86769360E-02 -0.95713495E-02 -0.98373646E-02 -0.99966897E-02 -0.12196393E-01 + -0.43599157E-02 0.25766769E-02 -0.14667873E-02 -0.83297989E-02 -0.98452386E-02 + -0.87587691E-02 -0.53199384E-02 -0.65862677E-02 -0.61430388E-02 -0.41443733E-02 + -0.28587264E-02 -0.35156626E-02 -0.37667174E-02 -0.26698399E-02 -0.14099414E-02 + -0.51490740E-02 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + -0.52246621E-10 0.18494639E-11 -0.22568812E-11 0.37122660E-11 0.36388130E-10 + 0.29729225E-10 -0.68214733E-09 -0.24109389E-09 0.15441211E-08 -0.73121085E-09 + 0.57136191E-09 0.79032978E-09 -0.46318030E-09 -0.10533953E-09 -0.17254769E-09 + 0.18562943E-08 0.50750203E-09 0.50897684E-09 0.66503961E-09 -0.40292450E-08 + 0.16816132E-09 -0.30822830E-08 0.19250607E-08 -0.90371522E-08 0.27230358E-08 + -0.42721884E-08 0.18367655E-07 0.35144692E-08 -0.38319891E-09 -0.38428707E-09 + -0.11615124E-07 -0.12102993E-07 0.16042970E-08 -0.55279639E-08 -0.36647667E-08 + -0.74509755E-08 -0.50999708E-08 0.17167798E-08 -0.13127286E-08 -0.98363405E-08 + 0.42024270E-07 0.43473979E-07 0.42543683E-07 0.52190689E-07 0.65686207E-07 + 0.61037582E-07 0.50704089E-07 0.43438113E-07 0.41044320E-07 0.30895333E-07 + 0.18319138E-07 0.12844030E-07 0.26407871E-07 -0.49863422E-07 -0.48427305E-09 + -0.79225787E-08 0.10042576E-07 -0.74572510E-08 -0.41455574E-08 0.20423453E-08 + -0.62202699E-08 -0.84281617E-08 -0.45959138E-08 -0.17344844E-07 -0.14436120E-07 + 0.43127095E-07 0.59577758E-07 0.85003649E-09 -0.87503547E-07 -0.15298441E-06 + -0.80538290E-07 0.48024631E-07 0.13703679E-07 -0.72724754E-07 -0.12099669E-06 + 0.22113518E-06 0.17627794E-06 -0.20954456E-06 0.57284898E-06 -0.67802911E-06 + 0.75464333E-07 0.75000400E-06 0.63930778E-06 0.15850619E-05 0.21206177E-05 + 0.22622005E-05 0.24538537E-05 0.34265547E-05 0.43620591E-05 0.46556636E-05 + 0.46478801E-05 0.55699049E-05 0.14447889E-04 0.91719846E-05 0.91772969E-05 + 0.98935372E-05 0.10428602E-04 0.10235379E-04 0.11149199E-04 0.98321402E-05 + 0.85640948E-05 0.76048733E-05 0.69572165E-05 0.60153235E-05 0.44343560E-05 + 0.36586456E-05 0.31072127E-09 -0.41845043E-10 -0.90694291E-10 -0.77151631E-10 + -0.85039263E-10 -0.10469820E-08 -0.19880462E-08 -0.51098461E-08 -0.55487013E-08 + -0.12054654E-07 -0.16009845E-07 -0.18763518E-07 -0.22982336E-07 -0.22091841E-07 + -0.25868238E-07 -0.23705029E-07 -0.32299429E-07 -0.27127589E-07 -0.24417159E-07 + -0.33667037E-07 -0.25161930E-07 -0.30377490E-07 -0.31055748E-07 -0.30843565E-07 + -0.57482567E-07 -0.63044251E-07 -0.46813781E-07 -0.33679951E-07 -0.31054286E-07 + -0.40455536E-07 -0.35054724E-07 -0.55175187E-07 -0.12191228E-06 -0.20377104E-06 + -0.34859366E-06 -0.49966018E-06 -0.64869121E-06 -0.83754763E-06 -0.11341018E-05 + -0.13835860E-05 -0.15166734E-05 -0.16520640E-05 -0.17744028E-05 -0.19065001E-05 + -0.19921160E-05 -0.20549301E-05 -0.20601637E-05 -0.18602894E-05 -0.16555343E-05 + -0.15485942E-05 -0.14610063E-05 -0.13107564E-05 -0.11018422E-05 0.32219762E-07 + -0.27177877E-07 -0.41788369E-07 -0.36225300E-07 -0.10823130E-07 -0.35307686E-06 + -0.10301322E-05 -0.32526757E-05 -0.38146964E-05 -0.65690379E-05 -0.84355461E-05 + -0.10670872E-04 -0.12616416E-04 -0.13384907E-04 -0.13051408E-04 -0.13552886E-04 + -0.12852814E-04 -0.10967077E-04 -0.11409749E-04 -0.16415641E-04 -0.16307863E-04 + -0.17603405E-04 -0.19990990E-04 -0.23552916E-04 -0.33961221E-04 -0.41064073E-04 + -0.29757325E-04 -0.25522813E-04 -0.25297165E-04 -0.26076603E-04 -0.30698042E-04 + -0.45573648E-04 -0.84699648E-04 -0.14684845E-03 -0.22302788E-03 -0.30772354E-03 + -0.40848981E-03 -0.51571740E-03 -0.68730325E-03 -0.87133457E-03 -0.93558605E-03 + -0.10129575E-02 -0.10700712E-02 -0.11085939E-02 -0.11271604E-02 -0.11264137E-02 + -0.10648398E-02 -0.93602015E-03 -0.80329263E-03 -0.73212760E-03 -0.67541168E-03 + -0.59519933E-03 -0.49565497E-03 0.62919772E-07 -0.17191415E-07 -0.26132993E-07 + -0.24543154E-07 0.50804180E-08 -0.19513796E-06 -0.56329735E-06 -0.17348423E-05 + -0.18964463E-05 -0.35929138E-05 -0.48346156E-05 -0.61749070E-05 -0.72822344E-05 + -0.78832350E-05 -0.80089856E-05 -0.87669269E-05 -0.89553079E-05 -0.77021232E-05 + -0.74603879E-05 -0.10416187E-04 -0.10048807E-04 -0.10412412E-04 -0.11508859E-04 + -0.13439231E-04 -0.19824934E-04 -0.24096168E-04 -0.17659458E-04 -0.14472111E-04 + -0.14021239E-04 -0.14339623E-04 -0.16767931E-04 -0.25154731E-04 -0.47803337E-04 + -0.83522420E-04 -0.12763059E-03 -0.17726748E-03 -0.23671658E-03 -0.29958230E-03 + -0.39958192E-03 -0.49962089E-03 -0.52853123E-03 -0.57331201E-03 -0.60952830E-03 + -0.63789675E-03 -0.65885765E-03 -0.67286172E-03 -0.64889051E-03 -0.58250725E-03 + -0.51214845E-03 -0.47488785E-03 -0.44375736E-03 -0.39483482E-03 -0.33144081E-03 + -0.91050905E-08 -0.10522287E-07 -0.20181641E-07 -0.45243787E-08 0.22281739E-08 + -0.94433802E-07 -0.22203958E-06 -0.73696482E-06 -0.72867906E-06 -0.15584211E-05 + -0.22096710E-05 -0.28192202E-05 -0.32468807E-05 -0.35493899E-05 -0.37365700E-05 + -0.43077707E-05 -0.47559274E-05 -0.42375236E-05 -0.39234893E-05 -0.52208255E-05 + -0.48330011E-05 -0.48286334E-05 -0.52201192E-05 -0.60610042E-05 -0.90404925E-05 + -0.11056522E-04 -0.82587039E-05 -0.68118442E-05 -0.65363985E-05 -0.66513961E-05 + -0.76519793E-05 -0.11409785E-04 -0.21703341E-04 -0.37760893E-04 -0.56863656E-04 + -0.77382168E-04 -0.10127629E-03 -0.12531152E-03 -0.16433201E-03 -0.20083131E-03 + -0.20958447E-03 -0.22305524E-03 -0.23351769E-03 -0.24192393E-03 -0.24893482E-03 + -0.25686065E-03 -0.25155111E-03 -0.22879688E-03 -0.20340580E-03 -0.19135408E-03 + -0.18139380E-03 -0.16297686E-03 -0.13812791E-03 -0.31920443E-04 -0.29596142E-05 + -0.17154532E-04 -0.76328777E-05 0.11531070E-03 0.29202247E-03 0.26040549E-03 + 0.25721824E-03 0.22067108E-03 0.23902605E-03 0.26218958E-03 0.28301001E-03 + 0.39028210E-03 0.46094239E-03 0.58150227E-03 0.79106985E-03 0.10543095E-02 + 0.12809697E-02 0.15888914E-02 0.18295770E-02 0.22095148E-02 0.25483700E-02 + 0.28307268E-02 0.31958078E-02 0.32001394E-02 0.33668488E-02 0.35589127E-02 + 0.40390202E-02 0.49704912E-02 0.54926046E-02 0.60973336E-02 0.64785841E-02 + 0.72877171E-02 0.80149943E-02 0.95556929E-02 0.11046339E-01 0.11864283E-01 + 0.12689395E-01 0.13260107E-01 0.13979499E-01 0.15360397E-01 0.16813326E-01 + 0.18136391E-01 0.19295383E-01 0.20442618E-01 0.21890511E-01 0.21475090E-01 + 0.20319681E-01 0.19167804E-01 0.17245930E-01 0.15149360E-01 0.13115231E-01 + 0.10654477E-01 -0.36442658E-02 0.13695983E-02 -0.91485978E-03 -0.46680925E-02 + 0.20741258E-02 0.42585251E-02 0.35794351E-02 0.13519821E-01 0.81373777E-02 + 0.23016814E-02 0.37366557E-01 -0.11744585E-01 0.11843272E-01 0.37407961E-01 + 0.72882655E-01 0.91872517E-01 0.13577722E+00 0.82643197E-01 0.37145277E-01 + -0.10995170E-01 0.71004788E-02 0.27108121E-01 0.23555481E+00 -0.21931114E-01 + -0.34084726E+00 -0.10902889E+00 0.31708149E+00 0.87794104E-01 -0.55450702E-01 + -0.98104666E-01 0.16169721E+00 0.12747368E+00 0.11161195E+00 0.54961452E-01 + -0.32127797E-01 -0.52623205E-01 -0.30571965E-01 0.57518631E-02 -0.18608771E-01 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -0.92458471E-10 + 0.45089402E-09 0.59048548E-09 0.11428558E-09 -0.15947485E-08 0.80464563E-08 + 0.13609097E-07 0.15769812E-07 -0.96175672E-08 -0.40968675E-08 0.14128810E-07 + -0.14450785E-08 0.50015819E-08 0.43834626E-07 0.92229609E-07 0.10320638E-06 + 0.16217562E-06 0.14234425E-06 0.87092897E-07 -0.13699211E-07 0.40023483E-06 + 0.10382020E-05 0.54043619E-06 0.13052674E-06 -0.22940336E-05 0.65609548E-06 + 0.16065984E-05 0.67316819E-06 -0.32961172E-06 -0.17672880E-06 0.21945079E-05 + 0.39508089E-06 0.34031299E-05 0.18254578E-05 -0.65586053E-06 0.23975825E-05 + -0.37393094E-06 0.35694526E-06 0.14840199E-05 0.96523895E-05 -0.19485504E-06 + -0.56116446E-06 -0.83724822E-06 -0.75663252E-06 -0.17928033E-05 -0.92283584E-06 + -0.12393504E-05 -0.13071465E-05 -0.23440850E-06 0.22494273E-06 0.36980225E-06 + 0.59559412E-06 0.38478834E-06 -0.19035933E-06 -0.89281127E-08 0.25243810E-06 + -0.28145927E-06 -0.91862285E-07 -0.50833026E-07 -0.31291470E-06 -0.38588327E-06 + -0.16742355E-06 0.27685086E-07 -0.18579274E-05 0.17166771E-05 -0.74458815E-06 + -0.30904219E-05 -0.74135147E-05 -0.93218061E-05 -0.14825327E-04 -0.11243914E-04 + -0.68838543E-05 0.31077772E-05 0.47475665E-05 0.50544514E-05 -0.44494124E-04 + 0.29406242E-04 0.21245771E-03 0.96656911E-05 -0.14672703E-03 -0.23697705E-04 + 0.52544841E-04 0.76675991E-04 -0.15160080E-03 -0.15292716E-03 -0.16237710E-03 + -0.10159937E-03 0.24165797E-06 0.11886286E-04 -0.23459944E-04 -0.12715040E-03 + -0.10229420E-03 -0.12875703E-02 -0.15289458E-03 -0.10756721E-03 -0.95315910E-04 + -0.26918827E-04 0.62807887E-04 -0.20734806E-04 0.59401194E-04 0.11943477E-03 + 0.25330975E-04 -0.22045076E-04 -0.15882787E-04 -0.31543481E-04 -0.30723318E-04 + -0.85595633E-07 0.27662048E-08 0.14581251E-07 0.24207139E-07 -0.23144428E-07 + -0.41999281E-07 -0.58149450E-07 0.16325579E-07 -0.43069088E-07 0.37589280E-07 + 0.26836633E-06 0.49698578E-06 0.63096751E-06 0.10149347E-05 0.13271361E-05 + 0.16512590E-05 0.21797407E-05 0.22698967E-05 0.22865650E-05 0.16408253E-05 + 0.29247276E-05 -0.15583635E-05 0.32154524E-07 -0.85069919E-06 -0.55098937E-06 + 0.33519170E-06 0.15031171E-05 0.73111407E-06 0.25581886E-05 0.43242862E-05 + 0.17866708E-05 -0.21366740E-05 -0.92854949E-05 -0.16152000E-04 -0.17186767E-04 + -0.11904946E-04 -0.92243405E-05 0.13747701E-05 0.47556633E-06 0.24033944E-04 + 0.36332866E-05 0.72945870E-05 0.93667749E-05 0.12938764E-04 0.15741928E-04 + 0.27287199E-04 0.36108594E-04 0.37504657E-04 0.38544258E-04 0.29853510E-04 + 0.24831537E-04 0.21227798E-04 0.17467620E-04 -0.39019077E-04 0.23727778E-05 + 0.73829958E-05 0.13012836E-04 -0.16455103E-04 -0.23909480E-04 -0.22415142E-04 + 0.25624691E-04 0.32107571E-04 0.13422148E-03 0.27862281E-03 0.32976521E-03 + 0.43069873E-03 0.64556381E-03 0.84675562E-03 0.11973067E-02 0.14037676E-02 + 0.12625910E-02 0.10813613E-02 0.10726408E-02 0.94522733E-03 0.62736480E-03 + 0.35791787E-03 -0.10766352E-03 0.35524764E-03 0.81037934E-03 0.16648537E-02 + 0.10427424E-02 0.18430420E-02 0.29057403E-02 0.18005541E-02 0.41872971E-03 + -0.19602545E-02 -0.37541236E-02 -0.27665315E-02 0.12067276E-02 0.40068314E-02 + 0.10828332E-01 0.13518787E-01 0.28460627E-01 0.18348421E-01 0.20657853E-01 + 0.22229619E-01 0.23225568E-01 0.23447755E-01 0.25974991E-01 0.25425626E-01 + 0.22364600E-01 0.20796947E-01 0.15669388E-01 0.12369067E-01 0.10343396E-01 + 0.82265699E-02 -0.25495710E-04 0.12608470E-05 0.45503450E-05 0.79026933E-05 + -0.10715135E-04 -0.16659619E-04 -0.17881919E-04 0.44782410E-05 0.22171978E-05 + 0.49714896E-04 0.13159579E-03 0.17319043E-03 0.22091237E-03 0.34974299E-03 + 0.45549875E-03 0.64204192E-03 0.76142244E-03 0.73881816E-03 0.68837309E-03 + 0.62221214E-03 0.45598762E-03 0.20377405E-03 0.55767567E-05 -0.33574984E-03 + -0.80795086E-04 0.14929214E-03 0.65507548E-03 0.34957099E-03 0.81753624E-03 + 0.13806783E-02 0.44465377E-03 -0.71572154E-03 -0.26268952E-02 -0.42289445E-02 + -0.40979973E-02 -0.20465763E-02 -0.71508411E-03 0.32399743E-02 0.43517278E-02 + 0.13611522E-01 0.70655744E-02 0.82408420E-02 0.90900406E-02 0.97692211E-02 + 0.10089191E-01 0.12301459E-01 0.12889814E-01 0.11691483E-01 0.11143044E-01 + 0.81126276E-02 0.62509787E-02 0.52388124E-02 0.41928221E-02 -0.11411757E-04 + 0.58140926E-06 0.18245928E-05 0.42259246E-05 -0.51606751E-05 -0.86292573E-05 + -0.10114284E-04 -0.20078067E-05 -0.65515026E-05 0.80946601E-05 0.44870755E-04 + 0.71728225E-04 0.88022579E-04 0.14768237E-03 0.18896176E-03 0.26214295E-03 + 0.31703909E-03 0.34402085E-03 0.35418447E-03 0.28607112E-03 0.16350933E-03 + 0.29425330E-04 -0.65980521E-04 -0.23635334E-03 -0.12013640E-03 -0.23344469E-04 + 0.20913356E-03 0.97988615E-04 0.33168105E-03 0.59545726E-03 0.10969830E-03 + -0.50171286E-03 -0.15106245E-02 -0.24181080E-02 -0.25159942E-02 -0.17267881E-02 + -0.13383255E-02 0.22844159E-03 0.25376824E-03 0.43900064E-02 0.12844324E-02 + 0.15585304E-02 0.17227434E-02 0.19089266E-02 0.20236855E-02 0.33421588E-02 + 0.41728570E-02 0.40784678E-02 0.40975786E-02 0.28317564E-02 0.20825120E-02 + 0.17392320E-02 0.13980237E-02 -0.42212515E-02 -0.13792972E-03 0.89362217E-03 + 0.11734553E-02 -0.47274095E-03 -0.69450876E-03 0.53530881E-03 0.17738954E-02 + 0.26230535E-02 0.50082023E-02 0.60672976E-02 0.59334536E-02 0.53842978E-02 + 0.68140393E-02 0.89738631E-02 0.15017190E-01 0.14964268E-01 0.16002102E-01 + 0.81976954E-02 0.88425487E-02 -0.92530848E-03 -0.48644288E-02 0.14953372E-01 + -0.17221686E-02 -0.72355050E-03 -0.13297818E-01 0.51190557E-01 0.57452363E-01 + 0.68368346E-01 0.90068865E-01 0.66313573E-01 0.70521296E-01 0.40235991E-01 + 0.31325439E-01 0.19667282E-01 0.40918194E-01 0.41119036E-01 0.88258879E-01 + 0.74072673E-01 0.21195968E+00 0.16303557E+00 0.13439195E+00 0.11714869E+00 + 0.75076341E-01 0.20272870E-01 -0.47953059E-02 -0.90109302E-02 -0.27412099E-01 + -0.23047078E-01 -0.35246231E-01 -0.41626848E-01 -0.43094245E-01 -0.40215403E-01 + ! ------------------------------------------------------ +END diff --git a/tools/conf_tests/small_3D/data/rttov12/sccldcoef_meteosat_9_seviri.dat b/tools/conf_tests/small_3D/data/rttov12/sccldcoef_meteosat_9_seviri.dat new file mode 120000 index 0000000000000000000000000000000000000000..49ff11761afd31dc58f09665d5435729e7eb5525 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov12/sccldcoef_meteosat_9_seviri.dat @@ -0,0 +1 @@ +sccldcoef_msg_2_seviri.dat \ No newline at end of file diff --git a/tools/conf_tests/small_3D/data/rttov12/sccldcoef_msg_2_seviri.dat b/tools/conf_tests/small_3D/data/rttov12/sccldcoef_msg_2_seviri.dat new file mode 100644 index 0000000000000000000000000000000000000000..c9bb5d19fcc845e12bf17124779e07bbebbc01e5 --- /dev/null +++ b/tools/conf_tests/small_3D/data/rttov12/sccldcoef_msg_2_seviri.dat @@ -0,0 +1,5415 @@ + ! RTTOV coefficient file msg-2 seviri-ir + ! Automatic creation by subroutine rttov_write_ascii_sccldcoef + ! ------------------------------------------------------ + ! ------------------------------------------------------ +WATERCLOUD_TYPES + ! + 8 ! Number of channels for which optical parameters are stored + 0 ! Number of channels for which phase functions are stored + 128 ! Maximum number of Legendre coefficients + 5 ! Number of water cloud types + stco + 1 ! RH values for which parameters are available + 0.00 + 892.857000 ! Conversion factor from LWC to particle density + stma + 1 ! RH values for which parameters are available + 0.00 + 266.667000 ! Conversion factor from LWC to particle density + cucc + 1 ! RH values for which parameters are available + 0.00 + 1538.461000 ! Conversion factor from LWC to particle density + cucp + 1 ! RH values for which parameters are available + 0.00 + 4347.826000 ! Conversion factor from LWC to particle density + cuma + 1 ! RH values for which parameters are available + 0.00 + 147.710000 ! Conversion factor from LWC to particle density + ! ------------------------------------------------------ +WATERCLOUD_PARAMETERS + ! + ! --------------------- + stco00 + 0.23152871E-01 0.11757166E+00 0.67694468E-01 0.64020538E-01 0.65273812E-01 + 0.79795078E-01 0.11360990E+00 0.13385066E+00 + 0.25698937E+00 0.19320018E+00 0.26190371E+00 0.21893004E+00 0.16118272E+00 + 0.75753994E-01 0.56314292E-01 0.74346289E-01 + 0.16356846E+00 0.11518186E+00 0.12304899E+00 0.12006500E+00 0.11973694E+00 + 0.12124914E+00 0.13433895E+00 0.15300709E+00 + 85 + 0.10000000E+01 0.23118171E+01 0.33419316E+01 0.36618072E+01 0.40988369E+01 + 0.43192143E+01 0.45768874E+01 0.47839265E+01 0.49154762E+01 0.50061060E+01 + 0.50030380E+01 0.49599932E+01 0.48198839E+01 0.46738360E+01 0.44237515E+01 + 0.42103840E+01 0.38962429E+01 0.36434263E+01 0.33122689E+01 0.30414901E+01 + 0.27297613E+01 0.24585086E+01 0.21881957E+01 0.19306131E+01 0.17105664E+01 + 0.14771788E+01 0.13067395E+01 0.11041618E+01 0.97716670E+00 0.80820290E+00 + 0.71629624E+00 0.58049197E+00 0.51533536E+00 0.40985585E+00 0.36427702E+00 + 0.28488587E+00 0.25325176E+00 0.19518518E+00 0.17332713E+00 0.13194481E+00 + 0.11689108E+00 0.88077261E-01 0.77750599E-01 0.58098239E-01 0.51055359E-01 + 0.37892660E-01 0.33128356E-01 0.24450211E-01 0.21260782E-01 0.15616178E-01 + 0.13507172E-01 0.98775072E-02 0.85017924E-02 0.61902106E-02 0.53056934E-02 + 0.38455322E-02 0.32850594E-02 0.23691649E-02 0.20190057E-02 0.14481383E-02 + 0.12322798E-02 0.87858633E-03 0.74711480E-03 0.52927023E-03 0.45004770E-03 + 0.31670348E-03 0.26938771E-03 0.18828978E-03 0.16021408E-03 0.11123917E-03 + 0.94649910E-04 0.65299405E-04 0.55502073E-04 0.38066401E-04 0.32257530E-04 + 0.22009368E-04 0.18529647E-04 0.12587576E-04 0.10464396E-04 0.70833279E-05 + 0.57506631E-05 0.38803712E-05 0.30108712E-05 0.20232246E-05 0.14283670E-05 + 0.94998751E-06 + 55 + 0.10000000E+01 0.26436165E+01 0.38125543E+01 0.45338092E+01 0.49396663E+01 + 0.50956144E+01 0.50511011E+01 0.48605286E+01 0.45409935E+01 0.41525785E+01 + 0.37024409E+01 0.32439384E+01 0.27808497E+01 0.23471145E+01 0.19456090E+01 + 0.15888399E+01 0.12795176E+01 0.10147883E+01 0.79697131E+00 0.61592639E+00 + 0.47318557E+00 0.35741843E+00 0.26926493E+00 0.19932116E+00 0.14753893E+00 + 0.10728774E+00 0.78152436E-01 0.55946431E-01 0.40158534E-01 0.28352242E-01 + 0.20077139E-01 0.14001218E-01 0.97911475E-02 0.67533115E-02 0.46681781E-02 + 0.31879886E-02 0.21801858E-02 0.14754783E-02 0.99911540E-03 0.67056545E-03 + 0.44995203E-03 0.29966876E-03 0.19939734E-03 0.13184650E-03 0.87052790E-04 + 0.57174518E-04 0.37480689E-04 0.24461165E-04 0.15929309E-04 0.10334444E-04 + 0.66881392E-05 0.43150453E-05 0.27759512E-05 0.17817521E-05 0.11392297E-05 + 0.72766053E-06 + 47 + 0.10000000E+01 0.26204717E+01 0.37290731E+01 0.43062945E+01 0.45095136E+01 + 0.44313254E+01 0.41547163E+01 0.37661011E+01 0.32981325E+01 0.28226103E+01 + 0.23454037E+01 0.19142814E+01 0.15231955E+01 0.11927590E+01 0.91534856E+00 + 0.69062964E+00 0.51430797E+00 0.37511329E+00 0.27252427E+00 0.19264322E+00 + 0.13717030E+00 0.94179632E-01 0.65978954E-01 0.44084224E-01 0.30481173E-01 + 0.19855690E-01 0.13582393E-01 0.86419744E-02 0.58585311E-02 0.36480557E-02 + 0.24535009E-02 0.14983201E-02 0.10002319E-02 0.60037973E-03 0.39784802E-03 + 0.23525732E-03 0.15470493E-03 0.90329306E-04 0.58916393E-04 0.34043140E-04 + 0.22009413E-04 0.12612023E-04 0.80768803E-05 0.45988432E-05 0.29153858E-05 + 0.16525122E-05 0.10362305E-05 0.58598403E-06 + 40 + 0.10000000E+01 0.26546586E+01 0.37660655E+01 0.43125002E+01 0.44197924E+01 + 0.42037662E+01 0.37780026E+01 0.32468407E+01 0.26801024E+01 0.21402530E+01 + 0.16555759E+01 0.12463102E+01 0.91472103E+00 0.65531669E+00 0.46052274E+00 + 0.31618844E+00 0.21429345E+00 0.14177393E+00 0.93209496E-01 0.59677703E-01 + 0.38243698E-01 0.23778763E-01 0.14911994E-01 0.90300898E-02 0.55596079E-02 + 0.32869035E-02 0.19919986E-02 0.11522430E-02 0.68883153E-03 0.39058445E-03 + 0.23071159E-03 0.12846721E-03 0.75072123E-04 0.41120383E-04 0.23794373E-04 + 0.12841561E-04 0.73627521E-05 0.39214206E-05 0.22286057E-05 0.11732073E-05 + 0.66090441E-06 + 36 + 0.10000000E+01 0.26684895E+01 0.37662829E+01 0.42653647E+01 0.42879553E+01 + 0.39700480E+01 0.34515378E+01 0.28494797E+01 0.22503888E+01 0.17092402E+01 + 0.12545439E+01 0.89194954E+00 0.61724740E+00 0.41566085E+00 0.27403120E+00 + 0.17632295E+00 0.11162290E+00 0.69092647E-01 0.42263122E-01 0.25300805E-01 + 0.15028134E-01 0.87385637E-02 0.50604811E-02 0.28682207E-02 0.16246604E-02 + 0.90018078E-03 0.50008112E-03 0.27152642E-03 0.14826617E-03 0.79053105E-04 + 0.42507125E-04 0.22295723E-04 0.11823243E-04 0.61103018E-05 0.31996550E-05 + 0.16316146E-05 0.84461906E-06 + 33 + 0.10000000E+01 0.26738776E+01 0.37389393E+01 0.41560206E+01 0.40583704E+01 + 0.36178423E+01 0.30051123E+01 0.23534851E+01 0.17534936E+01 0.12500941E+01 + 0.85765419E+00 0.56819597E+00 0.36505800E+00 0.22794753E+00 0.13880945E+00 + 0.82544521E-01 0.48073686E-01 0.27441119E-01 0.15391074E-01 0.84850702E-02 + 0.46082405E-02 0.24656127E-02 0.13022764E-02 0.67887934E-03 0.34994138E-03 + 0.17830602E-03 0.89958707E-04 0.44919419E-04 0.22234218E-04 0.10903907E-04 + 0.53057655E-05 0.25602209E-05 0.12267541E-05 0.58337688E-06 + 32 + 0.10000000E+01 0.26073341E+01 0.35467922E+01 0.37968275E+01 0.35412237E+01 + 0.29941170E+01 0.23438758E+01 0.17205377E+01 0.11955933E+01 0.79181860E+00 + 0.50275616E+00 0.30739926E+00 0.18174494E+00 0.10423332E+00 0.58165071E-01 + 0.31655258E-01 0.16840774E-01 0.87737424E-02 0.44842559E-02 0.22515462E-02 + 0.11121559E-02 0.54103108E-03 0.25949922E-03 0.12282648E-03 0.57422496E-04 + 0.26535118E-04 0.12129117E-04 0.54874102E-05 0.24586687E-05 0.10915543E-05 + 0.48041971E-06 0.20970542E-06 0.90821341E-07 + 32 + 0.10000000E+01 0.24999010E+01 0.32785580E+01 0.33560781E+01 0.29758535E+01 + 0.23777176E+01 0.17493247E+01 0.12002225E+01 0.77593007E+00 0.47595451E+00 + 0.27888215E+00 0.15681428E+00 0.85027676E-01 0.44603347E-01 0.22717529E-01 + 0.11261447E-01 0.54480018E-02 0.25768692E-02 0.11941368E-02 0.54293589E-03 + 0.24258781E-03 0.10663859E-03 0.46177403E-04 0.19716012E-04 0.83083891E-05 + 0.34582472E-05 0.14229385E-05 0.57914173E-06 0.23330945E-06 0.93080295E-07 + 0.36791014E-07 0.14411909E-07 0.55924605E-08 + ! --------------------- + stma00 + 0.71396021E-01 0.28343665E+00 0.19558072E+00 0.18824901E+00 0.19090132E+00 + 0.21975143E+00 0.27396839E+00 0.30260458E+00 + 0.51299957E+00 0.33802759E+00 0.48329207E+00 0.51293673E+00 0.45991233E+00 + 0.26108352E+00 0.18039864E+00 0.21474347E+00 + 0.13706365E+00 0.91125895E-01 0.11595803E+00 0.10506355E+00 0.96555720E-01 + 0.88843861E-01 0.97536567E-01 0.11387780E+00 + 119 + 0.10000000E+01 0.24398190E+01 0.36352014E+01 0.41931909E+01 0.48905108E+01 + 0.53654121E+01 0.58888912E+01 0.63474232E+01 0.67578798E+01 0.70927674E+01 + 0.74194929E+01 0.76101621E+01 0.78237644E+01 0.79062204E+01 0.79834351E+01 + 0.79863408E+01 0.79335635E+01 0.78673557E+01 0.77115313E+01 0.75798692E+01 + 0.73515444E+01 0.71610434E+01 0.68863919E+01 0.66480261E+01 0.63477684E+01 + 0.60747097E+01 0.57650953E+01 0.54706595E+01 0.51641981E+01 0.48607240E+01 + 0.45665740E+01 0.42648622E+01 0.39892359E+01 0.36982175E+01 0.34448997E+01 + 0.31714508E+01 0.29423576E+01 0.26912695E+01 0.24869647E+01 0.22610620E+01 + 0.20811754E+01 0.18815636E+01 0.17250931E+01 0.15514960E+01 0.14170082E+01 + 0.12681370E+01 0.11539061E+01 0.10278077E+01 0.93192271E+00 0.82627456E+00 + 0.74672909E+00 0.65907002E+00 0.59383938E+00 0.52174009E+00 0.46885052E+00 + 0.41002441E+00 0.36760529E+00 0.31997002E+00 0.28629734E+00 0.24800505E+00 + 0.22153162E+00 0.19097090E+00 0.17034079E+00 0.14612587E+00 0.13017879E+00 + 0.11113163E+00 0.98893818E-01 0.84020872E-01 0.74690088E-01 0.63162273E-01 + 0.56089361E-01 0.47219787E-01 0.41885933E-01 0.35111390E-01 0.31107755E-01 + 0.25970706E-01 0.22978284E-01 0.19110452E-01 0.16882790E-01 0.13990595E-01 + 0.12338711E-01 0.10190382E-01 0.89703074E-02 0.73846087E-02 0.64871390E-02 + 0.53237276E-02 0.46664051E-02 0.38176521E-02 0.33384170E-02 0.27225258E-02 + 0.23747991E-02 0.19301522E-02 0.16791200E-02 0.13596641E-02 0.11793925E-02 + 0.95095815E-03 0.82222368E-03 0.65963187E-03 0.56826767E-03 0.45307598E-03 + 0.38868782E-03 0.30745252E-03 0.26246447E-03 0.20543989E-03 0.17436189E-03 + 0.13450537E-03 0.11338598E-03 0.85632951E-04 0.71646578E-04 0.52365670E-04 + 0.43502901E-04 0.30097285E-04 0.24938063E-04 0.15556056E-04 0.13104831E-04 + 0.64274498E-05 0.59897065E-05 0.10770242E-05 0.21730289E-05 -0.16453622E-05 + 82 + 0.10000000E+01 0.27185808E+01 0.41081104E+01 0.51938453E+01 0.60779182E+01 + 0.67788180E+01 0.73158301E+01 0.76946430E+01 0.79169221E+01 0.80032898E+01 + 0.79530318E+01 0.77990050E+01 0.75399549E+01 0.72122093E+01 0.68157163E+01 + 0.63823681E+01 0.59150212E+01 0.54364246E+01 0.49527648E+01 0.44764803E+01 + 0.40161055E+01 0.35752386E+01 0.31630665E+01 0.27770831E+01 0.24255288E+01 + 0.21026078E+01 0.18146121E+01 0.15546575E+01 0.13267873E+01 0.11244117E+01 + 0.94956197E+00 0.79661240E+00 0.66609453E+00 0.55353318E+00 0.45852157E+00 + 0.37765835E+00 0.31007046E+00 0.25324870E+00 0.20618425E+00 0.16706272E+00 + 0.13493404E+00 0.10850533E+00 0.86975955E-01 0.69436057E-01 0.55258355E-01 + 0.43810364E-01 0.34625805E-01 0.27270745E-01 0.21412287E-01 0.16756906E-01 + 0.13074476E-01 0.10169406E-01 0.78868074E-02 0.60983474E-02 0.47021234E-02 + 0.36152328E-02 0.27719536E-02 0.21195495E-02 0.16163787E-02 0.12293947E-02 + 0.93263501E-03 0.70569051E-03 0.53261256E-03 0.40097272E-03 0.30110710E-03 + 0.22554983E-03 0.16851898E-03 0.12558919E-03 0.93341130E-04 0.69186339E-04 + 0.51123595E-04 0.37659463E-04 0.27632872E-04 0.20194871E-04 0.14676044E-04 + 0.10602127E-04 0.75881080E-05 0.53749637E-05 0.37404398E-05 0.25476885E-05 + 0.16667150E-05 0.10291463E-05 0.55689585E-06 + 70 + 0.10000000E+01 0.26207136E+01 0.38025827E+01 0.45309750E+01 0.50044423E+01 + 0.52794676E+01 0.54175817E+01 0.54468828E+01 0.53771415E+01 0.52347044E+01 + 0.50110274E+01 0.47469560E+01 0.44213725E+01 0.40859532E+01 0.37135650E+01 + 0.33541648E+01 0.29828761E+01 0.26372740E+01 0.23007494E+01 0.19938050E+01 + 0.17102157E+01 0.14542766E+01 0.12289272E+01 0.10264687E+01 0.85595900E+00 + 0.70293496E+00 0.57920022E+00 0.46811492E+00 0.38152050E+00 0.30376272E+00 + 0.24506223E+00 0.19241246E+00 0.15373484E+00 0.11915959E+00 0.94319703E-01 + 0.72247320E-01 0.56663750E-01 0.42937889E-01 0.33371144E-01 0.25041116E-01 + 0.19286288E-01 0.14344175E-01 0.10948398E-01 0.80774831E-02 0.61102201E-02 + 0.44749346E-02 0.33551908E-02 0.24406585E-02 0.18140655E-02 0.13113230E-02 + 0.96640259E-03 0.69445509E-03 0.50757433E-03 0.36269262E-03 0.26297613E-03 + 0.18689560E-03 0.13446606E-03 0.95060728E-04 0.67880271E-04 0.47738653E-04 + 0.33835725E-04 0.23671735E-04 0.16649263E-04 0.11584662E-04 0.80778131E-05 + 0.55863441E-05 0.38517531E-05 0.26428653E-05 0.17902398E-05 0.12131800E-05 + 0.79413202E-06 + 59 + 0.10000000E+01 0.26984444E+01 0.39577857E+01 0.47655383E+01 0.52286067E+01 + 0.54243215E+01 0.54169593E+01 0.52602986E+01 0.49878184E+01 0.46421077E+01 + 0.42381014E+01 0.38144135E+01 0.33744918E+01 0.29501579E+01 0.25389906E+01 + 0.21622331E+01 0.18157410E+01 0.15094481E+01 0.12399312E+01 0.10079390E+01 + 0.81169492E+00 0.64615991E+00 0.51110551E+00 0.39895817E+00 0.31048015E+00 + 0.23791577E+00 0.18242588E+00 0.13737668E+00 0.10390970E+00 0.76976721E-01 + 0.57492915E-01 0.41939020E-01 0.30955214E-01 0.22256250E-01 0.16244385E-01 + 0.11522345E-01 0.83203206E-02 0.58276455E-02 0.41648646E-02 0.28830566E-02 + 0.20398136E-02 0.13967200E-02 0.97851758E-03 0.66328539E-03 0.46020972E-03 + 0.30904475E-03 0.21239139E-03 0.14139302E-03 0.96263836E-04 0.63568097E-04 + 0.42879433E-04 0.28101770E-04 0.18782689E-04 0.12221672E-04 0.80938657E-05 + 0.52303203E-05 0.34307164E-05 0.22015386E-05 0.14282453E-05 0.90934118E-06 + 54 + 0.10000000E+01 0.27518324E+01 0.40826766E+01 0.49666443E+01 0.54657251E+01 + 0.56509345E+01 0.55893227E+01 0.53447267E+01 0.49681901E+01 0.45110020E+01 + 0.40074125E+01 0.34944968E+01 0.29917724E+01 0.25212146E+01 0.20909934E+01 + 0.17099558E+01 0.13789176E+01 0.10976201E+01 0.86313934E+00 0.67040480E+00 + 0.51532758E+00 0.39134777E+00 0.29465010E+00 0.21915889E+00 0.16190227E+00 + 0.11812122E+00 0.85747136E-01 0.61445153E-01 0.43887043E-01 0.30924645E-01 + 0.21756721E-01 0.15091015E-01 0.10468024E-01 0.71541878E-02 0.48969428E-02 + 0.33004264E-02 0.22308241E-02 0.14839124E-02 0.99107030E-03 0.65112912E-03 + 0.42993112E-03 0.27917627E-03 0.18232656E-03 0.11709015E-03 0.75667404E-04 + 0.48086205E-04 0.30759402E-04 0.19353301E-04 0.12257510E-04 0.76389378E-05 + 0.47910905E-05 0.29582612E-05 0.18370232E-05 0.11236394E-05 0.69007502E-06 + 49 + 0.10000000E+01 0.27993168E+01 0.42055943E+01 0.51613267E+01 0.56962519E+01 + 0.58692262E+01 0.57510062E+01 0.54157757E+01 0.49336981E+01 0.43674930E+01 + 0.37690694E+01 0.31786316E+01 0.26248709E+01 0.21257240E+01 0.16906591E+01 + 0.13219375E+01 0.10173498E+01 0.77117203E+00 0.57634986E+00 0.42490498E+00 + 0.30928688E+00 0.22234836E+00 0.15800777E+00 0.11101224E+00 0.77172931E-01 + 0.53086648E-01 0.36163857E-01 0.24395840E-01 0.16309584E-01 0.10804497E-01 + 0.70978622E-02 0.46231020E-02 0.29877294E-02 0.19153653E-02 0.12189192E-02 + 0.76983287E-03 0.48285491E-03 0.30068374E-03 0.18602231E-03 0.11430068E-03 + 0.69796800E-04 0.42343436E-04 0.25536161E-04 0.15303746E-04 0.91188374E-05 + 0.54003270E-05 0.31799349E-05 0.18609599E-05 0.10825654E-05 0.62556558E-06 + 44 + 0.10000000E+01 0.27601309E+01 0.40997270E+01 0.49508020E+01 0.53567815E+01 + 0.53912050E+01 0.51408225E+01 0.46936755E+01 0.41310614E+01 0.35211732E+01 + 0.29167500E+01 0.23542104E+01 0.18555766E+01 0.14307665E+01 0.10809227E+01 + 0.80116337E+00 0.58326721E+00 0.41751488E+00 0.29413586E+00 0.20410191E+00 + 0.13960705E+00 0.94192788E-01 0.62727698E-01 0.41254746E-01 0.26810119E-01 + 0.17224180E-01 0.10944497E-01 0.68809135E-02 0.42821670E-02 0.26387629E-02 + 0.16106732E-02 0.97413111E-03 0.58393148E-03 0.34702196E-03 0.20451124E-03 + 0.11954832E-03 0.69331993E-04 0.39899894E-04 0.22789468E-04 0.12920469E-04 + 0.72717986E-05 0.40628107E-05 0.22531284E-05 0.12399329E-05 0.67675727E-06 + 40 + 0.10000000E+01 0.26751564E+01 0.38833980E+01 0.45667238E+01 0.48007301E+01 + 0.46815651E+01 0.43128543E+01 0.37925214E+01 0.32050269E+01 0.26151735E+01 + 0.20678240E+01 0.15887769E+01 0.11890114E+01 0.86835904E+00 0.61995933E+00 + 0.43329699E+00 0.29686352E+00 0.19959618E+00 0.13183925E+00 0.85628462E-01 + 0.54734254E-01 0.34457573E-01 0.21380383E-01 0.13083308E-01 0.79006043E-02 + 0.47105331E-02 0.27744395E-02 0.16149926E-02 0.92950398E-03 0.52915875E-03 + 0.29808665E-03 0.16621379E-03 0.91770449E-04 0.50185030E-04 0.27189324E-04 + 0.14597259E-04 0.77673098E-05 0.40967189E-05 0.21416773E-05 0.11094675E-05 + 0.56917852E-06 + ! --------------------- + cucc00 + 0.14240641E-01 0.82831250E-01 0.43189684E-01 0.40555888E-01 0.41522494E-01 + 0.52543445E-01 0.80840563E-01 0.98941852E-01 + 0.20469854E+00 0.16895939E+00 0.19847567E+00 0.14004940E+00 0.92998300E-01 + 0.40598591E-01 0.32517490E-01 0.46190542E-01 + 0.17692912E+00 0.12200090E+00 0.12965171E+00 0.13638127E+00 0.14250205E+00 + 0.15037252E+00 0.16470355E+00 0.18344304E+00 + 45 + 0.10000000E+01 0.22552155E+01 0.31666886E+01 0.33403765E+01 0.35589553E+01 + 0.35975497E+01 0.36550199E+01 0.37159477E+01 0.36853753E+01 0.36878600E+01 + 0.35280896E+01 0.34311509E+01 0.31391408E+01 0.29478993E+01 0.25765210E+01 + 0.23202219E+01 0.19470244E+01 0.16644413E+01 0.13544076E+01 0.10838103E+01 + 0.86759433E+00 0.63836873E+00 0.51199200E+00 0.33913859E+00 0.27843152E+00 + 0.16214456E+00 0.13953461E+00 0.69652848E-01 0.64415287E-01 0.26852891E-01 + 0.27372244E-01 0.92834875E-02 0.10694978E-01 0.28762178E-02 0.38373906E-02 + 0.79803802E-03 0.12626084E-02 0.19810295E-03 0.38041605E-03 0.43933690E-04 + 0.10480811E-03 0.86933366E-05 0.26363317E-04 0.15430933E-05 0.60369123E-05 + 0.26087471E-06 + 32 + 0.10000000E+01 0.26293570E+01 0.37360517E+01 0.43373355E+01 0.45582021E+01 + 0.44814218E+01 0.41661143E+01 0.37003750E+01 0.31203170E+01 0.25193552E+01 + 0.19287051E+01 0.14082279E+01 0.97654533E+00 0.64084951E+00 0.40219450E+00 + 0.23623237E+00 0.13428380E+00 0.70486271E-01 0.36351295E-01 0.17072508E-01 + 0.80018933E-02 0.33749802E-02 0.14394630E-02 0.54835814E-03 0.21299435E-03 + 0.73800161E-04 0.26123409E-04 0.82935083E-05 0.26784871E-05 0.78454022E-06 + 0.23162865E-06 0.63067058E-07 0.17033746E-07 + 32 + 0.10000000E+01 0.26073221E+01 0.36461091E+01 0.40911125E+01 0.40903552E+01 + 0.37586072E+01 0.32087805E+01 0.25701316E+01 0.19208908E+01 0.13458204E+01 + 0.88259521E+00 0.53714054E+00 0.30951408E+00 0.16265375E+00 0.82661973E-01 + 0.37451053E-01 0.16864077E-01 0.66130716E-02 0.26473239E-02 0.90702544E-03 + 0.32314381E-03 0.98046431E-04 0.31078442E-04 0.84747033E-05 0.23916008E-05 + 0.59378823E-06 0.14970682E-06 0.34217337E-07 0.76997607E-08 0.16872098E-08 + 0.25974877E-09 0.10755908E-09 -0.75961033E-10 + 32 + 0.10000000E+01 0.25936857E+01 0.35317013E+01 0.37915601E+01 0.35470680E+01 + 0.29732740E+01 0.22621434E+01 0.15655562E+01 0.99115322E+00 0.56892192E+00 + 0.30118921E+00 0.14361951E+00 0.63901104E-01 0.25500668E-01 0.96007958E-02 + 0.32477257E-02 0.10431530E-02 0.30371539E-03 0.84060860E-04 0.21375730E-04 + 0.51605613E-05 0.11607155E-05 0.24773849E-06 0.49839595E-07 0.95100601E-08 + 0.17399983E-08 0.27884546E-09 0.58885889E-10 -0.15671423E-10 0.91134492E-11 + -0.28957418E-10 0.21364407E-11 -0.38688394E-10 + 32 + 0.10000000E+01 0.25742061E+01 0.34217995E+01 0.35290484E+01 0.31143043E+01 + 0.24128405E+01 0.16666122E+01 0.10250749E+01 0.56788001E+00 0.28056949E+00 + 0.12590175E+00 0.50567042E-01 0.18593791E-01 0.61702448E-02 0.18867544E-02 + 0.52668166E-03 0.13624002E-03 0.32555822E-04 0.72525248E-05 0.15079427E-05 + 0.29423328E-06 0.54035296E-07 0.93637943E-08 0.15395616E-08 0.22848410E-09 + 0.34127022E-10 -0.80599531E-11 -0.10530386E-11 -0.14068940E-10 -0.22387128E-11 + -0.16241571E-10 -0.47919111E-11 -0.21298059E-10 + 32 + 0.10000000E+01 0.25442390E+01 0.32739398E+01 0.31986740E+01 0.26087772E+01 + 0.18262037E+01 0.11152372E+01 0.59627314E+00 0.28180037E+00 0.11784856E+00 + 0.43999830E-01 0.14704342E-01 0.44331878E-02 0.12110491E-02 0.30174557E-03 + 0.68925483E-04 0.14514234E-04 0.28315951E-05 0.51421521E-06 0.87298179E-07 + 0.13905638E-07 0.20832663E-08 0.28917585E-09 0.34324427E-10 -0.24959925E-11 + -0.52145680E-11 -0.80069366E-11 -0.62145540E-11 -0.86910679E-11 -0.67818981E-11 + -0.95883182E-11 -0.79259715E-11 -0.11662283E-10 + 32 + 0.10000000E+01 0.24634192E+01 0.30439862E+01 0.28048160E+01 0.21202822E+01 + 0.13569339E+01 0.74699944E+00 0.35594541E+00 0.14794961E+00 0.53869599E-01 + 0.17312399E-01 0.49396805E-02 0.12608399E-02 0.28984603E-03 0.60430939E-04 + 0.11501141E-04 0.20103495E-05 0.32455880E-06 0.48642924E-07 0.67968542E-08 + 0.88542564E-09 0.10464439E-09 0.69560211E-11 -0.39978129E-11 -0.59904198E-11 + -0.56867869E-11 -0.65244093E-11 -0.61099741E-11 -0.70563179E-11 -0.66588630E-11 + -0.77150318E-11 -0.73688136E-11 -0.87548713E-11 + 32 + 0.10000000E+01 0.23463529E+01 0.27651174E+01 0.23936850E+01 0.16803914E+01 + 0.98548197E+00 0.49026106E+00 0.20735642E+00 0.75274298E-01 0.23530217E-01 + 0.64050459E-02 0.15293283E-02 0.32365993E-03 0.61238880E-04 0.10450356E-04 + 0.16210841E-05 0.23023980E-06 0.30132684E-07 0.36519326E-08 0.40946672E-09 + 0.38987090E-10 0.10081259E-12 -0.47533696E-11 -0.44854156E-11 -0.54467701E-11 + -0.47513064E-11 -0.57938603E-11 -0.51071456E-11 -0.62930915E-11 -0.55963789E-11 + -0.68792599E-11 -0.61095484E-11 -0.74954414E-11 + ! --------------------- + cucp00 + 0.50883907E-02 0.34860550E-01 0.16073037E-01 0.14982079E-01 0.15436098E-01 + 0.20461448E-01 0.35235769E-01 0.45913434E-01 + 0.14661267E+00 0.81707748E-01 0.69409921E-01 0.41228300E-01 0.25140294E-01 + 0.10539509E-01 0.94485116E-02 0.14815020E-01 + 0.14955852E+00 0.14476534E+00 0.16126890E+00 0.17903744E+00 0.19177538E+00 + 0.20648899E+00 0.22656251E+00 0.24987021E+00 + 32 + 0.10000000E+01 0.24476541E+01 0.34556823E+01 0.38591054E+01 0.40309742E+01 + 0.39747627E+01 0.37514290E+01 0.34751856E+01 0.30312430E+01 0.26221587E+01 + 0.20971332E+01 0.16539813E+01 0.12085992E+01 0.84244790E+00 0.56859955E+00 + 0.33800795E+00 0.21608570E+00 0.10542284E+00 0.66055289E-01 0.25488249E-01 + 0.16211893E-01 0.48101953E-02 0.31886718E-02 0.72095879E-03 0.50162279E-03 + 0.88224766E-04 0.63052862E-04 0.91136638E-05 0.63416222E-05 0.81713080E-06 + 0.51227845E-06 0.65069591E-07 0.32753150E-07 + 32 + 0.10000000E+01 0.25462938E+01 0.34042459E+01 0.35938618E+01 0.32896810E+01 + 0.26801842E+01 0.19439867E+01 0.12580057E+01 0.72630700E+00 0.36778697E+00 + 0.16894279E+00 0.66914233E-01 0.24591572E-01 0.77749735E-02 0.23078587E-02 + 0.59961078E-03 0.14607242E-03 0.31988759E-04 0.65435227E-05 0.12313417E-05 + 0.21669824E-06 0.35631606E-07 0.54907016E-08 0.80909741E-09 0.90943965E-10 + 0.20656364E-10 -0.19674933E-10 0.69220377E-11 -0.23041335E-10 0.67734848E-11 + -0.26071223E-10 0.40023997E-11 -0.33295718E-10 + 32 + 0.10000000E+01 0.24699836E+01 0.31427875E+01 0.30387814E+01 0.24656132E+01 + 0.16972341E+01 0.10105098E+01 0.50744484E+00 0.22531371E+00 0.83588848E-01 + 0.27973173E-01 0.79514743E-02 0.20489306E-02 0.46363228E-03 0.95306962E-04 + 0.17702166E-04 0.30129765E-05 0.47204162E-06 0.68553766E-07 0.92850973E-08 + 0.11645066E-08 0.14247744E-09 0.16959121E-11 0.39545493E-11 -0.15055002E-10 + 0.26106818E-11 -0.16335371E-10 0.28394151E-11 -0.17563892E-10 0.29457339E-11 + -0.18931690E-10 0.27759886E-11 -0.21031860E-10 + 32 + 0.10000000E+01 0.23819343E+01 0.28160249E+01 0.24093730E+01 0.16553257E+01 + 0.91301395E+00 0.42355623E+00 0.16015255E+00 0.51870494E-01 0.14115745E-01 + 0.33310236E-02 0.68382356E-03 0.12411879E-03 0.20119084E-04 0.29433574E-05 + 0.39211764E-06 0.47935323E-07 0.54134898E-08 0.56210869E-09 0.54002331E-10 + -0.18136951E-11 -0.14715551E-11 -0.75290412E-11 -0.19643031E-11 -0.80547032E-11 + -0.19789049E-11 -0.86088747E-11 -0.21286823E-11 -0.93256211E-11 -0.24220492E-11 + -0.10128079E-10 -0.27093612E-11 -0.10844816E-10 + 32 + 0.10000000E+01 0.23119944E+01 0.25750875E+01 0.19944322E+01 0.12080539E+01 + 0.57400874E+00 0.22456164E+00 0.71381387E-01 0.19002776E-01 0.42675501E-02 + 0.82348140E-03 0.13846323E-03 0.20568762E-04 0.27317135E-05 0.32768894E-06 + 0.35815057E-07 0.35897066E-08 0.33098933E-09 0.24398941E-10 -0.12000669E-12 + -0.47077338E-11 -0.27305798E-11 -0.53145961E-11 -0.28670280E-11 -0.56032863E-11 + -0.29510601E-11 -0.59621995E-11 -0.31825427E-11 -0.64928418E-11 -0.35558376E-11 + -0.71048154E-11 -0.39167033E-11 -0.75900159E-11 + 32 + 0.10000000E+01 0.22239205E+01 0.22895718E+01 0.15849848E+01 0.83928906E+00 + 0.34648825E+00 0.11469828E+00 0.30671663E-01 0.67615733E-02 0.12516944E-02 + 0.19820287E-03 0.27291795E-04 0.33150070E-05 0.35954138E-06 0.35176441E-07 + 0.31301042E-08 0.25301328E-09 0.17042174E-10 -0.17150291E-11 -0.25581224E-11 + -0.35461230E-11 -0.29850636E-11 -0.38536633E-11 -0.31305146E-11 -0.40150847E-11 + -0.32387775E-11 -0.42501514E-11 -0.34969608E-11 -0.46610680E-11 -0.38943155E-11 + -0.51450099E-11 -0.42750377E-11 -0.55039770E-11 + 32 + 0.10000000E+01 0.20853744E+01 0.19844311E+01 0.12703872E+01 0.61677646E+00 + 0.22950377E+00 0.66631805E-01 0.15290872E-01 0.28449153E-02 0.43942396E-03 + 0.57591138E-04 0.65257664E-05 0.64949427E-06 0.57530583E-07 0.45835918E-08 + 0.33028507E-09 0.19781959E-10 -0.55046088E-12 -0.25579117E-11 -0.22914299E-11 + -0.30709486E-11 -0.25926009E-11 -0.33264340E-11 -0.27077541E-11 -0.34515334E-11 + -0.27916772E-11 -0.36484153E-11 -0.30181611E-11 -0.40131489E-11 -0.33740743E-11 + -0.44422933E-11 -0.37097391E-11 -0.47560447E-11 + 32 + 0.10000000E+01 0.19173170E+01 0.16932512E+01 0.10067440E+01 0.44886963E+00 + 0.14717345E+00 0.36513148E-01 0.69784248E-02 0.10651638E-02 0.13376058E-03 + 0.14178444E-04 0.12955360E-05 0.10380996E-06 0.73962690E-08 0.47230342E-09 + 0.26375353E-10 -0.58367804E-12 -0.13734245E-11 -0.24563470E-11 -0.17823885E-11 + -0.28670690E-11 -0.20198359E-11 -0.31033088E-11 -0.20921507E-11 -0.32184672E-11 + -0.21364681E-11 -0.34018820E-11 -0.23128340E-11 -0.37455365E-11 -0.26084230E-11 + -0.41463508E-11 -0.28826046E-11 -0.44393558E-11 + ! --------------------- + cuma00 + 0.12510809E+00 0.46318161E+00 0.33848292E+00 0.32717855E+00 0.33122039E+00 + 0.37493762E+00 0.44831438E+00 0.48425387E+00 + 0.79037045E+00 0.48769634E+00 0.67529138E+00 0.81348902E+00 0.79467309E+00 + 0.47418693E+00 0.32013266E+00 0.37026873E+00 + 0.12521919E+00 0.78188841E-01 0.11567018E+00 0.10062012E+00 0.89586490E-01 + 0.81268538E-01 0.88557230E-01 0.10326628E+00 + 90 + 0.10000000E+01 0.25027807E+01 0.37561800E+01 0.44079139E+01 0.51761595E+01 + 0.57270612E+01 0.63223663E+01 0.68616084E+01 0.73661214E+01 0.78004266E+01 + 0.82603983E+01 0.85606109E+01 0.89305729E+01 0.91262602E+01 0.93591957E+01 + 0.94721929E+01 0.95565787E+01 0.95896720E+01 0.95420825E+01 0.94920152E+01 + 0.93362015E+01 0.92045444E+01 0.89622773E+01 0.87568605E+01 0.84474851E+01 + 0.81797851E+01 0.78217959E+01 0.75048033E+01 0.71163690E+01 0.67636758E+01 + 0.63620801E+01 0.59874954E+01 0.55882770E+01 0.52054193E+01 0.48216669E+01 + 0.44433918E+01 0.40853346E+01 0.37230766E+01 0.33979884E+01 0.30611370E+01 + 0.27734876E+01 0.24689414E+01 0.22206933E+01 0.19526888E+01 0.17436682E+01 + 0.15138885E+01 0.13422000E+01 0.11501065E+01 0.10125748E+01 0.85587992E+00 + 0.74848880E+00 0.62369010E+00 0.54199252E+00 0.44489946E+00 0.38438240E+00 + 0.31056998E+00 0.26694012E+00 0.21209761E+00 0.18149252E+00 0.14166938E+00 + 0.12078508E+00 0.92528792E-01 0.78665346E-01 0.59079849E-01 0.50127077E-01 + 0.36871126E-01 0.31245341E-01 0.22487171E-01 0.19045704E-01 0.13399704E-01 + 0.11349814E-01 0.77992824E-02 0.66094748E-02 0.44321361E-02 0.37587590E-02 + 0.24571321E-02 0.20850813E-02 0.13268020E-02 0.11258233E-02 0.69552119E-03 + 0.58915469E-03 0.35142800E-03 0.29612436E-03 0.16836504E-03 0.13998881E-03 + 0.73299891E-04 0.58840654E-04 0.25135913E-04 0.17753672E-04 0.13730584E-05 + -0.24416750E-05 + 62 + 0.10000000E+01 0.27611918E+01 0.42688160E+01 0.55444853E+01 0.66694367E+01 + 0.76391501E+01 0.84590626E+01 0.91151570E+01 0.96069418E+01 0.99370138E+01 + 0.10106858E+02 0.10133680E+02 0.10017583E+02 0.97858032E+01 0.94371694E+01 + 0.90037838E+01 0.84859689E+01 0.79151341E+01 0.72957913E+01 0.66537744E+01 + 0.59986650E+01 0.53476733E+01 0.47141470E+01 0.41059615E+01 0.35375073E+01 + 0.30086216E+01 0.25318734E+01 0.21015038E+01 0.17263415E+01 0.13976891E+01 + 0.11201093E+01 0.88418094E+00 0.69085870E+00 0.53148569E+00 0.40467404E+00 + 0.30330169E+00 0.22493100E+00 0.16419099E+00 0.11855216E+00 0.84259496E-01 + 0.59213357E-01 0.40966722E-01 0.28012785E-01 0.18861498E-01 0.12546865E-01 + 0.82202158E-02 0.53187452E-02 0.33901501E-02 0.21333629E-02 0.13227684E-02 + 0.80950182E-03 0.48820823E-03 0.29053565E-03 0.17041564E-03 0.98604222E-04 + 0.56234482E-04 0.31613795E-04 0.17507208E-04 0.95313093E-05 0.50933274E-05 + 0.26432432E-05 0.13196048E-05 0.59717598E-06 + 53 + 0.10000000E+01 0.26041081E+01 0.37917712E+01 0.45513250E+01 0.51201109E+01 + 0.55401929E+01 0.58721285E+01 0.61127680E+01 0.62691537E+01 0.63335869E+01 + 0.62964866E+01 0.61793053E+01 0.59532372E+01 0.56746233E+01 0.52990757E+01 + 0.49033472E+01 0.44396841E+01 0.39840147E+01 0.34987189E+01 0.30403991E+01 + 0.25904524E+01 0.21761220E+01 0.17994230E+01 0.14584201E+01 0.11708832E+01 + 0.91379417E+00 0.71261042E+00 0.53451879E+00 0.40506396E+00 0.29153885E+00 + 0.21476387E+00 0.14812045E+00 0.10608835E+00 0.70045491E-01 0.48777538E-01 + 0.30813583E-01 0.20857897E-01 0.12604667E-01 0.82898772E-02 0.47934567E-02 + 0.30609462E-02 0.16945627E-02 0.10497093E-02 0.55689970E-03 0.33429805E-03 + 0.17016953E-03 0.98868921E-04 0.48363874E-04 0.27157733E-04 0.12793586E-04 + 0.69271285E-05 0.31547534E-05 0.16358541E-05 0.72747982E-06 + 45 + 0.10000000E+01 0.27078274E+01 0.40081378E+01 0.48951617E+01 0.54778058E+01 + 0.58258127E+01 0.59919539E+01 0.60100402E+01 0.58995512E+01 0.56859120E+01 + 0.53713838E+01 0.49918086E+01 0.45417180E+01 0.40660351E+01 0.35585052E+01 + 0.30621080E+01 0.25737064E+01 0.21232260E+01 0.17114796E+01 0.13501454E+01 + 0.10426749E+01 0.78465649E+00 0.58018493E+00 0.41558690E+00 0.29413195E+00 + 0.20015129E+00 0.13558829E+00 0.87507850E-01 0.56749002E-01 0.34692116E-01 + 0.21541923E-01 0.12462792E-01 0.74113185E-02 0.40558956E-02 0.23100862E-02 + 0.11958891E-02 0.65230075E-03 0.31960561E-03 0.16689353E-03 0.77476688E-04 + 0.38708461E-04 0.17053287E-04 0.81446948E-05 0.34135399E-05 0.15563500E-05 + 0.62359203E-06 + 41 + 0.10000000E+01 0.27752576E+01 0.41735692E+01 0.51730360E+01 0.58233169E+01 + 0.61798667E+01 0.62898904E+01 0.61969282E+01 0.59346559E+01 0.55432366E+01 + 0.50493014E+01 0.44942490E+01 0.39014138E+01 0.33084396E+01 0.27342318E+01 + 0.22046904E+01 0.17313743E+01 0.13242186E+01 0.98632497E+00 0.71390733E+00 + 0.50355198E+00 0.34424143E+00 0.22967246E+00 0.14806401E+00 0.93370134E-01 + 0.56700142E-01 0.33780517E-01 0.19309911E-01 0.10866908E-01 0.58458186E-02 + 0.31074986E-02 0.15734180E-02 0.79012307E-03 0.37675972E-03 0.17876201E-03 + 0.80350719E-04 0.36029849E-04 0.15286006E-04 0.64801077E-05 0.25996636E-05 + 0.10425068E-05 0.39662112E-06 + 36 + 0.10000000E+01 0.28277652E+01 0.43134166E+01 0.53985605E+01 0.60930418E+01 + 0.64301464E+01 0.64537881E+01 0.62160174E+01 0.57724569E+01 0.51822717E+01 + 0.45030298E+01 0.37893590E+01 0.30881699E+01 0.24367814E+01 0.18611269E+01 + 0.13751351E+01 0.98270419E+00 0.67875053E+00 0.45312290E+00 0.29214715E+00 + 0.18197698E+00 0.10941756E+00 0.63548840E-01 0.35618392E-01 0.19284712E-01 + 0.10076260E-01 0.50870427E-02 0.24790374E-02 0.11677703E-02 0.53122792E-03 + 0.23371850E-03 0.99365295E-04 0.40883196E-04 0.16268378E-04 0.62698527E-05 + 0.23396727E-05 0.84672320E-06 + 33 + 0.10000000E+01 0.27962114E+01 0.42335472E+01 0.52379096E+01 0.58230304E+01 + 0.60265014E+01 0.59017354E+01 0.55139439E+01 0.49358866E+01 0.42424111E+01 + 0.35044683E+01 0.27829609E+01 0.21244154E+01 0.15584438E+01 0.10983262E+01 + 0.74335917E+00 0.48304369E+00 0.30128393E+00 0.18035423E+00 0.10360604E+00 + 0.57119443E-01 0.30223104E-01 0.15351422E-01 0.74867225E-02 0.35068928E-02 + 0.15782484E-02 0.68273005E-03 0.28400431E-03 0.11366751E-03 0.43792919E-04 + 0.16251326E-04 0.58123303E-05 0.20049314E-05 0.66762964E-06 + 32 + 0.10000000E+01 0.27207054E+01 0.40458662E+01 0.49041294E+01 0.53304238E+01 + 0.53768170E+01 0.51106004E+01 0.46107162E+01 0.39621529E+01 0.32478836E+01 + 0.25408649E+01 0.18967612E+01 0.13507302E+01 0.91713802E+00 0.59357478E+00 + 0.36602341E+00 0.21502583E+00 0.12031783E+00 0.64134793E-01 0.32568229E-01 + 0.15761563E-01 0.72714234E-02 0.31996639E-02 0.13435403E-02 0.53872801E-03 + 0.20640940E-03 0.75628413E-04 0.26519235E-04 0.89072033E-05 0.28680975E-05 + 0.88619829E-06 0.26303604E-06 0.75134420E-07 + ! ------------------------------------------------------ +ICECLOUD_TYPES + ! + 8 ! Number of channels for which optical parameters are stored + 0 ! Number of channels for which phase functions are stored + 128 ! Maximum number of Legendre coefficients + 23 ! Number of effective diameters + ! Effective diameters + 0.100000E+02 0.150000E+02 0.200000E+02 0.250000E+02 0.300000E+02 0.350000E+02 + 0.400000E+02 0.450000E+02 0.500000E+02 0.550000E+02 0.600000E+02 0.650000E+02 + 0.700000E+02 0.750000E+02 0.800000E+02 0.850000E+02 0.900000E+02 0.950000E+02 + 0.100000E+03 0.105000E+03 0.110000E+03 0.115000E+03 0.120000E+03 + ! ------------------------------------------------------ +ICECLOUD_PARAMETERS + ! + 0.42668887E+02 0.37600452E+02 0.33545962E+02 0.29695854E+02 0.26933981E+02 + 0.25017769E+02 0.22878902E+02 0.21310014E+02 0.19943612E+02 0.18703296E+02 + 0.17634836E+02 0.16643493E+02 0.15783165E+02 0.14930986E+02 0.14213423E+02 + 0.13436129E+02 0.12906592E+02 0.12314399E+02 0.11846513E+02 0.11249765E+02 + 0.10899560E+02 0.10465624E+02 0.99356298E+01 0.10037200E+03 0.78845553E+02 + 0.63812188E+02 0.51877503E+02 0.44110676E+02 0.39310360E+02 0.34084016E+02 + 0.30544701E+02 0.27660030E+02 0.25257510E+02 0.23224747E+02 0.21528379E+02 + 0.20054558E+02 0.18741472E+02 0.17607020E+02 0.16469276E+02 0.15695099E+02 + 0.14873602E+02 0.14181626E+02 0.13391855E+02 0.12947878E+02 0.12334201E+02 + 0.11745114E+02 0.77675858E+02 0.64941794E+02 0.54587947E+02 0.45486101E+02 + 0.39424474E+02 0.35515952E+02 0.31239271E+02 0.28275912E+02 0.25825693E+02 + 0.23747708E+02 0.21986434E+02 0.20479186E+02 0.19167835E+02 0.17967467E+02 + 0.16938293E+02 0.15878122E+02 0.15161906E+02 0.14388410E+02 0.13748848E+02 + 0.12997354E+02 0.12572630E+02 0.11996115E+02 0.11419154E+02 0.57310818E+02 + 0.50767124E+02 0.44368084E+02 0.38128703E+02 0.33791230E+02 0.30874957E+02 + 0.27651721E+02 0.25356453E+02 0.23420348E+02 0.21731116E+02 0.20295438E+02 + 0.19026010E+02 0.17915581E+02 0.16862378E+02 0.15970814E+02 0.15025647E+02 + 0.14386021E+02 0.13684702E+02 0.13119541E+02 0.12419757E+02 0.12017964E+02 + 0.11497734E+02 0.10945808E+02 0.55618532E+02 0.49664762E+02 0.43813106E+02 + 0.37795291E+02 0.33591321E+02 0.30745126E+02 0.27582592E+02 0.25321824E+02 + 0.23408859E+02 0.21734931E+02 0.20309183E+02 0.19048125E+02 0.17950402E+02 + 0.16902227E+02 0.16015099E+02 0.15073266E+02 0.14433506E+02 0.13736206E+02 + 0.13170796E+02 0.12470284E+02 0.12071996E+02 0.11551365E+02 0.10991234E+02 + 0.10534813E+03 0.80905388E+02 0.65068302E+02 0.52725700E+02 0.44704806E+02 + 0.39787970E+02 0.34397289E+02 0.30749641E+02 0.27778182E+02 0.25304665E+02 + 0.23225599E+02 0.21504719E+02 0.20004702E+02 0.18684793E+02 0.17544097E+02 + 0.16407308E+02 0.15632461E+02 0.14816952E+02 0.14116803E+02 0.13337449E+02 + 0.12903770E+02 0.12283321E+02 0.11707551E+02 0.15280610E+03 0.10580583E+03 + 0.80084176E+02 0.62396081E+02 0.51265312E+02 0.44745585E+02 0.37620378E+02 + 0.32976515E+02 0.29267423E+02 0.26309579E+02 0.23848810E+02 0.21931269E+02 + 0.20256563E+02 0.18857877E+02 0.17620741E+02 0.16436602E+02 0.15615743E+02 + 0.14775269E+02 0.14027883E+02 0.13243642E+02 0.12824137E+02 0.12163012E+02 + 0.11643219E+02 0.15502275E+03 0.10930576E+03 0.83135323E+02 0.64846359E+02 + 0.53284627E+02 0.46471334E+02 0.39034864E+02 0.34164831E+02 0.30279658E+02 + 0.27176850E+02 0.24603459E+02 0.22606203E+02 0.20867606E+02 0.19414265E+02 + 0.18137972E+02 0.16910444E+02 0.16063635E+02 0.15196071E+02 0.14424325E+02 + 0.13614677E+02 0.13179156E+02 0.12501947E+02 0.11951269E+02 + 0.31037416E+03 0.19707743E+03 0.14026010E+03 0.10560082E+03 0.84181477E+02 + 0.72074597E+02 0.58938494E+02 0.50586775E+02 0.44049753E+02 0.38984768E+02 + 0.34807923E+02 0.31653963E+02 0.28898049E+02 0.26673986E+02 0.24693427E+02 + 0.22862598E+02 0.21593077E+02 0.20327148E+02 0.19155973E+02 0.18033659E+02 + 0.17444804E+02 0.16438739E+02 0.15781553E+02 0.20093112E+03 0.13937272E+03 + 0.10423637E+03 0.79816485E+02 0.64213606E+02 0.55138148E+02 0.45364181E+02 + 0.39204098E+02 0.34477856E+02 0.30913404E+02 0.27989195E+02 0.25755565E+02 + 0.23772413E+02 0.22135498E+02 0.20679953E+02 0.19289210E+02 0.18323386E+02 + 0.17336398E+02 0.16456860E+02 0.15546630E+02 0.15045151E+02 0.14284286E+02 + 0.13673372E+02 0.21478675E+03 0.15349572E+03 0.11547454E+03 0.88676390E+02 + 0.71400493E+02 0.60890270E+02 0.49498207E+02 0.42200323E+02 0.36615551E+02 + 0.32514788E+02 0.29246063E+02 0.26863311E+02 0.24734662E+02 0.23005030E+02 + 0.21454205E+02 0.19984375E+02 0.18960590E+02 0.17927839E+02 0.16977400E+02 + 0.16038895E+02 0.15533619E+02 0.14710133E+02 0.14102089E+02 0.18861698E+03 + 0.14966710E+03 0.11581323E+03 0.90826148E+02 0.75137167E+02 0.65176148E+02 + 0.53950864E+02 0.46073098E+02 0.39635136E+02 0.34518047E+02 0.30486176E+02 + 0.27803153E+02 0.25484806E+02 0.23700463E+02 0.22073250E+02 0.20570871E+02 + 0.19510495E+02 0.18454267E+02 0.17469428E+02 0.16490438E+02 0.15982230E+02 + 0.15123686E+02 0.14515612E+02 0.12731909E+03 0.11779620E+03 0.96440355E+02 + 0.76373638E+02 0.64724595E+02 0.57840838E+02 0.50163435E+02 0.44591937E+02 + 0.39723405E+02 0.35175819E+02 0.31266198E+02 0.28103409E+02 0.25504979E+02 + 0.23508536E+02 0.21775664E+02 0.20215187E+02 0.19144946E+02 0.18082247E+02 + 0.17103811E+02 0.16098168E+02 0.15586457E+02 0.14743243E+02 0.14147219E+02 + 0.42742263E+02 0.43226612E+02 0.40450899E+02 0.36253340E+02 0.33090391E+02 + 0.30845306E+02 0.28357188E+02 0.26506839E+02 0.24887338E+02 0.23366775E+02 + 0.22018641E+02 0.20685920E+02 0.19522337E+02 0.18358807E+02 0.17392783E+02 + 0.16352853E+02 0.15657700E+02 0.14886488E+02 0.14279917E+02 0.13505991E+02 + 0.13056390E+02 0.12500119E+02 0.11852289E+02 0.92020798E+02 0.76504480E+02 + 0.63967841E+02 0.53226789E+02 0.46163613E+02 0.41678137E+02 0.36731682E+02 + 0.33291491E+02 0.30424751E+02 0.27951451E+02 0.25841078E+02 0.24013933E+02 + 0.22432180E+02 0.21000868E+02 0.19773316E+02 0.18527455E+02 0.17680087E+02 + 0.16782330E+02 0.16029717E+02 0.15145730E+02 0.14655234E+02 0.13978131E+02 + 0.13326153E+02 0.12275085E+03 0.94720484E+02 0.75696195E+02 0.61190442E+02 + 0.51804814E+02 0.46020743E+02 0.39684590E+02 0.35400946E+02 0.31927175E+02 + 0.29060510E+02 0.26664428E+02 0.24702211E+02 0.22990810E+02 0.21484150E+02 + 0.20180971E+02 0.18883235E+02 0.17995309E+02 0.17057610E+02 0.16259883E+02 + 0.15359531E+02 0.14865053E+02 0.14152260E+02 0.13482940E+02 + 0.15074388E+00 0.13636252E+00 0.12309649E+00 0.11157669E+00 0.10133657E+00 + 0.94512550E-01 0.84166216E-01 0.76206941E-01 0.68947987E-01 0.63145582E-01 + 0.57713096E-01 0.54626228E-01 0.51271355E-01 0.49613638E-01 0.47348387E-01 + 0.46060682E-01 0.44798844E-01 0.44091153E-01 0.42309647E-01 0.42370074E-01 + 0.42873033E-01 0.41411631E-01 0.43865592E-01 0.11630499E+00 0.99242373E-01 + 0.86564042E-01 0.76753385E-01 0.68319364E-01 0.62704821E-01 0.54200733E-01 + 0.47689870E-01 0.41878504E-01 0.37476591E-01 0.33588075E-01 0.31650594E-01 + 0.29536826E-01 0.28645720E-01 0.27321199E-01 0.26671308E-01 0.25961833E-01 + 0.25624010E-01 0.24590102E-01 0.24765758E-01 0.25070641E-01 0.24302475E-01 + 0.25809860E-01 0.12909397E+00 0.11443148E+00 0.10229660E+00 0.91568455E-01 + 0.82461866E-01 0.76271243E-01 0.66743482E-01 0.59108526E-01 0.52011859E-01 + 0.46391127E-01 0.41328315E-01 0.38718657E-01 0.35901244E-01 0.34643218E-01 + 0.32844780E-01 0.31883349E-01 0.30884431E-01 0.30361935E-01 0.28923115E-01 + 0.28969554E-01 0.29349478E-01 0.28168678E-01 0.29777536E-01 0.13042225E+00 + 0.11920481E+00 0.11094736E+00 0.10126555E+00 0.92559973E-01 0.86228571E-01 + 0.76962691E-01 0.69363178E-01 0.62028768E-01 0.55735778E-01 0.49714414E-01 + 0.46265905E-01 0.42691412E-01 0.40896020E-01 0.38546482E-01 0.37132348E-01 + 0.35786808E-01 0.34966249E-01 0.33123968E-01 0.32838990E-01 0.33112617E-01 + 0.31565996E-01 0.33135767E-01 0.12486908E+00 0.10973419E+00 0.10316441E+00 + 0.95728430E-01 0.88027764E-01 0.81708570E-01 0.72842560E-01 0.65663299E-01 + 0.59012605E-01 0.53340134E-01 0.47970086E-01 0.44598726E-01 0.41122375E-01 + 0.39160521E-01 0.36768139E-01 0.35203925E-01 0.33841127E-01 0.32933225E-01 + 0.31135500E-01 0.30611245E-01 0.30743433E-01 0.29218238E-01 0.30554565E-01 + 0.12789059E+00 0.99779239E-01 0.85315527E-01 0.75215580E-01 0.67581027E-01 + 0.61961670E-01 0.54519508E-01 0.48586270E-01 0.43227604E-01 0.38730541E-01 + 0.34870934E-01 0.32450192E-01 0.30159339E-01 0.28744587E-01 0.27198853E-01 + 0.26069742E-01 0.25159620E-01 0.24471844E-01 0.23395943E-01 0.22978436E-01 + 0.22956777E-01 0.22066530E-01 0.22775124E-01 0.15404795E+00 0.12361913E+00 + 0.10829719E+00 0.97860220E-01 0.89136154E-01 0.83049564E-01 0.74580395E-01 + 0.68031931E-01 0.62129842E-01 0.57353993E-01 0.53146385E-01 0.50712409E-01 + 0.48302341E-01 0.46957492E-01 0.45348040E-01 0.44265617E-01 0.43311193E-01 + 0.42641064E-01 0.41430168E-01 0.41113790E-01 0.41176486E-01 0.40153527E-01 + 0.40939239E-01 0.17071597E+00 0.13847799E+00 0.12084123E+00 0.10922094E+00 + 0.99420882E-01 0.92855785E-01 0.83419202E-01 0.76165233E-01 0.69597948E-01 + 0.64331509E-01 0.59657834E-01 0.57014765E-01 0.54345551E-01 0.52937583E-01 + 0.51162995E-01 0.50026692E-01 0.48979243E-01 0.48265041E-01 0.46900891E-01 + 0.46637720E-01 0.46765096E-01 0.45597440E-01 0.46799648E-01 + 128 + 0.10000000E+01 0.23834946E+01 0.33643094E+01 0.39770327E+01 0.44345508E+01 + 0.47567398E+01 0.49918837E+01 0.51361152E+01 0.51966372E+01 0.51866878E+01 + 0.51080422E+01 0.49792278E+01 0.48070167E+01 0.46026767E+01 0.43716420E+01 + 0.41205355E+01 0.38613681E+01 0.35903472E+01 0.33175710E+01 0.30396318E+01 + 0.27789763E+01 0.25219202E+01 0.22878011E+01 0.20690600E+01 0.18655045E+01 + 0.16763186E+01 0.15016715E+01 0.13405696E+01 0.11919512E+01 0.10552535E+01 + 0.93173431E+00 0.82082444E+00 0.72182056E+00 0.63418118E+00 0.55735266E+00 + 0.48979961E+00 0.43011599E+00 0.37664606E+00 0.32992202E+00 0.28785324E+00 + 0.25038655E+00 0.21729726E+00 0.18733853E+00 0.16076846E+00 0.13767821E+00 + 0.11737894E+00 0.10003751E+00 0.84983150E-01 0.72045576E-01 0.61015077E-01 + 0.51515209E-01 0.43593842E-01 0.37170301E-01 0.31921640E-01 0.27697734E-01 + 0.24287901E-01 0.21363855E-01 0.18996879E-01 0.16870465E-01 0.14894685E-01 + 0.13212501E-01 0.11565048E-01 0.99996486E-02 0.86632977E-02 0.73190521E-02 + 0.60702426E-02 0.49515931E-02 0.38118320E-02 0.28495305E-02 0.19764249E-02 + 0.10948409E-02 0.44482617E-03 -0.55046339E-04 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.24338089E+01 0.35342430E+01 0.43356041E+01 0.49969797E+01 + 0.55504900E+01 0.60398201E+01 0.64623677E+01 0.68131125E+01 0.70900884E+01 + 0.72938493E+01 0.74289643E+01 0.75038633E+01 0.75217054E+01 0.74900128E+01 + 0.74107222E+01 0.72934167E+01 0.71370509E+01 0.69493866E+01 0.67304007E+01 + 0.64942667E+01 0.62369493E+01 0.59716070E+01 0.56972751E+01 0.54178495E+01 + 0.51354186E+01 0.48535916E+01 0.45741807E+01 0.42997053E+01 0.40314146E+01 + 0.37722037E+01 0.35227135E+01 0.32844115E+01 0.30570938E+01 0.28418563E+01 + 0.26376083E+01 0.24443343E+01 0.22610913E+01 0.20891174E+01 0.19271774E+01 + 0.17756854E+01 0.16337807E+01 0.15006810E+01 0.13759520E+01 0.12601549E+01 + 0.11524726E+01 0.10532511E+01 0.96153643E+00 0.87682453E+00 0.79857446E+00 + 0.72638835E+00 0.66019171E+00 0.59974288E+00 0.54459112E+00 0.49421663E+00 + 0.44810916E+00 0.40590021E+00 0.36729053E+00 0.33195715E+00 0.29970817E+00 + 0.27026643E+00 0.24341355E+00 0.21896622E+00 0.19657578E+00 0.17609294E+00 + 0.15732875E+00 0.14025800E+00 0.12463237E+00 0.11041902E+00 0.97601120E-01 + 0.86144300E-01 0.75821362E-01 0.66643011E-01 0.58510084E-01 0.51287488E-01 + 0.44897715E-01 0.39194186E-01 0.34144228E-01 0.29661011E-01 0.25620749E-01 + 0.22038044E-01 0.18981784E-01 0.16313335E-01 0.14083045E-01 0.12060026E-01 + 0.10313500E-01 0.87704205E-02 0.73642076E-02 0.61843514E-02 0.50716594E-02 + 0.41433154E-02 0.33669132E-02 0.27359107E-02 0.23159284E-02 0.20327151E-02 + 0.18324442E-02 0.16718620E-02 0.15006243E-02 0.14060072E-02 0.12842564E-02 + 0.10633828E-02 0.98313098E-03 0.94478150E-03 0.86005378E-03 0.83569995E-03 + 0.96052754E-03 0.10586989E-02 0.10793177E-02 0.10858948E-02 0.10192264E-02 + 0.93180449E-03 0.82333231E-03 0.62038847E-03 0.46395839E-03 0.41475513E-03 + 0.40405296E-03 0.37735496E-03 0.42164189E-03 0.47609575E-03 0.46875341E-03 + 0.44086290E-03 0.41084308E-03 0.41545883E-03 0.30964052E-03 0.29394485E-03 + 0.29066825E-03 0.26937284E-03 0.30724357E-03 0.25884441E-03 + 0.10000000E+01 0.24886897E+01 0.36858904E+01 0.46251182E+01 0.54289940E+01 + 0.61334919E+01 0.67849985E+01 0.73881279E+01 0.79342875E+01 0.84165176E+01 + 0.88326098E+01 0.91816512E+01 0.94700846E+01 0.96980441E+01 0.98724143E+01 + 0.99929188E+01 0.10066635E+02 0.10092268E+02 0.10075024E+02 0.10015068E+02 + 0.99207805E+01 0.97912427E+01 0.96347333E+01 0.94522650E+01 0.92478948E+01 + 0.90242412E+01 0.87855049E+01 0.85343291E+01 0.82741299E+01 0.80070335E+01 + 0.77363773E+01 0.74637281E+01 0.71913640E+01 0.69200372E+01 0.66516450E+01 + 0.63861970E+01 0.61248149E+01 0.58676026E+01 0.56162423E+01 0.53705609E+01 + 0.51318924E+01 0.48994904E+01 0.46736258E+01 0.44540591E+01 0.42418680E+01 + 0.40368832E+01 0.38397493E+01 0.36499968E+01 0.34674920E+01 0.32919707E+01 + 0.31234273E+01 0.29621364E+01 0.28081591E+01 0.26611374E+01 0.25208873E+01 + 0.23869347E+01 0.22591095E+01 0.21372705E+01 0.20211708E+01 0.19105718E+01 + 0.18053577E+01 0.17053639E+01 0.16102251E+01 0.15197549E+01 0.14337260E+01 + 0.13520086E+01 0.12744802E+01 0.12008028E+01 0.11310062E+01 0.10648764E+01 + 0.10023969E+01 0.94328669E+00 0.88733068E+00 0.83458690E+00 0.78472074E+00 + 0.73763248E+00 0.69314957E+00 0.65113385E+00 0.61149842E+00 0.57413606E+00 + 0.53883976E+00 0.50553254E+00 0.47421445E+00 0.44471142E+00 0.41695344E+00 + 0.39080787E+00 0.36619758E+00 0.34302589E+00 0.32123249E+00 0.30071620E+00 + 0.28144263E+00 0.26334318E+00 0.24635745E+00 0.23041747E+00 0.21545047E+00 + 0.20154372E+00 0.18841227E+00 0.17603741E+00 0.16436685E+00 0.15343946E+00 + 0.14308205E+00 0.13337713E+00 0.12430706E+00 0.11582809E+00 0.10795463E+00 + 0.10056956E+00 0.93723946E-01 0.87340968E-01 0.81229601E-01 0.75459951E-01 + 0.70118682E-01 0.65088977E-01 0.60249007E-01 0.55754318E-01 0.51780968E-01 + 0.48010974E-01 0.44548887E-01 0.41412555E-01 0.38504580E-01 0.35736448E-01 + 0.33096673E-01 0.30612343E-01 0.28300893E-01 0.26191334E-01 0.24261438E-01 + 0.22555537E-01 0.20983223E-01 0.19537692E-01 0.18196366E-01 + 0.10000000E+01 0.25387557E+01 0.38126770E+01 0.48561625E+01 0.57691406E+01 + 0.65862407E+01 0.73554440E+01 0.80878416E+01 0.87754823E+01 0.94109176E+01 + 0.99897938E+01 0.10509891E+02 0.10974568E+02 0.11383909E+02 0.11742700E+02 + 0.12050971E+02 0.12313783E+02 0.12530132E+02 0.12703519E+02 0.12834015E+02 + 0.12927237E+02 0.12982464E+02 0.13005400E+02 0.12996661E+02 0.12959164E+02 + 0.12894870E+02 0.12806870E+02 0.12697209E+02 0.12568592E+02 0.12422860E+02 + 0.12262690E+02 0.12089537E+02 0.11905389E+02 0.11711247E+02 0.11508920E+02 + 0.11298891E+02 0.11082383E+02 0.10859911E+02 0.10633242E+02 0.10402763E+02 + 0.10169760E+02 0.99343289E+01 0.96972026E+01 0.94585878E+01 0.92197954E+01 + 0.89811914E+01 0.87436778E+01 0.85073520E+01 0.82725834E+01 0.80396027E+01 + 0.78088280E+01 0.75807642E+01 0.73559046E+01 0.71344992E+01 0.69166161E+01 + 0.67023022E+01 0.64917194E+01 0.62851025E+01 0.60825463E+01 0.58841263E+01 + 0.56900071E+01 0.55001999E+01 0.53147568E+01 0.51337441E+01 0.49571587E+01 + 0.47849382E+01 0.46170904E+01 0.44536656E+01 0.42945750E+01 0.41397886E+01 + 0.39893095E+01 0.38430749E+01 0.37010096E+01 0.35630527E+01 0.34291394E+01 + 0.32992193E+01 0.31732210E+01 0.30509892E+01 0.29324497E+01 0.28175932E+01 + 0.27063118E+01 0.25985098E+01 0.24942074E+01 0.23933390E+01 0.22957383E+01 + 0.22013840E+01 0.21102786E+01 0.20222915E+01 0.19373206E+01 0.18553215E+01 + 0.17761940E+01 0.16998562E+01 0.16263156E+01 0.15554866E+01 0.14872609E+01 + 0.14216371E+01 0.13585695E+01 0.12979813E+01 0.12397714E+01 0.11838599E+01 + 0.11301736E+01 0.10786498E+01 0.10292054E+01 0.98171208E+00 0.93614055E+00 + 0.89250466E+00 0.85070999E+00 0.81063773E+00 0.77225641E+00 0.73553519E+00 + 0.70044155E+00 0.66688771E+00 0.63476188E+00 0.60404800E+00 0.57471472E+00 + 0.54665540E+00 0.51982098E+00 0.49421780E+00 0.46973702E+00 0.44632229E+00 + 0.42395906E+00 0.40260319E+00 0.38222158E+00 0.36279687E+00 0.34428685E+00 + 0.32661163E+00 0.30975360E+00 0.29365972E+00 0.27824743E+00 + 0.10000000E+01 0.25826287E+01 0.39244648E+01 0.50606219E+01 0.60723699E+01 + 0.69932911E+01 0.78712323E+01 0.87217395E+01 0.95372348E+01 0.10309698E+02 + 0.11033422E+02 0.11704825E+02 0.12325208E+02 0.12894214E+02 0.13415153E+02 + 0.13888141E+02 0.14316752E+02 0.14700383E+02 0.15041374E+02 0.15339866E+02 + 0.15599417E+02 0.15819806E+02 0.16004760E+02 0.16154932E+02 0.16272508E+02 + 0.16359034E+02 0.16416869E+02 0.16447685E+02 0.16453639E+02 0.16436273E+02 + 0.16397731E+02 0.16339322E+02 0.16262763E+02 0.16169075E+02 0.16059849E+02 + 0.15935796E+02 0.15798177E+02 0.15647685E+02 0.15485868E+02 0.15313404E+02 + 0.15131516E+02 0.14940490E+02 0.14741238E+02 0.14534300E+02 0.14320921E+02 + 0.14101655E+02 0.13877549E+02 0.13649042E+02 0.13416665E+02 0.13180880E+02 + 0.12942364E+02 0.12701802E+02 0.12459816E+02 0.12216837E+02 0.11973212E+02 + 0.11729312E+02 0.11485563E+02 0.11242324E+02 0.10999917E+02 0.10758695E+02 + 0.10519014E+02 0.10281099E+02 0.10045165E+02 0.98114380E+01 0.95800895E+01 + 0.93512611E+01 0.91251430E+01 0.89018779E+01 0.86815752E+01 0.84643727E+01 + 0.82504531E+01 0.80398842E+01 0.78326093E+01 0.76286834E+01 0.74282156E+01 + 0.72311967E+01 0.70375808E+01 0.68473966E+01 0.66606958E+01 0.64774616E+01 + 0.62976599E+01 0.61213408E+01 0.59485143E+01 0.57791405E+01 0.56132047E+01 + 0.54507360E+01 0.52917457E+01 0.51362150E+01 0.49840849E+01 0.48353365E+01 + 0.46899691E+01 0.45479520E+01 0.44091765E+01 0.42735741E+01 0.41412054E+01 + 0.40121041E+01 0.38861734E+01 0.37633950E+01 0.36438006E+01 0.35273606E+01 + 0.34140342E+01 0.33037106E+01 0.31963582E+01 0.30919208E+01 0.29903375E+01 + 0.28915523E+01 0.27955374E+01 0.27022928E+01 0.26117932E+01 0.25240067E+01 + 0.24388685E+01 0.23563572E+01 0.22764338E+01 0.21989869E+01 0.21239059E+01 + 0.20511667E+01 0.19807510E+01 0.19125630E+01 0.18465011E+01 0.17825752E+01 + 0.17208037E+01 0.16610791E+01 0.16032799E+01 0.15473917E+01 0.14933947E+01 + 0.14411465E+01 0.13904945E+01 0.13414277E+01 0.12939608E+01 + 0.10000000E+01 0.26119450E+01 0.39974166E+01 0.51917596E+01 0.62668355E+01 + 0.72547815E+01 0.82023610E+01 0.91272830E+01 0.10022739E+02 0.10881119E+02 + 0.11696214E+02 0.12464162E+02 0.13185216E+02 0.13858954E+02 0.14487824E+02 + 0.15072053E+02 0.15614534E+02 0.16114917E+02 0.16575056E+02 0.16995046E+02 + 0.17377626E+02 0.17722609E+02 0.18032875E+02 0.18308894E+02 0.18552352E+02 + 0.18764500E+02 0.18947132E+02 0.19101589E+02 0.19229608E+02 0.19332496E+02 + 0.19411977E+02 0.19469112E+02 0.19505288E+02 0.19521436E+02 0.19518899E+02 + 0.19498310E+02 0.19460764E+02 0.19406949E+02 0.19338151E+02 0.19254970E+02 + 0.19158536E+02 0.19049269E+02 0.18927976E+02 0.18795161E+02 0.18651958E+02 + 0.18498982E+02 0.18337150E+02 0.18166909E+02 0.17988871E+02 0.17803601E+02 + 0.17611759E+02 0.17413979E+02 0.17210921E+02 0.17003142E+02 0.16791094E+02 + 0.16575160E+02 0.16355754E+02 0.16133387E+02 0.15908542E+02 0.15681578E+02 + 0.15452825E+02 0.15222667E+02 0.14991486E+02 0.14759542E+02 0.14527044E+02 + 0.14294255E+02 0.14061490E+02 0.13828966E+02 0.13596904E+02 0.13365563E+02 + 0.13135133E+02 0.12905778E+02 0.12677619E+02 0.12450739E+02 0.12225199E+02 + 0.12001139E+02 0.11778744E+02 0.11558127E+02 0.11339310E+02 0.11122422E+02 + 0.10907624E+02 0.10694993E+02 0.10484556E+02 0.10276384E+02 0.10070567E+02 + 0.98670966E+01 0.96660094E+01 0.94674480E+01 0.92714612E+01 0.90780115E+01 + 0.88871114E+01 0.86988774E+01 0.85133649E+01 0.83305241E+01 0.81503864E+01 + 0.79730264E+01 0.77984124E+01 0.76265051E+01 0.74573876E+01 0.72911192E+01 + 0.71276673E+01 0.69670078E+01 0.68091952E+01 0.66542407E+01 0.65020883E+01 + 0.63527432E+01 0.62062349E+01 0.60625517E+01 0.59216295E+01 0.57834737E+01 + 0.56480930E+01 0.55154716E+01 0.53855869E+01 0.52584305E+01 0.51340067E+01 + 0.50122922E+01 0.48932880E+01 0.47769634E+01 0.46632163E+01 0.45519922E+01 + 0.44433015E+01 0.43371413E+01 0.42334329E+01 0.41320538E+01 0.40329450E+01 + 0.39360895E+01 0.38414497E+01 0.37489874E+01 0.36586442E+01 + 0.10000000E+01 0.26564238E+01 0.41076777E+01 0.53891790E+01 0.65589141E+01 + 0.76473764E+01 0.86998187E+01 0.97372272E+01 0.10754132E+02 0.11743170E+02 + 0.12697457E+02 0.13612319E+02 0.14486574E+02 0.15319451E+02 0.16112177E+02 + 0.16865109E+02 0.17580175E+02 0.18257389E+02 0.18897838E+02 0.19501638E+02 + 0.20070248E+02 0.20603654E+02 0.21103435E+02 0.21569950E+02 0.22004193E+02 + 0.22407032E+02 0.22779617E+02 0.23122928E+02 0.23438108E+02 0.23726081E+02 + 0.23988052E+02 0.24224839E+02 0.24437387E+02 0.24626421E+02 0.24792924E+02 + 0.24937485E+02 0.25060935E+02 0.25163894E+02 0.25247334E+02 0.25311838E+02 + 0.25358284E+02 0.25387127E+02 0.25399076E+02 0.25394677E+02 0.25374838E+02 + 0.25340133E+02 0.25291338E+02 0.25228949E+02 0.25153569E+02 0.25065780E+02 + 0.24966210E+02 0.24855499E+02 0.24734295E+02 0.24603170E+02 0.24462643E+02 + 0.24313220E+02 0.24155404E+02 0.23989702E+02 0.23816615E+02 0.23636599E+02 + 0.23450127E+02 0.23257647E+02 0.23059568E+02 0.22856281E+02 0.22648159E+02 + 0.22435554E+02 0.22218801E+02 0.21998216E+02 0.21774176E+02 0.21547035E+02 + 0.21317098E+02 0.21084564E+02 0.20849620E+02 0.20612525E+02 0.20373513E+02 + 0.20132817E+02 0.19890628E+02 0.19647178E+02 0.19402701E+02 0.19157395E+02 + 0.18911437E+02 0.18665019E+02 0.18418339E+02 0.18171571E+02 0.17924856E+02 + 0.17678336E+02 0.17432169E+02 0.17186517E+02 0.16941560E+02 0.16697419E+02 + 0.16454165E+02 0.16211882E+02 0.15970694E+02 0.15730785E+02 0.15492280E+02 + 0.15255245E+02 0.15019768E+02 0.14786013E+02 0.14554082E+02 0.14324019E+02 + 0.14095871E+02 0.13869740E+02 0.13645728E+02 0.13423817E+02 0.13204025E+02 + 0.12986441E+02 0.12771220E+02 0.12558477E+02 0.12348230E+02 0.12140541E+02 + 0.11935431E+02 0.11732907E+02 0.11532995E+02 0.11335698E+02 0.11141071E+02 + 0.10949174E+02 0.10760034E+02 0.10573616E+02 0.10389938E+02 0.10209051E+02 + 0.10031015E+02 0.98558314E+01 0.96833973E+01 0.95136339E+01 0.93464907E+01 + 0.91819538E+01 0.90199807E+01 0.88605269E+01 0.87035978E+01 + 0.10000000E+01 0.26907983E+01 0.41912815E+01 0.55364863E+01 0.67761286E+01 + 0.79392582E+01 0.90694166E+01 0.10189467E+02 0.11295448E+02 0.12380579E+02 + 0.13437835E+02 0.14462181E+02 0.15451556E+02 0.16404977E+02 0.17322948E+02 + 0.18205918E+02 0.19055283E+02 0.19871235E+02 0.20654442E+02 0.21405037E+02 + 0.22123804E+02 0.22810716E+02 0.23466634E+02 0.24091768E+02 0.24686689E+02 + 0.25251995E+02 0.25788340E+02 0.26296413E+02 0.26776962E+02 0.27230638E+02 + 0.27658208E+02 0.28060283E+02 0.28437528E+02 0.28790488E+02 0.29119817E+02 + 0.29425970E+02 0.29709576E+02 0.29971174E+02 0.30211430E+02 0.30430800E+02 + 0.30629884E+02 0.30809085E+02 0.30968973E+02 0.31109992E+02 0.31232829E+02 + 0.31338005E+02 0.31426123E+02 0.31497603E+02 0.31552953E+02 0.31592682E+02 + 0.31617374E+02 0.31627569E+02 0.31623761E+02 0.31606448E+02 0.31576147E+02 + 0.31533333E+02 0.31478438E+02 0.31411906E+02 0.31334266E+02 0.31246008E+02 + 0.31147577E+02 0.31039376E+02 0.30921795E+02 0.30795266E+02 0.30660174E+02 + 0.30516867E+02 0.30365715E+02 0.30207071E+02 0.30041306E+02 0.29868808E+02 + 0.29689910E+02 0.29504900E+02 0.29314008E+02 0.29117498E+02 0.28915674E+02 + 0.28708828E+02 0.28497227E+02 0.28281111E+02 0.28060745E+02 0.27836421E+02 + 0.27608384E+02 0.27376884E+02 0.27142173E+02 0.26904487E+02 0.26664015E+02 + 0.26420949E+02 0.26175588E+02 0.25928196E+02 0.25678986E+02 0.25428074E+02 + 0.25175628E+02 0.24921885E+02 0.24667033E+02 0.24411216E+02 0.24154573E+02 + 0.23897306E+02 0.23639616E+02 0.23381661E+02 0.23123581E+02 0.22865523E+02 + 0.22607679E+02 0.22350191E+02 0.22093147E+02 0.21836638E+02 0.21580784E+02 + 0.21325745E+02 0.21071697E+02 0.20818775E+02 0.20567076E+02 0.20316653E+02 + 0.20067576E+02 0.19819977E+02 0.19573950E+02 0.19329570E+02 0.19086906E+02 + 0.18846046E+02 0.18607121E+02 0.18370199E+02 0.18135325E+02 0.17902589E+02 + 0.17672045E+02 0.17443710E+02 0.17217533E+02 0.16993476E+02 0.16771565E+02 + 0.16551826E+02 0.16334257E+02 0.16118879E+02 0.15905733E+02 + 0.10000000E+01 0.27221079E+01 0.42669901E+01 0.56689464E+01 0.69714186E+01 + 0.82021022E+01 0.94025489E+01 0.10596734E+02 0.11782207E+02 0.12952839E+02 + 0.14101683E+02 0.15223469E+02 0.16315577E+02 0.17376879E+02 0.18407376E+02 + 0.19407547E+02 0.20378433E+02 0.21320391E+02 0.22233854E+02 0.23118943E+02 + 0.23975960E+02 0.24804819E+02 0.25605909E+02 0.26379311E+02 0.27125211E+02 + 0.27843977E+02 0.28535914E+02 0.29201562E+02 0.29841373E+02 0.30455775E+02 + 0.31045253E+02 0.31610271E+02 0.32151226E+02 0.32668478E+02 0.33162437E+02 + 0.33633454E+02 0.34081919E+02 0.34508198E+02 0.34912693E+02 0.35295762E+02 + 0.35657813E+02 0.35999162E+02 0.36320224E+02 0.36621361E+02 0.36903059E+02 + 0.37165670E+02 0.37409618E+02 0.37635265E+02 0.37842984E+02 0.38033137E+02 + 0.38206146E+02 0.38362444E+02 0.38502454E+02 0.38626556E+02 0.38735111E+02 + 0.38828519E+02 0.38907199E+02 0.38971562E+02 0.39021993E+02 0.39058851E+02 + 0.39082510E+02 0.39093350E+02 0.39091757E+02 0.39078079E+02 0.39052665E+02 + 0.39015849E+02 0.38967974E+02 0.38909383E+02 0.38840399E+02 0.38761389E+02 + 0.38672674E+02 0.38574539E+02 0.38467230E+02 0.38350995E+02 0.38226110E+02 + 0.38092895E+02 0.37951674E+02 0.37802724E+02 0.37646309E+02 0.37482721E+02 + 0.37312277E+02 0.37135263E+02 0.36951924E+02 0.36762471E+02 0.36567165E+02 + 0.36366260E+02 0.36160043E+02 0.35948819E+02 0.35732846E+02 0.35512365E+02 + 0.35287583E+02 0.35058707E+02 0.34825981E+02 0.34589665E+02 0.34349951E+02 + 0.34106992E+02 0.33861004E+02 0.33612235E+02 0.33360932E+02 0.33107318E+02 + 0.32851549E+02 0.32593791E+02 0.32334228E+02 0.32073032E+02 0.31810352E+02 + 0.31546353E+02 0.31281272E+02 0.31015337E+02 0.30748711E+02 0.30481489E+02 + 0.30213788E+02 0.29945761E+02 0.29677584E+02 0.29409387E+02 0.29141279E+02 + 0.28873402E+02 0.28605881E+02 0.28338822E+02 0.28072355E+02 0.27806634E+02 + 0.27541776E+02 0.27277803E+02 0.27014744E+02 0.26752622E+02 0.26491507E+02 + 0.26231514E+02 0.25972703E+02 0.25715116E+02 0.25458808E+02 + 0.10000000E+01 0.27471724E+01 0.43271178E+01 0.57730880E+01 0.71249128E+01 + 0.84091764E+01 0.96652985E+01 0.10917381E+02 0.12164342E+02 0.13400713E+02 + 0.14619884E+02 0.15816582E+02 0.16987935E+02 0.18132727E+02 0.19250747E+02 + 0.20342465E+02 0.21408754E+02 0.22450050E+02 0.23466685E+02 0.24458761E+02 + 0.25426353E+02 0.26369303E+02 0.27287785E+02 0.28181795E+02 0.29051313E+02 + 0.29896557E+02 0.30717611E+02 0.31514890E+02 0.32288641E+02 0.33039182E+02 + 0.33766835E+02 0.34471989E+02 0.35154897E+02 0.35815792E+02 0.36454950E+02 + 0.37072631E+02 0.37669103E+02 0.38244631E+02 0.38799416E+02 0.39333701E+02 + 0.39847769E+02 0.40341861E+02 0.40816272E+02 0.41271255E+02 0.41707113E+02 + 0.42124118E+02 0.42522578E+02 0.42902767E+02 0.43264932E+02 0.43609336E+02 + 0.43936303E+02 0.44246122E+02 0.44539097E+02 0.44815467E+02 0.45075510E+02 + 0.45319545E+02 0.45547879E+02 0.45760792E+02 0.45958585E+02 0.46141554E+02 + 0.46309984E+02 0.46464139E+02 0.46604265E+02 0.46730661E+02 0.46843629E+02 + 0.46943448E+02 0.47030399E+02 0.47104730E+02 0.47166704E+02 0.47216637E+02 + 0.47254806E+02 0.47281424E+02 0.47296674E+02 0.47300770E+02 0.47293963E+02 + 0.47276528E+02 0.47248737E+02 0.47210822E+02 0.47163011E+02 0.47105566E+02 + 0.47038788E+02 0.46962932E+02 0.46878232E+02 0.46784908E+02 0.46683197E+02 + 0.46573332E+02 0.46455591E+02 0.46330261E+02 0.46197608E+02 0.46057873E+02 + 0.45911253E+02 0.45757918E+02 0.45598095E+02 0.45432027E+02 0.45259933E+02 + 0.45082057E+02 0.44898592E+02 0.44709756E+02 0.44515800E+02 0.44316948E+02 + 0.44113410E+02 0.43905391E+02 0.43693076E+02 0.43476640E+02 0.43256261E+02 + 0.43032120E+02 0.42804484E+02 0.42573571E+02 0.42339551E+02 0.42102579E+02 + 0.41862792E+02 0.41620394E+02 0.41375549E+02 0.41128440E+02 0.40879194E+02 + 0.40627975E+02 0.40374954E+02 0.40120289E+02 0.39864137E+02 0.39606621E+02 + 0.39347874E+02 0.39088005E+02 0.38827119E+02 0.38565301E+02 0.38302644E+02 + 0.38039253E+02 0.37775246E+02 0.37510731E+02 0.37245824E+02 + 0.10000000E+01 0.27705518E+01 0.43836258E+01 0.58713423E+01 0.72702054E+01 + 0.86057641E+01 0.99152124E+01 0.11222449E+02 0.12527542E+02 0.13825590E+02 + 0.15110355E+02 0.16376613E+02 0.17621314E+02 0.18843165E+02 0.20041823E+02 + 0.21217756E+02 0.22371681E+02 0.23504095E+02 0.24615240E+02 0.25705210E+02 + 0.26773869E+02 0.27821025E+02 0.28846632E+02 0.29850609E+02 0.30832788E+02 + 0.31793260E+02 0.32731968E+02 0.33649226E+02 0.34545143E+02 0.35419962E+02 + 0.36273871E+02 0.37107178E+02 0.37920033E+02 0.38712607E+02 0.39485072E+02 + 0.40237598E+02 0.40970322E+02 0.41683426E+02 0.42377006E+02 0.43051233E+02 + 0.43706261E+02 0.44342232E+02 0.44959332E+02 0.45557790E+02 0.46137836E+02 + 0.46699644E+02 0.47243402E+02 0.47769292E+02 0.48277479E+02 0.48768146E+02 + 0.49241525E+02 0.49697798E+02 0.50137128E+02 0.50559692E+02 0.50965707E+02 + 0.51355381E+02 0.51728948E+02 0.52086584E+02 0.52428528E+02 0.52755005E+02 + 0.53066227E+02 0.53362390E+02 0.53643672E+02 0.53910271E+02 0.54162410E+02 + 0.54400297E+02 0.54624145E+02 0.54834158E+02 0.55030540E+02 0.55213493E+02 + 0.55383228E+02 0.55539921E+02 0.55683758E+02 0.55814950E+02 0.55933702E+02 + 0.56040217E+02 0.56134689E+02 0.56217294E+02 0.56288240E+02 0.56347751E+02 + 0.56396057E+02 0.56433360E+02 0.56459830E+02 0.56475672E+02 0.56481128E+02 + 0.56476435E+02 0.56461848E+02 0.56437621E+02 0.56403955E+02 0.56361073E+02 + 0.56309186E+02 0.56248471E+02 0.56179139E+02 0.56101380E+02 0.56015363E+02 + 0.55921290E+02 0.55819353E+02 0.55709782E+02 0.55592804E+02 0.55468635E+02 + 0.55337490E+02 0.55199570E+02 0.55055078E+02 0.54904212E+02 0.54747168E+02 + 0.54584145E+02 0.54415374E+02 0.54241067E+02 0.54061387E+02 0.53876520E+02 + 0.53686629E+02 0.53491876E+02 0.53292429E+02 0.53088456E+02 0.52880150E+02 + 0.52667698E+02 0.52451306E+02 0.52231125E+02 0.52007289E+02 0.51779980E+02 + 0.51549365E+02 0.51315596E+02 0.51078788E+02 0.50839006E+02 0.50596379E+02 + 0.50351064E+02 0.50103237E+02 0.49853071E+02 0.49600692E+02 + 0.10000000E+01 0.27836981E+01 0.44160101E+01 0.59279335E+01 0.73549598E+01 + 0.87218563E+01 0.10063856E+02 0.11403862E+02 0.12742548E+02 0.14075396E+02 + 0.15396537E+02 0.16700976E+02 0.17985786E+02 0.19249697E+02 0.20492390E+02 + 0.21714304E+02 0.22916126E+02 0.24098348E+02 0.25261232E+02 0.26404871E+02 + 0.27529133E+02 0.28633787E+02 0.29718782E+02 0.30784018E+02 0.31829313E+02 + 0.32854687E+02 0.33860056E+02 0.34845671E+02 0.35811621E+02 0.36758134E+02 + 0.37685416E+02 0.38593718E+02 0.39483161E+02 0.40353896E+02 0.41206094E+02 + 0.42039905E+02 0.42855440E+02 0.43652824E+02 0.44432116E+02 0.45193469E+02 + 0.45937010E+02 0.46662844E+02 0.47371123E+02 0.48062018E+02 0.48735735E+02 + 0.49392437E+02 0.50032302E+02 0.50655461E+02 0.51262012E+02 0.51852084E+02 + 0.52425895E+02 0.52983602E+02 0.53525343E+02 0.54051236E+02 0.54561423E+02 + 0.55056073E+02 0.55535396E+02 0.55999561E+02 0.56448744E+02 0.56883101E+02 + 0.57302810E+02 0.57708021E+02 0.58098896E+02 0.58475581E+02 0.58838228E+02 + 0.59186993E+02 0.59522066E+02 0.59843614E+02 0.60151803E+02 0.60446802E+02 + 0.60728788E+02 0.60997904E+02 0.61254307E+02 0.61498142E+02 0.61729547E+02 + 0.61948678E+02 0.62155692E+02 0.62350734E+02 0.62533965E+02 0.62705532E+02 + 0.62865625E+02 0.63014445E+02 0.63152155E+02 0.63278927E+02 0.63394926E+02 + 0.63500328E+02 0.63595359E+02 0.63680248E+02 0.63755186E+02 0.63820296E+02 + 0.63875702E+02 0.63921560E+02 0.63958062E+02 0.63985398E+02 0.64003721E+02 + 0.64013148E+02 0.64013819E+02 0.64005955E+02 0.63989752E+02 0.63965409E+02 + 0.63933123E+02 0.63893028E+02 0.63845295E+02 0.63790098E+02 0.63727617E+02 + 0.63657976E+02 0.63581393E+02 0.63498033E+02 0.63408074E+02 0.63311696E+02 + 0.63209026E+02 0.63100227E+02 0.62985449E+02 0.62864830E+02 0.62738509E+02 + 0.62606653E+02 0.62469434E+02 0.62326992E+02 0.62179474E+02 0.62027030E+02 + 0.61869822E+02 0.61707987E+02 0.61541653E+02 0.61370959E+02 0.61196014E+02 + 0.61016944E+02 0.60833859E+02 0.60646908E+02 0.60456247E+02 + 0.10000000E+01 0.27979655E+01 0.44513988E+01 0.59901912E+01 0.74483129E+01 + 0.88496661E+01 0.10227505E+02 0.11603850E+02 0.12979956E+02 0.14351682E+02 + 0.15713495E+02 0.17060599E+02 0.18390132E+02 0.19700837E+02 0.20992385E+02 + 0.22265191E+02 0.23519873E+02 0.24756921E+02 0.25976587E+02 0.27178959E+02 + 0.28363863E+02 0.29531051E+02 0.30680394E+02 0.31811739E+02 0.32924863E+02 + 0.34019710E+02 0.35096191E+02 0.36154502E+02 0.37194673E+02 0.38216891E+02 + 0.39221335E+02 0.40208220E+02 0.41177650E+02 0.42129732E+02 0.43064597E+02 + 0.43982365E+02 0.44883124E+02 0.45766975E+02 0.46633923E+02 0.47484062E+02 + 0.48317459E+02 0.49134203E+02 0.49934441E+02 0.50718311E+02 0.51485994E+02 + 0.52237586E+02 0.52973226E+02 0.53693030E+02 0.54397075E+02 0.55085457E+02 + 0.55758342E+02 0.56415815E+02 0.57057998E+02 0.57684972E+02 0.58296852E+02 + 0.58893769E+02 0.59475874E+02 0.60043285E+02 0.60596168E+02 0.61134647E+02 + 0.61658882E+02 0.62168971E+02 0.62665047E+02 0.63147226E+02 0.63615656E+02 + 0.64070454E+02 0.64511746E+02 0.64939653E+02 0.65354287E+02 0.65755802E+02 + 0.66144315E+02 0.66519932E+02 0.66882797E+02 0.67233040E+02 0.67570795E+02 + 0.67896171E+02 0.68209306E+02 0.68510286E+02 0.68799252E+02 0.69076373E+02 + 0.69341794E+02 0.69595666E+02 0.69838103E+02 0.70069217E+02 0.70289162E+02 + 0.70498090E+02 0.70696181E+02 0.70883603E+02 0.71060512E+02 0.71227029E+02 + 0.71383283E+02 0.71529415E+02 0.71665582E+02 0.71791918E+02 0.71908544E+02 + 0.72015578E+02 0.72113150E+02 0.72201418E+02 0.72280549E+02 0.72350673E+02 + 0.72411948E+02 0.72464530E+02 0.72508582E+02 0.72544274E+02 0.72571728E+02 + 0.72591094E+02 0.72602538E+02 0.72606215E+02 0.72602279E+02 0.72590872E+02 + 0.72572101E+02 0.72546088E+02 0.72512988E+02 0.72472928E+02 0.72426037E+02 + 0.72372452E+02 0.72312325E+02 0.72245776E+02 0.72172948E+02 0.72094007E+02 + 0.72009078E+02 0.71918319E+02 0.71821819E+02 0.71719688E+02 0.71612036E+02 + 0.71498992E+02 0.71380691E+02 0.71257247E+02 0.71128828E+02 + 0.10000000E+01 0.28049288E+01 0.44696906E+01 0.60231319E+01 0.74989835E+01 + 0.89203650E+01 0.10318947E+02 0.11715620E+02 0.13111830E+02 0.14503711E+02 + 0.15886060E+02 0.17254408E+02 0.18606119E+02 0.19940001E+02 0.21255790E+02 + 0.22553857E+02 0.23834830E+02 0.25099153E+02 0.26347093E+02 0.27578703E+02 + 0.28793872E+02 0.29992333E+02 0.31174021E+02 0.32338783E+02 0.33486416E+02 + 0.34616849E+02 0.35730009E+02 0.36826048E+02 0.37905034E+02 0.38967150E+02 + 0.40012584E+02 0.41041540E+02 0.42054136E+02 0.43050467E+02 0.44030663E+02 + 0.44994843E+02 0.45943096E+02 0.46875491E+02 0.47792070E+02 0.48692891E+02 + 0.49578033E+02 0.50447581E+02 0.51301665E+02 0.52140391E+02 0.52963954E+02 + 0.53772439E+02 0.54565989E+02 0.55344714E+02 0.56108686E+02 0.56857978E+02 + 0.57592759E+02 0.58313121E+02 0.59019173E+02 0.59710983E+02 0.60388652E+02 + 0.61052280E+02 0.61702005E+02 0.62337942E+02 0.62960248E+02 0.63569036E+02 + 0.64164434E+02 0.64746526E+02 0.65315422E+02 0.65871226E+02 0.66414076E+02 + 0.66944066E+02 0.67461325E+02 0.67965920E+02 0.68457985E+02 0.68937645E+02 + 0.69405035E+02 0.69860257E+02 0.70303425E+02 0.70734649E+02 0.71154025E+02 + 0.71561631E+02 0.71957586E+02 0.72341984E+02 0.72714952E+02 0.73076600E+02 + 0.73427056E+02 0.73766428E+02 0.74094823E+02 0.74412365E+02 0.74719183E+02 + 0.75015401E+02 0.75301184E+02 0.75576684E+02 0.75842028E+02 0.76097333E+02 + 0.76342691E+02 0.76578215E+02 0.76804027E+02 0.77020235E+02 0.77226972E+02 + 0.77424307E+02 0.77612344E+02 0.77791201E+02 0.77961014E+02 0.78121925E+02 + 0.78274080E+02 0.78417644E+02 0.78552715E+02 0.78679423E+02 0.78797879E+02 + 0.78908195E+02 0.79010515E+02 0.79104995E+02 0.79191750E+02 0.79270879E+02 + 0.79342495E+02 0.79406684E+02 0.79463588E+02 0.79513296E+02 0.79555921E+02 + 0.79591596E+02 0.79620462E+02 0.79642643E+02 0.79658262E+02 0.79667420E+02 + 0.79670234E+02 0.79666814E+02 0.79657264E+02 0.79641686E+02 0.79620166E+02 + 0.79592778E+02 0.79559639E+02 0.79520874E+02 0.79476626E+02 + 0.10000000E+01 0.28145237E+01 0.44944441E+01 0.60675596E+01 0.75665495E+01 + 0.90136959E+01 0.10439009E+02 0.11862457E+02 0.13285761E+02 0.14705318E+02 + 0.16116229E+02 0.17514279E+02 0.18896988E+02 0.20263220E+02 0.21612722E+02 + 0.22945817E+02 0.24263085E+02 0.25564931E+02 0.26851617E+02 0.28123193E+02 + 0.29379541E+02 0.30620395E+02 0.31845651E+02 0.33055133E+02 0.34248636E+02 + 0.35426056E+02 0.36587327E+02 0.37732570E+02 0.38861827E+02 0.39975253E+02 + 0.41073034E+02 0.42155338E+02 0.43222321E+02 0.44274058E+02 0.45310676E+02 + 0.46332269E+02 0.47338893E+02 0.48330595E+02 0.49307417E+02 0.50269390E+02 + 0.51216585E+02 0.52149047E+02 0.53066892E+02 0.53970231E+02 0.54859242E+02 + 0.55733999E+02 0.56594631E+02 0.57441214E+02 0.58273823E+02 0.59092532E+02 + 0.59897501E+02 0.60688789E+02 0.61466483E+02 0.62230639E+02 0.62981345E+02 + 0.63718684E+02 0.64442769E+02 0.65153690E+02 0.65851569E+02 0.66536497E+02 + 0.67208589E+02 0.67867931E+02 0.68514630E+02 0.69148780E+02 0.69770496E+02 + 0.70379846E+02 0.70976937E+02 0.71561826E+02 0.72134640E+02 0.72695471E+02 + 0.73244413E+02 0.73781561E+02 0.74307020E+02 0.74820862E+02 0.75323195E+02 + 0.75814072E+02 0.76293603E+02 0.76761881E+02 0.77218996E+02 0.77665025E+02 + 0.78100086E+02 0.78524284E+02 0.78937698E+02 0.79340444E+02 0.79732647E+02 + 0.80114383E+02 0.80485776E+02 0.80846920E+02 0.81197949E+02 0.81538980E+02 + 0.81870119E+02 0.82191470E+02 0.82503121E+02 0.82805151E+02 0.83097656E+02 + 0.83380713E+02 0.83654434E+02 0.83918914E+02 0.84174264E+02 0.84420573E+02 + 0.84657949E+02 0.84886503E+02 0.85106370E+02 0.85317661E+02 0.85520478E+02 + 0.85714910E+02 0.85901100E+02 0.86079172E+02 0.86249239E+02 0.86411396E+02 + 0.86565710E+02 0.86712275E+02 0.86851206E+02 0.86982600E+02 0.87106539E+02 + 0.87223112E+02 0.87332436E+02 0.87434596E+02 0.87529703E+02 0.87617884E+02 + 0.87699255E+02 0.87773906E+02 0.87841940E+02 0.87903432E+02 0.87958474E+02 + 0.88007126E+02 0.88049503E+02 0.88085699E+02 0.88115828E+02 + 0.10000000E+01 0.28200726E+01 0.45096978E+01 0.60956142E+01 0.76102547E+01 + 0.90750642E+01 0.10518606E+02 0.11959766E+02 0.13400352E+02 0.14837026E+02 + 0.16265222E+02 0.17681080E+02 0.19082372E+02 0.20468038E+02 0.21837889E+02 + 0.23192213E+02 0.24531583E+02 0.25856349E+02 0.27166763E+02 0.28462834E+02 + 0.29744499E+02 0.31011474E+02 0.32263714E+02 0.33501035E+02 0.34723268E+02 + 0.35930305E+02 0.37122114E+02 0.38298787E+02 0.39460398E+02 0.40607080E+02 + 0.41739025E+02 0.42856408E+02 0.43959399E+02 0.45048071E+02 0.46122531E+02 + 0.47182847E+02 0.48229094E+02 0.49261301E+02 0.50279525E+02 0.51283816E+02 + 0.52274220E+02 0.53250770E+02 0.54213576E+02 0.55162749E+02 0.56098486E+02 + 0.57020871E+02 0.57930016E+02 0.58825993E+02 0.59708861E+02 0.60578665E+02 + 0.61435589E+02 0.62279690E+02 0.63111057E+02 0.63929732E+02 0.64735792E+02 + 0.65529315E+02 0.66310413E+02 0.67079158E+02 0.67835674E+02 0.68580041E+02 + 0.69312378E+02 0.70032737E+02 0.70741246E+02 0.71437977E+02 0.72123022E+02 + 0.72796464E+02 0.73458368E+02 0.74108808E+02 0.74747907E+02 0.75375758E+02 + 0.75992460E+02 0.76598072E+02 0.77192678E+02 0.77776325E+02 0.78349128E+02 + 0.78911131E+02 0.79462432E+02 0.80003089E+02 0.80533195E+02 0.81052838E+02 + 0.81562107E+02 0.82061102E+02 0.82549927E+02 0.83028660E+02 0.83497406E+02 + 0.83956232E+02 0.84405252E+02 0.84844566E+02 0.85274280E+02 0.85694473E+02 + 0.86105211E+02 0.86506566E+02 0.86898652E+02 0.87281528E+02 0.87655303E+02 + 0.88020042E+02 0.88375848E+02 0.88722781E+02 0.89060929E+02 0.89390392E+02 + 0.89711280E+02 0.90023683E+02 0.90327725E+02 0.90623478E+02 0.90911005E+02 + 0.91190367E+02 0.91461704E+02 0.91725125E+02 0.91980741E+02 0.92228635E+02 + 0.92468866E+02 0.92701511E+02 0.92926657E+02 0.93144394E+02 0.93354823E+02 + 0.93558008E+02 0.93754027E+02 0.93942957E+02 0.94124884E+02 0.94299919E+02 + 0.94468161E+02 0.94629715E+02 0.94784650E+02 0.94933014E+02 0.95074876E+02 + 0.95210314E+02 0.95339412E+02 0.95462254E+02 0.95578934E+02 + 0.10000000E+01 0.28255650E+01 0.45244430E+01 0.61225609E+01 0.76517231E+01 + 0.91326924E+01 0.10592914E+02 0.12050592E+02 0.13507649E+02 0.14960946E+02 + 0.16406175E+02 0.17839702E+02 0.19259453E+02 0.20664415E+02 0.22054408E+02 + 0.23429696E+02 0.24790805E+02 0.26138065E+02 0.27471708E+02 0.28791719E+02 + 0.30098036E+02 0.31390379E+02 0.32668703E+02 0.33932810E+02 0.35182542E+02 + 0.36417783E+02 0.37638503E+02 0.38844776E+02 0.40036675E+02 0.41214322E+02 + 0.42377886E+02 0.43527526E+02 0.44663407E+02 0.45785591E+02 0.46894189E+02 + 0.47989266E+02 0.49070881E+02 0.50139059E+02 0.51193872E+02 0.52235337E+02 + 0.53263507E+02 0.54278410E+02 0.55280136E+02 0.56268771E+02 0.57244505E+02 + 0.58207410E+02 0.59157600E+02 0.60095143E+02 0.61020101E+02 0.61932526E+02 + 0.62832575E+02 0.63720299E+02 0.64595795E+02 0.65459103E+02 0.66310288E+02 + 0.67149403E+02 0.67976555E+02 0.68791798E+02 0.69595269E+02 0.70387052E+02 + 0.71167250E+02 0.71935916E+02 0.72693126E+02 0.73438939E+02 0.74173462E+02 + 0.74896766E+02 0.75608945E+02 0.76310042E+02 0.77000167E+02 0.77679399E+02 + 0.78347834E+02 0.79005521E+02 0.79652555E+02 0.80288994E+02 0.80914912E+02 + 0.81530360E+02 0.82135431E+02 0.82730183E+02 0.83314720E+02 0.83889092E+02 + 0.84453393E+02 0.85007695E+02 0.85552076E+02 0.86086608E+02 0.86611409E+02 + 0.87126532E+02 0.87632087E+02 0.88128148E+02 0.88614831E+02 0.89092226E+02 + 0.89560397E+02 0.90019421E+02 0.90469407E+02 0.90910388E+02 0.91342458E+02 + 0.91765665E+02 0.92180089E+02 0.92585804E+02 0.92982892E+02 0.93371419E+02 + 0.93751488E+02 0.94123190E+02 0.94486618E+02 0.94841861E+02 0.95189000E+02 + 0.95528105E+02 0.95859281E+02 0.96182630E+02 0.96498268E+02 0.96806246E+02 + 0.97106637E+02 0.97399500E+02 0.97684902E+02 0.97962918E+02 0.98233634E+02 + 0.98497119E+02 0.98753473E+02 0.99002741E+02 0.99245015E+02 0.99480387E+02 + 0.99708955E+02 0.99930796E+02 0.10014599E+03 0.10035459E+03 0.10055665E+03 + 0.10075226E+03 0.10094147E+03 0.10112436E+03 0.10130100E+03 + 0.10000000E+01 0.28288725E+01 0.45340548E+01 0.61406410E+01 0.76802427E+01 + 0.91729840E+01 0.10645324E+02 0.12114704E+02 0.13583035E+02 0.15047366E+02 + 0.16503654E+02 0.17948541E+02 0.19380141E+02 0.20797519E+02 0.22200526E+02 + 0.23589391E+02 0.24964635E+02 0.26326533E+02 0.27675310E+02 0.29010921E+02 + 0.30333336E+02 0.31642262E+02 0.32937711E+02 0.34219494E+02 0.35487482E+02 + 0.36741577E+02 0.37981746E+02 0.39208042E+02 0.40420549E+02 0.41619376E+02 + 0.42804699E+02 0.43976689E+02 0.45135522E+02 0.46281252E+02 0.47413991E+02 + 0.48533776E+02 0.49640673E+02 0.50734718E+02 0.51815995E+02 0.52884509E+02 + 0.53940323E+02 0.54983457E+02 0.56014003E+02 0.57032041E+02 0.58037773E+02 + 0.59031254E+02 0.60012594E+02 0.60981859E+02 0.61939109E+02 0.62884401E+02 + 0.63817905E+02 0.64739673E+02 0.65649784E+02 0.66548274E+02 0.67435209E+02 + 0.68310652E+02 0.69174708E+02 0.70027422E+02 0.70868920E+02 0.71699280E+02 + 0.72518600E+02 0.73326915E+02 0.74124322E+02 0.74910887E+02 0.75686699E+02 + 0.76451816E+02 0.77206333E+02 0.77950302E+02 0.78683844E+02 0.79407025E+02 + 0.80119951E+02 0.80822645E+02 0.81515174E+02 0.82197602E+02 0.82870014E+02 + 0.83532468E+02 0.84185045E+02 0.84827790E+02 0.85460798E+02 0.86084100E+02 + 0.86697795E+02 0.87301968E+02 0.87896709E+02 0.88482052E+02 0.89058092E+02 + 0.89624912E+02 0.90182603E+02 0.90731241E+02 0.91270936E+02 0.91801744E+02 + 0.92323745E+02 0.92836976E+02 0.93341539E+02 0.93837508E+02 0.94324949E+02 + 0.94803925E+02 0.95274497E+02 0.95736715E+02 0.96190684E+02 0.96636473E+02 + 0.97074185E+02 0.97503896E+02 0.97925670E+02 0.98339592E+02 0.98745741E+02 + 0.99144145E+02 0.99534924E+02 0.99918155E+02 0.10029394E+03 0.10066233E+03 + 0.10102341E+03 0.10137721E+03 0.10172384E+03 0.10206335E+03 0.10239580E+03 + 0.10272126E+03 0.10303981E+03 0.10335150E+03 0.10365643E+03 0.10395468E+03 + 0.10424634E+03 0.10453146E+03 0.10481014E+03 0.10508236E+03 0.10534821E+03 + 0.10560773E+03 0.10586101E+03 0.10610811E+03 0.10634913E+03 + 0.10000000E+01 0.28366349E+01 0.45545191E+01 0.61778275E+01 0.77370099E+01 + 0.92514171E+01 0.10746195E+02 0.12238098E+02 0.13729223E+02 0.15216829E+02 + 0.16697125E+02 0.18166976E+02 0.19624621E+02 0.21069170E+02 0.22500464E+02 + 0.23918705E+02 0.25324346E+02 0.26717639E+02 0.28098769E+02 0.29467681E+02 + 0.30824294E+02 0.32168330E+02 0.33499759E+02 0.34818378E+02 0.36124050E+02 + 0.37416670E+02 0.38696191E+02 0.39962630E+02 0.41216048E+02 0.42456536E+02 + 0.43684242E+02 0.44899317E+02 0.46101955E+02 0.47292187E+02 0.48470095E+02 + 0.49635698E+02 0.50789044E+02 0.51930143E+02 0.53059085E+02 0.54175867E+02 + 0.55280536E+02 0.56373106E+02 0.57453644E+02 0.58522206E+02 0.59578980E+02 + 0.60624014E+02 0.61657409E+02 0.62679226E+02 0.63689521E+02 0.64688342E+02 + 0.65675845E+02 0.66652063E+02 0.67617072E+02 0.68570896E+02 0.69513581E+02 + 0.70445187E+02 0.71365793E+02 0.72275422E+02 0.73174195E+02 0.74062179E+02 + 0.74939484E+02 0.75806129E+02 0.76662185E+02 0.77507706E+02 0.78342796E+02 + 0.79167501E+02 0.79981914E+02 0.80786068E+02 0.81580051E+02 0.82363924E+02 + 0.83137771E+02 0.83901618E+02 0.84655546E+02 0.85399603E+02 0.86133856E+02 + 0.86858345E+02 0.87573144E+02 0.88278309E+02 0.88973931E+02 0.89660046E+02 + 0.90336747E+02 0.91004068E+02 0.91662105E+02 0.92310888E+02 0.92950515E+02 + 0.93581035E+02 0.94202542E+02 0.94815094E+02 0.95418788E+02 0.96013676E+02 + 0.96599846E+02 0.97177345E+02 0.97746255E+02 0.98306611E+02 0.98858488E+02 + 0.99401932E+02 0.99937014E+02 0.10046379E+03 0.10098235E+03 0.10149276E+03 + 0.10199508E+03 0.10248938E+03 0.10297576E+03 0.10345426E+03 0.10392496E+03 + 0.10438787E+03 0.10484312E+03 0.10529078E+03 0.10573093E+03 0.10616363E+03 + 0.10658895E+03 0.10700691E+03 0.10741762E+03 0.10782111E+03 0.10821749E+03 + 0.10860679E+03 0.10898907E+03 0.10936440E+03 0.10973286E+03 0.11009450E+03 + 0.11044943E+03 0.11079770E+03 0.11113937E+03 0.11147446E+03 0.11180303E+03 + 0.11212512E+03 0.11244082E+03 0.11275022E+03 0.11305335E+03 + 0.10000000E+01 0.28371462E+01 0.45569377E+01 0.61827636E+01 0.77458459E+01 + 0.92650438E+01 0.10764745E+02 0.12260853E+02 0.13755418E+02 0.15245881E+02 + 0.16728715E+02 0.18201075E+02 0.19661436E+02 0.21108998E+02 0.22543697E+02 + 0.23965692E+02 0.25375481E+02 0.26773231E+02 0.28159175E+02 0.29533226E+02 + 0.30895421E+02 0.32245449E+02 0.33583385E+02 0.34909017E+02 0.36222243E+02 + 0.37522981E+02 0.38811233E+02 0.40087010E+02 0.41350396E+02 0.42601477E+02 + 0.43840405E+02 0.45067357E+02 0.46282522E+02 0.47485936E+02 0.48677700E+02 + 0.49857810E+02 0.51026325E+02 0.52183274E+02 0.53328779E+02 0.54462830E+02 + 0.55585482E+02 0.56696740E+02 0.57796658E+02 0.58885292E+02 0.59962849E+02 + 0.61029378E+02 0.62084994E+02 0.63129746E+02 0.64163680E+02 0.65186832E+02 + 0.66199346E+02 0.67201273E+02 0.68192710E+02 0.69173658E+02 0.70144188E+02 + 0.71104350E+02 0.72054211E+02 0.72993773E+02 0.73923159E+02 0.74842422E+02 + 0.75751685E+02 0.76650974E+02 0.77540371E+02 0.78419909E+02 0.79289672E+02 + 0.80149703E+02 0.81000086E+02 0.81840875E+02 0.82672169E+02 0.83494024E+02 + 0.84306511E+02 0.85109636E+02 0.85903443E+02 0.86687971E+02 0.87463306E+02 + 0.88229468E+02 0.88986567E+02 0.89734620E+02 0.90473694E+02 0.91203825E+02 + 0.91925087E+02 0.92637542E+02 0.93341282E+02 0.94036365E+02 0.94722854E+02 + 0.95400780E+02 0.96070222E+02 0.96731224E+02 0.97383895E+02 0.98028272E+02 + 0.98664421E+02 0.99292368E+02 0.99912196E+02 0.10052392E+03 0.10112760E+03 + 0.10172330E+03 0.10231108E+03 0.10289100E+03 0.10346314E+03 0.10402755E+03 + 0.10458432E+03 0.10513349E+03 0.10567513E+03 0.10620927E+03 0.10673597E+03 + 0.10725528E+03 0.10776728E+03 0.10827203E+03 0.10876959E+03 0.10926000E+03 + 0.10974333E+03 0.11021963E+03 0.11068898E+03 0.11115142E+03 0.11160701E+03 + 0.11205578E+03 0.11249780E+03 0.11293316E+03 0.11336191E+03 0.11378411E+03 + 0.11419983E+03 0.11460909E+03 0.11501194E+03 0.11540840E+03 0.11579853E+03 + 0.11618238E+03 0.11655999E+03 0.11693141E+03 0.11729672E+03 + 0.10000000E+01 0.28356215E+01 0.45539328E+01 0.61779584E+01 0.77395679E+01 + 0.92574397E+01 0.10755745E+02 0.12249961E+02 0.13742038E+02 0.15229465E+02 + 0.16708850E+02 0.18177488E+02 0.19633983E+02 0.21077580E+02 0.22508274E+02 + 0.23926220E+02 0.25331960E+02 0.26725614E+02 0.28107439E+02 0.29477317E+02 + 0.30835344E+02 0.32181181E+02 0.33515006E+02 0.34836604E+02 0.36145901E+02 + 0.37442838E+02 0.38727427E+02 0.39999688E+02 0.41259738E+02 0.42507674E+02 + 0.43743679E+02 0.44967921E+02 0.46180619E+02 0.47381807E+02 0.48571592E+02 + 0.49749987E+02 0.50917055E+02 0.52072818E+02 0.53217398E+02 0.54350782E+02 + 0.55473041E+02 0.56584202E+02 0.57684313E+02 0.58773441E+02 0.59851790E+02 + 0.60919395E+02 0.61976385E+02 0.63022817E+02 0.64058764E+02 0.65084282E+02 + 0.66099508E+02 0.67104491E+02 0.68099333E+02 0.69084042E+02 0.70058698E+02 + 0.71023350E+02 0.71978056E+02 0.72922824E+02 0.73857770E+02 0.74782967E+02 + 0.75698523E+02 0.76604474E+02 0.77500891E+02 0.78387795E+02 0.79265283E+02 + 0.80133418E+02 0.80992295E+02 0.81841968E+02 0.82682530E+02 0.83513995E+02 + 0.84336449E+02 0.85149924E+02 0.85954475E+02 0.86750154E+02 0.87537075E+02 + 0.88315231E+02 0.89084673E+02 0.89845456E+02 0.90597638E+02 0.91341263E+02 + 0.92076435E+02 0.92803187E+02 0.93521585E+02 0.94231654E+02 0.94933480E+02 + 0.95627109E+02 0.96312628E+02 0.96990084E+02 0.97659565E+02 0.98321118E+02 + 0.98974800E+02 0.99620646E+02 0.10025875E+03 0.10088914E+03 0.10151191E+03 + 0.10212706E+03 0.10273465E+03 0.10333474E+03 0.10392740E+03 0.10451266E+03 + 0.10509064E+03 0.10566135E+03 0.10622486E+03 0.10678121E+03 0.10733043E+03 + 0.10787259E+03 0.10840776E+03 0.10893599E+03 0.10945739E+03 0.10997199E+03 + 0.11047986E+03 0.11098102E+03 0.11147556E+03 0.11196351E+03 0.11244492E+03 + 0.11291983E+03 0.11338829E+03 0.11385038E+03 0.11430614E+03 0.11475563E+03 + 0.11519891E+03 0.11563602E+03 0.11606701E+03 0.11649188E+03 0.11691070E+03 + 0.11732352E+03 0.11773040E+03 0.11813139E+03 0.11852654E+03 + 0.10000000E+01 0.28423859E+01 0.45720740E+01 0.62111688E+01 0.77905150E+01 + 0.93280805E+01 0.10846837E+02 0.12361585E+02 0.13874380E+02 0.15382888E+02 + 0.16883962E+02 0.18375099E+02 0.19855028E+02 0.21323030E+02 0.22779092E+02 + 0.24223342E+02 0.25656262E+02 0.27077943E+02 0.28488624E+02 0.29888180E+02 + 0.31276664E+02 0.32653745E+02 0.34019570E+02 0.35373907E+02 0.36716693E+02 + 0.38047872E+02 0.39367453E+02 0.40675421E+02 0.41971862E+02 0.43256845E+02 + 0.44530529E+02 0.45793082E+02 0.47044715E+02 0.48285466E+02 0.49515413E+02 + 0.50734545E+02 0.51942902E+02 0.53140516E+02 0.54327505E+02 0.55503865E+02 + 0.56669651E+02 0.57824862E+02 0.58969548E+02 0.60103743E+02 0.61227656E+02 + 0.62341330E+02 0.63444853E+02 0.64538265E+02 0.65621643E+02 0.66695018E+02 + 0.67758547E+02 0.68812271E+02 0.69856276E+02 0.70890557E+02 0.71915163E+02 + 0.72930126E+02 0.73935526E+02 0.74931361E+02 0.75917757E+02 0.76894773E+02 + 0.77862505E+02 0.78820982E+02 0.79770263E+02 0.80710367E+02 0.81641367E+02 + 0.82563308E+02 0.83476270E+02 0.84380295E+02 0.85275476E+02 0.86161852E+02 + 0.87039501E+02 0.87908410E+02 0.88768635E+02 0.89620199E+02 0.90463202E+02 + 0.91297676E+02 0.92123704E+02 0.92941321E+02 0.93750583E+02 0.94551499E+02 + 0.95344137E+02 0.96128523E+02 0.96904733E+02 0.97672791E+02 0.98432787E+02 + 0.99184749E+02 0.99928748E+02 0.10066482E+03 0.10139307E+03 0.10211353E+03 + 0.10282625E+03 0.10353128E+03 0.10422868E+03 0.10491848E+03 0.10560075E+03 + 0.10627551E+03 0.10694280E+03 0.10760266E+03 0.10825514E+03 0.10890029E+03 + 0.10953819E+03 0.11016888E+03 0.11079243E+03 0.11140888E+03 0.11201829E+03 + 0.11262067E+03 0.11321611E+03 0.11380465E+03 0.11438637E+03 0.11496130E+03 + 0.11552951E+03 0.11609102E+03 0.11664590E+03 0.11719417E+03 0.11773588E+03 + 0.11827106E+03 0.11879978E+03 0.11932207E+03 0.11983801E+03 0.12034765E+03 + 0.12085104E+03 0.12134825E+03 0.12183929E+03 0.12232420E+03 0.12280300E+03 + 0.12327572E+03 0.12374240E+03 0.12420313E+03 0.12465792E+03 + 0.10000000E+01 0.28338043E+01 0.45515268E+01 0.61752335E+01 0.77377300E+01 + 0.92572531E+01 0.10757433E+02 0.12252816E+02 0.13745106E+02 0.15231842E+02 + 0.16709885E+02 0.18176766E+02 0.19631352E+02 0.21072955E+02 0.22501684E+02 + 0.23917668E+02 0.25321514E+02 0.26713230E+02 0.28093128E+02 0.29461049E+02 + 0.30817211E+02 0.32161242E+02 0.33493461E+02 0.34813641E+02 0.36121763E+02 + 0.37417808E+02 0.38701849E+02 0.39973906E+02 0.41234118E+02 0.42482592E+02 + 0.43719538E+02 0.44945141E+02 0.46159628E+02 0.47363074E+02 0.48555595E+02 + 0.49737190E+02 0.50907939E+02 0.52067887E+02 0.53217165E+02 0.54355784E+02 + 0.55483834E+02 0.56601330E+02 0.57708335E+02 0.58804900E+02 0.59891255E+02 + 0.60967438E+02 0.62033599E+02 0.63089776E+02 0.64136081E+02 0.65172574E+02 + 0.66199409E+02 0.67216635E+02 0.68224380E+02 0.69222637E+02 0.70211490E+02 + 0.71190988E+02 0.72161200E+02 0.73122159E+02 0.74073987E+02 0.75016758E+02 + 0.75950578E+02 0.76875485E+02 0.77791527E+02 0.78698743E+02 0.79597232E+02 + 0.80487059E+02 0.81368351E+02 0.82241153E+02 0.83105572E+02 0.83961653E+02 + 0.84809455E+02 0.85648975E+02 0.86480262E+02 0.87303376E+02 0.88118407E+02 + 0.88925397E+02 0.89724446E+02 0.90515584E+02 0.91298867E+02 0.92074323E+02 + 0.92842016E+02 0.93601997E+02 0.94354349E+02 0.95099104E+02 0.95836360E+02 + 0.96566150E+02 0.97288566E+02 0.98003654E+02 0.98711507E+02 0.99412167E+02 + 0.10010569E+03 0.10079210E+03 0.10147147E+03 0.10214383E+03 0.10280925E+03 + 0.10346777E+03 0.10411944E+03 0.10476430E+03 0.10540243E+03 0.10603387E+03 + 0.10665871E+03 0.10727699E+03 0.10788879E+03 0.10849415E+03 0.10909311E+03 + 0.10968569E+03 0.11027196E+03 0.11085200E+03 0.11142590E+03 0.11199368E+03 + 0.11255541E+03 0.11311109E+03 0.11366078E+03 0.11420451E+03 0.11474235E+03 + 0.11527435E+03 0.11580057E+03 0.11632104E+03 0.11683583E+03 0.11734497E+03 + 0.11784857E+03 0.11834664E+03 0.11883926E+03 0.11932641E+03 0.11980811E+03 + 0.12028438E+03 0.12075532E+03 0.12122095E+03 0.12168134E+03 + 128 + 0.10000000E+01 0.26368291E+01 0.37915298E+01 0.45002570E+01 0.48745907E+01 + 0.49924722E+01 0.49359169E+01 0.47576242E+01 0.45012168E+01 0.41824288E+01 + 0.38164876E+01 0.34192047E+01 0.30089964E+01 0.26022922E+01 0.22127232E+01 + 0.18496204E+01 0.15220601E+01 0.12344932E+01 0.99090536E+00 0.78836205E+00 + 0.62610952E+00 0.49746863E+00 0.39839691E+00 0.32121776E+00 0.26043406E+00 + 0.21143839E+00 0.17141291E+00 0.13859684E+00 0.11163945E+00 0.89236032E-01 + 0.70312660E-01 0.54230248E-01 0.40906808E-01 0.30437020E-01 0.22551594E-01 + 0.16601053E-01 0.12064725E-01 0.87102313E-02 0.64710633E-02 0.51638933E-02 + 0.44179356E-02 0.39220315E-02 0.34685617E-02 0.29726070E-02 0.24597841E-02 + 0.19552480E-02 0.14651984E-02 0.10345556E-02 0.70459777E-03 0.48723517E-03 + 0.37157048E-03 0.30487516E-03 0.24498809E-03 0.18362113E-03 0.14721392E-03 + 0.14340479E-03 0.18904089E-03 0.29516453E-03 0.43530048E-03 0.56939586E-03 + 0.64045072E-03 0.62774597E-03 0.50759898E-03 0.28976950E-03 0.25120276E-04 + -0.24024358E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26949305E+01 0.39973444E+01 0.49522660E+01 0.56457341E+01 + 0.61282636E+01 0.64442803E+01 0.66202849E+01 0.66807251E+01 0.66348418E+01 + 0.64945959E+01 0.62712538E+01 0.59798478E+01 0.56357450E+01 0.52540245E+01 + 0.48491440E+01 0.44353310E+01 0.40246291E+01 0.36283520E+01 0.32521598E+01 + 0.29036484E+01 0.25834137E+01 0.22926727E+01 0.20273611E+01 0.17856211E+01 + 0.15656298E+01 0.13665154E+01 0.11873952E+01 0.10276582E+01 0.88606214E+00 + 0.76126537E+00 0.65177400E+00 0.55651988E+00 0.47433456E+00 0.40375806E+00 + 0.34310960E+00 0.29100994E+00 0.24635463E+00 0.20829387E+00 0.17590833E+00 + 0.14823084E+00 0.12445979E+00 0.10397793E+00 0.86328094E-01 0.71199247E-01 + 0.58323504E-01 0.47434476E-01 0.38278338E-01 0.30643934E-01 0.24326281E-01 + 0.19123562E-01 0.14876221E-01 0.11422578E-01 0.86542645E-02 0.64803171E-02 + 0.48227589E-02 0.35965845E-02 0.27083988E-02 0.20806011E-02 0.16449203E-02 + 0.13293495E-02 0.10823566E-02 0.87555896E-03 0.68500702E-03 0.52636772E-03 + 0.39531480E-03 0.28037600E-03 0.21175973E-03 0.18027493E-03 0.15672704E-03 + 0.13334667E-03 0.11560453E-03 0.13008034E-03 0.19622723E-03 0.26654604E-03 + 0.30722165E-03 0.31739307E-03 0.30980041E-03 0.29197991E-03 0.27620659E-03 + 0.25473790E-03 0.21478549E-03 0.16092064E-03 0.78434663E-04 -0.84897834E-05 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27376016E+01 0.41442921E+01 0.52613555E+01 0.61606603E+01 + 0.68827986E+01 0.74574056E+01 0.79000398E+01 0.82250925E+01 0.84384867E+01 + 0.85497577E+01 0.85662774E+01 0.84986092E+01 0.83563751E+01 0.81502542E+01 + 0.78908105E+01 0.75891912E+01 0.72557101E+01 0.69009668E+01 0.65324565E+01 + 0.61595152E+01 0.57868164E+01 0.54193221E+01 0.50578496E+01 0.47047929E+01 + 0.43622210E+01 0.40324448E+01 0.37172642E+01 0.34186144E+01 0.31374059E+01 + 0.28742322E+01 0.26290450E+01 0.24018942E+01 0.21923352E+01 0.19995115E+01 + 0.18222311E+01 0.16594586E+01 0.15101275E+01 0.13733115E+01 0.12480220E+01 + 0.11332639E+01 0.10281124E+01 0.93175862E+00 0.84356146E+00 0.76302206E+00 + 0.68964725E+00 0.62294479E+00 0.56241258E+00 0.50752317E+00 0.45780968E+00 + 0.41278311E+00 0.37202524E+00 0.33512419E+00 0.30173425E+00 0.27155032E+00 + 0.24429413E+00 0.21970072E+00 0.19753226E+00 0.17754026E+00 0.15950896E+00 + 0.14323043E+00 0.12850355E+00 0.11518345E+00 0.10315165E+00 0.92311385E-01 + 0.82558092E-01 0.73788466E-01 0.65907109E-01 0.58835682E-01 0.52492558E-01 + 0.46809317E-01 0.41712625E-01 0.37135211E-01 0.33032071E-01 0.29366658E-01 + 0.26115278E-01 0.23237388E-01 0.20683463E-01 0.18412715E-01 0.16394621E-01 + 0.14584688E-01 0.12961623E-01 0.11500642E-01 0.10182929E-01 0.90072547E-02 + 0.79778697E-02 0.71007048E-02 0.63401167E-02 0.56881022E-02 0.51259724E-02 + 0.46463543E-02 0.42390243E-02 0.38699432E-02 0.35096901E-02 0.31520707E-02 + 0.28276725E-02 0.25476852E-02 0.23054461E-02 0.20829929E-02 0.18693890E-02 + 0.16724918E-02 0.14894598E-02 0.13025110E-02 0.11103760E-02 0.90296133E-03 + 0.70816590E-03 0.54562868E-03 0.41410290E-03 0.31520599E-03 0.23048461E-03 + 0.18115803E-03 0.15397151E-03 0.14506445E-03 0.14642626E-03 0.13728898E-03 + 0.14769589E-03 0.15443036E-03 0.15037260E-03 0.17261644E-03 0.19704956E-03 + 0.23528115E-03 0.30100940E-03 0.35841104E-03 0.38328238E-03 0.36831466E-03 + 0.31939348E-03 0.24500959E-03 0.16873700E-03 0.87904272E-04 + 0.10000000E+01 0.27693553E+01 0.42538742E+01 0.54870400E+01 0.65304351E+01 + 0.74199066E+01 0.81808933E+01 0.88255008E+01 0.93635804E+01 0.97989638E+01 + 0.10138702E+02 0.10388141E+02 0.10555189E+02 0.10646308E+02 0.10668869E+02 + 0.10629504E+02 0.10535345E+02 0.10392869E+02 0.10209259E+02 0.99899925E+01 + 0.97421302E+01 0.94700994E+01 0.91788769E+01 0.88709767E+01 0.85501065E+01 + 0.82197938E+01 0.78836891E+01 0.75450511E+01 0.72072566E+01 0.68728418E+01 + 0.65440491E+01 0.62224634E+01 0.59096386E+01 0.56065864E+01 0.53139084E+01 + 0.50318900E+01 0.47608205E+01 0.45007202E+01 0.42515563E+01 0.40132004E+01 + 0.37854396E+01 0.35680031E+01 0.33605743E+01 0.31628882E+01 0.29747240E+01 + 0.27958624E+01 0.26260789E+01 0.24650875E+01 0.23125056E+01 0.21680336E+01 + 0.20312589E+01 0.19018553E+01 0.17794301E+01 0.16636605E+01 0.15542502E+01 + 0.14509444E+01 0.13535317E+01 0.12617921E+01 0.11754856E+01 0.10943825E+01 + 0.10182589E+01 0.94687653E+00 0.87999534E+00 0.81737554E+00 0.75877472E+00 + 0.70396702E+00 0.65274187E+00 0.60490125E+00 0.56024179E+00 0.51858521E+00 + 0.47974632E+00 0.44357437E+00 0.40989599E+00 0.37855424E+00 0.34940937E+00 + 0.32230494E+00 0.29709712E+00 0.27364136E+00 0.25178646E+00 0.23142057E+00 + 0.21245827E+00 0.19481501E+00 0.17841472E+00 0.16317651E+00 0.14904184E+00 + 0.13596861E+00 0.12390021E+00 0.11276969E+00 0.10251699E+00 0.93058522E-01 + 0.84337296E-01 0.76296523E-01 0.68894129E-01 0.62102250E-01 0.55896584E-01 + 0.50274957E-01 0.45203940E-01 0.40606883E-01 0.36418847E-01 0.32596949E-01 + 0.29126410E-01 0.25980017E-01 0.23129632E-01 0.20527608E-01 0.18149300E-01 + 0.15989927E-01 0.14068833E-01 0.12403551E-01 0.10960254E-01 0.97018009E-02 + 0.86116852E-02 0.76739923E-02 0.68748911E-02 0.62016236E-02 0.56103249E-02 + 0.50710784E-02 0.45973677E-02 0.41926642E-02 0.38710130E-02 0.36071050E-02 + 0.33817488E-02 0.31963117E-02 0.30320000E-02 0.29022894E-02 0.27807687E-02 + 0.26379197E-02 0.24582208E-02 0.22507646E-02 0.20320412E-02 + 0.10000000E+01 0.27960592E+01 0.43464586E+01 0.56788259E+01 0.68460686E+01 + 0.78789740E+01 0.87990998E+01 0.96155676E+01 0.10335028E+02 0.10959421E+02 + 0.11493728E+02 0.11941529E+02 0.12308632E+02 0.12599467E+02 0.12819330E+02 + 0.12972694E+02 0.13064418E+02 0.13098872E+02 0.13081239E+02 0.13015770E+02 + 0.12908017E+02 0.12761994E+02 0.12582277E+02 0.12371886E+02 0.12134750E+02 + 0.11874729E+02 0.11595753E+02 0.11301483E+02 0.10995664E+02 0.10681366E+02 + 0.10361450E+02 0.10038220E+02 0.97138976E+01 0.93902390E+01 0.90686180E+01 + 0.87501216E+01 0.84357780E+01 0.81263341E+01 0.78224281E+01 0.75245533E+01 + 0.72331434E+01 0.69485154E+01 0.66709170E+01 0.64005574E+01 0.61376058E+01 + 0.58821821E+01 0.56343509E+01 0.53941304E+01 0.51614252E+01 0.49361862E+01 + 0.47182339E+01 0.45074617E+01 0.43036734E+01 0.41067772E+01 0.39166600E+01 + 0.37332411E+01 0.35564345E+01 0.33861452E+01 0.32222804E+01 0.30647269E+01 + 0.29133980E+01 0.27681843E+01 0.26289448E+01 0.24955286E+01 0.23678091E+01 + 0.22456798E+01 0.21290265E+01 0.20177504E+01 0.19116972E+01 0.18106858E+01 + 0.17145624E+01 0.16231545E+01 0.15362681E+01 0.14537059E+01 0.13752590E+01 + 0.13007381E+01 0.12299644E+01 0.11627359E+01 0.10988703E+01 0.10381862E+01 + 0.98052017E+00 0.92574442E+00 0.87373723E+00 0.82438810E+00 0.77756086E+00 + 0.73314198E+00 0.69102719E+00 0.65109781E+00 0.61323534E+00 0.57732112E+00 + 0.54325323E+00 0.51097328E+00 0.48043828E+00 0.45160196E+00 0.42439288E+00 + 0.39870940E+00 0.37447242E+00 0.35159869E+00 0.32999960E+00 0.30957238E+00 + 0.29022861E+00 0.27188760E+00 0.25450286E+00 0.23805528E+00 0.22255027E+00 + 0.20798858E+00 0.19435213E+00 0.18162576E+00 0.16973553E+00 0.15863390E+00 + 0.14826562E+00 0.13857239E+00 0.12953525E+00 0.12111274E+00 0.11327643E+00 + 0.10597225E+00 0.99156884E-01 0.92807688E-01 0.86885884E-01 0.81341832E-01 + 0.76122516E-01 0.71171747E-01 0.66487992E-01 0.62078164E-01 0.57927500E-01 + 0.54034814E-01 0.50365730E-01 0.46909521E-01 0.43684557E-01 + 0.10000000E+01 0.28131570E+01 0.44057072E+01 0.58009952E+01 0.70465943E+01 + 0.81700676E+01 0.91915943E+01 0.10119328E+02 0.10959081E+02 0.11711717E+02 + 0.12381066E+02 0.12969534E+02 0.13481804E+02 0.13921193E+02 0.14292032E+02 + 0.14597660E+02 0.14841896E+02 0.15027936E+02 0.15159864E+02 0.15240936E+02 + 0.15275617E+02 0.15267179E+02 0.15219486E+02 0.15135215E+02 0.15017834E+02 + 0.14870740E+02 0.14697475E+02 0.14501377E+02 0.14285879E+02 0.14053887E+02 + 0.13808154E+02 0.13550997E+02 0.13284694E+02 0.13011133E+02 0.12731908E+02 + 0.12448361E+02 0.12161778E+02 0.11873192E+02 0.11583544E+02 0.11293639E+02 + 0.11004217E+02 0.10715928E+02 0.10429320E+02 0.10144920E+02 0.98631876E+01 + 0.95845095E+01 0.93092426E+01 0.90376924E+01 0.87700667E+01 0.85065995E+01 + 0.82473834E+01 0.79925631E+01 0.77422066E+01 0.74964448E+01 0.72553935E+01 + 0.70191843E+01 0.67879164E+01 0.65616912E+01 0.63405894E+01 0.61246941E+01 + 0.59140695E+01 0.57087583E+01 0.55087745E+01 0.53141178E+01 0.51248012E+01 + 0.49408605E+01 0.47623168E+01 0.45891518E+01 0.44213234E+01 0.42587897E+01 + 0.41015270E+01 0.39495063E+01 0.38026433E+01 0.36608164E+01 0.35239149E+01 + 0.33918054E+01 0.32643310E+01 0.31413541E+01 0.30227075E+01 0.29082211E+01 + 0.27977642E+01 0.26912261E+01 0.25885234E+01 0.24895694E+01 0.23942637E+01 + 0.23024942E+01 0.22141585E+01 0.21291045E+01 0.20471966E+01 0.19682644E+01 + 0.18921647E+01 0.18188213E+01 0.17481772E+01 0.16801958E+01 0.16147943E+01 + 0.15518790E+01 0.14913505E+01 0.14331151E+01 0.13770832E+01 0.13231296E+01 + 0.12710741E+01 0.12208036E+01 0.11722579E+01 0.11254537E+01 0.10804437E+01 + 0.10372482E+01 0.99583937E+00 0.95610835E+00 0.91797914E+00 0.88137209E+00 + 0.84623678E+00 0.81251625E+00 0.78015976E+00 0.74908203E+00 0.71920845E+00 + 0.69051124E+00 0.66294882E+00 0.63647558E+00 0.61104008E+00 0.58656424E+00 + 0.56296301E+00 0.54017829E+00 0.51816865E+00 0.49694934E+00 0.47652609E+00 + 0.45688744E+00 0.43803269E+00 0.41995077E+00 0.40263345E+00 + 0.10000000E+01 0.28387189E+01 0.44944071E+01 0.59844429E+01 0.73490871E+01 + 0.86107221E+01 0.97870402E+01 0.10884012E+02 0.11906293E+02 0.12852926E+02 + 0.13726461E+02 0.14527300E+02 0.15258781E+02 0.15922382E+02 0.16521306E+02 + 0.17057132E+02 0.17532513E+02 0.17948981E+02 0.18309409E+02 0.18615713E+02 + 0.18871102E+02 0.19077767E+02 0.19238727E+02 0.19356101E+02 0.19432782E+02 + 0.19471476E+02 0.19475149E+02 0.19446503E+02 0.19388477E+02 0.19303568E+02 + 0.19194331E+02 0.19062915E+02 0.18911522E+02 0.18742056E+02 0.18556279E+02 + 0.18355757E+02 0.18142027E+02 0.17916392E+02 0.17680062E+02 0.17434180E+02 + 0.17179837E+02 0.16918047E+02 0.16649740E+02 0.16375763E+02 0.16096893E+02 + 0.15813835E+02 0.15527283E+02 0.15237893E+02 0.14946212E+02 0.14652805E+02 + 0.14358113E+02 0.14062626E+02 0.13766769E+02 0.13471011E+02 0.13175781E+02 + 0.12881477E+02 0.12588503E+02 0.12297249E+02 0.12008085E+02 0.11721361E+02 + 0.11437400E+02 0.11156519E+02 0.10878982E+02 0.10605026E+02 0.10334893E+02 + 0.10068834E+02 0.98070923E+01 0.95498571E+01 0.92972560E+01 0.90494594E+01 + 0.88066264E+01 0.85688749E+01 0.83362807E+01 0.81088936E+01 0.78867315E+01 + 0.76697760E+01 0.74579870E+01 0.72512957E+01 0.70496318E+01 0.68528975E+01 + 0.66610196E+01 0.64739419E+01 0.62916309E+01 0.61140476E+01 0.59411431E+01 + 0.57728670E+01 0.56091415E+01 0.54498392E+01 0.52948232E+01 0.51439608E+01 + 0.49971144E+01 0.48541848E+01 0.47151243E+01 0.45798800E+01 0.44484034E+01 + 0.43206195E+01 0.41964342E+01 0.40757549E+01 0.39584116E+01 0.38442013E+01 + 0.37329432E+01 0.36245005E+01 0.35188403E+01 0.34159946E+01 0.33160374E+01 + 0.32190003E+01 0.31248592E+01 0.30335213E+01 0.29448578E+01 0.28587754E+01 + 0.27751709E+01 0.26939445E+01 0.26150102E+01 0.25382767E+01 0.24636750E+01 + 0.23911795E+01 0.23207582E+01 0.22523470E+01 0.21858386E+01 0.21211282E+01 + 0.20581026E+01 0.19967140E+01 0.19369300E+01 0.18787434E+01 0.18221639E+01 + 0.17671790E+01 0.17137834E+01 0.16619784E+01 0.16117462E+01 + 0.10000000E+01 0.28575316E+01 0.45598399E+01 0.61196392E+01 0.75726022E+01 + 0.89369830E+01 0.10229365E+02 0.11453917E+02 0.12615575E+02 0.13711751E+02 + 0.14744896E+02 0.15713535E+02 0.16620705E+02 0.17466183E+02 0.18252947E+02 + 0.18981088E+02 0.19653014E+02 0.20268919E+02 0.20831238E+02 0.21340662E+02 + 0.21799789E+02 0.22209703E+02 0.22572881E+02 0.22890586E+02 0.23165233E+02 + 0.23398556E+02 0.23592981E+02 0.23750374E+02 0.23873129E+02 0.23963051E+02 + 0.24022306E+02 0.24052562E+02 0.24055756E+02 0.24033470E+02 0.23987349E+02 + 0.23918809E+02 0.23829332E+02 0.23720167E+02 0.23592566E+02 0.23447692E+02 + 0.23286696E+02 0.23110682E+02 0.22920696E+02 0.22717718E+02 0.22502641E+02 + 0.22276300E+02 0.22039525E+02 0.21793116E+02 0.21537837E+02 0.21274460E+02 + 0.21003655E+02 0.20726115E+02 0.20442462E+02 0.20153371E+02 0.19859477E+02 + 0.19561404E+02 0.19259771E+02 0.18955163E+02 0.18648134E+02 0.18339230E+02 + 0.18028987E+02 0.17717946E+02 0.17406618E+02 0.17095430E+02 0.16784817E+02 + 0.16475226E+02 0.16167090E+02 0.15860782E+02 0.15556638E+02 0.15255000E+02 + 0.14956209E+02 0.14660577E+02 0.14368332E+02 0.14079677E+02 0.13794809E+02 + 0.13513886E+02 0.13237000E+02 0.12964220E+02 0.12695613E+02 0.12431202E+02 + 0.12171033E+02 0.11915159E+02 0.11663662E+02 0.11416617E+02 0.11174049E+02 + 0.10935995E+02 0.10702440E+02 0.10473324E+02 0.10248585E+02 0.10028117E+02 + 0.98118578E+01 0.95997721E+01 0.93918408E+01 0.91880674E+01 0.89884393E+01 + 0.87929372E+01 0.86015128E+01 0.84140704E+01 0.82304711E+01 0.80505179E+01 + 0.78740365E+01 0.77009054E+01 0.75311200E+01 0.73647290E+01 0.72018524E+01 + 0.70425490E+01 0.68868063E+01 0.67345453E+01 0.65856352E+01 0.64399573E+01 + 0.62973649E+01 0.61577779E+01 0.60211049E+01 0.58872748E+01 0.57562583E+01 + 0.56280268E+01 0.55025575E+01 0.53797953E+01 0.52596321E+01 0.51419650E+01 + 0.50266941E+01 0.49137371E+01 0.48030589E+01 0.46946478E+01 0.45884880E+01 + 0.44845367E+01 0.43827910E+01 0.42832630E+01 0.41859575E+01 + 0.10000000E+01 0.28738525E+01 0.46167730E+01 0.62373274E+01 0.77676906E+01 + 0.92221530E+01 0.10616627E+02 0.11953299E+02 0.13238045E+02 0.14466603E+02 + 0.15642051E+02 0.16761005E+02 0.17826844E+02 0.18837614E+02 0.19796579E+02 + 0.20702370E+02 0.21557626E+02 0.22361294E+02 0.23115814E+02 0.23820721E+02 + 0.24478401E+02 0.25088859E+02 0.25654290E+02 0.26175025E+02 0.26653129E+02 + 0.27089348E+02 0.27485687E+02 0.27843097E+02 0.28163515E+02 0.28447969E+02 + 0.28698226E+02 0.28915320E+02 0.29100862E+02 0.29255943E+02 0.29381992E+02 + 0.29480051E+02 0.29551413E+02 0.29597084E+02 0.29618213E+02 0.29615798E+02 + 0.29590896E+02 0.29544516E+02 0.29477656E+02 0.29391244E+02 0.29286175E+02 + 0.29163301E+02 0.29023490E+02 0.28867583E+02 0.28696384E+02 0.28510744E+02 + 0.28311432E+02 0.28099233E+02 0.27874915E+02 0.27639246E+02 0.27392986E+02 + 0.27136872E+02 0.26871628E+02 0.26597971E+02 0.26316602E+02 0.26028193E+02 + 0.25733437E+02 0.25433038E+02 0.25127645E+02 0.24817872E+02 0.24504312E+02 + 0.24187557E+02 0.23868201E+02 0.23546758E+02 0.23223728E+02 0.22899618E+02 + 0.22574938E+02 0.22250156E+02 0.21925648E+02 0.21601794E+02 0.21278954E+02 + 0.20957451E+02 0.20637543E+02 0.20319458E+02 0.20003405E+02 0.19689559E+02 + 0.19378084E+02 0.19069199E+02 0.18763126E+02 0.18460056E+02 0.18160154E+02 + 0.17863554E+02 0.17570344E+02 0.17280567E+02 0.16994255E+02 0.16711416E+02 + 0.16432065E+02 0.16156245E+02 0.15884016E+02 0.15615452E+02 0.15350617E+02 + 0.15089559E+02 0.14832291E+02 0.14578788E+02 0.14328961E+02 0.14082672E+02 + 0.13839789E+02 0.13600239E+02 0.13364057E+02 0.13131336E+02 0.12902222E+02 + 0.12676817E+02 0.12455132E+02 0.12237120E+02 0.12022671E+02 0.11811647E+02 + 0.11603963E+02 0.11399506E+02 0.11198222E+02 0.11000082E+02 0.10805078E+02 + 0.10613221E+02 0.10424489E+02 0.10238860E+02 0.10056247E+02 0.98765159E+01 + 0.96995785E+01 0.95253866E+01 0.93539181E+01 0.91851828E+01 0.90191575E+01 + 0.88558329E+01 0.86952009E+01 0.85372503E+01 0.83819980E+01 + 0.10000000E+01 0.28855925E+01 0.46581356E+01 0.63230235E+01 0.79105430E+01 + 0.94316403E+01 0.10902156E+02 0.12322163E+02 0.13699020E+02 0.15026826E+02 + 0.16310043E+02 0.17543525E+02 0.18731677E+02 0.19870922E+02 0.20965301E+02 + 0.22012094E+02 0.23014588E+02 0.23970606E+02 0.24883009E+02 0.25750317E+02 + 0.26575111E+02 0.27356450E+02 0.28096595E+02 0.28795025E+02 0.29453782E+02 + 0.30072758E+02 0.30653812E+02 0.31197101E+02 0.31704360E+02 0.32175907E+02 + 0.32613288E+02 0.33016929E+02 0.33388217E+02 0.33727713E+02 0.34036651E+02 + 0.34315637E+02 0.34565729E+02 0.34787588E+02 0.34982161E+02 0.35150164E+02 + 0.35292447E+02 0.35409777E+02 0.35502967E+02 0.35572773E+02 0.35619916E+02 + 0.35645121E+02 0.35649127E+02 0.35632649E+02 0.35596409E+02 0.35541161E+02 + 0.35467613E+02 0.35376496E+02 0.35268525E+02 0.35144402E+02 0.35004841E+02 + 0.34850534E+02 0.34682184E+02 0.34500493E+02 0.34306151E+02 0.34099849E+02 + 0.33882299E+02 0.33654212E+02 0.33416268E+02 0.33169122E+02 0.32913425E+02 + 0.32649829E+02 0.32378980E+02 0.32101446E+02 0.31817780E+02 0.31528559E+02 + 0.31234369E+02 0.30935758E+02 0.30633239E+02 0.30327292E+02 0.30018384E+02 + 0.29706929E+02 0.29393305E+02 0.29077877E+02 0.28760967E+02 0.28442898E+02 + 0.28123976E+02 0.27804536E+02 0.27484902E+02 0.27165379E+02 0.26846247E+02 + 0.26527745E+02 0.26210102E+02 0.25893481E+02 0.25578022E+02 0.25263868E+02 + 0.24951166E+02 0.24640072E+02 0.24330739E+02 0.24023332E+02 0.23718007E+02 + 0.23414900E+02 0.23114116E+02 0.22815739E+02 0.22519772E+02 0.22226203E+02 + 0.21934985E+02 0.21646113E+02 0.21359684E+02 0.21075839E+02 0.20794737E+02 + 0.20516513E+02 0.20241226E+02 0.19968861E+02 0.19699376E+02 0.19432687E+02 + 0.19168746E+02 0.18907532E+02 0.18649024E+02 0.18393246E+02 0.18140242E+02 + 0.17890044E+02 0.17642677E+02 0.17398127E+02 0.17156352E+02 0.16917248E+02 + 0.16680736E+02 0.16446808E+02 0.16215459E+02 0.15986748E+02 0.15760687E+02 + 0.15537266E+02 0.15316469E+02 0.15098304E+02 0.14882804E+02 + 0.10000000E+01 0.28958186E+01 0.46943565E+01 0.63982810E+01 0.80362710E+01 + 0.96162427E+01 0.11153887E+02 0.12647228E+02 0.14104908E+02 0.15519571E+02 + 0.16896977E+02 0.18230497E+02 0.19525524E+02 0.20777104E+02 0.21990010E+02 + 0.23160381E+02 0.24292054E+02 0.25381925E+02 0.26433221E+02 0.27443627E+02 + 0.28415929E+02 0.29348436E+02 0.30243517E+02 0.31099967E+02 0.31919845E+02 + 0.32702370E+02 0.33449358E+02 0.34160311E+02 0.34836859E+02 0.35478727E+02 + 0.36087328E+02 0.36662572E+02 0.37205709E+02 0.37716865E+02 0.38197128E+02 + 0.38646736E+02 0.39066554E+02 0.39456937E+02 0.39818682E+02 0.40152240E+02 + 0.40458305E+02 0.40737420E+02 0.40990226E+02 0.41217273E+02 0.41419147E+02 + 0.41596397E+02 0.41749626E+02 0.41879420E+02 0.41986382E+02 0.42071134E+02 + 0.42134276E+02 0.42176430E+02 0.42198210E+02 0.42200229E+02 0.42183110E+02 + 0.42147474E+02 0.42093932E+02 0.42023115E+02 0.41935666E+02 0.41832215E+02 + 0.41713450E+02 0.41580029E+02 0.41432603E+02 0.41271810E+02 0.41098261E+02 + 0.40912624E+02 0.40715506E+02 0.40507497E+02 0.40289160E+02 0.40061067E+02 + 0.39823830E+02 0.39578038E+02 0.39324254E+02 0.39063028E+02 0.38794902E+02 + 0.38520342E+02 0.38239821E+02 0.37953753E+02 0.37662551E+02 0.37366636E+02 + 0.37066406E+02 0.36762282E+02 0.36454671E+02 0.36143958E+02 0.35830485E+02 + 0.35514608E+02 0.35196645E+02 0.34876886E+02 0.34555596E+02 0.34233032E+02 + 0.33909440E+02 0.33585077E+02 0.33260193E+02 0.32935026E+02 0.32609811E+02 + 0.32284773E+02 0.31960128E+02 0.31636043E+02 0.31312633E+02 0.30989978E+02 + 0.30668147E+02 0.30347228E+02 0.30027369E+02 0.29708766E+02 0.29391603E+02 + 0.29076059E+02 0.28762249E+02 0.28450216E+02 0.28139985E+02 0.27831561E+02 + 0.27524948E+02 0.27220190E+02 0.26917329E+02 0.26616424E+02 0.26317573E+02 + 0.26020848E+02 0.25726308E+02 0.25433976E+02 0.25143843E+02 0.24855864E+02 + 0.24570000E+02 0.24286267E+02 0.24004699E+02 0.23725350E+02 0.23448258E+02 + 0.23173436E+02 0.22900896E+02 0.22630657E+02 0.22362753E+02 + 0.10000000E+01 0.29004111E+01 0.47109693E+01 0.64333445E+01 0.80955130E+01 + 0.97041384E+01 0.11274531E+02 0.12803848E+02 0.14301091E+02 0.15758583E+02 + 0.17182560E+02 0.18566155E+02 0.19915069E+02 0.21224148E+02 0.22498303E+02 + 0.23733550E+02 0.24933757E+02 0.26095764E+02 0.27222744E+02 0.28312336E+02 + 0.29367235E+02 0.30385699E+02 0.31369996E+02 0.32318838E+02 0.33234182E+02 + 0.34115126E+02 0.34963369E+02 0.35778283E+02 0.36561405E+02 0.37312301E+02 + 0.38032325E+02 0.38721183E+02 0.39380062E+02 0.40008902E+02 0.40608707E+02 + 0.41179539E+02 0.41722182E+02 0.42236836E+02 0.42724188E+02 0.43184542E+02 + 0.43618476E+02 0.44026380E+02 0.44408773E+02 0.44766084E+02 0.45098791E+02 + 0.45407310E+02 0.45692125E+02 0.45953698E+02 0.46192494E+02 0.46408999E+02 + 0.46603712E+02 0.46777109E+02 0.46929696E+02 0.47061945E+02 0.47174370E+02 + 0.47267451E+02 0.47341690E+02 0.47397593E+02 0.47435665E+02 0.47456443E+02 + 0.47460482E+02 0.47448341E+02 0.47420550E+02 0.47377641E+02 0.47320152E+02 + 0.47248616E+02 0.47163544E+02 0.47065436E+02 0.46954775E+02 0.46832051E+02 + 0.46697799E+02 0.46552532E+02 0.46396755E+02 0.46230969E+02 0.46055648E+02 + 0.45871240E+02 0.45678168E+02 0.45476858E+02 0.45267684E+02 0.45051028E+02 + 0.44827286E+02 0.44596857E+02 0.44360137E+02 0.44117513E+02 0.43869358E+02 + 0.43616026E+02 0.43357854E+02 0.43095154E+02 0.42828216E+02 0.42557340E+02 + 0.42282814E+02 0.42004929E+02 0.41723980E+02 0.41440244E+02 0.41153985E+02 + 0.40865457E+02 0.40574930E+02 0.40282632E+02 0.39988743E+02 0.39693417E+02 + 0.39396773E+02 0.39098960E+02 0.38800178E+02 0.38500657E+02 0.38200628E+02 + 0.37900309E+02 0.37599842E+02 0.37299351E+02 0.36998916E+02 0.36698595E+02 + 0.36398469E+02 0.36098634E+02 0.35799208E+02 0.35500317E+02 0.35202080E+02 + 0.34904596E+02 0.34607962E+02 0.34312235E+02 0.34017447E+02 0.33723624E+02 + 0.33430788E+02 0.33138983E+02 0.32848289E+02 0.32558753E+02 0.32270441E+02 + 0.31983408E+02 0.31697703E+02 0.31413396E+02 0.31130534E+02 + 0.10000000E+01 0.29056191E+01 0.47296117E+01 0.64726341E+01 0.81616193E+01 + 0.98020398E+01 0.11408575E+02 0.12977687E+02 0.14518453E+02 0.16023016E+02 + 0.17497807E+02 0.18935849E+02 0.20342894E+02 0.21713699E+02 0.23053101E+02 + 0.24357068E+02 0.25629332E+02 0.26866750E+02 0.28072313E+02 0.29243678E+02 + 0.30383306E+02 0.31489461E+02 0.32564182E+02 0.33606170E+02 0.34617189E+02 + 0.35596277E+02 0.36544958E+02 0.37462505E+02 0.38350286E+02 0.39207748E+02 + 0.40036099E+02 0.40834936E+02 0.41605340E+02 0.42347121E+02 0.43061183E+02 + 0.43747453E+02 0.44406638E+02 0.45038796E+02 0.45644538E+02 0.46224059E+02 + 0.46777850E+02 0.47306171E+02 0.47809465E+02 0.48288043E+02 0.48742295E+02 + 0.49172527E+02 0.49579147E+02 0.49962518E+02 0.50323045E+02 0.50661099E+02 + 0.50977090E+02 0.51271407E+02 0.51544451E+02 0.51796613E+02 0.52028305E+02 + 0.52239930E+02 0.52431906E+02 0.52604635E+02 0.52758543E+02 0.52894082E+02 + 0.53011698E+02 0.53111847E+02 0.53194989E+02 0.53261573E+02 0.53312059E+02 + 0.53346904E+02 0.53366553E+02 0.53371441E+02 0.53361950E+02 0.53338513E+02 + 0.53301600E+02 0.53251680E+02 0.53189209E+02 0.53114642E+02 0.53028396E+02 + 0.52930877E+02 0.52822496E+02 0.52703613E+02 0.52574587E+02 0.52435796E+02 + 0.52287606E+02 0.52130400E+02 0.51964572E+02 0.51790470E+02 0.51608451E+02 + 0.51418875E+02 0.51222093E+02 0.51018428E+02 0.50808199E+02 0.50591718E+02 + 0.50369295E+02 0.50141239E+02 0.49907856E+02 0.49669435E+02 0.49426271E+02 + 0.49178645E+02 0.48926842E+02 0.48671141E+02 0.48411758E+02 0.48148900E+02 + 0.47882735E+02 0.47613454E+02 0.47341312E+02 0.47066560E+02 0.46789442E+02 + 0.46510204E+02 0.46229060E+02 0.45946157E+02 0.45661627E+02 0.45375587E+02 + 0.45088153E+02 0.44799465E+02 0.44509696E+02 0.44219010E+02 0.43927597E+02 + 0.43635602E+02 0.43343132E+02 0.43050303E+02 0.42757167E+02 0.42463793E+02 + 0.42170262E+02 0.41876657E+02 0.41583083E+02 0.41289661E+02 0.40996480E+02 + 0.40703591E+02 0.40411084E+02 0.40119042E+02 0.39827535E+02 + 0.10000000E+01 0.29074632E+01 0.47363815E+01 0.64874455E+01 0.81870626E+01 + 0.98406497E+01 0.11462208E+02 0.13048307E+02 0.14607580E+02 0.16132600E+02 + 0.17629480E+02 0.19091722E+02 0.20524777E+02 0.21923860E+02 0.23293444E+02 + 0.24629947E+02 0.25936711E+02 0.27211038E+02 0.28455525E+02 0.29668224E+02 + 0.30851225E+02 0.32003149E+02 0.33125690E+02 0.34217861E+02 0.35281107E+02 + 0.36314730E+02 0.37319985E+02 0.38296342E+02 0.39244955E+02 0.40165419E+02 + 0.41058780E+02 0.41924730E+02 0.42764220E+02 0.43577090E+02 0.44364159E+02 + 0.45125340E+02 0.45861276E+02 0.46572004E+02 0.47258109E+02 0.47919714E+02 + 0.48557285E+02 0.49171011E+02 0.49761311E+02 0.50328411E+02 0.50872685E+02 + 0.51394365E+02 0.51893828E+02 0.52371344E+02 0.52827279E+02 0.53261936E+02 + 0.53675684E+02 0.54068822E+02 0.54441709E+02 0.54794663E+02 0.55128047E+02 + 0.55442177E+02 0.55737393E+02 0.56014055E+02 0.56272491E+02 0.56513108E+02 + 0.56736289E+02 0.56942416E+02 0.57131871E+02 0.57305024E+02 0.57462239E+02 + 0.57603901E+02 0.57730391E+02 0.57842050E+02 0.57939236E+02 0.58022295E+02 + 0.58091617E+02 0.58147594E+02 0.58190606E+02 0.58221036E+02 0.58239232E+02 + 0.58245541E+02 0.58240298E+02 0.58223824E+02 0.58196439E+02 0.58158443E+02 + 0.58110149E+02 0.58051894E+02 0.57983998E+02 0.57906772E+02 0.57820521E+02 + 0.57725541E+02 0.57622160E+02 0.57510658E+02 0.57391316E+02 0.57264415E+02 + 0.57130224E+02 0.56989028E+02 0.56841095E+02 0.56686700E+02 0.56526114E+02 + 0.56359582E+02 0.56187402E+02 0.56009806E+02 0.55827009E+02 0.55639214E+02 + 0.55446591E+02 0.55249326E+02 0.55047650E+02 0.54841844E+02 0.54632125E+02 + 0.54418724E+02 0.54201842E+02 0.53981653E+02 0.53758305E+02 0.53531915E+02 + 0.53302637E+02 0.53070632E+02 0.52836058E+02 0.52599099E+02 0.52359942E+02 + 0.52118747E+02 0.51875655E+02 0.51630794E+02 0.51384272E+02 0.51136166E+02 + 0.50886586E+02 0.50635621E+02 0.50383383E+02 0.50130008E+02 0.49875607E+02 + 0.49620262E+02 0.49364075E+02 0.49107166E+02 0.48849614E+02 + 0.10000000E+01 0.29106345E+01 0.47477697E+01 0.65117421E+01 0.82281750E+01 + 0.99019628E+01 0.11546455E+02 0.13157993E+02 0.14744942E+02 0.16300015E+02 + 0.17829180E+02 0.19326140E+02 0.20796155E+02 0.22234647E+02 0.23645834E+02 + 0.25026351E+02 0.26379250E+02 0.27702079E+02 0.28997113E+02 0.30262669E+02 + 0.31500486E+02 0.32709446E+02 0.33890915E+02 0.35044127E+02 0.36170237E+02 + 0.37268715E+02 0.38340566E+02 0.39385387E+02 0.40404117E+02 0.41396442E+02 + 0.42363239E+02 0.43304236E+02 0.44220257E+02 0.45111137E+02 0.45977612E+02 + 0.46819559E+02 0.47637578E+02 0.48431634E+02 0.49202288E+02 0.49949573E+02 + 0.50673940E+02 0.51375478E+02 0.52054606E+02 0.52711468E+02 0.53346426E+02 + 0.53959632E+02 0.54551439E+02 0.55122032E+02 0.55671748E+02 0.56200818E+02 + 0.56709574E+02 0.57198262E+02 0.57667187E+02 0.58116607E+02 0.58546816E+02 + 0.58958084E+02 0.59350681E+02 0.59724920E+02 0.60081083E+02 0.60419514E+02 + 0.60740532E+02 0.61044462E+02 0.61331610E+02 0.61602288E+02 0.61856823E+02 + 0.62095533E+02 0.62318740E+02 0.62526756E+02 0.62719881E+02 0.62898393E+02 + 0.63062631E+02 0.63212931E+02 0.63349633E+02 0.63473045E+02 0.63583479E+02 + 0.63681222E+02 0.63766595E+02 0.63839869E+02 0.63901300E+02 0.63951172E+02 + 0.63989780E+02 0.64017415E+02 0.64034354E+02 0.64040885E+02 0.64037258E+02 + 0.64023778E+02 0.64000728E+02 0.63968374E+02 0.63926984E+02 0.63876805E+02 + 0.63818109E+02 0.63751145E+02 0.63676161E+02 0.63593420E+02 0.63503165E+02 + 0.63405649E+02 0.63301120E+02 0.63189843E+02 0.63072028E+02 0.62947847E+02 + 0.62817492E+02 0.62681171E+02 0.62539115E+02 0.62391568E+02 0.62238784E+02 + 0.62080984E+02 0.61918363E+02 0.61751104E+02 0.61579375E+02 0.61403321E+02 + 0.61223103E+02 0.61038896E+02 0.60850863E+02 0.60659199E+02 0.60464090E+02 + 0.60265708E+02 0.60064206E+02 0.59859723E+02 0.59652403E+02 0.59442340E+02 + 0.59229674E+02 0.59014514E+02 0.58796995E+02 0.58577247E+02 0.58355386E+02 + 0.58131543E+02 0.57905835E+02 0.57678369E+02 0.57449261E+02 + 0.10000000E+01 0.29119481E+01 0.47526730E+01 0.65226320E+01 0.82471120E+01 + 0.99309803E+01 0.11587123E+02 0.13211946E+02 0.14813478E+02 0.16384720E+02 + 0.17931401E+02 0.19447584E+02 0.20938274E+02 0.22399281E+02 0.23834502E+02 + 0.25240979E+02 0.26621408E+02 0.27973758E+02 0.29299917E+02 0.30598618E+02 + 0.31871199E+02 0.33116946E+02 0.34336836E+02 0.35530470E+02 0.36698641E+02 + 0.37841148E+02 0.38958678E+02 0.40051110E+02 0.41119120E+02 0.42162595E+02 + 0.43182228E+02 0.44177876E+02 0.45150242E+02 0.46099223E+02 0.47025479E+02 + 0.47928879E+02 0.48810022E+02 0.49668809E+02 0.50505824E+02 0.51321021E+02 + 0.52114896E+02 0.52887436E+02 0.53639101E+02 0.54369929E+02 0.55080337E+02 + 0.55770366E+02 0.56440403E+02 0.57090553E+02 0.57721157E+02 0.58332374E+02 + 0.58924512E+02 0.59497783E+02 0.60052442E+02 0.60588739E+02 0.61106894E+02 + 0.61607178E+02 0.62089804E+02 0.62555055E+02 0.63003162E+02 0.63434446E+02 + 0.63849148E+02 0.64247561E+02 0.64629934E+02 0.64996538E+02 0.65347641E+02 + 0.65683506E+02 0.66004429E+02 0.66310665E+02 0.66602468E+02 0.66880064E+02 + 0.67143765E+02 0.67393820E+02 0.67630535E+02 0.67854161E+02 0.68064971E+02 + 0.68263211E+02 0.68449137E+02 0.68622994E+02 0.68785000E+02 0.68935367E+02 + 0.69074353E+02 0.69202180E+02 0.69319094E+02 0.69425349E+02 0.69521164E+02 + 0.69606795E+02 0.69682473E+02 0.69748428E+02 0.69804867E+02 0.69852009E+02 + 0.69890086E+02 0.69919288E+02 0.69939867E+02 0.69952037E+02 0.69956012E+02 + 0.69951999E+02 0.69940235E+02 0.69920912E+02 0.69894242E+02 0.69860390E+02 + 0.69819506E+02 0.69771780E+02 0.69717415E+02 0.69656638E+02 0.69589651E+02 + 0.69516661E+02 0.69437863E+02 0.69353415E+02 0.69263482E+02 0.69168201E+02 + 0.69067712E+02 0.68962173E+02 0.68851746E+02 0.68736616E+02 0.68616973E+02 + 0.68492958E+02 0.68364734E+02 0.68232448E+02 0.68096219E+02 0.67956166E+02 + 0.67812412E+02 0.67665066E+02 0.67514280E+02 0.67360182E+02 0.67202906E+02 + 0.67042573E+02 0.66879303E+02 0.66713224E+02 0.66544442E+02 + 0.10000000E+01 0.29136233E+01 0.47587730E+01 0.65357619E+01 0.82695371E+01 + 0.99646639E+01 0.11633754E+02 0.13273039E+02 0.14890449E+02 0.16478985E+02 + 0.18044336E+02 0.19580631E+02 0.21092786E+02 0.22576724E+02 0.24036194E+02 + 0.25468391E+02 0.26875814E+02 0.28256626E+02 0.29612475E+02 0.30942318E+02 + 0.32247219E+02 0.33526704E+02 0.34781467E+02 0.36011340E+02 0.37216855E+02 + 0.38398012E+02 0.39555258E+02 0.40688630E+02 0.41798632E+02 0.42885252E+02 + 0.43949038E+02 0.44989933E+02 0.46008532E+02 0.47004748E+02 0.47979198E+02 + 0.48931728E+02 0.49862936E+02 0.50772674E+02 0.51661552E+02 0.52529438E+02 + 0.53376868E+02 0.54203734E+02 0.55010561E+02 0.55797276E+02 0.56564344E+02 + 0.57311747E+02 0.58039895E+02 0.58748830E+02 0.59438895E+02 0.60110223E+02 + 0.60763110E+02 0.61397733E+02 0.62014327E+02 0.62613130E+02 0.63194329E+02 + 0.63758193E+02 0.64304879E+02 0.64834664E+02 0.65347742E+02 0.65844429E+02 + 0.66324925E+02 0.66789506E+02 0.67238392E+02 0.67671837E+02 0.68090086E+02 + 0.68493363E+02 0.68881947E+02 0.69256052E+02 0.69615935E+02 0.69961786E+02 + 0.70293910E+02 0.70612526E+02 0.70917919E+02 0.71210303E+02 0.71489928E+02 + 0.71757011E+02 0.72011798E+02 0.72254494E+02 0.72485294E+02 0.72704407E+02 + 0.72912040E+02 0.73108413E+02 0.73293753E+02 0.73468275E+02 0.73632196E+02 + 0.73785736E+02 0.73929120E+02 0.74062549E+02 0.74186235E+02 0.74300364E+02 + 0.74405139E+02 0.74500774E+02 0.74587487E+02 0.74665465E+02 0.74734888E+02 + 0.74795939E+02 0.74848841E+02 0.74893760E+02 0.74930904E+02 0.74960424E+02 + 0.74982470E+02 0.74997210E+02 0.75004830E+02 0.75005522E+02 0.74999479E+02 + 0.74986893E+02 0.74967940E+02 0.74942792E+02 0.74911612E+02 0.74874530E+02 + 0.74831695E+02 0.74783249E+02 0.74729337E+02 0.74670144E+02 0.74605829E+02 + 0.74536553E+02 0.74462456E+02 0.74383663E+02 0.74300298E+02 0.74212467E+02 + 0.74120290E+02 0.74023877E+02 0.73923368E+02 0.73818894E+02 0.73710571E+02 + 0.73598537E+02 0.73482901E+02 0.73363783E+02 0.73241322E+02 + 0.10000000E+01 0.29143120E+01 0.47614743E+01 0.65418407E+01 0.82803424E+01 + 0.99813765E+01 0.11657497E+02 0.13304778E+02 0.14931137E+02 0.16529555E+02 + 0.18105719E+02 0.19653842E+02 0.21178788E+02 0.22676629E+02 0.24150978E+02 + 0.25599251E+02 0.27023723E+02 0.28422858E+02 0.29798014E+02 0.31148471E+02 + 0.32474988E+02 0.33777410E+02 0.35056109E+02 0.36311249E+02 0.37543038E+02 + 0.38751785E+02 0.39937654E+02 0.41100940E+02 0.42241919E+02 0.43360772E+02 + 0.44457890E+02 0.45533318E+02 0.46587580E+02 0.47620628E+02 0.48633056E+02 + 0.49624678E+02 0.50596140E+02 0.51547191E+02 0.52478534E+02 0.53389907E+02 + 0.54281971E+02 0.55154482E+02 0.56008064E+02 0.56842533E+02 0.57658433E+02 + 0.58455644E+02 0.59234620E+02 0.59995342E+02 0.60738182E+02 0.61463244E+02 + 0.62170800E+02 0.62861035E+02 0.63534136E+02 0.64190360E+02 0.64829833E+02 + 0.65452852E+02 0.66059526E+02 0.66650148E+02 0.67224861E+02 0.67783963E+02 + 0.68327621E+02 0.68856097E+02 0.69369597E+02 0.69868342E+02 0.70352563E+02 + 0.70822467E+02 0.71278312E+02 0.71720277E+02 0.72148604E+02 0.72563443E+02 + 0.72965096E+02 0.73353761E+02 0.73729706E+02 0.74093124E+02 0.74444228E+02 + 0.74783198E+02 0.75110271E+02 0.75425602E+02 0.75729393E+02 0.76021835E+02 + 0.76303102E+02 0.76573395E+02 0.76832889E+02 0.77081778E+02 0.77320245E+02 + 0.77548495E+02 0.77766742E+02 0.77975159E+02 0.78173946E+02 0.78363264E+02 + 0.78543287E+02 0.78714187E+02 0.78876175E+02 0.79029398E+02 0.79174049E+02 + 0.79310300E+02 0.79438336E+02 0.79558294E+02 0.79670358E+02 0.79774644E+02 + 0.79871276E+02 0.79960411E+02 0.80042208E+02 0.80116865E+02 0.80184565E+02 + 0.80245464E+02 0.80299712E+02 0.80347445E+02 0.80388832E+02 0.80423971E+02 + 0.80453001E+02 0.80476065E+02 0.80493296E+02 0.80504858E+02 0.80510894E+02 + 0.80511546E+02 0.80506941E+02 0.80497174E+02 0.80482377E+02 0.80462643E+02 + 0.80438083E+02 0.80408800E+02 0.80374916E+02 0.80336549E+02 0.80293822E+02 + 0.80246854E+02 0.80195746E+02 0.80140618E+02 0.80081614E+02 + 0.10000000E+01 0.29169182E+01 0.47708679E+01 0.65617993E+01 0.83141434E+01 + 0.10031672E+02 0.11726659E+02 0.13394775E+02 0.15043933E+02 0.16666949E+02 + 0.18269584E+02 0.19845949E+02 0.21400904E+02 0.22930502E+02 0.24438240E+02 + 0.25921609E+02 0.27382695E+02 0.28820104E+02 0.30234926E+02 0.31626649E+02 + 0.32995718E+02 0.34342216E+02 0.35666196E+02 0.36968058E+02 0.38247693E+02 + 0.39505629E+02 0.40741726E+02 0.41956463E+02 0.43149866E+02 0.44322241E+02 + 0.45473811E+02 0.46604674E+02 0.47715253E+02 0.48805486E+02 0.49875937E+02 + 0.50926347E+02 0.51957389E+02 0.52968727E+02 0.53961122E+02 0.54934184E+02 + 0.55888650E+02 0.56824136E+02 0.57741340E+02 0.58639954E+02 0.59520590E+02 + 0.60383020E+02 0.61227762E+02 0.62054703E+02 0.62864230E+02 0.63656395E+02 + 0.64431453E+02 0.65189583E+02 0.65930913E+02 0.66655710E+02 0.67364054E+02 + 0.68056257E+02 0.68732368E+02 0.69392699E+02 0.70037328E+02 0.70666560E+02 + 0.71280528E+02 0.71879471E+02 0.72463558E+02 0.73033004E+02 0.73587999E+02 + 0.74128721E+02 0.74655431E+02 0.75168257E+02 0.75667457E+02 0.76153140E+02 + 0.76625584E+02 0.77084955E+02 0.77531505E+02 0.77965378E+02 0.78386790E+02 + 0.78795903E+02 0.79192938E+02 0.79578066E+02 0.79951456E+02 0.80313274E+02 + 0.80663683E+02 0.81002845E+02 0.81330934E+02 0.81648145E+02 0.81954632E+02 + 0.82250606E+02 0.82536259E+02 0.82811750E+02 0.83077262E+02 0.83332924E+02 + 0.83578929E+02 0.83815411E+02 0.84042567E+02 0.84260549E+02 0.84469530E+02 + 0.84669643E+02 0.84861082E+02 0.85043986E+02 0.85218511E+02 0.85384779E+02 + 0.85542920E+02 0.85693070E+02 0.85835401E+02 0.85970068E+02 0.86097242E+02 + 0.86217087E+02 0.86329745E+02 0.86435352E+02 0.86534057E+02 0.86625982E+02 + 0.86711247E+02 0.86789986E+02 0.86862345E+02 0.86928448E+02 0.86988448E+02 + 0.87042486E+02 0.87090674E+02 0.87133114E+02 0.87169923E+02 0.87201193E+02 + 0.87227047E+02 0.87247582E+02 0.87262944E+02 0.87273226E+02 0.87278560E+02 + 0.87279055E+02 0.87274806E+02 0.87265938E+02 0.87252578E+02 + 0.10000000E+01 0.29162374E+01 0.47688057E+01 0.65579624E+01 0.83085261E+01 + 0.10024468E+02 0.11718166E+02 0.13385375E+02 0.15034010E+02 0.16657024E+02 + 0.18260127E+02 0.19837678E+02 0.21394450E+02 0.22926793E+02 0.24438047E+02 + 0.25926021E+02 0.27392595E+02 0.28836698E+02 0.30259216E+02 0.31659938E+02 + 0.33039096E+02 0.34397050E+02 0.35733629E+02 0.37049471E+02 0.38344251E+02 + 0.39618711E+02 0.40872542E+02 0.42106409E+02 0.43320212E+02 0.44514396E+02 + 0.45689075E+02 0.46844442E+02 0.47980853E+02 0.49098283E+02 0.50197272E+02 + 0.51277544E+02 0.52339799E+02 0.53383642E+02 0.54409884E+02 0.55418048E+02 + 0.56408934E+02 0.57382065E+02 0.58338199E+02 0.59276946E+02 0.60198958E+02 + 0.61103933E+02 0.61992409E+02 0.62864233E+02 0.63719790E+02 0.64559109E+02 + 0.65382428E+02 0.66189899E+02 0.66981634E+02 0.67757884E+02 0.68518677E+02 + 0.69264325E+02 0.69994837E+02 0.70710523E+02 0.71411423E+02 0.72097838E+02 + 0.72769851E+02 0.73427675E+02 0.74071459E+02 0.74701373E+02 0.75317597E+02 + 0.75920288E+02 0.76509674E+02 0.77085858E+02 0.77649072E+02 0.78199396E+02 + 0.78737088E+02 0.79262261E+02 0.79775171E+02 0.80275915E+02 0.80764712E+02 + 0.81241678E+02 0.81706999E+02 0.82160815E+02 0.82603259E+02 0.83034474E+02 + 0.83454600E+02 0.83863790E+02 0.84262180E+02 0.84649942E+02 0.85027217E+02 + 0.85394164E+02 0.85750952E+02 0.86097722E+02 0.86434627E+02 0.86761782E+02 + 0.87079370E+02 0.87387501E+02 0.87686354E+02 0.87976044E+02 0.88256736E+02 + 0.88528527E+02 0.88791593E+02 0.89046038E+02 0.89292019E+02 0.89529635E+02 + 0.89759005E+02 0.89980247E+02 0.90193509E+02 0.90398939E+02 0.90596689E+02 + 0.90786880E+02 0.90969665E+02 0.91145165E+02 0.91313494E+02 0.91474779E+02 + 0.91629132E+02 0.91776669E+02 0.91917532E+02 0.92051837E+02 0.92179722E+02 + 0.92301309E+02 0.92416698E+02 0.92525967E+02 0.92629243E+02 0.92726610E+02 + 0.92818181E+02 0.92904049E+02 0.92984351E+02 0.93059180E+02 0.93128645E+02 + 0.93192836E+02 0.93251887E+02 0.93305901E+02 0.93354980E+02 + 0.10000000E+01 0.29153792E+01 0.47659928E+01 0.65523260E+01 0.82995790E+01 + 0.10011853E+02 0.11701740E+02 0.13365003E+02 0.15009636E+02 0.16628606E+02 + 0.18227654E+02 0.19801214E+02 0.21354062E+02 0.22882680E+02 0.24390345E+02 + 0.25875051E+02 0.27338573E+02 0.28780042E+02 0.30200220E+02 0.31599087E+02 + 0.32976761E+02 0.34333770E+02 0.35669811E+02 0.36985697E+02 0.38280970E+02 + 0.39556535E+02 0.40811977E+02 0.42048098E+02 0.43264720E+02 0.44462381E+02 + 0.45641146E+02 0.46801272E+02 0.47943095E+02 0.49066624E+02 0.50172399E+02 + 0.51260150E+02 0.52330609E+02 0.53383321E+02 0.54419166E+02 0.55437607E+02 + 0.56439501E+02 0.57424322E+02 0.58392888E+02 0.59344740E+02 0.60280587E+02 + 0.61200068E+02 0.62103774E+02 0.62991501E+02 0.63863661E+02 0.64720269E+02 + 0.65561562E+02 0.66387710E+02 0.67198781E+02 0.67995055E+02 0.68776527E+02 + 0.69543520E+02 0.70296034E+02 0.71034380E+02 0.71758596E+02 0.72468994E+02 + 0.73165614E+02 0.73848701E+02 0.74518373E+02 0.75174798E+02 0.75818160E+02 + 0.76448573E+02 0.77066273E+02 0.77671342E+02 0.78264009E+02 0.78844336E+02 + 0.79412591E+02 0.79968875E+02 0.80513442E+02 0.81046367E+02 0.81567858E+02 + 0.82078007E+02 0.82576995E+02 0.83064952E+02 0.83542019E+02 0.84008325E+02 + 0.84464007E+02 0.84909198E+02 0.85344017E+02 0.85768617E+02 0.86183129E+02 + 0.86587703E+02 0.86982505E+02 0.87367662E+02 0.87743328E+02 0.88109595E+02 + 0.88466612E+02 0.88814478E+02 0.89153359E+02 0.89483348E+02 0.89804613E+02 + 0.90117256E+02 0.90421425E+02 0.90717207E+02 0.91004751E+02 0.91284133E+02 + 0.91555475E+02 0.91818870E+02 0.92074466E+02 0.92322388E+02 0.92562792E+02 + 0.92795800E+02 0.93021518E+02 0.93240065E+02 0.93451562E+02 0.93656116E+02 + 0.93853843E+02 0.94044842E+02 0.94229223E+02 0.94407101E+02 0.94578597E+02 + 0.94743808E+02 0.94902850E+02 0.95055794E+02 0.95202756E+02 0.95343814E+02 + 0.95479051E+02 0.95608563E+02 0.95732467E+02 0.95850840E+02 0.95963816E+02 + 0.96071451E+02 0.96173890E+02 0.96271214E+02 0.96363539E+02 + 0.10000000E+01 0.29174076E+01 0.47733811E+01 0.65680654E+01 0.83263558E+01 + 0.10051770E+02 0.11756766E+02 0.13436690E+02 0.15099616E+02 0.16738306E+02 + 0.18358608E+02 0.19954852E+02 0.21531822E+02 0.23085989E+02 0.24620537E+02 + 0.26133532E+02 0.27626575E+02 0.29098952E+02 0.30551186E+02 0.31983449E+02 + 0.33395591E+02 0.34788357E+02 0.36161175E+02 0.37515068E+02 0.38849310E+02 + 0.40164995E+02 0.41461475E+02 0.42739695E+02 0.43999289E+02 0.45240891E+02 + 0.46464430E+02 0.47670207E+02 0.48858484E+02 0.50029261E+02 0.51183061E+02 + 0.52319550E+02 0.53439506E+02 0.54542372E+02 0.55629103E+02 0.56699027E+02 + 0.57753092E+02 0.58790632E+02 0.59812557E+02 0.60818301E+02 0.61808644E+02 + 0.62783136E+02 0.63742405E+02 0.64686183E+02 0.65614890E+02 0.66528507E+02 + 0.67427251E+02 0.68311288E+02 0.69180660E+02 0.70035652E+02 0.70876218E+02 + 0.71702704E+02 0.72515021E+02 0.73313519E+02 0.74098175E+02 0.74869290E+02 + 0.75626899E+02 0.76371219E+02 0.77102360E+02 0.77820478E+02 0.78525729E+02 + 0.79218219E+02 0.79898171E+02 0.80565628E+02 0.81220839E+02 0.81863814E+02 + 0.82494826E+02 0.83113959E+02 0.83721453E+02 0.84317352E+02 0.84901856E+02 + 0.85475050E+02 0.86037102E+02 0.86588128E+02 0.87128254E+02 0.87657596E+02 + 0.88176259E+02 0.88684369E+02 0.89182043E+02 0.89669415E+02 0.90146603E+02 + 0.90613760E+02 0.91071038E+02 0.91518556E+02 0.91956469E+02 0.92384848E+02 + 0.92803839E+02 0.93213528E+02 0.93614088E+02 0.94005591E+02 0.94388200E+02 + 0.94761986E+02 0.95127113E+02 0.95483623E+02 0.95831671E+02 0.96171314E+02 + 0.96502669E+02 0.96825839E+02 0.97140955E+02 0.97448156E+02 0.97747555E+02 + 0.98039293E+02 0.98323469E+02 0.98600179E+02 0.98869562E+02 0.99131699E+02 + 0.99386715E+02 0.99634706E+02 0.99875774E+02 0.10011004E+03 0.10033761E+03 + 0.10055857E+03 0.10077303E+03 0.10098105E+03 0.10118274E+03 0.10137816E+03 + 0.10156742E+03 0.10175060E+03 0.10192780E+03 0.10209911E+03 0.10226464E+03 + 0.10242447E+03 0.10257872E+03 0.10272747E+03 0.10287086E+03 + 0.10000000E+01 0.29137368E+01 0.47606917E+01 0.65417175E+01 0.82828510E+01 + 0.99882980E+01 0.11671164E+02 0.13327110E+02 0.14964384E+02 0.16575872E+02 + 0.18167428E+02 0.19733591E+02 0.21279123E+02 0.22800765E+02 0.24301647E+02 + 0.25780109E+02 0.27237724E+02 0.28673985E+02 0.30089444E+02 0.31484416E+02 + 0.32858827E+02 0.34213501E+02 0.35547951E+02 0.36863241E+02 0.38158731E+02 + 0.39435566E+02 0.40693206E+02 0.41932653E+02 0.43153639E+02 0.44356846E+02 + 0.45542285E+02 0.46710307E+02 0.47861238E+02 0.48995123E+02 0.50112533E+02 + 0.51213180E+02 0.52297885E+02 0.53366110E+02 0.54418860E+02 0.55455449E+02 + 0.56476893E+02 0.57482545E+02 0.58473343E+02 0.59448734E+02 0.60409541E+02 + 0.61355324E+02 0.62286749E+02 0.63203529E+02 0.64106128E+02 0.64994550E+02 + 0.65869016E+02 0.66729731E+02 0.67576740E+02 0.68410358E+02 0.69230524E+02 + 0.70037612E+02 0.70831547E+02 0.71612693E+02 0.72381045E+02 0.73136929E+02 + 0.73880397E+02 0.74611673E+02 0.75330857E+02 0.76038111E+02 0.76733636E+02 + 0.77417516E+02 0.78090009E+02 0.78751167E+02 0.79401236E+02 0.80040234E+02 + 0.80668438E+02 0.81285912E+02 0.81892912E+02 0.82489500E+02 0.83075902E+02 + 0.83652187E+02 0.84218538E+02 0.84775050E+02 0.85321835E+02 0.85858992E+02 + 0.86386623E+02 0.86904869E+02 0.87413828E+02 0.87913655E+02 0.88404464E+02 + 0.88886382E+02 0.89359558E+02 0.89824082E+02 0.90280103E+02 0.90727687E+02 + 0.91166989E+02 0.91598070E+02 0.92021105E+02 0.92436152E+02 0.92843357E+02 + 0.93242764E+02 0.93634538E+02 0.94018720E+02 0.94395439E+02 0.94764735E+02 + 0.95126732E+02 0.95481494E+02 0.95829152E+02 0.96169804E+02 0.96503592E+02 + 0.96830601E+02 0.97150950E+02 0.97464726E+02 0.97772015E+02 0.98072895E+02 + 0.98367467E+02 0.98655821E+02 0.98938039E+02 0.99214230E+02 0.99484490E+02 + 0.99748865E+02 0.10000747E+03 0.10026034E+03 0.10050756E+03 0.10074919E+03 + 0.10098532E+03 0.10121600E+03 0.10144134E+03 0.10166140E+03 0.10187629E+03 + 0.10208604E+03 0.10229078E+03 0.10249056E+03 0.10268551E+03 + 128 + 0.10000000E+01 0.25780790E+01 0.36241849E+01 0.41701440E+01 0.43751666E+01 + 0.43330725E+01 0.41449061E+01 0.38587356E+01 0.35160920E+01 0.31427957E+01 + 0.27543616E+01 0.23686009E+01 0.19978107E+01 0.16522148E+01 0.13391779E+01 + 0.10624284E+01 0.82684463E+00 0.62972114E+00 0.47252897E+00 0.34904572E+00 + 0.25761991E+00 0.18931459E+00 0.14131236E+00 0.10712442E+00 0.83042953E-01 + 0.65134331E-01 0.51263517E-01 0.40190697E-01 0.31233755E-01 0.24015451E-01 + 0.18155004E-01 0.13241774E-01 0.90545846E-02 0.57603072E-02 0.33872075E-02 + 0.17104852E-02 0.56768942E-03 -0.73730451E-04 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26256492E+01 0.38016303E+01 0.45858921E+01 0.50980713E+01 + 0.53984628E+01 0.55463976E+01 0.55664915E+01 0.54853236E+01 0.53178723E+01 + 0.50738621E+01 0.47693308E+01 0.44174021E+01 0.40359747E+01 0.36379904E+01 + 0.32381908E+01 0.28494856E+01 0.24805459E+01 0.21412208E+01 0.18333336E+01 + 0.15626467E+01 0.13253291E+01 0.11227543E+01 0.94857167E+00 0.80008100E+00 + 0.67269616E+00 0.56369466E+00 0.47064464E+00 0.39164835E+00 0.32485816E+00 + 0.26862365E+00 0.22126807E+00 0.18145428E+00 0.14821719E+00 0.12061709E+00 + 0.97632236E-01 0.78512244E-01 0.62779919E-01 0.50008602E-01 0.39717325E-01 + 0.31408725E-01 0.24714358E-01 0.19272397E-01 0.14757902E-01 0.11073371E-01 + 0.81672024E-02 0.59314662E-02 0.42426824E-02 0.29873536E-02 0.20835914E-02 + 0.14669795E-02 0.10765343E-02 0.84288558E-03 0.68827481E-03 0.57022743E-03 + 0.47541049E-03 0.41250573E-03 0.39366657E-03 0.40075020E-03 0.38200157E-03 + 0.34290124E-03 0.30852277E-03 0.27845797E-03 0.24919565E-03 0.20500260E-03 + 0.16385796E-03 0.14607934E-03 0.14175133E-03 0.15058537E-03 0.16619634E-03 + 0.17995547E-03 0.17423589E-03 0.13728333E-03 0.83979501E-04 0.48108171E-04 + 0.44687392E-04 0.63470061E-04 0.86245990E-04 0.10212789E-03 0.11817243E-03 + 0.13218988E-03 0.13419270E-03 0.10999213E-03 0.72491533E-04 0.17007503E-04 + -0.47292201E-04 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26670010E+01 0.39431399E+01 0.48914153E+01 0.56108624E+01 + 0.61503314E+01 0.65504166E+01 0.68256741E+01 0.69924111E+01 0.70585304E+01 + 0.70307916E+01 0.69186745E+01 0.67317715E+01 0.64833952E+01 0.61840757E+01 + 0.58472871E+01 0.54854121E+01 0.51094800E+01 0.47314222E+01 0.43578861E+01 + 0.39984803E+01 0.36551663E+01 0.33333840E+01 0.30314843E+01 0.27506381E+01 + 0.24897669E+01 0.22488764E+01 0.20273567E+01 0.18247263E+01 0.16399393E+01 + 0.14720338E+01 0.13195992E+01 0.11813863E+01 0.10563032E+01 0.94324853E+00 + 0.84107292E+00 0.74885172E+00 0.66587444E+00 0.59147269E+00 0.52490298E+00 + 0.46540283E+00 0.41227805E+00 0.36486318E+00 0.32253402E+00 0.28482884E+00 + 0.25133823E+00 0.22166020E+00 0.19539366E+00 0.17215017E+00 0.15163119E+00 + 0.13353956E+00 0.11761743E+00 0.10356533E+00 0.91114990E-01 0.80060026E-01 + 0.70283181E-01 0.61679238E-01 0.54121840E-01 0.47449898E-01 0.41533283E-01 + 0.36301785E-01 0.31713642E-01 0.27681036E-01 0.24110815E-01 0.20942606E-01 + 0.18150141E-01 0.15719791E-01 0.13629789E-01 0.11823066E-01 0.10248752E-01 + 0.88787288E-02 0.76997868E-02 0.67005788E-02 0.58553538E-02 0.51608852E-02 + 0.45837932E-02 0.40998935E-02 0.37021814E-02 0.33632842E-02 0.30508157E-02 + 0.27490732E-02 0.24680848E-02 0.22234524E-02 0.20121036E-02 0.18304424E-02 + 0.16805384E-02 0.15492104E-02 0.14279963E-02 0.13069300E-02 0.11861562E-02 + 0.10680759E-02 0.94458890E-03 0.79715636E-03 0.62966015E-03 0.46743792E-03 + 0.35326111E-03 0.29255852E-03 0.25091729E-03 0.22577254E-03 0.21605146E-03 + 0.22276126E-03 0.25377610E-03 0.28964480E-03 0.31848467E-03 0.33302239E-03 + 0.34061166E-03 0.34638609E-03 0.30483489E-03 0.21949210E-03 0.10511114E-03 + -0.42491678E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27046007E+01 0.40674286E+01 0.51438385E+01 0.60178814E+01 + 0.67339273E+01 0.73260927E+01 0.78063623E+01 0.81850486E+01 0.84668938E+01 + 0.86571393E+01 0.87617295E+01 0.87879852E+01 0.87443813E+01 0.86381726E+01 + 0.84779667E+01 0.82723064E+01 0.80291620E+01 0.77577991E+01 0.74644600E+01 + 0.71577192E+01 0.68413567E+01 0.65216518E+01 0.62002036E+01 0.58805073E+01 + 0.55643540E+01 0.52541972E+01 0.49517241E+01 0.46585625E+01 0.43755772E+01 + 0.41036424E+01 0.38430643E+01 0.35940937E+01 0.33569393E+01 0.31315735E+01 + 0.29178198E+01 0.27155351E+01 0.25246076E+01 0.23448405E+01 0.21759111E+01 + 0.20173845E+01 0.18688161E+01 0.17296702E+01 0.15994472E+01 0.14777246E+01 + 0.13640849E+01 0.12581174E+01 0.11594293E+01 0.10675963E+01 0.98231755E+00 + 0.90319220E+00 0.82985908E+00 0.76190265E+00 0.69895204E+00 0.64066747E+00 + 0.58676289E+00 0.53696450E+00 0.49100938E+00 0.44862773E+00 0.40955889E+00 + 0.37357606E+00 0.34046986E+00 0.31002760E+00 0.28204634E+00 0.25632260E+00 + 0.23268273E+00 0.21097944E+00 0.19108201E+00 0.17286136E+00 0.15618111E+00 + 0.14091985E+00 0.12695530E+00 0.11419583E+00 0.10255485E+00 0.91941798E-01 + 0.82276328E-01 0.73486361E-01 0.65523887E-01 0.58322069E-01 0.51836390E-01 + 0.46015706E-01 0.40799878E-01 0.36113787E-01 0.31892027E-01 0.28098181E-01 + 0.24689816E-01 0.21627253E-01 0.18887414E-01 0.16419266E-01 0.14211650E-01 + 0.12260247E-01 0.10532401E-01 0.90101756E-02 0.76325329E-02 0.64172274E-02 + 0.53730268E-02 0.45030484E-02 0.37987514E-02 0.32200730E-02 0.27764118E-02 + 0.24541782E-02 0.22311106E-02 0.20628693E-02 0.18914743E-02 0.17095500E-02 + 0.15269827E-02 0.13559868E-02 0.11694499E-02 0.97644173E-03 0.83681732E-03 + 0.78131364E-03 0.77555297E-03 0.79011832E-03 0.81424220E-03 0.84672130E-03 + 0.89554530E-03 0.91136841E-03 0.85161450E-03 0.72674489E-03 0.59364240E-03 + 0.49862280E-03 0.42986619E-03 0.38276935E-03 0.34480017E-03 0.32641016E-03 + 0.34300526E-03 0.35411153E-03 0.32608920E-03 0.26795010E-03 + 0.10000000E+01 0.27359746E+01 0.41715387E+01 0.53559446E+01 0.63604664E+01 + 0.72245783E+01 0.79771367E+01 0.86282724E+01 0.91843182E+01 0.96475545E+01 + 0.10021530E+02 0.10309916E+02 0.10518347E+02 0.10652686E+02 0.10718288E+02 + 0.10721084E+02 0.10667272E+02 0.10562906E+02 0.10415285E+02 0.10229946E+02 + 0.10014253E+02 0.97724352E+01 0.95105519E+01 0.92314899E+01 0.89395177E+01 + 0.86376254E+01 0.83292539E+01 0.80171210E+01 0.77038508E+01 0.73913321E+01 + 0.70814379E+01 0.67754821E+01 0.64746640E+01 0.61801136E+01 0.58926669E+01 + 0.56129966E+01 0.53416841E+01 0.50792368E+01 0.48259910E+01 0.45821112E+01 + 0.43476042E+01 0.41223739E+01 0.39062210E+01 0.36989471E+01 0.35003460E+01 + 0.33102043E+01 0.31283279E+01 0.29545301E+01 0.27885408E+01 0.26302224E+01 + 0.24792920E+01 0.23355486E+01 0.21986920E+01 0.20684793E+01 0.19446927E+01 + 0.18271693E+01 0.17157600E+01 0.16102852E+01 0.15105401E+01 0.14163356E+01 + 0.13274830E+01 0.12437892E+01 0.11650337E+01 0.10909428E+01 0.10212429E+01 + 0.95566503E+00 0.89398343E+00 0.83595416E+00 0.78136703E+00 0.73002457E+00 + 0.68175244E+00 0.63641906E+00 0.59387123E+00 0.55394034E+00 0.51646215E+00 + 0.48128186E+00 0.44825866E+00 0.41728499E+00 0.38826383E+00 0.36109362E+00 + 0.33568568E+00 0.31195811E+00 0.28981050E+00 0.26912358E+00 0.24976132E+00 + 0.23158021E+00 0.21449778E+00 0.19846032E+00 0.18345101E+00 0.16945720E+00 + 0.15642070E+00 0.14429598E+00 0.13302664E+00 0.12262267E+00 0.11306060E+00 + 0.10430368E+00 0.96265289E-01 0.88883965E-01 0.82121184E-01 0.75920664E-01 + 0.70228927E-01 0.64947381E-01 0.60042681E-01 0.55476854E-01 0.51234848E-01 + 0.47307142E-01 0.43669273E-01 0.40320470E-01 0.37254558E-01 0.34455318E-01 + 0.31884420E-01 0.29504138E-01 0.27303918E-01 0.25245943E-01 0.23309917E-01 + 0.21487661E-01 0.19785652E-01 0.18251202E-01 0.16888136E-01 0.15672195E-01 + 0.14558544E-01 0.13520702E-01 0.12558784E-01 0.11663956E-01 0.10814025E-01 + 0.99869743E-02 0.91881953E-02 0.84344858E-02 0.77409366E-02 + 0.10000000E+01 0.27569854E+01 0.42403492E+01 0.54938877E+01 0.65812603E+01 + 0.75390526E+01 0.83942257E+01 0.91567841E+01 0.98316895E+01 0.10420110E+02 + 0.10924473E+02 0.11347308E+02 0.11693135E+02 0.11966520E+02 0.12171737E+02 + 0.12313311E+02 0.12396043E+02 0.12424662E+02 0.12404964E+02 0.12341523E+02 + 0.12240416E+02 0.12105400E+02 0.11941713E+02 0.11752241E+02 0.11540988E+02 + 0.11310993E+02 0.11065689E+02 0.10807908E+02 0.10540409E+02 0.10265333E+02 + 0.99848486E+01 0.97006562E+01 0.94143408E+01 0.91274224E+01 0.88411459E+01 + 0.85566032E+01 0.82747854E+01 0.79965978E+01 0.77227375E+01 0.74537458E+01 + 0.71899880E+01 0.69317211E+01 0.66790839E+01 0.64322283E+01 0.61912612E+01 + 0.59562459E+01 0.57272713E+01 0.55044141E+01 0.52876445E+01 0.50770469E+01 + 0.48725736E+01 0.46742281E+01 0.44819190E+01 0.42956008E+01 0.41152562E+01 + 0.39408777E+01 0.37724673E+01 0.36100068E+01 0.34534593E+01 0.33027798E+01 + 0.31579292E+01 0.30188393E+01 0.28854046E+01 0.27574729E+01 0.26348642E+01 + 0.25173866E+01 0.24048207E+01 0.22969884E+01 0.21937107E+01 0.20948318E+01 + 0.20002113E+01 0.19097241E+01 0.18232482E+01 0.17406265E+01 0.16616665E+01 + 0.15861782E+01 0.15139708E+01 0.14448999E+01 0.13788527E+01 0.13157186E+01 + 0.12554201E+01 0.11978514E+01 0.11428861E+01 0.10903798E+01 0.10401524E+01 + 0.99203591E+00 0.94591810E+00 0.90173701E+00 0.85948326E+00 0.81916104E+00 + 0.78072206E+00 0.74409845E+00 0.70919836E+00 0.67595598E+00 0.64430571E+00 + 0.61416548E+00 0.58546677E+00 0.55814512E+00 0.53214040E+00 0.50738976E+00 + 0.48379726E+00 0.46124955E+00 0.43965596E+00 0.41894768E+00 0.39911019E+00 + 0.38013773E+00 0.36203321E+00 0.34477906E+00 0.32836506E+00 0.31278187E+00 + 0.29798551E+00 0.28391809E+00 0.27050105E+00 0.25768103E+00 0.24542098E+00 + 0.23370460E+00 0.22251523E+00 0.21182939E+00 0.20165364E+00 0.19198223E+00 + 0.18279425E+00 0.17406031E+00 0.16572621E+00 0.15774908E+00 0.15012718E+00 + 0.14283602E+00 0.13585348E+00 0.12916288E+00 0.12278302E+00 + 0.10000000E+01 0.27889108E+01 0.43450385E+01 0.57047334E+01 0.69204113E+01 + 0.80236718E+01 0.90379233E+01 0.99726141E+01 0.10830755E+02 0.11611870E+02 + 0.12316734E+02 0.12946176E+02 0.13503068E+02 0.13990211E+02 0.14410415E+02 + 0.14766388E+02 0.15061130E+02 0.15297720E+02 0.15480011E+02 0.15611356E+02 + 0.15696093E+02 0.15737311E+02 0.15739043E+02 0.15704034E+02 0.15635789E+02 + 0.15537248E+02 0.15411635E+02 0.15261771E+02 0.15090439E+02 0.14899975E+02 + 0.14692777E+02 0.14470904E+02 0.14236313E+02 0.13990927E+02 0.13736440E+02 + 0.13474415E+02 0.13206269E+02 0.12933332E+02 0.12656712E+02 0.12377370E+02 + 0.12096127E+02 0.11813682E+02 0.11530628E+02 0.11247560E+02 0.10964992E+02 + 0.10683388E+02 0.10403233E+02 0.10125001E+02 0.98490400E+01 0.95757729E+01 + 0.93055060E+01 0.90385738E+01 0.87752161E+01 0.85157208E+01 0.82603713E+01 + 0.80094555E+01 0.77632339E+01 0.75219590E+01 0.72858523E+01 0.70551350E+01 + 0.68300004E+01 0.66105725E+01 0.63969448E+01 0.61891613E+01 0.59872080E+01 + 0.57910199E+01 0.56004923E+01 0.54155357E+01 0.52360496E+01 0.50619440E+01 + 0.48931750E+01 0.47297008E+01 0.45714592E+01 0.44183327E+01 0.42701526E+01 + 0.41267244E+01 0.39878852E+01 0.38535109E+01 0.37234962E+01 0.35977547E+01 + 0.34762138E+01 0.33587715E+01 0.32452652E+01 0.31354820E+01 0.30291953E+01 + 0.29261959E+01 0.28263727E+01 0.27297013E+01 0.26361757E+01 0.25458011E+01 + 0.24585364E+01 0.23743217E+01 0.22930676E+01 0.22146560E+01 0.21389390E+01 + 0.20657710E+01 0.19950575E+01 0.19267453E+01 0.18607973E+01 0.17971115E+01 + 0.17355605E+01 0.16759935E+01 0.16182936E+01 0.15623879E+01 0.15082289E+01 + 0.14558016E+01 0.14050869E+01 0.13560626E+01 0.13087202E+01 0.12630177E+01 + 0.12189246E+01 0.11763748E+01 0.11352645E+01 0.10955136E+01 0.10570312E+01 + 0.10197658E+01 0.98368778E+00 0.94878888E+00 0.91505295E+00 0.88247535E+00 + 0.85105063E+00 0.82073566E+00 0.79148092E+00 0.76322834E+00 0.73590689E+00 + 0.70947696E+00 0.68391764E+00 0.65921744E+00 0.63536709E+00 + 0.10000000E+01 0.28139182E+01 0.44264359E+01 0.58676036E+01 0.71821843E+01 + 0.83978874E+01 0.95359351E+01 0.10605642E+02 0.11609437E+02 0.12545976E+02 + 0.13415024E+02 0.14216285E+02 0.14951437E+02 0.15622104E+02 0.16230131E+02 + 0.16777138E+02 0.17265005E+02 0.17695712E+02 0.18071763E+02 0.18395464E+02 + 0.18669769E+02 0.18896946E+02 0.19079905E+02 0.19220860E+02 0.19322548E+02 + 0.19387377E+02 0.19417977E+02 0.19416721E+02 0.19386021E+02 0.19327993E+02 + 0.19244832E+02 0.19138491E+02 0.19010885E+02 0.18863897E+02 0.18699281E+02 + 0.18518682E+02 0.18323638E+02 0.18115587E+02 0.17895768E+02 0.17665344E+02 + 0.17425365E+02 0.17176770E+02 0.16920424E+02 0.16657179E+02 0.16387823E+02 + 0.16113098E+02 0.15833783E+02 0.15550622E+02 0.15264246E+02 0.14975337E+02 + 0.14684504E+02 0.14392370E+02 0.14099452E+02 0.13806325E+02 0.13513533E+02 + 0.13221633E+02 0.12931145E+02 0.12642573E+02 0.12356393E+02 0.12073052E+02 + 0.11792957E+02 0.11516465E+02 0.11243928E+02 0.10975621E+02 0.10711735E+02 + 0.10452404E+02 0.10197720E+02 0.99477541E+01 0.97025909E+01 0.94623127E+01 + 0.92270094E+01 0.89967651E+01 0.87716280E+01 0.85515796E+01 0.83365353E+01 + 0.81263852E+01 0.79210508E+01 0.77204799E+01 0.75246199E+01 0.73334401E+01 + 0.71469412E+01 0.69650840E+01 0.67877679E+01 0.66148056E+01 0.64459548E+01 + 0.62810052E+01 0.61198491E+01 0.59624846E+01 0.58089739E+01 0.56593737E+01 + 0.55136543E+01 0.53717523E+01 0.52335705E+01 0.50989782E+01 0.49678116E+01 + 0.48399493E+01 0.47153026E+01 0.45938229E+01 0.44754631E+01 0.43601181E+01 + 0.42476631E+01 0.41379500E+01 0.40308578E+01 0.39262949E+01 0.38241937E+01 + 0.37245277E+01 0.36272989E+01 0.35325152E+01 0.34401715E+01 0.33502328E+01 + 0.32626294E+01 0.31772851E+01 0.30940915E+01 0.30129618E+01 0.29338028E+01 + 0.28565097E+01 0.27810447E+01 0.27074162E+01 0.26356249E+01 0.25656687E+01 + 0.24975337E+01 0.24311621E+01 0.23664981E+01 0.23034964E+01 0.22420861E+01 + 0.21822064E+01 0.21238041E+01 0.20668481E+01 0.20113500E+01 + 0.10000000E+01 0.28367216E+01 0.45004605E+01 0.60154260E+01 0.74200787E+01 + 0.87383880E+01 0.99896282E+01 0.11182857E+02 0.12320514E+02 0.13400711E+02 + 0.14422624E+02 0.15385025E+02 0.16288685E+02 0.17134272E+02 0.17922923E+02 + 0.18655475E+02 0.19333043E+02 0.19956786E+02 0.20528229E+02 0.21048834E+02 + 0.21520476E+02 0.21944654E+02 0.22323279E+02 0.22657893E+02 0.22950433E+02 + 0.23202631E+02 0.23416432E+02 0.23593600E+02 0.23735985E+02 0.23845250E+02 + 0.23923178E+02 0.23971383E+02 0.23991511E+02 0.23985179E+02 0.23953945E+02 + 0.23899287E+02 0.23822634E+02 0.23725332E+02 0.23608610E+02 0.23473629E+02 + 0.23321500E+02 0.23153247E+02 0.22969857E+02 0.22772319E+02 0.22561567E+02 + 0.22338522E+02 0.22104128E+02 0.21859331E+02 0.21604955E+02 0.21341854E+02 + 0.21070830E+02 0.20792708E+02 0.20508231E+02 0.20218193E+02 0.19923375E+02 + 0.19624512E+02 0.19322353E+02 0.19017609E+02 0.18710970E+02 0.18403115E+02 + 0.18094685E+02 0.17786266E+02 0.17478405E+02 0.17171610E+02 0.16866310E+02 + 0.16562862E+02 0.16261577E+02 0.15962738E+02 0.15666626E+02 0.15373523E+02 + 0.15083680E+02 0.14797350E+02 0.14514751E+02 0.14235999E+02 0.13961156E+02 + 0.13690269E+02 0.13423394E+02 0.13160571E+02 0.12901852E+02 0.12647277E+02 + 0.12396925E+02 0.12150861E+02 0.11909077E+02 0.11671499E+02 0.11437962E+02 + 0.11208292E+02 0.10982437E+02 0.10760469E+02 0.10542493E+02 0.10328606E+02 + 0.10118828E+02 0.99131146E+01 0.97113730E+01 0.95134794E+01 0.93193043E+01 + 0.91287419E+01 0.89417342E+01 0.87582785E+01 0.85783715E+01 0.84019274E+01 + 0.82288536E+01 0.80590263E+01 0.78923508E+01 0.77287536E+01 0.75681462E+01 + 0.74105021E+01 0.72558148E+01 0.71040802E+01 0.69553112E+01 0.68094706E+01 + 0.66664990E+01 0.65263323E+01 0.63889177E+01 0.62541652E+01 0.61219893E+01 + 0.59922981E+01 0.58650168E+01 0.57401505E+01 0.56177268E+01 0.54977713E+01 + 0.53802596E+01 0.52651199E+01 0.51522722E+01 0.50416357E+01 0.49331473E+01 + 0.48267602E+01 0.47224476E+01 0.46202016E+01 0.45200244E+01 + 0.10000000E+01 0.28541801E+01 0.45571695E+01 0.61285337E+01 0.76027252E+01 + 0.90006458E+01 0.10340068E+02 0.11629448E+02 0.12871721E+02 0.14064779E+02 + 0.15207822E+02 0.16299029E+02 0.17338797E+02 0.18327110E+02 0.19264794E+02 + 0.20152185E+02 0.20990077E+02 0.21779122E+02 0.22520349E+02 0.23214642E+02 + 0.23863266E+02 0.24467159E+02 0.25027616E+02 0.25545631E+02 0.26022561E+02 + 0.26459542E+02 0.26857957E+02 0.27218991E+02 0.27543992E+02 0.27834107E+02 + 0.28090660E+02 0.28314807E+02 0.28507796E+02 0.28670820E+02 0.28805086E+02 + 0.28911732E+02 0.28991900E+02 0.29046668E+02 0.29077054E+02 0.29084023E+02 + 0.29068532E+02 0.29031470E+02 0.28973737E+02 0.28896250E+02 0.28799897E+02 + 0.28685538E+02 0.28554077E+02 0.28406411E+02 0.28243377E+02 0.28065838E+02 + 0.27874637E+02 0.27670631E+02 0.27454619E+02 0.27227430E+02 0.26989890E+02 + 0.26742828E+02 0.26487055E+02 0.26223392E+02 0.25952621E+02 0.25675516E+02 + 0.25392816E+02 0.25105231E+02 0.24813458E+02 0.24518167E+02 0.24219946E+02 + 0.23919320E+02 0.23616802E+02 0.23312846E+02 0.23007910E+02 0.22702452E+02 + 0.22396885E+02 0.22091610E+02 0.21786975E+02 0.21483287E+02 0.21180783E+02 + 0.20879677E+02 0.20580189E+02 0.20282513E+02 0.19986835E+02 0.19693339E+02 + 0.19402218E+02 0.19113656E+02 0.18827759E+02 0.18544563E+02 0.18264051E+02 + 0.17986215E+02 0.17711103E+02 0.17438855E+02 0.17169647E+02 0.16903613E+02 + 0.16640832E+02 0.16381317E+02 0.16125037E+02 0.15871947E+02 0.15621968E+02 + 0.15375059E+02 0.15131252E+02 0.14890599E+02 0.14653123E+02 0.14418798E+02 + 0.14187543E+02 0.13959265E+02 0.13733920E+02 0.13511489E+02 0.13291957E+02 + 0.13075310E+02 0.12861540E+02 0.12650651E+02 0.12442659E+02 0.12237550E+02 + 0.12035320E+02 0.11835960E+02 0.11639428E+02 0.11445658E+02 0.11254553E+02 + 0.11066042E+02 0.10880083E+02 0.10696692E+02 0.10515926E+02 0.10337820E+02 + 0.10162356E+02 0.99894846E+01 0.98191460E+01 0.96512890E+01 0.94858474E+01 + 0.93227886E+01 0.91620920E+01 0.90037528E+01 0.88477896E+01 + 0.10000000E+01 0.28696895E+01 0.46078839E+01 0.62299938E+01 0.77670259E+01 + 0.92369831E+01 0.10656147E+02 0.12032083E+02 0.13368200E+02 0.14662112E+02 + 0.15913251E+02 0.17119258E+02 0.18280382E+02 0.19396017E+02 0.20466816E+02 + 0.21492667E+02 0.22474158E+02 0.23411501E+02 0.24305396E+02 0.25156263E+02 + 0.25964933E+02 0.26731897E+02 0.27458001E+02 0.28143795E+02 0.28790180E+02 + 0.29397822E+02 0.29967676E+02 0.30500465E+02 0.30997155E+02 0.31458465E+02 + 0.31885350E+02 0.32278568E+02 0.32639033E+02 0.32967575E+02 0.33265115E+02 + 0.33532457E+02 0.33770490E+02 0.33980011E+02 0.34161821E+02 0.34316654E+02 + 0.34445298E+02 0.34548507E+02 0.34627030E+02 0.34681646E+02 0.34713124E+02 + 0.34722220E+02 0.34709730E+02 0.34676463E+02 0.34623194E+02 0.34550713E+02 + 0.34459817E+02 0.34351302E+02 0.34225941E+02 0.34084548E+02 0.33927937E+02 + 0.33756914E+02 0.33572303E+02 0.33374943E+02 0.33165628E+02 0.32945155E+02 + 0.32714311E+02 0.32473846E+02 0.32224531E+02 0.31967109E+02 0.31702259E+02 + 0.31430630E+02 0.31152831E+02 0.30869448E+02 0.30581079E+02 0.30288293E+02 + 0.29991624E+02 0.29691606E+02 0.29388740E+02 0.29083461E+02 0.28776163E+02 + 0.28467217E+02 0.28156964E+02 0.27845745E+02 0.27533856E+02 0.27221614E+02 + 0.26909323E+02 0.26597278E+02 0.26285715E+02 0.25974803E+02 0.25664672E+02 + 0.25355449E+02 0.25047302E+02 0.24740443E+02 0.24435131E+02 0.24131576E+02 + 0.23829928E+02 0.23530283E+02 0.23232687E+02 0.22937150E+02 0.22643694E+02 + 0.22352358E+02 0.22063234E+02 0.21776443E+02 0.21492049E+02 0.21210069E+02 + 0.20930488E+02 0.20653294E+02 0.20378496E+02 0.20106104E+02 0.19836151E+02 + 0.19568653E+02 0.19303625E+02 0.19041083E+02 0.18781071E+02 0.18523601E+02 + 0.18268687E+02 0.18016344E+02 0.17766547E+02 0.17519268E+02 0.17274449E+02 + 0.17032047E+02 0.16792033E+02 0.16554429E+02 0.16319300E+02 0.16086697E+02 + 0.15856634E+02 0.15629128E+02 0.15404116E+02 0.15181554E+02 0.14961398E+02 + 0.14743603E+02 0.14528187E+02 0.14315153E+02 0.14104542E+02 + 0.10000000E+01 0.28770420E+01 0.46325695E+01 0.62798481E+01 0.78487326E+01 + 0.93556221E+01 0.10815939E+02 0.12236245E+02 0.13620359E+02 0.14965756E+02 + 0.16272347E+02 0.17537602E+02 0.18762061E+02 0.19944869E+02 0.21086856E+02 + 0.22187698E+02 0.23248088E+02 0.24268042E+02 0.25248277E+02 0.26189032E+02 + 0.27091092E+02 0.27954771E+02 0.28780838E+02 0.29569660E+02 0.30322005E+02 + 0.31038340E+02 0.31719480E+02 0.32365934E+02 0.32978511E+02 0.33557735E+02 + 0.34104404E+02 0.34619067E+02 0.35102485E+02 0.35555269E+02 0.35978167E+02 + 0.36371796E+02 0.36736857E+02 0.37073962E+02 0.37383750E+02 0.37666798E+02 + 0.37923741E+02 0.38155152E+02 0.38361635E+02 0.38543798E+02 0.38702253E+02 + 0.38837606E+02 0.38950497E+02 0.39041586E+02 0.39111501E+02 0.39160885E+02 + 0.39190389E+02 0.39200669E+02 0.39192366E+02 0.39166156E+02 0.39122721E+02 + 0.39062729E+02 0.38986882E+02 0.38895885E+02 0.38790420E+02 0.38671179E+02 + 0.38538844E+02 0.38394081E+02 0.38237573E+02 0.38069979E+02 0.37891927E+02 + 0.37704020E+02 0.37506846E+02 0.37300966E+02 0.37086947E+02 0.36865349E+02 + 0.36636695E+02 0.36401489E+02 0.36160245E+02 0.35913421E+02 0.35661453E+02 + 0.35404753E+02 0.35143714E+02 0.34878714E+02 0.34610106E+02 0.34338240E+02 + 0.34063481E+02 0.33786175E+02 0.33506636E+02 0.33225108E+02 0.32941804E+02 + 0.32656951E+02 0.32370783E+02 0.32083600E+02 0.31795675E+02 0.31507284E+02 + 0.31218645E+02 0.30929910E+02 0.30641215E+02 0.30352660E+02 0.30064345E+02 + 0.29776404E+02 0.29488989E+02 0.29202259E+02 0.28916357E+02 0.28631356E+02 + 0.28347284E+02 0.28064205E+02 0.27782174E+02 0.27501260E+02 0.27221558E+02 + 0.26943132E+02 0.26666031E+02 0.26390323E+02 0.26116068E+02 0.25843322E+02 + 0.25572149E+02 0.25302606E+02 0.25034717E+02 0.24768482E+02 0.24503862E+02 + 0.24240825E+02 0.23979379E+02 0.23719571E+02 0.23461477E+02 0.23205186E+02 + 0.22950736E+02 0.22698109E+02 0.22447295E+02 0.22198260E+02 0.21950984E+02 + 0.21705479E+02 0.21461768E+02 0.21219881E+02 0.20979865E+02 + 0.10000000E+01 0.28851451E+01 0.46597380E+01 0.63348159E+01 0.79386598E+01 + 0.94860062E+01 0.10991285E+02 0.12460125E+02 0.13896588E+02 0.15297967E+02 + 0.16664523E+02 0.17993526E+02 0.19285687E+02 0.20539871E+02 0.21756978E+02 + 0.22936451E+02 0.24078986E+02 0.25184392E+02 0.26253329E+02 0.27285813E+02 + 0.28282517E+02 0.29243562E+02 0.30169584E+02 0.31060773E+02 0.31917768E+02 + 0.32740853E+02 0.33530700E+02 0.34287626E+02 0.35012284E+02 0.35705015E+02 + 0.36366456E+02 0.36996993E+02 0.37597247E+02 0.38167659E+02 0.38708843E+02 + 0.39221251E+02 0.39705471E+02 0.40161962E+02 0.40591249E+02 0.40993771E+02 + 0.41370063E+02 0.41720568E+02 0.42045780E+02 0.42346197E+02 0.42622331E+02 + 0.42874665E+02 0.43103724E+02 0.43310046E+02 0.43494158E+02 0.43656595E+02 + 0.43797897E+02 0.43918603E+02 0.44019259E+02 0.44100427E+02 0.44162688E+02 + 0.44206618E+02 0.44232836E+02 0.44241944E+02 0.44234532E+02 0.44211207E+02 + 0.44172561E+02 0.44119176E+02 0.44051665E+02 0.43970620E+02 0.43876611E+02 + 0.43770207E+02 0.43651944E+02 0.43522364E+02 0.43381990E+02 0.43231359E+02 + 0.43070972E+02 0.42901319E+02 0.42722891E+02 0.42536160E+02 0.42341575E+02 + 0.42139577E+02 0.41930594E+02 0.41715023E+02 0.41493236E+02 0.41265611E+02 + 0.41032527E+02 0.40794369E+02 0.40551485E+02 0.40304187E+02 0.40052761E+02 + 0.39797493E+02 0.39538698E+02 0.39276677E+02 0.39011761E+02 0.38744260E+02 + 0.38474428E+02 0.38202497E+02 0.37928651E+02 0.37653072E+02 0.37375938E+02 + 0.37097435E+02 0.36817788E+02 0.36537208E+02 0.36255865E+02 0.35973897E+02 + 0.35691415E+02 0.35408521E+02 0.35125354E+02 0.34842021E+02 0.34558644E+02 + 0.34275338E+02 0.33992221E+02 0.33709409E+02 0.33427003E+02 0.33145095E+02 + 0.32863760E+02 0.32583081E+02 0.32303119E+02 0.32023910E+02 0.31745477E+02 + 0.31467841E+02 0.31191030E+02 0.30915107E+02 0.30640171E+02 0.30366311E+02 + 0.30093582E+02 0.29822003E+02 0.29551590E+02 0.29282332E+02 0.29014231E+02 + 0.28747285E+02 0.28481536E+02 0.28217055E+02 0.27953873E+02 + 0.10000000E+01 0.28882356E+01 0.46706581E+01 0.63575216E+01 0.79766683E+01 + 0.95422262E+01 0.11067982E+02 0.12558997E+02 0.14019297E+02 0.15446236E+02 + 0.16840279E+02 0.18198808E+02 0.19522711E+02 0.20810897E+02 0.22064368E+02 + 0.23282569E+02 0.24466266E+02 0.25615243E+02 0.26730201E+02 0.27811143E+02 + 0.28858744E+02 0.29873107E+02 0.30854877E+02 0.31804210E+02 0.32721727E+02 + 0.33607671E+02 0.34462660E+02 0.35286976E+02 0.36081226E+02 0.36845706E+02 + 0.37581020E+02 0.38287490E+02 0.38965685E+02 0.39615984E+02 0.40238929E+02 + 0.40834909E+02 0.41404445E+02 0.41947920E+02 0.42465796E+02 0.42958444E+02 + 0.43426315E+02 0.43869786E+02 0.44289276E+02 0.44685193E+02 0.45057992E+02 + 0.45408069E+02 0.45735873E+02 0.46041840E+02 0.46326423E+02 0.46590060E+02 + 0.46833222E+02 0.47056361E+02 0.47259925E+02 0.47444392E+02 0.47610236E+02 + 0.47757940E+02 0.47888008E+02 0.48000951E+02 0.48097267E+02 0.48177454E+02 + 0.48241991E+02 0.48291380E+02 0.48326131E+02 0.48346736E+02 0.48353695E+02 + 0.48347488E+02 0.48328574E+02 0.48297390E+02 0.48254395E+02 0.48200040E+02 + 0.48134765E+02 0.48059006E+02 0.47973194E+02 0.47877725E+02 0.47772974E+02 + 0.47659333E+02 0.47537184E+02 0.47406882E+02 0.47268783E+02 0.47123232E+02 + 0.46970570E+02 0.46811138E+02 0.46645257E+02 0.46473234E+02 0.46295343E+02 + 0.46111868E+02 0.45923105E+02 0.45729354E+02 0.45530938E+02 0.45328148E+02 + 0.45121260E+02 0.44910507E+02 0.44696092E+02 0.44478201E+02 0.44257032E+02 + 0.44032791E+02 0.43805699E+02 0.43575986E+02 0.43343863E+02 0.43109499E+02 + 0.42873026E+02 0.42634600E+02 0.42394357E+02 0.42152458E+02 0.41909047E+02 + 0.41664256E+02 0.41418222E+02 0.41171092E+02 0.40923005E+02 0.40674074E+02 + 0.40424424E+02 0.40174148E+02 0.39923312E+02 0.39671987E+02 0.39420222E+02 + 0.39168066E+02 0.38915605E+02 0.38662930E+02 0.38410140E+02 0.38157351E+02 + 0.37904620E+02 0.37651998E+02 0.37399533E+02 0.37147251E+02 0.36895197E+02 + 0.36643388E+02 0.36391859E+02 0.36140652E+02 0.35889812E+02 + 0.10000000E+01 0.28931735E+01 0.46875348E+01 0.63921486E+01 0.80338099E+01 + 0.96256969E+01 0.11180757E+02 0.12703453E+02 0.14197741E+02 0.15660959E+02 + 0.17093705E+02 0.18493368E+02 0.19860931E+02 0.21195235E+02 0.22497324E+02 + 0.23766565E+02 0.25003713E+02 0.26208477E+02 0.27381521E+02 0.28522767E+02 + 0.29632841E+02 0.30711784E+02 0.31760180E+02 0.32778127E+02 0.33766172E+02 + 0.34724496E+02 0.35653655E+02 0.36553849E+02 0.37425619E+02 0.38269197E+02 + 0.39085096E+02 0.39873564E+02 0.40635100E+02 0.41370000E+02 0.42078736E+02 + 0.42761620E+02 0.43419111E+02 0.44051509E+02 0.44659222E+02 0.45242544E+02 + 0.45801879E+02 0.46337521E+02 0.46849843E+02 0.47339166E+02 0.47805877E+02 + 0.48250310E+02 0.48672839E+02 0.49073832E+02 0.49453675E+02 0.49812742E+02 + 0.50151427E+02 0.50470107E+02 0.50769152E+02 0.51048963E+02 0.51309954E+02 + 0.51552532E+02 0.51777130E+02 0.51984182E+02 0.52174109E+02 0.52347327E+02 + 0.52504275E+02 0.52645373E+02 0.52771046E+02 0.52881743E+02 0.52977887E+02 + 0.53059897E+02 0.53128188E+02 0.53183131E+02 0.53225140E+02 0.53254616E+02 + 0.53271933E+02 0.53277488E+02 0.53271667E+02 0.53254825E+02 0.53227324E+02 + 0.53189531E+02 0.53141797E+02 0.53084463E+02 0.53017859E+02 0.52942298E+02 + 0.52858122E+02 0.52765645E+02 0.52665175E+02 0.52557022E+02 0.52441457E+02 + 0.52318766E+02 0.52189242E+02 0.52053187E+02 0.51910925E+02 0.51762743E+02 + 0.51608905E+02 0.51449661E+02 0.51285231E+02 0.51115828E+02 0.50941674E+02 + 0.50762998E+02 0.50580055E+02 0.50393086E+02 0.50202306E+02 0.50007890E+02 + 0.49810001E+02 0.49608805E+02 0.49404473E+02 0.49197177E+02 0.48987095E+02 + 0.48774392E+02 0.48559238E+02 0.48341788E+02 0.48122201E+02 0.47900625E+02 + 0.47677201E+02 0.47452050E+02 0.47225287E+02 0.46996998E+02 0.46767270E+02 + 0.46536182E+02 0.46303804E+02 0.46070265E+02 0.45835667E+02 0.45600135E+02 + 0.45363755E+02 0.45126597E+02 0.44888718E+02 0.44650167E+02 0.44411000E+02 + 0.44171244E+02 0.43930969E+02 0.43690239E+02 0.43449132E+02 + 0.10000000E+01 0.28954319E+01 0.46957031E+01 0.64094298E+01 0.80630401E+01 + 0.96693440E+01 0.11240725E+02 0.12781260E+02 0.14294749E+02 0.15778611E+02 + 0.17233529E+02 0.18657043E+02 0.20050240E+02 0.21412037E+02 0.22743529E+02 + 0.24044119E+02 0.25314599E+02 0.26554682E+02 0.27765065E+02 0.28945671E+02 + 0.30097140E+02 0.31219498E+02 0.32313328E+02 0.33378724E+02 0.34416215E+02 + 0.35425971E+02 0.36408517E+02 0.37364041E+02 0.38293053E+02 0.39195760E+02 + 0.40072653E+02 0.40923954E+02 0.41750131E+02 0.42551447E+02 0.43328342E+02 + 0.44081084E+02 0.44810095E+02 0.45515651E+02 0.46198123E+02 0.46857756E+02 + 0.47494919E+02 0.48109851E+02 0.48702888E+02 0.49274296E+02 0.49824420E+02 + 0.50353552E+02 0.50862018E+02 0.51350117E+02 0.51818192E+02 0.52266553E+02 + 0.52695550E+02 0.53105495E+02 0.53496723E+02 0.53869565E+02 0.54224370E+02 + 0.54561482E+02 0.54881269E+02 0.55184096E+02 0.55470329E+02 0.55740329E+02 + 0.55994445E+02 0.56233041E+02 0.56456476E+02 0.56665115E+02 0.56859320E+02 + 0.57039448E+02 0.57205844E+02 0.57358833E+02 0.57498735E+02 0.57625899E+02 + 0.57740670E+02 0.57843363E+02 0.57934302E+02 0.58013800E+02 0.58082144E+02 + 0.58139623E+02 0.58186556E+02 0.58223230E+02 0.58249939E+02 0.58266966E+02 + 0.58274584E+02 0.58273075E+02 0.58262694E+02 0.58243687E+02 0.58216313E+02 + 0.58180835E+02 0.58137526E+02 0.58086650E+02 0.58028483E+02 0.57963300E+02 + 0.57891345E+02 0.57812832E+02 0.57727977E+02 0.57636975E+02 0.57540037E+02 + 0.57437359E+02 0.57329179E+02 0.57215731E+02 0.57097218E+02 0.56973825E+02 + 0.56845729E+02 0.56713083E+02 0.56576056E+02 0.56434825E+02 0.56289559E+02 + 0.56140447E+02 0.55987659E+02 0.55831375E+02 0.55671763E+02 0.55508964E+02 + 0.55343121E+02 0.55174374E+02 0.55002834E+02 0.54828613E+02 0.54651819E+02 + 0.54472537E+02 0.54290859E+02 0.54106898E+02 0.53920806E+02 0.53732710E+02 + 0.53542719E+02 0.53350927E+02 0.53157390E+02 0.52962188E+02 0.52765367E+02 + 0.52566977E+02 0.52367110E+02 0.52165847E+02 0.51963278E+02 + 0.10000000E+01 0.28980793E+01 0.47049013E+01 0.64285364E+01 0.80948308E+01 + 0.97161393E+01 0.11304354E+02 0.12863241E+02 0.14396477E+02 0.15901494E+02 + 0.17378998E+02 0.18826575E+02 0.20245349E+02 0.21634242E+02 0.22994353E+02 + 0.24325071E+02 0.25627164E+02 0.26900325E+02 0.28145210E+02 0.29361726E+02 + 0.30550460E+02 0.31711426E+02 0.32845164E+02 0.33951744E+02 0.35031672E+02 + 0.36085075E+02 0.37112448E+02 0.38113943E+02 0.39090036E+02 0.40040915E+02 + 0.40967027E+02 0.41868566E+02 0.42745977E+02 0.43599476E+02 0.44429472E+02 + 0.45236213E+02 0.46020085E+02 0.46781332E+02 0.47520307E+02 0.48237231E+02 + 0.48932439E+02 0.49606143E+02 0.50258647E+02 0.50890195E+02 0.51501112E+02 + 0.52091653E+02 0.52662115E+02 0.53212771E+02 0.53743940E+02 0.54255893E+02 + 0.54748955E+02 0.55223402E+02 0.55679552E+02 0.56117694E+02 0.56538148E+02 + 0.56941218E+02 0.57327263E+02 0.57696601E+02 0.58049561E+02 0.58386474E+02 + 0.58707678E+02 0.59013494E+02 0.59304246E+02 0.59580263E+02 0.59841871E+02 + 0.60089397E+02 0.60323153E+02 0.60543434E+02 0.60750547E+02 0.60944787E+02 + 0.61126465E+02 0.61295869E+02 0.61453297E+02 0.61599035E+02 0.61733349E+02 + 0.61856517E+02 0.61968821E+02 0.62070522E+02 0.62161882E+02 0.62243166E+02 + 0.62314627E+02 0.62376522E+02 0.62429106E+02 0.62472608E+02 0.62507256E+02 + 0.62533291E+02 0.62550952E+02 0.62560483E+02 0.62562149E+02 0.62556203E+02 + 0.62542866E+02 0.62522349E+02 0.62494861E+02 0.62460562E+02 0.62419657E+02 + 0.62372344E+02 0.62318828E+02 0.62259338E+02 0.62194075E+02 0.62123216E+02 + 0.62046913E+02 0.61965350E+02 0.61878690E+02 0.61787101E+02 0.61690770E+02 + 0.61589847E+02 0.61484512E+02 0.61374938E+02 0.61261282E+02 0.61143691E+02 + 0.61022323E+02 0.60897305E+02 0.60768773E+02 0.60636821E+02 0.60501557E+02 + 0.60363079E+02 0.60221484E+02 0.60076890E+02 0.59929425E+02 0.59779237E+02 + 0.59626423E+02 0.59471089E+02 0.59313320E+02 0.59153186E+02 0.58990767E+02 + 0.58826120E+02 0.58659330E+02 0.58490483E+02 0.58319668E+02 + 0.10000000E+01 0.28992450E+01 0.47092976E+01 0.64380468E+01 0.81111967E+01 + 0.97408765E+01 0.11338717E+02 0.12908207E+02 0.14452946E+02 0.15970351E+02 + 0.17461215E+02 0.18923181E+02 0.20357466E+02 0.21763016E+02 0.23140994E+02 + 0.24490787E+02 0.25813208E+02 0.27107944E+02 0.28375685E+02 0.29616332E+02 + 0.30830494E+02 0.32018178E+02 0.33179943E+02 0.34315845E+02 0.35426397E+02 + 0.36511727E+02 0.37572331E+02 0.38608345E+02 0.39620245E+02 0.40608198E+02 + 0.41572668E+02 0.42513819E+02 0.43432097E+02 0.44327699E+02 0.45201027E+02 + 0.46052295E+02 0.46881878E+02 0.47690003E+02 0.48477001E+02 0.49243083E+02 + 0.49988566E+02 0.50713651E+02 0.51418627E+02 0.52103714E+02 0.52769223E+02 + 0.53415367E+02 0.54042451E+02 0.54650702E+02 0.55240430E+02 0.55811862E+02 + 0.56365322E+02 0.56901056E+02 0.57419361E+02 0.57920469E+02 0.58404694E+02 + 0.58872302E+02 0.59323608E+02 0.59758904E+02 0.60178511E+02 0.60582724E+02 + 0.60971861E+02 0.61346208E+02 0.61706055E+02 0.62051694E+02 0.62383403E+02 + 0.62701482E+02 0.63006211E+02 0.63297852E+02 0.63576674E+02 0.63842956E+02 + 0.64096967E+02 0.64338958E+02 0.64569190E+02 0.64787913E+02 0.64995366E+02 + 0.65191788E+02 0.65377422E+02 0.65552507E+02 0.65717287E+02 0.65871980E+02 + 0.66016841E+02 0.66152085E+02 0.66277928E+02 0.66394573E+02 0.66502213E+02 + 0.66601052E+02 0.66691322E+02 0.66773234E+02 0.66847020E+02 0.66912918E+02 + 0.66971120E+02 0.67021796E+02 0.67065124E+02 0.67101266E+02 0.67130403E+02 + 0.67152710E+02 0.67168403E+02 0.67177676E+02 0.67180710E+02 0.67177656E+02 + 0.67168668E+02 0.67153895E+02 0.67133504E+02 0.67107641E+02 0.67076461E+02 + 0.67040128E+02 0.66998788E+02 0.66952597E+02 0.66901707E+02 0.66846262E+02 + 0.66786406E+02 0.66722270E+02 0.66653983E+02 0.66581626E+02 0.66505324E+02 + 0.66425143E+02 0.66341209E+02 0.66253624E+02 0.66162534E+02 0.66068089E+02 + 0.65970368E+02 0.65869471E+02 0.65765486E+02 0.65658462E+02 0.65548478E+02 + 0.65435609E+02 0.65319934E+02 0.65201552E+02 0.65080544E+02 + 0.10000000E+01 0.29033001E+01 0.47231395E+01 0.64665197E+01 0.81581743E+01 + 0.98094824E+01 0.11431422E+02 0.13027071E+02 0.14599913E+02 0.16147305E+02 + 0.17670083E+02 0.19165855E+02 0.20635857E+02 0.22078956E+02 0.23496301E+02 + 0.24887204E+02 0.26252443E+02 0.27591630E+02 0.28905398E+02 0.30193571E+02 + 0.31456691E+02 0.32694696E+02 0.33908076E+02 0.35096843E+02 0.36261459E+02 + 0.37401996E+02 0.38518903E+02 0.39612248E+02 0.40682476E+02 0.41729681E+02 + 0.42754291E+02 0.43756426E+02 0.44736486E+02 0.45694622E+02 0.46631186E+02 + 0.47546347E+02 0.48440446E+02 0.49313659E+02 0.50166295E+02 0.50998524E+02 + 0.51810645E+02 0.52602819E+02 0.53375308E+02 0.54128293E+02 0.54862055E+02 + 0.55576785E+02 0.56272764E+02 0.56950192E+02 0.57609360E+02 0.58250474E+02 + 0.58873823E+02 0.59479591E+02 0.60068069E+02 0.60639455E+02 0.61194039E+02 + 0.61732054E+02 0.62253794E+02 0.62759517E+02 0.63249503E+02 0.63724008E+02 + 0.64183323E+02 0.64627701E+02 0.65057412E+02 0.65472725E+02 0.65873895E+02 + 0.66261197E+02 0.66634891E+02 0.66995209E+02 0.67342396E+02 0.67676718E+02 + 0.67998417E+02 0.68307736E+02 0.68604919E+02 0.68890185E+02 0.69163765E+02 + 0.69425874E+02 0.69676748E+02 0.69916599E+02 0.70145658E+02 0.70364129E+02 + 0.70572221E+02 0.70770160E+02 0.70958141E+02 0.71136362E+02 0.71305018E+02 + 0.71464302E+02 0.71614426E+02 0.71755597E+02 0.71888038E+02 0.72011944E+02 + 0.72127520E+02 0.72234938E+02 0.72334359E+02 0.72425938E+02 0.72509865E+02 + 0.72586303E+02 0.72655439E+02 0.72717474E+02 0.72772589E+02 0.72820928E+02 + 0.72862656E+02 0.72897911E+02 0.72926857E+02 0.72949644E+02 0.72966438E+02 + 0.72977382E+02 0.72982639E+02 0.72982354E+02 0.72976678E+02 0.72965755E+02 + 0.72949721E+02 0.72928710E+02 0.72902839E+02 0.72872227E+02 0.72836976E+02 + 0.72797183E+02 0.72752967E+02 0.72704435E+02 0.72651733E+02 0.72594980E+02 + 0.72534287E+02 0.72469753E+02 0.72401463E+02 0.72329498E+02 0.72253935E+02 + 0.72174854E+02 0.72092347E+02 0.72006505E+02 0.71917419E+02 + 0.10000000E+01 0.29027292E+01 0.47218262E+01 0.64643749E+01 0.81556882E+01 + 0.98071667E+01 0.11429925E+02 0.13026762E+02 0.14601297E+02 0.16150857E+02 + 0.17676493E+02 0.19175851E+02 0.20650374E+02 0.22098975E+02 0.23522941E+02 + 0.24921618E+02 0.26295883E+02 0.27645389E+02 0.28970847E+02 0.30272114E+02 + 0.31549788E+02 0.32803827E+02 0.34034757E+02 0.35242590E+02 0.36427800E+02 + 0.37590442E+02 0.38730983E+02 0.39849468E+02 0.40946368E+02 0.42021751E+02 + 0.43076067E+02 0.44109400E+02 0.45122161E+02 0.46114461E+02 0.47086656E+02 + 0.48038883E+02 0.48971457E+02 0.49884557E+02 0.50778446E+02 0.51653298E+02 + 0.52509354E+02 0.53346776E+02 0.54165778E+02 0.54966525E+02 0.55749271E+02 + 0.56514171E+02 0.57261494E+02 0.57991391E+02 0.58704135E+02 0.59399883E+02 + 0.60078910E+02 0.60741355E+02 0.61387497E+02 0.62017461E+02 0.62631545E+02 + 0.63229912E+02 0.63812852E+02 0.64380556E+02 0.64933293E+02 0.65471266E+02 + 0.65994723E+02 0.66503889E+02 0.66998992E+02 0.67480255E+02 0.67947899E+02 + 0.68402164E+02 0.68843260E+02 0.69271395E+02 0.69686770E+02 0.70089611E+02 + 0.70480143E+02 0.70858567E+02 0.71225100E+02 0.71579914E+02 0.71923216E+02 + 0.72255177E+02 0.72576004E+02 0.72885879E+02 0.73185003E+02 0.73473561E+02 + 0.73751735E+02 0.74019701E+02 0.74277637E+02 0.74525703E+02 0.74764074E+02 + 0.74992921E+02 0.75212454E+02 0.75422847E+02 0.75624296E+02 0.75816988E+02 + 0.76001107E+02 0.76176773E+02 0.76344171E+02 0.76503415E+02 0.76654691E+02 + 0.76798143E+02 0.76933961E+02 0.77062303E+02 0.77183336E+02 0.77297192E+02 + 0.77404017E+02 0.77503938E+02 0.77597106E+02 0.77683680E+02 0.77763795E+02 + 0.77837592E+02 0.77905235E+02 0.77966862E+02 0.78022609E+02 0.78072629E+02 + 0.78117053E+02 0.78156007E+02 0.78189628E+02 0.78218007E+02 0.78241259E+02 + 0.78259464E+02 0.78272747E+02 0.78281205E+02 0.78284972E+02 0.78284179E+02 + 0.78278934E+02 0.78269339E+02 0.78255460E+02 0.78237379E+02 0.78215185E+02 + 0.78188950E+02 0.78158774E+02 0.78124754E+02 0.78086992E+02 + 0.10000000E+01 0.29014052E+01 0.47177745E+01 0.64564864E+01 0.81434379E+01 + 0.97901875E+01 0.11408108E+02 0.12999881E+02 0.14569240E+02 0.16113459E+02 + 0.17633729E+02 0.19127695E+02 0.20596952E+02 0.22040417E+02 0.23459495E+02 + 0.24853548E+02 0.26223549E+02 0.27569172E+02 0.28891211E+02 0.30189552E+02 + 0.31464849E+02 0.32717085E+02 0.33946834E+02 0.35154108E+02 0.36339430E+02 + 0.37502851E+02 0.38644888E+02 0.39765591E+02 0.40865467E+02 0.41944574E+02 + 0.43003404E+02 0.44042017E+02 0.45060864E+02 0.46060050E+02 0.47039935E+02 + 0.48000678E+02 0.48942587E+02 0.49865849E+02 0.50770724E+02 0.51657390E+02 + 0.52526087E+02 0.53376982E+02 0.54210288E+02 0.55026158E+02 0.55824843E+02 + 0.56606484E+02 0.57371341E+02 0.58119552E+02 0.58851406E+02 0.59567041E+02 + 0.60266732E+02 0.60950593E+02 0.61618904E+02 0.62271764E+02 0.62909496E+02 + 0.63532220E+02 0.64140255E+02 0.64733761E+02 0.65313005E+02 0.65878169E+02 + 0.66429490E+02 0.66967178E+02 0.67491454E+02 0.68002540E+02 0.68500642E+02 + 0.68985974E+02 0.69458720E+02 0.69919069E+02 0.70367213E+02 0.70803365E+02 + 0.71227732E+02 0.71640497E+02 0.72041869E+02 0.72432007E+02 0.72811089E+02 + 0.73179255E+02 0.73536708E+02 0.73883639E+02 0.74220221E+02 0.74546618E+02 + 0.74862997E+02 0.75169507E+02 0.75466316E+02 0.75753562E+02 0.76031404E+02 + 0.76300010E+02 0.76559564E+02 0.76810220E+02 0.77052166E+02 0.77285551E+02 + 0.77510551E+02 0.77727277E+02 0.77935895E+02 0.78136522E+02 0.78329317E+02 + 0.78514401E+02 0.78691958E+02 0.78862125E+02 0.79025063E+02 0.79180889E+02 + 0.79329743E+02 0.79471731E+02 0.79606987E+02 0.79735649E+02 0.79857858E+02 + 0.79973746E+02 0.80083457E+02 0.80187117E+02 0.80284849E+02 0.80376767E+02 + 0.80463014E+02 0.80543694E+02 0.80618952E+02 0.80688889E+02 0.80753625E+02 + 0.80813223E+02 0.80867781E+02 0.80917388E+02 0.80962173E+02 0.81002231E+02 + 0.81037687E+02 0.81068648E+02 0.81095174E+02 0.81117339E+02 0.81135208E+02 + 0.81148855E+02 0.81158377E+02 0.81163863E+02 0.81165418E+02 + 0.10000000E+01 0.29047780E+01 0.47293882E+01 0.64804506E+01 0.81831223E+01 + 0.98482433E+01 0.11486725E+02 0.13100792E+02 0.14694162E+02 0.16263950E+02 + 0.17811479E+02 0.19334282E+02 0.20834049E+02 0.22309576E+02 0.23762316E+02 + 0.25191514E+02 0.26598159E+02 0.27981835E+02 0.29343309E+02 0.30682394E+02 + 0.31999707E+02 0.33295170E+02 0.34569315E+02 0.35822107E+02 0.37054039E+02 + 0.38265101E+02 0.39455793E+02 0.40626087E+02 0.41776479E+02 0.42906970E+02 + 0.44018036E+02 0.45109691E+02 0.46182359E+02 0.47236099E+02 0.48271257E+02 + 0.49287927E+02 0.50286401E+02 0.51266830E+02 0.52229437E+02 0.53174389E+02 + 0.54101886E+02 0.55012087E+02 0.55905168E+02 0.56781266E+02 0.57640608E+02 + 0.58483317E+02 0.59309633E+02 0.60119667E+02 0.60913694E+02 0.61691797E+02 + 0.62454275E+02 0.63201177E+02 0.63932797E+02 0.64649191E+02 0.65350666E+02 + 0.66037299E+02 0.66709400E+02 0.67367094E+02 0.68010633E+02 0.68640179E+02 + 0.69255952E+02 0.69858141E+02 0.70446934E+02 0.71022523E+02 0.71585089E+02 + 0.72134839E+02 0.72671948E+02 0.73196588E+02 0.73708938E+02 0.74209188E+02 + 0.74697518E+02 0.75174102E+02 0.75639129E+02 0.76092743E+02 0.76535129E+02 + 0.76966405E+02 0.77386762E+02 0.77796353E+02 0.78195348E+02 0.78583910E+02 + 0.78962187E+02 0.79330333E+02 0.79688500E+02 0.80036816E+02 0.80375420E+02 + 0.80704470E+02 0.81024139E+02 0.81334565E+02 0.81635953E+02 0.81928433E+02 + 0.82212170E+02 0.82487262E+02 0.82753868E+02 0.83012074E+02 0.83262057E+02 + 0.83503929E+02 0.83737856E+02 0.83963986E+02 0.84182474E+02 0.84393406E+02 + 0.84596938E+02 0.84793190E+02 0.84982288E+02 0.85164361E+02 0.85339540E+02 + 0.85507949E+02 0.85669712E+02 0.85824952E+02 0.85973811E+02 0.86116398E+02 + 0.86252842E+02 0.86383277E+02 0.86507817E+02 0.86626536E+02 0.86739549E+02 + 0.86846933E+02 0.86948800E+02 0.87045220E+02 0.87136336E+02 0.87222244E+02 + 0.87303070E+02 0.87378889E+02 0.87449775E+02 0.87515810E+02 0.87577061E+02 + 0.87633610E+02 0.87685542E+02 0.87732964E+02 0.87775969E+02 + 0.10000000E+01 0.29000378E+01 0.47140391E+01 0.64496188E+01 0.81335759E+01 + 0.97773530E+01 0.11392825E+02 0.12982172E+02 0.14549493E+02 0.16091724E+02 + 0.17610475E+02 0.19103196E+02 0.20571850E+02 0.22015244E+02 0.23435042E+02 + 0.24830550E+02 0.26202925E+02 0.27551837E+02 0.28878205E+02 0.30181946E+02 + 0.31463808E+02 0.32723789E+02 0.33962542E+02 0.35180087E+02 0.36377009E+02 + 0.37553337E+02 0.38709684E+02 0.39846038E+02 0.40963034E+02 0.42060659E+02 + 0.43139520E+02 0.44199619E+02 0.45241477E+02 0.46265167E+02 0.47271087E+02 + 0.48259381E+02 0.49230366E+02 0.50184252E+02 0.51121266E+02 0.52041635E+02 + 0.52945541E+02 0.53833199E+02 0.54704773E+02 0.55560438E+02 0.56400418E+02 + 0.57224880E+02 0.58034053E+02 0.58828069E+02 0.59607235E+02 0.60371620E+02 + 0.61121559E+02 0.61857085E+02 0.62578544E+02 0.63285930E+02 0.63979641E+02 + 0.64659711E+02 0.65326510E+02 0.65980119E+02 0.66620851E+02 0.67248836E+02 + 0.67864322E+02 0.68467474E+02 0.69058496E+02 0.69637594E+02 0.70204939E+02 + 0.70760736E+02 0.71305145E+02 0.71838339E+02 0.72360480E+02 0.72871761E+02 + 0.73372359E+02 0.73862430E+02 0.74342170E+02 0.74811715E+02 0.75271221E+02 + 0.75720801E+02 0.76160644E+02 0.76590867E+02 0.77011637E+02 0.77423087E+02 + 0.77825364E+02 0.78218605E+02 0.78602937E+02 0.78978491E+02 0.79345382E+02 + 0.79703737E+02 0.80053713E+02 0.80395429E+02 0.80729073E+02 0.81054741E+02 + 0.81372612E+02 0.81682759E+02 0.81985330E+02 0.82280374E+02 0.82568053E+02 + 0.82848436E+02 0.83121697E+02 0.83387939E+02 0.83647326E+02 0.83899931E+02 + 0.84145869E+02 0.84385223E+02 0.84618105E+02 0.84844614E+02 0.85064879E+02 + 0.85278998E+02 0.85487073E+02 0.85689218E+02 0.85885534E+02 0.86076116E+02 + 0.86261097E+02 0.86440567E+02 0.86614646E+02 0.86783382E+02 0.86946893E+02 + 0.87105206E+02 0.87258425E+02 0.87406604E+02 0.87549880E+02 0.87688324E+02 + 0.87822046E+02 0.87951097E+02 0.88075532E+02 0.88195403E+02 0.88310764E+02 + 0.88421691E+02 0.88528265E+02 0.88630581E+02 0.88728728E+02 + 128 + 0.10000000E+01 0.25870347E+01 0.36021248E+01 0.40709587E+01 0.41646518E+01 + 0.40009367E+01 0.36880319E+01 0.32894774E+01 0.28600894E+01 0.24279798E+01 + 0.20143107E+01 0.16317115E+01 0.12920935E+01 0.99829218E+00 0.75182620E+00 + 0.55027324E+00 0.39341296E+00 0.27411619E+00 0.18825200E+00 0.12727433E+00 + 0.86560468E-01 0.59361856E-01 0.42117388E-01 0.31096179E-01 0.23916696E-01 + 0.18619276E-01 0.14489148E-01 0.11232216E-01 0.82889758E-02 0.55163217E-02 + 0.32920997E-02 0.16703238E-02 0.40887755E-03 -0.44375720E-03 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26164810E+01 0.37422370E+01 0.44372152E+01 0.48243501E+01 + 0.49808735E+01 0.49727273E+01 0.48363938E+01 0.46065033E+01 0.43022526E+01 + 0.39407979E+01 0.35427021E+01 0.31277675E+01 0.27142783E+01 0.23154430E+01 + 0.19428632E+01 0.16074038E+01 0.13128773E+01 0.10635005E+01 0.85544907E+00 + 0.68791850E+00 0.55228396E+00 0.44383842E+00 0.35626445E+00 0.28542731E+00 + 0.22768910E+00 0.18076172E+00 0.14286136E+00 0.11201332E+00 0.86888816E-01 + 0.66865088E-01 0.51108755E-01 0.38651332E-01 0.29000161E-01 0.21802190E-01 + 0.16362350E-01 0.12118093E-01 0.87905626E-02 0.62237308E-02 0.42379223E-02 + 0.27860504E-02 0.18368383E-02 0.12359516E-02 0.81924090E-03 0.50055902E-03 + 0.32358949E-03 0.28590038E-03 0.25598531E-03 0.18032703E-03 0.10919794E-03 + 0.16526335E-03 0.37457052E-03 0.57614222E-03 0.64778850E-03 0.60366930E-03 + 0.49112050E-03 0.32554781E-03 0.10984499E-03 -0.10045006E-03 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26375977E+01 0.38339307E+01 0.46659801E+01 0.52399187E+01 + 0.56189804E+01 0.58495842E+01 0.59538884E+01 0.59519007E+01 0.58528150E+01 + 0.56667826E+01 0.54084891E+01 0.50936476E+01 0.47397347E+01 0.43611460E+01 + 0.39731066E+01 0.35902441E+01 0.32224503E+01 0.28792954E+01 0.25635009E+01 + 0.22793943E+01 0.20231125E+01 0.17935940E+01 0.15872991E+01 0.14022067E+01 + 0.12361319E+01 0.10876432E+01 0.95530438E+00 0.83741993E+00 0.73258529E+00 + 0.63990793E+00 0.55824795E+00 0.48639237E+00 0.42342855E+00 0.36852313E+00 + 0.32058618E+00 0.27855177E+00 0.24168070E+00 0.20943763E+00 0.18127216E+00 + 0.15676055E+00 0.13550082E+00 0.11702685E+00 0.10095386E+00 0.86932151E-01 + 0.74758015E-01 0.64230854E-01 0.55074208E-01 0.47102933E-01 0.40182059E-01 + 0.34278631E-01 0.29326897E-01 0.25100898E-01 0.21407649E-01 0.18161052E-01 + 0.15366478E-01 0.12968502E-01 0.10868778E-01 0.90280132E-02 0.74746057E-02 + 0.62326825E-02 0.52538821E-02 0.44836565E-02 0.38875212E-02 0.34297564E-02 + 0.30528276E-02 0.27075677E-02 0.24097156E-02 0.21632616E-02 0.19317094E-02 + 0.16514083E-02 0.13489060E-02 0.11145190E-02 0.96720704E-03 0.84246782E-03 + 0.69984011E-03 0.57815972E-03 0.51469074E-03 0.46930973E-03 0.33737563E-03 + 0.12085054E-03 -0.73981976E-04 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26694449E+01 0.39449498E+01 0.49004727E+01 0.56298782E+01 + 0.61897639E+01 0.66196943E+01 0.69374713E+01 0.71548879E+01 0.72761682E+01 + 0.73076571E+01 0.72582294E+01 0.71387123E+01 0.69608014E+01 0.67350593E+01 + 0.64729693E+01 0.61863379E+01 0.58842346E+01 0.55759437E+01 0.52665797E+01 + 0.49622887E+01 0.46635625E+01 0.43726442E+01 0.40897359E+01 0.38159479E+01 + 0.35518972E+01 0.32985652E+01 0.30565666E+01 0.28261962E+01 0.26076149E+01 + 0.24012432E+01 0.22071042E+01 0.20250119E+01 0.18548317E+01 0.16962845E+01 + 0.15488479E+01 0.14119072E+01 0.12849753E+01 0.11675905E+01 0.10592828E+01 + 0.95962082E+00 0.86813047E+00 0.78425832E+00 0.70754516E+00 0.63751652E+00 + 0.57372406E+00 0.51571586E+00 0.46301068E+00 0.41518928E+00 0.37195808E+00 + 0.33291432E+00 0.29769937E+00 0.26589025E+00 0.23717365E+00 0.21125092E+00 + 0.18787595E+00 0.16678890E+00 0.14778775E+00 0.13071395E+00 0.11541972E+00 + 0.10175240E+00 0.89572144E-01 0.78749944E-01 0.69111238E-01 0.60494122E-01 + 0.52780931E-01 0.45924378E-01 0.39879642E-01 0.34565141E-01 0.29887343E-01 + 0.25756582E-01 0.22113264E-01 0.18912099E-01 0.16107800E-01 0.13663559E-01 + 0.11545237E-01 0.97039310E-02 0.80787744E-02 0.66446873E-02 0.54220205E-02 + 0.44257003E-02 0.36366448E-02 0.30033114E-02 0.24881950E-02 0.20934922E-02 + 0.17993379E-02 0.15742874E-02 0.13864769E-02 0.12358868E-02 0.11036611E-02 + 0.98901586E-03 0.88049703E-03 0.78172691E-03 0.70675800E-03 0.63467873E-03 + 0.55374756E-03 0.46593144E-03 0.37646279E-03 0.30102068E-03 0.26063463E-03 + 0.23734249E-03 0.23749799E-03 0.25999539E-03 0.27813167E-03 0.27742956E-03 + 0.28338552E-03 0.30257914E-03 0.34505064E-03 0.41110065E-03 0.43150180E-03 + 0.40190151E-03 0.35943170E-03 0.33727539E-03 0.32574991E-03 0.28377183E-03 + 0.21894898E-03 0.16880691E-03 0.16443750E-03 0.19717480E-03 0.24071547E-03 + 0.28575081E-03 0.33173652E-03 0.38056218E-03 0.40884495E-03 0.40366238E-03 + 0.39988539E-03 0.41960642E-03 0.47722122E-03 0.54026417E-03 + 0.10000000E+01 0.26989575E+01 0.40453620E+01 0.51083690E+01 0.59695331E+01 + 0.66786919E+01 0.72705437E+01 0.77606187E+01 0.81558993E+01 0.84576071E+01 + 0.86694147E+01 0.87969223E+01 0.88481156E+01 0.88316964E+01 0.87561225E+01 + 0.86302407E+01 0.84633907E+01 0.82630909E+01 0.80373647E+01 0.77916380E+01 + 0.75320840E+01 0.72608975E+01 0.69814683E+01 0.66956543E+01 0.64058993E+01 + 0.61141444E+01 0.58226216E+01 0.55331683E+01 0.52474135E+01 0.49667115E+01 + 0.46925697E+01 0.44260789E+01 0.41680279E+01 0.39191916E+01 0.36800393E+01 + 0.34508117E+01 0.32315785E+01 0.30224464E+01 0.28233813E+01 0.26343164E+01 + 0.24552317E+01 0.22860008E+01 0.21263406E+01 0.19759980E+01 0.18346401E+01 + 0.17019614E+01 0.15776673E+01 0.14614099E+01 0.13528337E+01 0.12517237E+01 + 0.11576673E+01 0.10703543E+01 0.98931448E+00 0.91415887E+00 0.84445686E+00 + 0.77981052E+00 0.71979130E+00 0.66401641E+00 0.61220539E+00 0.56415198E+00 + 0.51962993E+00 0.47839510E+00 0.44021937E+00 0.40486954E+00 0.37214780E+00 + 0.34184606E+00 0.31380635E+00 0.28788751E+00 0.26395264E+00 0.24184001E+00 + 0.22137191E+00 0.20240782E+00 0.18485538E+00 0.16862608E+00 0.15364624E+00 + 0.13984167E+00 0.12715795E+00 0.11552399E+00 0.10485971E+00 0.95118347E-01 + 0.86279715E-01 0.78305009E-01 0.71161372E-01 0.64760711E-01 0.59017932E-01 + 0.53833910E-01 0.49098281E-01 0.44721126E-01 0.40665311E-01 0.36938914E-01 + 0.33534744E-01 0.30429949E-01 0.27604965E-01 0.25035507E-01 0.22714457E-01 + 0.20635322E-01 0.18734889E-01 0.16972174E-01 0.15341484E-01 0.13852439E-01 + 0.12500227E-01 0.11274922E-01 0.10166019E-01 0.91915209E-02 0.83286257E-02 + 0.75500830E-02 0.68098946E-02 0.60930766E-02 0.54271498E-02 0.48317502E-02 + 0.42990535E-02 0.38271388E-02 0.34157041E-02 0.30818189E-02 0.28063162E-02 + 0.25396448E-02 0.23023662E-02 0.20849342E-02 0.18684536E-02 0.16403137E-02 + 0.14207389E-02 0.12188095E-02 0.10731616E-02 0.99427158E-03 0.94667286E-03 + 0.91880306E-03 0.90655318E-03 0.91835253E-03 0.91203236E-03 + 0.10000000E+01 0.27210000E+01 0.41174522E+01 0.52526848E+01 0.62001893E+01 + 0.70057030E+01 0.77021788E+01 0.83053353E+01 0.88207824E+01 0.92486544E+01 + 0.95912614E+01 0.98525000E+01 0.10038639E+02 0.10156546E+02 0.10213139E+02 + 0.10215326E+02 0.10170439E+02 0.10084374E+02 0.99636441E+01 0.98129650E+01 + 0.96376889E+01 0.94401814E+01 0.92237896E+01 0.89907267E+01 0.87437151E+01 + 0.84850506E+01 0.82173020E+01 0.79427166E+01 0.76634584E+01 0.73814184E+01 + 0.70986106E+01 0.68167024E+01 0.65370917E+01 0.62612028E+01 0.59900941E+01 + 0.57246000E+01 0.54653661E+01 0.52130581E+01 0.49681103E+01 0.47308604E+01 + 0.45016112E+01 0.42805565E+01 0.40677804E+01 0.38633759E+01 0.36672824E+01 + 0.34794035E+01 0.32996496E+01 0.31279185E+01 0.29640574E+01 0.28079853E+01 + 0.26594348E+01 0.25182714E+01 0.23841837E+01 0.22569215E+01 0.21361489E+01 + 0.20215593E+01 0.19128142E+01 0.18096141E+01 0.17116934E+01 0.16188587E+01 + 0.15308877E+01 0.14475508E+01 0.13686326E+01 0.12938684E+01 0.12230321E+01 + 0.11558801E+01 0.10922647E+01 0.10320346E+01 0.97502777E+00 0.92102072E+00 + 0.86976473E+00 0.82104307E+00 0.77471926E+00 0.73072428E+00 0.68903126E+00 + 0.64963329E+00 0.61252575E+00 0.57759697E+00 0.54467070E+00 0.51360422E+00 + 0.48428514E+00 0.45665172E+00 0.43060870E+00 0.40602158E+00 0.38278258E+00 + 0.36078191E+00 0.33993728E+00 0.32020415E+00 0.30153837E+00 0.28391249E+00 + 0.26731071E+00 0.25169481E+00 0.23701452E+00 0.22321410E+00 0.21019812E+00 + 0.19788801E+00 0.18623521E+00 0.17522610E+00 0.16485397E+00 0.15509288E+00 + 0.14592441E+00 0.13733010E+00 0.12927055E+00 0.12169751E+00 0.11457225E+00 + 0.10786110E+00 0.10153380E+00 0.95573065E-01 0.89961951E-01 0.84698713E-01 + 0.79771907E-01 0.75181990E-01 0.70868446E-01 0.66806310E-01 0.62980882E-01 + 0.59352609E-01 0.55926626E-01 0.52690162E-01 0.49606420E-01 0.46708244E-01 + 0.44014410E-01 0.41523277E-01 0.39194457E-01 0.36978346E-01 0.34888602E-01 + 0.32914066E-01 0.31061184E-01 0.29288203E-01 0.27554472E-01 + 0.10000000E+01 0.27529617E+01 0.42220885E+01 0.54628770E+01 0.65370424E+01 + 0.74838591E+01 0.83332211E+01 0.91009403E+01 0.97909213E+01 0.10401893E+02 + 0.10934264E+02 0.11389679E+02 0.11772109E+02 0.12086179E+02 0.12336903E+02 + 0.12528787E+02 0.12666654E+02 0.12754363E+02 0.12796463E+02 0.12796656E+02 + 0.12759122E+02 0.12686286E+02 0.12581219E+02 0.12446392E+02 0.12284646E+02 + 0.12098532E+02 0.11890883E+02 0.11664312E+02 0.11421470E+02 0.11164797E+02 + 0.10896819E+02 0.10619808E+02 0.10335802E+02 0.10046863E+02 0.97547211E+01 + 0.94609440E+01 0.91668814E+01 0.88738669E+01 0.85829220E+01 0.82949702E+01 + 0.80108556E+01 0.77312694E+01 0.74567744E+01 0.71879203E+01 0.69250717E+01 + 0.66685097E+01 0.64185349E+01 0.61753689E+01 0.59391734E+01 0.57101839E+01 + 0.54883625E+01 0.52738472E+01 0.50665510E+01 0.48664114E+01 0.46732800E+01 + 0.44870124E+01 0.43073968E+01 0.41342575E+01 0.39674738E+01 0.38069402E+01 + 0.36525259E+01 0.35040551E+01 0.33613298E+01 0.32241084E+01 0.30921393E+01 + 0.29652090E+01 0.28431735E+01 0.27259609E+01 0.26134621E+01 0.25054533E+01 + 0.24016324E+01 0.23017055E+01 0.22055351E+01 0.21130194E+01 0.20241305E+01 + 0.19388683E+01 0.18572000E+01 0.17789983E+01 0.17040657E+01 0.16322271E+01 + 0.15633426E+01 0.14973155E+01 0.14340372E+01 0.13733765E+01 0.13152098E+01 + 0.12594111E+01 0.12058395E+01 0.11543730E+01 0.11049023E+01 0.10573780E+01 + 0.10118017E+01 0.96818403E+00 0.92650114E+00 0.88666269E+00 0.84854901E+00 + 0.81203173E+00 0.77702820E+00 0.74346069E+00 0.71127584E+00 0.68042033E+00 + 0.65090105E+00 0.62269721E+00 0.59574371E+00 0.56995717E+00 0.54523703E+00 + 0.52152339E+00 0.49879904E+00 0.47704592E+00 0.45625755E+00 0.43639680E+00 + 0.41742708E+00 0.39932392E+00 0.38202422E+00 0.36547226E+00 0.34961646E+00 + 0.33442412E+00 0.31986699E+00 0.30588841E+00 0.29247396E+00 0.27962239E+00 + 0.26734095E+00 0.25563018E+00 0.24444281E+00 0.23374123E+00 0.22350549E+00 + 0.21372228E+00 0.20437859E+00 0.19546311E+00 0.18691655E+00 + 0.10000000E+01 0.27790897E+01 0.43060915E+01 0.56294064E+01 0.68021883E+01 + 0.78588354E+01 0.88272142E+01 0.97237987E+01 0.10552333E+02 0.11311086E+02 + 0.11999350E+02 0.12617330E+02 0.13167291E+02 0.13652279E+02 0.14075867E+02 + 0.14440940E+02 0.14750605E+02 0.15007241E+02 0.15213864E+02 0.15373139E+02 + 0.15488096E+02 0.15560752E+02 0.15593562E+02 0.15588690E+02 0.15548607E+02 + 0.15475598E+02 0.15372260E+02 0.15241102E+02 0.15084739E+02 0.14905640E+02 + 0.14706364E+02 0.14489313E+02 0.14256694E+02 0.14010801E+02 0.13753634E+02 + 0.13487085E+02 0.13212869E+02 0.12932656E+02 0.12647843E+02 0.12359712E+02 + 0.12069481E+02 0.11778201E+02 0.11486789E+02 0.11196142E+02 0.10906957E+02 + 0.10619864E+02 0.10335484E+02 0.10054363E+02 0.97769634E+01 0.95038011E+01 + 0.92351473E+01 0.89714151E+01 0.87127871E+01 0.84594642E+01 0.82115311E+01 + 0.79690696E+01 0.77321170E+01 0.75007000E+01 0.72749022E+01 0.70548331E+01 + 0.68405201E+01 0.66319454E+01 0.64290424E+01 0.62316882E+01 0.60397725E+01 + 0.58531401E+01 0.56717440E+01 0.54955715E+01 0.53245992E+01 0.51586728E+01 + 0.49975322E+01 0.48409530E+01 0.46888188E+01 0.45410833E+01 0.43977732E+01 + 0.42589326E+01 0.41245759E+01 0.39945498E+01 0.38686397E+01 0.37466388E+01 + 0.36283800E+01 0.35137753E+01 0.34027403E+01 0.32951820E+01 0.31910232E+01 + 0.30901311E+01 0.29923078E+01 0.28974404E+01 0.28054378E+01 0.27162615E+01 + 0.26298818E+01 0.25462686E+01 0.24653885E+01 0.23871700E+01 0.23114757E+01 + 0.22381631E+01 0.21670857E+01 0.20981665E+01 0.20313945E+01 0.19667596E+01 + 0.19042615E+01 0.18438621E+01 0.17854694E+01 0.17289806E+01 0.16742956E+01 + 0.16213450E+01 0.15700519E+01 0.15203473E+01 0.14722040E+01 0.14255885E+01 + 0.13804722E+01 0.13368053E+01 0.12945062E+01 0.12535343E+01 0.12138769E+01 + 0.11755308E+01 0.11384364E+01 0.11025276E+01 0.10677959E+01 0.10341899E+01 + 0.10016965E+01 0.97025523E+00 0.93978407E+00 0.91023282E+00 0.88158492E+00 + 0.85384322E+00 0.82697658E+00 0.80094827E+00 0.77571208E+00 + 0.10000000E+01 0.28040724E+01 0.43857707E+01 0.57866200E+01 0.70522351E+01 + 0.82124499E+01 0.92930457E+01 0.10311083E+02 0.11270730E+02 0.12170192E+02 + 0.13008012E+02 0.13783244E+02 0.14496676E+02 0.15150034E+02 0.15745668E+02 + 0.16285254E+02 0.16770569E+02 0.17202909E+02 0.17584097E+02 0.17915888E+02 + 0.18200291E+02 0.18438782E+02 0.18633119E+02 0.18784953E+02 0.18896206E+02 + 0.18968704E+02 0.19004557E+02 0.19005895E+02 0.18974960E+02 0.18913958E+02 + 0.18825179E+02 0.18710837E+02 0.18573047E+02 0.18414015E+02 0.18235761E+02 + 0.18040221E+02 0.17829241E+02 0.17604621E+02 0.17367943E+02 0.17120699E+02 + 0.16864284E+02 0.16599973E+02 0.16328945E+02 0.16052361E+02 0.15771189E+02 + 0.15486331E+02 0.15198677E+02 0.14909041E+02 0.14618167E+02 0.14326844E+02 + 0.14035637E+02 0.13745230E+02 0.13456095E+02 0.13168713E+02 0.12883471E+02 + 0.12600726E+02 0.12320767E+02 0.12043869E+02 0.11770360E+02 0.11500579E+02 + 0.11234810E+02 0.10973254E+02 0.10716021E+02 0.10463174E+02 0.10214754E+02 + 0.99707997E+01 0.97314416E+01 0.94967930E+01 0.92669489E+01 0.90418263E+01 + 0.88212772E+01 0.86051710E+01 0.83934937E+01 0.81862809E+01 0.79836222E+01 + 0.77856546E+01 0.75924426E+01 0.74039049E+01 0.72198373E+01 0.70400344E+01 + 0.68644121E+01 0.66929037E+01 0.65254462E+01 0.63619964E+01 0.62024689E+01 + 0.60467667E+01 0.58947568E+01 0.57463344E+01 0.56014212E+01 0.54599578E+01 + 0.53219244E+01 0.51873083E+01 0.50560839E+01 0.49282196E+01 0.48035812E+01 + 0.46820076E+01 0.45633679E+01 0.44475785E+01 0.43346076E+01 0.42244475E+01 + 0.41170834E+01 0.40125096E+01 0.39106723E+01 0.38114437E+01 0.37147025E+01 + 0.36203445E+01 0.35283001E+01 0.34385386E+01 0.33510252E+01 0.32657289E+01 + 0.31825905E+01 0.31015677E+01 0.30226017E+01 0.29456446E+01 0.28706350E+01 + 0.27974866E+01 0.27261478E+01 0.26565852E+01 0.25887961E+01 0.25227331E+01 + 0.24583346E+01 0.23955361E+01 0.23343004E+01 0.22746187E+01 0.22164532E+01 + 0.21597421E+01 0.21044350E+01 0.20505173E+01 0.19979641E+01 + 0.10000000E+01 0.28251054E+01 0.44522572E+01 0.59170241E+01 0.72596823E+01 + 0.85064679E+01 0.96811474E+01 0.10800868E+02 0.11870518E+02 0.12888626E+02 + 0.13853542E+02 0.14763661E+02 0.15618804E+02 0.16419747E+02 0.17167935E+02 + 0.17864330E+02 0.18509990E+02 0.19105673E+02 0.19652523E+02 0.20151689E+02 + 0.20604524E+02 0.21012042E+02 0.21375456E+02 0.21695955E+02 0.21974908E+02 + 0.22213655E+02 0.22413747E+02 0.22576782E+02 0.22704463E+02 0.22798489E+02 + 0.22860651E+02 0.22892698E+02 0.22896333E+02 0.22873365E+02 0.22825459E+02 + 0.22754277E+02 0.22661432E+02 0.22548529E+02 0.22417021E+02 0.22268313E+02 + 0.22103752E+02 0.21924584E+02 0.21732004E+02 0.21527198E+02 0.21311207E+02 + 0.21085024E+02 0.20849644E+02 0.20605976E+02 0.20354882E+02 0.20097268E+02 + 0.19833881E+02 0.19565569E+02 0.19293039E+02 0.19016958E+02 0.18737925E+02 + 0.18456532E+02 0.18173334E+02 0.17888887E+02 0.17603724E+02 0.17318367E+02 + 0.17033297E+02 0.16748926E+02 0.16465628E+02 0.16183713E+02 0.15903444E+02 + 0.15625053E+02 0.15348842E+02 0.15075150E+02 0.14804269E+02 0.14536327E+02 + 0.14271341E+02 0.14009354E+02 0.13750487E+02 0.13494889E+02 0.13242803E+02 + 0.12994450E+02 0.12749930E+02 0.12509236E+02 0.12272260E+02 0.12038926E+02 + 0.11809256E+02 0.11583266E+02 0.11360957E+02 0.11142321E+02 0.10927349E+02 + 0.10716012E+02 0.10508234E+02 0.10303966E+02 0.10103143E+02 0.99057374E+01 + 0.97117229E+01 0.95210935E+01 0.93339176E+01 0.91501811E+01 0.89698063E+01 + 0.87926637E+01 0.86186502E+01 0.84477036E+01 0.82798112E+01 0.81149745E+01 + 0.79532112E+01 0.77945105E+01 0.76388113E+01 0.74859999E+01 0.73359667E+01 + 0.71886683E+01 0.70440617E+01 0.69021073E+01 0.67627737E+01 0.66260501E+01 + 0.64919060E+01 0.63603286E+01 0.62312823E+01 0.61047320E+01 0.59806230E+01 + 0.58588677E+01 0.57394049E+01 0.56221830E+01 0.55071728E+01 0.53943611E+01 + 0.52837334E+01 0.51752531E+01 0.50688635E+01 0.49645361E+01 0.48622339E+01 + 0.47619336E+01 0.46635802E+01 0.45671449E+01 0.44726138E+01 + 0.10000000E+01 0.28450412E+01 0.45154302E+01 0.60411035E+01 0.74574807E+01 + 0.87874013E+01 0.10052476E+02 0.11269505E+02 0.12443922E+02 0.13574593E+02 + 0.14659804E+02 0.15697441E+02 0.16686552E+02 0.17627111E+02 0.18519816E+02 + 0.19365036E+02 0.20163274E+02 0.20914859E+02 0.21620413E+02 0.22280623E+02 + 0.22896324E+02 0.23468195E+02 0.23997013E+02 0.24483562E+02 0.24928749E+02 + 0.25333490E+02 0.25698850E+02 0.26025953E+02 0.26316007E+02 0.26570235E+02 + 0.26789947E+02 0.26976440E+02 0.27131016E+02 0.27255064E+02 0.27349887E+02 + 0.27416825E+02 0.27457209E+02 0.27472341E+02 0.27463472E+02 0.27431805E+02 + 0.27378522E+02 0.27304774E+02 0.27211689E+02 0.27100389E+02 0.26971865E+02 + 0.26827088E+02 0.26667057E+02 0.26492722E+02 0.26305018E+02 0.26104907E+02 + 0.25893228E+02 0.25670902E+02 0.25438749E+02 0.25197571E+02 0.24948127E+02 + 0.24691161E+02 0.24427403E+02 0.24157572E+02 0.23882383E+02 0.23602541E+02 + 0.23318683E+02 0.23031435E+02 0.22741367E+02 0.22449013E+02 0.22154879E+02 + 0.21859410E+02 0.21563085E+02 0.21266399E+02 0.20969786E+02 0.20673599E+02 + 0.20378070E+02 0.20083436E+02 0.19789973E+02 0.19497963E+02 0.19207741E+02 + 0.18919638E+02 0.18633888E+02 0.18350614E+02 0.18069834E+02 0.17791589E+02 + 0.17516002E+02 0.17243191E+02 0.16973252E+02 0.16706256E+02 0.16442239E+02 + 0.16181203E+02 0.15923168E+02 0.15668139E+02 0.15416130E+02 0.15167159E+02 + 0.14921207E+02 0.14678314E+02 0.14438582E+02 0.14202057E+02 0.13968711E+02 + 0.13738447E+02 0.13511165E+02 0.13286800E+02 0.13065350E+02 0.12846851E+02 + 0.12631363E+02 0.12418913E+02 0.12209424E+02 0.12002802E+02 0.11798984E+02 + 0.11597951E+02 0.11399724E+02 0.11204302E+02 0.11011650E+02 0.10821742E+02 + 0.10634568E+02 0.10450125E+02 0.10268376E+02 0.10089311E+02 0.99128981E+01 + 0.97390593E+01 0.95677245E+01 0.93988809E+01 0.92325412E+01 0.90686968E+01 + 0.89073509E+01 0.87484776E+01 0.85920491E+01 0.84380569E+01 0.82864508E+01 + 0.81372106E+01 0.79902994E+01 0.78456824E+01 0.77033454E+01 + 0.10000000E+01 0.28559246E+01 0.45501634E+01 0.61093362E+01 0.75668917E+01 + 0.89439997E+01 0.10260787E+02 0.11533071E+02 0.12766500E+02 0.13960230E+02 + 0.15112799E+02 0.16222106E+02 0.17287137E+02 0.18307679E+02 0.19284261E+02 + 0.20217133E+02 0.21106727E+02 0.21953317E+02 0.22757425E+02 0.23519607E+02 + 0.24240570E+02 0.24920852E+02 0.25561080E+02 0.26161885E+02 0.26723980E+02 + 0.27248087E+02 0.27735026E+02 0.28185674E+02 0.28600948E+02 0.28981786E+02 + 0.29329207E+02 0.29644222E+02 0.29927851E+02 0.30181172E+02 0.30405208E+02 + 0.30600998E+02 0.30769586E+02 0.30912004E+02 0.31029242E+02 0.31122262E+02 + 0.31192005E+02 0.31239405E+02 0.31265384E+02 0.31270850E+02 0.31256631E+02 + 0.31223543E+02 0.31172430E+02 0.31104086E+02 0.31019332E+02 0.30918986E+02 + 0.30803790E+02 0.30674547E+02 0.30532003E+02 0.30376890E+02 0.30209917E+02 + 0.30031795E+02 0.29843201E+02 0.29644846E+02 0.29437415E+02 0.29221591E+02 + 0.28998055E+02 0.28767424E+02 0.28530299E+02 0.28287274E+02 0.28038898E+02 + 0.27785699E+02 0.27528243E+02 0.27267076E+02 0.27002697E+02 0.26735535E+02 + 0.26465958E+02 0.26194332E+02 0.25921059E+02 0.25646540E+02 0.25371175E+02 + 0.25095360E+02 0.24819412E+02 0.24543558E+02 0.24267958E+02 0.23992793E+02 + 0.23718264E+02 0.23444577E+02 0.23171913E+02 0.22900423E+02 0.22630235E+02 + 0.22361460E+02 0.22094200E+02 0.21828529E+02 0.21564525E+02 0.21302255E+02 + 0.21041771E+02 0.20783163E+02 0.20526537E+02 0.20271977E+02 0.20019497E+02 + 0.19769051E+02 0.19520615E+02 0.19274181E+02 0.19029792E+02 0.18787490E+02 + 0.18547348E+02 0.18309407E+02 0.18073658E+02 0.17840064E+02 0.17608569E+02 + 0.17379171E+02 0.17151870E+02 0.16926671E+02 0.16703578E+02 0.16482607E+02 + 0.16263779E+02 0.16047103E+02 0.15832558E+02 0.15620162E+02 0.15409901E+02 + 0.15201745E+02 0.14995681E+02 0.14791696E+02 0.14589788E+02 0.14389963E+02 + 0.14192225E+02 0.13996566E+02 0.13802997E+02 0.13611527E+02 0.13422114E+02 + 0.13234741E+02 0.13049375E+02 0.12866022E+02 0.12684707E+02 + 0.10000000E+01 0.28672309E+01 0.45865029E+01 0.61810664E+01 0.76820776E+01 + 0.91089095E+01 0.10480161E+02 0.11810695E+02 0.13106232E+02 0.14366115E+02 + 0.15589038E+02 0.16772821E+02 0.17916338E+02 0.19019121E+02 0.20081492E+02 + 0.21103507E+02 0.22085440E+02 0.23027441E+02 0.23929860E+02 0.24793088E+02 + 0.25617648E+02 0.26403942E+02 0.27152446E+02 0.27863653E+02 0.28538106E+02 + 0.29176343E+02 0.29778983E+02 0.30346701E+02 0.30880176E+02 0.31380121E+02 + 0.31847322E+02 0.32282567E+02 0.32686638E+02 0.33060380E+02 0.33404599E+02 + 0.33720115E+02 0.34007760E+02 0.34268361E+02 0.34502710E+02 0.34711595E+02 + 0.34895778E+02 0.35056018E+02 0.35193099E+02 0.35307768E+02 0.35400732E+02 + 0.35472690E+02 0.35524338E+02 0.35556365E+02 0.35569496E+02 0.35564433E+02 + 0.35541836E+02 0.35502433E+02 0.35446888E+02 0.35375871E+02 0.35290032E+02 + 0.35190049E+02 0.35076547E+02 0.34950194E+02 0.34811658E+02 0.34661569E+02 + 0.34500584E+02 0.34329341E+02 0.34148458E+02 0.33958540E+02 0.33760181E+02 + 0.33553932E+02 0.33340375E+02 0.33120105E+02 0.32893670E+02 0.32661547E+02 + 0.32424195E+02 0.32182076E+02 0.31935635E+02 0.31685347E+02 0.31431681E+02 + 0.31175088E+02 0.30915970E+02 0.30654630E+02 0.30391317E+02 0.30126314E+02 + 0.29859932E+02 0.29592466E+02 0.29324176E+02 0.29055283E+02 0.28785992E+02 + 0.28516485E+02 0.28246935E+02 0.27977499E+02 0.27708342E+02 0.27439578E+02 + 0.27171312E+02 0.26903690E+02 0.26636870E+02 0.26370965E+02 0.26106055E+02 + 0.25842148E+02 0.25579257E+02 0.25317440E+02 0.25056736E+02 0.24797248E+02 + 0.24539068E+02 0.24282255E+02 0.24026840E+02 0.23772783E+02 0.23520086E+02 + 0.23268786E+02 0.23018926E+02 0.22770542E+02 0.22523653E+02 0.22278284E+02 + 0.22034453E+02 0.21792195E+02 0.21551531E+02 0.21312482E+02 0.21075047E+02 + 0.20839193E+02 0.20604916E+02 0.20372211E+02 0.20141119E+02 0.19911668E+02 + 0.19683878E+02 0.19457785E+02 0.19233400E+02 0.19010707E+02 0.18789710E+02 + 0.18570389E+02 0.18352741E+02 0.18136783E+02 0.17922525E+02 + 0.10000000E+01 0.28723815E+01 0.46035618E+01 0.62151487E+01 0.77376047E+01 + 0.91896180E+01 0.10588873E+02 0.11949279E+02 0.13276414E+02 0.14569721E+02 + 0.15828077E+02 0.17049456E+02 0.18232911E+02 0.19378079E+02 0.20485350E+02 + 0.21554834E+02 0.22586864E+02 0.23581597E+02 0.24539401E+02 0.25460650E+02 + 0.26345855E+02 0.27195400E+02 0.28009743E+02 0.28789329E+02 0.29534651E+02 + 0.30246188E+02 0.30924485E+02 0.31570139E+02 0.32183745E+02 0.32765921E+02 + 0.33317353E+02 0.33838711E+02 0.34330671E+02 0.34793965E+02 0.35229279E+02 + 0.35637316E+02 0.36018789E+02 0.36374401E+02 0.36704833E+02 0.37010744E+02 + 0.37292764E+02 0.37551531E+02 0.37787702E+02 0.38001904E+02 0.38194736E+02 + 0.38366769E+02 0.38518592E+02 0.38650777E+02 0.38763901E+02 0.38858558E+02 + 0.38935307E+02 0.38994766E+02 0.39037498E+02 0.39064072E+02 0.39075038E+02 + 0.39070955E+02 0.39052352E+02 0.39019798E+02 0.38973851E+02 0.38915074E+02 + 0.38844019E+02 0.38761236E+02 0.38667254E+02 0.38562601E+02 0.38447811E+02 + 0.38323379E+02 0.38189830E+02 0.38047695E+02 0.37897488E+02 0.37739669E+02 + 0.37574676E+02 0.37402935E+02 0.37224886E+02 0.37040966E+02 0.36851610E+02 + 0.36657271E+02 0.36458347E+02 0.36255161E+02 0.36047985E+02 0.35837108E+02 + 0.35622853E+02 0.35405535E+02 0.35185454E+02 0.34962885E+02 0.34738079E+02 + 0.34511246E+02 0.34282576E+02 0.34052277E+02 0.33820545E+02 0.33587562E+02 + 0.33353484E+02 0.33118492E+02 0.32882741E+02 0.32646376E+02 0.32409490E+02 + 0.32172150E+02 0.31934424E+02 0.31696398E+02 0.31458190E+02 0.31219884E+02 + 0.30981586E+02 0.30743403E+02 0.30505386E+02 0.30267577E+02 0.30030015E+02 + 0.29792755E+02 0.29555839E+02 0.29319310E+02 0.29083239E+02 0.28847662E+02 + 0.28612642E+02 0.28378239E+02 0.28144463E+02 0.27911342E+02 0.27678889E+02 + 0.27447126E+02 0.27216061E+02 0.26985744E+02 0.26756229E+02 0.26527563E+02 + 0.26299793E+02 0.26072940E+02 0.25847017E+02 0.25622043E+02 0.25398022E+02 + 0.25174952E+02 0.24952859E+02 0.24731769E+02 0.24511719E+02 + 0.10000000E+01 0.28794827E+01 0.46268747E+01 0.62617162E+01 0.78130586E+01 + 0.92984874E+01 0.10734567E+02 0.12134325E+02 0.13503172E+02 0.14840609E+02 + 0.16145606E+02 0.17416166E+02 0.18651381E+02 0.19850854E+02 0.21014928E+02 + 0.22143659E+02 0.23237328E+02 0.24296052E+02 0.25320129E+02 0.26309864E+02 + 0.27265702E+02 0.28187969E+02 0.29077053E+02 0.29933333E+02 0.30757208E+02 + 0.31549086E+02 0.32309428E+02 0.33038718E+02 0.33737446E+02 0.34406120E+02 + 0.35045308E+02 0.35655564E+02 0.36237467E+02 0.36791622E+02 0.37318598E+02 + 0.37818981E+02 0.38293358E+02 0.38742314E+02 0.39166412E+02 0.39566213E+02 + 0.39942244E+02 0.40295029E+02 0.40625143E+02 0.40933105E+02 0.41219417E+02 + 0.41484586E+02 0.41729098E+02 0.41953436E+02 0.42158101E+02 0.42343588E+02 + 0.42510402E+02 0.42659059E+02 0.42790056E+02 0.42903895E+02 0.43001038E+02 + 0.43081956E+02 0.43147134E+02 0.43197074E+02 0.43232279E+02 0.43253264E+02 + 0.43260517E+02 0.43254539E+02 0.43235822E+02 0.43204840E+02 0.43162094E+02 + 0.43108057E+02 0.43043205E+02 0.42968045E+02 0.42883045E+02 0.42788656E+02 + 0.42685313E+02 0.42573439E+02 0.42453478E+02 0.42325858E+02 0.42191030E+02 + 0.42049425E+02 0.41901439E+02 0.41747421E+02 0.41587670E+02 0.41422480E+02 + 0.41252208E+02 0.41077204E+02 0.40897788E+02 0.40714265E+02 0.40526889E+02 + 0.40335933E+02 0.40141625E+02 0.39944187E+02 0.39743861E+02 0.39540852E+02 + 0.39335356E+02 0.39127560E+02 0.38917657E+02 0.38705834E+02 0.38492210E+02 + 0.38276884E+02 0.38059974E+02 0.37841607E+02 0.37621897E+02 0.37400971E+02 + 0.37178960E+02 0.36955994E+02 0.36732173E+02 0.36507565E+02 0.36282249E+02 + 0.36056283E+02 0.35829731E+02 0.35602661E+02 0.35375129E+02 0.35147221E+02 + 0.34919017E+02 0.34690586E+02 0.34461978E+02 0.34233223E+02 0.34004364E+02 + 0.33775420E+02 0.33546445E+02 0.33317499E+02 0.33088639E+02 0.32859948E+02 + 0.32631472E+02 0.32403258E+02 0.32175340E+02 0.31947739E+02 0.31720479E+02 + 0.31493578E+02 0.31267048E+02 0.31040916E+02 0.30815224E+02 + 0.10000000E+01 0.28833382E+01 0.46400093E+01 0.62883802E+01 0.78569637E+01 + 0.93628490E+01 0.10821854E+02 0.12246181E+02 0.13640988E+02 0.15005812E+02 + 0.16339730E+02 0.17640910E+02 0.18908619E+02 0.20142575E+02 0.21343216E+02 + 0.22510652E+02 0.23645235E+02 0.24747092E+02 0.25816547E+02 0.26853889E+02 + 0.27859554E+02 0.28833844E+02 0.29777140E+02 0.30689797E+02 0.31572200E+02 + 0.32424710E+02 0.33247750E+02 0.34041753E+02 0.34807169E+02 0.35544463E+02 + 0.36254162E+02 0.36936773E+02 0.37592807E+02 0.38222799E+02 0.38827252E+02 + 0.39406670E+02 0.39961587E+02 0.40492517E+02 0.40999960E+02 0.41484402E+02 + 0.41946298E+02 0.42386094E+02 0.42804280E+02 0.43201328E+02 0.43577659E+02 + 0.43933689E+02 0.44269838E+02 0.44586513E+02 0.44884135E+02 0.45163128E+02 + 0.45423899E+02 0.45666902E+02 0.45892542E+02 0.46101222E+02 0.46293352E+02 + 0.46469342E+02 0.46629593E+02 0.46774530E+02 0.46904577E+02 0.47020154E+02 + 0.47121677E+02 0.47209557E+02 0.47284214E+02 0.47346071E+02 0.47395536E+02 + 0.47433009E+02 0.47458901E+02 0.47473619E+02 0.47477580E+02 0.47471167E+02 + 0.47454769E+02 0.47428770E+02 0.47393552E+02 0.47349505E+02 0.47297011E+02 + 0.47236465E+02 0.47168226E+02 0.47092606E+02 0.47009892E+02 0.46920386E+02 + 0.46824416E+02 0.46722296E+02 0.46614316E+02 0.46500766E+02 0.46381895E+02 + 0.46257977E+02 0.46129246E+02 0.45995940E+02 0.45858312E+02 0.45716556E+02 + 0.45570866E+02 0.45421454E+02 0.45268519E+02 0.45112269E+02 0.44952867E+02 + 0.44790424E+02 0.44625080E+02 0.44456952E+02 0.44286178E+02 0.44112916E+02 + 0.43937327E+02 0.43759552E+02 0.43579716E+02 0.43397893E+02 0.43214178E+02 + 0.43028638E+02 0.42841381E+02 0.42652497E+02 0.42462065E+02 0.42270191E+02 + 0.42076950E+02 0.41882415E+02 0.41686679E+02 0.41489810E+02 0.41291856E+02 + 0.41092877E+02 0.40892937E+02 0.40692088E+02 0.40490426E+02 0.40288032E+02 + 0.40084973E+02 0.39881329E+02 0.39677135E+02 0.39472418E+02 0.39267196E+02 + 0.39061497E+02 0.38855354E+02 0.38648817E+02 0.38441949E+02 + 0.10000000E+01 0.28872312E+01 0.46530810E+01 0.63148200E+01 0.79001797E+01 + 0.94256562E+01 0.10906422E+02 0.12354121E+02 0.13773713E+02 0.15164742E+02 + 0.16526315E+02 0.17856646E+02 0.19155060E+02 0.20421294E+02 0.21655784E+02 + 0.22858637E+02 0.24030176E+02 0.25170511E+02 0.26279922E+02 0.27358657E+02 + 0.28407117E+02 0.29425561E+02 0.30414336E+02 0.31373763E+02 0.32304192E+02 + 0.33205961E+02 0.34079452E+02 0.34925066E+02 0.35743216E+02 0.36534312E+02 + 0.37298823E+02 0.38037220E+02 0.38749977E+02 0.39437574E+02 0.40100470E+02 + 0.40739125E+02 0.41354002E+02 0.41945577E+02 0.42514295E+02 0.43060586E+02 + 0.43584883E+02 0.44087593E+02 0.44569158E+02 0.45029997E+02 0.45470520E+02 + 0.45891100E+02 0.46292133E+02 0.46673986E+02 0.47037036E+02 0.47381690E+02 + 0.47708303E+02 0.48017280E+02 0.48309010E+02 0.48583845E+02 0.48842155E+02 + 0.49084305E+02 0.49310652E+02 0.49521589E+02 0.49717495E+02 0.49898753E+02 + 0.50065753E+02 0.50218881E+02 0.50358520E+02 0.50485042E+02 0.50598831E+02 + 0.50700254E+02 0.50789678E+02 0.50867495E+02 0.50934085E+02 0.50989799E+02 + 0.51034987E+02 0.51069980E+02 0.51095131E+02 0.51110798E+02 0.51117347E+02 + 0.51115140E+02 0.51104533E+02 0.51085809E+02 0.51059221E+02 0.51025057E+02 + 0.50983636E+02 0.50935263E+02 0.50880239E+02 0.50818833E+02 0.50751298E+02 + 0.50677868E+02 0.50598764E+02 0.50514212E+02 0.50424438E+02 0.50329652E+02 + 0.50230055E+02 0.50125860E+02 0.50017273E+02 0.49904481E+02 0.49787641E+02 + 0.49666889E+02 0.49542369E+02 0.49414238E+02 0.49282627E+02 0.49147697E+02 + 0.49009611E+02 0.48868523E+02 0.48724560E+02 0.48577811E+02 0.48428354E+02 + 0.48276271E+02 0.48121654E+02 0.47964606E+02 0.47805248E+02 0.47643705E+02 + 0.47480065E+02 0.47314416E+02 0.47146831E+02 0.46977381E+02 0.46806163E+02 + 0.46633252E+02 0.46458720E+02 0.46282654E+02 0.46105132E+02 0.45926198E+02 + 0.45745933E+02 0.45564411E+02 0.45381683E+02 0.45197813E+02 0.45012850E+02 + 0.44826843E+02 0.44639812E+02 0.44451815E+02 0.44262932E+02 + 0.10000000E+01 0.28893411E+01 0.46605399E+01 0.63302620E+01 0.79259455E+01 + 0.94638160E+01 0.10958615E+02 0.12421458E+02 0.13857095E+02 0.15265037E+02 + 0.16644446E+02 0.17993633E+02 0.19312058E+02 0.20599559E+02 0.21856645E+02 + 0.23083485E+02 0.24280442E+02 0.25447642E+02 0.26585386E+02 0.27693921E+02 + 0.28773650E+02 0.29824831E+02 0.30847797E+02 0.31842851E+02 0.32810335E+02 + 0.33750568E+02 0.34663927E+02 0.35550800E+02 0.36411598E+02 0.37246704E+02 + 0.38056561E+02 0.38841608E+02 0.39602293E+02 0.40339093E+02 0.41052450E+02 + 0.41742798E+02 0.42410595E+02 0.43056255E+02 0.43680210E+02 0.44282858E+02 + 0.44864569E+02 0.45425744E+02 0.45966791E+02 0.46488089E+02 0.46990012E+02 + 0.47472898E+02 0.47937100E+02 0.48382951E+02 0.48810794E+02 0.49220971E+02 + 0.49613819E+02 0.49989708E+02 0.50348975E+02 0.50691963E+02 0.51019004E+02 + 0.51330425E+02 0.51626548E+02 0.51907706E+02 0.52174254E+02 0.52426522E+02 + 0.52664857E+02 0.52889592E+02 0.53101039E+02 0.53299545E+02 0.53485451E+02 + 0.53659070E+02 0.53820742E+02 0.53970827E+02 0.54109638E+02 0.54237476E+02 + 0.54354652E+02 0.54461463E+02 0.54558225E+02 0.54645266E+02 0.54722921E+02 + 0.54791498E+02 0.54851293E+02 0.54902562E+02 0.54945533E+02 0.54980467E+02 + 0.55007654E+02 0.55027361E+02 0.55039852E+02 0.55045377E+02 0.55044163E+02 + 0.55036441E+02 0.55022426E+02 0.55002334E+02 0.54976368E+02 0.54944714E+02 + 0.54907561E+02 0.54865086E+02 0.54817489E+02 0.54764931E+02 0.54707569E+02 + 0.54645521E+02 0.54578915E+02 0.54507912E+02 0.54432678E+02 0.54353353E+02 + 0.54270112E+02 0.54183093E+02 0.54092416E+02 0.53998182E+02 0.53900471E+02 + 0.53799392E+02 0.53695050E+02 0.53587548E+02 0.53476973E+02 0.53363445E+02 + 0.53247043E+02 0.53127862E+02 0.53006008E+02 0.52881565E+02 0.52754623E+02 + 0.52625252E+02 0.52493527E+02 0.52359526E+02 0.52223357E+02 0.52085121E+02 + 0.51944907E+02 0.51802789E+02 0.51658802E+02 0.51512982E+02 0.51365374E+02 + 0.51216036E+02 0.51065027E+02 0.50912406E+02 0.50758255E+02 + 0.10000000E+01 0.28948872E+01 0.46789584E+01 0.63673625E+01 0.79862671E+01 + 0.95509898E+01 0.11075427E+02 0.12570072E+02 0.14039469E+02 0.15483119E+02 + 0.16900177E+02 0.18288937E+02 0.19648842E+02 0.20979685E+02 0.22281915E+02 + 0.23555636E+02 0.24801138E+02 0.26018471E+02 0.27207849E+02 0.28369443E+02 + 0.29503585E+02 0.30610482E+02 0.31690425E+02 0.32743667E+02 0.33770486E+02 + 0.34771144E+02 0.35745959E+02 0.36695257E+02 0.37619386E+02 0.38518662E+02 + 0.39393467E+02 0.40244177E+02 0.41071198E+02 0.41874929E+02 0.42655758E+02 + 0.43414060E+02 0.44150211E+02 0.44864579E+02 0.45557540E+02 0.46229437E+02 + 0.46880619E+02 0.47511431E+02 0.48122248E+02 0.48713411E+02 0.49285231E+02 + 0.49838033E+02 0.50372127E+02 0.50887812E+02 0.51385430E+02 0.51865284E+02 + 0.52327665E+02 0.52772914E+02 0.53201326E+02 0.53613208E+02 0.54008867E+02 + 0.54388602E+02 0.54752712E+02 0.55101498E+02 0.55435289E+02 0.55754391E+02 + 0.56059113E+02 0.56349772E+02 0.56626676E+02 0.56890141E+02 0.57140486E+02 + 0.57378000E+02 0.57603007E+02 0.57815837E+02 0.58016792E+02 0.58206150E+02 + 0.58384201E+02 0.58551223E+02 0.58707515E+02 0.58853383E+02 0.58989130E+02 + 0.59115073E+02 0.59231484E+02 0.59338596E+02 0.59436648E+02 0.59525888E+02 + 0.59606594E+02 0.59679047E+02 0.59743520E+02 0.59800239E+02 0.59849413E+02 + 0.59891266E+02 0.59925999E+02 0.59953812E+02 0.59974926E+02 0.59989523E+02 + 0.59997795E+02 0.59999940E+02 0.59996138E+02 0.59986566E+02 0.59971385E+02 + 0.59950712E+02 0.59924693E+02 0.59893485E+02 0.59857227E+02 0.59816088E+02 + 0.59770247E+02 0.59719870E+02 0.59665062E+02 0.59605916E+02 0.59542534E+02 + 0.59475003E+02 0.59403440E+02 0.59327950E+02 0.59248669E+02 0.59165727E+02 + 0.59079218E+02 0.58989237E+02 0.58895883E+02 0.58799250E+02 0.58699452E+02 + 0.58596577E+02 0.58490700E+02 0.58381918E+02 0.58270323E+02 0.58155995E+02 + 0.58039030E+02 0.57919519E+02 0.57797517E+02 0.57673086E+02 0.57546278E+02 + 0.57417146E+02 0.57285763E+02 0.57152210E+02 0.57016569E+02 + 0.10000000E+01 0.28953116E+01 0.46808599E+01 0.63715112E+01 0.79938152E+01 + 0.95631541E+01 0.11093304E+02 0.12594263E+02 0.14070513E+02 0.15521551E+02 + 0.16946674E+02 0.18344343E+02 0.19714208E+02 0.21056212E+02 0.22370925E+02 + 0.23658565E+02 0.24919527E+02 0.26153931E+02 0.27362042E+02 0.28544074E+02 + 0.29700363E+02 0.30831117E+02 0.31936620E+02 0.33017110E+02 0.34072856E+02 + 0.35104098E+02 0.36111152E+02 0.37094326E+02 0.38053958E+02 0.38990350E+02 + 0.39903865E+02 0.40794855E+02 0.41663673E+02 0.42510697E+02 0.43336277E+02 + 0.44140742E+02 0.44924456E+02 0.45687740E+02 0.46430941E+02 0.47154344E+02 + 0.47858259E+02 0.48542972E+02 0.49208803E+02 0.49856053E+02 0.50485009E+02 + 0.51095952E+02 0.51689161E+02 0.52264885E+02 0.52823404E+02 0.53364988E+02 + 0.53889885E+02 0.54398376E+02 0.54890727E+02 0.55367191E+02 0.55828033E+02 + 0.56273510E+02 0.56703870E+02 0.57119373E+02 0.57520293E+02 0.57906895E+02 + 0.58279444E+02 0.58638203E+02 0.58983436E+02 0.59315403E+02 0.59634387E+02 + 0.59940645E+02 0.60234446E+02 0.60516069E+02 0.60785782E+02 0.61043833E+02 + 0.61290473E+02 0.61525950E+02 0.61750531E+02 0.61964481E+02 0.62168073E+02 + 0.62361585E+02 0.62545256E+02 0.62719289E+02 0.62883894E+02 0.63039296E+02 + 0.63185755E+02 0.63323507E+02 0.63452814E+02 0.63573884E+02 0.63686910E+02 + 0.63792120E+02 0.63889689E+02 0.63979814E+02 0.64062699E+02 0.64138512E+02 + 0.64207444E+02 0.64269665E+02 0.64325364E+02 0.64374713E+02 0.64417828E+02 + 0.64454865E+02 0.64485964E+02 0.64511273E+02 0.64530937E+02 0.64545110E+02 + 0.64553969E+02 0.64557654E+02 0.64556299E+02 0.64550020E+02 0.64538924E+02 + 0.64523106E+02 0.64502667E+02 0.64477715E+02 0.64448356E+02 0.64414729E+02 + 0.64376938E+02 0.64335091E+02 0.64289292E+02 0.64239647E+02 0.64186254E+02 + 0.64129183E+02 0.64068548E+02 0.64004437E+02 0.63936968E+02 0.63866228E+02 + 0.63792298E+02 0.63715267E+02 0.63635205E+02 0.63552158E+02 0.63466212E+02 + 0.63377446E+02 0.63285897E+02 0.63191657E+02 0.63094788E+02 + 0.10000000E+01 0.28941685E+01 0.46775406E+01 0.63652269E+01 0.79843022E+01 + 0.95503941E+01 0.11077400E+02 0.12575133E+02 0.14048033E+02 0.15495564E+02 + 0.16917103E+02 0.18311199E+02 0.19677645E+02 0.21016500E+02 0.22328435E+02 + 0.23613764E+02 0.24872960E+02 0.26106207E+02 0.27313824E+02 0.28496051E+02 + 0.29653276E+02 0.30785719E+02 0.31893684E+02 0.32977438E+02 0.34037252E+02 + 0.35073384E+02 0.36086163E+02 0.37075903E+02 0.38042950E+02 0.38987643E+02 + 0.39910355E+02 0.40811443E+02 0.41691277E+02 0.42550227E+02 0.43388657E+02 + 0.44206886E+02 0.45005270E+02 0.45784153E+02 0.46543872E+02 0.47284708E+02 + 0.48006972E+02 0.48710941E+02 0.49396924E+02 0.50065209E+02 0.50716089E+02 + 0.51349817E+02 0.51966661E+02 0.52566866E+02 0.53150681E+02 0.53718367E+02 + 0.54270148E+02 0.54806281E+02 0.55327030E+02 0.55832622E+02 0.56323301E+02 + 0.56799324E+02 0.57260918E+02 0.57708319E+02 0.58141794E+02 0.58561584E+02 + 0.58967934E+02 0.59361080E+02 0.59741257E+02 0.60108702E+02 0.60463678E+02 + 0.60806400E+02 0.61137128E+02 0.61456113E+02 0.61763604E+02 0.62059815E+02 + 0.62344974E+02 0.62619295E+02 0.62883013E+02 0.63136393E+02 0.63379687E+02 + 0.63613140E+02 0.63836977E+02 0.64051394E+02 0.64256569E+02 0.64452698E+02 + 0.64640023E+02 0.64818759E+02 0.64989127E+02 0.65151342E+02 0.65305569E+02 + 0.65451995E+02 0.65590802E+02 0.65722158E+02 0.65846240E+02 0.65963210E+02 + 0.66073259E+02 0.66176548E+02 0.66273247E+02 0.66363512E+02 0.66447463E+02 + 0.66525217E+02 0.66596912E+02 0.66662688E+02 0.66722677E+02 0.66777030E+02 + 0.66825908E+02 0.66869439E+02 0.66907756E+02 0.66940941E+02 0.66969087E+02 + 0.66992302E+02 0.67010673E+02 0.67024317E+02 0.67033354E+02 0.67037900E+02 + 0.67038071E+02 0.67033957E+02 0.67025660E+02 0.67013279E+02 0.66996900E+02 + 0.66976616E+02 0.66952525E+02 0.66924698E+02 0.66893251E+02 0.66858267E+02 + 0.66819823E+02 0.66778019E+02 0.66732902E+02 0.66684544E+02 0.66633019E+02 + 0.66578391E+02 0.66520724E+02 0.66460090E+02 0.66396568E+02 + 0.10000000E+01 0.28988128E+01 0.46930981E+01 0.63967055E+01 0.80356613E+01 + 0.96248076E+01 0.11177346E+02 0.12702503E+02 0.14204534E+02 0.15682854E+02 + 0.17136853E+02 0.18565059E+02 0.19967263E+02 0.21343480E+02 0.22694343E+02 + 0.24020111E+02 0.25321205E+02 0.26597761E+02 0.27850031E+02 0.29078209E+02 + 0.30282611E+02 0.31463423E+02 0.32620904E+02 0.33755282E+02 0.34866786E+02 + 0.35955642E+02 0.37022122E+02 0.38066502E+02 0.39089074E+02 0.40090116E+02 + 0.41069941E+02 0.42028868E+02 0.42967236E+02 0.43885353E+02 0.44783531E+02 + 0.45662043E+02 0.46521204E+02 0.47361289E+02 0.48182603E+02 0.48985394E+02 + 0.49769942E+02 0.50536491E+02 0.51285313E+02 0.52016667E+02 0.52730815E+02 + 0.53427989E+02 0.54108443E+02 0.54772380E+02 0.55420031E+02 0.56051615E+02 + 0.56667345E+02 0.57267454E+02 0.57852162E+02 0.58421698E+02 0.58976279E+02 + 0.59516124E+02 0.60041441E+02 0.60552436E+02 0.61049362E+02 0.61532432E+02 + 0.62001888E+02 0.62457954E+02 0.62900836E+02 0.63330765E+02 0.63747967E+02 + 0.64152653E+02 0.64545073E+02 0.64925450E+02 0.65294012E+02 0.65650976E+02 + 0.65996540E+02 0.66330916E+02 0.66654338E+02 0.66967019E+02 0.67269200E+02 + 0.67561112E+02 0.67842969E+02 0.68114943E+02 0.68377213E+02 0.68629983E+02 + 0.68873462E+02 0.69107857E+02 0.69333389E+02 0.69550246E+02 0.69758624E+02 + 0.69958691E+02 0.70150611E+02 0.70334570E+02 0.70510741E+02 0.70679258E+02 + 0.70840308E+02 0.70994037E+02 0.71140625E+02 0.71280212E+02 0.71412920E+02 + 0.71538870E+02 0.71658180E+02 0.71770995E+02 0.71877438E+02 0.71977663E+02 + 0.72071826E+02 0.72160062E+02 0.72242494E+02 0.72319235E+02 0.72390382E+02 + 0.72456018E+02 0.72516260E+02 0.72571203E+02 0.72620969E+02 0.72665689E+02 + 0.72705476E+02 0.72740414E+02 0.72770624E+02 0.72796184E+02 0.72817185E+02 + 0.72833717E+02 0.72845870E+02 0.72853757E+02 0.72857470E+02 0.72857102E+02 + 0.72852762E+02 0.72844527E+02 0.72832443E+02 0.72816579E+02 0.72796996E+02 + 0.72773796E+02 0.72747065E+02 0.72716857E+02 0.72683268E+02 + 0.10000000E+01 0.28937110E+01 0.46770147E+01 0.63650355E+01 0.79853944E+01 + 0.95537658E+01 0.11084126E+02 0.12585705E+02 0.14062875E+02 0.15514936E+02 + 0.16941430E+02 0.18340996E+02 0.19713672E+02 0.21059636E+02 0.22379709E+02 + 0.23674323E+02 0.24944050E+02 0.26189179E+02 0.27410080E+02 0.28607057E+02 + 0.29780512E+02 0.30930694E+02 0.32057906E+02 0.33162431E+02 0.34244554E+02 + 0.35304567E+02 0.36342804E+02 0.37359621E+02 0.38355382E+02 0.39330429E+02 + 0.40285154E+02 0.41219935E+02 0.42135149E+02 0.43031177E+02 0.43908362E+02 + 0.44767060E+02 0.45607603E+02 0.46430308E+02 0.47235529E+02 0.48023515E+02 + 0.48794574E+02 0.49548956E+02 0.50286978E+02 0.51008898E+02 0.51714997E+02 + 0.52405523E+02 0.53080724E+02 0.53740827E+02 0.54386053E+02 0.55016635E+02 + 0.55632781E+02 0.56234731E+02 0.56822712E+02 0.57396915E+02 0.57957569E+02 + 0.58504885E+02 0.59039074E+02 0.59560344E+02 0.60068925E+02 0.60565028E+02 + 0.61048869E+02 0.61520640E+02 0.61980551E+02 0.62428790E+02 0.62865601E+02 + 0.63291153E+02 0.63705694E+02 0.64109413E+02 0.64502528E+02 0.64885205E+02 + 0.65257632E+02 0.65619998E+02 0.65972501E+02 0.66315346E+02 0.66648743E+02 + 0.66972903E+02 0.67288024E+02 0.67594253E+02 0.67891740E+02 0.68180656E+02 + 0.68461183E+02 0.68733509E+02 0.68997809E+02 0.69254245E+02 0.69502990E+02 + 0.69744159E+02 0.69977912E+02 0.70204401E+02 0.70423761E+02 0.70636118E+02 + 0.70841633E+02 0.71040439E+02 0.71232677E+02 0.71418460E+02 0.71597900E+02 + 0.71771094E+02 0.71938146E+02 0.72099178E+02 0.72254304E+02 0.72403647E+02 + 0.72547317E+02 0.72685433E+02 0.72818107E+02 0.72945420E+02 0.73067459E+02 + 0.73184296E+02 0.73296031E+02 0.73402735E+02 0.73504514E+02 0.73601460E+02 + 0.73693673E+02 0.73781231E+02 0.73864230E+02 0.73942741E+02 0.74016857E+02 + 0.74086663E+02 0.74152251E+02 0.74213698E+02 0.74271094E+02 0.74324512E+02 + 0.74374021E+02 0.74419699E+02 0.74461605E+02 0.74499780E+02 0.74534306E+02 + 0.74565248E+02 0.74592653E+02 0.74616569E+02 0.74637089E+02 + 128 + 0.10000000E+01 0.26294854E+01 0.36789269E+01 0.41498038E+01 0.42059445E+01 + 0.39786419E+01 0.35897187E+01 0.31218407E+01 0.26387132E+01 0.21708633E+01 + 0.17411900E+01 0.13598197E+01 0.10345456E+01 0.76575943E+00 0.55066056E+00 + 0.38300117E+00 0.25834220E+00 0.16931561E+00 0.10892302E+00 0.69448266E-01 + 0.44754159E-01 0.29567508E-01 0.20874445E-01 0.16073168E-01 0.13183308E-01 + 0.11026224E-01 0.90718740E-02 0.70927399E-02 0.51227396E-02 0.32421531E-02 + 0.16265771E-02 0.42262466E-03 -0.39665765E-03 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26787243E+01 0.38776193E+01 0.46251548E+01 0.50240967E+01 + 0.51579668E+01 0.50979698E+01 0.48939296E+01 0.45885290E+01 0.42075187E+01 + 0.37765199E+01 0.33191059E+01 0.28595455E+01 0.24169914E+01 0.20051628E+01 + 0.16330709E+01 0.13086156E+01 0.10341356E+01 0.80940891E+00 0.62973918E+00 + 0.49011007E+00 0.38237807E+00 0.29987702E+00 0.23568762E+00 0.18485548E+00 + 0.14401273E+00 0.11103395E+00 0.84500283E-01 0.63259960E-01 0.46356873E-01 + 0.33204151E-01 0.23283155E-01 0.15922206E-01 0.10694219E-01 0.73119018E-02 + 0.52031107E-02 0.38605600E-02 0.30391614E-02 0.25243444E-02 0.20461744E-02 + 0.15019069E-02 0.91159728E-03 0.35125578E-03 -0.83026398E-04 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26915097E+01 0.39450096E+01 0.48142968E+01 0.53906911E+01 + 0.57433372E+01 0.59207941E+01 0.59541146E+01 0.58680393E+01 0.56766246E+01 + 0.53967829E+01 0.50473093E+01 0.46504162E+01 0.42271441E+01 0.37954418E+01 + 0.33705297E+01 0.29665967E+01 0.25933612E+01 0.22576616E+01 0.19612120E+01 + 0.17040278E+01 0.14813786E+01 0.12887025E+01 0.11203669E+01 0.97234030E+00 + 0.84169049E+00 0.72644909E+00 0.62513893E+00 0.53641368E+00 0.45897334E+00 + 0.39184185E+00 0.33403547E+00 0.28441125E+00 0.24201402E+00 0.20603361E+00 + 0.17548145E+00 0.14943633E+00 0.12723520E+00 0.10823328E+00 0.91793297E-01 + 0.77494660E-01 0.65135780E-01 0.54566839E-01 0.45628950E-01 0.38114097E-01 + 0.31816129E-01 0.26570577E-01 0.22232688E-01 0.18680964E-01 0.15793348E-01 + 0.13462621E-01 0.11594123E-01 0.10093435E-01 0.88573569E-02 0.77794763E-02 + 0.67894709E-02 0.58638433E-02 0.50085029E-02 0.42178031E-02 0.34890285E-02 + 0.28194357E-02 0.22435490E-02 0.17757244E-02 0.14138943E-02 0.11344201E-02 + 0.91599455E-03 0.75603178E-03 0.63517234E-03 0.55170774E-03 0.49491688E-03 + 0.45199720E-03 0.40681835E-03 0.35546917E-03 0.30232829E-03 0.24745743E-03 + 0.19900295E-03 0.14362037E-03 0.90466552E-04 0.66773701E-04 0.72206238E-04 + 0.97670151E-04 0.10999601E-03 0.98997397E-04 0.88198805E-04 0.10600369E-03 + 0.14368777E-03 0.16627821E-03 0.15629009E-03 0.12452799E-03 0.11962995E-03 + 0.13912283E-03 0.14032533E-03 0.11862612E-03 0.67209015E-04 0.18259696E-04 + -0.13148294E-04 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27113413E+01 0.40231377E+01 0.49956439E+01 0.57150294E+01 + 0.62435124E+01 0.66210110E+01 0.68716753E+01 0.70103624E+01 0.70441078E+01 + 0.69830466E+01 0.68388897E+01 0.66267440E+01 0.63616386E+01 0.60576174E+01 + 0.57277648E+01 0.53851099E+01 0.50401465E+01 0.47016827E+01 0.43749984E+01 + 0.40638786E+01 0.37683125E+01 0.34879661E+01 0.32213064E+01 0.29676878E+01 + 0.27268305E+01 0.24988942E+01 0.22841110E+01 0.20826281E+01 0.18943845E+01 + 0.17193634E+01 0.15573425E+01 0.14078223E+01 0.12703739E+01 0.11444804E+01 + 0.10294669E+01 0.92455245E+00 0.82908535E+00 0.74237166E+00 0.66367293E+00 + 0.59236852E+00 0.52795519E+00 0.46995263E+00 0.41790549E+00 0.37131271E+00 + 0.32965281E+00 0.29242865E+00 0.25914847E+00 0.22940750E+00 0.20286515E+00 + 0.17915457E+00 0.15798467E+00 0.13905049E+00 0.12212929E+00 0.10700842E+00 + 0.93493058E-01 0.81423416E-01 0.70676192E-01 0.61148307E-01 0.52734046E-01 + 0.45343039E-01 0.38876269E-01 0.33245013E-01 0.28373315E-01 0.24156277E-01 + 0.20483730E-01 0.17260251E-01 0.14447222E-01 0.12029744E-01 0.99728416E-02 + 0.82277381E-02 0.67678444E-02 0.55594950E-02 0.45904761E-02 0.38333997E-02 + 0.32154289E-02 0.26948310E-02 0.22604689E-02 0.18972433E-02 0.16029984E-02 + 0.13723564E-02 0.11832794E-02 0.10444582E-02 0.98191042E-03 0.97681485E-03 + 0.98441052E-03 0.98166732E-03 0.97322813E-03 0.97023074E-03 0.97299542E-03 + 0.95739325E-03 0.90268628E-03 0.80436203E-03 0.68465752E-03 0.56250297E-03 + 0.43680018E-03 0.30451851E-03 0.18376974E-03 0.10229698E-03 0.58021009E-04 + 0.40195413E-04 0.36321275E-04 0.39381866E-04 0.39682215E-04 0.49450664E-04 + 0.51923670E-04 0.37041140E-04 0.14098424E-04 -0.16149664E-05 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27348830E+01 0.41086331E+01 0.51810548E+01 0.60295562E+01 + 0.67084908E+01 0.72522096E+01 0.76816827E+01 0.80067853E+01 0.82307969E+01 + 0.83597469E+01 0.84013776E+01 0.83665203E+01 0.82661062E+01 0.81107927E+01 + 0.79109619E+01 0.76773942E+01 0.74193914E+01 0.71453413E+01 0.68612449E+01 + 0.65720058E+01 0.62797247E+01 0.59861635E+01 0.56921223E+01 0.53989523E+01 + 0.51081508E+01 0.48215009E+01 0.45406712E+01 0.42671569E+01 0.40021179E+01 + 0.37466051E+01 0.35014204E+01 0.32670236E+01 0.30438206E+01 0.28319736E+01 + 0.26314808E+01 0.24421509E+01 0.22638229E+01 0.20961820E+01 0.19388409E+01 + 0.17914504E+01 0.16537146E+01 0.15253243E+01 0.14059376E+01 0.12951494E+01 + 0.11924937E+01 0.10974763E+01 0.10095880E+01 0.92831738E+00 0.85322780E+00 + 0.78377908E+00 0.71955777E+00 0.66014080E+00 0.60517667E+00 0.55432225E+00 + 0.50730860E+00 0.46387628E+00 0.42376104E+00 0.38670875E+00 0.35251904E+00 + 0.32101973E+00 0.29204151E+00 0.26539323E+00 0.24087535E+00 0.21830362E+00 + 0.19753055E+00 0.17846359E+00 0.16101865E+00 0.14510416E+00 0.13063105E+00 + 0.11750255E+00 0.10563361E+00 0.94964880E-01 0.85395928E-01 0.76815524E-01 + 0.69116461E-01 0.62203127E-01 0.55967957E-01 0.50339121E-01 0.45229605E-01 + 0.40591414E-01 0.36405255E-01 0.32661333E-01 0.29328605E-01 0.26348934E-01 + 0.23662146E-01 0.21219041E-01 0.19012810E-01 0.17041049E-01 0.15274514E-01 + 0.13694272E-01 0.12284228E-01 0.11011659E-01 0.98711019E-02 0.88461141E-02 + 0.79291264E-02 0.71063717E-02 0.63733530E-02 0.57290463E-02 0.51366912E-02 + 0.45936766E-02 0.41095837E-02 0.36760198E-02 0.33103413E-02 0.29889841E-02 + 0.27054565E-02 0.24496752E-02 0.22218127E-02 0.20244490E-02 0.18343401E-02 + 0.16458069E-02 0.14662382E-02 0.13073213E-02 0.11733001E-02 0.10623531E-02 + 0.96304606E-03 0.87587365E-03 0.80244325E-03 0.74376329E-03 0.69743871E-03 + 0.65538076E-03 0.62055650E-03 0.56851143E-03 0.50090239E-03 0.43155902E-03 + 0.37364899E-03 0.33621724E-03 0.30576599E-03 0.26963926E-03 + 0.10000000E+01 0.27552847E+01 0.41791464E+01 0.53271974E+01 0.62695062E+01 + 0.70547371E+01 0.77147600E+01 0.82704134E+01 0.87308213E+01 0.90980763E+01 + 0.93761756E+01 0.95705884E+01 0.96892641E+01 0.97401896E+01 0.97312876E+01 + 0.96704361E+01 0.95660433E+01 0.94255443E+01 0.92558908E+01 0.90624078E+01 + 0.88496994E+01 0.86203467E+01 0.83767097E+01 0.81204580E+01 0.78537226E+01 + 0.75787454E+01 0.72979888E+01 0.70138028E+01 0.67283769E+01 0.64436251E+01 + 0.61613735E+01 0.58831863E+01 0.56102754E+01 0.53437487E+01 0.50844271E+01 + 0.48329616E+01 0.45897598E+01 0.43551962E+01 0.41294377E+01 0.39125391E+01 + 0.37045472E+01 0.35054868E+01 0.33153304E+01 0.31340290E+01 0.29614380E+01 + 0.27973486E+01 0.26415175E+01 0.24936464E+01 0.23534077E+01 0.22205029E+01 + 0.20945129E+01 0.19751384E+01 0.18620395E+01 0.17549415E+01 0.16535588E+01 + 0.15576347E+01 0.14668753E+01 0.13809597E+01 0.12996088E+01 0.12226147E+01 + 0.11498227E+01 0.10810481E+01 0.10160468E+01 0.95457076E+00 0.89637168E+00 + 0.84125794E+00 0.78914141E+00 0.74000376E+00 0.69379233E+00 0.65040621E+00 + 0.60968466E+00 0.57143971E+00 0.53552373E+00 0.50183050E+00 0.47025155E+00 + 0.44065040E+00 0.41287819E+00 0.38676608E+00 0.36218040E+00 0.33904362E+00 + 0.31730220E+00 0.29693310E+00 0.27789029E+00 0.26010255E+00 0.24347950E+00 + 0.22790703E+00 0.21328940E+00 0.19954042E+00 0.18661069E+00 0.17448534E+00 + 0.16313268E+00 0.15251783E+00 0.14260367E+00 0.13332557E+00 0.12462642E+00 + 0.11645929E+00 0.10878880E+00 0.10158691E+00 0.94843791E-01 0.88529090E-01 + 0.82617999E-01 0.77089554E-01 0.71931847E-01 0.67135692E-01 0.62693684E-01 + 0.58562774E-01 0.54708574E-01 0.51104208E-01 0.47730020E-01 0.44572755E-01 + 0.41617220E-01 0.38845611E-01 0.36270531E-01 0.33916701E-01 0.31756617E-01 + 0.29772265E-01 0.27932991E-01 0.26227975E-01 0.24656692E-01 0.23186270E-01 + 0.21779482E-01 0.20413150E-01 0.19072881E-01 0.17775229E-01 0.16551245E-01 + 0.15415720E-01 0.14365961E-01 0.13358665E-01 0.12412260E-01 + 0.10000000E+01 0.27838920E+01 0.42777983E+01 0.55313250E+01 0.66040153E+01 + 0.75364042E+01 0.83565592E+01 0.90849773E+01 0.97300656E+01 0.10292614E+02 + 0.10774215E+02 0.11177675E+02 0.11507527E+02 0.11768267E+02 0.11964527E+02 + 0.12101155E+02 0.12183620E+02 0.12217007E+02 0.12206350E+02 0.12155898E+02 + 0.12069619E+02 0.11950391E+02 0.11801043E+02 0.11624033E+02 0.11422161E+02 + 0.11198304E+02 0.10955524E+02 0.10696779E+02 0.10424922E+02 0.10142602E+02 + 0.98523822E+01 0.95566155E+01 0.92573483E+01 0.89565083E+01 0.86556934E+01 + 0.83563659E+01 0.80597313E+01 0.77668814E+01 0.74786438E+01 0.71957024E+01 + 0.69186742E+01 0.66481158E+01 0.63844686E+01 0.61280877E+01 0.58792169E+01 + 0.56380194E+01 0.54046165E+01 0.51790774E+01 0.49613629E+01 0.47513993E+01 + 0.45489507E+01 0.43539276E+01 0.41661832E+01 0.39856012E+01 0.38120168E+01 + 0.36452567E+01 0.34850797E+01 0.33311972E+01 0.31833511E+01 0.30414011E+01 + 0.29052281E+01 0.27746695E+01 0.26494804E+01 0.25293680E+01 0.24140411E+01 + 0.23033064E+01 0.21971292E+01 0.20955144E+01 0.19984239E+01 0.19057110E+01 + 0.18171616E+01 0.17325685E+01 0.16517464E+01 0.15745610E+01 0.15009007E+01 + 0.14306032E+01 0.13634733E+01 0.12993224E+01 0.12379499E+01 0.11792058E+01 + 0.11229887E+01 0.10692688E+01 0.10180338E+01 0.96920551E+00 0.92269091E+00 + 0.87834901E+00 0.83602091E+00 0.79558794E+00 0.75699047E+00 0.72017376E+00 + 0.68509323E+00 0.65168421E+00 0.61986843E+00 0.58955127E+00 0.56064891E+00 + 0.53309715E+00 0.50683013E+00 0.48181760E+00 0.45799742E+00 0.43531049E+00 + 0.41370301E+00 0.39312606E+00 0.37355263E+00 0.35492928E+00 0.33720526E+00 + 0.32033474E+00 0.30429192E+00 0.28904829E+00 0.27457839E+00 0.26082146E+00 + 0.24772460E+00 0.23524603E+00 0.22334973E+00 0.21202483E+00 0.20123355E+00 + 0.19095428E+00 0.18117169E+00 0.17189898E+00 0.16312485E+00 0.15481046E+00 + 0.14690172E+00 0.13935316E+00 0.13216535E+00 0.12533668E+00 0.11886006E+00 + 0.11271094E+00 0.10685018E+00 0.10126477E+00 0.95969160E-01 + 0.10000000E+01 0.28071629E+01 0.43567378E+01 0.56921971E+01 0.68649861E+01 + 0.79095810E+01 0.88513922E+01 0.97110923E+01 0.10497772E+02 0.11212015E+02 + 0.11854196E+02 0.12425512E+02 0.12928307E+02 0.13364848E+02 0.13737643E+02 + 0.14049493E+02 0.14303775E+02 0.14503740E+02 0.14652792E+02 0.14754013E+02 + 0.14810459E+02 0.14824650E+02 0.14799163E+02 0.14736446E+02 0.14639215E+02 + 0.14510302E+02 0.14352702E+02 0.14169347E+02 0.13963143E+02 0.13736889E+02 + 0.13493343E+02 0.13235157E+02 0.12964741E+02 0.12684394E+02 0.12396132E+02 + 0.12101844E+02 0.11803212E+02 0.11501777E+02 0.11198857E+02 0.10895618E+02 + 0.10593119E+02 0.10292319E+02 0.99940577E+01 0.96991138E+01 0.94081346E+01 + 0.91216657E+01 0.88401895E+01 0.85641047E+01 0.82937170E+01 0.80292715E+01 + 0.77708282E+01 0.75185509E+01 0.72725105E+01 0.70328391E+01 0.67995907E+01 + 0.65728055E+01 0.63524071E+01 0.61382252E+01 0.59301270E+01 0.57280880E+01 + 0.55321336E+01 0.53421980E+01 0.51581166E+01 0.49796408E+01 0.48065178E+01 + 0.46385974E+01 0.44759096E+01 0.43185288E+01 0.41664627E+01 0.40196021E+01 + 0.38777464E+01 0.37406863E+01 0.36082331E+01 0.34802769E+01 0.33567275E+01 + 0.32374613E+01 0.31222987E+01 0.30110360E+01 0.29034670E+01 0.27994226E+01 + 0.26988026E+01 0.26015860E+01 0.25077694E+01 0.24172901E+01 0.23300349E+01 + 0.22458540E+01 0.21645820E+01 0.20860781E+01 0.20102749E+01 0.19371390E+01 + 0.18666259E+01 0.17986500E+01 0.17331010E+01 0.16698608E+01 0.16088255E+01 + 0.15499261E+01 0.14931077E+01 0.14383139E+01 0.13854771E+01 0.13345368E+01 + 0.12854553E+01 0.12381693E+01 0.11926243E+01 0.11487287E+01 0.11064033E+01 + 0.10655850E+01 0.10262257E+01 0.98831716E+00 0.95180717E+00 0.91665448E+00 + 0.88279896E+00 0.85017501E+00 0.81873817E+00 0.78843745E+00 0.75923580E+00 + 0.73109693E+00 0.70397651E+00 0.67786282E+00 0.65273189E+00 0.62852984E+00 + 0.60521478E+00 0.58273412E+00 0.56106858E+00 0.54021890E+00 0.52014563E+00 + 0.50082091E+00 0.48222224E+00 0.46432617E+00 0.44710111E+00 + 0.10000000E+01 0.28286028E+01 0.44289734E+01 0.58385164E+01 0.71015590E+01 + 0.82472843E+01 0.92985903E+01 0.10276119E+02 0.11189955E+02 0.12040839E+02 + 0.12828436E+02 0.13552802E+02 0.14214697E+02 0.14814776E+02 0.15354069E+02 + 0.15833938E+02 0.16256240E+02 0.16622829E+02 0.16935796E+02 0.17197164E+02 + 0.17409043E+02 0.17573359E+02 0.17692172E+02 0.17767561E+02 0.17801835E+02 + 0.17797437E+02 0.17756964E+02 0.17683020E+02 0.17578236E+02 0.17445224E+02 + 0.17286624E+02 0.17105033E+02 0.16902873E+02 0.16682511E+02 0.16446114E+02 + 0.16195758E+02 0.15933366E+02 0.15660770E+02 0.15379590E+02 0.15091328E+02 + 0.14797384E+02 0.14499059E+02 0.14197538E+02 0.13893914E+02 0.13589163E+02 + 0.13284181E+02 0.12979781E+02 0.12676699E+02 0.12375563E+02 0.12076952E+02 + 0.11781265E+02 0.11488971E+02 0.11200459E+02 0.10916095E+02 0.10636193E+02 + 0.10361021E+02 0.10090716E+02 0.98253081E+01 0.95648477E+01 0.93094831E+01 + 0.90593773E+01 0.88145918E+01 0.85751069E+01 0.83408238E+01 0.81116100E+01 + 0.78874474E+01 0.76684494E+01 0.74547838E+01 0.72465140E+01 0.70435721E+01 + 0.68458087E+01 0.66530465E+01 0.64651612E+01 0.62820706E+01 0.61037492E+01 + 0.59301211E+01 0.57610769E+01 0.55964776E+01 0.54361508E+01 0.52799398E+01 + 0.51277279E+01 0.49795091E+01 0.48353123E+01 0.46951134E+01 0.45588357E+01 + 0.44263225E+01 0.42973943E+01 0.41719085E+01 0.40497994E+01 0.39310556E+01 + 0.38156631E+01 0.37035492E+01 0.35946109E+01 0.34887284E+01 0.33858032E+01 + 0.32857608E+01 0.31885265E+01 0.30940296E+01 0.30021981E+01 0.29129913E+01 + 0.28263595E+01 0.27422607E+01 0.26606216E+01 0.25813378E+01 0.25043169E+01 + 0.24295030E+01 0.23568536E+01 0.22863338E+01 0.22179009E+01 0.21514992E+01 + 0.20870338E+01 0.20244452E+01 0.19636815E+01 0.19046850E+01 0.18474212E+01 + 0.17918424E+01 0.17379163E+01 0.16856043E+01 0.16348617E+01 0.15856468E+01 + 0.15378938E+01 0.14915399E+01 0.14465417E+01 0.14028892E+01 0.13605558E+01 + 0.13195103E+01 0.12797248E+01 0.12411399E+01 0.12037027E+01 + 0.10000000E+01 0.28465678E+01 0.44891291E+01 0.59595816E+01 0.72970545E+01 + 0.85267872E+01 0.96694182E+01 0.10744925E+02 0.11764196E+02 0.12728378E+02 + 0.13637037E+02 0.14489603E+02 0.15285972E+02 0.16025873E+02 0.16709630E+02 + 0.17337889E+02 0.17911743E+02 0.18432270E+02 0.18900773E+02 0.19318556E+02 + 0.19687039E+02 0.20007585E+02 0.20281682E+02 0.20510889E+02 0.20696934E+02 + 0.20841679E+02 0.20947116E+02 0.21015279E+02 0.21048244E+02 0.21048120E+02 + 0.21017080E+02 0.20957297E+02 0.20870855E+02 0.20759817E+02 0.20626127E+02 + 0.20471688E+02 0.20298338E+02 0.20107846E+02 0.19901855E+02 0.19681911E+02 + 0.19449499E+02 0.19206044E+02 0.18952859E+02 0.18691191E+02 0.18422197E+02 + 0.18146960E+02 0.17866503E+02 0.17581783E+02 0.17293679E+02 0.17002999E+02 + 0.16710409E+02 0.16416614E+02 0.16122271E+02 0.15828002E+02 0.15534378E+02 + 0.15241914E+02 0.14950984E+02 0.14661862E+02 0.14374812E+02 0.14090200E+02 + 0.13808372E+02 0.13529576E+02 0.13253978E+02 0.12981653E+02 0.12712660E+02 + 0.12447130E+02 0.12185319E+02 0.11927500E+02 0.11673833E+02 0.11424359E+02 + 0.11179041E+02 0.10937829E+02 0.10700700E+02 0.10467679E+02 0.10238813E+02 + 0.10014096E+02 0.97934956E+01 0.95769635E+01 0.93644109E+01 0.91557217E+01 + 0.89508431E+01 0.87498137E+01 0.85527052E+01 0.83595406E+01 0.81702696E+01 + 0.79847866E+01 0.78029449E+01 0.76246472E+01 0.74498659E+01 0.72786192E+01 + 0.71109003E+01 0.69466710E+01 0.67858780E+01 0.66284438E+01 0.64742934E+01 + 0.63233755E+01 0.61756265E+01 0.60309916E+01 0.58894384E+01 0.57509343E+01 + 0.56154710E+01 0.54829992E+01 0.53534441E+01 0.52267206E+01 0.51027532E+01 + 0.49815137E+01 0.48629711E+01 0.47471011E+01 0.46338561E+01 0.45231936E+01 + 0.44150349E+01 0.43093230E+01 0.42060121E+01 0.41050401E+01 0.40063829E+01 + 0.39099983E+01 0.38158650E+01 0.37239547E+01 0.36342257E+01 0.35466174E+01 + 0.34610598E+01 0.33774980E+01 0.32959016E+01 0.32162385E+01 0.31384639E+01 + 0.30625568E+01 0.29884780E+01 0.29161951E+01 0.28456699E+01 + 0.10000000E+01 0.28633982E+01 0.45456139E+01 0.60733515E+01 0.74810989E+01 + 0.87905164E+01 0.10020039E+02 0.11188582E+02 0.12307506E+02 0.13378271E+02 + 0.14400456E+02 0.15372986E+02 0.16295123E+02 0.17165848E+02 0.17984978E+02 + 0.18752618E+02 0.19469309E+02 0.20135523E+02 0.20751974E+02 0.21319401E+02 + 0.21838676E+02 0.22310722E+02 0.22736572E+02 0.23117334E+02 0.23454242E+02 + 0.23748639E+02 0.24001960E+02 0.24215714E+02 0.24391462E+02 0.24530815E+02 + 0.24635450E+02 0.24707100E+02 0.24747448E+02 0.24758204E+02 0.24741014E+02 + 0.24697538E+02 0.24629401E+02 0.24538201E+02 0.24425479E+02 0.24292715E+02 + 0.24141367E+02 0.23972846E+02 0.23788496E+02 0.23589599E+02 0.23377384E+02 + 0.23153042E+02 0.22917711E+02 0.22672492E+02 0.22418418E+02 0.22156470E+02 + 0.21887531E+02 0.21612491E+02 0.21332186E+02 0.21047424E+02 0.20758968E+02 + 0.20467526E+02 0.20173711E+02 0.19878024E+02 0.19580951E+02 0.19283033E+02 + 0.18984783E+02 0.18686655E+02 0.18389011E+02 0.18092161E+02 0.17796355E+02 + 0.17501881E+02 0.17209101E+02 0.16918382E+02 0.16630002E+02 0.16344115E+02 + 0.16060838E+02 0.15780245E+02 0.15502448E+02 0.15227580E+02 0.14955781E+02 + 0.14687158E+02 0.14421783E+02 0.14159719E+02 0.13900949E+02 0.13645423E+02 + 0.13393120E+02 0.13144113E+02 0.12898508E+02 0.12656386E+02 0.12417765E+02 + 0.12182601E+02 0.11950802E+02 0.11722306E+02 0.11497123E+02 0.11275296E+02 + 0.11056867E+02 0.10841846E+02 0.10630217E+02 0.10421935E+02 0.10216951E+02 + 0.10015211E+02 0.98166907E+01 0.96213652E+01 0.94292065E+01 0.92402278E+01 + 0.90544414E+01 0.88718313E+01 0.86923494E+01 0.85159502E+01 0.83425881E+01 + 0.81722382E+01 0.80048801E+01 0.78404906E+01 0.76790660E+01 0.75205781E+01 + 0.73649855E+01 0.72122402E+01 0.70622902E+01 0.69150841E+01 0.67705826E+01 + 0.66287834E+01 0.64896775E+01 0.63532538E+01 0.62194836E+01 0.60882950E+01 + 0.59596379E+01 0.58334718E+01 0.57097691E+01 0.55885217E+01 0.54696782E+01 + 0.53531960E+01 0.52390448E+01 0.51271807E+01 0.50175939E+01 + 0.10000000E+01 0.28734550E+01 0.45796346E+01 0.61418402E+01 0.75923882E+01 + 0.89511785E+01 0.10235359E+02 0.11462378E+02 0.12643429E+02 0.13780059E+02 + 0.14872167E+02 0.15918572E+02 0.16918603E+02 0.17871096E+02 0.18775919E+02 + 0.19633112E+02 0.20443208E+02 0.21206567E+02 0.21923790E+02 0.22595461E+02 + 0.23222253E+02 0.23804876E+02 0.24344128E+02 0.24840884E+02 0.25296091E+02 + 0.25710816E+02 0.26086172E+02 0.26423365E+02 0.26723614E+02 0.26988201E+02 + 0.27218445E+02 0.27415710E+02 0.27581334E+02 0.27716667E+02 0.27823016E+02 + 0.27901720E+02 0.27954097E+02 0.27981453E+02 0.27985055E+02 0.27966126E+02 + 0.27925897E+02 0.27865585E+02 0.27786355E+02 0.27689325E+02 0.27575584E+02 + 0.27446176E+02 0.27302118E+02 0.27144402E+02 0.26973988E+02 0.26791790E+02 + 0.26598659E+02 0.26395462E+02 0.26183004E+02 0.25962110E+02 0.25733560E+02 + 0.25498095E+02 0.25256385E+02 0.25009018E+02 0.24756555E+02 0.24499595E+02 + 0.24238731E+02 0.23974494E+02 0.23707341E+02 0.23437697E+02 0.23165942E+02 + 0.22892454E+02 0.22617691E+02 0.22342101E+02 0.22066045E+02 0.21789805E+02 + 0.21513612E+02 0.21237691E+02 0.20962280E+02 0.20687635E+02 0.20413997E+02 + 0.20141547E+02 0.19870449E+02 0.19600841E+02 0.19332809E+02 0.19066404E+02 + 0.18801707E+02 0.18538864E+02 0.18278033E+02 0.18019325E+02 0.17762820E+02 + 0.17508561E+02 0.17256534E+02 0.17006752E+02 0.16759277E+02 0.16514170E+02 + 0.16271495E+02 0.16031280E+02 0.15793537E+02 0.15558271E+02 0.15325475E+02 + 0.15095173E+02 0.14867354E+02 0.14642026E+02 0.14419206E+02 0.14198924E+02 + 0.13981220E+02 0.13766112E+02 0.13553597E+02 0.13343623E+02 0.13136162E+02 + 0.12931200E+02 0.12728738E+02 0.12528765E+02 0.12331313E+02 0.12136377E+02 + 0.11943957E+02 0.11754038E+02 0.11566587E+02 0.11381572E+02 0.11198997E+02 + 0.11018880E+02 0.10841237E+02 0.10666097E+02 0.10493425E+02 0.10323145E+02 + 0.10155206E+02 0.99895927E+01 0.98262856E+01 0.96653141E+01 0.95066840E+01 + 0.93503677E+01 0.91963409E+01 0.90445874E+01 0.88950892E+01 + 0.10000000E+01 0.28838080E+01 0.46148415E+01 0.62130462E+01 0.77083424E+01 + 0.91187219E+01 0.10460012E+02 0.11748248E+02 0.12994400E+02 0.14200023E+02 + 0.15365209E+02 0.16488587E+02 0.17569440E+02 0.18606356E+02 0.19599159E+02 + 0.20547730E+02 0.21452503E+02 0.22313659E+02 0.23131628E+02 0.23906798E+02 + 0.24639650E+02 0.25330702E+02 0.25980538E+02 0.26589854E+02 0.27159360E+02 + 0.27689893E+02 0.28182298E+02 0.28637525E+02 0.29056519E+02 0.29440286E+02 + 0.29789856E+02 0.30106325E+02 0.30390751E+02 0.30644221E+02 0.30867790E+02 + 0.31062532E+02 0.31229540E+02 0.31369883E+02 0.31484610E+02 0.31574757E+02 + 0.31641362E+02 0.31685465E+02 0.31708070E+02 0.31710151E+02 0.31692662E+02 + 0.31656540E+02 0.31602701E+02 0.31532041E+02 0.31445439E+02 0.31343739E+02 + 0.31227753E+02 0.31098300E+02 0.30956177E+02 0.30802176E+02 0.30637059E+02 + 0.30461578E+02 0.30276417E+02 0.30082201E+02 0.29879520E+02 0.29668999E+02 + 0.29451270E+02 0.29226914E+02 0.28996476E+02 0.28760459E+02 0.28519328E+02 + 0.28273562E+02 0.28023661E+02 0.27770122E+02 0.27513410E+02 0.27253909E+02 + 0.26991957E+02 0.26727877E+02 0.26461996E+02 0.26194651E+02 0.25926164E+02 + 0.25656826E+02 0.25386890E+02 0.25116584E+02 0.24846096E+02 0.24575565E+02 + 0.24305145E+02 0.24035067E+02 0.23765567E+02 0.23496821E+02 0.23228961E+02 + 0.22962080E+02 0.22696247E+02 0.22431542E+02 0.22168079E+02 0.21905988E+02 + 0.21645362E+02 0.21386268E+02 0.21128750E+02 0.20872845E+02 0.20618610E+02 + 0.20366089E+02 0.20115332E+02 0.19866349E+02 0.19619160E+02 0.19373827E+02 + 0.19130407E+02 0.18888971E+02 0.18649527E+02 0.18412061E+02 0.18176570E+02 + 0.17943051E+02 0.17711525E+02 0.17482022E+02 0.17254576E+02 0.17029210E+02 + 0.16805918E+02 0.16584682E+02 0.16365489E+02 0.16148328E+02 0.15933221E+02 + 0.15720199E+02 0.15509309E+02 0.15300557E+02 0.15093921E+02 0.14889393E+02 + 0.14686928E+02 0.14486549E+02 0.14288279E+02 0.14092120E+02 0.13898086E+02 + 0.13706145E+02 0.13516285E+02 0.13328528E+02 0.13142879E+02 + 0.10000000E+01 0.28891509E+01 0.46334298E+01 0.62509924E+01 0.77707802E+01 + 0.92100659E+01 0.10584010E+02 0.11907524E+02 0.13191099E+02 0.14436225E+02 + 0.15643182E+02 0.16810611E+02 0.17937957E+02 0.19023882E+02 0.20068365E+02 + 0.21071369E+02 0.22033444E+02 0.22954806E+02 0.23835924E+02 0.24677167E+02 + 0.25478981E+02 0.26241821E+02 0.26966195E+02 0.27652725E+02 0.28302023E+02 + 0.28914837E+02 0.29491891E+02 0.30034033E+02 0.30542071E+02 0.31016892E+02 + 0.31459378E+02 0.31870475E+02 0.32251091E+02 0.32602146E+02 0.32924529E+02 + 0.33219144E+02 0.33486904E+02 0.33728716E+02 0.33945459E+02 0.34138003E+02 + 0.34307228E+02 0.34453998E+02 0.34579154E+02 0.34683497E+02 0.34767819E+02 + 0.34832905E+02 0.34879532E+02 0.34908468E+02 0.34920455E+02 0.34916214E+02 + 0.34896444E+02 0.34861856E+02 0.34813131E+02 0.34750959E+02 0.34676001E+02 + 0.34588903E+02 0.34490273E+02 0.34380652E+02 0.34260579E+02 0.34130615E+02 + 0.33991324E+02 0.33843245E+02 0.33686881E+02 0.33522722E+02 0.33351225E+02 + 0.33172844E+02 0.32988065E+02 0.32797376E+02 0.32601232E+02 0.32400018E+02 + 0.32194096E+02 0.31983827E+02 0.31769557E+02 0.31551644E+02 0.31330443E+02 + 0.31106254E+02 0.30879379E+02 0.30650104E+02 0.30418662E+02 0.30185243E+02 + 0.29950063E+02 0.29713389E+02 0.29475475E+02 0.29236554E+02 0.28996807E+02 + 0.28756382E+02 0.28515402E+02 0.28273985E+02 0.28032273E+02 0.27790430E+02 + 0.27548591E+02 0.27306874E+02 0.27065392E+02 0.26824231E+02 0.26583471E+02 + 0.26343199E+02 0.26103496E+02 0.25864412E+02 0.25626000E+02 0.25388348E+02 + 0.25151550E+02 0.24915660E+02 0.24680706E+02 0.24446710E+02 0.24213691E+02 + 0.23981678E+02 0.23750710E+02 0.23520852E+02 0.23292151E+02 0.23064655E+02 + 0.22838392E+02 0.22613378E+02 0.22389628E+02 0.22167145E+02 0.21945965E+02 + 0.21726121E+02 0.21507643E+02 0.21290584E+02 0.21074949E+02 0.20860710E+02 + 0.20647867E+02 0.20436429E+02 0.20226409E+02 0.20017854E+02 0.19810773E+02 + 0.19605162E+02 0.19401059E+02 0.19198475E+02 0.18997405E+02 + 0.10000000E+01 0.28959411E+01 0.46569002E+01 0.62989376E+01 0.78494571E+01 + 0.93245844E+01 0.10738584E+02 0.12105254E+02 0.13434656E+02 0.14728213E+02 + 0.15986300E+02 0.17207472E+02 0.18391201E+02 0.19536087E+02 0.20642131E+02 + 0.21709266E+02 0.22738041E+02 0.23728625E+02 0.24681439E+02 0.25596784E+02 + 0.26475019E+02 0.27316508E+02 0.28121646E+02 0.28890959E+02 0.29624948E+02 + 0.30324254E+02 0.30989469E+02 0.31621323E+02 0.32220480E+02 0.32787681E+02 + 0.33323640E+02 0.33829158E+02 0.34304981E+02 0.34751887E+02 0.35170612E+02 + 0.35561908E+02 0.35926541E+02 0.36265257E+02 0.36578799E+02 0.36867895E+02 + 0.37133284E+02 0.37375700E+02 0.37595865E+02 0.37794459E+02 0.37972174E+02 + 0.38129684E+02 0.38267666E+02 0.38386781E+02 0.38487674E+02 0.38570971E+02 + 0.38637285E+02 0.38687247E+02 0.38721480E+02 0.38740593E+02 0.38745187E+02 + 0.38735853E+02 0.38713145E+02 0.38677581E+02 0.38629664E+02 0.38569928E+02 + 0.38498908E+02 0.38417105E+02 0.38325015E+02 0.38223116E+02 0.38111862E+02 + 0.37991711E+02 0.37863134E+02 0.37726616E+02 0.37582613E+02 0.37431522E+02 + 0.37273725E+02 0.37109606E+02 0.36939545E+02 0.36763926E+02 0.36583129E+02 + 0.36397512E+02 0.36207410E+02 0.36013142E+02 0.35814987E+02 0.35613178E+02 + 0.35407981E+02 0.35199694E+02 0.34988603E+02 0.34774974E+02 0.34559026E+02 + 0.34340954E+02 0.34120928E+02 0.33899110E+02 0.33675674E+02 0.33450808E+02 + 0.33224689E+02 0.32997481E+02 0.32769333E+02 0.32540368E+02 0.32310690E+02 + 0.32080434E+02 0.31849712E+02 0.31618604E+02 0.31387192E+02 0.31155591E+02 + 0.30923909E+02 0.30692214E+02 0.30460572E+02 0.30229036E+02 0.29997644E+02 + 0.29766442E+02 0.29535489E+02 0.29304840E+02 0.29074559E+02 0.28844710E+02 + 0.28615349E+02 0.28386531E+02 0.28158295E+02 0.27930662E+02 0.27703662E+02 + 0.27477334E+02 0.27251740E+02 0.27026919E+02 0.26802900E+02 0.26579716E+02 + 0.26357362E+02 0.26135848E+02 0.25915221E+02 0.25695511E+02 0.25476738E+02 + 0.25258935E+02 0.25042121E+02 0.24826326E+02 0.24611577E+02 + 0.10000000E+01 0.28999874E+01 0.46712773E+01 0.63286666E+01 0.78988172E+01 + 0.93973215E+01 0.10837971E+02 0.12233653E+02 0.13593972E+02 0.14920225E+02 + 0.16212882E+02 0.17470506E+02 0.18692689E+02 0.19878109E+02 0.21026908E+02 + 0.22139084E+02 0.23215296E+02 0.24255754E+02 0.25260926E+02 0.26231102E+02 + 0.27166636E+02 0.28067849E+02 0.28935101E+02 0.29768863E+02 0.30569583E+02 + 0.31337856E+02 0.32074207E+02 0.32779318E+02 0.33453780E+02 0.34098280E+02 + 0.34713440E+02 0.35299973E+02 0.35858533E+02 0.36389806E+02 0.36894431E+02 + 0.37373073E+02 0.37826378E+02 0.38254984E+02 0.38659550E+02 0.39040669E+02 + 0.39398997E+02 0.39735157E+02 0.40049768E+02 0.40343401E+02 0.40616644E+02 + 0.40870047E+02 0.41104193E+02 0.41319626E+02 0.41516902E+02 0.41696538E+02 + 0.41859059E+02 0.42004999E+02 0.42134873E+02 0.42249203E+02 0.42348503E+02 + 0.42433268E+02 0.42503970E+02 0.42561037E+02 0.42604899E+02 0.42636021E+02 + 0.42654855E+02 0.42661838E+02 0.42657411E+02 0.42641988E+02 0.42615962E+02 + 0.42579746E+02 0.42533765E+02 0.42478445E+02 0.42414205E+02 0.42341415E+02 + 0.42260430E+02 0.42171599E+02 0.42075277E+02 0.41971828E+02 0.41861620E+02 + 0.41744995E+02 0.41622259E+02 0.41493718E+02 0.41359657E+02 0.41220317E+02 + 0.41075974E+02 0.40926957E+02 0.40773574E+02 0.40616088E+02 0.40454734E+02 + 0.40289720E+02 0.40121226E+02 0.39949453E+02 0.39774615E+02 0.39596926E+02 + 0.39416599E+02 0.39233809E+02 0.39048710E+02 0.38861441E+02 0.38672151E+02 + 0.38481003E+02 0.38288123E+02 0.38093633E+02 0.37897649E+02 0.37700286E+02 + 0.37501681E+02 0.37301937E+02 0.37101120E+02 0.36899312E+02 0.36696586E+02 + 0.36493007E+02 0.36288648E+02 0.36083574E+02 0.35877872E+02 0.35671627E+02 + 0.35464914E+02 0.35257790E+02 0.35050306E+02 0.34842509E+02 0.34634444E+02 + 0.34426171E+02 0.34217756E+02 0.34009260E+02 0.33800736E+02 0.33592197E+02 + 0.33383652E+02 0.33175137E+02 0.32966701E+02 0.32758393E+02 0.32550247E+02 + 0.32342290E+02 0.32134564E+02 0.31927102E+02 0.31719942E+02 + 0.10000000E+01 0.29036624E+01 0.46842304E+01 0.63554358E+01 0.79431156E+01 + 0.94622470E+01 0.10926173E+02 0.12347142E+02 0.13734458E+02 0.15089310E+02 + 0.16412198E+02 0.17701619E+02 0.18957185E+02 0.20177546E+02 0.21362884E+02 + 0.22513192E+02 0.23629150E+02 0.24710942E+02 0.25759024E+02 0.26773646E+02 + 0.27755130E+02 0.28703739E+02 0.29619806E+02 0.30503757E+02 0.31355997E+02 + 0.32177072E+02 0.32967450E+02 0.33727765E+02 0.34458547E+02 0.35160433E+02 + 0.35833978E+02 0.36479839E+02 0.37098596E+02 0.37690881E+02 0.38257276E+02 + 0.38798369E+02 0.39314766E+02 0.39807045E+02 0.40275803E+02 0.40721576E+02 + 0.41144967E+02 0.41546524E+02 0.41926824E+02 0.42286383E+02 0.42625749E+02 + 0.42945413E+02 0.43245912E+02 0.43527741E+02 0.43791398E+02 0.44037352E+02 + 0.44266086E+02 0.44478075E+02 0.44673793E+02 0.44853715E+02 0.45018310E+02 + 0.45168028E+02 0.45303301E+02 0.45424536E+02 0.45532128E+02 0.45626491E+02 + 0.45708040E+02 0.45777181E+02 0.45834311E+02 0.45879822E+02 0.45914088E+02 + 0.45937488E+02 0.45950403E+02 0.45953230E+02 0.45946348E+02 0.45930101E+02 + 0.45904826E+02 0.45870855E+02 0.45828522E+02 0.45778180E+02 0.45720173E+02 + 0.45654820E+02 0.45582438E+02 0.45503322E+02 0.45417745E+02 0.45325959E+02 + 0.45228234E+02 0.45124872E+02 0.45016176E+02 0.44902410E+02 0.44783812E+02 + 0.44660595E+02 0.44532960E+02 0.44401095E+02 0.44265209E+02 0.44125520E+02 + 0.43982230E+02 0.43835528E+02 0.43685605E+02 0.43532619E+02 0.43376725E+02 + 0.43218087E+02 0.43056853E+02 0.42893152E+02 0.42727115E+02 0.42558880E+02 + 0.42388586E+02 0.42216343E+02 0.42042239E+02 0.41866354E+02 0.41688774E+02 + 0.41509592E+02 0.41328897E+02 0.41146772E+02 0.40963313E+02 0.40778608E+02 + 0.40592732E+02 0.40405766E+02 0.40217771E+02 0.40028810E+02 0.39838958E+02 + 0.39648267E+02 0.39456813E+02 0.39264675E+02 0.39071893E+02 0.38878507E+02 + 0.38684555E+02 0.38490066E+02 0.38295101E+02 0.38099719E+02 0.37903951E+02 + 0.37707839E+02 0.37511426E+02 0.37314751E+02 0.37117857E+02 + 0.10000000E+01 0.29058595E+01 0.46922947E+01 0.63723775E+01 0.79716051E+01 + 0.95046071E+01 0.10984570E+02 0.12423127E+02 0.13829341E+02 0.15204211E+02 + 0.16548332E+02 0.17860134E+02 0.19139355E+02 0.20384671E+02 0.21596384E+02 + 0.22774511E+02 0.23919833E+02 0.25032547E+02 0.26113173E+02 0.27161928E+02 + 0.28179169E+02 0.29165127E+02 0.30120129E+02 0.31044572E+02 0.31938848E+02 + 0.32803480E+02 0.33638916E+02 0.34445779E+02 0.35224569E+02 0.35975915E+02 + 0.36700327E+02 0.37398427E+02 0.38070745E+02 0.38717878E+02 0.39340366E+02 + 0.39938753E+02 0.40513617E+02 0.41065468E+02 0.41594884E+02 0.42102336E+02 + 0.42588395E+02 0.43053548E+02 0.43498358E+02 0.43923251E+02 0.44328748E+02 + 0.44715271E+02 0.45083306E+02 0.45433284E+02 0.45765671E+02 0.46080878E+02 + 0.46379344E+02 0.46661484E+02 0.46927728E+02 0.47178496E+02 0.47414208E+02 + 0.47635272E+02 0.47842076E+02 0.48034979E+02 0.48214318E+02 0.48380454E+02 + 0.48533757E+02 0.48674582E+02 0.48803277E+02 0.48920197E+02 0.49025674E+02 + 0.49120030E+02 0.49203609E+02 0.49276762E+02 0.49339833E+02 0.49393136E+02 + 0.49436980E+02 0.49471652E+02 0.49497463E+02 0.49514723E+02 0.49523739E+02 + 0.49524809E+02 0.49518215E+02 0.49504231E+02 0.49483103E+02 0.49455045E+02 + 0.49420313E+02 0.49379182E+02 0.49331925E+02 0.49278797E+02 0.49220030E+02 + 0.49155834E+02 0.49086405E+02 0.49011917E+02 0.48932573E+02 0.48848583E+02 + 0.48760152E+02 0.48667477E+02 0.48570737E+02 0.48470089E+02 0.48365691E+02 + 0.48257695E+02 0.48146249E+02 0.48031483E+02 0.47913525E+02 0.47792520E+02 + 0.47668615E+02 0.47541926E+02 0.47412549E+02 0.47280575E+02 0.47146104E+02 + 0.47009226E+02 0.46870051E+02 0.46728676E+02 0.46585190E+02 0.46439687E+02 + 0.46292259E+02 0.46142975E+02 0.45991911E+02 0.45839144E+02 0.45684733E+02 + 0.45528756E+02 0.45371308E+02 0.45212448E+02 0.45052226E+02 0.44890709E+02 + 0.44727951E+02 0.44563994E+02 0.44398900E+02 0.44232741E+02 0.44065556E+02 + 0.43897378E+02 0.43728259E+02 0.43558246E+02 0.43387385E+02 + 0.10000000E+01 0.29108909E+01 0.47098771E+01 0.64086001E+01 0.80313371E+01 + 0.95917629E+01 0.11102434E+02 0.12574223E+02 0.14015901E+02 0.15428329E+02 + 0.16812112E+02 0.18165548E+02 0.19488330E+02 0.20779027E+02 0.22037928E+02 + 0.23264977E+02 0.24460928E+02 0.25625885E+02 0.26760328E+02 0.27864388E+02 + 0.28938370E+02 0.29982431E+02 0.30996848E+02 0.31981949E+02 0.32938068E+02 + 0.33865659E+02 0.34765084E+02 0.35636905E+02 0.36481533E+02 0.37299534E+02 + 0.38091316E+02 0.38857444E+02 0.39598362E+02 0.40314584E+02 0.41006584E+02 + 0.41674837E+02 0.42319860E+02 0.42942107E+02 0.43542099E+02 0.44120232E+02 + 0.44677043E+02 0.45212941E+02 0.45728441E+02 0.46223923E+02 0.46699866E+02 + 0.47156636E+02 0.47594696E+02 0.48014417E+02 0.48416226E+02 0.48800497E+02 + 0.49167645E+02 0.49518046E+02 0.49852102E+02 0.50170199E+02 0.50472720E+02 + 0.50760036E+02 0.51032508E+02 0.51290470E+02 0.51534244E+02 0.51764176E+02 + 0.51980611E+02 0.52183878E+02 0.52374304E+02 0.52552222E+02 0.52717945E+02 + 0.52871778E+02 0.53014047E+02 0.53145086E+02 0.53265222E+02 0.53374746E+02 + 0.53473944E+02 0.53563109E+02 0.53642538E+02 0.53712526E+02 0.53773385E+02 + 0.53825409E+02 0.53868877E+02 0.53904057E+02 0.53931201E+02 0.53950525E+02 + 0.53962269E+02 0.53966719E+02 0.53964151E+02 0.53954794E+02 0.53938892E+02 + 0.53916650E+02 0.53888250E+02 0.53853896E+02 0.53813799E+02 0.53768159E+02 + 0.53717205E+02 0.53661128E+02 0.53600105E+02 0.53534317E+02 0.53463928E+02 + 0.53389102E+02 0.53310023E+02 0.53226821E+02 0.53139617E+02 0.53048565E+02 + 0.52953820E+02 0.52855505E+02 0.52753721E+02 0.52648574E+02 0.52540188E+02 + 0.52428673E+02 0.52314131E+02 0.52196668E+02 0.52076396E+02 0.51953419E+02 + 0.51827838E+02 0.51699745E+02 0.51569224E+02 0.51436356E+02 0.51301212E+02 + 0.51163864E+02 0.51024407E+02 0.50882925E+02 0.50739483E+02 0.50594145E+02 + 0.50446966E+02 0.50298015E+02 0.50147363E+02 0.49995070E+02 0.49841196E+02 + 0.49685807E+02 0.49528955E+02 0.49370697E+02 0.49211095E+02 + 0.10000000E+01 0.29119399E+01 0.47140464E+01 0.64173919E+01 0.80465210E+01 + 0.96148819E+01 0.11135301E+02 0.12617870E+02 0.14071423E+02 0.15496437E+02 + 0.16893926E+02 0.18261977E+02 0.19600708E+02 0.20908586E+02 0.22186277E+02 + 0.23433627E+02 0.24651702E+02 0.25840519E+02 0.27000790E+02 0.28132512E+02 + 0.29236156E+02 0.30311711E+02 0.31359556E+02 0.32379878E+02 0.33373094E+02 + 0.34339536E+02 0.35279629E+02 0.36193829E+02 0.37082578E+02 0.37946346E+02 + 0.38785562E+02 0.39600683E+02 0.40392154E+02 0.41160381E+02 0.41905845E+02 + 0.42628895E+02 0.43330060E+02 0.44009667E+02 0.44668247E+02 0.45306074E+02 + 0.45923694E+02 0.46521395E+02 0.47099686E+02 0.47658824E+02 0.48199281E+02 + 0.48721324E+02 0.49225378E+02 0.49711727E+02 0.50180768E+02 0.50632790E+02 + 0.51068158E+02 0.51487198E+02 0.51890251E+02 0.52277640E+02 0.52649702E+02 + 0.53006761E+02 0.53349124E+02 0.53677087E+02 0.53990928E+02 0.54290940E+02 + 0.54577416E+02 0.54850643E+02 0.55110910E+02 0.55358499E+02 0.55593697E+02 + 0.55816771E+02 0.56028021E+02 0.56227721E+02 0.56416164E+02 0.56593603E+02 + 0.56760317E+02 0.56916557E+02 0.57062611E+02 0.57198755E+02 0.57325273E+02 + 0.57442420E+02 0.57550450E+02 0.57649596E+02 0.57740090E+02 0.57822154E+02 + 0.57896037E+02 0.57961995E+02 0.58020303E+02 0.58071177E+02 0.58114831E+02 + 0.58151464E+02 0.58181274E+02 0.58204438E+02 0.58221167E+02 0.58231664E+02 + 0.58236154E+02 0.58234829E+02 0.58227872E+02 0.58215450E+02 0.58197745E+02 + 0.58174917E+02 0.58147133E+02 0.58114525E+02 0.58077237E+02 0.58035416E+02 + 0.57989226E+02 0.57938806E+02 0.57884267E+02 0.57825701E+02 0.57763246E+02 + 0.57697008E+02 0.57627082E+02 0.57553579E+02 0.57476638E+02 0.57396361E+02 + 0.57312849E+02 0.57226197E+02 0.57136496E+02 0.57043824E+02 0.56948266E+02 + 0.56849900E+02 0.56748825E+02 0.56645136E+02 0.56538909E+02 0.56430202E+02 + 0.56319080E+02 0.56205602E+02 0.56089852E+02 0.55971905E+02 0.55851819E+02 + 0.55729650E+02 0.55605475E+02 0.55479357E+02 0.55351350E+02 + 0.10000000E+01 0.29112397E+01 0.47120698E+01 0.64136238E+01 0.80409668E+01 + 0.96075935E+01 0.11126724E+02 0.12608089E+02 0.14060651E+02 0.15484598E+02 + 0.16881215E+02 0.18248438E+02 0.19586682E+02 0.20894364E+02 0.22172394E+02 + 0.23420573E+02 0.24640190E+02 0.25831219E+02 0.26994544E+02 0.28130108E+02 + 0.29238496E+02 0.30319619E+02 0.31373948E+02 0.32401605E+02 0.33403075E+02 + 0.34378653E+02 0.35328820E+02 0.36254017E+02 0.37154727E+02 0.38031401E+02 + 0.38884507E+02 0.39714487E+02 0.40521817E+02 0.41306874E+02 0.42070174E+02 + 0.42812019E+02 0.43532972E+02 0.44233316E+02 0.44913614E+02 0.45574080E+02 + 0.46215282E+02 0.46837439E+02 0.47441092E+02 0.48026442E+02 0.48593974E+02 + 0.49143908E+02 0.49676688E+02 0.50192558E+02 0.50691903E+02 0.51174977E+02 + 0.51642131E+02 0.52093649E+02 0.52529866E+02 0.52951085E+02 0.53357600E+02 + 0.53749710E+02 0.54127692E+02 0.54491816E+02 0.54842330E+02 0.55179501E+02 + 0.55503609E+02 0.55814921E+02 0.56113691E+02 0.56400169E+02 0.56674625E+02 + 0.56937299E+02 0.57188467E+02 0.57428367E+02 0.57657290E+02 0.57875462E+02 + 0.58083128E+02 0.58280515E+02 0.58467882E+02 0.58645457E+02 0.58813515E+02 + 0.58972292E+02 0.59122014E+02 0.59262904E+02 0.59395193E+02 0.59519058E+02 + 0.59634736E+02 0.59742470E+02 0.59842494E+02 0.59935005E+02 0.60020217E+02 + 0.60098298E+02 0.60169436E+02 0.60233794E+02 0.60291577E+02 0.60342967E+02 + 0.60388171E+02 0.60427367E+02 0.60460733E+02 0.60488420E+02 0.60510616E+02 + 0.60527463E+02 0.60539119E+02 0.60545709E+02 0.60547363E+02 0.60544220E+02 + 0.60536443E+02 0.60524146E+02 0.60507444E+02 0.60486438E+02 0.60461247E+02 + 0.60431970E+02 0.60398723E+02 0.60361610E+02 0.60320758E+02 0.60276276E+02 + 0.60228271E+02 0.60176833E+02 0.60122040E+02 0.60063958E+02 0.60002667E+02 + 0.59938245E+02 0.59870791E+02 0.59800398E+02 0.59727144E+02 0.59651084E+02 + 0.59572287E+02 0.59490815E+02 0.59406750E+02 0.59320166E+02 0.59231143E+02 + 0.59139741E+02 0.59046031E+02 0.58950067E+02 0.58851921E+02 + 0.10000000E+01 0.29154732E+01 0.47270278E+01 0.64445500E+01 0.80921826E+01 + 0.96824760E+01 0.11228270E+02 0.12738471E+02 0.14221922E+02 0.15678531E+02 + 0.17109717E+02 0.18513188E+02 0.19889425E+02 0.21236674E+02 0.22555910E+02 + 0.23846810E+02 0.25110698E+02 0.26347447E+02 0.27557942E+02 0.28742022E+02 + 0.29900261E+02 0.31032482E+02 0.32139137E+02 0.33220279E+02 0.34276361E+02 + 0.35307623E+02 0.36314491E+02 0.37297346E+02 0.38256600E+02 0.39192651E+02 + 0.40105894E+02 0.40996707E+02 0.41865506E+02 0.42712612E+02 0.43538492E+02 + 0.44343385E+02 0.45127820E+02 0.45891988E+02 0.46636438E+02 0.47361308E+02 + 0.48067150E+02 0.48754122E+02 0.49422763E+02 0.50073203E+02 0.50705914E+02 + 0.51321053E+02 0.51919042E+02 0.52500068E+02 0.53064507E+02 0.53612575E+02 + 0.54144612E+02 0.54660877E+02 0.55161669E+02 0.55647258E+02 0.56117932E+02 + 0.56573964E+02 0.57015605E+02 0.57443108E+02 0.57856696E+02 0.58256609E+02 + 0.58643101E+02 0.59016416E+02 0.59376800E+02 0.59724501E+02 0.60059779E+02 + 0.60382847E+02 0.60693970E+02 0.60993362E+02 0.61281291E+02 0.61557973E+02 + 0.61823655E+02 0.62078553E+02 0.62322919E+02 0.62556963E+02 0.62780944E+02 + 0.62995088E+02 0.63199611E+02 0.63394727E+02 0.63580659E+02 0.63757587E+02 + 0.63925729E+02 0.64085300E+02 0.64236534E+02 0.64379631E+02 0.64514807E+02 + 0.64642237E+02 0.64762104E+02 0.64874558E+02 0.64979797E+02 0.65077989E+02 + 0.65169344E+02 0.65254040E+02 0.65332267E+02 0.65404180E+02 0.65469962E+02 + 0.65529754E+02 0.65583709E+02 0.65631944E+02 0.65674604E+02 0.65711826E+02 + 0.65743776E+02 0.65770568E+02 0.65792321E+02 0.65809134E+02 0.65821138E+02 + 0.65828429E+02 0.65831137E+02 0.65829375E+02 0.65823270E+02 0.65812917E+02 + 0.65798437E+02 0.65779917E+02 0.65757448E+02 0.65731102E+02 0.65700984E+02 + 0.65667168E+02 0.65629759E+02 0.65588843E+02 0.65544493E+02 0.65496774E+02 + 0.65445781E+02 0.65391580E+02 0.65334262E+02 0.65273918E+02 0.65210622E+02 + 0.65144421E+02 0.65075391E+02 0.65003593E+02 0.64929096E+02 + 0.10000000E+01 0.29112739E+01 0.47132741E+01 0.64167606E+01 0.80476389E+01 + 0.96188230E+01 0.11144436E+02 0.12632968E+02 0.14093951E+02 0.15526577E+02 + 0.16932965E+02 0.18310384E+02 0.19660062E+02 0.20979966E+02 0.22271676E+02 + 0.23534621E+02 0.24770639E+02 0.25979405E+02 0.27162257E+02 0.28318849E+02 + 0.29450123E+02 0.30555709E+02 0.31636362E+02 0.32691957E+02 0.33723204E+02 + 0.34730226E+02 0.35713692E+02 0.36673901E+02 0.37611486E+02 0.38526782E+02 + 0.39420385E+02 0.40292616E+02 0.41144082E+02 0.41975027E+02 0.42786095E+02 + 0.43577447E+02 0.44349779E+02 0.45103198E+02 0.45838407E+02 0.46555446E+02 + 0.47254995E+02 0.47937119E+02 0.48602467E+02 0.49251094E+02 0.49883560E+02 + 0.50499957E+02 0.51100769E+02 0.51686145E+02 0.52256502E+02 0.52812027E+02 + 0.53353061E+02 0.53879844E+02 0.54392666E+02 0.54891786E+02 0.55377468E+02 + 0.55849969E+02 0.56309518E+02 0.56756345E+02 0.57190643E+02 0.57612644E+02 + 0.58022586E+02 0.58420682E+02 0.58807187E+02 0.59182285E+02 0.59546236E+02 + 0.59899203E+02 0.60241440E+02 0.60573122E+02 0.60894531E+02 0.61205819E+02 + 0.61507222E+02 0.61798896E+02 0.62081068E+02 0.62353903E+02 0.62617631E+02 + 0.62872423E+02 0.63118489E+02 0.63356005E+02 0.63585163E+02 0.63806111E+02 + 0.64019057E+02 0.64224174E+02 0.64421680E+02 0.64611734E+02 0.64794521E+02 + 0.64970173E+02 0.65138853E+02 0.65300656E+02 0.65455771E+02 0.65604335E+02 + 0.65746538E+02 0.65882513E+02 0.66012437E+02 0.66136411E+02 0.66254596E+02 + 0.66367103E+02 0.66474083E+02 0.66575620E+02 0.66671857E+02 0.66762904E+02 + 0.66848912E+02 0.66929959E+02 0.67006159E+02 0.67077580E+02 0.67144348E+02 + 0.67206541E+02 0.67264272E+02 0.67317619E+02 0.67366709E+02 0.67411612E+02 + 0.67452435E+02 0.67489251E+02 0.67522154E+02 0.67551196E+02 0.67576465E+02 + 0.67598019E+02 0.67615966E+02 0.67630370E+02 0.67641313E+02 0.67648854E+02 + 0.67653065E+02 0.67653987E+02 0.67651718E+02 0.67646311E+02 0.67637841E+02 + 0.67626355E+02 0.67611928E+02 0.67594614E+02 0.67574492E+02 + 128 + 0.10000000E+01 0.26188472E+01 0.36484218E+01 0.40655389E+01 0.40439762E+01 + 0.37366899E+01 0.32788311E+01 0.27628497E+01 0.22474013E+01 0.17666886E+01 + 0.13428123E+01 0.98625151E+00 0.70045545E+00 0.48151337E+00 0.32233341E+00 + 0.21177440E+00 0.13809274E+00 0.90311848E-01 0.60434632E-01 0.42495290E-01 + 0.31918981E-01 0.25191349E-01 0.19966781E-01 0.15153729E-01 0.10534773E-01 + 0.63461560E-02 0.29130707E-02 0.43393024E-03 -0.11172069E-02 -0.19262915E-02 + -0.21986819E-02 -0.20217950E-02 -0.14260231E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27327675E+01 0.40436133E+01 0.48929365E+01 0.53615257E+01 + 0.55290303E+01 0.54679155E+01 0.52347458E+01 0.48746376E+01 0.44257452E+01 + 0.39271462E+01 0.34126381E+01 0.29119401E+01 0.24450319E+01 0.20253920E+01 + 0.16574007E+01 0.13409671E+01 0.10724074E+01 0.84882821E+00 0.66623069E+00 + 0.51947486E+00 0.40153030E+00 0.30538656E+00 0.22617658E+00 0.16178782E+00 + 0.11143751E+00 0.73978874E-01 0.47396079E-01 0.29242547E-01 0.17220105E-01 + 0.95427269E-02 0.49425836E-02 0.25252239E-02 0.16106153E-02 0.16140563E-02 + 0.20794325E-02 0.27433318E-02 0.35156735E-02 0.43896510E-02 0.53365487E-02 + 0.62615696E-02 0.69525139E-02 0.71093507E-02 0.64594466E-02 0.48563369E-02 + 0.23781374E-02 -0.63241399E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27797489E+01 0.42189559E+01 0.52874471E+01 0.60455681E+01 + 0.65427095E+01 0.68243280E+01 0.69192718E+01 0.68545745E+01 0.66527433E+01 + 0.63429118E+01 0.59531615E+01 0.55130102E+01 0.50461807E+01 0.45730610E+01 + 0.41073964E+01 0.36593685E+01 0.32349874E+01 0.28402052E+01 0.24786878E+01 + 0.21517251E+01 0.18565773E+01 0.15888451E+01 0.13460677E+01 0.11292647E+01 + 0.94062481E+00 0.78027457E+00 0.64559655E+00 0.53279630E+00 0.43864052E+00 + 0.36081416E+00 0.29736014E+00 0.24616161E+00 0.20496582E+00 0.17161508E+00 + 0.14435633E+00 0.12192113E+00 0.10345792E+00 0.88393711E-01 0.76228103E-01 + 0.66395348E-01 0.58179078E-01 0.50731710E-01 0.43251845E-01 0.35235967E-01 + 0.26677835E-01 0.18098753E-01 0.10397693E-01 0.44822648E-02 0.93142059E-03 + -0.20737700E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.28081561E+01 0.43314860E+01 0.55380967E+01 0.64935934E+01 + 0.72227472E+01 0.77692515E+01 0.81437254E+01 0.83680628E+01 0.84524110E+01 + 0.84157276E+01 0.82743603E+01 0.80482700E+01 0.77544294E+01 0.74094030E+01 + 0.70265361E+01 0.66177592E+01 0.61925337E+01 0.57606003E+01 0.53301479E+01 + 0.49075203E+01 0.44955399E+01 0.40951918E+01 0.37087317E+01 0.33411329E+01 + 0.29979699E+01 0.26822206E+01 0.23937265E+01 0.21309510E+01 0.18928715E+01 + 0.16790807E+01 0.14888517E+01 0.13204812E+01 0.11715539E+01 0.10394176E+01 + 0.92179211E+00 0.81688562E+00 0.72334980E+00 0.64014635E+00 0.56628684E+00 + 0.50074813E+00 0.44236330E+00 0.38990349E+00 0.34220122E+00 0.29838055E+00 + 0.25804095E+00 0.22125636E+00 0.18846666E+00 0.16013643E+00 0.13650938E+00 + 0.11735912E+00 0.10198050E+00 0.89359951E-01 0.78423216E-01 0.68298826E-01 + 0.58503371E-01 0.48972567E-01 0.39970940E-01 0.31893656E-01 0.25049992E-01 + 0.19564429E-01 0.15315744E-01 0.11996399E-01 0.92677884E-02 0.68922465E-02 + 0.47395315E-02 0.28209975E-02 0.12325329E-02 0.52697777E-04 -0.62518706E-03 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.28299377E+01 0.44152506E+01 0.57215338E+01 0.68152578E+01 + 0.77043306E+01 0.84328116E+01 0.89997689E+01 0.94270458E+01 0.97177533E+01 + 0.98876568E+01 0.99465672E+01 0.99096486E+01 0.97890053E+01 0.95977212E+01 + 0.93468532E+01 0.90471156E+01 0.87077042E+01 0.83383279E+01 0.79477216E+01 + 0.75433633E+01 0.71300808E+01 0.67112024E+01 0.62909843E+01 0.58758075E+01 + 0.54724210E+01 0.50852678E+01 0.47160707E+01 0.43652655E+01 0.40336367E+01 + 0.37223304E+01 0.34319720E+01 0.31620408E+01 0.29111896E+01 0.26777009E+01 + 0.24601351E+01 0.22574369E+01 0.20688654E+01 0.18939426E+01 0.17321214E+01 + 0.15827614E+01 0.14450253E+01 0.13179390E+01 0.12003694E+01 0.10913755E+01 + 0.99035540E+00 0.89706104E+00 0.81155661E+00 0.73397388E+00 0.66417207E+00 + 0.60169207E+00 0.54565479E+00 0.49499887E+00 0.44864234E+00 0.40568205E+00 + 0.36553779E+00 0.32798603E+00 0.29310612E+00 0.26113023E+00 0.23225340E+00 + 0.20650321E+00 0.18367095E+00 0.16339607E+00 0.14530324E+00 0.12910065E+00 + 0.11459576E+00 0.10167355E+00 0.90241387E-01 0.80200075E-01 0.71457740E-01 + 0.63943308E-01 0.57612427E-01 0.52414383E-01 0.48245644E-01 0.44892447E-01 + 0.42046951E-01 0.39378964E-01 0.36590815E-01 0.33477937E-01 0.29972067E-01 + 0.26121231E-01 0.22059779E-01 0.17969054E-01 0.14036098E-01 0.10467584E-01 + 0.74200448E-02 0.50105992E-02 0.33004280E-02 0.22920697E-02 0.19627554E-02 + 0.22158424E-02 0.29260456E-02 0.39292682E-02 0.50393340E-02 0.60970656E-02 + 0.69765797E-02 0.76138147E-02 0.79787262E-02 0.80353612E-02 0.77603311E-02 + 0.71291164E-02 0.61594296E-02 0.49085443E-02 0.34800348E-02 0.19831591E-02 + 0.53133482E-03 -0.75773295E-03 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.28455818E+01 0.44727974E+01 0.58476805E+01 0.70341055E+01 + 0.80326901E+01 0.88865918E+01 0.95899944E+01 0.10165244E+02 0.10612016E+02 + 0.10945121E+02 0.11170637E+02 0.11301345E+02 0.11346069E+02 0.11315370E+02 + 0.11217786E+02 0.11061938E+02 0.10855343E+02 0.10606129E+02 0.10321869E+02 + 0.10009354E+02 0.96735033E+01 0.93181370E+01 0.89477985E+01 0.85687066E+01 + 0.81873815E+01 0.78085383E+01 0.74348161E+01 0.70677799E+01 0.67092446E+01 + 0.63612767E+01 0.60254273E+01 0.57022300E+01 0.53915058E+01 0.50926408E+01 + 0.48052564E+01 0.45292280E+01 0.42645943E+01 0.40116504E+01 0.37705431E+01 + 0.35413087E+01 0.33237765E+01 0.31176406E+01 0.29222730E+01 0.27371590E+01 + 0.25620059E+01 0.23966907E+01 0.22413416E+01 0.20961212E+01 0.19608069E+01 + 0.18349518E+01 0.17176785E+01 0.16080353E+01 0.15050523E+01 0.14079458E+01 + 0.13161196E+01 0.12292408E+01 0.11472178E+01 0.10701285E+01 0.99805577E+00 + 0.93095434E+00 0.86857870E+00 0.81054801E+00 0.75643533E+00 0.70593012E+00 + 0.65878136E+00 0.61481006E+00 0.57381452E+00 0.53558492E+00 0.49991199E+00 + 0.46667446E+00 0.43581415E+00 0.40728015E+00 0.38097316E+00 0.35666573E+00 + 0.33402449E+00 0.31270026E+00 0.29237237E+00 0.27284921E+00 0.25404209E+00 + 0.23595052E+00 0.21862583E+00 0.20214444E+00 0.18660597E+00 0.17210395E+00 + 0.15873882E+00 0.14656687E+00 0.13561724E+00 0.12585770E+00 0.11720963E+00 + 0.10955369E+00 0.10274457E+00 0.96627355E-01 0.91028162E-01 0.85796933E-01 + 0.80826130E-01 0.76034484E-01 0.71364448E-01 0.66763548E-01 0.62203136E-01 + 0.57675143E-01 0.53161175E-01 0.48689595E-01 0.44325541E-01 0.40148986E-01 + 0.36227406E-01 0.32645419E-01 0.29451753E-01 0.26673613E-01 0.24302101E-01 + 0.22308045E-01 0.20645321E-01 0.19244767E-01 0.18061698E-01 0.17061274E-01 + 0.16201195E-01 0.15474493E-01 0.14856979E-01 0.14306405E-01 0.13813065E-01 + 0.13336438E-01 0.12818740E-01 0.12237976E-01 0.11561172E-01 0.10753108E-01 + 0.98216692E-02 0.87799896E-02 0.76664502E-02 0.65213261E-02 + 0.10000000E+01 0.28661781E+01 0.45478162E+01 0.60126356E+01 0.73194010E+01 + 0.84606572E+01 0.94773371E+01 0.10357989E+02 0.11125450E+02 0.11775246E+02 + 0.12321553E+02 0.12766016E+02 0.13119060E+02 0.13385606E+02 0.13573450E+02 + 0.13688096E+02 0.13735631E+02 0.13721421E+02 0.13651443E+02 0.13531595E+02 + 0.13367451E+02 0.13163635E+02 0.12924139E+02 0.12653456E+02 0.12357237E+02 + 0.12041354E+02 0.11710481E+02 0.11368009E+02 0.11016555E+02 0.10658865E+02 + 0.10297885E+02 0.99361055E+01 0.95752286E+01 0.92164426E+01 0.88604794E+01 + 0.85082428E+01 0.81607787E+01 0.78191433E+01 0.74845990E+01 0.71581682E+01 + 0.68407377E+01 0.65329477E+01 0.62353175E+01 0.59479115E+01 0.56707855E+01 + 0.54041129E+01 0.51480347E+01 0.49028352E+01 0.46688300E+01 0.44458743E+01 + 0.42337070E+01 0.40316753E+01 0.38391089E+01 0.36552876E+01 0.34796601E+01 + 0.33116837E+01 0.31509695E+01 0.29973195E+01 0.28507037E+01 0.27110963E+01 + 0.25784298E+01 0.24524161E+01 0.23326739E+01 0.22187971E+01 0.21104652E+01 + 0.20073852E+01 0.19093447E+01 0.18160410E+01 0.17271639E+01 0.16424145E+01 + 0.15615781E+01 0.14845607E+01 0.14113153E+01 0.13417668E+01 0.12757146E+01 + 0.12128436E+01 0.11528086E+01 0.10953006E+01 0.10401346E+01 0.98722666E+00 + 0.93654308E+00 0.88803891E+00 0.84169627E+00 0.79749012E+00 0.75539972E+00 + 0.71544078E+00 0.67762116E+00 0.64192859E+00 0.60830412E+00 0.57664605E+00 + 0.54681014E+00 0.51865372E+00 0.49200905E+00 0.46673831E+00 0.44272536E+00 + 0.41984102E+00 0.39799800E+00 0.37711111E+00 0.35711763E+00 0.33796457E+00 + 0.31961180E+00 0.30203379E+00 0.28521096E+00 0.26913773E+00 0.25383166E+00 + 0.23931174E+00 0.22561101E+00 0.21273796E+00 0.20069494E+00 0.18942764E+00 + 0.17889962E+00 0.16905201E+00 0.15983621E+00 0.15121008E+00 0.14311915E+00 + 0.13553261E+00 0.12838733E+00 0.12162643E+00 0.11521495E+00 0.10911960E+00 + 0.10331699E+00 0.97764710E-01 0.92427299E-01 0.87275593E-01 0.82265188E-01 + 0.77408006E-01 0.72706090E-01 0.68183128E-01 0.63874177E-01 + 0.10000000E+01 0.28820294E+01 0.46044612E+01 0.61379581E+01 0.75357369E+01 + 0.87865839E+01 0.99290892E+01 0.10948517E+02 0.11868537E+02 0.12681434E+02 + 0.13402075E+02 0.14028670E+02 0.14571038E+02 0.15031132E+02 0.15415313E+02 + 0.15726676E+02 0.15969460E+02 0.16147099E+02 0.16263652E+02 0.16323326E+02 + 0.16330213E+02 0.16288081E+02 0.16200336E+02 0.16070790E+02 0.15904002E+02 + 0.15704777E+02 0.15477193E+02 0.15224624E+02 0.14949918E+02 0.14656032E+02 + 0.14346083E+02 0.14022870E+02 0.13688664E+02 0.13345438E+02 0.12994781E+02 + 0.12638435E+02 0.12278216E+02 0.11915879E+02 0.11553358E+02 0.11192317E+02 + 0.10834303E+02 0.10480645E+02 0.10132543E+02 0.97907000E+01 0.94557795E+01 + 0.91284555E+01 0.88092700E+01 0.84988460E+01 0.81978010E+01 0.79062955E+01 + 0.76244032E+01 0.73518096E+01 0.70882179E+01 0.68332795E+01 0.65867700E+01 + 0.63483467E+01 0.61177387E+01 0.58947836E+01 0.56794398E+01 0.54717050E+01 + 0.52715473E+01 0.50787557E+01 0.48930234E+01 0.47140251E+01 0.45415212E+01 + 0.43752354E+01 0.42149839E+01 0.40604697E+01 0.39113860E+01 0.37674211E+01 + 0.36283699E+01 0.34940971E+01 0.33645781E+01 0.32397500E+01 0.31194707E+01 + 0.30034424E+01 0.28913729E+01 0.27830038E+01 0.26781767E+01 0.25768410E+01 + 0.24789412E+01 0.23844193E+01 0.22931994E+01 0.22052033E+01 0.21203740E+01 + 0.20386591E+01 0.19600233E+01 0.18844164E+01 0.18117776E+01 0.17420048E+01 + 0.16749671E+01 0.16105216E+01 0.15485182E+01 0.14888285E+01 0.14313274E+01 + 0.13759187E+01 0.13225234E+01 0.12710675E+01 0.12214635E+01 0.11736268E+01 + 0.11274884E+01 0.10829823E+01 0.10400729E+01 0.99873505E+00 0.95894862E+00 + 0.92069828E+00 0.88395710E+00 0.84869658E+00 0.81487797E+00 0.78245757E+00 + 0.75138722E+00 0.72160342E+00 0.69305836E+00 0.66569851E+00 0.63946115E+00 + 0.61430778E+00 0.59016735E+00 0.56696636E+00 0.54468017E+00 0.52325300E+00 + 0.50262951E+00 0.48278069E+00 0.46365701E+00 0.44522001E+00 0.42742219E+00 + 0.41024479E+00 0.39368725E+00 0.37774237E+00 0.36240794E+00 + 0.10000000E+01 0.28959527E+01 0.46537938E+01 0.62475555E+01 0.77249427E+01 + 0.90724901E+01 0.10326497E+02 0.11469570E+02 0.12526410E+02 0.13486138E+02 + 0.14364972E+02 0.15157930E+02 0.15875153E+02 0.16515955E+02 0.17086102E+02 + 0.17586635E+02 0.18020529E+02 0.18389566E+02 0.18696256E+02 0.18943303E+02 + 0.19133382E+02 0.19269289E+02 0.19353546E+02 0.19389082E+02 0.19379238E+02 + 0.19327649E+02 0.19237521E+02 0.19111832E+02 0.18953234E+02 0.18764468E+02 + 0.18548415E+02 0.18307830E+02 0.18045178E+02 0.17762792E+02 0.17462744E+02 + 0.17147244E+02 0.16818561E+02 0.16478870E+02 0.16130511E+02 0.15775595E+02 + 0.15416146E+02 0.15053990E+02 0.14690838E+02 0.14327941E+02 0.13966468E+02 + 0.13607573E+02 0.13252225E+02 0.12901427E+02 0.12556145E+02 0.12216878E+02 + 0.11884113E+02 0.11557936E+02 0.11238464E+02 0.10925777E+02 0.10620016E+02 + 0.10321156E+02 0.10029139E+02 0.97439510E+01 0.94656712E+01 0.91944091E+01 + 0.89302438E+01 0.86730789E+01 0.84227425E+01 0.81790473E+01 0.79418677E+01 + 0.77110112E+01 0.74863709E+01 0.72677103E+01 0.70548065E+01 0.68473914E+01 + 0.66453004E+01 0.64484496E+01 0.62568570E+01 0.60705149E+01 0.58893419E+01 + 0.57131076E+01 0.55415594E+01 0.53744979E+01 0.52118236E+01 0.50535164E+01 + 0.48995522E+01 0.47498142E+01 0.46042116E+01 0.44626481E+01 0.43250448E+01 + 0.41913400E+01 0.40614773E+01 0.39354160E+01 0.38130842E+01 0.36944025E+01 + 0.35792678E+01 0.34675481E+01 0.33591255E+01 0.32538892E+01 0.31517399E+01 + 0.30525885E+01 0.29563514E+01 0.28629659E+01 0.27723442E+01 0.26843932E+01 + 0.25990228E+01 0.25161552E+01 0.24357381E+01 0.23577406E+01 0.22821276E+01 + 0.22088427E+01 0.21378266E+01 0.20690211E+01 0.20023658E+01 0.19378180E+01 + 0.18753192E+01 0.18148119E+01 0.17562410E+01 0.16995418E+01 0.16446632E+01 + 0.15915273E+01 0.15400602E+01 0.14902135E+01 0.14419166E+01 0.13951245E+01 + 0.13498139E+01 0.13059268E+01 0.12633977E+01 0.12221856E+01 0.11822235E+01 + 0.11434786E+01 0.11059385E+01 0.10695975E+01 0.10344306E+01 + 0.10000000E+01 0.29069484E+01 0.46930671E+01 0.63352386E+01 0.78772937E+01 + 0.93040356E+01 0.10650586E+02 0.11896853E+02 0.13069171E+02 0.14153233E+02 + 0.15167330E+02 0.16103236E+02 0.16972306E+02 0.17771327E+02 0.18506378E+02 + 0.19176815E+02 0.19785243E+02 0.20332301E+02 0.20819640E+02 0.21248935E+02 + 0.21621838E+02 0.21940326E+02 0.22206042E+02 0.22421142E+02 0.22587854E+02 + 0.22708791E+02 0.22786232E+02 0.22822508E+02 0.22819681E+02 0.22779965E+02 + 0.22705678E+02 0.22599122E+02 0.22462454E+02 0.22297829E+02 0.22107264E+02 + 0.21892895E+02 0.21656940E+02 0.21401574E+02 0.21129107E+02 0.20841677E+02 + 0.20541392E+02 0.20230199E+02 0.19909978E+02 0.19582265E+02 0.19248547E+02 + 0.18910273E+02 0.18568729E+02 0.18225196E+02 0.17880920E+02 0.17536780E+02 + 0.17193620E+02 0.16851985E+02 0.16512423E+02 0.16175426E+02 0.15841506E+02 + 0.15510989E+02 0.15184122E+02 0.14861163E+02 0.14542411E+02 0.14228195E+02 + 0.13918795E+02 0.13614315E+02 0.13314786E+02 0.13020210E+02 0.12730652E+02 + 0.12446061E+02 0.12166478E+02 0.11891825E+02 0.11622046E+02 0.11357018E+02 + 0.11096669E+02 0.10840977E+02 0.10590010E+02 0.10343839E+02 0.10102459E+02 + 0.98657411E+01 0.96335247E+01 0.94056813E+01 0.91821809E+01 0.89630488E+01 + 0.87482747E+01 0.85377903E+01 0.83315391E+01 0.81294891E+01 0.79315970E+01 + 0.77378256E+01 0.75481465E+01 0.73625299E+01 0.71809385E+01 0.70033254E+01 + 0.68296323E+01 0.66597669E+01 0.64936510E+01 0.63312123E+01 0.61723748E+01 + 0.60170839E+01 0.58652803E+01 0.57169210E+01 0.55719511E+01 0.54302999E+01 + 0.52918716E+01 0.51566094E+01 0.50244922E+01 0.48954979E+01 0.47695864E+01 + 0.46467068E+01 0.45267819E+01 0.44097439E+01 0.42955408E+01 0.41841297E+01 + 0.40754645E+01 0.39694924E+01 0.38661593E+01 0.37654012E+01 0.36671750E+01 + 0.35714129E+01 0.34780455E+01 0.33870146E+01 0.32982737E+01 0.32117815E+01 + 0.31274836E+01 0.30453309E+01 0.29652558E+01 0.28871905E+01 0.28110755E+01 + 0.27368737E+01 0.26645741E+01 0.25941491E+01 0.25255721E+01 + 0.10000000E+01 0.29161255E+01 0.47263220E+01 0.64094540E+01 0.80067924E+01 + 0.95010905E+01 0.10927094E+02 0.12261837E+02 0.13533487E+02 0.14724378E+02 + 0.15854925E+02 0.16913839E+02 0.17913820E+02 0.18849287E+02 0.19726847E+02 + 0.20544357E+02 0.21304375E+02 0.22006639E+02 0.22652294E+02 0.23242280E+02 + 0.23777502E+02 0.24259352E+02 0.24688774E+02 0.25067349E+02 0.25396422E+02 + 0.25677858E+02 0.25913165E+02 0.26104124E+02 0.26252260E+02 0.26359290E+02 + 0.26426982E+02 0.26457182E+02 0.26451689E+02 0.26412355E+02 0.26340982E+02 + 0.26239484E+02 0.26109865E+02 0.25954111E+02 0.25774333E+02 0.25572543E+02 + 0.25350767E+02 0.25110919E+02 0.24854881E+02 0.24584296E+02 0.24300779E+02 + 0.24005919E+02 0.23701195E+02 0.23388065E+02 0.23067950E+02 0.22742006E+02 + 0.22411346E+02 0.22076860E+02 0.21739415E+02 0.21399844E+02 0.21058975E+02 + 0.20717441E+02 0.20375787E+02 0.20034542E+02 0.19694240E+02 0.19355414E+02 + 0.19018565E+02 0.18684013E+02 0.18352012E+02 0.18022789E+02 0.17696587E+02 + 0.17373518E+02 0.17053761E+02 0.16737415E+02 0.16424571E+02 0.16115261E+02 + 0.15809523E+02 0.15507418E+02 0.15209080E+02 0.14914646E+02 0.14624183E+02 + 0.14337659E+02 0.14055008E+02 0.13776178E+02 0.13501200E+02 0.13230146E+02 + 0.12963042E+02 0.12699859E+02 0.12440590E+02 0.12185231E+02 0.11933795E+02 + 0.11686273E+02 0.11442654E+02 0.11202935E+02 0.10967114E+02 0.10735190E+02 + 0.10507146E+02 0.10282946E+02 0.10062542E+02 0.98459053E+01 0.96329991E+01 + 0.94238079E+01 0.92183124E+01 0.90165065E+01 0.88183659E+01 0.86238402E+01 + 0.84328629E+01 0.82453811E+01 0.80613982E+01 0.78809103E+01 0.77039075E+01 + 0.75303338E+01 0.73601411E+01 0.71932708E+01 0.70296922E+01 0.68693803E+01 + 0.67123072E+01 0.65584371E+01 0.64077178E+01 0.62601185E+01 0.61155954E+01 + 0.59740978E+01 0.58355559E+01 0.56999213E+01 0.55671556E+01 0.54372281E+01 + 0.53100925E+01 0.51857049E+01 0.50640061E+01 0.49449394E+01 0.48284356E+01 + 0.47144615E+01 0.46029965E+01 0.44940260E+01 0.43875164E+01 + 0.10000000E+01 0.29212355E+01 0.47454204E+01 0.64524105E+01 0.80826313E+01 + 0.96176808E+01 0.11092352E+02 0.12481990E+02 0.13815850E+02 0.15074247E+02 + 0.16278974E+02 0.17416871E+02 0.18501780E+02 0.19526578E+02 0.20498625E+02 + 0.21414772E+02 0.22278043E+02 0.23087645E+02 0.23844822E+02 0.24550187E+02 + 0.25204471E+02 0.25808828E+02 0.26363879E+02 0.26870968E+02 0.27331036E+02 + 0.27745629E+02 0.28115836E+02 0.28443077E+02 0.28728505E+02 0.28973475E+02 + 0.29179368E+02 0.29347595E+02 0.29479598E+02 0.29576791E+02 0.29640620E+02 + 0.29672576E+02 0.29674289E+02 0.29647347E+02 0.29593485E+02 0.29514346E+02 + 0.29411624E+02 0.29286918E+02 0.29141826E+02 0.28977775E+02 0.28796186E+02 + 0.28598482E+02 0.28386033E+02 0.28160188E+02 0.27922287E+02 0.27673477E+02 + 0.27414880E+02 0.27147439E+02 0.26872085E+02 0.26589738E+02 0.26301316E+02 + 0.26007587E+02 0.25709240E+02 0.25406971E+02 0.25101473E+02 0.24793427E+02 + 0.24483471E+02 0.24172101E+02 0.23859752E+02 0.23546832E+02 0.23233740E+02 + 0.22920772E+02 0.22608265E+02 0.22296478E+02 0.21985642E+02 0.21675940E+02 + 0.21367558E+02 0.21060670E+02 0.20755507E+02 0.20452290E+02 0.20151184E+02 + 0.19852250E+02 0.19555527E+02 0.19261041E+02 0.18968893E+02 0.18679215E+02 + 0.18392093E+02 0.18107559E+02 0.17825658E+02 0.17546455E+02 0.17270008E+02 + 0.16996346E+02 0.16725487E+02 0.16457464E+02 0.16192317E+02 0.15930076E+02 + 0.15670761E+02 0.15414366E+02 0.15160888E+02 0.14910325E+02 0.14662687E+02 + 0.14417989E+02 0.14176251E+02 0.13937491E+02 0.13701719E+02 0.13468927E+02 + 0.13239076E+02 0.13012150E+02 0.12788177E+02 0.12567207E+02 0.12349264E+02 + 0.12134327E+02 0.11922366E+02 0.11713352E+02 0.11507277E+02 0.11304136E+02 + 0.11103917E+02 0.10906620E+02 0.10712234E+02 0.10520758E+02 0.10332179E+02 + 0.10146480E+02 0.99636107E+01 0.97835390E+01 0.96062447E+01 0.94317194E+01 + 0.92599621E+01 0.90909598E+01 0.89246827E+01 0.87610779E+01 0.86001113E+01 + 0.84417471E+01 0.82859730E+01 0.81327924E+01 0.79821996E+01 + 0.10000000E+01 0.29261736E+01 0.47636693E+01 0.64934981E+01 0.81548793E+01 + 0.97286861E+01 0.11249210E+02 0.12690727E+02 0.14082943E+02 0.15404786E+02 + 0.16678854E+02 0.17890613E+02 0.19054599E+02 0.20162478E+02 0.21222096E+02 + 0.22229447E+02 0.23187857E+02 0.24096009E+02 0.24955209E+02 0.25765714E+02 + 0.26528099E+02 0.27243265E+02 0.27911590E+02 0.28534195E+02 0.29111682E+02 + 0.29645316E+02 0.30135858E+02 0.30584455E+02 0.30991985E+02 0.31359513E+02 + 0.31688124E+02 0.31978902E+02 0.32233041E+02 0.32451631E+02 0.32635891E+02 + 0.32786989E+02 0.32906289E+02 0.32995057E+02 0.33054754E+02 0.33086720E+02 + 0.33092401E+02 0.33073136E+02 0.33030307E+02 0.32965145E+02 0.32878917E+02 + 0.32772885E+02 0.32648294E+02 0.32506370E+02 0.32348358E+02 0.32175354E+02 + 0.31988436E+02 0.31788552E+02 0.31576657E+02 0.31353700E+02 0.31120644E+02 + 0.30878331E+02 0.30627539E+02 0.30369053E+02 0.30103653E+02 0.29832106E+02 + 0.29555152E+02 0.29273407E+02 0.28987441E+02 0.28697802E+02 0.28405033E+02 + 0.28109562E+02 0.27811836E+02 0.27512245E+02 0.27211161E+02 0.26908898E+02 + 0.26605758E+02 0.26302039E+02 0.25998070E+02 0.25694165E+02 0.25390560E+02 + 0.25087435E+02 0.24784914E+02 0.24483118E+02 0.24182215E+02 0.23882396E+02 + 0.23583801E+02 0.23286527E+02 0.22990679E+02 0.22696362E+02 0.22403690E+02 + 0.22112740E+02 0.21823570E+02 0.21536234E+02 0.21250794E+02 0.20967319E+02 + 0.20685861E+02 0.20406454E+02 0.20129122E+02 0.19853902E+02 0.19580827E+02 + 0.19309934E+02 0.19041251E+02 0.18774820E+02 0.18510673E+02 0.18248834E+02 + 0.17989291E+02 0.17732061E+02 0.17477190E+02 0.17224732E+02 0.16974721E+02 + 0.16727161E+02 0.16482043E+02 0.16239363E+02 0.15999159E+02 0.15761454E+02 + 0.15526261E+02 0.15293590E+02 0.15063461E+02 0.14835875E+02 0.14610840E+02 + 0.14388360E+02 0.14168424E+02 0.13951014E+02 0.13736142E+02 0.13523823E+02 + 0.13314061E+02 0.13106847E+02 0.12902175E+02 0.12700023E+02 0.12500371E+02 + 0.12303217E+02 0.12108585E+02 0.11916493E+02 0.11726951E+02 + 0.10000000E+01 0.29287982E+01 0.47736030E+01 0.65161948E+01 0.81952463E+01 + 0.97916491E+01 0.11339196E+02 0.12811985E+02 0.14239591E+02 0.15600511E+02 + 0.16917577E+02 0.18175686E+02 0.19389846E+02 0.20551052E+02 0.21667719E+02 + 0.22735190E+02 0.23757375E+02 0.24732410E+02 0.25662072E+02 0.26546168E+02 + 0.27385592E+02 0.28180866E+02 0.28932552E+02 0.29641448E+02 0.30308271E+02 + 0.30934003E+02 0.31519461E+02 0.32065500E+02 0.32572999E+02 0.33042731E+02 + 0.33475759E+02 0.33872850E+02 0.34235139E+02 0.34563383E+02 0.34858727E+02 + 0.35121997E+02 0.35354444E+02 0.35556997E+02 0.35730975E+02 0.35877385E+02 + 0.35997503E+02 0.36092366E+02 0.36163176E+02 0.36210900E+02 0.36236623E+02 + 0.36241375E+02 0.36226226E+02 0.36192211E+02 0.36140388E+02 0.36071700E+02 + 0.35987080E+02 0.35887352E+02 0.35773342E+02 0.35645884E+02 0.35505832E+02 + 0.35353946E+02 0.35190952E+02 0.35017592E+02 0.34834607E+02 0.34642723E+02 + 0.34442651E+02 0.34235003E+02 0.34020350E+02 0.33799260E+02 0.33572281E+02 + 0.33339888E+02 0.33102561E+02 0.32860747E+02 0.32614851E+02 0.32365245E+02 + 0.32112298E+02 0.31856371E+02 0.31597841E+02 0.31337079E+02 0.31074390E+02 + 0.30810003E+02 0.30544115E+02 0.30276916E+02 0.30008641E+02 0.29739520E+02 + 0.29469755E+02 0.29199497E+02 0.28928913E+02 0.28658159E+02 0.28387401E+02 + 0.28116753E+02 0.27846312E+02 0.27576188E+02 0.27306486E+02 0.27037305E+02 + 0.26768720E+02 0.26500811E+02 0.26233637E+02 0.25967263E+02 0.25701750E+02 + 0.25437166E+02 0.25173582E+02 0.24911066E+02 0.24649687E+02 0.24389492E+02 + 0.24130509E+02 0.23872769E+02 0.23616341E+02 0.23361295E+02 0.23107686E+02 + 0.22855542E+02 0.22604876E+02 0.22355715E+02 0.22108110E+02 0.21862100E+02 + 0.21617701E+02 0.21374937E+02 0.21133853E+02 0.20894471E+02 0.20656825E+02 + 0.20420936E+02 0.20186817E+02 0.19954457E+02 0.19723874E+02 0.19495094E+02 + 0.19268129E+02 0.19043009E+02 0.18819752E+02 0.18598359E+02 0.18378815E+02 + 0.18161131E+02 0.17945331E+02 0.17731445E+02 0.17519490E+02 + 0.10000000E+01 0.29318966E+01 0.47852567E+01 0.65425548E+01 0.82418816E+01 + 0.98636975E+01 0.11441489E+02 0.12948746E+02 0.14415222E+02 0.15818616E+02 + 0.17182213E+02 0.18490062E+02 0.19757712E+02 0.20975324E+02 0.22151856E+02 + 0.23281919E+02 0.24369944E+02 0.25413460E+02 0.26414644E+02 0.27372788E+02 + 0.28289059E+02 0.29163554E+02 0.29997012E+02 0.30789868E+02 0.31542923E+02 + 0.32256809E+02 0.32932383E+02 0.33570179E+02 0.34171100E+02 0.34735619E+02 + 0.35264795E+02 0.35759080E+02 0.36219600E+02 0.36646807E+02 0.37041816E+02 + 0.37405144E+02 0.37737980E+02 0.38040962E+02 0.38315316E+02 0.38561773E+02 + 0.38781512E+02 0.38975321E+02 0.39144278E+02 0.39289143E+02 0.39410890E+02 + 0.39510377E+02 0.39588559E+02 0.39646319E+02 0.39684601E+02 0.39704237E+02 + 0.39706051E+02 0.39690791E+02 0.39659204E+02 0.39612071E+02 0.39550181E+02 + 0.39474259E+02 0.39385003E+02 0.39283134E+02 0.39169355E+02 0.39044369E+02 + 0.38908872E+02 0.38763482E+02 0.38608773E+02 0.38445331E+02 0.38273733E+02 + 0.38094488E+02 0.37908101E+02 0.37715054E+02 0.37515795E+02 0.37310742E+02 + 0.37100316E+02 0.36884938E+02 0.36665039E+02 0.36441018E+02 0.36213222E+02 + 0.35981936E+02 0.35747415E+02 0.35509900E+02 0.35269676E+02 0.35027022E+02 + 0.34782179E+02 0.34535349E+02 0.34286735E+02 0.34036534E+02 0.33784933E+02 + 0.33532097E+02 0.33278166E+02 0.33023284E+02 0.32767581E+02 0.32511189E+02 + 0.32254222E+02 0.31996774E+02 0.31738937E+02 0.31480806E+02 0.31222483E+02 + 0.30964051E+02 0.30705612E+02 0.30447251E+02 0.30189057E+02 0.29931100E+02 + 0.29673440E+02 0.29416139E+02 0.29159276E+02 0.28902939E+02 0.28647190E+02 + 0.28392084E+02 0.28137656E+02 0.27883953E+02 0.27631023E+02 0.27378940E+02 + 0.27127752E+02 0.26877504E+02 0.26628234E+02 0.26379978E+02 0.26132782E+02 + 0.25886673E+02 0.25641669E+02 0.25397784E+02 0.25155066E+02 0.24913555E+02 + 0.24673279E+02 0.24434269E+02 0.24196555E+02 0.23960149E+02 0.23725055E+02 + 0.23491293E+02 0.23258904E+02 0.23027941E+02 0.22798438E+02 + 0.10000000E+01 0.29338242E+01 0.47929054E+01 0.65600040E+01 0.82733183E+01 + 0.99128415E+01 0.11512230E+02 0.13044339E+02 0.14539293E+02 0.15974033E+02 + 0.17372405E+02 0.18717677E+02 0.20026111E+02 0.21287037E+02 0.22510210E+02 + 0.23689397E+02 0.24829871E+02 0.25928322E+02 0.26987726E+02 0.28006585E+02 + 0.28986771E+02 0.29927646E+02 0.30830541E+02 0.31695254E+02 0.32523076E+02 + 0.33314083E+02 0.34069536E+02 0.34789467E+02 0.35475103E+02 0.36126440E+02 + 0.36744820E+02 0.37330243E+02 0.37884069E+02 0.38406304E+02 0.38898258E+02 + 0.39360019E+02 0.39792921E+02 0.40197210E+02 0.40574198E+02 0.40924267E+02 + 0.41248612E+02 0.41547714E+02 0.41822632E+02 0.42073873E+02 0.42302348E+02 + 0.42508703E+02 0.42693793E+02 0.42858321E+02 0.43003099E+02 0.43128807E+02 + 0.43236140E+02 0.43325720E+02 0.43398166E+02 0.43454140E+02 0.43494315E+02 + 0.43519322E+02 0.43529746E+02 0.43526215E+02 0.43509348E+02 0.43479772E+02 + 0.43438094E+02 0.43384876E+02 0.43320636E+02 0.43245914E+02 0.43161228E+02 + 0.43067061E+02 0.42963890E+02 0.42852170E+02 0.42732333E+02 0.42604788E+02 + 0.42469954E+02 0.42328244E+02 0.42180091E+02 0.42025903E+02 0.41866035E+02 + 0.41700792E+02 0.41530456E+02 0.41355303E+02 0.41175632E+02 0.40991750E+02 + 0.40803932E+02 0.40612409E+02 0.40417418E+02 0.40219188E+02 0.40017959E+02 + 0.39813914E+02 0.39607230E+02 0.39398071E+02 0.39186611E+02 0.38972993E+02 + 0.38757365E+02 0.38539854E+02 0.38320584E+02 0.38099667E+02 0.37877226E+02 + 0.37653377E+02 0.37428235E+02 0.37201899E+02 0.36974478E+02 0.36746084E+02 + 0.36516802E+02 0.36286714E+02 0.36055926E+02 0.35824546E+02 0.35592646E+02 + 0.35360278E+02 0.35127510E+02 0.34894408E+02 0.34661042E+02 0.34427490E+02 + 0.34193808E+02 0.33960049E+02 0.33726271E+02 0.33492533E+02 0.33258892E+02 + 0.33025390E+02 0.32792069E+02 0.32558961E+02 0.32326111E+02 0.32093560E+02 + 0.31861353E+02 0.31629537E+02 0.31398143E+02 0.31167200E+02 0.30936725E+02 + 0.30706764E+02 0.30477351E+02 0.30248547E+02 0.30020384E+02 + 0.10000000E+01 0.29354758E+01 0.47994992E+01 0.65748656E+01 0.83000415E+01 + 0.99542174E+01 0.11571527E+02 0.13123887E+02 0.14642081E+02 0.16102101E+02 + 0.17528480E+02 0.18903643E+02 0.20244503E+02 0.21539638E+02 0.22799405E+02 + 0.24016897E+02 0.25197950E+02 0.26338630E+02 0.27442431E+02 0.28507262E+02 + 0.29535455E+02 0.30525840E+02 0.31480155E+02 0.32397721E+02 0.33280156E+02 + 0.34127107E+02 0.34940109E+02 0.35718814E+02 0.36464695E+02 0.37177402E+02 + 0.37858492E+02 0.38507626E+02 0.39126375E+02 0.39714415E+02 0.40273245E+02 + 0.40802641E+02 0.41304093E+02 0.41777552E+02 0.42224457E+02 0.42644932E+02 + 0.43040251E+02 0.43410669E+02 0.43757286E+02 0.44080432E+02 0.44381022E+02 + 0.44659563E+02 0.44916887E+02 0.45153597E+02 0.45370444E+02 0.45568037E+02 + 0.45747001E+02 0.45907906E+02 0.46051304E+02 0.46177799E+02 0.46287992E+02 + 0.46382464E+02 0.46461756E+02 0.46526449E+02 0.46577106E+02 0.46614300E+02 + 0.46638590E+02 0.46650497E+02 0.46650494E+02 0.46639088E+02 0.46616758E+02 + 0.46583968E+02 0.46541159E+02 0.46488770E+02 0.46427198E+02 0.46356840E+02 + 0.46278095E+02 0.46191369E+02 0.46097079E+02 0.45995628E+02 0.45887366E+02 + 0.45772593E+02 0.45651590E+02 0.45524639E+02 0.45392045E+02 0.45254109E+02 + 0.45111107E+02 0.44963284E+02 0.44810896E+02 0.44654175E+02 0.44493374E+02 + 0.44328693E+02 0.44160338E+02 0.43988474E+02 0.43813290E+02 0.43634938E+02 + 0.43453585E+02 0.43269363E+02 0.43082417E+02 0.42892880E+02 0.42700884E+02 + 0.42506564E+02 0.42310045E+02 0.42111455E+02 0.41910909E+02 0.41708538E+02 + 0.41504442E+02 0.41298726E+02 0.41091504E+02 0.40882901E+02 0.40673008E+02 + 0.40461893E+02 0.40249636E+02 0.40036313E+02 0.39822011E+02 0.39606808E+02 + 0.39390778E+02 0.39173978E+02 0.38956471E+02 0.38738329E+02 0.38519622E+02 + 0.38300400E+02 0.38080699E+02 0.37860567E+02 0.37640060E+02 0.37419231E+02 + 0.37198137E+02 0.36976834E+02 0.36755365E+02 0.36533757E+02 0.36312050E+02 + 0.36090292E+02 0.35868535E+02 0.35646831E+02 0.35425233E+02 + 0.10000000E+01 0.29364981E+01 0.48040378E+01 0.65851249E+01 0.83190225E+01 + 0.99838809E+01 0.11614791E+02 0.13182467E+02 0.14718690E+02 0.16198290E+02 + 0.17646762E+02 0.19045512E+02 0.20412373E+02 0.21734998E+02 0.23024642E+02 + 0.24273495E+02 0.25488315E+02 0.26664255E+02 0.27805726E+02 0.28909713E+02 + 0.29979438E+02 0.31012837E+02 0.32012460E+02 0.32976812E+02 0.33908235E+02 + 0.34805662E+02 0.35671254E+02 0.36504016E+02 0.37305964E+02 0.38076156E+02 + 0.38816639E+02 0.39526515E+02 0.40207813E+02 0.40859684E+02 0.41484035E+02 + 0.42080149E+02 0.42649859E+02 0.43192688E+02 0.43710339E+02 0.44202571E+02 + 0.44670847E+02 0.45115139E+02 0.45536660E+02 0.45935524E+02 0.46312698E+02 + 0.46668518E+02 0.47003790E+02 0.47318997E+02 0.47614839E+02 0.47891835E+02 + 0.48150543E+02 0.48391467E+02 0.48615088E+02 0.48821941E+02 0.49012542E+02 + 0.49187410E+02 0.49347012E+02 0.49491874E+02 0.49622489E+02 0.49739382E+02 + 0.49843035E+02 0.49933916E+02 0.50012437E+02 0.50079055E+02 0.50134179E+02 + 0.50178227E+02 0.50211593E+02 0.50234678E+02 0.50247838E+02 0.50251427E+02 + 0.50245810E+02 0.50231355E+02 0.50208455E+02 0.50177472E+02 0.50138744E+02 + 0.50092549E+02 0.50039165E+02 0.49978846E+02 0.49911889E+02 0.49838581E+02 + 0.49759193E+02 0.49673958E+02 0.49583128E+02 0.49486941E+02 0.49385645E+02 + 0.49279442E+02 0.49168530E+02 0.49053086E+02 0.48933294E+02 0.48809318E+02 + 0.48681325E+02 0.48549457E+02 0.48413865E+02 0.48274686E+02 0.48132068E+02 + 0.47986136E+02 0.47837039E+02 0.47684907E+02 0.47529877E+02 0.47372073E+02 + 0.47211624E+02 0.47048637E+02 0.46883228E+02 0.46715524E+02 0.46545632E+02 + 0.46373647E+02 0.46199650E+02 0.46023738E+02 0.45846011E+02 0.45666562E+02 + 0.45485450E+02 0.45302747E+02 0.45118531E+02 0.44932872E+02 0.44745844E+02 + 0.44557513E+02 0.44367939E+02 0.44177166E+02 0.43985256E+02 0.43792276E+02 + 0.43598287E+02 0.43403342E+02 0.43207498E+02 0.43010810E+02 0.42813318E+02 + 0.42615079E+02 0.42416152E+02 0.42216600E+02 0.42016468E+02 + 0.10000000E+01 0.29385868E+01 0.48122501E+01 0.66035353E+01 0.83519259E+01 + 0.10034516E+02 0.11686959E+02 0.13278758E+02 0.14842543E+02 0.16351928E+02 + 0.17833272E+02 0.19266906E+02 0.20671437E+02 0.22033571E+02 0.23365251E+02 + 0.24657840E+02 0.25918735E+02 0.27142328E+02 0.28333615E+02 0.29488860E+02 + 0.30611810E+02 0.31699742E+02 0.32755687E+02 0.33777563E+02 0.34768094E+02 + 0.35725670E+02 0.36652777E+02 0.37547961E+02 0.38413544E+02 0.39248153E+02 + 0.40054107E+02 0.40830093E+02 0.41578399E+02 0.42297798E+02 0.42990440E+02 + 0.43655256E+02 0.44294278E+02 0.44906704E+02 0.45494380E+02 0.46056783E+02 + 0.46595478E+02 0.47110206E+02 0.47602240E+02 0.48071529E+02 0.48519071E+02 + 0.48945081E+02 0.49350357E+02 0.49735280E+02 0.50100507E+02 0.50446492E+02 + 0.50773744E+02 0.51082733E+02 0.51373901E+02 0.51647762E+02 0.51904788E+02 + 0.52145462E+02 0.52370208E+02 0.52579517E+02 0.52773841E+02 0.52953678E+02 + 0.53119465E+02 0.53271659E+02 0.53410636E+02 0.53536845E+02 0.53650663E+02 + 0.53752506E+02 0.53842736E+02 0.53921748E+02 0.53989885E+02 0.54047502E+02 + 0.54094954E+02 0.54132599E+02 0.54160826E+02 0.54179986E+02 0.54190410E+02 + 0.54192363E+02 0.54186131E+02 0.54171978E+02 0.54150204E+02 0.54121088E+02 + 0.54084903E+02 0.54041885E+02 0.53992293E+02 0.53936365E+02 0.53874360E+02 + 0.53806490E+02 0.53732966E+02 0.53653973E+02 0.53569710E+02 0.53480357E+02 + 0.53386091E+02 0.53287067E+02 0.53183441E+02 0.53075362E+02 0.52962984E+02 + 0.52846440E+02 0.52725885E+02 0.52601462E+02 0.52473328E+02 0.52341629E+02 + 0.52206507E+02 0.52068082E+02 0.51926483E+02 0.51781838E+02 0.51634261E+02 + 0.51483857E+02 0.51330726E+02 0.51174976E+02 0.51016719E+02 0.50856067E+02 + 0.50693100E+02 0.50527881E+02 0.50360495E+02 0.50191026E+02 0.50019561E+02 + 0.49846161E+02 0.49670901E+02 0.49493843E+02 0.49315066E+02 0.49134644E+02 + 0.48952643E+02 0.48769127E+02 0.48584152E+02 0.48397783E+02 0.48210077E+02 + 0.48021104E+02 0.47830924E+02 0.47639604E+02 0.47447205E+02 + 0.10000000E+01 0.29389480E+01 0.48143130E+01 0.66085725E+01 0.83618891E+01 + 0.10050950E+02 0.11712018E+02 0.13313986E+02 0.14890039E+02 0.16413142E+02 + 0.17910231E+02 0.19361047E+02 0.20784825E+02 0.22167697E+02 0.23522276E+02 + 0.24839313E+02 0.26126916E+02 0.27378820E+02 0.28600747E+02 0.29788277E+02 + 0.30945874E+02 0.32070122E+02 0.33164706E+02 0.34226887E+02 0.35260008E+02 + 0.36261868E+02 0.37235497E+02 0.38178866E+02 0.39094766E+02 0.39981291E+02 + 0.40841192E+02 0.41672658E+02 0.42478353E+02 0.43256578E+02 0.44009798E+02 + 0.44736524E+02 0.45439033E+02 0.46116164E+02 0.46769944E+02 0.47399561E+02 + 0.48006679E+02 0.48590811E+02 0.49153279E+02 0.49693854E+02 0.50213534E+02 + 0.50712390E+02 0.51191194E+02 0.51650220E+02 0.52090074E+02 0.52511111E+02 + 0.52913790E+02 0.53298498E+02 0.53665613E+02 0.54015559E+02 0.54348751E+02 + 0.54665606E+02 0.54966502E+02 0.55251864E+02 0.55522100E+02 0.55777649E+02 + 0.56018901E+02 0.56246260E+02 0.56460052E+02 0.56660683E+02 0.56848481E+02 + 0.57023831E+02 0.57187058E+02 0.57338531E+02 0.57478560E+02 0.57607470E+02 + 0.57725584E+02 0.57833239E+02 0.57930806E+02 0.58018611E+02 0.58096967E+02 + 0.58166124E+02 0.58226369E+02 0.58277949E+02 0.58321149E+02 0.58356231E+02 + 0.58383468E+02 0.58403088E+02 0.58415352E+02 0.58420501E+02 0.58418801E+02 + 0.58410459E+02 0.58395691E+02 0.58374679E+02 0.58347623E+02 0.58314687E+02 + 0.58276059E+02 0.58231898E+02 0.58182372E+02 0.58127629E+02 0.58067838E+02 + 0.58003139E+02 0.57933682E+02 0.57859609E+02 0.57781081E+02 0.57698244E+02 + 0.57611243E+02 0.57520211E+02 0.57425292E+02 0.57326614E+02 0.57224294E+02 + 0.57118442E+02 0.57009172E+02 0.56896597E+02 0.56780825E+02 0.56661969E+02 + 0.56540111E+02 0.56415326E+02 0.56287702E+02 0.56157330E+02 0.56024302E+02 + 0.55888696E+02 0.55750586E+02 0.55610042E+02 0.55467142E+02 0.55321960E+02 + 0.55174567E+02 0.55025031E+02 0.54873429E+02 0.54719819E+02 0.54564265E+02 + 0.54406835E+02 0.54247600E+02 0.54086622E+02 0.53923963E+02 + 0.10000000E+01 0.29386473E+01 0.48137470E+01 0.66075155E+01 0.83608161E+01 + 0.10049969E+02 0.11711870E+02 0.13314932E+02 0.14892847E+02 0.16418109E+02 + 0.17918123E+02 0.19372222E+02 0.20800134E+02 0.22187580E+02 0.23547714E+02 + 0.24870812E+02 0.26165585E+02 0.27425212E+02 0.28656072E+02 0.29853146E+02 + 0.31021570E+02 0.32157304E+02 0.33264675E+02 0.34340355E+02 0.35388296E+02 + 0.36405769E+02 0.37396353E+02 0.38357524E+02 0.39292559E+02 0.40199097E+02 + 0.41080334E+02 0.41934037E+02 0.42763263E+02 0.43565925E+02 0.44344825E+02 + 0.45098130E+02 0.45828396E+02 0.46534192E+02 0.47217760E+02 0.47878075E+02 + 0.48516947E+02 0.49133728E+02 0.49729827E+02 0.50304891E+02 0.50859961E+02 + 0.51395020E+02 0.51910858E+02 0.52407685E+02 0.52886114E+02 0.53346451E+02 + 0.53789131E+02 0.54214496E+02 0.54622897E+02 0.55014722E+02 0.55390339E+02 + 0.55750133E+02 0.56094438E+02 0.56423662E+02 0.56738161E+02 0.57038362E+02 + 0.57324601E+02 0.57597261E+02 0.57856624E+02 0.58103073E+02 0.58336889E+02 + 0.58558416E+02 0.58767948E+02 0.58965827E+02 0.59152335E+02 0.59327757E+02 + 0.59492404E+02 0.59646588E+02 0.59790653E+02 0.59924892E+02 0.60049597E+02 + 0.60165003E+02 0.60271368E+02 0.60368909E+02 0.60457903E+02 0.60538596E+02 + 0.60611247E+02 0.60676060E+02 0.60733288E+02 0.60783141E+02 0.60825875E+02 + 0.60861684E+02 0.60890778E+02 0.60913328E+02 0.60929532E+02 0.60939553E+02 + 0.60943569E+02 0.60941728E+02 0.60934190E+02 0.60921093E+02 0.60902597E+02 + 0.60878831E+02 0.60849953E+02 0.60816094E+02 0.60777418E+02 0.60734059E+02 + 0.60686171E+02 0.60633870E+02 0.60577301E+02 0.60516588E+02 0.60451857E+02 + 0.60383212E+02 0.60310773E+02 0.60234654E+02 0.60154964E+02 0.60071804E+02 + 0.59985253E+02 0.59895385E+02 0.59802288E+02 0.59706056E+02 0.59606790E+02 + 0.59504567E+02 0.59399462E+02 0.59291537E+02 0.59180877E+02 0.59067559E+02 + 0.58951650E+02 0.58833217E+02 0.58712332E+02 0.58589067E+02 0.58463486E+02 + 0.58335665E+02 0.58205671E+02 0.58073567E+02 0.57939414E+02 + 0.10000000E+01 0.29403288E+01 0.48205256E+01 0.66227551E+01 0.83882534E+01 + 0.10092301E+02 0.11772454E+02 0.13395922E+02 0.14997288E+02 0.16547853E+02 + 0.18075911E+02 0.19559718E+02 0.21019826E+02 0.22440985E+02 0.23837122E+02 + 0.25197614E+02 0.26531941E+02 0.27832403E+02 0.29106143E+02 0.30347265E+02 + 0.31561646E+02 0.32744403E+02 0.33900561E+02 0.35026018E+02 0.36125332E+02 + 0.37195059E+02 0.38239309E+02 0.39254931E+02 0.40245686E+02 0.41208640E+02 + 0.42147418E+02 0.43059253E+02 0.43947610E+02 0.44809916E+02 0.45649340E+02 + 0.46463615E+02 0.47255596E+02 0.48023473E+02 0.48769720E+02 0.49493001E+02 + 0.50195290E+02 0.50875690E+02 0.51535719E+02 0.52174852E+02 0.52794193E+02 + 0.53393596E+02 0.53973857E+02 0.54535104E+02 0.55077929E+02 0.55602584E+02 + 0.56109469E+02 0.56598895E+02 0.57071182E+02 0.57526695E+02 0.57965768E+02 + 0.58388763E+02 0.58795991E+02 0.59187835E+02 0.59564620E+02 0.59926743E+02 + 0.60274507E+02 0.60608284E+02 0.60928320E+02 0.61234989E+02 0.61528541E+02 + 0.61809327E+02 0.62077606E+02 0.62333709E+02 0.62577892E+02 0.62810436E+02 + 0.63031627E+02 0.63241755E+02 0.63441154E+02 0.63630112E+02 0.63808913E+02 + 0.63977767E+02 0.64136929E+02 0.64286617E+02 0.64427101E+02 0.64558605E+02 + 0.64681385E+02 0.64795645E+02 0.64901645E+02 0.64999589E+02 0.65089735E+02 + 0.65172259E+02 0.65247376E+02 0.65315237E+02 0.65376053E+02 0.65429978E+02 + 0.65477201E+02 0.65517864E+02 0.65552144E+02 0.65580180E+02 0.65602128E+02 + 0.65618113E+02 0.65628292E+02 0.65632808E+02 0.65631827E+02 0.65625499E+02 + 0.65613987E+02 0.65597422E+02 0.65575946E+02 0.65549681E+02 0.65518748E+02 + 0.65483258E+02 0.65443337E+02 0.65399107E+02 0.65350691E+02 0.65298197E+02 + 0.65241715E+02 0.65181319E+02 0.65117100E+02 0.65049159E+02 0.64977603E+02 + 0.64902514E+02 0.64823968E+02 0.64742046E+02 0.64656846E+02 0.64568450E+02 + 0.64476925E+02 0.64382339E+02 0.64284781E+02 0.64184323E+02 0.64081030E+02 + 0.63974984E+02 0.63866273E+02 0.63754965E+02 0.63641124E+02 + 0.10000000E+01 0.29383741E+01 0.48139622E+01 0.66086879E+01 0.83646652E+01 + 0.10057539E+02 0.11725261E+02 0.13335315E+02 0.14922268E+02 0.16457689E+02 + 0.17969815E+02 0.19437140E+02 0.20880311E+02 0.22284179E+02 0.23662959E+02 + 0.25005916E+02 0.26322980E+02 0.27606135E+02 0.28863138E+02 0.30087642E+02 + 0.31286228E+02 0.32453469E+02 0.33595107E+02 0.34706478E+02 0.35792886E+02 + 0.36850377E+02 0.37883768E+02 0.38889385E+02 0.39871614E+02 0.40827028E+02 + 0.41759835E+02 0.42666842E+02 0.43552007E+02 0.44412376E+02 0.45251512E+02 + 0.46066862E+02 0.46861594E+02 0.47633695E+02 0.48385862E+02 0.49116643E+02 + 0.49828157E+02 0.50519441E+02 0.51192103E+02 0.51845573E+02 0.52481005E+02 + 0.53098224E+02 0.53698063E+02 0.54280614E+02 0.54846497E+02 0.55395927E+02 + 0.55929321E+02 0.56446938E+02 0.56949095E+02 0.57436105E+02 0.57908286E+02 + 0.58365951E+02 0.58809384E+02 0.59238925E+02 0.59654868E+02 0.60057589E+02 + 0.60447360E+02 0.60824523E+02 0.61189272E+02 0.61541938E+02 0.61882728E+02 + 0.62211938E+02 0.62529785E+02 0.62836551E+02 0.63132465E+02 0.63417752E+02 + 0.63692671E+02 0.63957463E+02 0.64212438E+02 0.64457818E+02 0.64693851E+02 + 0.64920704E+02 0.65138592E+02 0.65347681E+02 0.65548193E+02 0.65740326E+02 + 0.65924299E+02 0.66100283E+02 0.66268495E+02 0.66429107E+02 0.66582344E+02 + 0.66728355E+02 0.66867332E+02 0.66999393E+02 0.67124727E+02 0.67243448E+02 + 0.67355727E+02 0.67461673E+02 0.67561448E+02 0.67655156E+02 0.67742942E+02 + 0.67824898E+02 0.67901162E+02 0.67971844E+02 0.68037092E+02 0.68097022E+02 + 0.68151778E+02 0.68201470E+02 0.68246241E+02 0.68286194E+02 0.68321443E+02 + 0.68352072E+02 0.68378203E+02 0.68399935E+02 0.68417384E+02 0.68430639E+02 + 0.68439775E+02 0.68444858E+02 0.68445976E+02 0.68443214E+02 0.68436661E+02 + 0.68426393E+02 0.68412483E+02 0.68394997E+02 0.68374012E+02 0.68349608E+02 + 0.68321851E+02 0.68290812E+02 0.68256566E+02 0.68219177E+02 0.68178710E+02 + 0.68135232E+02 0.68088824E+02 0.68039544E+02 0.67987453E+02 + 128 + 0.10000000E+01 0.24624389E+01 0.32980690E+01 0.35268612E+01 0.33721500E+01 + 0.29900425E+01 0.25158804E+01 0.20332651E+01 0.15931657E+01 0.12111088E+01 + 0.89350979E+00 0.63671331E+00 0.43677893E+00 0.28526557E+00 0.17494158E+00 + 0.98674993E-01 0.50453458E-01 0.22913870E-01 0.87325855E-02 0.20347475E-02 + -0.46453058E-03 -0.15695207E-03 0.19226126E-02 0.45774759E-02 0.65695258E-02 + 0.72462777E-02 0.66062870E-02 0.50791136E-02 0.31276609E-02 0.10961841E-02 + -0.75453013E-03 -0.21908670E-02 -0.30196687E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.25981905E+01 0.37523851E+01 0.44191196E+01 0.47131938E+01 + 0.47184300E+01 0.45218147E+01 0.41908728E+01 0.37790427E+01 0.33175571E+01 + 0.28372904E+01 0.23611680E+01 0.19131696E+01 0.15070861E+01 0.11547359E+01 + 0.86066816E+00 0.62686841E+00 0.44795339E+00 0.31582051E+00 0.22043616E+00 + 0.15348887E+00 0.10805009E+00 0.78011548E-01 0.58044509E-01 0.43971104E-01 + 0.33132577E-01 0.24239293E-01 0.16869949E-01 0.10897628E-01 0.61833996E-02 + 0.25834985E-02 0.17727084E-04 -0.15598683E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26540778E+01 0.39556670E+01 0.48602946E+01 0.54424338E+01 + 0.57534813E+01 0.58465872E+01 0.57657053E+01 0.55476297E+01 0.52162301E+01 + 0.48003781E+01 0.43266612E+01 0.38269118E+01 0.33253567E+01 0.28455714E+01 + 0.24033087E+01 0.20112242E+01 0.16726525E+01 0.13870436E+01 0.11490177E+01 + 0.95288056E+00 0.79218037E+00 0.66036738E+00 0.55122509E+00 0.45971380E+00 + 0.38223826E+00 0.31640835E+00 0.26062317E+00 0.21361580E+00 0.17423488E+00 + 0.14145742E+00 0.11436523E+00 0.92200481E-01 0.74259124E-01 0.59882943E-01 + 0.48454376E-01 0.39405118E-01 0.32230466E-01 0.26505287E-01 0.21857158E-01 + 0.18016723E-01 0.14770282E-01 0.11989508E-01 0.96161599E-02 0.76151886E-02 + 0.59653163E-02 0.46242320E-02 0.35355542E-02 0.26647756E-02 0.20137164E-02 + 0.15535683E-02 0.12460996E-02 0.10515783E-02 0.92981605E-03 0.84156821E-03 + 0.76933861E-03 0.69580448E-03 0.59424457E-03 0.46852808E-03 0.33032931E-03 + 0.21938807E-03 0.14943457E-03 0.12092890E-03 0.13920659E-03 0.18744751E-03 + 0.25622169E-03 0.34958365E-03 0.42445991E-03 0.46695213E-03 0.47123215E-03 + 0.41901791E-03 0.34035252E-03 0.23660204E-03 0.10298716E-03 -0.30108696E-04 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26862813E+01 0.40739470E+01 0.51308453E+01 0.59159942E+01 + 0.64660453E+01 0.68155598E+01 0.69935286E+01 0.70244752E+01 0.69245962E+01 + 0.67142518E+01 0.64130827E+01 0.60462848E+01 0.56350616E+01 0.52017193E+01 + 0.47636442E+01 0.43367124E+01 0.39299137E+01 0.35495044E+01 0.31972103E+01 + 0.28736365E+01 0.25775560E+01 0.23069600E+01 0.20593945E+01 0.18327388E+01 + 0.16256280E+01 0.14369684E+01 0.12659700E+01 0.11118506E+01 0.97368188E+00 + 0.85047573E+00 0.74109054E+00 0.64443299E+00 0.55934186E+00 0.48470717E+00 + 0.41939861E+00 0.36237263E+00 0.31262193E+00 0.26925203E+00 0.23140909E+00 + 0.19836172E+00 0.16950853E+00 0.14433172E+00 0.12239122E+00 0.10332760E+00 + 0.86808810E-01 0.72571309E-01 0.60375856E-01 0.50008752E-01 0.41253522E-01 + 0.33894134E-01 0.27728568E-01 0.22583432E-01 0.18311918E-01 0.14782401E-01 + 0.11862898E-01 0.94471674E-02 0.74629531E-02 0.58807314E-02 0.46566549E-02 + 0.37147964E-02 0.29748096E-02 0.23908985E-02 0.19155688E-02 0.15388474E-02 + 0.12451011E-02 0.10067362E-02 0.81967179E-03 0.67393388E-03 0.56245149E-03 + 0.46575324E-03 0.38697732E-03 0.32508955E-03 0.29349548E-03 0.26781468E-03 + 0.23697059E-03 0.21440246E-03 0.21160619E-03 0.24099388E-03 0.27970521E-03 + 0.30164807E-03 0.30777635E-03 0.30967118E-03 0.31121759E-03 0.29041840E-03 + 0.23645238E-03 0.17900169E-03 0.12809581E-03 0.10383230E-03 0.69923013E-04 + 0.24725857E-04 -0.22207645E-05 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27135594E+01 0.41714623E+01 0.53474151E+01 0.62891819E+01 + 0.70229681E+01 0.75714911E+01 0.79543211E+01 0.81888096E+01 0.82872692E+01 + 0.82656514E+01 0.81395228E+01 0.79289919E+01 0.76517033E+01 0.73267704E+01 + 0.69698762E+01 0.65961037E+01 0.62155850E+01 0.58366728E+01 0.54640927E+01 + 0.51015066E+01 0.47506560E+01 0.44126119E+01 0.40877712E+01 0.37763669E+01 + 0.34792274E+01 0.31967665E+01 0.29296692E+01 0.26783365E+01 0.24429712E+01 + 0.22235336E+01 0.20197567E+01 0.18312356E+01 0.16574792E+01 0.14979056E+01 + 0.13518158E+01 0.12184925E+01 0.10971102E+01 0.98684185E+00 0.88674167E+00 + 0.79589197E+00 0.71351464E+00 0.63891954E+00 0.57142554E+00 0.51044141E+00 + 0.45539910E+00 0.40580304E+00 0.36119333E+00 0.32118870E+00 0.28525543E+00 + 0.25302647E+00 0.22402936E+00 0.19800658E+00 0.17463786E+00 0.15370752E+00 + 0.13501082E+00 0.11838137E+00 0.10371405E+00 0.90881406E-01 0.79716169E-01 + 0.69992156E-01 0.61468880E-01 0.53962512E-01 0.47358565E-01 0.41557384E-01 + 0.36480445E-01 0.32025584E-01 0.28117780E-01 0.24713862E-01 0.21749910E-01 + 0.19188549E-01 0.16971370E-01 0.15047978E-01 0.13390800E-01 0.11961666E-01 + 0.10708975E-01 0.95858986E-02 0.85674712E-02 0.76549755E-02 0.68337419E-02 + 0.60974842E-02 0.54069858E-02 0.47685627E-02 0.41940425E-02 0.36745668E-02 + 0.32083988E-02 0.28001020E-02 0.24386851E-02 0.21209227E-02 0.18353773E-02 + 0.15720073E-02 0.13406847E-02 0.11370296E-02 0.98769730E-03 0.86375903E-03 + 0.75569554E-03 0.65411604E-03 0.56756073E-03 0.51853277E-03 0.49877828E-03 + 0.47059864E-03 0.41862511E-03 0.35369926E-03 0.29653195E-03 0.24242257E-03 + 0.17710862E-03 0.87307197E-04 -0.15132881E-04 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27315116E+01 0.42345778E+01 0.54864460E+01 0.65302373E+01 + 0.73872981E+01 0.80749661E+01 0.86080550E+01 0.90001348E+01 0.92611016E+01 + 0.94040686E+01 0.94416982E+01 0.93903323E+01 0.92644863E+01 0.90798898E+01 + 0.88494719E+01 0.85858411E+01 0.82979890E+01 0.79937908E+01 0.76784015E+01 + 0.73561996E+01 0.70300110E+01 0.67022770E+01 0.63748513E+01 0.60492571E+01 + 0.57275892E+01 0.54112558E+01 0.51020321E+01 0.48012855E+01 0.45102422E+01 + 0.42297862E+01 0.39605843E+01 0.37030139E+01 0.34574841E+01 0.32241504E+01 + 0.30031378E+01 0.27944808E+01 0.25980340E+01 0.24135941E+01 0.22406989E+01 + 0.20788464E+01 0.19276031E+01 0.17865816E+01 0.16552725E+01 0.15331998E+01 + 0.14197842E+01 0.13144955E+01 0.12168316E+01 0.11264046E+01 0.10425380E+01 + 0.96483101E+00 0.89262689E+00 0.82564047E+00 0.76344228E+00 0.70577185E+00 + 0.65232163E+00 0.60285742E+00 0.55721644E+00 0.51516071E+00 0.47645721E+00 + 0.44074681E+00 0.40771246E+00 0.37705807E+00 0.34859876E+00 0.32224172E+00 + 0.29787956E+00 0.27540588E+00 0.25461616E+00 0.23536400E+00 0.21750991E+00 + 0.20099041E+00 0.18574083E+00 0.17167704E+00 0.15870694E+00 0.14670999E+00 + 0.13557742E+00 0.12524750E+00 0.11567459E+00 0.10681773E+00 0.98631632E-01 + 0.91061717E-01 0.84054839E-01 0.77571499E-01 0.71581141E-01 0.66055236E-01 + 0.60967184E-01 0.56262353E-01 0.51889061E-01 0.47823016E-01 0.44027799E-01 + 0.40498028E-01 0.37229038E-01 0.34165207E-01 0.31314148E-01 0.28662474E-01 + 0.26208557E-01 0.23964580E-01 0.21902919E-01 0.20018670E-01 0.18327135E-01 + 0.16806043E-01 0.15439106E-01 0.14192991E-01 0.13014607E-01 0.11916158E-01 + 0.10914715E-01 0.10022686E-01 0.92086350E-02 0.84206985E-02 0.76676504E-02 + 0.69927952E-02 0.64047161E-02 0.58779069E-02 0.53926901E-02 0.49230188E-02 + 0.44798813E-02 0.40773729E-02 0.37097026E-02 0.33485330E-02 0.29732836E-02 + 0.26279573E-02 0.23202354E-02 0.20504714E-02 0.18148660E-02 0.16002756E-02 + 0.14192836E-02 0.12813932E-02 0.11812944E-02 0.10896294E-02 + 0.10000000E+01 0.27562891E+01 0.43218948E+01 0.56781227E+01 0.68615100E+01 + 0.78867316E+01 0.87642668E+01 0.95027763E+01 0.10111215E+02 0.10596352E+02 + 0.10967869E+02 0.11234840E+02 0.11409046E+02 0.11501102E+02 0.11522516E+02 + 0.11482670E+02 0.11390896E+02 0.11254387E+02 0.11079982E+02 0.10872899E+02 + 0.10637937E+02 0.10378827E+02 0.10099287E+02 0.98025790E+01 0.94915167E+01 + 0.91694470E+01 0.88388173E+01 0.85025725E+01 0.81631824E+01 0.78230943E+01 + 0.74843375E+01 0.71487915E+01 0.68179092E+01 0.64932642E+01 0.61760777E+01 + 0.58675746E+01 0.55687883E+01 0.52804973E+01 0.50033213E+01 0.47374908E+01 + 0.44830897E+01 0.42401957E+01 0.40089168E+01 0.37891262E+01 0.35806421E+01 + 0.33830700E+01 0.31960368E+01 0.30191341E+01 0.28520995E+01 0.26942298E+01 + 0.25451031E+01 0.24039495E+01 0.22705220E+01 0.21443537E+01 0.20251936E+01 + 0.19126409E+01 0.18063347E+01 0.17060657E+01 0.16115230E+01 0.15224504E+01 + 0.14383875E+01 0.13589053E+01 0.12836133E+01 0.12122801E+01 0.11448090E+01 + 0.10810258E+01 0.10207790E+01 0.96375535E+00 0.90974560E+00 0.85858650E+00 + 0.81016957E+00 0.76437292E+00 0.72106323E+00 0.68009130E+00 0.64132327E+00 + 0.60464650E+00 0.56992434E+00 0.53705602E+00 0.50595800E+00 0.47654292E+00 + 0.44876713E+00 0.42255082E+00 0.39779402E+00 0.37439957E+00 0.35228818E+00 + 0.33139054E+00 0.31164576E+00 0.29300606E+00 0.27541421E+00 0.25880964E+00 + 0.24315048E+00 0.22839626E+00 0.21449751E+00 0.20141505E+00 0.18911906E+00 + 0.17755587E+00 0.16668255E+00 0.15645139E+00 0.14681389E+00 0.13774864E+00 + 0.12922111E+00 0.12121797E+00 0.11369509E+00 0.10663373E+00 0.10000718E+00 + 0.93783896E-01 0.87938052E-01 0.82426283E-01 0.77231681E-01 0.72349963E-01 + 0.67754465E-01 0.63406445E-01 0.59298643E-01 0.55440009E-01 0.51820415E-01 + 0.48437715E-01 0.45262896E-01 0.42269450E-01 0.39468670E-01 0.36858164E-01 + 0.34437889E-01 0.32198914E-01 0.30085443E-01 0.28098628E-01 0.26224211E-01 + 0.24476400E-01 0.22853884E-01 0.21332297E-01 0.19908868E-01 + 0.10000000E+01 0.27744959E+01 0.43856785E+01 0.58177463E+01 0.71038557E+01 + 0.82547673E+01 0.92776120E+01 0.10177244E+02 0.10960059E+02 0.11630375E+02 + 0.12195584E+02 0.12662027E+02 0.13038421E+02 0.13332409E+02 0.13552383E+02 + 0.13704804E+02 0.13796183E+02 0.13831681E+02 0.13816558E+02 0.13755154E+02 + 0.13651694E+02 0.13509764E+02 0.13333142E+02 0.13125379E+02 0.12889589E+02 + 0.12629435E+02 0.12347724E+02 0.12047806E+02 0.11732638E+02 0.11405242E+02 + 0.11068308E+02 0.10724480E+02 0.10375917E+02 0.10025008E+02 0.96737757E+01 + 0.93243009E+01 0.89784458E+01 0.86378307E+01 0.83038052E+01 0.79773074E+01 + 0.76591273E+01 0.73499584E+01 0.70505038E+01 0.67611627E+01 0.64822114E+01 + 0.62136384E+01 0.59554168E+01 0.57074368E+01 0.54696952E+01 0.52416906E+01 + 0.50231588E+01 0.48134476E+01 0.46124311E+01 0.44197191E+01 0.42351467E+01 + 0.40583652E+01 0.38890641E+01 0.37270469E+01 0.35719783E+01 0.34236273E+01 + 0.32815222E+01 0.31452412E+01 0.30143584E+01 0.28886279E+01 0.27679770E+01 + 0.26522202E+01 0.25412081E+01 0.24345884E+01 0.23321455E+01 0.22337140E+01 + 0.21392200E+01 0.20485599E+01 0.19615915E+01 0.18781511E+01 0.17980722E+01 + 0.17212073E+01 0.16474383E+01 0.15766298E+01 0.15086788E+01 0.14434966E+01 + 0.13810109E+01 0.13211483E+01 0.12637869E+01 0.12087915E+01 0.11560641E+01 + 0.11055401E+01 0.10571565E+01 0.10108345E+01 0.96649462E+00 0.92402911E+00 + 0.88335932E+00 0.84443511E+00 0.80720305E+00 0.77159134E+00 0.73752544E+00 + 0.70493939E+00 0.67377387E+00 0.64395716E+00 0.61542359E+00 0.58813068E+00 + 0.56203490E+00 0.53709920E+00 0.51327500E+00 0.49050919E+00 0.46873339E+00 + 0.44789881E+00 0.42798051E+00 0.40897665E+00 0.39083783E+00 0.37349852E+00 + 0.35687698E+00 0.34093862E+00 0.32565979E+00 0.31104091E+00 0.29705900E+00 + 0.28366729E+00 0.27084153E+00 0.25855574E+00 0.24682691E+00 0.23565330E+00 + 0.22501885E+00 0.21489531E+00 0.20525337E+00 0.19606628E+00 0.18732510E+00 + 0.17899783E+00 0.17105863E+00 0.16346611E+00 0.15622034E+00 + 0.10000000E+01 0.27904566E+01 0.44411918E+01 0.59387245E+01 0.73138214E+01 + 0.85742065E+01 0.97250600E+01 0.10768308E+02 0.11708746E+02 0.12548437E+02 + 0.13293076E+02 0.13946621E+02 0.14515567E+02 0.15005129E+02 0.15421343E+02 + 0.15768288E+02 0.16050171E+02 0.16270243E+02 0.16432161E+02 0.16539105E+02 + 0.16594353E+02 0.16600870E+02 0.16561935E+02 0.16480770E+02 0.16360277E+02 + 0.16203882E+02 0.16014343E+02 0.15794957E+02 0.15548723E+02 0.15278849E+02 + 0.14988292E+02 0.14680091E+02 0.14356833E+02 0.14021414E+02 0.13676394E+02 + 0.13324462E+02 0.12968128E+02 0.12609654E+02 0.12251001E+02 0.11893771E+02 + 0.11539398E+02 0.11189159E+02 0.10844340E+02 0.10505908E+02 0.10174663E+02 + 0.98510589E+01 0.95355111E+01 0.92283026E+01 0.89297841E+01 0.86397912E+01 + 0.83583191E+01 0.80850000E+01 0.78199266E+01 0.75629178E+01 0.73139464E+01 + 0.70728009E+01 0.68392782E+01 0.66132583E+01 0.63944751E+01 0.61828015E+01 + 0.59778579E+01 0.57793082E+01 0.55867808E+01 0.54000362E+01 0.52190267E+01 + 0.50436317E+01 0.48737646E+01 0.47090996E+01 0.45494450E+01 0.43946377E+01 + 0.42446328E+01 0.40993746E+01 0.39587727E+01 0.38226742E+01 0.36909012E+01 + 0.35632757E+01 0.34396606E+01 0.33199481E+01 0.32040918E+01 0.30920225E+01 + 0.29836455E+01 0.28788468E+01 0.27774932E+01 0.26794744E+01 0.25847062E+01 + 0.24931254E+01 0.24046599E+01 0.23191931E+01 0.22366216E+01 0.21568414E+01 + 0.20797813E+01 0.20053690E+01 0.19335162E+01 0.18641364E+01 0.17971504E+01 + 0.17324960E+01 0.16700776E+01 0.16098500E+01 0.15517168E+01 0.14955969E+01 + 0.14414504E+01 0.13892269E+01 0.13388686E+01 0.12902997E+01 0.12434272E+01 + 0.11981716E+01 0.11545137E+01 0.11124304E+01 0.10718790E+01 0.10327823E+01 + 0.99504944E+00 0.95860935E+00 0.92346225E+00 0.88959323E+00 0.85697140E+00 + 0.82553883E+00 0.79522127E+00 0.76598502E+00 0.73780891E+00 0.71069086E+00 + 0.68459019E+00 0.65947557E+00 0.63528580E+00 0.61195048E+00 0.58947155E+00 + 0.56782545E+00 0.54698456E+00 0.52693464E+00 0.50762258E+00 + 0.10000000E+01 0.28026464E+01 0.44833213E+01 0.60305049E+01 0.74738404E+01 + 0.88189860E+01 0.10070687E+02 0.11228830E+02 0.12297767E+02 0.13277637E+02 + 0.14173194E+02 0.14986409E+02 0.15722462E+02 0.16384657E+02 0.16977609E+02 + 0.17503825E+02 0.17966210E+02 0.18366714E+02 0.18707853E+02 0.18991770E+02 + 0.19220795E+02 0.19397102E+02 0.19523151E+02 0.19601444E+02 0.19634282E+02 + 0.19624367E+02 0.19573986E+02 0.19485894E+02 0.19362681E+02 0.19207159E+02 + 0.19022030E+02 0.18810120E+02 0.18573966E+02 0.18316415E+02 0.18040109E+02 + 0.17747808E+02 0.17442171E+02 0.17125668E+02 0.16800485E+02 0.16468571E+02 + 0.16131777E+02 0.15791762E+02 0.15450183E+02 0.15108428E+02 0.14767733E+02 + 0.14429021E+02 0.14093179E+02 0.13760955E+02 0.13433084E+02 0.13109889E+02 + 0.12791720E+02 0.12478657E+02 0.12171087E+02 0.11869149E+02 0.11573055E+02 + 0.11282839E+02 0.10998507E+02 0.10720107E+02 0.10447545E+02 0.10180858E+02 + 0.99198635E+01 0.96644140E+01 0.94142867E+01 0.91693477E+01 0.89296728E+01 + 0.86952171E+01 0.84659805E+01 0.82417470E+01 0.80223968E+01 0.78078549E+01 + 0.75981399E+01 0.73932300E+01 0.71930859E+01 0.69976131E+01 0.68066858E+01 + 0.66201965E+01 0.64380713E+01 0.62602498E+01 0.60866810E+01 0.59173223E+01 + 0.57521184E+01 0.55910016E+01 0.54339052E+01 0.52807441E+01 0.51314504E+01 + 0.49859650E+01 0.48442382E+01 0.47061839E+01 0.45717220E+01 0.44407726E+01 + 0.43132566E+01 0.41891231E+01 0.40683076E+01 0.39507481E+01 0.38363728E+01 + 0.37251171E+01 0.36169039E+01 0.35116461E+01 0.34092625E+01 0.33097099E+01 + 0.32129303E+01 0.31188730E+01 0.30274662E+01 0.29386056E+01 0.28522286E+01 + 0.27682829E+01 0.26867341E+01 0.26075427E+01 0.25306539E+01 0.24559947E+01 + 0.23834712E+01 0.23130340E+01 0.22446491E+01 0.21782685E+01 0.21138383E+01 + 0.20512899E+01 0.19905592E+01 0.19315862E+01 0.18743509E+01 0.18188217E+01 + 0.17649486E+01 0.17126921E+01 0.16619831E+01 0.16127987E+01 0.15650765E+01 + 0.15187927E+01 0.14739190E+01 0.14304141E+01 0.13882290E+01 + 0.10000000E+01 0.28132452E+01 0.45199351E+01 0.61102070E+01 0.76127781E+01 + 0.90313876E+01 0.10370545E+02 0.11628333E+02 0.12808948E+02 0.13910863E+02 + 0.14938254E+02 0.15891356E+02 0.16774351E+02 0.17588859E+02 0.18338425E+02 + 0.19024277E+02 0.19648418E+02 0.20211837E+02 0.20716230E+02 0.21162928E+02 + 0.21553551E+02 0.21889635E+02 0.22172966E+02 0.22405423E+02 0.22588752E+02 + 0.22725012E+02 0.22816027E+02 0.22863980E+02 0.22871002E+02 0.22839443E+02 + 0.22771624E+02 0.22670038E+02 0.22536956E+02 0.22374976E+02 0.22186580E+02 + 0.21974398E+02 0.21741027E+02 0.21488933E+02 0.21220355E+02 0.20937390E+02 + 0.20642076E+02 0.20336253E+02 0.20021805E+02 0.19700412E+02 0.19373618E+02 + 0.19042723E+02 0.18708978E+02 0.18373479E+02 0.18037308E+02 0.17701205E+02 + 0.17365877E+02 0.17031863E+02 0.16699815E+02 0.16370168E+02 0.16043391E+02 + 0.15719803E+02 0.15399670E+02 0.15083257E+02 0.14770698E+02 0.14462181E+02 + 0.14157726E+02 0.13857388E+02 0.13561133E+02 0.13268985E+02 0.12981114E+02 + 0.12697570E+02 0.12418434E+02 0.12143579E+02 0.11873000E+02 0.11606733E+02 + 0.11344853E+02 0.11087392E+02 0.10834325E+02 0.10585600E+02 0.10341190E+02 + 0.10101031E+02 0.98650922E+01 0.96333453E+01 0.94057841E+01 0.91824182E+01 + 0.89632423E+01 0.87482427E+01 0.85373763E+01 0.83305986E+01 0.81278760E+01 + 0.79291888E+01 0.77345551E+01 0.75439498E+01 0.73572910E+01 0.71744907E+01 + 0.69955089E+01 0.68203230E+01 0.66489198E+01 0.64812632E+01 0.63172760E+01 + 0.61568996E+01 0.60000667E+01 0.58467335E+01 0.56968690E+01 0.55504421E+01 + 0.54074108E+01 0.52677162E+01 0.51312616E+01 0.49980078E+01 0.48678773E+01 + 0.47408531E+01 0.46169018E+01 0.44959628E+01 0.43779839E+01 0.42628898E+01 + 0.41505994E+01 0.40410626E+01 0.39342472E+01 0.38301146E+01 0.37286159E+01 + 0.36296684E+01 0.35332077E+01 0.34391793E+01 0.33475579E+01 0.32583070E+01 + 0.31713774E+01 0.30867256E+01 0.30042876E+01 0.29239796E+01 0.28457625E+01 + 0.27695839E+01 0.26954217E+01 0.26232454E+01 0.25530025E+01 + 0.10000000E+01 0.28187246E+01 0.45389696E+01 0.61517401E+01 0.76857581E+01 + 0.91438124E+01 0.10530811E+02 0.11843970E+02 0.13087882E+02 0.14260142E+02 + 0.15365033E+02 0.16401905E+02 0.17374768E+02 0.18284355E+02 0.19133936E+02 + 0.19924184E+02 0.20656982E+02 0.21332963E+02 0.21953627E+02 0.22519951E+02 + 0.23033248E+02 0.23494692E+02 0.23905659E+02 0.24267611E+02 0.24581913E+02 + 0.24850183E+02 0.25073888E+02 0.25254737E+02 0.25394416E+02 0.25494772E+02 + 0.25557676E+02 0.25585101E+02 0.25578908E+02 0.25541197E+02 0.25474016E+02 + 0.25379535E+02 0.25259939E+02 0.25117301E+02 0.24953549E+02 0.24770511E+02 + 0.24569998E+02 0.24353716E+02 0.24123381E+02 0.23880576E+02 0.23626804E+02 + 0.23363366E+02 0.23091560E+02 0.22812573E+02 0.22527576E+02 0.22237496E+02 + 0.21943211E+02 0.21645458E+02 0.21345085E+02 0.21042738E+02 0.20739082E+02 + 0.20434664E+02 0.20129973E+02 0.19825468E+02 0.19521498E+02 0.19218456E+02 + 0.18916573E+02 0.18616103E+02 0.18317211E+02 0.18020073E+02 0.17724966E+02 + 0.17432094E+02 0.17141641E+02 0.16853624E+02 0.16568152E+02 0.16285331E+02 + 0.16005305E+02 0.15728170E+02 0.15453994E+02 0.15182818E+02 0.14914664E+02 + 0.14649547E+02 0.14387495E+02 0.14128506E+02 0.13872633E+02 0.13619915E+02 + 0.13370365E+02 0.13124026E+02 0.12880903E+02 0.12641003E+02 0.12404326E+02 + 0.12170885E+02 0.11940726E+02 0.11713856E+02 0.11490246E+02 0.11269885E+02 + 0.11052761E+02 0.10838887E+02 0.10628299E+02 0.10420966E+02 0.10216868E+02 + 0.10015995E+02 0.98183203E+01 0.96238303E+01 0.94325218E+01 0.92443666E+01 + 0.90593515E+01 0.88774936E+01 0.86987342E+01 0.85230266E+01 0.83503479E+01 + 0.81806697E+01 0.80139913E+01 0.78503257E+01 0.76896330E+01 0.75318810E+01 + 0.73769948E+01 0.72249487E+01 0.70757304E+01 0.69293188E+01 0.67857023E+01 + 0.66448120E+01 0.65065829E+01 0.63709784E+01 0.62379813E+01 0.61075763E+01 + 0.59797459E+01 0.58544367E+01 0.57315893E+01 0.56111505E+01 0.54930879E+01 + 0.53773796E+01 0.52640184E+01 0.51529777E+01 0.50442035E+01 + 0.10000000E+01 0.28242680E+01 0.45583007E+01 0.61939519E+01 0.77597387E+01 + 0.92574514E+01 0.10692108E+02 0.12060040E+02 0.13365999E+02 0.14606801E+02 + 0.15786702E+02 0.16904227E+02 0.17963119E+02 0.18963288E+02 0.19907664E+02 + 0.20796375E+02 0.21631083E+02 0.22412050E+02 0.23140547E+02 0.23817214E+02 + 0.24443104E+02 0.25019115E+02 0.25546347E+02 0.26025931E+02 0.26458954E+02 + 0.26846678E+02 0.27190283E+02 0.27491117E+02 0.27750541E+02 0.27970034E+02 + 0.28151129E+02 0.28295426E+02 0.28404463E+02 0.28479952E+02 0.28523600E+02 + 0.28537210E+02 0.28522639E+02 0.28481642E+02 0.28415910E+02 0.28327045E+02 + 0.28216652E+02 0.28086269E+02 0.27937464E+02 0.27771711E+02 0.27590423E+02 + 0.27394903E+02 0.27186436E+02 0.26966240E+02 0.26735499E+02 0.26495229E+02 + 0.26246421E+02 0.25989945E+02 0.25726758E+02 0.25457656E+02 0.25183435E+02 + 0.24904816E+02 0.24622445E+02 0.24336942E+02 0.24048823E+02 0.23758630E+02 + 0.23466781E+02 0.23173695E+02 0.22879722E+02 0.22585198E+02 0.22290527E+02 + 0.21996016E+02 0.21701974E+02 0.21408541E+02 0.21115927E+02 0.20824360E+02 + 0.20534057E+02 0.20245180E+02 0.19957876E+02 0.19672244E+02 0.19388369E+02 + 0.19106345E+02 0.18826236E+02 0.18548123E+02 0.18272097E+02 0.17998220E+02 + 0.17726560E+02 0.17457165E+02 0.17190082E+02 0.16925340E+02 0.16662990E+02 + 0.16403097E+02 0.16145743E+02 0.15890965E+02 0.15638753E+02 0.15389095E+02 + 0.15142010E+02 0.14897561E+02 0.14655774E+02 0.14416688E+02 0.14180304E+02 + 0.13946608E+02 0.13715604E+02 0.13487310E+02 0.13261729E+02 0.13038893E+02 + 0.12818815E+02 0.12601511E+02 0.12386970E+02 0.12175155E+02 0.11966080E+02 + 0.11759769E+02 0.11556239E+02 0.11355499E+02 0.11157559E+02 0.10962393E+02 + 0.10769958E+02 0.10580245E+02 0.10393262E+02 0.10209005E+02 0.10027473E+02 + 0.98486278E+01 0.96724290E+01 0.94988656E+01 0.93279396E+01 0.91596576E+01 + 0.89940090E+01 0.88309855E+01 0.86705296E+01 0.85125997E+01 0.83571894E+01 + 0.82042828E+01 0.80538767E+01 0.79059845E+01 0.77605648E+01 + 0.10000000E+01 0.28268845E+01 0.45675503E+01 0.62142912E+01 0.77957807E+01 + 0.93135019E+01 0.10772685E+02 0.12169437E+02 0.13508698E+02 0.14787044E+02 + 0.16008858E+02 0.17172394E+02 0.18281455E+02 0.19335661E+02 0.20337969E+02 + 0.21288326E+02 0.22188491E+02 0.23038584E+02 0.23839909E+02 0.24592924E+02 + 0.25298682E+02 0.25957872E+02 0.26571516E+02 0.27140520E+02 0.27665873E+02 + 0.28148607E+02 0.28589766E+02 0.28990479E+02 0.29351923E+02 0.29675305E+02 + 0.29961962E+02 0.30213179E+02 0.30430280E+02 0.30614645E+02 0.30767719E+02 + 0.30890980E+02 0.30985986E+02 0.31054187E+02 0.31096994E+02 0.31115741E+02 + 0.31111793E+02 0.31086432E+02 0.31040992E+02 0.30976715E+02 0.30894812E+02 + 0.30796409E+02 0.30682639E+02 0.30554564E+02 0.30413243E+02 0.30259596E+02 + 0.30094517E+02 0.29918829E+02 0.29733448E+02 0.29539143E+02 0.29336688E+02 + 0.29126802E+02 0.28910151E+02 0.28687376E+02 0.28459057E+02 0.28225778E+02 + 0.27988028E+02 0.27746285E+02 0.27500962E+02 0.27252475E+02 0.27001286E+02 + 0.26747778E+02 0.26492347E+02 0.26235213E+02 0.25976651E+02 0.25716981E+02 + 0.25456476E+02 0.25195345E+02 0.24933817E+02 0.24672077E+02 0.24410272E+02 + 0.24148546E+02 0.23887037E+02 0.23625868E+02 0.23365161E+02 0.23105045E+02 + 0.22845619E+02 0.22586991E+02 0.22329252E+02 0.22072482E+02 0.21816759E+02 + 0.21562166E+02 0.21308812E+02 0.21056782E+02 0.20806118E+02 0.20556865E+02 + 0.20309075E+02 0.20062800E+02 0.19818102E+02 0.19575021E+02 0.19333577E+02 + 0.19093814E+02 0.18855777E+02 0.18619484E+02 0.18384975E+02 0.18152291E+02 + 0.17921469E+02 0.17692545E+02 0.17465521E+02 0.17240400E+02 0.17017203E+02 + 0.16795962E+02 0.16576705E+02 0.16359490E+02 0.16144333E+02 0.15931211E+02 + 0.15720115E+02 0.15511030E+02 0.15303986E+02 0.15099034E+02 0.14896193E+02 + 0.14695433E+02 0.14496718E+02 0.14300063E+02 0.14105478E+02 0.13913008E+02 + 0.13722691E+02 0.13534526E+02 0.13348471E+02 0.13164498E+02 0.12982578E+02 + 0.12802720E+02 0.12624968E+02 0.12449331E+02 0.12275792E+02 + 0.10000000E+01 0.28303771E+01 0.45797953E+01 0.62410868E+01 0.78427861E+01 + 0.93858434E+01 0.10875494E+02 0.12307425E+02 0.13686620E+02 0.15009305E+02 + 0.16279846E+02 0.17496113E+02 0.18661818E+02 0.19776186E+02 0.20842062E+02 + 0.21859112E+02 0.22829064E+02 0.23751820E+02 0.24628653E+02 0.25459808E+02 + 0.26246277E+02 0.26988567E+02 0.27687599E+02 0.28344068E+02 0.28958845E+02 + 0.29532746E+02 0.30066689E+02 0.30561570E+02 0.31018416E+02 0.31438205E+02 + 0.31822086E+02 0.32171102E+02 0.32486370E+02 0.32769014E+02 0.33020270E+02 + 0.33241362E+02 0.33433622E+02 0.33598265E+02 0.33736494E+02 0.33849434E+02 + 0.33938272E+02 0.34004127E+02 0.34048176E+02 0.34071496E+02 0.34075157E+02 + 0.34060150E+02 0.34027504E+02 0.33978199E+02 0.33913218E+02 0.33833430E+02 + 0.33739683E+02 0.33632781E+02 0.33513588E+02 0.33382884E+02 0.33241472E+02 + 0.33090072E+02 0.32929371E+02 0.32760035E+02 0.32582673E+02 0.32397932E+02 + 0.32206357E+02 0.32008482E+02 0.31804799E+02 0.31595762E+02 0.31381877E+02 + 0.31163601E+02 0.30941372E+02 0.30715512E+02 0.30486354E+02 0.30254243E+02 + 0.30019497E+02 0.29782411E+02 0.29543267E+02 0.29302301E+02 0.29059724E+02 + 0.28815736E+02 0.28570515E+02 0.28324232E+02 0.28077069E+02 0.27829194E+02 + 0.27580738E+02 0.27331831E+02 0.27082595E+02 0.26833144E+02 0.26583598E+02 + 0.26334087E+02 0.26084731E+02 0.25835645E+02 0.25586886E+02 0.25338524E+02 + 0.25090648E+02 0.24843354E+02 0.24596731E+02 0.24350819E+02 0.24105672E+02 + 0.23861339E+02 0.23617899E+02 0.23375405E+02 0.23133907E+02 0.22893486E+02 + 0.22654181E+02 0.22416047E+02 0.22179103E+02 0.21943366E+02 0.21708889E+02 + 0.21475696E+02 0.21243831E+02 0.21013369E+02 0.20784371E+02 0.20556840E+02 + 0.20330775E+02 0.20106160E+02 0.19883030E+02 0.19661434E+02 0.19441419E+02 + 0.19223008E+02 0.19006203E+02 0.18791010E+02 0.18577445E+02 0.18365537E+02 + 0.18155321E+02 0.17946822E+02 0.17740053E+02 0.17535020E+02 0.17331709E+02 + 0.17130114E+02 0.16930249E+02 0.16732133E+02 0.16535773E+02 + 0.10000000E+01 0.28323438E+01 0.45868198E+01 0.62566796E+01 0.78705377E+01 + 0.94292583E+01 0.10938124E+02 0.12392779E+02 0.13798222E+02 0.15150633E+02 + 0.16454388E+02 0.17707265E+02 0.18912997E+02 0.20070686E+02 0.21183210E+02 + 0.22250130E+02 0.23273262E+02 0.24252396E+02 0.25188865E+02 0.26082780E+02 + 0.26935152E+02 0.27746327E+02 0.28517228E+02 0.29248377E+02 0.29940614E+02 + 0.30594616E+02 0.31211244E+02 0.31791231E+02 0.32335526E+02 0.32844913E+02 + 0.33320441E+02 0.33762974E+02 0.34173511E+02 0.34552981E+02 0.34902447E+02 + 0.35222904E+02 0.35515508E+02 0.35781269E+02 0.36021228E+02 0.36236315E+02 + 0.36427538E+02 0.36595811E+02 0.36742117E+02 0.36867357E+02 0.36972437E+02 + 0.37058203E+02 0.37125524E+02 0.37175216E+02 0.37208113E+02 0.37224944E+02 + 0.37226451E+02 0.37213336E+02 0.37186368E+02 0.37146241E+02 0.37093642E+02 + 0.37029221E+02 0.36953614E+02 0.36867435E+02 0.36771267E+02 0.36665708E+02 + 0.36551271E+02 0.36428466E+02 0.36297774E+02 0.36159662E+02 0.36014643E+02 + 0.35863181E+02 0.35705705E+02 0.35542573E+02 0.35374151E+02 0.35200815E+02 + 0.35022930E+02 0.34840820E+02 0.34654791E+02 0.34465126E+02 0.34272074E+02 + 0.34075878E+02 0.33876770E+02 0.33674955E+02 0.33470636E+02 0.33264017E+02 + 0.33055259E+02 0.32844534E+02 0.32631997E+02 0.32417788E+02 0.32202063E+02 + 0.31984965E+02 0.31766674E+02 0.31547324E+02 0.31327009E+02 0.31105825E+02 + 0.30883863E+02 0.30661235E+02 0.30438063E+02 0.30214434E+02 0.29990407E+02 + 0.29766061E+02 0.29541471E+02 0.29316710E+02 0.29091872E+02 0.28867035E+02 + 0.28642283E+02 0.28417648E+02 0.28193164E+02 0.27968876E+02 0.27744870E+02 + 0.27521217E+02 0.27297985E+02 0.27075212E+02 0.26852941E+02 0.26631196E+02 + 0.26409976E+02 0.26189338E+02 0.25969360E+02 0.25750078E+02 0.25531533E+02 + 0.25313719E+02 0.25096628E+02 0.24880312E+02 0.24664829E+02 0.24450226E+02 + 0.24236550E+02 0.24023828E+02 0.23812079E+02 0.23601318E+02 0.23391550E+02 + 0.23182805E+02 0.22975090E+02 0.22768425E+02 0.22562821E+02 + 0.10000000E+01 0.28342826E+01 0.45936837E+01 0.62718334E+01 0.78972469E+01 + 0.94706242E+01 0.10997151E+02 0.12472358E+02 0.13901162E+02 0.15279647E+02 + 0.16612113E+02 0.17896204E+02 0.19135585E+02 0.20329201E+02 0.21479875E+02 + 0.22587017E+02 0.23652430E+02 0.24675784E+02 0.25658433E+02 0.26600350E+02 + 0.27502574E+02 0.28365312E+02 0.29189464E+02 0.29975435E+02 0.30724054E+02 + 0.31435892E+02 0.32111786E+02 0.32752364E+02 0.33358508E+02 0.33930893E+02 + 0.34470481E+02 0.34978034E+02 0.35454487E+02 0.35900658E+02 0.36317534E+02 + 0.36705993E+02 0.37067093E+02 0.37401719E+02 0.37710827E+02 0.37995247E+02 + 0.38255907E+02 0.38493628E+02 0.38709313E+02 0.38903792E+02 0.39077876E+02 + 0.39232321E+02 0.39367914E+02 0.39485396E+02 0.39585537E+02 0.39668996E+02 + 0.39736456E+02 0.39788551E+02 0.39825990E+02 0.39849392E+02 0.39859391E+02 + 0.39856617E+02 0.39841653E+02 0.39815075E+02 0.39777431E+02 0.39729277E+02 + 0.39671100E+02 0.39603393E+02 0.39526625E+02 0.39441255E+02 0.39347775E+02 + 0.39246641E+02 0.39138275E+02 0.39023023E+02 0.38901272E+02 0.38773384E+02 + 0.38639734E+02 0.38500654E+02 0.38356449E+02 0.38207420E+02 0.38053825E+02 + 0.37895921E+02 0.37733959E+02 0.37568151E+02 0.37398723E+02 0.37225893E+02 + 0.37049840E+02 0.36870757E+02 0.36688820E+02 0.36504202E+02 0.36317060E+02 + 0.36127574E+02 0.35935919E+02 0.35742251E+02 0.35546701E+02 0.35349381E+02 + 0.35150423E+02 0.34949949E+02 0.34748068E+02 0.34544897E+02 0.34340510E+02 + 0.34135002E+02 0.33928481E+02 0.33721040E+02 0.33512778E+02 0.33303766E+02 + 0.33094099E+02 0.32883839E+02 0.32673030E+02 0.32461767E+02 0.32250105E+02 + 0.32038104E+02 0.31825839E+02 0.31613354E+02 0.31400713E+02 0.31187984E+02 + 0.30975203E+02 0.30762402E+02 0.30549638E+02 0.30336965E+02 0.30124427E+02 + 0.29912058E+02 0.29699886E+02 0.29487967E+02 0.29276350E+02 0.29065083E+02 + 0.28854210E+02 0.28643781E+02 0.28433833E+02 0.28224386E+02 0.28015436E+02 + 0.27806985E+02 0.27599051E+02 0.27391651E+02 0.27184814E+02 + 0.10000000E+01 0.28354136E+01 0.45977695E+01 0.62810348E+01 0.79137054E+01 + 0.94965758E+01 0.11034739E+02 0.12523841E+02 0.13968692E+02 0.15365467E+02 + 0.16718385E+02 0.18025125E+02 0.19289321E+02 0.20509905E+02 0.21689714E+02 + 0.22828150E+02 0.23927071E+02 0.24986087E+02 0.26006587E+02 0.26988458E+02 + 0.27932772E+02 0.28839653E+02 0.29710035E+02 0.30544246E+02 0.31343097E+02 + 0.32107068E+02 0.32836971E+02 0.33533369E+02 0.34197113E+02 0.34828828E+02 + 0.35429428E+02 0.35999578E+02 0.36540146E+02 0.37051845E+02 0.37535599E+02 + 0.37992197E+02 0.38422623E+02 0.38827677E+02 0.39208212E+02 0.39564960E+02 + 0.39898751E+02 0.40210315E+02 0.40500488E+02 0.40769991E+02 0.41019560E+02 + 0.41249848E+02 0.41461552E+02 0.41655319E+02 0.41831817E+02 0.41991639E+02 + 0.42135366E+02 0.42263558E+02 0.42376846E+02 0.42475785E+02 0.42560956E+02 + 0.42632898E+02 0.42692131E+02 0.42739149E+02 0.42774443E+02 0.42798525E+02 + 0.42811843E+02 0.42814851E+02 0.42807961E+02 0.42791589E+02 0.42766170E+02 + 0.42732124E+02 0.42689863E+02 0.42639724E+02 0.42582067E+02 0.42517219E+02 + 0.42445528E+02 0.42367295E+02 0.42282839E+02 0.42192458E+02 0.42096422E+02 + 0.41995000E+02 0.41888422E+02 0.41776893E+02 0.41660641E+02 0.41539898E+02 + 0.41414862E+02 0.41285723E+02 0.41152658E+02 0.41015851E+02 0.40875469E+02 + 0.40731692E+02 0.40584736E+02 0.40434761E+02 0.40281892E+02 0.40126266E+02 + 0.39968005E+02 0.39807245E+02 0.39644126E+02 0.39478769E+02 0.39311274E+02 + 0.39141729E+02 0.38970242E+02 0.38796927E+02 0.38621897E+02 0.38445262E+02 + 0.38267116E+02 0.38087524E+02 0.37906545E+02 0.37724268E+02 0.37540778E+02 + 0.37356150E+02 0.37170479E+02 0.36983817E+02 0.36796228E+02 0.36607778E+02 + 0.36418498E+02 0.36228450E+02 0.36037695E+02 0.35846311E+02 0.35654345E+02 + 0.35461838E+02 0.35268818E+02 0.35075342E+02 0.34881488E+02 0.34687299E+02 + 0.34492830E+02 0.34298169E+02 0.34103340E+02 0.33908363E+02 0.33713242E+02 + 0.33517971E+02 0.33322561E+02 0.33127044E+02 0.32931453E+02 + 0.10000000E+01 0.28380725E+01 0.46071052E+01 0.63015454E+01 0.79496196E+01 + 0.95518066E+01 0.11112981E+02 0.12628548E+02 0.14103166E+02 0.15532839E+02 + 0.16921645E+02 0.18267043E+02 0.19572516E+02 0.20836736E+02 0.22062407E+02 + 0.23248726E+02 0.24397470E+02 0.25508101E+02 0.26581960E+02 0.27618779E+02 + 0.28619598E+02 0.29584415E+02 0.30514124E+02 0.31408921E+02 0.32269595E+02 + 0.33096513E+02 0.33890428E+02 0.34651777E+02 0.35381343E+02 0.36079645E+02 + 0.36747520E+02 0.37385532E+02 0.37994476E+02 0.38574961E+02 0.39127811E+02 + 0.39653704E+02 0.40153533E+02 0.40627998E+02 0.41077883E+02 0.41503834E+02 + 0.41906617E+02 0.42286882E+02 0.42645384E+02 0.42982772E+02 0.43299717E+02 + 0.43596828E+02 0.43874745E+02 0.44134068E+02 0.44375407E+02 0.44599308E+02 + 0.44806328E+02 0.44996990E+02 0.45171881E+02 0.45331530E+02 0.45476464E+02 + 0.45607203E+02 0.45724238E+02 0.45828067E+02 0.45919169E+02 0.45998033E+02 + 0.46065080E+02 0.46120741E+02 0.46165418E+02 0.46199532E+02 0.46223530E+02 + 0.46237809E+02 0.46242790E+02 0.46238786E+02 0.46226153E+02 0.46205240E+02 + 0.46176387E+02 0.46139923E+02 0.46096163E+02 0.46045404E+02 0.45987910E+02 + 0.45923951E+02 0.45853795E+02 0.45777668E+02 0.45695816E+02 0.45608472E+02 + 0.45515837E+02 0.45418124E+02 0.45315518E+02 0.45208221E+02 0.45096425E+02 + 0.44980337E+02 0.44860169E+02 0.44736095E+02 0.44608270E+02 0.44476821E+02 + 0.44341907E+02 0.44203663E+02 0.44062233E+02 0.43917757E+02 0.43770352E+02 + 0.43620120E+02 0.43467186E+02 0.43311686E+02 0.43153732E+02 0.42993441E+02 + 0.42830926E+02 0.42666286E+02 0.42499591E+02 0.42330940E+02 0.42160438E+02 + 0.41988184E+02 0.41814240E+02 0.41638696E+02 0.41461612E+02 0.41283039E+02 + 0.41103074E+02 0.40921768E+02 0.40739218E+02 0.40555499E+02 0.40370661E+02 + 0.40184731E+02 0.39997734E+02 0.39809738E+02 0.39620817E+02 0.39431061E+02 + 0.39240568E+02 0.39049410E+02 0.38857617E+02 0.38665208E+02 0.38472199E+02 + 0.38278575E+02 0.38084356E+02 0.37889580E+02 0.37694271E+02 + 0.10000000E+01 0.28382069E+01 0.46077994E+01 0.63035149E+01 0.79538639E+01 + 0.95596877E+01 0.11125950E+02 0.12648380E+02 0.14131611E+02 0.15571838E+02 + 0.16973113E+02 0.18333034E+02 0.19655115E+02 0.20938134E+02 0.22184848E+02 + 0.23394518E+02 0.24568994E+02 0.25707741E+02 0.26812138E+02 0.27881877E+02 + 0.28918011E+02 0.29920455E+02 0.30890099E+02 0.31827060E+02 0.32732089E+02 + 0.33605472E+02 0.34447950E+02 0.35259881E+02 0.36042008E+02 0.36794747E+02 + 0.37518877E+02 0.38214869E+02 0.38883444E+02 0.39525118E+02 0.40140624E+02 + 0.40730521E+02 0.41295619E+02 0.41836495E+02 0.42353836E+02 0.42848202E+02 + 0.43320240E+02 0.43770508E+02 0.44199667E+02 0.44608258E+02 0.44996852E+02 + 0.45365973E+02 0.45716167E+02 0.46047950E+02 0.46361862E+02 0.46658362E+02 + 0.46937930E+02 0.47201021E+02 0.47448148E+02 0.47679761E+02 0.47896353E+02 + 0.48098395E+02 0.48286333E+02 0.48460610E+02 0.48621651E+02 0.48769879E+02 + 0.48905698E+02 0.49029499E+02 0.49141670E+02 0.49242593E+02 0.49332676E+02 + 0.49412290E+02 0.49481817E+02 0.49541582E+02 0.49591916E+02 0.49633167E+02 + 0.49665658E+02 0.49689691E+02 0.49705568E+02 0.49713601E+02 0.49714076E+02 + 0.49707258E+02 0.49693418E+02 0.49672779E+02 0.49645561E+02 0.49611991E+02 + 0.49572299E+02 0.49526692E+02 0.49475386E+02 0.49418586E+02 0.49356458E+02 + 0.49289217E+02 0.49217076E+02 0.49140220E+02 0.49058824E+02 0.48973019E+02 + 0.48882946E+02 0.48788757E+02 0.48690606E+02 0.48588647E+02 0.48482999E+02 + 0.48373794E+02 0.48261161E+02 0.48145213E+02 0.48026089E+02 0.47903918E+02 + 0.47778822E+02 0.47650912E+02 0.47520260E+02 0.47386945E+02 0.47251058E+02 + 0.47112714E+02 0.46972012E+02 0.46829037E+02 0.46683867E+02 0.46536567E+02 + 0.46387216E+02 0.46235868E+02 0.46082615E+02 0.45927542E+02 0.45770727E+02 + 0.45612214E+02 0.45452033E+02 0.45290249E+02 0.45126961E+02 0.44962242E+02 + 0.44796192E+02 0.44628885E+02 0.44460364E+02 0.44290646E+02 0.44119736E+02 + 0.43947655E+02 0.43774406E+02 0.43600013E+02 0.43424531E+02 + 0.10000000E+01 0.28377034E+01 0.46061700E+01 0.63002561E+01 0.79486298E+01 + 0.95525017E+01 0.11116840E+02 0.12637688E+02 0.14119617E+02 0.15559064E+02 + 0.16960032E+02 0.18320328E+02 0.19643487E+02 0.20928450E+02 0.22178016E+02 + 0.23391567E+02 0.24571013E+02 0.25715885E+02 0.26827591E+02 0.27905846E+02 + 0.28951712E+02 0.29965117E+02 0.30946955E+02 0.31897337E+02 0.32817026E+02 + 0.33706306E+02 0.34565906E+02 0.35396187E+02 0.36197906E+02 0.36971464E+02 + 0.37717632E+02 0.38436875E+02 0.39129895E+02 0.39797184E+02 0.40439460E+02 + 0.41057263E+02 0.41651361E+02 0.42222301E+02 0.42770741E+02 0.43297204E+02 + 0.43802306E+02 0.44286571E+02 0.44750625E+02 0.45194968E+02 0.45620134E+02 + 0.46026588E+02 0.46414848E+02 0.46785378E+02 0.47138680E+02 0.47475161E+02 + 0.47795268E+02 0.48099408E+02 0.48388049E+02 0.48661609E+02 0.48920530E+02 + 0.49165233E+02 0.49396125E+02 0.49613592E+02 0.49818035E+02 0.50009838E+02 + 0.50189361E+02 0.50356955E+02 0.50512971E+02 0.50657766E+02 0.50791711E+02 + 0.50915163E+02 0.51028470E+02 0.51131900E+02 0.51225760E+02 0.51310368E+02 + 0.51386038E+02 0.51453066E+02 0.51511752E+02 0.51562374E+02 0.51605186E+02 + 0.51640419E+02 0.51668330E+02 0.51689140E+02 0.51703072E+02 0.51710352E+02 + 0.51711186E+02 0.51705758E+02 0.51694262E+02 0.51676903E+02 0.51653865E+02 + 0.51625355E+02 0.51591570E+02 0.51552701E+02 0.51508891E+02 0.51460283E+02 + 0.51407024E+02 0.51349266E+02 0.51287151E+02 0.51220818E+02 0.51150386E+02 + 0.51075980E+02 0.50997751E+02 0.50915838E+02 0.50830355E+02 0.50741424E+02 + 0.50649145E+02 0.50553607E+02 0.50454910E+02 0.50353171E+02 0.50248499E+02 + 0.50140982E+02 0.50030699E+02 0.49917741E+02 0.49802168E+02 0.49684078E+02 + 0.49563551E+02 0.49440649E+02 0.49315459E+02 0.49188039E+02 0.49058468E+02 + 0.48926792E+02 0.48793082E+02 0.48657407E+02 0.48519841E+02 0.48380465E+02 + 0.48239371E+02 0.48096635E+02 0.47952320E+02 0.47806466E+02 0.47659058E+02 + 0.47510100E+02 0.47359597E+02 0.47207570E+02 0.47054070E+02 + 0.10000000E+01 0.28399340E+01 0.46140120E+01 0.63175347E+01 0.79788907E+01 + 0.95991028E+01 0.11182877E+02 0.12726146E+02 0.14233273E+02 0.15700622E+02 + 0.17132025E+02 0.18525171E+02 0.19883429E+02 0.21205578E+02 0.22494278E+02 + 0.23748780E+02 0.24970911E+02 0.26160102E+02 0.27317701E+02 0.28443334E+02 + 0.29538025E+02 0.30601608E+02 0.31634940E+02 0.32638041E+02 0.33611641E+02 + 0.34555936E+02 0.35471618E+02 0.36358961E+02 0.37218651E+02 0.38051020E+02 + 0.38856764E+02 0.39636255E+02 0.40390139E+02 0.41118834E+02 0.41822980E+02 + 0.42503052E+02 0.43159746E+02 0.43793527E+02 0.44405008E+02 0.44994622E+02 + 0.45562935E+02 0.46110413E+02 0.46637646E+02 0.47145075E+02 0.47633198E+02 + 0.48102447E+02 0.48553288E+02 0.48986130E+02 0.49401411E+02 0.49799530E+02 + 0.50180895E+02 0.50545892E+02 0.50894972E+02 0.51228512E+02 0.51546917E+02 + 0.51850580E+02 0.52139882E+02 0.52415201E+02 0.52676907E+02 0.52925394E+02 + 0.53161004E+02 0.53384052E+02 0.53594881E+02 0.53793829E+02 0.53981265E+02 + 0.54157517E+02 0.54322919E+02 0.54477740E+02 0.54622287E+02 0.54756848E+02 + 0.54881734E+02 0.54997234E+02 0.55103636E+02 0.55201207E+02 0.55290187E+02 + 0.55370840E+02 0.55443401E+02 0.55508088E+02 0.55565138E+02 0.55614767E+02 + 0.55657175E+02 0.55692582E+02 0.55721158E+02 0.55743109E+02 0.55758647E+02 + 0.55767963E+02 0.55771266E+02 0.55768755E+02 0.55760591E+02 0.55746905E+02 + 0.55727840E+02 0.55703537E+02 0.55674149E+02 0.55639824E+02 0.55600728E+02 + 0.55556986E+02 0.55508731E+02 0.55456107E+02 0.55399220E+02 0.55338206E+02 + 0.55273217E+02 0.55204350E+02 0.55131719E+02 0.55055439E+02 0.54975592E+02 + 0.54892289E+02 0.54805638E+02 0.54715716E+02 0.54622630E+02 0.54526460E+02 + 0.54427286E+02 0.54325180E+02 0.54220227E+02 0.54112524E+02 0.54002146E+02 + 0.53889162E+02 0.53773600E+02 0.53655543E+02 0.53535087E+02 0.53412320E+02 + 0.53287368E+02 0.53160316E+02 0.53031232E+02 0.52900134E+02 0.52767009E+02 + 0.52631865E+02 0.52494708E+02 0.52355575E+02 0.52214516E+02 + 0.10000000E+01 0.28376970E+01 0.46063982E+01 0.63013611E+01 0.79513060E+01 + 0.95580321E+01 0.11126281E+02 0.12652665E+02 0.14141466E+02 0.15589559E+02 + 0.17000734E+02 0.18373152E+02 0.19710242E+02 0.21011219E+02 0.22278855E+02 + 0.23512731E+02 0.24714759E+02 0.25884590E+02 0.27023623E+02 0.28131609E+02 + 0.29209616E+02 0.30257572E+02 0.31276370E+02 0.32266116E+02 0.33227565E+02 + 0.34160997E+02 0.35067140E+02 0.35946338E+02 0.36799331E+02 0.37626509E+02 + 0.38428605E+02 0.39206047E+02 0.39959520E+02 0.40689487E+02 0.41396627E+02 + 0.42081449E+02 0.42744666E+02 0.43386769E+02 0.44008371E+02 0.44609924E+02 + 0.45191998E+02 0.45755053E+02 0.46299662E+02 0.46826262E+02 0.47335331E+02 + 0.47827276E+02 0.48302546E+02 0.48761528E+02 0.49204641E+02 0.49632223E+02 + 0.50044640E+02 0.50442223E+02 0.50825377E+02 0.51194450E+02 0.51549810E+02 + 0.51891797E+02 0.52220742E+02 0.52536980E+02 0.52840818E+02 0.53132606E+02 + 0.53412626E+02 0.53681145E+02 0.53938455E+02 0.54184829E+02 0.54420584E+02 + 0.54646004E+02 0.54861384E+02 0.55066954E+02 0.55262970E+02 0.55449678E+02 + 0.55627339E+02 0.55796197E+02 0.55956503E+02 0.56108487E+02 0.56252367E+02 + 0.56388359E+02 0.56516646E+02 0.56637422E+02 0.56750869E+02 0.56857179E+02 + 0.56956531E+02 0.57049095E+02 0.57135063E+02 0.57214613E+02 0.57287898E+02 + 0.57355070E+02 0.57416321E+02 0.57471814E+02 0.57521701E+02 0.57566106E+02 + 0.57605146E+02 0.57638966E+02 0.57667679E+02 0.57691419E+02 0.57710324E+02 + 0.57724507E+02 0.57734111E+02 0.57739243E+02 0.57740019E+02 0.57736557E+02 + 0.57728973E+02 0.57717367E+02 0.57701826E+02 0.57682447E+02 0.57659310E+02 + 0.57632518E+02 0.57602150E+02 0.57568300E+02 0.57531066E+02 0.57490493E+02 + 0.57446669E+02 0.57399661E+02 0.57349555E+02 0.57296455E+02 0.57240425E+02 + 0.57181519E+02 0.57119780E+02 0.57055265E+02 0.56988067E+02 0.56918299E+02 + 0.56846057E+02 0.56771427E+02 0.56694464E+02 0.56615174E+02 0.56533547E+02 + 0.56449575E+02 0.56363298E+02 0.56274736E+02 0.56183933E+02 + 128 + 0.10000000E+01 0.23707764E+01 0.30328330E+01 0.31008001E+01 0.28309401E+01 + 0.23905680E+01 0.19109309E+01 0.14642542E+01 0.10888065E+01 0.78619805E+00 + 0.55178129E+00 0.37380965E+00 0.24317935E+00 0.14857717E+00 0.82315871E-01 + 0.38255127E-01 0.12515134E-01 -0.15537511E-03 -0.52922161E-02 -0.68768958E-02 + -0.65422110E-02 -0.45115554E-02 -0.11703585E-02 0.25054689E-02 0.53603568E-02 + 0.67247148E-02 0.65709270E-02 0.53243909E-02 0.35259355E-02 0.16087650E-02 + -0.15839075E-03 -0.16159354E-02 -0.26479220E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.25223521E+01 0.35352726E+01 0.40454059E+01 0.41916346E+01 + 0.40722618E+01 0.37827174E+01 0.33954792E+01 0.29664201E+01 0.25224476E+01 + 0.20880251E+01 0.16787094E+01 0.13105162E+01 0.98959662E+00 0.72156463E+00 + 0.50664782E+00 0.34459618E+00 0.22806409E+00 0.14700991E+00 0.91622829E-01 + 0.55380226E-01 0.33810593E-01 0.22811441E-01 0.18154167E-01 0.16206624E-01 + 0.14654797E-01 0.12529640E-01 0.97800982E-02 0.67250557E-02 0.37397378E-02 + 0.11039144E-02 -0.10175402E-02 -0.25323924E-02 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.25919419E+01 0.37884995E+01 0.45668522E+01 0.50163042E+01 + 0.51974781E+01 0.51720871E+01 0.49909231E+01 0.46973806E+01 0.43160508E+01 + 0.38759471E+01 0.34025176E+01 0.29250563E+01 0.24636972E+01 0.20377371E+01 + 0.16585804E+01 0.13352747E+01 0.10669363E+01 0.84843868E+00 0.67234347E+00 + 0.53288630E+00 0.42471386E+00 0.34186166E+00 0.27783029E+00 0.22691646E+00 + 0.18512856E+00 0.15005985E+00 0.12044866E+00 0.95526045E-01 0.74794903E-01 + 0.57791032E-01 0.44097687E-01 0.33289025E-01 0.24972953E-01 0.18778322E-01 + 0.14349771E-01 0.11329890E-01 0.93609784E-02 0.80730437E-02 0.71468764E-02 + 0.63511680E-02 0.55528154E-02 0.47127331E-02 0.38509499E-02 0.30172709E-02 + 0.22471617E-02 0.15285938E-02 0.87289892E-03 0.33245300E-03 -0.31401085E-04 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26312285E+01 0.39344986E+01 0.48847276E+01 0.55507873E+01 + 0.59753764E+01 0.61999324E+01 0.62590006E+01 0.61826885E+01 0.59882636E+01 + 0.56979818E+01 0.53330582E+01 0.49200907E+01 0.44802986E+01 0.40356749E+01 + 0.36023794E+01 0.31949292E+01 0.28196388E+01 0.24791582E+01 0.21729342E+01 + 0.19004300E+01 0.16601447E+01 0.14490852E+01 0.12631512E+01 0.10983562E+01 + 0.95183630E+00 0.82160143E+00 0.70638513E+00 0.60500245E+00 0.51636365E+00 + 0.43929278E+00 0.37267742E+00 0.31539278E+00 0.26638167E+00 0.22460680E+00 + 0.18913431E+00 0.15906933E+00 0.13361923E+00 0.11202117E+00 0.93584018E-01 + 0.77775067E-01 0.64209945E-01 0.52627617E-01 0.42807002E-01 0.34508399E-01 + 0.27537836E-01 0.21737482E-01 0.16947777E-01 0.13028730E-01 0.98879150E-02 + 0.74380478E-02 0.56120283E-02 0.42991056E-02 0.33899565E-02 0.27804136E-02 + 0.23879660E-02 0.21226059E-02 0.19065545E-02 0.16907771E-02 0.14525376E-02 + 0.12045885E-02 0.95674452E-03 0.71129591E-03 0.49028006E-03 0.30824969E-03 + 0.15596363E-03 0.15490648E-04 -0.10916405E-03 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26645165E+01 0.40542490E+01 0.51403724E+01 0.59766859E+01 + 0.65932615E+01 0.70181092E+01 0.72755039E+01 0.73878569E+01 0.73690393E+01 + 0.72374852E+01 0.70110685E+01 0.67126346E+01 0.63613707E+01 0.59777206E+01 + 0.55778337E+01 0.51769913E+01 0.47840794E+01 0.44052994E+01 0.40439053E+01 + 0.37026659E+01 0.33830313E+01 0.30847801E+01 0.28064710E+01 0.25464895E+01 + 0.23038907E+01 0.20782252E+01 0.18693696E+01 0.16770181E+01 0.15008021E+01 + 0.13401222E+01 0.11943262E+01 0.10626708E+01 0.94426985E+00 0.83812314E+00 + 0.74315897E+00 0.65825376E+00 0.58245647E+00 0.51480241E+00 0.45441271E+00 + 0.40049838E+00 0.35241963E+00 0.30962268E+00 0.27163656E+00 0.23792656E+00 + 0.20799999E+00 0.18142036E+00 0.15783815E+00 0.13691729E+00 0.11844204E+00 + 0.10219881E+00 0.88098019E-01 0.75964345E-01 0.65600844E-01 0.56721064E-01 + 0.49084236E-01 0.42522156E-01 0.36886724E-01 0.32019934E-01 0.27768277E-01 + 0.24055586E-01 0.20822862E-01 0.18035012E-01 0.15643518E-01 0.13590103E-01 + 0.11836967E-01 0.10375464E-01 0.91778653E-02 0.81998961E-02 0.73903687E-02 + 0.67088438E-02 0.61223862E-02 0.55892156E-02 0.50827066E-02 0.45983727E-02 + 0.41324077E-02 0.36657985E-02 0.31998219E-02 0.27386045E-02 0.23151370E-02 + 0.19491753E-02 0.16335301E-02 0.13461786E-02 0.10975307E-02 0.90488560E-03 + 0.75641283E-03 0.62999705E-03 0.50833588E-03 0.39178593E-03 0.29724755E-03 + 0.22063789E-03 0.14380333E-03 0.78403134E-04 0.27098936E-04 0.47681283E-05 + 0.53988522E-05 0.23803156E-04 0.61620008E-04 0.97463221E-04 0.14066449E-03 + 0.17091647E-03 0.19777511E-03 0.23277229E-03 0.24975951E-03 0.22681380E-03 + 0.16835100E-03 0.79209492E-04 -0.77550234E-06 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.26852385E+01 0.41273751E+01 0.52973893E+01 0.62429736E+01 + 0.69884385E+01 0.75555486E+01 0.79630813E+01 0.82290186E+01 0.83648880E+01 + 0.83861955E+01 0.83078458E+01 0.81489807E+01 0.79258013E+01 0.76555427E+01 + 0.73520947E+01 0.70289194E+01 0.66945637E+01 0.63558366E+01 0.60172078E+01 + 0.56827267E+01 0.53552872E+01 0.50363118E+01 0.47262028E+01 0.44251279E+01 + 0.41336486E+01 0.38527335E+01 0.35833787E+01 0.33262882E+01 0.30820241E+01 + 0.28508912E+01 0.26331613E+01 0.24289691E+01 0.22381677E+01 0.20604951E+01 + 0.18954313E+01 0.17423483E+01 0.16007364E+01 0.14698746E+01 0.13491339E+01 + 0.12378491E+01 0.11354159E+01 0.10412143E+01 0.95473775E+00 0.87528418E+00 + 0.80221780E+00 0.73500018E+00 0.67318373E+00 0.61626623E+00 0.56408745E+00 + 0.51619787E+00 0.47252004E+00 0.43267335E+00 0.39639714E+00 0.36326822E+00 + 0.33296143E+00 0.30519587E+00 0.27973836E+00 0.25643031E+00 0.23506159E+00 + 0.21544240E+00 0.19739711E+00 0.18080114E+00 0.16558072E+00 0.15166462E+00 + 0.13892295E+00 0.12721749E+00 0.11645129E+00 0.10658343E+00 0.97560711E-01 + 0.89300781E-01 0.81718018E-01 0.74745520E-01 0.68341585E-01 0.62481886E-01 + 0.57097905E-01 0.52140024E-01 0.47567408E-01 0.43364546E-01 0.39513391E-01 + 0.35978378E-01 0.32726481E-01 0.29749231E-01 0.27050533E-01 0.24615099E-01 + 0.22406143E-01 0.20387436E-01 0.18520100E-01 0.16791454E-01 0.15200050E-01 + 0.13751789E-01 0.12453134E-01 0.11277068E-01 0.10204288E-01 0.92001538E-02 + 0.82767122E-02 0.74608077E-02 0.67393254E-02 0.60900632E-02 0.54835915E-02 + 0.49161665E-02 0.44045649E-02 0.39552047E-02 0.35717814E-02 0.32278750E-02 + 0.29036237E-02 0.25992555E-02 0.23111772E-02 0.20472308E-02 0.18120191E-02 + 0.15923699E-02 0.13777486E-02 0.11628460E-02 0.96490007E-03 0.79314062E-03 + 0.64772537E-03 0.53574578E-03 0.45344864E-03 0.38943646E-03 0.33576128E-03 + 0.27378187E-03 0.21511628E-03 0.16215598E-03 0.10405029E-03 0.34824806E-04 + -0.51809564E-04 0.00000000E+00 0.00000000E+00 0.00000000E+00 + 0.10000000E+01 0.27147729E+01 0.42318923E+01 0.55212495E+01 0.66216144E+01 + 0.75491601E+01 0.83173616E+01 0.89378204E+01 0.94229295E+01 0.97811605E+01 + 0.10024330E+02 0.10163563E+02 0.10213271E+02 0.10185732E+02 0.10093878E+02 + 0.99483658E+01 0.97599197E+01 0.95361566E+01 0.92840946E+01 0.90092131E+01 + 0.87166704E+01 0.84107861E+01 0.80947233E+01 0.77709314E+01 0.74416407E+01 + 0.71091950E+01 0.67763126E+01 0.64454346E+01 0.61186015E+01 0.57976805E+01 + 0.54842666E+01 0.51799482E+01 0.48860824E+01 0.46035896E+01 0.43332168E+01 + 0.40752232E+01 0.38297192E+01 0.35969218E+01 0.33766246E+01 0.31686898E+01 + 0.29728146E+01 0.27886648E+01 0.26157165E+01 0.24535870E+01 0.23014987E+01 + 0.21587128E+01 0.20246586E+01 0.18988416E+01 0.17806085E+01 0.16698468E+01 + 0.15658482E+01 0.14686097E+01 0.13776064E+01 0.12925480E+01 0.12128527E+01 + 0.11380607E+01 0.10678000E+01 0.10017819E+01 0.93976855E+00 0.88147085E+00 + 0.82660402E+00 0.77493520E+00 0.72631282E+00 0.68061087E+00 0.63770283E+00 + 0.59740157E+00 0.55954710E+00 0.52394795E+00 0.49047568E+00 0.45900287E+00 + 0.42944880E+00 0.40171374E+00 0.37569017E+00 0.35127123E+00 0.32833961E+00 + 0.30681895E+00 0.28663835E+00 0.26770804E+00 0.24995402E+00 0.23328054E+00 + 0.21761636E+00 0.20293552E+00 0.18920773E+00 0.17636298E+00 0.16434128E+00 + 0.15308720E+00 0.14256960E+00 0.13278182E+00 0.12368641E+00 0.11522686E+00 + 0.10731861E+00 0.99933003E-01 0.93055638E-01 0.86668858E-01 0.80725010E-01 + 0.75178674E-01 0.69987802E-01 0.65137572E-01 0.60627511E-01 0.56415847E-01 + 0.52481619E-01 0.48779156E-01 0.45305487E-01 0.42070795E-01 0.39065637E-01 + 0.36275051E-01 0.33652216E-01 0.31185714E-01 0.28879382E-01 0.26739156E-01 + 0.24786793E-01 0.22986471E-01 0.21313514E-01 0.19744547E-01 0.18283180E-01 + 0.16931157E-01 0.15676057E-01 0.14534743E-01 0.13480061E-01 0.12494697E-01 + 0.11595505E-01 0.10784195E-01 0.10055001E-01 0.93917621E-02 0.87751642E-02 + 0.82085152E-02 0.76894740E-02 0.72199126E-02 0.67719913E-02 + 0.10000000E+01 0.27360918E+01 0.43067929E+01 0.56826754E+01 0.68978001E+01 + 0.79638248E+01 0.88897543E+01 0.96827184E+01 0.10351474E+02 0.10901991E+02 + 0.11343251E+02 0.11683397E+02 0.11933194E+02 0.12101639E+02 0.12198000E+02 + 0.12229856E+02 0.12205043E+02 0.12129461E+02 0.12009131E+02 0.11849153E+02 + 0.11654508E+02 0.11429698E+02 0.11178426E+02 0.10904035E+02 0.10609708E+02 + 0.10298645E+02 0.99745159E+01 0.96406136E+01 0.92998752E+01 0.89550873E+01 + 0.86088050E+01 0.82636869E+01 0.79221404E+01 0.75860720E+01 0.72571740E+01 + 0.69365129E+01 0.66250188E+01 0.63237512E+01 0.60332140E+01 0.57539411E+01 + 0.54861890E+01 0.52300622E+01 0.49853760E+01 0.47521099E+01 0.45296820E+01 + 0.43175219E+01 0.41152204E+01 0.39224100E+01 0.37384708E+01 0.35634496E+01 + 0.33965658E+01 0.32379077E+01 0.30869195E+01 0.29433464E+01 0.28065876E+01 + 0.26761649E+01 0.25516742E+01 0.24328412E+01 0.23194109E+01 0.22110599E+01 + 0.21074950E+01 0.20084670E+01 0.19138335E+01 0.18234411E+01 0.17371525E+01 + 0.16547715E+01 0.15761317E+01 0.15010326E+01 0.14293190E+01 0.13608158E+01 + 0.12954063E+01 0.12329975E+01 0.11734857E+01 0.11167611E+01 0.10626792E+01 + 0.10111017E+01 0.96193151E+00 0.91506462E+00 0.87040689E+00 0.82785960E+00 + 0.78729646E+00 0.74863094E+00 0.71179733E+00 0.67670807E+00 0.64331017E+00 + 0.61151594E+00 0.58124965E+00 0.55245993E+00 0.52507943E+00 0.49906893E+00 + 0.47437110E+00 0.45090276E+00 0.42859430E+00 0.40738867E+00 0.38722799E+00 + 0.36806310E+00 0.34985125E+00 0.33254040E+00 0.31606835E+00 0.30039006E+00 + 0.28546635E+00 0.27126234E+00 0.25774819E+00 0.24489409E+00 0.23266973E+00 + 0.22105414E+00 0.21002134E+00 0.19953138E+00 0.18956401E+00 0.18008422E+00 + 0.17108361E+00 0.16254928E+00 0.15446080E+00 0.14678297E+00 0.13947190E+00 + 0.13251773E+00 0.12591875E+00 0.11966363E+00 0.11373799E+00 0.10811071E+00 + 0.10275926E+00 0.97673188E-01 0.92843130E-01 0.88258742E-01 0.83911736E-01 + 0.79800898E-01 0.75916021E-01 0.72240113E-01 0.68733786E-01 + 0.10000000E+01 0.27547485E+01 0.43716883E+01 0.58225830E+01 0.71379650E+01 + 0.83263114E+01 0.93936860E+01 0.10343920E+02 0.11183011E+02 0.11914664E+02 + 0.12545474E+02 0.13081083E+02 0.13529309E+02 0.13896421E+02 0.14188649E+02 + 0.14410879E+02 0.14568288E+02 0.14664932E+02 0.14705391E+02 0.14693783E+02 + 0.14634305E+02 0.14530974E+02 0.14387339E+02 0.14206910E+02 0.13993157E+02 + 0.13749529E+02 0.13480034E+02 0.13188315E+02 0.12877804E+02 0.12551873E+02 + 0.12213745E+02 0.11866846E+02 0.11514332E+02 0.11158904E+02 0.10803081E+02 + 0.10448739E+02 0.10097609E+02 0.97515390E+01 0.94117406E+01 0.90794515E+01 + 0.87555889E+01 0.84408253E+01 0.81354820E+01 0.78400002E+01 0.75541486E+01 + 0.72776940E+01 0.70105644E+01 0.67526543E+01 0.65035314E+01 0.62634596E+01 + 0.60317211E+01 0.58085535E+01 0.55934790E+01 0.53863766E+01 0.51867045E+01 + 0.49940405E+01 0.48080415E+01 0.46284991E+01 0.44552171E+01 0.42878941E+01 + 0.41262501E+01 0.39700719E+01 0.38192616E+01 0.36736968E+01 0.35332944E+01 + 0.33978727E+01 0.32672886E+01 0.31413205E+01 0.30198359E+01 0.29026698E+01 + 0.27897143E+01 0.26808851E+01 0.25760888E+01 0.24751819E+01 0.23780030E+01 + 0.22844225E+01 0.21943280E+01 0.21076317E+01 0.20242252E+01 0.19439768E+01 + 0.18667514E+01 0.17924355E+01 0.17209318E+01 0.16521597E+01 0.15860470E+01 + 0.15224878E+01 0.14613944E+01 0.14026696E+01 0.13462363E+01 0.12920393E+01 + 0.12400152E+01 0.11900590E+01 0.11420602E+01 0.10959433E+01 0.10516330E+01 + 0.10090940E+01 0.96825558E+00 0.92901453E+00 0.89129887E+00 0.85505638E+00 + 0.82024098E+00 0.78683775E+00 0.75478295E+00 0.72399464E+00 0.69442125E+00 + 0.66601907E+00 0.63875479E+00 0.61261091E+00 0.58754708E+00 0.56351711E+00 + 0.54046093E+00 0.51833775E+00 0.49713585E+00 0.47683578E+00 0.45739393E+00 + 0.43877379E+00 0.42091693E+00 0.40379905E+00 0.38738812E+00 0.37165084E+00 + 0.35656503E+00 0.34207842E+00 0.32816314E+00 0.31479425E+00 0.30195833E+00 + 0.28963194E+00 0.27779796E+00 0.26644542E+00 0.25553630E+00 + 0.10000000E+01 0.27687961E+01 0.44200029E+01 0.59274047E+01 0.73193999E+01 + 0.86028401E+01 0.97824103E+01 0.10860045E+02 0.11840075E+02 0.12724429E+02 + 0.13517911E+02 0.14224220E+02 0.14849082E+02 0.15396850E+02 0.15871855E+02 + 0.16277268E+02 0.16616503E+02 0.16892226E+02 0.17107683E+02 0.17265864E+02 + 0.17369905E+02 0.17422910E+02 0.17427731E+02 0.17387323E+02 0.17304681E+02 + 0.17182821E+02 0.17025315E+02 0.16835509E+02 0.16616646E+02 0.16372022E+02 + 0.16104894E+02 0.15818775E+02 0.15516972E+02 0.15202471E+02 0.14878125E+02 + 0.14546247E+02 0.14209055E+02 0.13868878E+02 0.13527482E+02 0.13186652E+02 + 0.12847864E+02 0.12512354E+02 0.12180997E+02 0.11854751E+02 0.11533943E+02 + 0.11218842E+02 0.10909819E+02 0.10607141E+02 0.10310783E+02 0.10021279E+02 + 0.97382351E+01 0.94620554E+01 0.91924805E+01 0.89295911E+01 0.86730878E+01 + 0.84227554E+01 0.81784225E+01 0.79400115E+01 0.77074257E+01 0.74804897E+01 + 0.72590634E+01 0.70430349E+01 0.68323852E+01 0.66270566E+01 0.64270179E+01 + 0.62321627E+01 0.60424118E+01 0.58576183E+01 0.56776879E+01 0.55025007E+01 + 0.53320047E+01 0.51661785E+01 0.50049574E+01 0.48482471E+01 0.46959175E+01 + 0.45478862E+01 0.44041085E+01 0.42644971E+01 0.41289454E+01 0.39973238E+01 + 0.38695252E+01 0.37454731E+01 0.36251076E+01 0.35083401E+01 0.33950809E+01 + 0.32852254E+01 0.31786943E+01 0.30754283E+01 0.29753571E+01 0.28784194E+01 + 0.27845178E+01 0.26935584E+01 0.26054439E+01 0.25200900E+01 0.24374310E+01 + 0.23574082E+01 0.22799450E+01 0.22049506E+01 0.21323431E+01 0.20620539E+01 + 0.19940136E+01 0.19281749E+01 0.18644895E+01 0.18028962E+01 0.17433182E+01 + 0.16857072E+01 0.16299984E+01 0.15761179E+01 0.15240362E+01 0.14737168E+01 + 0.14250862E+01 0.13780702E+01 0.13326162E+01 0.12886771E+01 0.12462279E+01 + 0.12051972E+01 0.11655542E+01 0.11272465E+01 0.10902243E+01 0.10544706E+01 + 0.10199306E+01 0.98655655E+00 0.95428823E+00 0.92309639E+00 0.89296266E+00 + 0.86385256E+00 0.83574306E+00 0.80856400E+00 0.78225555E+00 + 0.10000000E+01 0.27811148E+01 0.44622257E+01 0.60189520E+01 0.74776844E+01 + 0.88439216E+01 0.10121191E+02 0.11309919E+02 0.12413133E+02 0.13431374E+02 + 0.14368011E+02 0.15225141E+02 0.16006766E+02 0.16715644E+02 0.17354638E+02 + 0.17925652E+02 0.18430833E+02 0.18871849E+02 0.19250920E+02 0.19570145E+02 + 0.19831785E+02 0.20038149E+02 0.20191441E+02 0.20294054E+02 0.20348450E+02 + 0.20357128E+02 0.20323075E+02 0.20249152E+02 0.20138243E+02 0.19993361E+02 + 0.19817544E+02 0.19614102E+02 0.19386198E+02 0.19136817E+02 0.18868869E+02 + 0.18584874E+02 0.18287286E+02 0.17978661E+02 0.17661122E+02 0.17336804E+02 + 0.17007596E+02 0.16675159E+02 0.16340839E+02 0.16005996E+02 0.15671464E+02 + 0.15338001E+02 0.15006425E+02 0.14677383E+02 0.14351251E+02 0.14028839E+02 + 0.13710141E+02 0.13395777E+02 0.13085802E+02 0.12780515E+02 0.12479871E+02 + 0.12183857E+02 0.11892507E+02 0.11605933E+02 0.11324183E+02 0.11047196E+02 + 0.10774923E+02 0.10507378E+02 0.10244623E+02 0.99866858E+01 0.97336087E+01 + 0.94853468E+01 0.92418820E+01 0.90031359E+01 0.87691038E+01 0.85397477E+01 + 0.83150701E+01 0.80950762E+01 0.78797671E+01 0.76690813E+01 0.74629499E+01 + 0.72613459E+01 0.70642492E+01 0.68716091E+01 0.66833428E+01 0.64993841E+01 + 0.63196775E+01 0.61441789E+01 0.59728357E+01 0.58055863E+01 0.56423677E+01 + 0.54831317E+01 0.53278372E+01 0.51764393E+01 0.50288721E+01 0.48850804E+01 + 0.47450117E+01 0.46085815E+01 0.44757141E+01 0.43463439E+01 0.42203891E+01 + 0.40977928E+01 0.39784818E+01 0.38623729E+01 0.37493872E+01 0.36394577E+01 + 0.35325382E+01 0.34285845E+01 0.33275236E+01 0.32292793E+01 0.31337965E+01 + 0.30410195E+01 0.29509112E+01 0.28634094E+01 0.27784448E+01 0.26959267E+01 + 0.26157847E+01 0.25379755E+01 0.24624584E+01 0.23891794E+01 0.23180800E+01 + 0.22490675E+01 0.21820620E+01 0.21170174E+01 0.20539098E+01 0.19927054E+01 + 0.19333334E+01 0.18757412E+01 0.18198593E+01 0.17656404E+01 0.17130639E+01 + 0.16620935E+01 0.16126815E+01 0.15647613E+01 0.15182808E+01 + 0.10000000E+01 0.27873083E+01 0.44833447E+01 0.60651835E+01 0.75584893E+01 + 0.89684938E+01 0.10298489E+02 0.11548579E+02 0.12721450E+02 0.13817190E+02 + 0.14838629E+02 0.15787203E+02 0.16666175E+02 0.17477627E+02 0.18223925E+02 + 0.18906591E+02 0.19527392E+02 0.20087679E+02 0.20589203E+02 0.21033616E+02 + 0.21422695E+02 0.21758258E+02 0.22042017E+02 0.22275859E+02 0.22461708E+02 + 0.22601564E+02 0.22697778E+02 0.22752645E+02 0.22768500E+02 0.22747775E+02 + 0.22692975E+02 0.22606838E+02 0.22492016E+02 0.22351035E+02 0.22186393E+02 + 0.22000305E+02 0.21794971E+02 0.21572705E+02 0.21335520E+02 0.21085432E+02 + 0.20824285E+02 0.20553768E+02 0.20275340E+02 0.19990469E+02 0.19700232E+02 + 0.19405643E+02 0.19107728E+02 0.18807382E+02 0.18505275E+02 0.18202390E+02 + 0.17899081E+02 0.17596145E+02 0.17293921E+02 0.16992924E+02 0.16693385E+02 + 0.16395540E+02 0.16099643E+02 0.15805970E+02 0.15514746E+02 0.15226089E+02 + 0.14940122E+02 0.14656989E+02 0.14376849E+02 0.14099822E+02 0.13826046E+02 + 0.13555586E+02 0.13288504E+02 0.13024807E+02 0.12764527E+02 0.12507673E+02 + 0.12254303E+02 0.12004494E+02 0.11758322E+02 0.11515777E+02 0.11276812E+02 + 0.11041435E+02 0.10809695E+02 0.10581619E+02 0.10357206E+02 0.10136429E+02 + 0.99192629E+01 0.97056921E+01 0.94957024E+01 0.92893048E+01 0.90864871E+01 + 0.88872441E+01 0.86915521E+01 0.84993823E+01 0.83107371E+01 0.81256031E+01 + 0.79439618E+01 0.77657802E+01 0.75909929E+01 0.74195553E+01 0.72514666E+01 + 0.70867442E+01 0.69253391E+01 0.67671776E+01 0.66121872E+01 0.64603267E+01 + 0.63115740E+01 0.61659345E+01 0.60233480E+01 0.58837672E+01 0.57471433E+01 + 0.56134256E+01 0.54825955E+01 0.53546067E+01 0.52294285E+01 0.51070018E+01 + 0.49872968E+01 0.48702738E+01 0.47558914E+01 0.46440995E+01 0.45348463E+01 + 0.44280639E+01 0.43236934E+01 0.42217162E+01 0.41221001E+01 0.40247855E+01 + 0.39297149E+01 0.38368503E+01 0.37461492E+01 0.36575808E+01 0.35711206E+01 + 0.34867102E+01 0.34042899E+01 0.33238092E+01 0.32452474E+01 + 0.10000000E+01 0.27937449E+01 0.45054586E+01 0.61134081E+01 0.76423496E+01 + 0.90970135E+01 0.10480222E+02 0.11791599E+02 0.13033342E+02 0.14205086E+02 + 0.15309096E+02 0.16346166E+02 0.17318818E+02 0.18228458E+02 0.19076878E+02 + 0.19865161E+02 0.20594643E+02 0.21266330E+02 0.21881581E+02 0.22441680E+02 + 0.22947997E+02 0.23401968E+02 0.23804945E+02 0.24158438E+02 0.24463991E+02 + 0.24723231E+02 0.24938042E+02 0.25110292E+02 0.25241900E+02 0.25334867E+02 + 0.25391274E+02 0.25413407E+02 0.25403502E+02 0.25363733E+02 0.25296259E+02 + 0.25203046E+02 0.25086058E+02 0.24947365E+02 0.24788825E+02 0.24612326E+02 + 0.24419647E+02 0.24212465E+02 0.23992277E+02 0.23760581E+02 0.23518568E+02 + 0.23267394E+02 0.23008235E+02 0.22742145E+02 0.22470030E+02 0.22192996E+02 + 0.21911667E+02 0.21626979E+02 0.21339497E+02 0.21049931E+02 0.20758754E+02 + 0.20466415E+02 0.20173362E+02 0.19880036E+02 0.19586800E+02 0.19293937E+02 + 0.19001738E+02 0.18710489E+02 0.18420460E+02 0.18131875E+02 0.17844953E+02 + 0.17559848E+02 0.17276708E+02 0.16995641E+02 0.16716766E+02 0.16440155E+02 + 0.16165903E+02 0.15894128E+02 0.15624940E+02 0.15358384E+02 0.15094471E+02 + 0.14833254E+02 0.14574806E+02 0.14319187E+02 0.14066422E+02 0.13816522E+02 + 0.13569494E+02 0.13325358E+02 0.13084141E+02 0.12845891E+02 0.12610635E+02 + 0.12378397E+02 0.12149189E+02 0.11923017E+02 0.11699904E+02 0.11479857E+02 + 0.11262910E+02 0.11049062E+02 0.10838272E+02 0.10630544E+02 0.10425890E+02 + 0.10224327E+02 0.10025862E+02 0.98304389E+01 0.96380236E+01 0.94486155E+01 + 0.92622397E+01 0.90789068E+01 0.88985822E+01 0.87212305E+01 0.85468213E+01 + 0.83753372E+01 0.82067945E+01 0.80412030E+01 0.78785331E+01 0.77187426E+01 + 0.75617814E+01 0.74076267E+01 0.72562769E+01 0.71077189E+01 0.69619191E+01 + 0.68187984E+01 0.66783054E+01 0.65404317E+01 0.64051610E+01 0.62724821E+01 + 0.61423406E+01 0.60146937E+01 0.58894905E+01 0.57667210E+01 0.56463815E+01 + 0.55284391E+01 0.54128579E+01 0.52995853E+01 0.51885889E+01 + 0.10000000E+01 0.27965244E+01 0.45150750E+01 0.61347238E+01 0.76801045E+01 + 0.91559879E+01 0.10565174E+02 0.11907367E+02 0.13184722E+02 0.14396869E+02 + 0.15545964E+02 0.16632694E+02 0.17659417E+02 0.18627382E+02 0.19538292E+02 + 0.20393176E+02 0.21193325E+02 0.21939697E+02 0.22633504E+02 0.23275882E+02 + 0.23868029E+02 0.24411181E+02 0.24906507E+02 0.25355287E+02 0.25758818E+02 + 0.26118474E+02 0.26435828E+02 0.26712456E+02 0.26949951E+02 0.27150001E+02 + 0.27314340E+02 0.27444868E+02 0.27543445E+02 0.27611864E+02 0.27651923E+02 + 0.27665274E+02 0.27653574E+02 0.27618560E+02 0.27561809E+02 0.27484910E+02 + 0.27389394E+02 0.27276712E+02 0.27148194E+02 0.27005179E+02 0.26848747E+02 + 0.26679971E+02 0.26499946E+02 0.26309671E+02 0.26110043E+02 0.25902130E+02 + 0.25686615E+02 0.25464421E+02 0.25236180E+02 0.25002637E+02 0.24764352E+02 + 0.24521877E+02 0.24275753E+02 0.24026499E+02 0.23774571E+02 0.23520353E+02 + 0.23264218E+02 0.23006549E+02 0.22747723E+02 0.22488053E+02 0.22227830E+02 + 0.21967306E+02 0.21706706E+02 0.21446210E+02 0.21186002E+02 0.20926240E+02 + 0.20667074E+02 0.20408661E+02 0.20151148E+02 0.19894645E+02 0.19639231E+02 + 0.19385002E+02 0.19132103E+02 0.18880617E+02 0.18630609E+02 0.18382144E+02 + 0.18135279E+02 0.17890084E+02 0.17646610E+02 0.17404932E+02 0.17165105E+02 + 0.16927178E+02 0.16691197E+02 0.16457220E+02 0.16225278E+02 0.15995396E+02 + 0.15767605E+02 0.15541920E+02 0.15318361E+02 0.15096966E+02 0.14877757E+02 + 0.14660783E+02 0.14446051E+02 0.14233536E+02 0.14023271E+02 0.13815274E+02 + 0.13609573E+02 0.13406192E+02 0.13205101E+02 0.13006303E+02 0.12809799E+02 + 0.12615622E+02 0.12423815E+02 0.12234378E+02 0.12047290E+02 0.11862519E+02 + 0.11680078E+02 0.11499969E+02 0.11322208E+02 0.11146785E+02 0.10973662E+02 + 0.10802798E+02 0.10634176E+02 0.10467818E+02 0.10303736E+02 0.10141920E+02 + 0.99823310E+01 0.98249350E+01 0.96697275E+01 0.95167231E+01 0.93659172E+01 + 0.92173035E+01 0.90708333E+01 0.89264726E+01 0.87842209E+01 + 0.10000000E+01 0.28005635E+01 0.45290215E+01 0.61651574E+01 0.77330588E+01 + 0.92372054E+01 0.10680104E+02 0.12061267E+02 0.13382601E+02 0.14643579E+02 + 0.15846092E+02 0.16990562E+02 0.18079007E+02 0.19112377E+02 0.20092130E+02 + 0.21019120E+02 0.21894453E+02 0.22718947E+02 0.23493626E+02 0.24219445E+02 + 0.24897410E+02 0.25528578E+02 0.26113915E+02 0.26654496E+02 0.27151402E+02 + 0.27605767E+02 0.28018909E+02 0.28392147E+02 0.28726816E+02 0.29024322E+02 + 0.29286120E+02 0.29513803E+02 0.29708933E+02 0.29873032E+02 0.30007641E+02 + 0.30114162E+02 0.30194023E+02 0.30248734E+02 0.30279675E+02 0.30288253E+02 + 0.30275829E+02 0.30243717E+02 0.30193138E+02 0.30125314E+02 0.30041289E+02 + 0.29942104E+02 0.29828804E+02 0.29702370E+02 0.29563715E+02 0.29413887E+02 + 0.29253631E+02 0.29083894E+02 0.28905374E+02 0.28718861E+02 0.28524982E+02 + 0.28324368E+02 0.28117624E+02 0.27905346E+02 0.27688074E+02 0.27466268E+02 + 0.27240397E+02 0.27010924E+02 0.26778281E+02 0.26542853E+02 0.26305014E+02 + 0.26065073E+02 0.25823317E+02 0.25580011E+02 0.25335400E+02 0.25089699E+02 + 0.24843115E+02 0.24595846E+02 0.24348086E+02 0.24099983E+02 0.23851653E+02 + 0.23603251E+02 0.23354941E+02 0.23106858E+02 0.22859097E+02 0.22611752E+02 + 0.22364912E+02 0.22118682E+02 0.21873168E+02 0.21628463E+02 0.21384668E+02 + 0.21141841E+02 0.20900060E+02 0.20659391E+02 0.20419896E+02 0.20181649E+02 + 0.19944702E+02 0.19709095E+02 0.19474861E+02 0.19242026E+02 0.19010655E+02 + 0.18780816E+02 0.18552541E+02 0.18325835E+02 0.18100696E+02 0.17877178E+02 + 0.17655345E+02 0.17435260E+02 0.17216944E+02 0.17000395E+02 0.16785616E+02 + 0.16572634E+02 0.16361498E+02 0.16152263E+02 0.15944970E+02 0.15739608E+02 + 0.15536179E+02 0.15334684E+02 0.15135120E+02 0.14937496E+02 0.14741810E+02 + 0.14548036E+02 0.14356188E+02 0.14166297E+02 0.13978390E+02 0.13792474E+02 + 0.13608545E+02 0.13426577E+02 0.13246572E+02 0.13068555E+02 0.12892544E+02 + 0.12718555E+02 0.12546559E+02 0.12376521E+02 0.12208426E+02 + 0.10000000E+01 0.28026508E+01 0.45363516E+01 0.61815173E+01 0.77622043E+01 + 0.92829383E+01 0.10746198E+02 0.12151580E+02 0.13500951E+02 0.14793833E+02 + 0.16032058E+02 0.17216037E+02 0.18347705E+02 0.19427962E+02 0.20458206E+02 + 0.21439275E+02 0.22372267E+02 0.23257958E+02 0.24097311E+02 0.24891181E+02 + 0.25640469E+02 0.26346111E+02 0.27008963E+02 0.27629969E+02 0.28210066E+02 + 0.28750248E+02 0.29251652E+02 0.29715412E+02 0.30142679E+02 0.30534654E+02 + 0.30892581E+02 0.31217814E+02 0.31511679E+02 0.31775451E+02 0.32010432E+02 + 0.32217794E+02 0.32398740E+02 0.32554530E+02 0.32686329E+02 0.32795318E+02 + 0.32882639E+02 0.32949409E+02 0.32996656E+02 0.33025419E+02 0.33036594E+02 + 0.33031075E+02 0.33009784E+02 0.32973580E+02 0.32923265E+02 0.32859780E+02 + 0.32783803E+02 0.32696194E+02 0.32597611E+02 0.32488780E+02 0.32370326E+02 + 0.32242857E+02 0.32106966E+02 0.31963258E+02 0.31812275E+02 0.31654504E+02 + 0.31490438E+02 0.31320574E+02 0.31145385E+02 0.30965313E+02 0.30780755E+02 + 0.30592084E+02 0.30399632E+02 0.30203688E+02 0.30004569E+02 0.29802531E+02 + 0.29597827E+02 0.29390704E+02 0.29181385E+02 0.28970046E+02 0.28756868E+02 + 0.28542046E+02 0.28325772E+02 0.28108218E+02 0.27889511E+02 0.27669786E+02 + 0.27449183E+02 0.27227820E+02 0.27005832E+02 0.26783337E+02 0.26560459E+02 + 0.26337297E+02 0.26113950E+02 0.25890515E+02 0.25667065E+02 0.25443684E+02 + 0.25220446E+02 0.24997417E+02 0.24774666E+02 0.24552256E+02 0.24330241E+02 + 0.24108695E+02 0.23887678E+02 0.23667210E+02 0.23447343E+02 0.23228134E+02 + 0.23009639E+02 0.22791918E+02 0.22574990E+02 0.22358904E+02 0.22143699E+02 + 0.21929419E+02 0.21716124E+02 0.21503860E+02 0.21292657E+02 0.21082558E+02 + 0.20873586E+02 0.20665762E+02 0.20459095E+02 0.20253587E+02 0.20049242E+02 + 0.19846070E+02 0.19644091E+02 0.19443357E+02 0.19243931E+02 0.19045817E+02 + 0.18849030E+02 0.18653565E+02 0.18459443E+02 0.18266686E+02 0.18075332E+02 + 0.17885401E+02 0.17696880E+02 0.17509788E+02 0.17324136E+02 + 0.10000000E+01 0.28048669E+01 0.45441034E+01 0.61985533E+01 0.77920502E+01 + 0.93289768E+01 0.10811648E+02 0.12239576E+02 0.13614495E+02 0.14935868E+02 + 0.16205400E+02 0.17423389E+02 0.18591624E+02 0.19710869E+02 0.20782423E+02 + 0.21807019E+02 0.22785671E+02 0.23719079E+02 0.24608113E+02 0.25453549E+02 + 0.26256200E+02 0.27016922E+02 0.27736502E+02 0.28415795E+02 0.29055644E+02 + 0.29656952E+02 0.30220749E+02 0.30748062E+02 0.31239944E+02 0.31697486E+02 + 0.32121811E+02 0.32514133E+02 0.32875663E+02 0.33207552E+02 0.33510972E+02 + 0.33786991E+02 0.34036697E+02 0.34261223E+02 0.34461613E+02 0.34638945E+02 + 0.34794267E+02 0.34928602E+02 0.35042884E+02 0.35138062E+02 0.35214938E+02 + 0.35274334E+02 0.35317096E+02 0.35344033E+02 0.35355886E+02 0.35353512E+02 + 0.35337553E+02 0.35308794E+02 0.35267855E+02 0.35215445E+02 0.35152152E+02 + 0.35078559E+02 0.34995248E+02 0.34902774E+02 0.34801675E+02 0.34692453E+02 + 0.34575582E+02 0.34451562E+02 0.34320876E+02 0.34183957E+02 0.34041232E+02 + 0.33893055E+02 0.33739795E+02 0.33581774E+02 0.33419299E+02 0.33252655E+02 + 0.33082120E+02 0.32907957E+02 0.32730408E+02 0.32549692E+02 0.32366003E+02 + 0.32179554E+02 0.31990581E+02 0.31799271E+02 0.31605781E+02 0.31410259E+02 + 0.31212857E+02 0.31013733E+02 0.30813051E+02 0.30610944E+02 0.30407547E+02 + 0.30202973E+02 0.29997341E+02 0.29790746E+02 0.29583300E+02 0.29375108E+02 + 0.29166253E+02 0.28956830E+02 0.28746911E+02 0.28536572E+02 0.28325890E+02 + 0.28114955E+02 0.27903836E+02 0.27692580E+02 0.27481247E+02 0.27269911E+02 + 0.27058645E+02 0.26847501E+02 0.26636532E+02 0.26425769E+02 0.26215249E+02 + 0.26005044E+02 0.25795210E+02 0.25585825E+02 0.25376945E+02 0.25168621E+02 + 0.24960868E+02 0.24753718E+02 0.24547164E+02 0.24341202E+02 0.24135872E+02 + 0.23931174E+02 0.23727159E+02 0.23523877E+02 0.23321395E+02 0.23119745E+02 + 0.22918922E+02 0.22718958E+02 0.22519863E+02 0.22321659E+02 0.22124390E+02 + 0.21928074E+02 0.21732725E+02 0.21538344E+02 0.21344958E+02 + 0.10000000E+01 0.28060770E+01 0.45484403E+01 0.62083313E+01 0.78095972E+01 + 0.93566615E+01 0.10851811E+02 0.12294641E+02 0.13686854E+02 0.15027961E+02 + 0.16319633E+02 0.17562193E+02 0.18757408E+02 0.19906040E+02 0.21009388E+02 + 0.22068181E+02 0.23083435E+02 0.24055831E+02 0.24986215E+02 0.25875319E+02 + 0.26723933E+02 0.27532848E+02 0.28302807E+02 0.29034595E+02 0.29728999E+02 + 0.30386851E+02 0.31009103E+02 0.31596713E+02 0.32150640E+02 0.32671872E+02 + 0.33161446E+02 0.33620460E+02 0.34050014E+02 0.34451142E+02 0.34824913E+02 + 0.35172288E+02 0.35494238E+02 0.35791782E+02 0.36065851E+02 0.36317399E+02 + 0.36547362E+02 0.36756650E+02 0.36946083E+02 0.37116496E+02 0.37268596E+02 + 0.37403092E+02 0.37520731E+02 0.37622231E+02 0.37708247E+02 0.37779540E+02 + 0.37836673E+02 0.37880348E+02 0.37911125E+02 0.37929629E+02 0.37936393E+02 + 0.37931958E+02 0.37916850E+02 0.37891582E+02 0.37856644E+02 0.37812500E+02 + 0.37759610E+02 0.37698431E+02 0.37629406E+02 0.37552969E+02 0.37469527E+02 + 0.37379441E+02 0.37283061E+02 0.37180695E+02 0.37072652E+02 0.36959223E+02 + 0.36840687E+02 0.36717315E+02 0.36589363E+02 0.36457058E+02 0.36320601E+02 + 0.36180232E+02 0.36036186E+02 0.35888669E+02 0.35737870E+02 0.35583941E+02 + 0.35427042E+02 0.35267350E+02 0.35105031E+02 0.34940241E+02 0.34773132E+02 + 0.34603835E+02 0.34432467E+02 0.34259151E+02 0.34084017E+02 0.33907185E+02 + 0.33728754E+02 0.33548829E+02 0.33367485E+02 0.33184825E+02 0.33000946E+02 + 0.32815939E+02 0.32629907E+02 0.32442901E+02 0.32254978E+02 0.32066223E+02 + 0.31876718E+02 0.31686531E+02 0.31495717E+02 0.31304317E+02 0.31112381E+02 + 0.30919978E+02 0.30727209E+02 0.30534157E+02 0.30340873E+02 0.30147412E+02 + 0.29953819E+02 0.29760100E+02 0.29566292E+02 0.29372394E+02 0.29178419E+02 + 0.28984380E+02 0.28790310E+02 0.28596288E+02 0.28402395E+02 0.28208696E+02 + 0.28015211E+02 0.27821945E+02 0.27628894E+02 0.27436113E+02 0.27243636E+02 + 0.27051504E+02 0.26859749E+02 0.26668387E+02 0.26477445E+02 + 0.10000000E+01 0.28092254E+01 0.45594016E+01 0.62322087E+01 0.78510109E+01 + 0.94199183E+01 0.10940883E+02 0.12413270E+02 0.13838522E+02 0.15216007E+02 + 0.16547175E+02 0.17832147E+02 0.19072431E+02 0.20268564E+02 0.21421636E+02 + 0.22532204E+02 0.23601125E+02 0.24628960E+02 0.25616433E+02 0.26564169E+02 + 0.27472839E+02 0.28343135E+02 0.29175708E+02 0.29971250E+02 0.30730458E+02 + 0.31454063E+02 0.32142913E+02 0.32797843E+02 0.33419710E+02 0.34009385E+02 + 0.34567772E+02 0.35095860E+02 0.35594633E+02 0.36065013E+02 0.36507953E+02 + 0.36924314E+02 0.37314980E+02 0.37680865E+02 0.38022826E+02 0.38341739E+02 + 0.38638458E+02 0.38913823E+02 0.39168584E+02 0.39403505E+02 0.39619256E+02 + 0.39816505E+02 0.39995959E+02 0.40158279E+02 0.40304088E+02 0.40434110E+02 + 0.40548877E+02 0.40649071E+02 0.40735233E+02 0.40807954E+02 0.40867755E+02 + 0.40915155E+02 0.40950665E+02 0.40974797E+02 0.40988045E+02 0.40990869E+02 + 0.40983734E+02 0.40967096E+02 0.40941405E+02 0.40907088E+02 0.40864565E+02 + 0.40814199E+02 0.40756353E+02 0.40691356E+02 0.40619539E+02 0.40541193E+02 + 0.40456611E+02 0.40366078E+02 0.40269865E+02 0.40168217E+02 0.40061371E+02 + 0.39949568E+02 0.39833059E+02 0.39712056E+02 0.39586766E+02 0.39457388E+02 + 0.39324112E+02 0.39187126E+02 0.39046600E+02 0.38902712E+02 0.38755614E+02 + 0.38605455E+02 0.38452387E+02 0.38296566E+02 0.38138125E+02 0.37977192E+02 + 0.37813883E+02 0.37648311E+02 0.37480588E+02 0.37310830E+02 0.37139146E+02 + 0.36965641E+02 0.36790414E+02 0.36613538E+02 0.36435084E+02 0.36255161E+02 + 0.36073860E+02 0.35891257E+02 0.35707421E+02 0.35522400E+02 0.35336254E+02 + 0.35149070E+02 0.34960959E+02 0.34772018E+02 0.34582314E+02 0.34391924E+02 + 0.34200875E+02 0.34009203E+02 0.33816929E+02 0.33624052E+02 0.33430588E+02 + 0.33236550E+02 0.33042004E+02 0.32847053E+02 0.32651783E+02 0.32456281E+02 + 0.32260575E+02 0.32064651E+02 0.31868515E+02 0.31672194E+02 0.31475754E+02 + 0.31279255E+02 0.31082737E+02 0.30886231E+02 0.30689769E+02 + 0.10000000E+01 0.28090412E+01 0.45590117E+01 0.62321551E+01 0.78523428E+01 + 0.94240510E+01 0.10949488E+02 0.12428300E+02 0.13862052E+02 0.15250253E+02 + 0.16594401E+02 0.17894716E+02 0.19152781E+02 0.20369210E+02 0.21545170E+02 + 0.22681296E+02 0.23778503E+02 0.24837361E+02 0.25858571E+02 0.26842705E+02 + 0.27790400E+02 0.28702285E+02 0.29578958E+02 0.30421017E+02 0.31229064E+02 + 0.32003739E+02 0.32745796E+02 0.33455975E+02 0.34135040E+02 0.34783764E+02 + 0.35402920E+02 0.35993362E+02 0.36555946E+02 0.37091457E+02 0.37600727E+02 + 0.38084495E+02 0.38543512E+02 0.38978569E+02 0.39390395E+02 0.39779737E+02 + 0.40147339E+02 0.40493908E+02 0.40820093E+02 0.41126551E+02 0.41413867E+02 + 0.41682624E+02 0.41933441E+02 0.42166900E+02 0.42383532E+02 0.42583975E+02 + 0.42768708E+02 0.42938349E+02 0.43093379E+02 0.43234341E+02 0.43361718E+02 + 0.43475978E+02 0.43577594E+02 0.43667047E+02 0.43744800E+02 0.43811285E+02 + 0.43866939E+02 0.43912211E+02 0.43947535E+02 0.43973330E+02 0.43989998E+02 + 0.43997887E+02 0.43997356E+02 0.43988747E+02 0.43972371E+02 0.43948547E+02 + 0.43917572E+02 0.43879718E+02 0.43835245E+02 0.43784410E+02 0.43727451E+02 + 0.43664624E+02 0.43596197E+02 0.43522388E+02 0.43443407E+02 0.43359453E+02 + 0.43270730E+02 0.43177431E+02 0.43079746E+02 0.42977846E+02 0.42871912E+02 + 0.42762097E+02 0.42648562E+02 0.42531458E+02 0.42410922E+02 0.42287093E+02 + 0.42160093E+02 0.42030057E+02 0.41897124E+02 0.41761394E+02 0.41622981E+02 + 0.41482000E+02 0.41338541E+02 0.41192708E+02 0.41044593E+02 0.40894293E+02 + 0.40741927E+02 0.40587550E+02 0.40431230E+02 0.40273045E+02 0.40113056E+02 + 0.39951353E+02 0.39788064E+02 0.39623293E+02 0.39457118E+02 0.39289603E+02 + 0.39120801E+02 0.38950756E+02 0.38779454E+02 0.38606907E+02 0.38433143E+02 + 0.38258202E+02 0.38082155E+02 0.37905099E+02 0.37727142E+02 0.37548359E+02 + 0.37368766E+02 0.37188396E+02 0.37007270E+02 0.36825410E+02 0.36642889E+02 + 0.36459762E+02 0.36276077E+02 0.36091874E+02 0.35907199E+02 + 0.10000000E+01 0.28082362E+01 0.45563974E+01 0.62269361E+01 0.78441180E+01 + 0.94127030E+01 0.10935099E+02 0.12411192E+02 0.13842664E+02 0.15229154E+02 + 0.16572250E+02 0.17872307E+02 0.19131038E+02 0.20349183E+02 0.21528024E+02 + 0.22668281E+02 0.23770949E+02 0.24836645E+02 0.25866109E+02 0.26859929E+02 + 0.27818761E+02 0.28743234E+02 0.29633933E+02 0.30491436E+02 0.31316346E+02 + 0.32109286E+02 0.32871000E+02 0.33602221E+02 0.34303687E+02 0.34976141E+02 + 0.35620352E+02 0.36237147E+02 0.36827334E+02 0.37391675E+02 0.37930952E+02 + 0.38445859E+02 0.38937118E+02 0.39405469E+02 0.39851587E+02 0.40276164E+02 + 0.40679878E+02 0.41063396E+02 0.41427319E+02 0.41772261E+02 0.42098733E+02 + 0.42407254E+02 0.42698371E+02 0.42972624E+02 0.43230509E+02 0.43472613E+02 + 0.43699367E+02 0.43911313E+02 0.44108890E+02 0.44292582E+02 0.44462829E+02 + 0.44620064E+02 0.44764727E+02 0.44897240E+02 0.45018019E+02 0.45127456E+02 + 0.45225965E+02 0.45313962E+02 0.45391852E+02 0.45460031E+02 0.45518872E+02 + 0.45568701E+02 0.45609847E+02 0.45642640E+02 0.45667371E+02 0.45684328E+02 + 0.45693797E+02 0.45696032E+02 0.45691292E+02 0.45679820E+02 0.45661846E+02 + 0.45637615E+02 0.45607361E+02 0.45571312E+02 0.45529679E+02 0.45482654E+02 + 0.45430420E+02 0.45373185E+02 0.45311121E+02 0.45244407E+02 0.45173219E+02 + 0.45097719E+02 0.45018060E+02 0.44934381E+02 0.44846842E+02 0.44755561E+02 + 0.44660667E+02 0.44562308E+02 0.44460588E+02 0.44355619E+02 0.44247530E+02 + 0.44136422E+02 0.44022412E+02 0.43905597E+02 0.43786064E+02 0.43663902E+02 + 0.43539227E+02 0.43412130E+02 0.43282678E+02 0.43150944E+02 0.43016986E+02 + 0.42880904E+02 0.42742802E+02 0.42602799E+02 0.42460991E+02 0.42317454E+02 + 0.42172238E+02 0.42025367E+02 0.41876827E+02 0.41726622E+02 0.41574788E+02 + 0.41421366E+02 0.41266430E+02 0.41110095E+02 0.40952469E+02 0.40793626E+02 + 0.40633613E+02 0.40472445E+02 0.40310141E+02 0.40146727E+02 0.39982266E+02 + 0.39816824E+02 0.39650461E+02 0.39483229E+02 0.39315165E+02 + 0.10000000E+01 0.28109052E+01 0.45657185E+01 0.62472634E+01 0.78793884E+01 + 0.94665900E+01 0.11010984E+02 0.12512280E+02 0.13971944E+02 0.15389518E+02 + 0.16766399E+02 0.18102793E+02 0.19400197E+02 0.20659176E+02 0.21880849E+02 + 0.23065803E+02 0.24214913E+02 0.25328696E+02 0.26407787E+02 0.27452695E+02 + 0.28463983E+02 0.29442206E+02 0.30387881E+02 0.31301509E+02 0.32183613E+02 + 0.33034738E+02 0.33855543E+02 0.34646673E+02 0.35408782E+02 0.36142519E+02 + 0.36848565E+02 0.37527643E+02 0.38180464E+02 0.38807716E+02 0.39410093E+02 + 0.39988217E+02 0.40542737E+02 0.41074316E+02 0.41583569E+02 0.42071141E+02 + 0.42537641E+02 0.42983667E+02 0.43409772E+02 0.43816510E+02 0.44204369E+02 + 0.44573841E+02 0.44925444E+02 0.45259667E+02 0.45576972E+02 0.45877902E+02 + 0.46162874E+02 0.46432407E+02 0.46686922E+02 0.46926873E+02 0.47152674E+02 + 0.47364746E+02 0.47563498E+02 0.47749352E+02 0.47922720E+02 0.48083970E+02 + 0.48233489E+02 0.48371672E+02 0.48498930E+02 0.48615646E+02 0.48722194E+02 + 0.48818885E+02 0.48906045E+02 0.48983990E+02 0.49053009E+02 0.49113396E+02 + 0.49165438E+02 0.49209383E+02 0.49245481E+02 0.49273987E+02 0.49295133E+02 + 0.49309172E+02 0.49316378E+02 0.49316972E+02 0.49311160E+02 0.49299139E+02 + 0.49281086E+02 0.49257220E+02 0.49227738E+02 0.49192826E+02 0.49152680E+02 + 0.49107455E+02 0.49057304E+02 0.49002386E+02 0.48942849E+02 0.48878846E+02 + 0.48810524E+02 0.48738029E+02 0.48661496E+02 0.48581039E+02 0.48496780E+02 + 0.48408847E+02 0.48317362E+02 0.48222433E+02 0.48124165E+02 0.48022670E+02 + 0.47918045E+02 0.47810378E+02 0.47699766E+02 0.47586299E+02 0.47470050E+02 + 0.47351119E+02 0.47229606E+02 0.47105634E+02 0.46979314E+02 0.46850731E+02 + 0.46719978E+02 0.46587072E+02 0.46451984E+02 0.46314721E+02 0.46175292E+02 + 0.46033775E+02 0.45890271E+02 0.45744901E+02 0.45597780E+02 0.45448973E+02 + 0.45298533E+02 0.45146484E+02 0.44992851E+02 0.44837682E+02 0.44681031E+02 + 0.44522962E+02 0.44363541E+02 0.44202831E+02 0.44040881E+02 + 0.10000000E+01 0.28072803E+01 0.45534954E+01 0.62215055E+01 0.78361566E+01 + 0.94026349E+01 0.10923596E+02 0.12399298E+02 0.13831578E+02 0.15220310E+02 + 0.16567195E+02 0.17872818E+02 0.19139069E+02 0.20366888E+02 0.21557732E+02 + 0.22712471E+02 0.23832240E+02 0.24917729E+02 0.25969725E+02 0.26988848E+02 + 0.27975777E+02 0.28931162E+02 0.29855593E+02 0.30749639E+02 0.31613881E+02 + 0.32448925E+02 0.33255521E+02 0.34034393E+02 0.34786265E+02 0.35511864E+02 + 0.36211931E+02 0.36887247E+02 0.37538580E+02 0.38166651E+02 0.38772195E+02 + 0.39355865E+02 0.39918311E+02 0.40460201E+02 0.40982141E+02 0.41484746E+02 + 0.41968617E+02 0.42434336E+02 0.42882420E+02 0.43313382E+02 0.43727646E+02 + 0.44125646E+02 0.44507839E+02 0.44874669E+02 0.45226527E+02 0.45563904E+02 + 0.45887124E+02 0.46196649E+02 0.46492829E+02 0.46776057E+02 0.47046672E+02 + 0.47304992E+02 0.47551362E+02 0.47786133E+02 0.48009647E+02 0.48222221E+02 + 0.48424180E+02 0.48615837E+02 0.48797524E+02 0.48969557E+02 0.49132242E+02 + 0.49285853E+02 0.49430651E+02 0.49566898E+02 0.49694838E+02 0.49814704E+02 + 0.49926731E+02 0.50031130E+02 0.50128102E+02 0.50217861E+02 0.50300604E+02 + 0.50376533E+02 0.50445874E+02 0.50508825E+02 0.50565534E+02 0.50616167E+02 + 0.50660901E+02 0.50699905E+02 0.50733349E+02 0.50761398E+02 0.50784193E+02 + 0.50801869E+02 0.50814571E+02 0.50822433E+02 0.50825596E+02 0.50824190E+02 + 0.50818335E+02 0.50808155E+02 0.50793767E+02 0.50775285E+02 0.50752827E+02 + 0.50726511E+02 0.50696429E+02 0.50662663E+02 0.50625305E+02 0.50584472E+02 + 0.50540256E+02 0.50492739E+02 0.50442005E+02 0.50388103E+02 0.50331099E+02 + 0.50271095E+02 0.50208212E+02 0.50142573E+02 0.50074275E+02 0.50003389E+02 + 0.49929962E+02 0.49854007E+02 0.49775549E+02 0.49694583E+02 0.49611141E+02 + 0.49525275E+02 0.49437071E+02 0.49346634E+02 0.49254073E+02 0.49159478E+02 + 0.49062882E+02 0.48964306E+02 0.48863762E+02 0.48761280E+02 0.48656919E+02 + 0.48550783E+02 0.48442922E+02 0.48333390E+02 0.48222231E+02 diff --git a/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapII_af_covers_param.bin b/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapII_af_covers_param.bin new file mode 100644 index 0000000000000000000000000000000000000000..8b4bf052a585ade4e63ebbb55b1754ca44daf003 Binary files /dev/null and b/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapII_af_covers_param.bin differ diff --git a/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapII_eu_covers_param.bin b/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapII_eu_covers_param.bin new file mode 100644 index 0000000000000000000000000000000000000000..5db5acaa9f89823499fa08f6ce748ccf538fbe60 Binary files /dev/null and b/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapII_eu_covers_param.bin differ diff --git a/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapI_covers_param.bin b/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapI_covers_param.bin new file mode 100644 index 0000000000000000000000000000000000000000..17c75b1f58786be4e715dcbb3ff41c3ce488b8af Binary files /dev/null and b/tools/conf_tests/small_3D/data/surfex/v8/ecoclimapI_covers_param.bin differ diff --git a/tools/conf_tests/small_3D_alt1/aro48t1.sh b/tools/conf_tests/small_3D_alt1/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..62c8078f80366bf944c86f07a8c0c8a36ed0f8c3 --- /dev/null +++ b/tools/conf_tests/small_3D_alt1/aro48t1.sh @@ -0,0 +1,1207 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB varibale must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='T', + CFRAC_ICE_SHALLOW_MF='T', + CMICRO='ICE3', + CSEDIM='SPLI', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.TRUE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=10, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=25., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt1/data b/tools/conf_tests/small_3D_alt1/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt1/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_alt2/aro48t1.sh b/tools/conf_tests/small_3D_alt2/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..8928589a282adb723fd05cc8487109e78acbd982 --- /dev/null +++ b/tools/conf_tests/small_3D_alt2/aro48t1.sh @@ -0,0 +1,1207 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB varibale must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='OLD3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt2/data b/tools/conf_tests/small_3D_alt2/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt2/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_alt3/aro48t1.sh b/tools/conf_tests/small_3D_alt3/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..74b175583b629d090492e0ace4e1b052b36c1026 --- /dev/null +++ b/tools/conf_tests/small_3D_alt3/aro48t1.sh @@ -0,0 +1,1209 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB varibale must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + CSUBG_RC_RR_ACCR='PRFR', + CSUBG_RR_EVAP='PRFR', + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt3/data b/tools/conf_tests/small_3D_alt3/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt3/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_alt4/aro48t1.sh b/tools/conf_tests/small_3D_alt4/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..d74e8b71259c7858589b9a305517a8bebc18a924 --- /dev/null +++ b/tools/conf_tests/small_3D_alt4/aro48t1.sh @@ -0,0 +1,1207 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB varibale must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='T', + CFRAC_ICE_SHALLOW_MF='T', + CMICRO='ICE3', + CSEDIM='SPLI', + CSNOWRIMING='OLD', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.TRUE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=10, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=25., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt4/data b/tools/conf_tests/small_3D_alt4/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt4/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_alt5/aro48t1.sh b/tools/conf_tests/small_3D_alt5/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..9ca429fc39c97e4db7cd5077916c99b9abf30900 --- /dev/null +++ b/tools/conf_tests/small_3D_alt5/aro48t1.sh @@ -0,0 +1,1219 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB varibale must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSH%CLNAME='SURFACCGREL2', + GFP_XLSH%CLNAME='SURFINSGREL2', + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFPLSH=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YH_NL%LGP=.TRUE., + YH_NL%NREQIN=0, + YH_NL%NCOUPLING=-1, + YH_NL%REFVALC=0., + YH_NL%LPT=.FALSE., + YH_NL%LREQOUT=.TRUE., + YH_NL%LQM=.TRUE., + YH_NL%LSLHD=.FALSE., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE4', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXPLSH=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt5/data b/tools/conf_tests/small_3D_alt5/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt5/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_alt6/aro48t1.sh b/tools/conf_tests/small_3D_alt6/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..bca3e00b79dd3afa64a65ca49e6d86d6d97a1f95 --- /dev/null +++ b/tools/conf_tests/small_3D_alt6/aro48t1.sh @@ -0,0 +1,1209 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB variable must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CMF_UPDRAFT='RAHA' + CMF_CLOUD='BIGA' + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt6/data b/tools/conf_tests/small_3D_alt6/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt6/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_alt7/aro48t1.sh b/tools/conf_tests/small_3D_alt7/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..b16a272001a2d2ee87613977c6cb648eb5ee2ba3 --- /dev/null +++ b/tools/conf_tests/small_3D_alt7/aro48t1.sh @@ -0,0 +1,1209 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB variable must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CMF_UPDRAFT='EDKF' + CMF_CLOUD='STAT' + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.FALSE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt7/data b/tools/conf_tests/small_3D_alt7/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt7/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_alt8/aro48t1.sh b/tools/conf_tests/small_3D_alt8/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..c0b50410dbfb71c2982e2a467283b7b17620368d --- /dev/null +++ b/tools/conf_tests/small_3D_alt8/aro48t1.sh @@ -0,0 +1,1208 @@ +#!/bin/bash +#SBATCH -n 4 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB variable must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=4 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CMF_UPDRAFT='RHCJ' + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_alt8/data b/tools/conf_tests/small_3D_alt8/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_alt8/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_np1/aro48t1.sh b/tools/conf_tests/small_3D_np1/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..a833e9977afcafae3b60e863f478557e7d97e7be --- /dev/null +++ b/tools/conf_tests/small_3D_np1/aro48t1.sh @@ -0,0 +1,1207 @@ +#!/bin/bash +#SBATCH -n 1 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB variable must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=1 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_np1/data b/tools/conf_tests/small_3D_np1/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_np1/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/conf_tests/small_3D_np2/aro48t1.sh b/tools/conf_tests/small_3D_np2/aro48t1.sh new file mode 100755 index 0000000000000000000000000000000000000000..1ac4893258e7cacee0c355d797df31896c182137 --- /dev/null +++ b/tools/conf_tests/small_3D_np2/aro48t1.sh @@ -0,0 +1,1207 @@ +#!/bin/bash +#SBATCH -n 2 +#SBATCH --mem=20000 +#SBATCH --export=MYLIB,HOME,HOMEPACK,TMPDIR,OUTPUTDIR,TESTDIR +#SBATCH -t 00:10:00 +#SBATCH -N 1 +#SBATCH -p normal256 + +#The MYLIB varibale must contain the gmkpack pack name +#The TESTDIR variable must contain the test directory +#Results will be stored in the local directory + +#Other environment varaibles that can be set: +#OUTPUTDIR + +date + +OUTPUTDIR=${OUTPUTDIR:-$PWD} +case=riette2 +#rekchemin="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" #Resources for the run must be in the same directory as this script +rekchemin=$TESTDIR + +NPROC=2 +NSTRIN=$NPROC +NSTROUT=1 +NPRTRW_NPRTRV="" +NPRTRW_NPRTRV=" NPRTRW=$NPROC, + NPRTRV=1," +export OMP_NUM_THREADS=1 + +#MYLIB=48t1_main.01%jpdup + +export DR_HOOK=1 +#export DR_HOOK_IGNORE_SIGNALS=-1 +export DR_HOOK_NOT_MPI=1 +export DR_HOOK_SILENT=1 +export DR_HOOK_OPT= + +export EC_PROFILE_HEAP=0 +export EC_PROFILE_MEM=0 +export EC_MPI_ATEXIT=0 +export DR_HOOK_SHOW_PROCESS_OPTIONS=0 +export EC_MEMINFO=0 +export TVSEARCHPATH=$SOURCE + +HOMEPACK=${HOMEPACK:=$HOME/pack} +SOURCE=$HOMEPACK/$MYLIB/src/local +LOADIR=$HOMEPACK/$MYLIB/bin + +TMPDIR=${TMPDIR:=$HOME/tmp} +TMPLOC=$TMPDIR/rundir.$$ +TMPWAIT=$TMPDIR/wait_queue.$$ +mkdir $TMPWAIT +mkdir $TMPLOC +cd $TMPLOC + +export RTTOV_COEFDIR=$PWD + +# ************************** +# * Saisie des NAMELISTS * +# ************************** + +CNMEXP='FPOS' + +echo +/bin/cat <<FIN > fort.4 + &NACIETEO + / + &NACOBS + / + &NACTAN + / + &NACTEX + / + &NACVEG + / + &NADOCK + / + &NAEAEM7 + / + &NAEAER + / + &NAECOAPHY + / + &NAEPHLI + / + &NAEPHY + / + &NAERAD + LRRTM=.TRUE., + LSRTM=.FALSE., + NAER=1, + NICEOPT=3, + NLIQOPT=3, + NOVLP=6, + NOZOCL=2, + NRADFR=18, + NRADIP=3, + NRADLP=2, + NSW=6, + RLWINHF=1, + RRE2DE=0.64952, + RSWINHF=1, + / + &NAERCLI + / + &NAEVOL + / + &NAIMPO + / + &NALORI + / + &NAMAFN + GFP_CLSG%CLNAME='SURFACCGRAUPEL', + GFP_CLSP%CLNAME='SURFACCPLUIE', + GFP_CLSS%CLNAME='SURFACCNEIGE', + GFP_SFIS%IBITS=16, + GFP_ST%CLNAME='SURFTEMPERATURE', + GFP_ST%IANO=0, + GFP_ST%IBITS=12, + GFP_X10U%CLNAME='CLSVENT.ZONAL', + GFP_X10U%IANO=0, + GFP_X10U%IBITS=12, + GFP_X10V%CLNAME='CLSVENT.MERIDIEN', + GFP_X10V%IANO=0, + GFP_X10V%IBITS=12, + GFP_X2RH%CLNAME='CLSHUMI.RELATIVE', + GFP_X2RH%IANO=0, + GFP_X2RH%IBITS=12, + GFP_X2T%CLNAME='CLSTEMPERATURE', + GFP_X2T%IANO=1, + GFP_XCCC%IBITS=8, + GFP_XHCC%IBITS=8, + GFP_XLCC%IBITS=8, + GFP_XLSG%CLNAME='SURFINSGRAUPEL', + GFP_XLSP%CLNAME='SURFINSPLUIE', + GFP_XLSS%CLNAME='SURFINSNEIGE', + GFP_XMCC%IBITS=8, + GFP_XN2T%IBITS=12, + GFP_XTCC%IBITS=8, + GFP_XUGST%CLNAME='CLSU.RAF60M.XFU', + GFP_XUGST%IANO=0, + GFP_XUGST%IBITS=12, + GFP_XVGST%CLNAME='CLSV.RAF60M.XFU', + GFP_XVGST%IANO=0, + GFP_XVGST%IBITS=12, + GFP_XX2T%IBITS=12, + GFP_XXDIAGH%IBITS=12, + TFP_ABS%ZFK=32., + TFP_CLF%IBITS=6, + TFP_EDR%CLNAME='EDR', + TFP_EDR%IBITS=16, + TFP_EDR%IGRIB=136, + TFP_GR%IBITS=12, + TFP_HL%IBITS=12, + TFP_HTB%IBITS=16, + TFP_HTB%LLGP=.TRUE., + TFP_HU%IBITS=12, + TFP_MSAT9C2%IBITS=12, + TFP_MSAT9C6%IBITS=12, + TFP_MSLNH%IBITS=12, + TFP_PV%ZFK=64., + TFP_RCLS%IBITS=12, + TFP_RR%IBITS=12, + TFP_SN%IBITS=12, + TFP_T%IBITS=12, + TFP_TCLS%IBITS=12, + TFP_TH%IBITS=12, + TFP_THPW%IBITS=12, + TFP_THV%IBITS=12, + TFP_TN%IBITS=12, + TFP_TWV%IBITS=12, + TFP_TX%IBITS=12, + TFP_U%IBITS=12, + TFP_V%IBITS=12, + TFP_VOR%ZFK=32., + TFP_VV%ZFK=32., + / + &NAMARG + CNMEXP='${CNMEXP}', + LECMWF=.FALSE., + LELAM=.TRUE., + LSLAG=.TRUE., + NCONF=1, + NSUPERSEDE=1, + / + &NAMARPHY + LKFBCONV=.FALSE., + LKFBD=.FALSE., + LKFBS=.FALSE., + LMFSHAL=.TRUE., + LMICRO=.TRUE., + LMPA=.TRUE., + LMSE=.TRUE., + LTURB=.TRUE., + / + &NAMCA + / + &NAMCAPE + / + &NAMCFU + LCUMFU=.TRUE., + LFPLS=.TRUE., + LFPLSG=.TRUE., + LFR=.TRUE., + LFRRC=.TRUE., + LFSF=.TRUE., + LNEBPAR=.TRUE., + LNEBTT=.TRUE., + LRAYD=.TRUE., + LRAYS=.TRUE., + / + &NAMCHEM + / + &NAMCHET + / + &NAMCHK + / + &NAMCLA + / + &NAMCLDP + / + &NAMCLI + / + &NAMCLOP15 + / + &NAMCLTC + / + &NAMCOK + / + &NAMCOM + / + &NAMCOSJO + / + &NAMCOUPLO4 + / + &NAMCT0 + CFPNCF='ECHFP', + CNPPATH=' ', + LAROME=.TRUE., + LNHEE=.TRUE., + LSCREEN_OPENMP=.FALSE., + LSPRT=.TRUE., + LTWOTL=.TRUE., + NFPOS=1, + NFRSDI=18, + NSDITS(0)=0, + NFRHIS=72, + NHISTS(0)=0, + NFRPOS=72, + NPOSTS(0)=0, + NFRSFXHIS=72, + NSFXHISTS(0)=0, + NFRDHFD=72, + NDHFDTS(0)=0, + / + &NAMCT1 + LRFILAF=.FALSE., + N1HIS=1, + N1POS=1, + N1RES=0, + N1SDI=1, + N1SFXHIS=1, + N1GDI=0, + / + &NAMCUMF + / + &NAMCUMFS + / + &NAMCVER + / + &NAMCVMNH + / + &NAMDDH + LDDH_OMP=.TRUE., + LHDDOP=.TRUE., + LHDHKS=.TRUE., + LHDEFD=.TRUE., + LFLEXDIA=.TRUE., + BDEDDH(1,1)=3, + BDEDDH(2,1)=1, + BDEDDH(3,1)=358.8 + BDEDDH(4,1)=45.1 + BDEDDH(5,1)=360.3 + BDEDDH(6,1)=44.5 + / + &NAMDFI + / + &NAMDIM + NPROMA=-50, + / + &NAMDIMO + / + &NAMDIM_TRAJ + / + &NAMDPHY + / + &NAMDPRECIPS + / + &NAMDYN + LADVF=.TRUE., + LQMPD=.FALSE., + LQMT=.FALSE., + LQMVD=.FALSE., + LRHDI_LASTITERPC=.TRUE., + NITMP=4, + NSITER=1, + NSPDLAG=3, + NSVDLAG=3, + NTLAG=3, + NVLAG=3, + NWLAG=3, + RDAMPDIV=20., + RDAMPPD=20., + RDAMPQ=0., + RDAMPT=0., + RDAMPVD=20., + RDAMPVOR=20., + REPS1=0., + REPS2=0., + REPSM1=0., + REPSM2=0., + REPSP1=0., + SDRED=1., + SIPR=90000., + SITR=350., + SITRA=100., + SLHDA0=0.25, + SLHDD00=0.000065, + VESL=0.05, + XIDT=0., + ZSLHDP1=1.7, + ZSLHDP3=0.6, + / + &NAMDYNA + LCOMADH=.TRUE., + LCOMADV=.FALSE., + LCOMAD_GFL=.TRUE., + LCOMAD_SP=.TRUE., + LCOMAD_SPD=.TRUE., + LCOMAD_SVD=.TRUE., + LCOMAD_T=.TRUE., + LCOMAD_W=.TRUE., + LGWADV=.TRUE., + LNESC=.TRUE., + LPC_CHEAP=.TRUE., + LPC_FULL=.TRUE., + LRDBBC=.FALSE., + LSETTLS=.FALSE., + LSETTLST=.TRUE., + LSLHD_GFL=.TRUE., + LSLHD_OLD=.FALSE., + LSLHD_SPD=.FALSE., + LSLHD_SVD=.FALSE., + LSLHD_T=.FALSE., + LSLHD_W=.FALSE., + ND4SYS=2, + NDLNPR=1, + NPDVAR=2, + NVDVAR=4, + SLHDEPSH=0.08, + SLHDKMAX=6, + / + &NAMDYNCORE + / + &NAMEMIS_CONF + / + &NAMENKF + / + &NAMFA + CMODEL='OUTPUTID', + LEXTERN=.TRUE., + LSUPPDATE=.FALSE., + NBITCS=-1, + NBITPG=-1, + NSTRON=-1, + / + &NAMFAINIT + JPXTRO=2000, + / + &NAMFPC + CFP2DF(1)='SURFPRESSION', + CFP2DF(2)='MSL_NHPRESSURE', + CFP2DF(3)='SURFTOT.WAT.VAPO', + CFP2DF(4)='SURFISOTPW0.MALT', + CFP2DF(5)='SURFCAPE.POS.F00', + CFP2DF(6)='C002_METEOSAT_09_SEVIRI.POS', + CFP2DF(7)='C006_METEOSAT_09_SEVIRI.POS', + CFP2DF(8)='SURFREFLECT.MAX', + CFP2DF(9)='SURFISOTPW1.MALT', + CFP2DF(10)='SURFISOTPW2.MALT', + CFP3DF(1)='GEOPOTENTIEL', + CFP3DF(2)='TEMPERATURE', + CFP3DF(3)='VENT_ZONAL', + CFP3DF(4)='VENT_MERIDIEN', + CFP3DF(5)='HUMI_RELATIVE', + CFP3DF(6)='THETA_PRIM_W', + CFP3DF(7)='PRESSURE', + CFP3DF(8)='ABS_VORTICITY', + CFP3DF(9)='VITESSE_VERTICALE', + CFP3DF(10)='TEMPE_POTENT', + CFP3DF(11)='POT_VORTICIT', + CFP3DF(12)='SIM_REFLECTI', + CFP3DF(13)='RAIN', + CFP3DF(14)='SNOW', + CFP3DF(15)='GRAUPEL', + CFP3DF(16)='ICE_CRYSTAL', + CFP3DF(17)='CLOUD_WATER', + CFP3DF(18)='VERT.VELOCIT', + CFP3DF(19)='DIVERGENCE', + CFP3DF(20)='THETA_VIRTUA', + CFP3DF(21)='TKE', + CFP3DF(22)='CLOUD_FRACTI', + CFP3DF(23)='ISOT_ALTIT', + CFP3DF(24)='EDR', + CFPCFU(1)='SURFTENS.TOTA.ZO', + CFPCFU(2)='SURFTENS.TOTA.ME', + CFPCFU(3)='SURFACCPLUIE', + CFPCFU(4)='SURFACCNEIGE', + CFPCFU(5)='SURFACCGRAUPEL', + CFPCFU(6)='SOMMFLU.RAY.SOLA', + CFPCFU(7)='SURFFLU.RAY.SOLA', + CFPCFU(8)='SOMMFLU.RAY.THER', + CFPCFU(9)='SURFFLU.RAY.THER', + CFPCFU(10)='SURFFLU.LAT.MTOT', + CFPCFU(11)='SURFFLU.MTOTA.NE', + CFPCFU(12)='SURFFLU.CHA.SENS', + CFPCFU(13)='SURFRAYT SOLA DE', + CFPCFU(14)='SURFRAYT THER DE', + CFPCFU(15)='SURFRAYT SOL CL', + CFPCFU(16)='SURFRAYT THER CL', + CFPCFU(17)='SURFRAYT DIR SUR', + CFPDOM(1)='FRANGP0025', + CFPFMT='LALON', + CFPPHY(1)='SURFTEMPERATURE', + CFPPHY(2)='INTSURFGEOPOTENT', + CFPPHY(3)='SURFRESERV.NEIGE', + CFPXFU(1)='CLSTEMPERATURE', + CFPXFU(2)='CLSHUMI.RELATIVE', + CFPXFU(3)='CLSVENT.ZONAL', + CFPXFU(4)='CLSVENT.MERIDIEN', + CFPXFU(5)='SURFNEBUL.TOTALE', + CFPXFU(6)='SURFNEBUL.HAUTE', + CFPXFU(7)='SURFNEBUL.MOYENN', + CFPXFU(8)='SURFNEBUL.BASSE', + CFPXFU(9)='CLSMAXI.TEMPERAT', + CFPXFU(10)='CLSMINI.TEMPERAT', + CFPXFU(11)='CLPMHAUT.MOD.XFU', + CFPXFU(12)='SURFDIAGHAIL', + LCRITSNOWTEMP=.FALSE., + LFPCAPEX=.TRUE., + LFPMOIS=.TRUE., + LFPPACKING=.FALSE., + LWIDER_DOM=.TRUE., + L_READ_MODEL_DATE=.TRUE., + NFITI=1, + NFITV=1, + NFPCAPE=5, + NFPCLI=1, + NFPGRIB=1, + NFPINPHY=4, + NITERPV=8, + RENTRA=0.0001, + RFP3H(1)=10., + RFP3H(2)=20., + RFP3H(3)=35., + RFP3H(4)=50., + RFP3H(5)=75., + RFP3H(6)=100., + RFP3H(7)=150., + RFP3H(8)=200., + RFP3H(9)=250., + RFP3H(10)=375., + RFP3H(11)=500., + RFP3H(12)=625., + RFP3H(13)=750., + RFP3H(14)=875., + RFP3H(15)=1000., + RFP3H(16)=1125., + RFP3H(17)=1250., + RFP3H(18)=1375., + RFP3H(19)=1500., + RFP3H(20)=1750., + RFP3H(21)=2000., + RFP3H(22)=2250., + RFP3H(23)=2500., + RFP3H(24)=2750., + RFP3H(25)=3000., + RFP3I(1)=-273.15, + RFP3I(2)=-263.15, + RFP3I(3)=-261.15, + RFP3I(4)=-253.15, + RFP3P(1)=10000., + RFP3P(2)=12500., + RFP3P(3)=15000., + RFP3P(4)=17500., + RFP3P(5)=20000., + RFP3P(6)=22500., + RFP3P(7)=25000., + RFP3P(8)=27500., + RFP3P(9)=30000., + RFP3P(10)=35000., + RFP3P(11)=40000., + RFP3P(12)=45000., + RFP3P(13)=50000., + RFP3P(14)=55000., + RFP3P(15)=60000., + RFP3P(16)=65000., + RFP3P(17)=70000., + RFP3P(18)=75000., + RFP3P(19)=80000., + RFP3P(20)=85000., + RFP3P(21)=90000., + RFP3P(22)=92500., + RFP3P(23)=95000., + RFP3P(24)=100000., + RFP3PV(1)=0.0000015, + RFP3PV(2)=0.000002, + RFPCD2=5., + RFPCSAB=50., + RFPVCAP=7000., + / + &NAMFPD + NLAT(1)=41, + NLON(1)=41, + RLONC(1)=-0.71, + RLATC(1)=44.8, + RDELX(1)=0.025, + RDELY(1)=0.025, + / + &NAMFPDY2 + / + &NAMFPDYF + / + &NAMFPDYH + / + &NAMFPDYI + / + &NAMFPDYP + / + &NAMFPDYS + / + &NAMFPDYT + / + &NAMFPDYV + / + &NAMFPF + NFMAX(1)=60, + NFMAX(2)=80, + / + &NAMFPG + NFPDISTRIB=1, + / + &NAMFPIOS + / + &NAMFPMOVE + / + &NAMFPPHY + / + &NAMFPSC2 + NFPROMA=-50, + / + &NAMFPSC2_DEP + NFPROMA_DEP=-50, + / + &NAMGEM + / + &NAMGFL + NGFL_EZDIAG=4, + YEZDIAG_NL(1)%CNAME='EZDIAG01', + YEZDIAG_NL(1)%LREQOUT=.FALSE., + YEZDIAG_NL(2)%CNAME='EZDIAG02', + YEZDIAG_NL(2)%LREQOUT=.FALSE., + YEZDIAG_NL(3)%CNAME='EZDIAG03', + YEZDIAG_NL(3)%LREQOUT=.FALSE., + YEZDIAG_NL(4)%CNAME='INPRRTOT3D', + YEZDIAG_NL(4)%LREQOUT=.TRUE., + YG_NL%LQM=.TRUE., + YG_NL%LSLHD=.TRUE., + YG_NL%NCOUPLING=-1, + YG_NL%NREQIN=1, + YG_NL%REFVALC=0., + YIRAD_NL%LGP=.TRUE., + YI_NL%LQM=.TRUE., + YI_NL%LSLHD=.TRUE., + YI_NL%NCOUPLING=-1, + YI_NL%NREQIN=1, + YI_NL%REFVALC=0., + YLRAD_NL%LGP=.TRUE., + YL_NL%LQM=.TRUE., + YL_NL%LSLHD=.TRUE., + YL_NL%NCOUPLING=-1, + YL_NL%NREQIN=1, + YL_NL%REFVALC=0., + YQ_NL%LCOMAD=.TRUE., + YQ_NL%LQM=.TRUE., + YQ_NL%LSLHD=.FALSE., + YQ_NL%NREQIN=1, + YR_NL%LQM=.TRUE., + YR_NL%LSLHD=.TRUE., + YR_NL%NCOUPLING=-1, + YR_NL%NREQIN=1, + YR_NL%REFVALC=0., + YS_NL%LQM=.TRUE., + YS_NL%LSLHD=.TRUE., + YS_NL%NCOUPLING=-1, + YS_NL%NREQIN=1, + YS_NL%REFVALC=0., + YTKE_NL%NCOUPLING=0, + YTKE_NL%NREQIN=1, + / + &NAMGRIB + / + &NAMGWD + / + &NAMGWDIAG + / + &NAMGWWMS + / + &NAMIAU + ALPHAIAU=0.5, + LIAU=.FALSE., + TSTARTIAU=1800, + TSTOPIAU=5340, + / + &NAMICE + / + &NAMINI + LDFI=.FALSE., + / + &NAMINTFLEX + / + &NAMIOMI + / + &NAMIOS + / + &NAMIO_SERV + NIO_SERV_BUF_MAXSIZE=20, + NIO_SERV_METHOD=2, + NMSG_LEVEL_CLIENT=0, + NMSG_LEVEL_SERVER=0, + NPROCESS_LEVEL=5, + NPROC_IO=0, + / + &NAMJBCODES + / + &NAMJFH + / + &NAMJG + / + &NAMLCZ + / + &NAMLSFORC + / + &NAMMARS + / + &NAMMCC + / + &NAMMCUF + / + &NAMMKODB + / + &NAMMODERR + / + &NAMMTS + / + &NAMMWAVE + / + &NAMNPROF + / + &NAMNUD + / + &NAMOBS + / + &NAMONEDVAR + / + &NAMOOPS + / + &NAMOPH + CFNHWF='ECHIS', + LINC=.TRUE., + NTIMEFMT=1, + / + &NAMOPTCMEM + / + &NAMPAR0 + LOPT_SCALAR=.TRUE., + NPRINTLEV=1, + LMPOFF=.FALSE., + MBX_SIZE=2048000000, + MP_TYPE=2, + NOUTPUT=1, + NPROC=$NPROC, +$NPRTRW_NPRTRV + / + &NAMPAR1 + LEQ_REGIONS=.FALSE., + LSLONDEM=.TRUE., + LSPLIT=.TRUE., + LSYNC_SLCOM=.FALSE., + LSYNC_TRANS=.FALSE., + L_GATHERV_WRGP=.FALSE., + NCOMBFLEN=1800000, + NSTRIN=$NSTRIN, + NSTROUT=$NSTROUT, + / + &NAMPARAR + CFRAC_ICE_ADJUST='S', + CFRAC_ICE_SHALLOW_MF='S', + CMICRO='ICE3', + CSEDIM='STAT', + CSNOWRIMING='M90', + LCONVHG=.TRUE., + LCRFLIMIT=.TRUE., + LCRIAUTI=.TRUE., + LEVLIMIT=.TRUE., + LFEEDBACKT=.TRUE., + LFPREC3D=.TRUE., + LNULLWETG=.TRUE., + LNULLWETH=.TRUE., + LOLSMC=.TRUE., + LOSEDIC=.TRUE., + LOSIGMAS=.TRUE., + LOSUBG_COND=.TRUE., + LSEDIM_AFTER=.FALSE., + LWETGPOST=.TRUE., + LWETHPOST=.TRUE., + NMAXITER_MICRO=1, + NPRINTFR=10000, + NPTP=1, + RCRIAUTC=0.001, + RCRIAUTI=0.0002, + RT0CRIAUTI=-5., + VSIGQSAT=0.02, + XFRACM90=0.1, + XMRSTEP=0.00005, + XSPLIT_MAXCFL=0.8, + XTSTEP_TS=0., + / + &NAMPHMSE + LPGDFWR=.FALSE., + / + &NAMPHY + LAERODES=.TRUE., + LAEROLAN=.TRUE., + LAEROSEA=.TRUE., + LAEROSOO=.TRUE., + LEDR=.TRUE., + LMPHYS=.TRUE., + LO3ABC=.TRUE., + LRAYFM=.TRUE., + / + &NAMPHY0 + ALMAV=300., + BEDIFV=0.05, + ECMNP=3000., + GCCSV=0., + GCVADS=0.8, + GCVALFA=0.000045, + GCVBETA=0.2, + GCVMLT=0.00016, + GCVNU=0.000025, + GCVPSI=1., + GCVPSIE=1., + GDDEVA=0.25, + GDDSDE=0.5, + GWDCD=6., + HUCOE=0.5, + HUTIL=1.8, + QSSC=400., + QSSUSC=0.75, + QSSUSS=0.4, + QSSUSV=250., + QSUSXC=0.0002, + QSUSXS=0.0003, + QXRAL=130., + QXRDEL=0.49, + QXRHX=0.99, + QXRR=0.25, + RCVEVAP=0.25, + REFLKUO=5000., + REVGSL=15., + SCO=-20., + TDDGP=0.8, + TENTR=0.0000025, + TENTRX=0.00008, + TUDGP=0.8, + UHDIFV=0.0008, + USURIC=0.175, + USURICE=0.5, + USURICL=1., + USURID=0.1, + USURIDE=0.25, + VZ0CM=0.00015, + XMAXLM=5000., + XMINLM=10., + / + &NAMPHY1 + ALBMIN=0.65, + ALCRIN=0.75, + GCGEL=0.00003, + GCGELS=0.00005, + GNEIMX=1.8, + GNEIMXS=1.8, + RCTVEG(3)=0.000012, + RCTVEG(4)=0.00001, + / + &NAMPHY2 + FACRAF=3.8, + HTKERAF=20., + LMULAF=.TRUE., + LRAFTKE=.TRUE., + LRAFTUR=.TRUE., + XDAMP=1., + XMULAF=-1.85, + / + &NAMPHY3 + / + &NAMPHYDS + / + &NAMPONG + / + &NAMPPC + / + &NAMPPVI + / + &NAMPRE + / + &NAMRAD15 + / + &NAMRADCMEM + / + &NAMRCF + / + &NAMRCOEF + / + &NAMRES + / + &NAMRGRI + / + &NAMRINC + / + &NAMRIP + TSTEP=50., + CSTOP='h2', + / + &NAMRIP0 + / + &NAMRLX + / + &NAMSATS + LPARTIAL_COEF_FILES=.TRUE., + / + &NAMSCC + / + &NAMSCEN + / + &NAMSCM + / + &NAMSEKF + / + &NAMSENS + / + &NAMSFXCMP + CFLDNAME(1)='????????????????', + NBBITS(1)=24, + / + &NAMSIMPHL + / + &NAMSPNG + / + &NAMSPSDT + / + &NAMSTA + / + &NAMSTOPH + / + &NAMSWE + / + &NAMTESTVAR + / + &NAMTHLIM + / + &NAMTOPH + ETCVIM=5000., + ETNEBU=5000., + ETPLUI=5000., + XDRMTK=6.0D-7, + XDRMTP=800., + XDRMUK=3.0D-7, + XDRMUP=800., + / + &NAMTRAJP + / + &NAMTRANS + / + &NAMTRANS0 + / + &NAMTS + / + &NAMVAR + / + &NAMVARBC + / + &NAMVARBC_AIREP + / + &NAMVARBC_ALLSKY + / + &NAMVARBC_GBRAD + / + &NAMVARBC_RAD + / + &NAMVARBC_SFCOBS + / + &NAMVARBC_TCWV + / + &NAMVARBC_TO3 + / + &NAMVAREPS + / + &NAMVDF + / + &NAMVDOZ + / + &NAMVOLCANO + / + &NAMVRTL + / + &NAMVV0 + / + &NAMVV1 + / + &NAMVWRK + / + &NAMWAVELETJB + / + &NAMXFU + LXCLP=.TRUE., + LXCLS=.TRUE., + LXFU=.TRUE., + LXNEBPA=.TRUE., + LXNEBTT=.TRUE., + LXNUVCLS=.TRUE., + LXPLS=.TRUE., + LXPLSG=.TRUE., + LXQCLS=.TRUE., + LXR=.TRUE., + LXSOIL=.FALSE., + LXTHW=.TRUE., + LXTRT=.TRUE., + LXTTCLS=.TRUE., + LXXDIAGH=.TRUE., + LXXGST=.TRUE., + NFRRAZ=72, + NRAZTS(0)=0, + / + &NAM_CANAPE + / + &NAM_DISTRIBUTED_VECTORS + / + &NAPHLC + / + &NEMCT0 + / + &NEMDIM + / + &NEMDYN + / + &NEMELBC0A + LESPCPL=.TRUE., + NBICNHX=2, + NBICOP=2, + NBICOT=2, + NBICOU=2, + NBICPD=2, + NBICVD=2, + NECRIPL=1, + / + &NEMELBC0B + NEFRSPCPL=1, + NEK0=20, + NEK1=30, + NEN1=4, + NEN2=8, + SPNUDDIV=0.01, + SPNUDQ=0., + SPNUDT=0.01, + SPNUDVOR=0.01, + TEFRCL=3600., + / + &NEMFPEZO + / + &NEMGEO + / + &NEMJK + / + &NEMVAR + / + &NEMWAVELET + / + &NAETLDIAG + / + &NAMMETHOX + / + &NAMSPP + / + &NAMACV + / + &NAMFPOBJ + / + &NAMNORGWD + / + &NAMTRAJ + / + &NAMSATSIM + / + &NAMDVISI + / + &NAMNUDGLH + / + &NAMPERTPAR + / +FIN +/bin/cat fort.4 + +/bin/cat <<FIN > EXSEG1.nam + &NAM_DIAG_ISBAN + LPGD=.TRUE., + LSURF_MISC_BUDGET=.TRUE., + / + &NAM_DIAG_SURFN + LCOEF=.TRUE., + LSURF_BUDGET=.TRUE., + N2M=2, + / + &NAM_ISBAN + CSCOND='NP89', + / + &NAM_REPROD_OPER + LREPROD_OPER=.TRUE., + / + &NAM_SEAFLUXN + CSEA_FLUX='ECUME', + LPWG=.FALSE., + LPRECIP=.FALSE., + LPWEBB=.FALSE., + / + &NAM_SSON + CROUGH='Z01D', + XFRACZ0=5., + LDSV=.FALSE., + / + &NAM_SURF_ATM + XRIMAX=0.2, + LNOSOF=.TRUE., + / + &NAM_SURF_CSTS + XZ0SN=0.01, + XZ0HSN=0.001, + XEMISSN=0.99, + / + &NAM_WRITE_DIAG_SURFN + LPROVAR_TO_DIAG=.FALSE., + LSELECT=.TRUE., +CSELECT(1)='T2M','HU2M','XX','YY','DX','DY','SST','Z0SEA','TS_WATER','Z0WATER','TG1','TG2','TG3','WG1','WG2','WG3','WGI1','WGI2','WGI3','WR','WSN_VEG1','RSN_VEG1','ASN_VEG','TSRAD_NAT','RESA','TROOF1','TROOF2','TROOF3','TROOF4','TROOF5','WS_ROOF','TROAD1','TROAD2','TROAD3','TROAD4','TROAD5','WS_ROAD','TWALL1','TWALL2','TWALL3','TWALL4','TWALL5','TI_BLD','T_WIN1','TI_ROAD','WSN_RF1','RSN_RF1','TSN_RF1','ASN_RF','WSN_RD1','RSN_RD1','TSN_RD1','ASN_RD','TCANYON','QCANYON','STORAGE_TYPE','MASDEV','VERSION','BUG','DIM_FULL','DTCUR','LAT0','LON0','RPK','BETA','LATORI','LONORI','IMAX','JMAX','RW_PRECIP','BUDC','SEA_OCEAN','SEA_SBL','WAT_SBL','SN_VEG_N','SN_VEG','LSNOW_FRAC_T','GLACIER','TEMPARP','NLITTER','NLITTLEVS','NSOILCARB','ISBA_CANOPY','SN_RF_N','SN_RF','SN_RD_N','SN_RD','SN_RD_TYP','SN_RF_TYP','TEB_CANOPY','STORAGETYPE','CARTESIAN','GRID_TYPE','SN_VEG_TYP','RESPSL','ROAD_DIR','WALL_OPT','LAI','VEG','RSMIN','DG2','_FBUF_SIZE','_FBUF_DIM1','_FBUF_DIM2','_FBUF_NAME','_FBUF_TYPE','_FBUF_MASK','LCPL_GCM','HANDLE_SIC','SSS', + / + &NAM_WRITE_SURF_ATM + LNOWRITE_TEXFILE=.TRUE., + / +FIN +/bin/cat EXSEG1.nam + +# ***************************************** +# * Acquisition du fichier de demarrage * +# ***************************************** + +echo +for hh in 0 1 2 3 4 5 6 ; do + N=`expr $hh / 1 ` + set -x + ln -s $rekchemin/data/aro/$case/ELSCFFCSTALBC000${N}_l15 ELSCF${CNMEXP}ALBC00${N} + set +x +done +set -x +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT_l15 ICMSH${CNMEXP}INIT +ln -s $rekchemin/data/aro/$case/ICMSHFCSTINIT.sfx ICMSH${CNMEXP}INIT.sfx +ln -s $rekchemin/data/surfex/v8/ecoclimapI_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_eu_covers_param.bin . +ln -s $rekchemin/data/surfex/v8/ecoclimapII_af_covers_param.bin . +ln -s $rekchemin/data/aro/$case/Const.Clim Const.Clim +ln -s $rekchemin/data/aro/$case/Const.Clim.sfx Const.Clim.sfx +ln -s $rekchemin/data/aro/$case/const.clim.FRANGP0025 const.clim.FRANGP0025 +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_9_seviri.dat . +ln -s $rekchemin/data/rttov12/rtcoef_meteosat_10_seviri.dat . +ln -s $rekchemin/data/rttov12/sccldcoef_meteosat_9_seviri.dat . +set +x +tar xfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz + +# *************** +# * Chargement * +# *************** + +echo +set -x +\ln -s $LOADIR/MASTERODB MASTER +set +x +if ldd MASTER | grep openmpi > /dev/null; then + #On est sur PC + MPILIB=$(ldd MASTER | grep openmpi | tail -1 | awk '{print $3}' | awk -F "/" '{print $(NF-2)}') + MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep openmpi| tail -1 | awk '{print $3}'))))/bin/orterun --oversubscribe -np $NPROC" + GRIB_API=$(dirname $(dirname $(ldd MASTER | grep grib_api | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + ECCODES=$(dirname $(dirname $(ldd MASTER | grep eccodes | head -1 | awk '{print $3}') 2>/dev/null) 2>/dev/null) + export GRIB_SAMPLES_PATH=$GRIB_API/share/grib_api/ifs_samples/grib1 + export GRIB_DEFINITION_PATH=$GRIB_API/share/grib_api/definitions + export ECCODES_SAMPLES_PATH=$ECCODES/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=$rekchemin/data/eccodes_extras_definitions:$ECCODES/share/eccodes/definitions +else + #On est sur HPC + #MPIRUN="$(echo $(dirname $(dirname $(ldd MASTER | grep libmpi| tail -1 | awk '{print $3}'))))/bin/mpirun -wdir $PWD" + NNODES=$SLURM_JOB_NUM_NODES + MPITASKS_PER_NODE=$((SLURM_NTASKS/SLURM_JOB_NUM_NODES)) + MPI_TASKS=$SLURM_NTASKS + MPIRUN="/opt/softs/mpiauto/mpiauto -np $MPI_TASKS -nnp $MPITASKS_PER_NODE --" + export OMP_STACKSIZE=4G + export KMP_STACKSIZE=4G + export KMP_MONITOR_STACKSIZE=4G + export DR_HOOK=1 + export DR_HOOK_IGNORE_SIGNALS=-1 + export DR_HOOK_SILENT=1 + export DR_HOOK_SHOW_PROCESS_OPTIONS=0 + export MPL_MBX_SIZE=2048000000 + export EC_PROFILE_HEAP=0 + export EC_PROFILE_MEM=0 + export EC_MPI_ATEXIT=0 + export EC_MEMINFO=0 + export OPENBLAS_NUM_THREADS=1 + export MKL_CBWR="AUTO,STRICT" + export MKL_NUM_THREADS=1 + export MKL_DEBUG_CPU_TYPE=5 + export ECCODES_SAMPLES_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/ifs_samples/grib1 + export ECCODES_DEFINITION_PATH=/opt/softs/libraries/ICC_2018.5.274/eccodes-2.17.0/share/eccodes/definitions +fi +echo $MPIRUN +set +x +if [ ! -f MASTER ] ; then echo No executable MASTER;exit 1;fi + +# *************** +# * Execution * +# *************** + +echo +echo OMP_NUM_THREADS=$OMP_NUM_THREADS +set -x +ulimit -s unlimited +$MPIRUN $PWD/MASTER >lola +set +x +echo +##if [ -f lola ] ; then +## echo;echo Standard output :;echo;cat lola +##fi +##if [ -f stderr.* ] ; then +## for file in stderr.* ; do +## echo;echo $file :;cat $file +## done +##fi +##if [ -f stdout.* ] ; then +##echo;echo stdout :;echo;cat stdout.* +##fi +##if [ -a NODE.001_01 ] ; then +## for file in NODE* ; do +## echo;echo Listing $file;echo +## cat $file +## done +##fi +##if [ $(find . -name "drhook.prof.*" | wc -l) -ne 0 ] ; then +### Top 25 for each MPI task : +## for file in drhook.prof.* ; do +## echo;echo $file :;head -38 $file +## done +##fi +#cat drhook.prof.* | perl -w $HOME/bin/drhook_merge_walltime_max.pl + +# ******************* +# * Sauvegardes * +# ******************* + +ls +#if [ -f PFFPOS000+0000 ] ; then +# cp PFFPOS000+0000 $WAIT_QUEUE/PFFPOS000+0000.$PBS_JOBID +#fi +cp lola NODE.001_01 ICMSHFPOS+00* DHFDLFPOS+00* $OUTPUTDIR/ +/bin/rm fort.4 EXSEG1.nam lola ICMSHFPOS+0000* PFFPOSFRANGP0025+0000* ICMSHFPOS+0001* +/bin/rm PFFPOSFRANGP0025+0001* ICMSHFPOS+0002* ECHIS PFFPOSFRANGP0025+0002* DHFDLFPOS+00* +/bin/rm ECHFP NODE.001_01 ifs.stat $(tar tfz $rekchemin/data/rtm/radiation_params.47r1_light.tgz) + +# **************** +# * Epilogue * +# **************** + +ls -ltr | grep -v "\->" +echo Wait_queue : +ls -ltr $TMPWAIT +cd $TMPDIR +\rm -rf rundir.$$ +\rm -rf wait_queue.$$ +date +set +x diff --git a/tools/conf_tests/small_3D_np2/data b/tools/conf_tests/small_3D_np2/data new file mode 120000 index 0000000000000000000000000000000000000000..de58adb51323a1eed02c267745adcda655759093 --- /dev/null +++ b/tools/conf_tests/small_3D_np2/data @@ -0,0 +1 @@ +../small_3D/data \ No newline at end of file diff --git a/tools/correct_indent.py b/tools/correct_indent.py new file mode 100755 index 0000000000000000000000000000000000000000..f3f5605859a1d700db6153b5fdd4870dccdb1e25 --- /dev/null +++ b/tools/correct_indent.py @@ -0,0 +1,179 @@ +#!/usr/bin/env python3 + +def detectMNH_expand(f): + # Adds MNH EXPAND comment before and after $mnh_expand$ + fin = open(f, 'r') + fout = open(f+'_EXPAND', 'w') + contentbyline = fin.readlines() + + for i in contentbyline: + if "!$mnh_expand" in i: + fout.writelines("! $MNH EXPAND$ !\n") + fout.writelines(i) + elif "!$mnh_end_expand" in i: + fout.writelines(i) + fout.writelines("! $MNH END EXPAND$ !\n") + else: + fout.writelines(i) + + fout.close() + fin.close() + + +def count_blank(text): + # Count number of space blank before a first character of a line + count = 0 + for t in text: + if t == " ": + count = count+1 + else: + break + return count + + +def check_indent(n, indent_score, worktext): + # Correct the indentation with respect to the indent_score + nblank = count_blank(worktext) + rawtext = worktext[nblank:] + correcttext = ' '*((indent_score)*2) + rawtext + return correcttext + + +def firstchar(string): + # Return the first non-blank character of a string + for i in string: + if i == " ": + pass + else: + return i + + +def first7char(string): + # Return the 7 first non-blank character of a string + nb_blank = 0 + for i in string: + if i == " ": + nb_blank = nb_blank+1 + else: + return string[nb_blank:nb_blank+7] + + +def correct_indent(f): + import sys +# Correct the indentation between MNH EXPAND comment +# Does not change the indentation outside MNH EXPAND > ... < MNH END EXPAND +# Does not indent comment lines +# Handles IF in two lines (e.g IF(... & +# ......) THEN +# TODO : handles more than two lines of & with IF +# TODO : do not correct indentation for & within an regular line +# To improve : the indentation correction is weird (strict) if the indentation before +# the MNH EXPAND comments is not respected (over-indentation) + fin = open(f, 'r') + fout = open(f+'_CORRECT_INDENT', 'w') + contentbyline = fin.readlines() + + ncurrline = 0 + indent_score = 0 + expand_score = 0 + passNextLine = {'Pass': False, 'Reason': ""} + for i in contentbyline: + i7 = first7char(i) + if passNextLine['Pass']: # Second line with & for if or #if(n)def + textwrite = i + passNextLine['Pass'] = False + if passNextLine['Reason'] == "IF": + indent_score = indent_score+1 + elif passNextLine['Reason'] == "#ifdef": + textwrite = check_indent(ncurrline, indent_score, i) + elif passNextLine['Reason'] == "#else": + textwrite = check_indent(ncurrline, indent_score, i) + # ONLY IF present in between #ifdef is handled + # If more test is needed (present in the fortran code), duplicate test here + if "IF" in i7 and "THEN" in i: + indent_score = indent_score+1 + else: + sys.exit("Reason for passing the line not defined") + elif "! $MNH EXPAND$ !" in i: + expand_score = expand_score + 1 + textwrite = "" + elif "! $MNH END EXPAND$ !" in i: + expand_score = expand_score - 1 + textwrite = "" + # Ignore comment lines + elif firstchar(i) == "!": + textwrite = i + # Correct indentation only in between $MNH EXPAND$ and $MNH END EXPAND$ + elif expand_score >= 1: + if indent_score > 0 and ("DO J" not in i and "ENDDO" not in i and "END DO" not in i and "END IF" not in i and "ENDIF" not in i and "THEN" not in i and "ELSE" not in i and "#if" not in i and "#else" not in i and "#endif" not in i): + textwrite = check_indent(ncurrline, indent_score, i) + # #ifdef handling = pass to next lines with no indent + elif "#if" in i7: # ifdef or ifndef + textwrite = i + passNextLine['Pass'], passNextLine['Reason'] = (True, "#ifdef") + elif "#else" in i7: + textwrite = i + passNextLine['Pass'], passNextLine['Reason'] = (True, "#else") + elif '#endif' in i7: + textwrite = i + elif "ELSE" in i7: # ELSE or ELSEIF + indent_score = indent_score-1 + textwrite = check_indent(ncurrline, indent_score, i) + indent_score = indent_score+1 + elif "IF" in i7 and "&" in i: # IF on two lines #TODO on > 2 lines + textwrite = i + passNextLine['Pass'], passNextLine['Reason'] = (True, "IF") + # exclude IF in one line (without THEN) + elif "IF" in i7 and "THEN" in i: + textwrite = check_indent(ncurrline, indent_score, i) + indent_score = indent_score+1 + elif "DO J" in i7: + textwrite = check_indent(ncurrline, indent_score, i) + indent_score = indent_score+1 + elif ("ENDDO" in i7) or ("END DO" in i7): + indent_score = indent_score-1 + textwrite = check_indent(ncurrline, indent_score, i) + elif ("END IF" in i7) or ("ENDIF" in i7): + indent_score = indent_score-1 + textwrite = check_indent(ncurrline, indent_score, i) + else: + textwrite = i + else: # not EXPAND lines nor within mnh_expand + if "ELSE" in i7: # ELSE or ELSEIF + pass # no increase in indent + elif "IF" in i7 and "&" in i: # IF on two lines #TODO on > 2 lines + passNextLine['Pass'], passNextLine['Reason'] = (True, "IF") + # exclude IF in one line (without THEN) + elif "IF" in i7 and "THEN" in i: + indent_score = indent_score+1 + elif "DO J" in i7: + indent_score = indent_score+1 + elif ("ENDDO" in i7) or ("END DO" in i7): + indent_score = indent_score-1 + elif ("END IF" in i7) or ("ENDIF" in i7): + indent_score = indent_score-1 + textwrite = i + ncurrline = ncurrline+1 + fout.writelines(textwrite) + + fout.close() + fin.close() + + +if __name__ == "__main__": + import argparse + import sys + parser = argparse.ArgumentParser( + description='Detecte les balises !$mnh_expand et !$mnh_end_expand et ajoute un commentaire avant et après pour corriger l\'indentation par la suite avec correct_indentation.py') + value = argparse.ArgumentParser() + parser.add_argument('file1', metavar='file1', + type=str, help="file to check") + parser.add_argument('action', metavar='action', type=str, + help="action (indent or detect") + args = parser.parse_args() + if "indent" in args.action: + sys.exit(correct_indent(args.file1)) + elif "detect" in args.action: + sys.exit(detectMNH_expand(args.file1)) + else: + sys.exit("Error : action should be indent or detect. Nothing has been done") diff --git a/tools/diffNODE.001_01 b/tools/diffNODE.001_01 new file mode 100755 index 0000000000000000000000000000000000000000..d33640104415782a37f87e7c0c49acd84be02a80 --- /dev/null +++ b/tools/diffNODE.001_01 @@ -0,0 +1,428 @@ +#!/usr/bin/perl -w + +use strict; +use FindBin qw ($Bin); +use lib $Bin; +use FileHandle; +#Frame was inlined in this script +#use Tools::Frame; +use Data::Dumper; +use POSIX qw (floor); +use Getopt::Long; + +my %opts = ( + 'spnorms' => 'VORTICITY,DIVERGENCE,TEMPERATURE,KINETIC ENERGY', + 'gpnorms' => '', + 'norm-max-diff' => .050000, + 'jo-max-diff' => .030000, + ); + +sub frame +{ + my ($t, $width, $border) = @_; + my $len = length ($t); + + $border = 1 unless (defined ($border)); + + my $S = ' '; + + my ($C, $V, $H) = ('*', '|', '-'); + + ($C, $V, $H) = (' ', ' ', ' ') + unless ($border); + + my $df = 3; + $width ||= $len + 2 * $df; + + my $line1 = $C . ($H x ($width-2)) . $C; + my $line2 = $V . ($S x ($width-2)) . $V; + + + my $TEXT = ''; + + $TEXT .= "$line1\n"; + for (1 .. ($df-1)/2) + { + $TEXT .= "$line2\n"; + } + + die ("Cannot frame text: `$t'\n") + if ($width - 2 * $df <= 0); + + while ($t) + { + my $s = substr ($t, 0, $width - 2 * $df, ''); + + my $i = 0; + while (length ($s) < $width - 2 * $df) + { + if ($i % 2) + { + $s = " $s"; + } + else + { + $s = "$s "; + } + $i++; + } + my $linet = $V . ($S x ($df-1)) . $s . ($S x ($df-1)) . $V; + $TEXT .= "$linet\n"; + } + + for (1 .. ($df-1)/2) + { + $TEXT .= "$line2\n"; + } + $TEXT .= "$line1\n"; +} + + +sub xave +{ + my $f = shift; + my $fh = 'FileHandle'->new ("<$f"); + + my @gpregs; + + if ($opts{gpnorms}) + { + if ((scalar (@{$opts{gpnorms}}) == 1) && ($opts{gpnorms}[0] eq '*')) + { + @gpregs = (qr/^\s*GPNORM\s+\b(\S+)\b/); + } + else + { + @gpregs = map { qr/^\s*GPNORM\s+\b(\Q$_\E)\b/ } @{$opts{gpnorms}}; + } + } + + my @x; + MAIN: while (defined (my $line = <$fh>)) + { + AGAIN: + + if ($line =~ m/^\s*GPNORM\s+/o) + { + for my $gpreg (@gpregs) + { + if ($line =~ $gpreg) + { + my $F = $1; + $line = <$fh>; + next MAIN unless ($line =~ m/AVE\s+0/o); + for ($line) + { + s/^\s*AVE\s*//o; + s/\s+/\n/go; + } + push @x, map { [ $F, $_ ] } split (m/\n/o, $line); + next MAIN; + } + } + } + + if ($line =~ s/^\s*SPECTRAL\s+NORMS\s+-\s+//o) + { + AGAIN_SPNORMS: + + + goto AGAIN + unless (($line = <$fh>) =~ s/^\s+LEV\s+//o); + + my %index; + %index = (); + for my $spnorm (@{$opts{spnorms}}) + { + my $index = index ($line, $spnorm); + $index{$spnorm} = $index + if ($index >= 0); + } + + my @spnormk = sort { $index{$a} <=> $index{$b} } + grep { defined $index{$_} } + @{$opts{spnorms}}; + + goto AGAIN + unless (($line = <$fh>) =~ s/^\s+AVE\s+//o); + + my @spnormv = split (m/\s+/o, $line); + + while (@spnormk) + { + my $spnormk = shift (@spnormk); + my $spnormv = shift (@spnormv); + die ("$spnormk, $spnormv\n") + unless (defined ($spnormk) && defined ($spnormv)); + push @x, [ $spnormk, $spnormv ]; + } + + goto AGAIN_SPNORMS; + + } + } + + return @x; +} + +sub xobstype +{ + my $f = shift; + my $fh = 'FileHandle'->new ("<$f"); + + # keep final value for obs number & JO + + my @x; + while (defined (my $line = <$fh>)) + { + next unless ($line =~ m/ObsType\s+(\d+)\s+Total:\s*(\d+)\s+(\S+)\s+/o); + @{$x[$1]}{qw (number JO)} = ($2, $3); + } + + return @x; +} + +sub xjog +{ + my $f = shift; + my $fh = 'FileHandle'->new ("<$f"); + + # keep final value for obs number & JO + + my %x; + while (defined (my $line = <$fh>)) + { + next unless ($line =~ m/Jo Global\s*:\s*(\d+)\s+(\S+)/o); + @x{qw (number JO)} = ($1, $2); + } + + return \%x; +} + +sub center +{ + my ($s, $n) = @_; + my $i = 0; + while (length ($s) < $n) + { + $s = $i % 2 ? " $s" : "$s "; + $i++; + } + return $s; +} + + + +&GetOptions + ('spnorms=s' => \$opts{'spnorms'}, + 'gpnorms=s' => \$opts{'gpnorms'}, + 'norm-max-diff=s' => \$opts{'norm-max-diff'}, + 'jo-max-diff=s' => \$opts{'jo-max-diff'}, + ); + +$opts{'spnorms'} = [ split (m/,/o, $opts{'spnorms'}) ]; +$opts{'gpnorms'} = [ split (m/,/o, $opts{'gpnorms'}) ]; + +my ($f1, $f2) = @ARGV; + +die ("Usage: $0 NODE.001_01 NODE.001_01.ref\n") + unless ($f1 && $f2); + +my @fx1 = &xave ($f1); +my @fx2 = &xave ($f2); + +print &frame ("NORMS DIFFERENCES", 121); + +my @x = ([]); +my %diff; +my $zero = 0; +my $numb = 0; + +my $tag1 = "NORMDIFF"; +my $tag2 = "NORMSTAT"; + +my $nout = 0; + +while (defined (my $fx1 = shift (@fx1)) && defined (my $fx2 = shift (@fx2))) + { + my ($f1, $x1) = @$fx1; + my ($f2, $x2) = @$fx2; + + die ("Field mismatch $f1 != $f2\n") + unless ($f1 eq $f2); + + chomp ($x1); chomp ($x2); + if (($x1 !~ m/^\s*$/o) && ($x2 !~ m/^\s*$/o)) + { + my $dx = $x1 - $x2; + my $dr = ($x1+$x2 > 0) ? 2*$dx/($x1+$x2) : 0.; + + my $sdx = sprintf ('%17.9e', $dx); + my $sdr = sprintf ('%17.9e', $dr); + + $dx = $sdx; $dx = $dx + 0.; + $dr = $sdr; $dr = $dr + 0.; + + push @{$x[-1]}, + sprintf (" $tag1 | %20s | %17.9e | %17.9e | %17s | %17s %s\n", ¢er ($f1, 20), $x1, $x2, $sdx, $sdr, + $dr > $opts{'norm-max-diff'} ? '*' : ''); + + $nout++ + if ($dr > $opts{'norm-max-diff'}); + + if (abs ($dr) > 0) + { + my $n = &floor ((log (abs ($dr)) / log (10))); + $diff{$n}++; + + } + else + { + $zero++; + } + + $numb++; + } + else + { + push @x, []; + } + } + +printf " $tag1 | |%-19s | %-19s | %-19s | %-19s\n", + ¢er ("NORM(REF)", 19), ¢er ("NORM(EXP)", 19), + ¢er ("NORM(REF)-NORM(EXP)", 19), ¢er ("(NORM(REF)-NORM(EXP))", 19); + +printf " $tag1 | |%-19s | %-19s | %-19s | %-19s\n", + '', '', '', ¢er ("/NORM(REF)", 19); + +for (my $i = 0; $i <= $#x; $i++) + { + last unless (@{$x[$i]}); + print @{$x[$i]}; + } + +print "\n"; + + +my $diff_cumul = 0; +my $perc_cumul = 0; +for my $n1 (sort { $a <=> $b } keys (%diff)) + { + my $n2 = $n1 + 1; + my $diff = $diff{$n1}; + my $perc = 100 * $diff / $numb; + $diff_cumul += $diff; + $perc_cumul += $perc; + printf (" $tag2 | 1e%+2.2d .. 1e%+2.2d | %3d / %3d | %3d / %3d | %6.2f %%, %6.2f %%\n", $n1, $n2, $diff, $numb, $diff_cumul, $numb, $perc, $perc_cumul); + } + +if ($nout) + { + print "\n"; + my $text = sprintf ("WARNING : SOME NORMS DIFFERENCES ARE OUTSIDE ALLOWED LIMIT OF %6.2f %%\n", 100 * $opts{'norm-max-diff'}); + print $text x 5; + } + +print "\n"; + +my @ot1 = &xobstype ($f1); +my @ot2 = &xobstype ($f2); + +my $not1 = scalar (@ot1); +my $not2 = scalar (@ot2); + +my $not = $not1 > $not2 ? $not1 : $not2; + +goto END + unless ($not > 0); + +my $obs_fmtd = " %10d | %13.7e "; +my $obs_fmtds = " %10s | %13s "; +my $obs_fmtp = " %20d | %9.4f %% "; +my $obs_fmtps = " %20s | %15s "; + +printf (" OBS_DIFF | %6s | ", 'Type'); +printf ($obs_fmtds, 'NOBS(REF)', 'JO(REF)'); +print " | "; +printf ($obs_fmtds, 'NOBS(EXP)', 'JO(EXP)'); +print " | "; +printf ($obs_fmtps, 'NOBS(EXP)-NOBS(REF)', 'JO(EXP)-JO(EXP)'); +printf ("\n"); + +my $pot = sub + { + my ($ot, $obs_fmt) = @_; + $obs_fmt ||= $obs_fmtd; + (my $blank = sprintf ($obs_fmt, 0, 0)) =~ s/\S/ /go; + if ($ot) + { + printf ($obs_fmt, $ot->{number}, $ot->{JO}); + } + else + { + print $blank; + } + }; + +my $dot = sub + { + my ($ot1, $ot2) = @_; + + my $dot = $ot1 && $ot2 ? { number => abs ($ot1->{number} - $ot2->{number}), + JO => 100 * 2 * abs ($ot1->{JO} - $ot2->{JO}) / abs ($ot1->{JO} + $ot2->{JO}), } : undef; + return $dot; + }; + +for my $i (1 .. $not-1) + { + my $ot1 = $ot1[$i]; + my $ot2 = $ot2[$i]; + my $dot12 = $dot->($ot1, $ot2); + + printf (" OBS_DIFF | %6d | ", $i); + + $pot->($ot1); + print " | "; + $pot->($ot2); + print " | "; + $pot->($dot12, $obs_fmtp); + print "\n"; + + + } + +my $jog1 = &xjog ($f1); +my $jog2 = &xjog ($f2); + +if ($jog1 || $jog2) + { + my $dot12 = $dot->($jog1, $jog2); + printf (" OBS_DIFF | GLOBAL | "); + $pot->($jog1); + print " | "; + $pot->($jog2); + print " | "; + $pot->($dot12, $obs_fmtp); + print "\n"; + + + if ($dot12->{JO} > 100 * $opts{'jo-max-diff'}) + { + my $text = sprintf ("WARNING : GLOBAL JO DIFFERENCE IS OUTSIDE ALLOWED LIMIT OF %12.6f %%\n", 100 * $opts{'jo-max-diff'}); + print "\n"; + print $text x 5; + } + + } + + +print "\n"; + +END: + + + +exit $nout; + + diff --git a/tools/env.sh b/tools/env.sh new file mode 100644 index 0000000000000000000000000000000000000000..1bec04b6d4f2486ecf5c15117ceca0a3aa584607 --- /dev/null +++ b/tools/env.sh @@ -0,0 +1,4 @@ +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +MNH_EXPAND_DIR=$DIR/mnh_expand +export PATH=$DIR:$MNH_EXPAND_DIR/filepp:$MNH_EXPAND_DIR/MNH_Expand_Array:$PATH diff --git a/tools/mnh_expand/.gitkeep b/tools/mnh_expand/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/tools/pack/.gitkeep b/tools/pack/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/tools/prep_code.sh b/tools/prep_code.sh new file mode 100755 index 0000000000000000000000000000000000000000..9d069e009aae06ade6afd0e2bc00bc9ba29d6110 --- /dev/null +++ b/tools/prep_code.sh @@ -0,0 +1,216 @@ +#!/bin/bash + +set -e +#set -x + +#This script can: +# - extract a tag or a commit from the PHYEX repository +# - merge code from common and model specific directories +# - apply mnh_expand tool +# - push the result in a new branch of the repository + + +###### CONFIGURATION +repository_https=https://github.com/QuentinRodier/PHYEX.git +repository_ssh=git@github.com:QuentinRodier/PHYEX.git + +PHYEXTOOLSDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +###### COMMAND LINE ARGUMENTS +function usage { + echo "Usage: $0 [-h] [-c CHECKOUT_POINT] [-m MODEL] [-D OPTION [-D OPTION [...]]]] \\" + echo " [-s SUBDIR [-s SUBDIR [...]]] [-v [-v [-v]]] DIRECTORY" + echo "DIRECTORY directory containing the script result" + echo "-c CHECKOUT_POINT git object to checkout, can be a specific commit" + echo " or a tag with the following syntax: tags/TAG where TAG is the tag name" + echo "-m MODEL merge the code under the common directory with the code specific to MODEL model" + echo "-D OPTION option to use with mnh_expand" + echo " BE CARREFULL, a space between -D and the option is required here" + echo "-p push the result as a new branch" + echo "-s SUB subdiretory or file (under src) to consider when merging and applying mnh_expand" + echo "--renameFf rename .F90 into .f90" + echo "--ssh use ssh instead of https for git cloning" + echo "-v add verbosity (up to 3 -v)" + echo "" + echo "* If the -c option is not provided, DIRECTORY must already contain files and directory as if" + echo " it was the result of a git checkout" + echo "* If the -m option is used, directory tree is modified, only relevant code is kept" + echo "* If no -D options are used, mnh_expand is not called at all" + echo "* -s options are mandatory for -m, -D and -p options" + echo "* -p option is allowed only if -c and -m options are provided" + echo "" + echo "To use mnh_expand... it must be installed (alongside the filepp tool)" +} + +full_command="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/$(basename "${BASH_SOURCE[0]}") $@" +separator='_' #- be carrefull, gmkpack (at least on belenos) has multiple allergies (':', '.', '@') + #- seprator must be in sync with prep_code.sh separator + +directory="" +checkout_point="" +mnh_expand_options="" +model="" +push=0 +subs="" +renameFf=0 +verbose=0 +repository=$repository_https + +while [ -n "$1" ]; do + case "$1" in + '-h') usage;; + '-c') checkout_point="$2"; shift;; + '-m') model="$2"; shift;; + '-D') mnh_expand_options="$mnh_expand_options -D$2"; shift;; + '-s') subs="$subs $2"; shift;; + '-p') push=1;; + '--renameFf') renameFf=1;; + '--ssh') repository=$repository_ssh;; + '-v') verbose=$(($verbose+1));; + *) directory="$1";; + esac + shift +done + +if [ $verbose -ge 3 ]; then + set -x +fi + +###### BRANCH OR NOT BRANCH +if [ -n "${checkout_point-}" -a -n "${model-}" -a $push == 1 ]; then + branch=${model}${separator}${checkout_point} +fi + +###### WORKING DIRECTORY +if [ -z "${directory-}" ]; then + echo "A directory must be provided on command line (use -h option to get help)" + exit 1 +fi + +if [ -z "${checkout_point-}" ]; then + [ $verbose -gt 0 ] && echo "No checkout point provided, we use the content of $directory directory" + if [ ! -d $directory/src ]; then + echo "$directory must be filled with files and directories as if it was obtained through a checkout" + exit 2 + fi + cd $directory + from='dir' +else + [ $verbose -gt 0 ] && echo "Clone and checkout $checkout_point into $directory directory" + if [ -d $directory ]; then + echo "$directory already exists, suppress it before executing the script (or remove the -c option)" + exit 3 + fi + git clone $repository $directory + cd $directory + if [ -n "${branch-}" ]; then + if [ $(git ls-remote --heads origin SR_GPU | wc -l) -eq 1 ]; then + echo "$branch branch already exists on remote" + exit 4 + fi + branch="-b $branch" + fi + git checkout $branch $checkout_point + from='git' +fi + +###### RENAME .F90 into .f90 +if [ $renameFf -eq 1 ]; then + find . -type f -name \*.F90 -print0 | \ + while IFS= read -r -d '' file; do + mv -- "$file" "${file%.F90}.f90" + done +fi + +###### MERGE +if [ -n "${model-}" ]; then + if [ ! -d src/$model ]; then + echo "src/$model directory does not exist" + exit 5 + fi + if [ -z "${subs-}" ]; then + echo "It is not possible to merge common and model specific codes if no subs are provided" + exit 6 + fi + [ $verbose -gt 0 ] && echo "Merge common code and $model specific code" + + files=$(\ls -A) #files to suppress at the end + + #Merge + for sub in $subs; do + [ $verbose -gt 1 ] && echo "Merging $sub directory/file" + if [ -e $sub ]; then + echo "$sub must not exist in the repository root, this is a limitation of the script" + exit 7 + fi + [ -e src/common/$sub ] && mv src/common/$sub . + [ -e src/$model/$sub ] && cp -rlf src/$model/$sub . && rm -rf src/$model/$sub + done + + #Supression of unwanted files + if [ -f src/$model/filesToSuppress.txt ]; then + #Some files can be present in the common directory but are not wanted for a model export + #because these files are already existing elsewhere in the model source code + while read -r line; do + filename=$(echo $line | sed -e 's/^[[:space:]]*//' | sed -e 's/[[:space:]]*$//') #trim + [ -f "$filename" ] && rm -f "$filename" + done < src/$model/filesToSuppress.txt + fi + + #Cleaning + [ $verbose -gt 0 ] && echo "Cleaning unrelevant files" + #multiple checks to prevent error + if [ $from == 'git' -a ! "$(git config --get remote.origin.url)" == "$repository" ]; then + echo "Not inside the right git!!!!!!!!!!!!!!!!" + exit 8 + fi + for file in $files; do + if [ $from == 'dir' -o $(git ls-files --error-unmatch $file 2>/dev/null | wc -l) -gt 0 ] ; then + [ $verbose -gt 1 ] && echo "Suppression of $file" + rm -rf $file + fi + done +fi + +###### MNH_EXPAND +if [ -n "${mnh_expand_options-}" ]; then + [ $verbose -gt 0 ] && echo "Applying mnh_expand" + function apply_mnh_expand () { + if grep mnh_expand $1 > /dev/null 2>&1 ; then + [ $verbose -gt 1 ] && echo "Applying mnh_expand on $1" + $PHYEXTOOLSDIR/correct_indent.py $1 "detect" + mnh_expand -DMNH_EXPAND_NOCPP $mnh_expand_options $1_EXPAND > tempo_mnh_expand + rm -f $1_EXPAND + $PHYEXTOOLSDIR/correct_indent.py tempo_mnh_expand "indent" + mv tempo_mnh_expand_CORRECT_INDENT $1 + rm -f tempo_mnh_expand + fi + } + if [ -n "${model-}" ]; then + reps=$subs + else + reps="" + for sub in $subs; do + reps="$reps src/*/$sub" + done + fi + for rep in $reps; do + if [ -d $rep ]; then + #find $rep -type f | while read file; do + find $rep -type f -not -name '.*.swp' -not -name '.*.swo' | while read file; do + apply_mnh_expand "$file" + done + fi + done +fi + +###### PUSH +if [ -n "${branch-}" ]; then + [ $verbose -gt 0 ] && echo "commit and push" + git add -A + git commit -m "Version '$checkout_point' of source code ready for inclusion into $model source tree" -m "$full_command" + git push -u origin HEAD +fi + +[ $verbose -gt 0 ] && echo "Finished!" +exit 0 diff --git a/tools/testprogs_data/ice_adjust/.gitkeep b/tools/testprogs_data/ice_adjust/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/tools/testprogs_data/rain_ice/.gitkeep b/tools/testprogs_data/rain_ice/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/tools/testprogs_data/shallow_mf/.gitkeep b/tools/testprogs_data/shallow_mf/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/tools/testprogs_data/turb/.gitkeep b/tools/testprogs_data/turb/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/tools/verify_mnh_expand.py b/tools/verify_mnh_expand.py new file mode 100755 index 0000000000000000000000000000000000000000..c6e3d934e304a10657ab64a570709cbf7ae597cb --- /dev/null +++ b/tools/verify_mnh_expand.py @@ -0,0 +1,153 @@ +#!/usr/bin/env python3 + +import os +import glob +import logging + +def verify_mnh_expand(path): + """ + Verifies if source files are ready for expansion through mnh_expand + :param path: directory to recursively check or file name + + Presently the folowing tests are performed: + - starting and closing directives are conform + - each instruction in the bloc is an effectation to an array with the right number of dimensions + + Limitation: + - if the '=' sign is not on same line than the left hand side of the affectation instruction, + the instruction will no be checked. And an error can be thrown for the folowing line. + - one-line version of IF or WHERE statement must be really on one line (no continuation line) + - conditional part of IF and WHERE statements should be written on a signle line to be parsed + correctly. + - brackets in comments or in strings can mislead the script + """ + lhschar = b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_(:)%, \t' + + if os.path.isdir(path): + logging.info("Enters directory: " + path) + for filename in glob.glob(os.path.join(path, '*')): + verify_mnh_expand(filename) + else: + logging.debug("Checks filename: " + path) + with open(path, 'rb') as f: #read as byte because some files contain non UTF-8 characters + lines = f.readlines() + inside = False + for iline, line in enumerate(lines): + line = line.strip() + if line[:13] == b'!$mnh_expand_': + #New mnh_expand bloc + logging.debug('Opening directive found. Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + if inside: + logging.error('New mnh_expand bloc detected whereas we are already in a bloc. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + inside = True + open_directive = line[13:].split(b'(')[0] + open_args = line[13:].split(b'(')[1].split(b')')[0].replace(b' ', b'') + dim = len(line.split(b'(')[1].split(b',')) + if line[-1:] != b')': + logging.error('Open directive must end with a closing bracket. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + elif line[:17] == b'!$mnh_end_expand_': + #End of a mnh_expand bloc + logging.debug('Closing directive found. Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + if not inside: + logging.error('End of a mnh_expand bloc detected whereas we are not in a bloc. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + else: + inside = False + end_directive = line[17:].split(b'(')[0] + end_args = line[17:].split(b'(')[1].split(b')')[0].replace(b' ', b'') + if end_directive != open_directive: + logging.error('The end directive ({enddirect}) is not consistent with the opening directive ({opendirect}). ' + 'Line {line} of file {filename}'.format(enddirect=end_directive.decode('UTF-8'), + opendirect=open_directive.decode('UTF-8'), + line=iline + 1, filename=path)) + if end_args.upper() != open_args.upper(): + logging.error('The end args ({endargs}) are not consistent with the opening args ({openargs}). ' + 'Line {line} of file {filename}'.format(endargs=end_args.decode('UTF-8'), + openargs=open_args.decode('UTF-8'), + line=iline + 1, filename=path)) + if line[-1:] != b')': + logging.error('Closing directive must end with a closing bracket. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + elif inside: + #We do not want to implement a full fortran parser, we are only interested in the left hand side of + #affectation instructions. If left hand side is correct (an array element) the right hand side + #will be necessarily correct (otherwise a compilation error will be thrown). + + #Suppresion of conditional statement in 'IF' and 'WHERE' one-line instructions + #For simplicity, all conditional statements are suppressed + if any([line.startswith(s) for s in (b'IF ', b'IF(', + b'ELSEIF ', b'ELSEIF(', b'ELSE IF ', b'ELSE IF(')]): + try: + line = line[line.index(b'(') + 1:] + nb = 1 + while nb >= 1 and(len(line) > 0): + if line[:1] == b'(': nb += 1 + elif line[:1] == b')': nb -= 1 + line = line[1:].strip() + if nb >= 1 and len(line) == 0: + logging.warning('Parsing error during treatment of an IF statement. ' + + 'The closing bracket should be on the same line as the IF keyword. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + if line.upper()[:5] in (b'THEN ', b'THEN!'): line = line[5:] + except ValueError: + logging.error('Parsing error during treatment of an IF statement. ' + + 'The opening bracket must be on the same line as the IF keyword. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + elif any([line.startswith(s) for s in (b'WHERE ', b'WHERE(', + b'ELSEWHERE ', b'ELSEWHERE(', b'ELSE WHERE ', b'ELSE WHERE(')]): + if open_directive != b'where': + logging.error('There is a WHERE statement in a mnh_expand array bloc. ' + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + try: + line = line[line.index(b'(') + 1:] + nb = 1 + while nb >= 1 and(len(line)>0): + if line[:1] == b'(': nb += 1 + elif line[:1] == b')': nb -= 1 + line = line[1:].strip() + if nb >= 1 and len(line) == 0: + logging.warning('Parsing error during treatment of a WHERE statement. ' + + 'The closing bracket should be on the same line as the WHERE keyword. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + except ValueError: + logging.error('Parsing error during treatment of a WHERE statement. ' + + 'The opening bracket must be on the same line as the WHERE keyword. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + + #Check if it is the left hand side of an affectation + if line[:3].upper() == b'DO ': + logging.warning('A DO loop is inside a mnh_expand bloc, is order correct?. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + elif line[:5].upper() == b'CALL ': + logging.warning('A CALL statement is inside a mnh_expand bloc, is it correct? ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + elif b'=' in line and all([c in lhschar for c in line.split(b'=')[0]]): + lhs = line.split(b'=')[0] + if not b'(' in lhs: + logging.error('Array on the left hand side of an effectation instruction must be written ' + + 'with opening and closing brackets. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + if lhs.count(b':') != dim: + logging.error('Array on the left hand side of an effectation instruction must have the same ' + + 'number of :-dimensions as the number defined in the directive. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + if line[line.index(b'(')-1] in b' \t': + logging.error('There must be no space wetween the array name and the opening bracket in ' + + 'the affectation instruction. ' + + 'Line {line} of file {filename}'.format(line=iline + 1, filename=path)) + +if __name__ == '__main__': + import argparse + parser = argparse.ArgumentParser(description='mnh_expand checker') + parser.add_argument("-v", "--verbose", dest="verbose", action="count", default=0, + help="Show warning (-v), info (-v -v) or debug (-v -v -v) messages") + parser.add_argument('PATH', help="directory to recursively check, or filename") + args = parser.parse_args() + level = {0:'ERROR', + 1:'WARNING', + 2:'INFO', + 3:'DEBUG'}[args.verbose] + logging.basicConfig(level=getattr(logging, level, None)) + verify_mnh_expand(args.PATH)